@flowdrop/flowdrop 1.0.1 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +50 -50
- package/dist/adapters/WorkflowAdapter.d.ts +1 -1
- package/dist/adapters/WorkflowAdapter.js +25 -25
- package/dist/adapters/agentspec/AgentSpecAdapter.d.ts +2 -2
- package/dist/adapters/agentspec/AgentSpecAdapter.js +133 -122
- package/dist/adapters/agentspec/agentAdapter.d.ts +2 -2
- package/dist/adapters/agentspec/agentAdapter.js +10 -10
- package/dist/adapters/agentspec/autoLayout.d.ts +1 -1
- package/dist/adapters/agentspec/autoLayout.js +2 -2
- package/dist/adapters/agentspec/componentTypeDefaults.d.ts +1 -1
- package/dist/adapters/agentspec/componentTypeDefaults.js +120 -120
- package/dist/adapters/agentspec/defaultNodeTypes.d.ts +2 -2
- package/dist/adapters/agentspec/defaultNodeTypes.js +307 -307
- package/dist/adapters/agentspec/index.d.ts +10 -10
- package/dist/adapters/agentspec/index.js +6 -6
- package/dist/adapters/agentspec/validator.d.ts +2 -2
- package/dist/adapters/agentspec/validator.js +22 -20
- package/dist/api/enhanced-client.d.ts +3 -3
- package/dist/api/enhanced-client.js +73 -72
- package/dist/components/App.svelte +1090 -961
- package/dist/components/App.svelte.d.ts +9 -6
- package/dist/components/CanvasBanner.stories.svelte +23 -20
- package/dist/components/CanvasBanner.stories.svelte.d.ts +1 -1
- package/dist/components/CanvasBanner.svelte +52 -46
- package/dist/components/ConfigForm.svelte +1164 -1065
- package/dist/components/ConfigForm.svelte.d.ts +2 -2
- package/dist/components/ConfigModal.svelte +180 -180
- package/dist/components/ConfigModal.svelte.d.ts +1 -1
- package/dist/components/ConfigPanel.stories.svelte +35 -35
- package/dist/components/ConfigPanel.stories.svelte.d.ts +1 -1
- package/dist/components/ConfigPanel.svelte +178 -167
- package/dist/components/ConfigPanel.svelte.d.ts +1 -1
- package/dist/components/ConnectionLine.svelte +25 -25
- package/dist/components/EdgeRefresher.svelte +26 -26
- package/dist/components/FlowDropEdge.stories.svelte +179 -143
- package/dist/components/FlowDropEdge.svelte +147 -147
- package/dist/components/FlowDropEdge.svelte.d.ts +1 -1
- package/dist/components/FlowDropZone.svelte +63 -60
- package/dist/components/FlowDropZone.svelte.d.ts +1 -1
- package/dist/components/LoadingSpinner.stories.svelte +19 -19
- package/dist/components/LoadingSpinner.stories.svelte.d.ts +1 -1
- package/dist/components/LoadingSpinner.svelte +21 -21
- package/dist/components/LoadingSpinner.svelte.d.ts +1 -1
- package/dist/components/Logo.stories.svelte +13 -13
- package/dist/components/Logo.stories.svelte.d.ts +1 -1
- package/dist/components/Logo.svelte +101 -95
- package/dist/components/LogsSidebar.svelte +553 -546
- package/dist/components/LogsSidebar.svelte.d.ts +1 -1
- package/dist/components/MarkdownDisplay.stories.svelte +29 -23
- package/dist/components/MarkdownDisplay.stories.svelte.d.ts +1 -1
- package/dist/components/MarkdownDisplay.svelte +16 -14
- package/dist/components/Navbar.stories.svelte +43 -38
- package/dist/components/Navbar.stories.svelte.d.ts +1 -1
- package/dist/components/Navbar.svelte +760 -706
- package/dist/components/Navbar.svelte.d.ts +1 -1
- package/dist/components/NodeSidebar.svelte +905 -746
- package/dist/components/NodeSidebar.svelte.d.ts +5 -1
- package/dist/components/NodeStatusOverlay.stories.svelte +82 -70
- package/dist/components/NodeStatusOverlay.stories.svelte.d.ts +1 -1
- package/dist/components/NodeStatusOverlay.svelte +295 -280
- package/dist/components/NodeStatusOverlay.svelte.d.ts +3 -3
- package/dist/components/PipelineStatus.svelte +326 -300
- package/dist/components/PipelineStatus.svelte.d.ts +4 -4
- package/dist/components/PortCoordinateTracker.svelte +49 -47
- package/dist/components/PortCoordinateTracker.svelte.d.ts +1 -1
- package/dist/components/ReadOnlyDetails.svelte +156 -156
- package/dist/components/SchemaForm.stories.svelte +106 -98
- package/dist/components/SchemaForm.stories.svelte.d.ts +1 -1
- package/dist/components/SchemaForm.svelte +490 -463
- package/dist/components/SchemaForm.svelte.d.ts +2 -2
- package/dist/components/SettingsModal.svelte +226 -223
- package/dist/components/SettingsModal.svelte.d.ts +1 -1
- package/dist/components/SettingsPanel.svelte +637 -601
- package/dist/components/SettingsPanel.svelte.d.ts +1 -1
- package/dist/components/StatusIcon.stories.svelte +62 -49
- package/dist/components/StatusIcon.stories.svelte.d.ts +1 -1
- package/dist/components/StatusIcon.svelte +87 -87
- package/dist/components/StatusIcon.svelte.d.ts +2 -2
- package/dist/components/StatusLabel.stories.svelte +12 -12
- package/dist/components/StatusLabel.stories.svelte.d.ts +1 -1
- package/dist/components/StatusLabel.svelte +19 -19
- package/dist/components/ThemeToggle.stories.svelte +16 -16
- package/dist/components/ThemeToggle.stories.svelte.d.ts +1 -1
- package/dist/components/ThemeToggle.svelte +180 -169
- package/dist/components/ThemeToggle.svelte.d.ts +1 -1
- package/dist/components/UniversalNode.svelte +150 -138
- package/dist/components/UniversalNode.svelte.d.ts +3 -3
- package/dist/components/WorkflowEditor.svelte +1069 -1014
- package/dist/components/WorkflowEditor.svelte.d.ts +4 -4
- package/dist/components/form/FormArray.svelte +1034 -973
- package/dist/components/form/FormArray.svelte.d.ts +1 -1
- package/dist/components/form/FormAutocomplete.svelte +1021 -978
- package/dist/components/form/FormAutocomplete.svelte.d.ts +1 -1
- package/dist/components/form/FormCheckboxGroup.stories.svelte +23 -20
- package/dist/components/form/FormCheckboxGroup.stories.svelte.d.ts +1 -1
- package/dist/components/form/FormCheckboxGroup.svelte +136 -136
- package/dist/components/form/FormCodeEditor.svelte +452 -434
- package/dist/components/form/FormField.svelte +366 -355
- package/dist/components/form/FormField.svelte.d.ts +2 -2
- package/dist/components/form/FormFieldLight.svelte +400 -384
- package/dist/components/form/FormFieldLight.svelte.d.ts +1 -1
- package/dist/components/form/FormFieldWrapper.stories.svelte +42 -42
- package/dist/components/form/FormFieldWrapper.stories.svelte.d.ts +1 -1
- package/dist/components/form/FormFieldWrapper.svelte +100 -93
- package/dist/components/form/FormFieldWrapper.svelte.d.ts +1 -1
- package/dist/components/form/FormFieldset.svelte +108 -108
- package/dist/components/form/FormFieldset.svelte.d.ts +2 -2
- package/dist/components/form/FormMarkdownEditor.svelte +758 -725
- package/dist/components/form/FormNumberField.stories.svelte +25 -25
- package/dist/components/form/FormNumberField.stories.svelte.d.ts +1 -1
- package/dist/components/form/FormNumberField.svelte +88 -88
- package/dist/components/form/FormRangeField.stories.svelte +20 -20
- package/dist/components/form/FormRangeField.stories.svelte.d.ts +1 -1
- package/dist/components/form/FormRangeField.svelte +234 -226
- package/dist/components/form/FormSelect.stories.svelte +38 -38
- package/dist/components/form/FormSelect.stories.svelte.d.ts +1 -1
- package/dist/components/form/FormSelect.svelte +101 -101
- package/dist/components/form/FormSelect.svelte.d.ts +1 -1
- package/dist/components/form/FormTemplateEditor.svelte +847 -798
- package/dist/components/form/FormTemplateEditor.svelte.d.ts +1 -1
- package/dist/components/form/FormTextField.stories.svelte +29 -23
- package/dist/components/form/FormTextField.stories.svelte.d.ts +1 -1
- package/dist/components/form/FormTextField.svelte +68 -68
- package/dist/components/form/FormTextarea.stories.svelte +28 -25
- package/dist/components/form/FormTextarea.stories.svelte.d.ts +1 -1
- package/dist/components/form/FormTextarea.svelte +74 -74
- package/dist/components/form/FormToggle.stories.svelte +23 -20
- package/dist/components/form/FormToggle.stories.svelte.d.ts +1 -1
- package/dist/components/form/FormToggle.svelte +98 -98
- package/dist/components/form/FormUISchemaRenderer.svelte +120 -113
- package/dist/components/form/FormUISchemaRenderer.svelte.d.ts +3 -3
- package/dist/components/form/index.d.ts +19 -19
- package/dist/components/form/index.js +18 -18
- package/dist/components/form/templateAutocomplete.d.ts +2 -2
- package/dist/components/form/templateAutocomplete.js +64 -55
- package/dist/components/form/types.d.ts +6 -6
- package/dist/components/form/types.js +9 -4
- package/dist/components/icons/AlertCircleIcon.svelte +11 -0
- package/dist/components/icons/AlertCircleIcon.svelte.d.ts +26 -0
- package/dist/components/icons/CogIcon.svelte +11 -0
- package/dist/components/icons/CogIcon.svelte.d.ts +26 -0
- package/dist/components/interrupt/ChoicePrompt.stories.svelte +54 -38
- package/dist/components/interrupt/ChoicePrompt.stories.svelte.d.ts +1 -1
- package/dist/components/interrupt/ChoicePrompt.svelte +407 -383
- package/dist/components/interrupt/ChoicePrompt.svelte.d.ts +1 -1
- package/dist/components/interrupt/ConfirmationPrompt.stories.svelte +48 -48
- package/dist/components/interrupt/ConfirmationPrompt.stories.svelte.d.ts +1 -1
- package/dist/components/interrupt/ConfirmationPrompt.svelte +280 -274
- package/dist/components/interrupt/ConfirmationPrompt.svelte.d.ts +1 -1
- package/dist/components/interrupt/FormPrompt.svelte +223 -218
- package/dist/components/interrupt/FormPrompt.svelte.d.ts +1 -1
- package/dist/components/interrupt/InterruptBubble.svelte +617 -583
- package/dist/components/interrupt/InterruptBubble.svelte.d.ts +2 -2
- package/dist/components/interrupt/ReviewPrompt.stories.svelte +66 -56
- package/dist/components/interrupt/ReviewPrompt.stories.svelte.d.ts +1 -1
- package/dist/components/interrupt/ReviewPrompt.svelte +861 -841
- package/dist/components/interrupt/ReviewPrompt.svelte.d.ts +1 -1
- package/dist/components/interrupt/TextInputPrompt.stories.svelte +38 -33
- package/dist/components/interrupt/TextInputPrompt.stories.svelte.d.ts +1 -1
- package/dist/components/interrupt/TextInputPrompt.svelte +333 -328
- package/dist/components/interrupt/TextInputPrompt.svelte.d.ts +1 -1
- package/dist/components/interrupt/index.d.ts +5 -5
- package/dist/components/interrupt/index.js +5 -5
- package/dist/components/layouts/MainLayout.svelte +724 -691
- package/dist/components/layouts/MainLayout.svelte.d.ts +6 -6
- package/dist/components/nodes/GatewayNode.stories.svelte +100 -99
- package/dist/components/nodes/GatewayNode.svelte +605 -571
- package/dist/components/nodes/GatewayNode.svelte.d.ts +3 -3
- package/dist/components/nodes/IdeaNode.stories.svelte +44 -43
- package/dist/components/nodes/IdeaNode.svelte +451 -437
- package/dist/components/nodes/IdeaNode.svelte.d.ts +1 -1
- package/dist/components/nodes/NotesNode.stories.svelte +65 -64
- package/dist/components/nodes/NotesNode.svelte +380 -369
- package/dist/components/nodes/NotesNode.svelte.d.ts +1 -1
- package/dist/components/nodes/SimpleNode.stories.svelte +145 -144
- package/dist/components/nodes/SimpleNode.svelte +486 -424
- package/dist/components/nodes/SimpleNode.svelte.d.ts +1 -1
- package/dist/components/nodes/SquareNode.stories.svelte +73 -73
- package/dist/components/nodes/SquareNode.svelte +439 -380
- package/dist/components/nodes/SquareNode.svelte.d.ts +1 -1
- package/dist/components/nodes/TerminalNode.stories.svelte +13 -13
- package/dist/components/nodes/TerminalNode.svelte +709 -670
- package/dist/components/nodes/TerminalNode.svelte.d.ts +1 -1
- package/dist/components/nodes/ToolNode.stories.svelte +181 -180
- package/dist/components/nodes/ToolNode.svelte +505 -447
- package/dist/components/nodes/ToolNode.svelte.d.ts +1 -1
- package/dist/components/nodes/WorkflowNode.stories.svelte +70 -46
- package/dist/components/nodes/WorkflowNode.svelte +621 -551
- package/dist/components/nodes/WorkflowNode.svelte.d.ts +3 -3
- package/dist/components/playground/ChatPanel.svelte +945 -889
- package/dist/components/playground/ExecutionLogs.svelte +495 -472
- package/dist/components/playground/InputCollector.svelte +449 -428
- package/dist/components/playground/MessageBubble.stories.svelte +47 -47
- package/dist/components/playground/MessageBubble.stories.svelte.d.ts +1 -1
- package/dist/components/playground/MessageBubble.svelte +626 -610
- package/dist/components/playground/MessageBubble.svelte.d.ts +1 -1
- package/dist/components/playground/Playground.svelte +1088 -1057
- package/dist/components/playground/Playground.svelte.d.ts +3 -3
- package/dist/components/playground/PlaygroundModal.svelte +208 -204
- package/dist/components/playground/PlaygroundModal.svelte.d.ts +3 -3
- package/dist/components/playground/SessionManager.svelte +527 -521
- package/dist/components/playground/SessionManager.svelte.d.ts +1 -1
- package/dist/config/agentSpecEndpoints.d.ts +1 -1
- package/dist/config/agentSpecEndpoints.js +20 -20
- package/dist/config/constants.js +2 -2
- package/dist/config/defaultCategories.d.ts +1 -1
- package/dist/config/defaultCategories.js +86 -86
- package/dist/config/defaultPortConfig.d.ts +1 -1
- package/dist/config/defaultPortConfig.js +144 -144
- package/dist/config/endpoints.d.ts +4 -4
- package/dist/config/endpoints.js +65 -65
- package/dist/config/runtimeConfig.d.ts +2 -2
- package/dist/config/runtimeConfig.js +8 -8
- package/dist/core/index.d.ts +63 -59
- package/dist/core/index.js +35 -33
- package/dist/display/index.d.ts +2 -2
- package/dist/display/index.js +2 -2
- package/dist/editor/index.d.ts +62 -62
- package/dist/editor/index.js +53 -53
- package/dist/form/code.d.ts +5 -5
- package/dist/form/code.js +14 -14
- package/dist/form/fieldRegistry.d.ts +3 -3
- package/dist/form/fieldRegistry.js +11 -9
- package/dist/form/full.d.ts +8 -8
- package/dist/form/full.js +9 -9
- package/dist/form/index.d.ts +18 -18
- package/dist/form/index.js +16 -16
- package/dist/form/markdown.d.ts +4 -4
- package/dist/form/markdown.js +8 -8
- package/dist/helpers/proximityConnect.d.ts +3 -3
- package/dist/helpers/proximityConnect.js +34 -32
- package/dist/helpers/workflowEditorHelper.d.ts +5 -5
- package/dist/helpers/workflowEditorHelper.js +108 -96
- package/dist/index.d.ts +6 -6
- package/dist/index.js +6 -6
- package/dist/mocks/app-environment.js +2 -2
- package/dist/mocks/app-forms.js +9 -9
- package/dist/mocks/app-navigation.js +11 -11
- package/dist/mocks/app-stores.js +8 -8
- package/dist/playground/index.d.ts +19 -19
- package/dist/playground/index.js +16 -16
- package/dist/playground/mount.d.ts +3 -3
- package/dist/playground/mount.js +24 -24
- package/dist/registry/builtinFormats.js +13 -13
- package/dist/registry/builtinNodes.d.ts +2 -2
- package/dist/registry/builtinNodes.js +77 -77
- package/dist/registry/index.d.ts +4 -4
- package/dist/registry/index.js +4 -4
- package/dist/registry/nodeComponentRegistry.d.ts +8 -8
- package/dist/registry/nodeComponentRegistry.js +11 -9
- package/dist/registry/plugin.d.ts +2 -2
- package/dist/registry/plugin.js +11 -11
- package/dist/registry/workflowFormatRegistry.d.ts +3 -3
- package/dist/registry/workflowFormatRegistry.js +2 -2
- package/dist/schema/index.d.ts +1 -1
- package/dist/schema/index.js +2 -2
- package/dist/services/agentSpecExecutionService.d.ts +3 -3
- package/dist/services/agentSpecExecutionService.js +59 -55
- package/dist/services/api.d.ts +2 -2
- package/dist/services/api.js +37 -37
- package/dist/services/apiVariableService.d.ts +1 -1
- package/dist/services/apiVariableService.js +41 -34
- package/dist/services/autoSaveService.js +8 -8
- package/dist/services/categoriesApi.d.ts +2 -2
- package/dist/services/categoriesApi.js +8 -8
- package/dist/services/draftStorage.d.ts +1 -1
- package/dist/services/draftStorage.js +11 -11
- package/dist/services/dynamicSchemaService.d.ts +1 -1
- package/dist/services/dynamicSchemaService.js +41 -39
- package/dist/services/globalSave.d.ts +2 -2
- package/dist/services/globalSave.js +41 -38
- package/dist/services/historyService.d.ts +1 -1
- package/dist/services/historyService.js +8 -8
- package/dist/services/interruptService.d.ts +1 -1
- package/dist/services/interruptService.js +35 -29
- package/dist/services/nodeExecutionService.d.ts +1 -1
- package/dist/services/nodeExecutionService.js +45 -44
- package/dist/services/playgroundService.d.ts +1 -1
- package/dist/services/playgroundService.js +29 -29
- package/dist/services/portConfigApi.d.ts +2 -2
- package/dist/services/portConfigApi.js +8 -8
- package/dist/services/settingsService.d.ts +2 -2
- package/dist/services/settingsService.js +25 -19
- package/dist/services/toastService.d.ts +4 -4
- package/dist/services/toastService.js +33 -33
- package/dist/services/variableService.d.ts +1 -1
- package/dist/services/variableService.js +36 -36
- package/dist/services/workflowStorage.d.ts +2 -2
- package/dist/services/workflowStorage.js +13 -13
- package/dist/settings/index.d.ts +7 -7
- package/dist/settings/index.js +6 -6
- package/dist/skins/default.d.ts +2 -0
- package/dist/skins/default.js +1 -0
- package/dist/skins/index.d.ts +13 -0
- package/dist/skins/index.js +30 -0
- package/dist/skins/slate.d.ts +2 -0
- package/dist/skins/slate.js +78 -0
- package/dist/stores/categoriesStore.svelte.d.ts +1 -1
- package/dist/stores/categoriesStore.svelte.js +5 -5
- package/dist/stores/editorStateMachine.svelte.d.ts +2 -2
- package/dist/stores/editorStateMachine.svelte.js +65 -33
- package/dist/stores/historyStore.svelte.d.ts +4 -4
- package/dist/stores/historyStore.svelte.js +4 -4
- package/dist/stores/interruptStore.svelte.d.ts +3 -3
- package/dist/stores/interruptStore.svelte.js +21 -21
- package/dist/stores/playgroundStore.svelte.d.ts +2 -2
- package/dist/stores/playgroundStore.svelte.js +25 -18
- package/dist/stores/portCoordinateStore.svelte.d.ts +2 -2
- package/dist/stores/portCoordinateStore.svelte.js +15 -8
- package/dist/stores/settingsStore.svelte.d.ts +2 -2
- package/dist/stores/settingsStore.svelte.js +62 -57
- package/dist/stores/workflowStore.svelte.d.ts +3 -3
- package/dist/stores/workflowStore.svelte.js +50 -47
- package/dist/stories/CanvasDecorator.svelte +35 -32
- package/dist/stories/CanvasDecorator.svelte.d.ts +2 -2
- package/dist/stories/EdgeDecorator.svelte +102 -99
- package/dist/stories/EdgeDecorator.svelte.d.ts +1 -1
- package/dist/stories/NodeDecorator.svelte +59 -53
- package/dist/stories/NodeDecorator.svelte.d.ts +1 -1
- package/dist/stories/utils.d.ts +2 -2
- package/dist/stories/utils.js +105 -67
- package/dist/styles/base.css +599 -595
- package/dist/styles/toast.css +14 -14
- package/dist/styles/tokens.css +409 -378
- package/dist/svelte-app.d.ts +12 -9
- package/dist/svelte-app.js +40 -39
- package/dist/themes/default.d.ts +2 -0
- package/dist/themes/default.js +9 -0
- package/dist/themes/index.d.ts +13 -0
- package/dist/themes/index.js +44 -0
- package/dist/themes/minimal.d.ts +2 -0
- package/dist/themes/minimal.js +11 -0
- package/dist/types/agentspec.d.ts +18 -18
- package/dist/types/agentspec.js +2 -2
- package/dist/types/auth.d.ts +1 -1
- package/dist/types/auth.js +6 -6
- package/dist/types/config.d.ts +6 -6
- package/dist/types/events.d.ts +2 -2
- package/dist/types/events.js +2 -2
- package/dist/types/index.d.ts +32 -32
- package/dist/types/index.js +6 -6
- package/dist/types/interrupt.d.ts +6 -6
- package/dist/types/interrupt.js +21 -21
- package/dist/types/interruptState.d.ts +12 -12
- package/dist/types/interruptState.js +66 -66
- package/dist/types/playground.d.ts +7 -7
- package/dist/types/playground.js +14 -14
- package/dist/types/settings.d.ts +5 -3
- package/dist/types/settings.js +25 -18
- package/dist/types/skin.d.ts +31 -0
- package/dist/types/skin.js +1 -0
- package/dist/types/theme.d.ts +35 -0
- package/dist/types/theme.js +1 -0
- package/dist/types/uischema.d.ts +4 -4
- package/dist/types/uischema.js +3 -3
- package/dist/utils/colors.d.ts +1 -1
- package/dist/utils/colors.js +97 -95
- package/dist/utils/config.d.ts +2 -2
- package/dist/utils/config.js +48 -48
- package/dist/utils/connections.d.ts +2 -2
- package/dist/utils/connections.js +15 -15
- package/dist/utils/errors.js +3 -3
- package/dist/utils/fetchWithAuth.d.ts +1 -1
- package/dist/utils/fetchWithAuth.js +2 -2
- package/dist/utils/handleIds.d.ts +2 -2
- package/dist/utils/handleIds.js +8 -8
- package/dist/utils/handlePositioning.d.ts +1 -1
- package/dist/utils/handlePositioning.js +2 -2
- package/dist/utils/icons.d.ts +1 -1
- package/dist/utils/icons.js +74 -74
- package/dist/utils/logger.d.ts +1 -1
- package/dist/utils/logger.js +7 -7
- package/dist/utils/nodeStatus.d.ts +1 -1
- package/dist/utils/nodeStatus.js +48 -48
- package/dist/utils/nodeTypes.d.ts +1 -1
- package/dist/utils/nodeTypes.js +21 -20
- package/dist/utils/nodeWrapper.d.ts +7 -7
- package/dist/utils/nodeWrapper.js +21 -19
- package/dist/utils/performanceUtils.d.ts +1 -1
- package/dist/utils/performanceUtils.js +2 -1
- package/dist/utils/sanitize.js +1 -1
- package/dist/utils/uischema.d.ts +2 -2
- package/dist/utils/uischema.js +8 -8
- package/dist/utils/validation.js +20 -8
- package/package.json +1 -1
|
@@ -10,20 +10,20 @@
|
|
|
10
10
|
*
|
|
11
11
|
* @module components/form/templateAutocomplete
|
|
12
12
|
*/
|
|
13
|
-
import { autocompletion } from
|
|
14
|
-
import { getChildVariables, getArrayIndexSuggestions, isArrayVariable, hasChildren } from
|
|
13
|
+
import { autocompletion, } from "@codemirror/autocomplete";
|
|
14
|
+
import { getChildVariables, getArrayIndexSuggestions, isArrayVariable, hasChildren, } from "../../services/variableService.js";
|
|
15
15
|
/**
|
|
16
16
|
* Icon type hints for different variable types in autocomplete dropdown.
|
|
17
17
|
*/
|
|
18
18
|
const TYPE_ICONS = {
|
|
19
|
-
string:
|
|
20
|
-
number:
|
|
21
|
-
integer:
|
|
22
|
-
float:
|
|
23
|
-
boolean:
|
|
24
|
-
array:
|
|
25
|
-
object:
|
|
26
|
-
mixed:
|
|
19
|
+
string: "𝑆",
|
|
20
|
+
number: "#",
|
|
21
|
+
integer: "#",
|
|
22
|
+
float: "#",
|
|
23
|
+
boolean: "☑",
|
|
24
|
+
array: "[]",
|
|
25
|
+
object: "{}",
|
|
26
|
+
mixed: "⋯",
|
|
27
27
|
};
|
|
28
28
|
/**
|
|
29
29
|
* Extracts the current variable path being typed inside {{ }}.
|
|
@@ -43,12 +43,16 @@ function extractVariablePath(text, pos) {
|
|
|
43
43
|
let searchPos = pos - 1;
|
|
44
44
|
while (searchPos >= 0) {
|
|
45
45
|
// Check for opening {{
|
|
46
|
-
if (text[searchPos] ===
|
|
46
|
+
if (text[searchPos] === "{" &&
|
|
47
|
+
searchPos > 0 &&
|
|
48
|
+
text[searchPos - 1] === "{") {
|
|
47
49
|
openBracePos = searchPos - 1;
|
|
48
50
|
break;
|
|
49
51
|
}
|
|
50
52
|
// Check for closing }} - means we're outside an expression
|
|
51
|
-
if (text[searchPos] ===
|
|
53
|
+
if (text[searchPos] === "}" &&
|
|
54
|
+
searchPos > 0 &&
|
|
55
|
+
text[searchPos - 1] === "}") {
|
|
52
56
|
return null;
|
|
53
57
|
}
|
|
54
58
|
searchPos--;
|
|
@@ -66,8 +70,9 @@ function extractVariablePath(text, pos) {
|
|
|
66
70
|
return {
|
|
67
71
|
path: content,
|
|
68
72
|
startPos: contentStart +
|
|
69
|
-
(text.slice(contentStart, pos).length -
|
|
70
|
-
|
|
73
|
+
(text.slice(contentStart, pos).length -
|
|
74
|
+
text.slice(contentStart, pos).trimStart().length),
|
|
75
|
+
isInsideExpression: true,
|
|
71
76
|
};
|
|
72
77
|
}
|
|
73
78
|
/**
|
|
@@ -78,35 +83,35 @@ function extractVariablePath(text, pos) {
|
|
|
78
83
|
*/
|
|
79
84
|
function getCompletionType(path) {
|
|
80
85
|
// Empty or only whitespace - show top-level variables
|
|
81
|
-
if (path.trim() ===
|
|
82
|
-
return { type:
|
|
86
|
+
if (path.trim() === "") {
|
|
87
|
+
return { type: "top-level" };
|
|
83
88
|
}
|
|
84
89
|
// Ends with [ - show array indices
|
|
85
|
-
if (path.endsWith(
|
|
90
|
+
if (path.endsWith("[")) {
|
|
86
91
|
const parentPath = path.slice(0, -1);
|
|
87
|
-
return { type:
|
|
92
|
+
return { type: "array-index", parentPath };
|
|
88
93
|
}
|
|
89
94
|
// Ends with . - show child properties
|
|
90
|
-
if (path.endsWith(
|
|
95
|
+
if (path.endsWith(".")) {
|
|
91
96
|
const parentPath = path.slice(0, -1);
|
|
92
|
-
return { type:
|
|
97
|
+
return { type: "property", parentPath };
|
|
93
98
|
}
|
|
94
99
|
// Otherwise, we're typing a variable name - show matching options
|
|
95
|
-
const lastDotIndex = path.lastIndexOf(
|
|
96
|
-
const lastBracketIndex = path.lastIndexOf(
|
|
100
|
+
const lastDotIndex = path.lastIndexOf(".");
|
|
101
|
+
const lastBracketIndex = path.lastIndexOf("[");
|
|
97
102
|
const lastSeparator = Math.max(lastDotIndex, lastBracketIndex);
|
|
98
103
|
if (lastSeparator === -1) {
|
|
99
104
|
// Typing at top level
|
|
100
|
-
return { type:
|
|
105
|
+
return { type: "top-level" };
|
|
101
106
|
}
|
|
102
107
|
// Extract parent path based on separator
|
|
103
108
|
if (lastDotIndex > lastBracketIndex) {
|
|
104
109
|
// Last separator was a dot
|
|
105
|
-
return { type:
|
|
110
|
+
return { type: "property", parentPath: path.slice(0, lastDotIndex) };
|
|
106
111
|
}
|
|
107
112
|
else {
|
|
108
113
|
// Last separator was a bracket
|
|
109
|
-
return { type:
|
|
114
|
+
return { type: "array-index", parentPath: path.slice(0, lastBracketIndex) };
|
|
110
115
|
}
|
|
111
116
|
}
|
|
112
117
|
/**
|
|
@@ -116,23 +121,23 @@ function getCompletionType(path) {
|
|
|
116
121
|
* @param prefix - Prefix to add to the completion label
|
|
117
122
|
* @returns A CodeMirror Completion object
|
|
118
123
|
*/
|
|
119
|
-
function variableToCompletion(variable, prefix =
|
|
124
|
+
function variableToCompletion(variable, prefix = "") {
|
|
120
125
|
const icon = TYPE_ICONS[variable.type] ?? TYPE_ICONS.mixed;
|
|
121
126
|
const hasChildProps = variable.properties && Object.keys(variable.properties).length > 0;
|
|
122
|
-
const isArray = variable.type ===
|
|
127
|
+
const isArray = variable.type === "array";
|
|
123
128
|
// Add indicator if variable can be drilled into
|
|
124
|
-
let suffix =
|
|
129
|
+
let suffix = "";
|
|
125
130
|
if (hasChildProps)
|
|
126
|
-
suffix =
|
|
131
|
+
suffix = ".";
|
|
127
132
|
else if (isArray)
|
|
128
|
-
suffix =
|
|
133
|
+
suffix = "[";
|
|
129
134
|
return {
|
|
130
135
|
label: `${prefix}${variable.name}`,
|
|
131
|
-
displayLabel: `${icon} ${variable.label ?? variable.name}${suffix ?
|
|
136
|
+
displayLabel: `${icon} ${variable.label ?? variable.name}${suffix ? " " + suffix : ""}`,
|
|
132
137
|
detail: variable.type,
|
|
133
138
|
info: variable.description,
|
|
134
|
-
type:
|
|
135
|
-
boost: hasChildProps || isArray ? 1 : 0 // Boost drillable variables
|
|
139
|
+
type: "variable",
|
|
140
|
+
boost: hasChildProps || isArray ? 1 : 0, // Boost drillable variables
|
|
136
141
|
};
|
|
137
142
|
}
|
|
138
143
|
/**
|
|
@@ -150,13 +155,13 @@ function createTemplateCompletionSource(schema) {
|
|
|
150
155
|
if (!pathInfo) {
|
|
151
156
|
// Check if user just typed {{
|
|
152
157
|
const beforeCursor = text.slice(Math.max(0, pos - 2), pos);
|
|
153
|
-
if (beforeCursor ===
|
|
158
|
+
if (beforeCursor === "{{") {
|
|
154
159
|
// Show top-level variables
|
|
155
160
|
const options = Object.values(schema.variables).map((v) => variableToCompletion(v));
|
|
156
161
|
return {
|
|
157
162
|
from: pos,
|
|
158
163
|
options,
|
|
159
|
-
validFor: /^[\w.[\]]
|
|
164
|
+
validFor: /^[\w.[\]]*$/,
|
|
160
165
|
};
|
|
161
166
|
}
|
|
162
167
|
return null;
|
|
@@ -166,42 +171,46 @@ function createTemplateCompletionSource(schema) {
|
|
|
166
171
|
let options = [];
|
|
167
172
|
let from = pos;
|
|
168
173
|
switch (completionType.type) {
|
|
169
|
-
case
|
|
174
|
+
case "top-level": {
|
|
170
175
|
// Show all top-level variables
|
|
171
176
|
const currentWord = path.trim();
|
|
172
177
|
options = Object.values(schema.variables)
|
|
173
|
-
.filter((v) => currentWord ===
|
|
178
|
+
.filter((v) => currentWord === "" ||
|
|
179
|
+
v.name.toLowerCase().startsWith(currentWord.toLowerCase()))
|
|
174
180
|
.map((v) => variableToCompletion(v));
|
|
175
181
|
// Calculate from position for replacement
|
|
176
182
|
from = startPos + (path.length - path.trimStart().length);
|
|
177
183
|
break;
|
|
178
184
|
}
|
|
179
|
-
case
|
|
185
|
+
case "property": {
|
|
180
186
|
// Show child properties of the parent
|
|
181
187
|
const children = getChildVariables(schema, completionType.parentPath);
|
|
182
|
-
const currentWord = path.slice(path.lastIndexOf(
|
|
188
|
+
const currentWord = path.slice(path.lastIndexOf(".") + 1);
|
|
183
189
|
options = children
|
|
184
|
-
.filter((v) => currentWord ===
|
|
190
|
+
.filter((v) => currentWord === "" ||
|
|
191
|
+
v.name.toLowerCase().startsWith(currentWord.toLowerCase()))
|
|
185
192
|
.map((v) => variableToCompletion(v));
|
|
186
193
|
// From should be right after the last dot
|
|
187
|
-
from = startPos + path.lastIndexOf(
|
|
194
|
+
from = startPos + path.lastIndexOf(".") + 1;
|
|
188
195
|
break;
|
|
189
196
|
}
|
|
190
|
-
case
|
|
197
|
+
case "array-index": {
|
|
191
198
|
// Check if the parent is actually an array
|
|
192
199
|
if (isArrayVariable(schema, completionType.parentPath)) {
|
|
193
200
|
const indices = getArrayIndexSuggestions(5);
|
|
194
|
-
const currentIndex = path.slice(path.lastIndexOf(
|
|
201
|
+
const currentIndex = path.slice(path.lastIndexOf("[") + 1);
|
|
195
202
|
options = indices
|
|
196
|
-
.filter((idx) => currentIndex ===
|
|
203
|
+
.filter((idx) => currentIndex === "" || idx.startsWith(currentIndex))
|
|
197
204
|
.map((idx) => ({
|
|
198
205
|
label: idx,
|
|
199
|
-
displayLabel: idx ===
|
|
200
|
-
detail: idx ===
|
|
201
|
-
|
|
206
|
+
displayLabel: idx === "*]" ? "* (all items)" : `[${idx}`,
|
|
207
|
+
detail: idx === "*]"
|
|
208
|
+
? "Iterate all items"
|
|
209
|
+
: `Index ${idx.slice(0, -1)}`,
|
|
210
|
+
type: "keyword",
|
|
202
211
|
}));
|
|
203
212
|
// From should be right after the [
|
|
204
|
-
from = startPos + path.lastIndexOf(
|
|
213
|
+
from = startPos + path.lastIndexOf("[") + 1;
|
|
205
214
|
}
|
|
206
215
|
break;
|
|
207
216
|
}
|
|
@@ -212,7 +221,7 @@ function createTemplateCompletionSource(schema) {
|
|
|
212
221
|
return {
|
|
213
222
|
from,
|
|
214
223
|
options,
|
|
215
|
-
validFor: /^[\w\]*]
|
|
224
|
+
validFor: /^[\w\]*]*$/,
|
|
216
225
|
};
|
|
217
226
|
};
|
|
218
227
|
}
|
|
@@ -235,20 +244,20 @@ export function createTemplateAutocomplete(schema) {
|
|
|
235
244
|
override: [createTemplateCompletionSource(schema)],
|
|
236
245
|
activateOnTyping: true,
|
|
237
246
|
defaultKeymap: true,
|
|
238
|
-
optionClass: () =>
|
|
247
|
+
optionClass: () => "cm-template-autocomplete-option",
|
|
239
248
|
icons: false, // We use our own icons in displayLabel
|
|
240
249
|
addToOptions: [
|
|
241
250
|
{
|
|
242
251
|
render: (completion) => {
|
|
243
|
-
const el = document.createElement(
|
|
244
|
-
el.className =
|
|
252
|
+
const el = document.createElement("span");
|
|
253
|
+
el.className = "cm-template-autocomplete-info";
|
|
245
254
|
if (completion.info) {
|
|
246
255
|
el.textContent = String(completion.info);
|
|
247
256
|
}
|
|
248
257
|
return el;
|
|
249
258
|
},
|
|
250
|
-
position: 100
|
|
251
|
-
}
|
|
252
|
-
]
|
|
259
|
+
position: 100,
|
|
260
|
+
},
|
|
261
|
+
],
|
|
253
262
|
});
|
|
254
263
|
}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* These types provide a foundation for dynamic form rendering based on JSON Schema
|
|
6
6
|
* and support extensibility for complex field types like arrays and objects.
|
|
7
7
|
*/
|
|
8
|
-
import type { AutocompleteConfig, TemplateVariablesConfig } from
|
|
8
|
+
import type { AutocompleteConfig, TemplateVariablesConfig } from "../../types/index.js";
|
|
9
9
|
/**
|
|
10
10
|
* Supported field types for form rendering
|
|
11
11
|
* Aligned with JSON Schema specification (draft-07)
|
|
@@ -14,7 +14,7 @@ import type { AutocompleteConfig, TemplateVariablesConfig } from '../../types/in
|
|
|
14
14
|
* - Use `enum` for simple value lists
|
|
15
15
|
* - Use `oneOf` with `const`/`title` for labeled options
|
|
16
16
|
*/
|
|
17
|
-
export type FieldType =
|
|
17
|
+
export type FieldType = "string" | "number" | "integer" | "boolean" | "array" | "object";
|
|
18
18
|
/**
|
|
19
19
|
* Field format for specialized rendering
|
|
20
20
|
* - multiline: Renders as textarea
|
|
@@ -26,7 +26,7 @@ export type FieldType = 'string' | 'number' | 'integer' | 'boolean' | 'array' |
|
|
|
26
26
|
* - template: Renders as CodeMirror editor with Twig/Liquid syntax highlighting
|
|
27
27
|
* - autocomplete: Renders as text input with autocomplete suggestions from callback URL
|
|
28
28
|
*/
|
|
29
|
-
export type FieldFormat =
|
|
29
|
+
export type FieldFormat = "multiline" | "hidden" | "range" | "json" | "code" | "markdown" | "template" | "autocomplete" | string;
|
|
30
30
|
/**
|
|
31
31
|
* Option type for select and checkbox group fields
|
|
32
32
|
*
|
|
@@ -216,7 +216,7 @@ export interface AutocompleteFieldProps extends BaseFieldProps<string | string[]
|
|
|
216
216
|
* Autocomplete configuration imported from main types
|
|
217
217
|
* Re-exported here for convenience
|
|
218
218
|
*/
|
|
219
|
-
export type { AutocompleteConfig } from
|
|
219
|
+
export type { AutocompleteConfig } from "../../types/index.js";
|
|
220
220
|
/**
|
|
221
221
|
* Field schema definition derived from JSON Schema property
|
|
222
222
|
* Used to determine which field component to render
|
|
@@ -408,7 +408,7 @@ export interface SchemaFormProps {
|
|
|
408
408
|
* Properties define the form fields to render.
|
|
409
409
|
*/
|
|
410
410
|
schema: {
|
|
411
|
-
type:
|
|
411
|
+
type: "object";
|
|
412
412
|
properties: Record<string, FieldSchema>;
|
|
413
413
|
required?: string[];
|
|
414
414
|
additionalProperties?: boolean;
|
|
@@ -476,7 +476,7 @@ export interface SchemaFormProps {
|
|
|
476
476
|
* Authentication provider for autocomplete fields.
|
|
477
477
|
* Used to add authentication headers when fetching suggestions from callback URLs.
|
|
478
478
|
*/
|
|
479
|
-
authProvider?: import(
|
|
479
|
+
authProvider?: import("../../types/index.js").AuthProvider;
|
|
480
480
|
/**
|
|
481
481
|
* Base URL for resolving relative autocomplete callback URLs.
|
|
482
482
|
* @default ""
|
|
@@ -9,13 +9,18 @@
|
|
|
9
9
|
* Type guard to check if options are FieldOption objects
|
|
10
10
|
*/
|
|
11
11
|
export function isFieldOptionArray(options) {
|
|
12
|
-
return options.length > 0 &&
|
|
12
|
+
return (options.length > 0 &&
|
|
13
|
+
typeof options[0] === "object" &&
|
|
14
|
+
"value" in options[0]);
|
|
13
15
|
}
|
|
14
16
|
/**
|
|
15
17
|
* Type guard to check if items are OneOfItem objects (JSON Schema oneOf pattern)
|
|
16
18
|
*/
|
|
17
19
|
export function isOneOfArray(items) {
|
|
18
|
-
return (items.length > 0 &&
|
|
20
|
+
return (items.length > 0 &&
|
|
21
|
+
typeof items[0] === "object" &&
|
|
22
|
+
items[0] !== null &&
|
|
23
|
+
"const" in items[0]);
|
|
19
24
|
}
|
|
20
25
|
/**
|
|
21
26
|
* Convert JSON Schema oneOf items to FieldOption format
|
|
@@ -27,7 +32,7 @@ export function isOneOfArray(items) {
|
|
|
27
32
|
export function oneOfToOptions(oneOfItems) {
|
|
28
33
|
return oneOfItems.map((item) => ({
|
|
29
34
|
value: String(item.const),
|
|
30
|
-
label: item.title ?? String(item.const)
|
|
35
|
+
label: item.title ?? String(item.const),
|
|
31
36
|
}));
|
|
32
37
|
}
|
|
33
38
|
/**
|
|
@@ -55,7 +60,7 @@ export function normalizeOptions(options) {
|
|
|
55
60
|
// Handle string array (simple enum values)
|
|
56
61
|
return options.map((opt) => ({
|
|
57
62
|
value: String(opt),
|
|
58
|
-
label: String(opt)
|
|
63
|
+
label: String(opt),
|
|
59
64
|
}));
|
|
60
65
|
}
|
|
61
66
|
/**
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
<!-- Inline SVG equivalent of mdi:alert-circle (Material Design Icons) -->
|
|
2
|
+
<svg
|
|
3
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
4
|
+
viewBox="0 0 24 24"
|
|
5
|
+
fill="currentColor"
|
|
6
|
+
aria-hidden="true"
|
|
7
|
+
>
|
|
8
|
+
<path
|
|
9
|
+
d="M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"
|
|
10
|
+
/>
|
|
11
|
+
</svg>
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export default AlertCircleIcon;
|
|
2
|
+
type AlertCircleIcon = SvelteComponent<{
|
|
3
|
+
[x: string]: never;
|
|
4
|
+
}, {
|
|
5
|
+
[evt: string]: CustomEvent<any>;
|
|
6
|
+
}, {}> & {
|
|
7
|
+
$$bindings?: string | undefined;
|
|
8
|
+
};
|
|
9
|
+
declare const AlertCircleIcon: $$__sveltets_2_IsomorphicComponent<{
|
|
10
|
+
[x: string]: never;
|
|
11
|
+
}, {
|
|
12
|
+
[evt: string]: CustomEvent<any>;
|
|
13
|
+
}, {}, {}, string>;
|
|
14
|
+
interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
|
|
15
|
+
new (options: import("svelte").ComponentConstructorOptions<Props>): import("svelte").SvelteComponent<Props, Events, Slots> & {
|
|
16
|
+
$$bindings?: Bindings;
|
|
17
|
+
} & Exports;
|
|
18
|
+
(internal: unknown, props: {
|
|
19
|
+
$$events?: Events;
|
|
20
|
+
$$slots?: Slots;
|
|
21
|
+
}): Exports & {
|
|
22
|
+
$set?: any;
|
|
23
|
+
$on?: any;
|
|
24
|
+
};
|
|
25
|
+
z_$$bindings?: Bindings;
|
|
26
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
<!-- Inline SVG equivalent of mdi:cog (Material Design Icons) -->
|
|
2
|
+
<svg
|
|
3
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
4
|
+
viewBox="0 0 24 24"
|
|
5
|
+
fill="currentColor"
|
|
6
|
+
aria-hidden="true"
|
|
7
|
+
>
|
|
8
|
+
<path
|
|
9
|
+
d="M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.68 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z"
|
|
10
|
+
/>
|
|
11
|
+
</svg>
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export default CogIcon;
|
|
2
|
+
type CogIcon = SvelteComponent<{
|
|
3
|
+
[x: string]: never;
|
|
4
|
+
}, {
|
|
5
|
+
[evt: string]: CustomEvent<any>;
|
|
6
|
+
}, {}> & {
|
|
7
|
+
$$bindings?: string | undefined;
|
|
8
|
+
};
|
|
9
|
+
declare const CogIcon: $$__sveltets_2_IsomorphicComponent<{
|
|
10
|
+
[x: string]: never;
|
|
11
|
+
}, {
|
|
12
|
+
[evt: string]: CustomEvent<any>;
|
|
13
|
+
}, {}, {}, string>;
|
|
14
|
+
interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
|
|
15
|
+
new (options: import("svelte").ComponentConstructorOptions<Props>): import("svelte").SvelteComponent<Props, Events, Slots> & {
|
|
16
|
+
$$bindings?: Bindings;
|
|
17
|
+
} & Exports;
|
|
18
|
+
(internal: unknown, props: {
|
|
19
|
+
$$events?: Events;
|
|
20
|
+
$$slots?: Slots;
|
|
21
|
+
}): Exports & {
|
|
22
|
+
$set?: any;
|
|
23
|
+
$on?: any;
|
|
24
|
+
};
|
|
25
|
+
z_$$bindings?: Bindings;
|
|
26
|
+
}
|
|
@@ -1,52 +1,68 @@
|
|
|
1
1
|
<script module>
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
import { defineMeta } from "@storybook/addon-svelte-csf";
|
|
3
|
+
import ChoicePrompt from "./ChoicePrompt.svelte";
|
|
4
|
+
import { fn } from "storybook/test";
|
|
5
|
+
import { createChoiceConfig } from "../../stories/utils.js";
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
7
|
+
const { Story } = defineMeta({
|
|
8
|
+
title: "Interrupt/ChoicePrompt",
|
|
9
|
+
component: ChoicePrompt,
|
|
10
|
+
tags: ["autodocs"],
|
|
11
|
+
args: {
|
|
12
|
+
config: createChoiceConfig(),
|
|
13
|
+
isResolved: false,
|
|
14
|
+
isSubmitting: false,
|
|
15
|
+
onSubmit: fn(),
|
|
16
|
+
},
|
|
17
|
+
});
|
|
18
18
|
</script>
|
|
19
19
|
|
|
20
20
|
<Story name="Single Select" />
|
|
21
21
|
|
|
22
22
|
<Story
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
23
|
+
name="Multi Select"
|
|
24
|
+
args={{
|
|
25
|
+
config: createChoiceConfig({
|
|
26
|
+
message: "Select the features to enable:",
|
|
27
|
+
multiple: true,
|
|
28
|
+
options: [
|
|
29
|
+
{
|
|
30
|
+
value: "auth",
|
|
31
|
+
label: "Authentication",
|
|
32
|
+
description: "User login and signup",
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
value: "analytics",
|
|
36
|
+
label: "Analytics",
|
|
37
|
+
description: "Usage tracking and metrics",
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
value: "notifications",
|
|
41
|
+
label: "Notifications",
|
|
42
|
+
description: "Email and push alerts",
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
value: "export",
|
|
46
|
+
label: "Data Export",
|
|
47
|
+
description: "CSV and JSON export",
|
|
48
|
+
},
|
|
49
|
+
],
|
|
50
|
+
}),
|
|
51
|
+
}}
|
|
36
52
|
/>
|
|
37
53
|
|
|
38
54
|
<Story
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
55
|
+
name="Resolved"
|
|
56
|
+
args={{
|
|
57
|
+
isResolved: true,
|
|
58
|
+
resolvedValue: "high",
|
|
59
|
+
resolvedByUserName: "Bob",
|
|
60
|
+
}}
|
|
45
61
|
/>
|
|
46
62
|
|
|
47
63
|
<Story
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
64
|
+
name="Submitting"
|
|
65
|
+
args={{
|
|
66
|
+
isSubmitting: true,
|
|
67
|
+
}}
|
|
52
68
|
/>
|
|
@@ -11,7 +11,7 @@ declare const ChoicePrompt: $$__sveltets_2_IsomorphicComponent<{
|
|
|
11
11
|
}, {
|
|
12
12
|
[evt: string]: CustomEvent<any>;
|
|
13
13
|
}, {}, {}, string>;
|
|
14
|
-
import ChoicePrompt from
|
|
14
|
+
import ChoicePrompt from "./ChoicePrompt.svelte";
|
|
15
15
|
interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
|
|
16
16
|
new (options: import("svelte").ComponentConstructorOptions<Props>): import("svelte").SvelteComponent<Props, Events, Slots> & {
|
|
17
17
|
$$bindings?: Bindings;
|