From 8532eb98c3f985ed4ee9ba0c7a51eabe0f86dc3c Mon Sep 17 00:00:00 2001 From: Ku6epXBOCTuK Date: Sun, 23 Aug 2026 20:12:43 +0500 Subject: [PATCH] feat: add step picker\list\editor --- .../components/workspace/StepEditor.svelte | 41 +++ .../lib/components/workspace/StepList.svelte | 128 ++++++++ .../components/workspace/StepPicker.svelte | 50 ++++ web/src/routes/+layout.svelte | 6 + web/src/routes/workspace/+page.svelte | 281 ++++++++++++++++++ 5 files changed, 506 insertions(+) create mode 100644 web/src/lib/components/workspace/StepEditor.svelte create mode 100644 web/src/lib/components/workspace/StepList.svelte create mode 100644 web/src/lib/components/workspace/StepPicker.svelte create mode 100644 web/src/routes/workspace/+page.svelte diff --git a/web/src/lib/components/workspace/StepEditor.svelte b/web/src/lib/components/workspace/StepEditor.svelte new file mode 100644 index 0000000..8d439b2 --- /dev/null +++ b/web/src/lib/components/workspace/StepEditor.svelte @@ -0,0 +1,41 @@ + + +{#if tool} +
+

{tool.title}

+

{tool.description}

+ {#if tool.params.length > 0} + + {:else} +

У этого шага нет параметров.

+ {/if} +
+{/if} + + diff --git a/web/src/lib/components/workspace/StepList.svelte b/web/src/lib/components/workspace/StepList.svelte new file mode 100644 index 0000000..529e7af --- /dev/null +++ b/web/src/lib/components/workspace/StepList.svelte @@ -0,0 +1,128 @@ + + +{#if steps.length === 0} +

Цепочка пуста — добавьте первый инструмент.

+{:else} +
    + {#each steps as step, index (step.id)} +
  1. + + + + + + +
  2. + {/each} +
+{/if} + + diff --git a/web/src/lib/components/workspace/StepPicker.svelte b/web/src/lib/components/workspace/StepPicker.svelte new file mode 100644 index 0000000..4a38ccf --- /dev/null +++ b/web/src/lib/components/workspace/StepPicker.svelte @@ -0,0 +1,50 @@ + + +
+ + +
+ + diff --git a/web/src/routes/+layout.svelte b/web/src/routes/+layout.svelte index fcbc68f..a49710e 100644 --- a/web/src/routes/+layout.svelte +++ b/web/src/routes/+layout.svelte @@ -14,6 +14,7 @@
easy-png-tools