diff --git a/docs/plan-redesign.md b/docs/plan-redesign.md index 8fa10dd..d236c01 100644 --- a/docs/plan-redesign.md +++ b/docs/plan-redesign.md @@ -309,9 +309,10 @@ src/routes/preview/tools/[id]/+page.svelte - [x] **[C6]** Примитивы batch 2: `Panel`, `PanelHeading`, `SettingGroup`, `SettingsFooter`, `MetaRow`/`MetaList`, `Segmented`, `Badge`, `StepCard`, `ToolCard`, `ImageCard`/`PreviewTile`. -- [ ] **[C7]** Контролы: `Icon`, `IconButton`, `Button`, `Field`, `SliderField`, +- [x] **[C7]** Контролы: `Icon`, `IconButton`, `Button`, `Field`, `SliderField`, `ColorField`, `TextField`, `SelectField`, `CheckboxField`, `Toggle`, - `SegmentedControl`, `EmptyState`, `CodeBlock`, `DownloadButton`. + `SegmentedControl` (= `Segmented` из C6), `EmptyState`, `CodeBlock`, + `DownloadButton`. ### Шаг 2. Витрина kit (проверка компонентов) diff --git a/web/src/lib/components/kit/Button.svelte b/web/src/lib/components/kit/Button.svelte new file mode 100644 index 0000000..e052f1c --- /dev/null +++ b/web/src/lib/components/kit/Button.svelte @@ -0,0 +1,69 @@ + + + + + diff --git a/web/src/lib/components/kit/CheckboxField.svelte b/web/src/lib/components/kit/CheckboxField.svelte new file mode 100644 index 0000000..57f17dd --- /dev/null +++ b/web/src/lib/components/kit/CheckboxField.svelte @@ -0,0 +1,32 @@ + + + + + diff --git a/web/src/lib/components/kit/CodeBlock.svelte b/web/src/lib/components/kit/CodeBlock.svelte new file mode 100644 index 0000000..e072598 --- /dev/null +++ b/web/src/lib/components/kit/CodeBlock.svelte @@ -0,0 +1,50 @@ + + +
+ {#if lang}{lang}{/if} +
{code}
+ {#if copyable} +
+ oncopy?.()} /> +
+ {/if} +
+ + diff --git a/web/src/lib/components/kit/ColorField.svelte b/web/src/lib/components/kit/ColorField.svelte new file mode 100644 index 0000000..59de9ac --- /dev/null +++ b/web/src/lib/components/kit/ColorField.svelte @@ -0,0 +1,56 @@ + + + +
+ + +
+
+ + diff --git a/web/src/lib/components/kit/DownloadButton.svelte b/web/src/lib/components/kit/DownloadButton.svelte new file mode 100644 index 0000000..d933243 --- /dev/null +++ b/web/src/lib/components/kit/DownloadButton.svelte @@ -0,0 +1,23 @@ + + + + + diff --git a/web/src/lib/components/kit/EmptyState.svelte b/web/src/lib/components/kit/EmptyState.svelte new file mode 100644 index 0000000..5ece40c --- /dev/null +++ b/web/src/lib/components/kit/EmptyState.svelte @@ -0,0 +1,42 @@ + + +
+ {#if icon}{/if} + {title} + {#if description}{description}{/if} + {#if children}
{@render children()}
{/if} +
+ + diff --git a/web/src/lib/components/kit/Field.svelte b/web/src/lib/components/kit/Field.svelte new file mode 100644 index 0000000..4a47d9c --- /dev/null +++ b/web/src/lib/components/kit/Field.svelte @@ -0,0 +1,35 @@ + + +
+ {label} +
{@render children()}
+ {#if hint}{hint}{/if} +
+ + diff --git a/web/src/lib/components/kit/Icon.svelte b/web/src/lib/components/kit/Icon.svelte new file mode 100644 index 0000000..aa23c8c --- /dev/null +++ b/web/src/lib/components/kit/Icon.svelte @@ -0,0 +1,11 @@ + + + diff --git a/web/src/lib/components/kit/IconButton.svelte b/web/src/lib/components/kit/IconButton.svelte new file mode 100644 index 0000000..6726e5b --- /dev/null +++ b/web/src/lib/components/kit/IconButton.svelte @@ -0,0 +1,64 @@ + + + + + diff --git a/web/src/lib/components/kit/SelectField.svelte b/web/src/lib/components/kit/SelectField.svelte new file mode 100644 index 0000000..1995251 --- /dev/null +++ b/web/src/lib/components/kit/SelectField.svelte @@ -0,0 +1,42 @@ + + + + + + + diff --git a/web/src/lib/components/kit/SliderField.svelte b/web/src/lib/components/kit/SliderField.svelte new file mode 100644 index 0000000..8a9b9d8 --- /dev/null +++ b/web/src/lib/components/kit/SliderField.svelte @@ -0,0 +1,54 @@ + + + +
+ + {value}{suffix} +
+
+ + diff --git a/web/src/lib/components/kit/TextField.svelte b/web/src/lib/components/kit/TextField.svelte new file mode 100644 index 0000000..be8ab0f --- /dev/null +++ b/web/src/lib/components/kit/TextField.svelte @@ -0,0 +1,47 @@ + + + + + diff --git a/web/src/lib/components/kit/Toggle.svelte b/web/src/lib/components/kit/Toggle.svelte new file mode 100644 index 0000000..5da111c --- /dev/null +++ b/web/src/lib/components/kit/Toggle.svelte @@ -0,0 +1,56 @@ + + + + +