diff --git a/src/features/directory-tree/ui/directory-tree-input.tsx b/src/features/directory-tree/ui/directory-tree-input.tsx index 77e6dc0..28c60fd 100644 --- a/src/features/directory-tree/ui/directory-tree-input.tsx +++ b/src/features/directory-tree/ui/directory-tree-input.tsx @@ -1,6 +1,7 @@ import { css } from "$panda/css"; +import { FormLabel } from "$park/form-label"; import { Textarea, type TextareaProps } from "$park/textarea"; -import { createSignal, type JSX } from "solid-js"; +import { createSignal, createUniqueId, type JSX } from "solid-js"; import { DirectoryTree } from "../logic/directory-tree"; const SAMPLE_RAW_TEXT = `\ @@ -21,6 +22,10 @@ const SAMPLE_STYLED_TEXT = `\ export function DirectoryTreeInput(): JSX.Element { const [rawText, setRawText] = createSignal(""); const [styledText, setStyledText] = createSignal(""); + const id = createUniqueId(); + + const rawTextInputId = `raw-text-input-${id}`; + const styledTextInputId = `styled-text-input-${id}`; const handleInputRawText: JSX.EventHandler = (e) => { setRawText(e.currentTarget.value); @@ -37,27 +42,64 @@ export function DirectoryTreeInput(): JSX.Element { }; return ( -
- - +
+
+
+ Directory Tree With Hyphen + +
+
+ Styled Directory Tree + +
+
+
+ Directory Tree With Hyphen + Styled Directory Tree +
+ + +
+
); } diff --git a/src/features/qr-code/ui/qr-code-generator.tsx b/src/features/qr-code/ui/qr-code-generator.tsx index 2218ac7..522572e 100644 --- a/src/features/qr-code/ui/qr-code-generator.tsx +++ b/src/features/qr-code/ui/qr-code-generator.tsx @@ -1,14 +1,20 @@ import { css } from "$panda/css"; +import { FormLabel } from "$park/form-label"; import { Input } from "$park/input"; import { QrCode } from "$park/qr-code"; -import { createSignal, type JSX, Show } from "solid-js"; +import { createSignal, createUniqueId, type JSX, Show } from "solid-js"; export function QrCodeGenerator(): JSX.Element { const [text, setText] = createSignal(""); + const id = createUniqueId(); + const qrcodeInputId = `qr-code-input-${id}`; + return ( <> + Text to convert { diff --git a/src/features/uri-encoding/ui/uri-converter.tsx b/src/features/uri-encoding/ui/uri-converter.tsx index 337efab..5333a16 100644 --- a/src/features/uri-encoding/ui/uri-converter.tsx +++ b/src/features/uri-encoding/ui/uri-converter.tsx @@ -1,7 +1,8 @@ import { css } from "$panda/css"; +import { FormLabel } from "$park/form-label"; import { Input } from "$park/input"; import { ArrowDownIcon, ArrowUpIcon } from "lucide-solid"; -import { createMemo, createSignal, type JSX } from "solid-js"; +import { createMemo, createSignal, createUniqueId, type JSX } from "solid-js"; const URI_ENCODER = { encode: encodeURI, @@ -22,12 +23,17 @@ export function UriConverter( ): JSX.Element { const [rawText, setRawText] = createSignal(""); const [encodedText, setEncodedText] = createSignal(""); + const id = createUniqueId(); const encoder = createMemo(() => props.type === "uri" ? URI_ENCODER : URI_COMPONENT_ENCODER); + const originalId = `original-input-${id}`; + const encodedId = `encoded-input-${id}`; return ( <> + Original Text { @@ -44,7 +50,9 @@ export function UriConverter(
+ Encoded Text {