windmill-components 1.56.2 → 1.57.1
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/assets/app.css +5 -1
- package/components/ArgInput.svelte +6 -6
- package/components/CenteredModal.svelte +15 -14
- package/components/CenteredModal.svelte.d.ts +1 -0
- package/components/DisplayResult.svelte +1 -1
- package/components/Dropdown.svelte +4 -3
- package/components/Dropdown.svelte.d.ts +2 -0
- package/components/Editor.svelte +6 -4
- package/components/Editor.svelte.d.ts +2 -0
- package/components/EditorBar.svelte +15 -1
- package/components/FlowBuilder.svelte +18 -10
- package/components/FlowPreviewContent.svelte +1 -1
- package/components/GroupEditor.svelte +1 -0
- package/components/IconedResourceType.svelte +2 -2
- package/components/InputTransformForm.svelte +50 -40
- package/components/InputTransformForm.svelte.d.ts +1 -0
- package/components/ItemPicker.svelte +63 -57
- package/components/ItemPicker.svelte.d.ts +1 -2
- package/components/LogViewer.svelte +6 -5
- package/components/ModulePreview.svelte +20 -22
- package/components/MoveDrawer.svelte +40 -16
- package/components/MoveDrawer.svelte.d.ts +2 -2
- package/components/PageHeader.svelte +1 -1
- package/components/Path.svelte +5 -2
- package/components/Popover.svelte +14 -20
- package/components/Popover.svelte.d.ts +5 -0
- package/components/RadioButton.svelte +5 -3
- package/components/RadioButton.svelte.d.ts +2 -0
- package/components/ResourceEditor.svelte +2 -1
- package/components/ResourcePicker.svelte +1 -0
- package/components/RunChart.svelte +0 -1
- package/components/SchemaEditor.svelte +3 -0
- package/components/SchemaForm.svelte +86 -77
- package/components/SchemaForm.svelte.d.ts +4 -0
- package/components/ScriptBuilder.svelte +2 -1
- package/components/ScriptEditor.svelte +88 -77
- package/components/ShareModal.svelte.d.ts +2 -2
- package/components/SimpleEditor.svelte +17 -0
- package/components/Star.svelte +15 -9
- package/components/StringTypeNarrowing.svelte +30 -8
- package/components/TemplateEditor.svelte +21 -11
- package/components/TestJobLoader.svelte +94 -68
- package/components/TestJobLoader.svelte.d.ts +10 -8
- package/components/Toggle.svelte +30 -7
- package/components/Toggle.svelte.d.ts +4 -0
- package/components/Tooltip.svelte +1 -1
- package/components/VariableEditor.svelte +4 -3
- package/components/VariableEditor.svelte.d.ts +2 -2
- package/components/apps/components/DisplayComponent.svelte +1 -1
- package/components/apps/components/buttons/AppButton.svelte +16 -10
- package/components/apps/components/buttons/AppButton.svelte.d.ts +1 -0
- package/components/apps/components/dataDisplay/AppBarChart.svelte +17 -8
- package/components/apps/components/dataDisplay/AppHtml.svelte +23 -0
- package/components/apps/components/dataDisplay/AppHtml.svelte.d.ts +23 -0
- package/components/apps/components/dataDisplay/AppPieChart.svelte +11 -7
- package/components/apps/components/dataDisplay/AppScatterChart.svelte +46 -0
- package/components/apps/components/dataDisplay/AppScatterChart.svelte.d.ts +21 -0
- package/components/apps/components/dataDisplay/AppText.svelte +44 -7
- package/components/apps/components/dataDisplay/AppText.svelte.d.ts +1 -0
- package/components/apps/components/dataDisplay/AppTimeseries.svelte +57 -0
- package/components/apps/components/dataDisplay/AppTimeseries.svelte.d.ts +22 -0
- package/components/apps/components/form/AppForm.svelte +35 -18
- package/components/apps/components/helpers/AlignWrapper.svelte +2 -1
- package/components/apps/components/helpers/AlignWrapper.svelte.d.ts +1 -0
- package/components/apps/components/helpers/InputValue.svelte +20 -14
- package/components/apps/components/helpers/InputValue.svelte.d.ts +3 -0
- package/components/apps/components/helpers/NonRunnableComponent.svelte +7 -6
- package/components/apps/components/helpers/NonRunnableComponent.svelte.d.ts +1 -1
- package/components/apps/components/helpers/RefreshButton.svelte +16 -11
- package/components/apps/components/helpers/RefreshButton.svelte.d.ts +2 -0
- package/components/apps/components/helpers/RunnableComponent.svelte +119 -102
- package/components/apps/components/helpers/RunnableWrapper.svelte +6 -1
- package/components/apps/components/selectInputs/AppCheckbox.svelte +4 -0
- package/components/apps/components/selectInputs/AppSelect.svelte +2 -0
- package/components/apps/components/table/AppTable.svelte +64 -35
- package/components/apps/components/table/AppTableFooter.svelte +2 -1
- package/components/apps/components/table/tableOptions.d.ts +2 -9
- package/components/apps/components/table/tableOptions.js +5 -2
- package/components/apps/components/textInputs/AppTextInput.svelte +7 -4
- package/components/apps/editor/AppEditor.svelte +136 -65
- package/components/apps/editor/AppEditor.svelte.d.ts +3 -0
- package/components/apps/editor/AppEditorHeader.svelte +349 -51
- package/components/apps/editor/AppEditorHeader.svelte.d.ts +2 -4
- package/components/apps/editor/AppExportButton.svelte +34 -0
- package/components/apps/editor/AppExportButton.svelte.d.ts +17 -0
- package/components/apps/editor/AppPreview.svelte +20 -7
- package/components/apps/editor/AppPreview.svelte.d.ts +6 -0
- package/components/apps/editor/AppPublishButton.svelte +53 -0
- package/components/apps/editor/AppPublishButton.svelte.d.ts +18 -0
- package/components/apps/editor/ComponentEditor.svelte +39 -8
- package/components/apps/editor/ComponentEditor.svelte.d.ts +1 -0
- package/components/apps/editor/ComponentHeader.svelte +38 -29
- package/components/apps/editor/ComponentHeader.svelte.d.ts +3 -1
- package/components/apps/editor/GridEditor.svelte +105 -67
- package/components/apps/editor/GridEditor.svelte.d.ts +6 -1
- package/components/apps/editor/RecomputeAllComponents.svelte +80 -19
- package/components/apps/editor/SettingsPanel.svelte +2 -2
- package/components/apps/editor/TablePanel.svelte +1 -0
- package/components/apps/editor/componentsPanel/ComponentList.svelte +30 -39
- package/components/apps/editor/componentsPanel/componentStaticValues.d.ts +2 -1
- package/components/apps/editor/componentsPanel/componentStaticValues.js +3 -2
- package/components/apps/editor/componentsPanel/data.js +201 -91
- package/components/apps/editor/contextPanel/ComponentOutputViewer.svelte +1 -0
- package/components/apps/editor/contextPanel/ContextPanel.svelte +69 -47
- package/components/apps/editor/inlineScriptsPanel/EmptyInlineScript.svelte +6 -2
- package/components/apps/editor/inlineScriptsPanel/EmptyInlineScript.svelte.d.ts +1 -0
- package/components/apps/editor/inlineScriptsPanel/InlineScriptEditor.svelte +56 -20
- package/components/apps/editor/inlineScriptsPanel/InlineScriptEditor.svelte.d.ts +1 -0
- package/components/apps/editor/inlineScriptsPanel/InlineScriptEditorDrawer.svelte +5 -1
- package/components/apps/editor/inlineScriptsPanel/InlineScriptEditorDrawer.svelte.d.ts +2 -0
- package/components/apps/editor/inlineScriptsPanel/InlineScriptEditorPanel.svelte +72 -23
- package/components/apps/editor/inlineScriptsPanel/InlineScriptEditorPanel.svelte.d.ts +1 -0
- package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanel.svelte +30 -22
- package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanelList.svelte +78 -77
- package/components/apps/editor/settingsPanel/AlignmentEditor.svelte +38 -33
- package/components/apps/editor/settingsPanel/ArrayStaticInputEditor.svelte +4 -4
- package/components/apps/editor/settingsPanel/ArrayStaticInputEditor.svelte.d.ts +1 -11
- package/components/apps/editor/settingsPanel/ComponentInputTypeEditor.svelte +27 -9
- package/components/apps/editor/settingsPanel/ComponentPanel.svelte +19 -24
- package/components/apps/editor/settingsPanel/ComponentPanel.svelte.d.ts +1 -0
- package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte +12 -5
- package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte.d.ts +2 -3
- package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte +59 -33
- package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte.d.ts +5 -2
- package/components/apps/editor/settingsPanel/Recompute.svelte +2 -2
- package/components/apps/editor/settingsPanel/SelectedRunnable.svelte +21 -3
- package/components/apps/editor/settingsPanel/SubTypeEditor.svelte +1 -3
- package/components/apps/editor/settingsPanel/SubTypeEditor.svelte.d.ts +0 -1
- package/components/apps/editor/settingsPanel/TableActions.svelte +27 -18
- package/components/apps/editor/settingsPanel/TableActions.svelte.d.ts +1 -0
- package/components/apps/editor/settingsPanel/common/PanelSection.svelte +10 -2
- package/components/apps/editor/settingsPanel/common/PanelSection.svelte.d.ts +3 -0
- package/components/apps/editor/settingsPanel/inputEditor/ConnectedInputEditor.svelte +6 -4
- package/components/apps/editor/settingsPanel/inputEditor/JsonEditor.svelte +24 -0
- package/components/apps/editor/settingsPanel/inputEditor/JsonEditor.svelte.d.ts +17 -0
- package/components/apps/editor/settingsPanel/inputEditor/RowInputEditor.svelte +6 -0
- package/components/apps/editor/settingsPanel/inputEditor/RowInputEditor.svelte.d.ts +17 -0
- package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte +11 -21
- package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte.d.ts +0 -1
- package/components/apps/editor/settingsPanel/mainInput/InlineScriptList.svelte +1 -2
- package/components/apps/editor/settingsPanel/mainInput/RunnableSelector.svelte +42 -13
- package/components/apps/editorUtils.d.ts +1 -0
- package/components/apps/editorUtils.js +11 -0
- package/components/apps/gridUtils.js +2 -1
- package/components/apps/inputType.d.ts +12 -6
- package/components/apps/rx.d.ts +3 -3
- package/components/apps/rx.js +9 -4
- package/components/apps/store.d.ts +2 -0
- package/components/apps/store.js +2 -0
- package/components/apps/types.d.ts +20 -4
- package/components/apps/utils.d.ts +2 -2
- package/components/apps/utils.js +25 -9
- package/components/common/button/Button.svelte +8 -8
- package/components/common/button/Button.svelte.d.ts +2 -0
- package/components/common/confirmationModal/ConfirmationModal.svelte +1 -0
- package/components/common/confirmationModal/UnsavedConfirmationModal.svelte +4 -1
- package/components/common/popup/Popup.svelte +1 -1
- package/components/common/table/AppRow.svelte +31 -4
- package/components/common/table/AppRow.svelte.d.ts +4 -0
- package/components/common/table/FlowRow.svelte +9 -5
- package/components/common/table/Row.svelte +10 -8
- package/components/common/table/ScriptRow.svelte +15 -13
- package/components/common/tabs/Tabs.svelte +1 -1
- package/components/common/toggleButton/ToggleButton.svelte +2 -0
- package/components/common/toggleButton/ToggleButton.svelte.d.ts +1 -0
- package/components/flows/CreateActionsApp.svelte +43 -0
- package/components/flows/CreateActionsApp.svelte.d.ts +14 -0
- package/components/flows/CreateActionsFlow.svelte +6 -1
- package/components/flows/content/DynamicInputHelpBox.svelte +1 -1
- package/components/flows/content/FlowConstants.svelte +82 -0
- package/components/flows/content/FlowConstants.svelte.d.ts +14 -0
- package/components/flows/content/FlowEditorPanel.svelte +3 -0
- package/components/flows/content/FlowInputs.svelte +2 -2
- package/components/flows/content/FlowModuleComponent.svelte +4 -1
- package/components/flows/content/FlowModuleHeader.svelte +41 -89
- package/components/flows/content/FlowModuleHeader.svelte.d.ts +2 -2
- package/components/flows/content/FlowSettings.svelte +1 -1
- package/components/flows/flowStore.d.ts +1 -1
- package/components/flows/flowStore.js +8 -8
- package/components/flows/header/FlowImportExportMenu.svelte +1 -1
- package/components/flows/header/FlowPreviewButtons.svelte +2 -1
- package/components/flows/map/FlowConstantsItem.svelte +13 -0
- package/components/flows/map/FlowConstantsItem.svelte.d.ts +14 -0
- package/components/flows/map/FlowInputsItem.svelte +1 -2
- package/components/flows/map/FlowModuleSchemaItem.svelte +34 -25
- package/components/flows/map/FlowModuleSchemaMap.svelte +9 -3
- package/components/flows/map/FlowSettingsItem.svelte +6 -8
- package/components/flows/pickers/PickHubScript.svelte +1 -1
- package/components/flows/propPicker/PropPickerWrapper.svelte +42 -31
- package/components/home/ItemsList.svelte +6 -4
- package/components/icons/ClickhouseIcon.svelte +22 -0
- package/components/icons/ClickhouseIcon.svelte.d.ts +17 -0
- package/components/icons/FaunadbIcon.svelte +19 -0
- package/components/icons/FaunadbIcon.svelte.d.ts +17 -0
- package/components/icons/OpenaiIcon.svelte +18 -0
- package/components/icons/OpenaiIcon.svelte.d.ts +17 -0
- package/components/icons/index.d.ts +7 -1
- package/components/icons/index.js +8 -2
- package/components/propertyPicker/ObjectViewer.svelte +11 -4
- package/components/propertyPicker/PropPicker.svelte +1 -1
- package/components/scriptEditor/LogPanel.svelte +26 -22
- package/components/sidebar/FavoriteMenu.svelte +23 -19
- package/components/sidebar/SidebarContent.svelte +16 -16
- package/components/sidebar/WorkspaceMenu.svelte +18 -17
- package/components/splitPanes/SplitPanesWrapper.svelte +1 -5
- package/components/splitPanes/SplitPanesWrapper.svelte.d.ts +0 -1
- package/editorUtils.js +2 -0
- package/gen/core/OpenAPI.js +1 -1
- package/gen/models/Policy.d.ts +1 -0
- package/gen/services/AppService.d.ts +18 -0
- package/gen/services/AppService.js +30 -0
- package/gen/services/GranularAclService.d.ts +3 -3
- package/gen/services/ResourceService.d.ts +15 -0
- package/gen/services/ResourceService.js +17 -0
- package/infer.js +4 -0
- package/logout.d.ts +1 -0
- package/logout.js +5 -3
- package/package.json +502 -489
- package/stores.d.ts +1 -0
- package/stores.js +13 -5
- package/utils.d.ts +1 -1
- package/utils.js +17 -10
- package/components/apps/CreateApp.svelte +0 -68
- package/components/apps/CreateApp.svelte.d.ts +0 -14
package/components/apps/utils.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { FlowService, ScriptService } from '../../gen';
|
|
2
2
|
import { inferArgs } from '../../infer';
|
|
3
|
-
import { BarChart4, Binary, CircleDot, FormInput, Inspect, List, Monitor, PieChart, Play, Table2, Image, TextCursorInput, Type, Lock, Calendar, ToggleLeft } from 'lucide-svelte';
|
|
3
|
+
import { BarChart4, Binary, CircleDot, FormInput, Inspect, List, Monitor, PieChart, Play, Table2, Image, TextCursorInput, Type, Lock, Calendar, ToggleLeft, GripHorizontal, Code2 } from 'lucide-svelte';
|
|
4
4
|
export async function loadSchema(workspace, path, runType) {
|
|
5
5
|
if (runType === 'script') {
|
|
6
6
|
const script = await ScriptService.getScriptByPath({
|
|
@@ -25,12 +25,14 @@ export async function loadSchema(workspace, path, runType) {
|
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
27
|
export function schemaToInputsSpec(schema) {
|
|
28
|
+
if (schema?.properties == undefined) {
|
|
29
|
+
return {};
|
|
30
|
+
}
|
|
28
31
|
return Object.keys(schema.properties).reduce((accu, key) => {
|
|
29
32
|
const property = schema.properties[key];
|
|
30
33
|
accu[key] = {
|
|
31
34
|
type: 'static',
|
|
32
|
-
|
|
33
|
-
value: undefined,
|
|
35
|
+
value: property.default,
|
|
34
36
|
visible: property.format ? false : true,
|
|
35
37
|
fieldType: property.type,
|
|
36
38
|
format: property.format
|
|
@@ -56,13 +58,25 @@ export const displayData = {
|
|
|
56
58
|
icon: FormInput
|
|
57
59
|
},
|
|
58
60
|
piechartcomponent: {
|
|
59
|
-
name: 'Pie
|
|
61
|
+
name: 'Pie Chart',
|
|
60
62
|
icon: PieChart
|
|
61
63
|
},
|
|
62
64
|
barchartcomponent: {
|
|
63
|
-
name: 'Bar
|
|
65
|
+
name: 'Bar/Line Chart',
|
|
64
66
|
icon: BarChart4
|
|
65
67
|
},
|
|
68
|
+
htmlcomponent: {
|
|
69
|
+
name: 'Html',
|
|
70
|
+
icon: Code2
|
|
71
|
+
},
|
|
72
|
+
timeseriescomponent: {
|
|
73
|
+
name: 'Timeseries',
|
|
74
|
+
icon: GripHorizontal
|
|
75
|
+
},
|
|
76
|
+
scatterchartcomponent: {
|
|
77
|
+
name: 'Scatter Chart',
|
|
78
|
+
icon: GripHorizontal
|
|
79
|
+
},
|
|
66
80
|
tablecomponent: {
|
|
67
81
|
name: 'Table',
|
|
68
82
|
icon: Table2
|
|
@@ -96,11 +110,11 @@ export const displayData = {
|
|
|
96
110
|
icon: List
|
|
97
111
|
},
|
|
98
112
|
numberinputcomponent: {
|
|
99
|
-
name: 'Number
|
|
113
|
+
name: 'Number',
|
|
100
114
|
icon: Binary
|
|
101
115
|
},
|
|
102
116
|
passwordinputcomponent: {
|
|
103
|
-
name: 'Password
|
|
117
|
+
name: 'Password',
|
|
104
118
|
icon: Lock
|
|
105
119
|
},
|
|
106
120
|
dateinputcomponent: {
|
|
@@ -147,7 +161,7 @@ export function isScriptByNameDefined(appInput) {
|
|
|
147
161
|
return false;
|
|
148
162
|
}
|
|
149
163
|
if (appInput.type === 'runnable' && appInput.runnable?.type == 'runnableByName') {
|
|
150
|
-
return
|
|
164
|
+
return appInput.runnable?.name != undefined;
|
|
151
165
|
}
|
|
152
166
|
return false;
|
|
153
167
|
}
|
|
@@ -162,6 +176,8 @@ export function isScriptByPathDefined(appInput) {
|
|
|
162
176
|
}
|
|
163
177
|
export function clearResultAppInput(appInput) {
|
|
164
178
|
appInput.runnable = undefined;
|
|
165
|
-
appInput.fields
|
|
179
|
+
if (Object.keys(appInput.fields ?? {}).length > 0) {
|
|
180
|
+
appInput.fields = {};
|
|
181
|
+
}
|
|
166
182
|
return appInput;
|
|
167
183
|
}
|
|
@@ -3,7 +3,7 @@ import { classNames } from '../../../utils';
|
|
|
3
3
|
import Icon from 'svelte-awesome';
|
|
4
4
|
import { ButtonType } from './model';
|
|
5
5
|
import { goto } from '$app/navigation';
|
|
6
|
-
import {
|
|
6
|
+
import { Loader2 } from 'lucide-svelte';
|
|
7
7
|
export let size = 'md';
|
|
8
8
|
export let spacingSize = size;
|
|
9
9
|
export let color = 'blue';
|
|
@@ -20,6 +20,7 @@ export let id = '';
|
|
|
20
20
|
export let nonCaptureEvent = false;
|
|
21
21
|
export let buttonType = 'button';
|
|
22
22
|
export let loading = false;
|
|
23
|
+
export let title = undefined;
|
|
23
24
|
const dispatch = createEventDispatcher();
|
|
24
25
|
// Order of classes: border, border modifier, bg, bg modifier, text, text modifier, everything else
|
|
25
26
|
const colorVariants = {
|
|
@@ -50,15 +51,17 @@ const colorVariants = {
|
|
|
50
51
|
};
|
|
51
52
|
$: buttonProps = {
|
|
52
53
|
id,
|
|
53
|
-
class: classNames(colorVariants[color][variant], variant === 'border' ? 'border' : '', ButtonType.FontSizeClasses[size], ButtonType.SpacingClasses[spacingSize], 'focus:ring-2 font-semibold', 'rounded-md', 'justify-center items-center text-center whitespace-nowrap inline-flex', btnClasses, disabled ? 'bg-gray-300' : ''),
|
|
54
|
+
class: classNames(colorVariants[color][variant], variant === 'border' ? 'border' : '', ButtonType.FontSizeClasses[size], ButtonType.SpacingClasses[spacingSize], 'focus:ring-2 font-semibold', 'duration-200 rounded-md', 'justify-center items-center text-center whitespace-nowrap inline-flex', btnClasses, disabled ? 'bg-gray-300' : ''),
|
|
54
55
|
href,
|
|
55
56
|
target,
|
|
56
57
|
tabindex: disabled ? -1 : 0,
|
|
57
|
-
type: buttonType
|
|
58
|
+
type: buttonType,
|
|
59
|
+
title
|
|
58
60
|
};
|
|
59
61
|
async function onClick(event) {
|
|
60
62
|
if (!nonCaptureEvent) {
|
|
61
63
|
event.preventDefault();
|
|
64
|
+
event.stopPropagation();
|
|
62
65
|
dispatch('click', event);
|
|
63
66
|
if (href) {
|
|
64
67
|
if (href.startsWith('http') || target == '_blank') {
|
|
@@ -80,6 +83,7 @@ $: endIconClass = classNames(iconOnly ? undefined : isSmall ? 'ml-1' : 'ml-2', e
|
|
|
80
83
|
<svelte:element
|
|
81
84
|
this={href ? 'a' : 'button'}
|
|
82
85
|
bind:this={element}
|
|
86
|
+
on:pointerdown
|
|
83
87
|
on:click={onClick}
|
|
84
88
|
on:focus
|
|
85
89
|
on:blur
|
|
@@ -88,11 +92,7 @@ $: endIconClass = classNames(iconOnly ? undefined : isSmall ? 'ml-1' : 'ml-2', e
|
|
|
88
92
|
type="submit"
|
|
89
93
|
>
|
|
90
94
|
{#if loading}
|
|
91
|
-
<
|
|
92
|
-
data={faSpinner}
|
|
93
|
-
class={`animate-spin ${startIconClass}`}
|
|
94
|
-
scale={ButtonType.IconScale[size]}
|
|
95
|
-
/>
|
|
95
|
+
<Loader2 class="animate-spin mr-1" size={14} />
|
|
96
96
|
{:else if startIcon}
|
|
97
97
|
<Icon data={startIcon.icon} class={startIconClass} scale={ButtonType.IconScale[size]} />
|
|
98
98
|
{/if}
|
|
@@ -19,8 +19,10 @@ declare const __propDef: {
|
|
|
19
19
|
nonCaptureEvent?: boolean | undefined;
|
|
20
20
|
buttonType?: "reset" | "submit" | "button" | undefined;
|
|
21
21
|
loading?: boolean | undefined;
|
|
22
|
+
title?: string | undefined;
|
|
22
23
|
};
|
|
23
24
|
events: {
|
|
25
|
+
pointerdown: PointerEvent;
|
|
24
26
|
focus: FocusEvent;
|
|
25
27
|
blur: FocusEvent;
|
|
26
28
|
click: CustomEvent<any>;
|
|
@@ -41,6 +41,9 @@ onDestroy(() => {
|
|
|
41
41
|
}}
|
|
42
42
|
>
|
|
43
43
|
<div class="flex flex-col w-full space-y-4">
|
|
44
|
-
<span
|
|
44
|
+
<span
|
|
45
|
+
>Are you sure you want to discard change you have made? (A draft has been temporarily and
|
|
46
|
+
locally saved)</span
|
|
47
|
+
>
|
|
45
48
|
</div>
|
|
46
49
|
</ConfirmationModal>
|
|
@@ -125,7 +125,7 @@ onDestroy(removeAllListeners);
|
|
|
125
125
|
aria-expanded={$stateMachine.currentState !== 'closed'}
|
|
126
126
|
>
|
|
127
127
|
{#if $stateMachine.currentState !== 'closed'}
|
|
128
|
-
<div transition:slide={{ duration: 200 }} class={outerClasses}>
|
|
128
|
+
<div transition:slide|local={{ duration: 200 }} class={outerClasses}>
|
|
129
129
|
<div class={innerClasses}>
|
|
130
130
|
<slot />
|
|
131
131
|
</div>
|
|
@@ -2,13 +2,16 @@
|
|
|
2
2
|
import SharedBadge from '../../SharedBadge.svelte';
|
|
3
3
|
import { AppService } from '../../../gen';
|
|
4
4
|
import { userStore, workspaceStore } from '../../../stores';
|
|
5
|
-
import { faEdit, faEye, faTrashAlt } from '@fortawesome/free-solid-svg-icons';
|
|
5
|
+
import { faEdit, faEye, faFileExport, faPen, faShare, faTrashAlt } from '@fortawesome/free-solid-svg-icons';
|
|
6
|
+
import { MoreVertical } from 'lucide-svelte';
|
|
6
7
|
import { createEventDispatcher } from 'svelte';
|
|
7
8
|
import Button from '../button/Button.svelte';
|
|
8
9
|
import Row from './Row.svelte';
|
|
9
10
|
export let app;
|
|
10
11
|
export let marked;
|
|
11
12
|
export let starred;
|
|
13
|
+
export let shareModal;
|
|
14
|
+
export let moveDrawer;
|
|
12
15
|
let { summary, path, extra_perms, canWrite, workspace_id } = app;
|
|
13
16
|
const dispatch = createEventDispatcher();
|
|
14
17
|
</script>
|
|
@@ -36,13 +39,14 @@ const dispatch = createEventDispatcher();
|
|
|
36
39
|
size="xs"
|
|
37
40
|
variant="border"
|
|
38
41
|
startIcon={{ icon: faEdit }}
|
|
39
|
-
href="/apps/edit/{path}"
|
|
42
|
+
href="/apps/edit/{path}?nodraft=true"
|
|
40
43
|
>
|
|
41
44
|
Edit
|
|
42
45
|
</Button>
|
|
43
46
|
</div>
|
|
44
47
|
{/if}
|
|
45
48
|
{/if}
|
|
49
|
+
|
|
46
50
|
<Button
|
|
47
51
|
href="/apps/get/{path}"
|
|
48
52
|
color="dark"
|
|
@@ -55,12 +59,33 @@ const dispatch = createEventDispatcher();
|
|
|
55
59
|
</span>
|
|
56
60
|
<Dropdown
|
|
57
61
|
placement="bottom-end"
|
|
62
|
+
btnClasses="!text-gray-700 !bg-transparent hover:!bg-gray-400/20 !p-[6px]"
|
|
58
63
|
dropdownItems={[
|
|
59
64
|
{
|
|
60
|
-
displayName: 'View
|
|
65
|
+
displayName: 'View',
|
|
61
66
|
icon: faEye,
|
|
62
67
|
href: `/apps/get/${path}`
|
|
63
68
|
},
|
|
69
|
+
{
|
|
70
|
+
displayName: 'Edit',
|
|
71
|
+
icon: faPen,
|
|
72
|
+
href: `/apps/edit/${path}?nodraft=true`
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
displayName: 'Move/Rename',
|
|
76
|
+
icon: faFileExport,
|
|
77
|
+
action: () => {
|
|
78
|
+
moveDrawer.openDrawer(path, summary, 'app')
|
|
79
|
+
},
|
|
80
|
+
disabled: !canWrite
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
displayName: canWrite ? 'Share' : 'See Permissions',
|
|
84
|
+
icon: faShare,
|
|
85
|
+
action: () => {
|
|
86
|
+
shareModal.openDrawer && shareModal.openDrawer(path, 'app')
|
|
87
|
+
}
|
|
88
|
+
},
|
|
64
89
|
{
|
|
65
90
|
displayName: 'Delete',
|
|
66
91
|
icon: faTrashAlt,
|
|
@@ -72,6 +97,8 @@ const dispatch = createEventDispatcher();
|
|
|
72
97
|
disabled: !canWrite
|
|
73
98
|
}
|
|
74
99
|
]}
|
|
75
|
-
|
|
100
|
+
>
|
|
101
|
+
<MoreVertical size={20} />
|
|
102
|
+
</Dropdown>
|
|
76
103
|
</svelte:fragment>
|
|
77
104
|
</Row>
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { SvelteComponentTyped } from "svelte";
|
|
2
|
+
import type MoveDrawer from '../../MoveDrawer.svelte';
|
|
3
|
+
import type ShareModal from '../../ShareModal.svelte';
|
|
2
4
|
import { type ListableApp } from '../../../gen';
|
|
3
5
|
declare const __propDef: {
|
|
4
6
|
props: {
|
|
@@ -7,6 +9,8 @@ declare const __propDef: {
|
|
|
7
9
|
};
|
|
8
10
|
marked: string | undefined;
|
|
9
11
|
starred: boolean;
|
|
12
|
+
shareModal: ShareModal;
|
|
13
|
+
moveDrawer: MoveDrawer;
|
|
10
14
|
};
|
|
11
15
|
events: {
|
|
12
16
|
change: CustomEvent<any>;
|
|
@@ -6,6 +6,7 @@ import { FlowService } from '../../../gen';
|
|
|
6
6
|
import { userStore, workspaceStore } from '../../../stores';
|
|
7
7
|
import { sendUserToast } from '../../../utils';
|
|
8
8
|
import { faArchive, faCalendarAlt, faCodeFork, faEdit, faEye, faFileExport, faList, faPlay, faShare } from '@fortawesome/free-solid-svg-icons';
|
|
9
|
+
import { MoreVertical } from 'lucide-svelte';
|
|
9
10
|
import { createEventDispatcher } from 'svelte';
|
|
10
11
|
import Button from '../button/Button.svelte';
|
|
11
12
|
import Row from './Row.svelte';
|
|
@@ -53,7 +54,7 @@ let scheduleEditor;
|
|
|
53
54
|
size="xs"
|
|
54
55
|
variant="border"
|
|
55
56
|
startIcon={{ icon: faEdit }}
|
|
56
|
-
href="/flows/edit/{path}"
|
|
57
|
+
href="/flows/edit/{path}?nodraft=true"
|
|
57
58
|
>
|
|
58
59
|
Edit
|
|
59
60
|
</Button>
|
|
@@ -96,6 +97,7 @@ let scheduleEditor;
|
|
|
96
97
|
|
|
97
98
|
<Dropdown
|
|
98
99
|
placement="bottom-end"
|
|
100
|
+
btnClasses="!text-gray-700 !bg-transparent hover:!bg-gray-400/20 !p-[6px]"
|
|
99
101
|
dropdownItems={[
|
|
100
102
|
{
|
|
101
103
|
displayName: 'View flow',
|
|
@@ -105,7 +107,7 @@ let scheduleEditor;
|
|
|
105
107
|
{
|
|
106
108
|
displayName: 'Edit',
|
|
107
109
|
icon: faEdit,
|
|
108
|
-
href: `/flows/edit/${path}`,
|
|
110
|
+
href: `/flows/edit/${path}?nodraft=true`,
|
|
109
111
|
disabled: !canWrite
|
|
110
112
|
},
|
|
111
113
|
{
|
|
@@ -119,10 +121,10 @@ let scheduleEditor;
|
|
|
119
121
|
href: `/runs/${path}`
|
|
120
122
|
},
|
|
121
123
|
{
|
|
122
|
-
displayName: 'Move',
|
|
124
|
+
displayName: 'Move/Rename',
|
|
123
125
|
icon: faFileExport,
|
|
124
126
|
action: () => {
|
|
125
|
-
moveDrawer.openDrawer(path, 'flow')
|
|
127
|
+
moveDrawer.openDrawer(path, summary, 'flow')
|
|
126
128
|
},
|
|
127
129
|
disabled: !canWrite
|
|
128
130
|
},
|
|
@@ -150,6 +152,8 @@ let scheduleEditor;
|
|
|
150
152
|
disabled: !canWrite
|
|
151
153
|
}
|
|
152
154
|
]}
|
|
153
|
-
|
|
155
|
+
>
|
|
156
|
+
<MoreVertical size={20} />
|
|
157
|
+
</Dropdown>
|
|
154
158
|
</svelte:fragment>
|
|
155
159
|
</Row>
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
<script>import
|
|
2
|
-
import Star from '../../Star.svelte';
|
|
1
|
+
<script>import Star from '../../Star.svelte';
|
|
3
2
|
import { createEventDispatcher } from 'svelte';
|
|
4
3
|
import RowIcon from './RowIcon.svelte';
|
|
5
4
|
export let marked;
|
|
@@ -18,10 +17,11 @@ const color = {
|
|
|
18
17
|
}[kind];
|
|
19
18
|
</script>
|
|
20
19
|
|
|
21
|
-
<div class="hover:bg-gray-50 w-full inline-flex items-center p-4 gap-4
|
|
20
|
+
<div class="hover:bg-gray-50 w-full inline-flex items-center p-4 gap-4 first-of-type:!border-t-0
|
|
21
|
+
first-of-type:rounded-t-md last-of-type:rounded-b-md {color}">
|
|
22
22
|
<RowIcon {href} {kind} />
|
|
23
23
|
|
|
24
|
-
<a {href} class="
|
|
24
|
+
<a {href} class="min-w-0 grow hover:underline decoration-gray-400">
|
|
25
25
|
<div class="text-gray-900 flex-wrap text-left text-md font-semibold mb-1 truncate ">
|
|
26
26
|
{#if marked}
|
|
27
27
|
{@html marked}
|
|
@@ -33,15 +33,17 @@ const color = {
|
|
|
33
33
|
{path}
|
|
34
34
|
</div>
|
|
35
35
|
</a>
|
|
36
|
-
|
|
37
|
-
<
|
|
38
|
-
|
|
36
|
+
{#if $$slots.badges}
|
|
37
|
+
<div class="w-32 hidden lg:flex flex-row gap-1 items-start flex-wrap">
|
|
38
|
+
<slot name="badges" />
|
|
39
|
+
</div>
|
|
40
|
+
{/if}
|
|
39
41
|
|
|
40
42
|
<div class="flex gap-1 items-center justify-end">
|
|
41
43
|
<slot name="actions" />
|
|
42
44
|
</div>
|
|
43
45
|
{#if canFavorite}
|
|
44
|
-
<div class="
|
|
46
|
+
<div class="center-center h-full text-sm font-semibold text-gray-900">
|
|
45
47
|
<Star
|
|
46
48
|
{kind}
|
|
47
49
|
{path}
|
|
@@ -6,6 +6,7 @@ import { ScriptService } from '../../../gen';
|
|
|
6
6
|
import { userStore, workspaceStore } from '../../../stores';
|
|
7
7
|
import { capitalize, sendUserToast } from '../../../utils';
|
|
8
8
|
import { faArchive, faCalendarAlt, faCodeFork, faEdit, faEye, faFileExport, faList, faPlay, faShare } from '@fortawesome/free-solid-svg-icons';
|
|
9
|
+
import { MoreVertical } from 'lucide-svelte';
|
|
9
10
|
import { createEventDispatcher } from 'svelte';
|
|
10
11
|
import Badge from '../badge/Badge.svelte';
|
|
11
12
|
import Button from '../button/Button.svelte';
|
|
@@ -39,17 +40,15 @@ let scheduleEditor;
|
|
|
39
40
|
on:change
|
|
40
41
|
>
|
|
41
42
|
<svelte:fragment slot="badges">
|
|
42
|
-
<
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
{
|
|
48
|
-
|
|
49
|
-
{/if}
|
|
43
|
+
<SharedBadge {canWrite} extraPerms={extra_perms} />
|
|
44
|
+
{#if lock_error_logs}
|
|
45
|
+
<Badge color="red" baseClass="border border-red-200">Deployment failed</Badge>
|
|
46
|
+
{/if}
|
|
47
|
+
{#if kind !== 'script'}
|
|
48
|
+
<Badge color="gray" baseClass="border">{capitalize(kind)}</Badge>
|
|
49
|
+
{/if}
|
|
50
50
|
|
|
51
|
-
|
|
52
|
-
</span>
|
|
51
|
+
<LanguageBadge {language} />
|
|
53
52
|
</svelte:fragment>
|
|
54
53
|
|
|
55
54
|
<svelte:fragment slot="actions">
|
|
@@ -104,6 +103,7 @@ let scheduleEditor;
|
|
|
104
103
|
</span>
|
|
105
104
|
<Dropdown
|
|
106
105
|
placement="bottom-end"
|
|
106
|
+
btnClasses="!text-gray-700 !bg-transparent hover:!bg-gray-400/20 !p-[6px]"
|
|
107
107
|
dropdownItems={[
|
|
108
108
|
{
|
|
109
109
|
displayName: 'View script',
|
|
@@ -129,10 +129,10 @@ let scheduleEditor;
|
|
|
129
129
|
href: `/scripts/add?template=${path}`
|
|
130
130
|
},
|
|
131
131
|
{
|
|
132
|
-
displayName: 'Move',
|
|
132
|
+
displayName: 'Move/Rename',
|
|
133
133
|
icon: faFileExport,
|
|
134
134
|
action: () => {
|
|
135
|
-
moveDrawer.openDrawer(path, 'script')
|
|
135
|
+
moveDrawer.openDrawer(path, summary, 'script')
|
|
136
136
|
},
|
|
137
137
|
disabled: !canWrite
|
|
138
138
|
},
|
|
@@ -165,6 +165,8 @@ let scheduleEditor;
|
|
|
165
165
|
disabled: !canWrite
|
|
166
166
|
}
|
|
167
167
|
]}
|
|
168
|
-
|
|
168
|
+
>
|
|
169
|
+
<MoreVertical size={20} />
|
|
170
|
+
</Dropdown>
|
|
169
171
|
</svelte:fragment>
|
|
170
172
|
</Row>
|
|
@@ -24,7 +24,7 @@ function updateSelected() {
|
|
|
24
24
|
|
|
25
25
|
<div
|
|
26
26
|
class={classNames(
|
|
27
|
-
'border-b border-gray-200 flex flex-row whitespace-nowrap
|
|
27
|
+
'border-b border-gray-200 flex flex-row whitespace-nowrap scrollbar-hidden',
|
|
28
28
|
$$props.class
|
|
29
29
|
)}
|
|
30
30
|
>
|
|
@@ -4,11 +4,13 @@ import Button from '../button/Button.svelte';
|
|
|
4
4
|
export let value;
|
|
5
5
|
export let position;
|
|
6
6
|
export let light = false;
|
|
7
|
+
export let title = undefined;
|
|
7
8
|
const { select, selected } = getContext('ToggleButtonGroup');
|
|
8
9
|
</script>
|
|
9
10
|
|
|
10
11
|
<Button
|
|
11
12
|
{...$$props}
|
|
13
|
+
{title}
|
|
12
14
|
on:click={() => select(value)}
|
|
13
15
|
btnClasses={classNames(
|
|
14
16
|
'border-gray-200 focus:ring-0 w-full',
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
<script>import { goto } from '$app/navigation';
|
|
2
|
+
import { faBarsStaggered, faPlus } from '@fortawesome/free-solid-svg-icons';
|
|
3
|
+
import { Button, ButtonPopup, ButtonPopupItem } from '../common';
|
|
4
|
+
import Drawer from '../common/drawer/Drawer.svelte';
|
|
5
|
+
import DrawerContent from '../common/drawer/DrawerContent.svelte';
|
|
6
|
+
import SimpleEditor from '../SimpleEditor.svelte';
|
|
7
|
+
import { importStore } from '../apps/store';
|
|
8
|
+
import { LayoutDashboard } from 'lucide-svelte';
|
|
9
|
+
let drawer = undefined;
|
|
10
|
+
let pendingJson;
|
|
11
|
+
async function importJson() {
|
|
12
|
+
$importStore = JSON.parse(pendingJson);
|
|
13
|
+
await goto('/apps/add?nodraft=true');
|
|
14
|
+
drawer?.closeDrawer?.();
|
|
15
|
+
}
|
|
16
|
+
</script>
|
|
17
|
+
|
|
18
|
+
<!-- Buttons -->
|
|
19
|
+
<div class="flex flex-row gap-2">
|
|
20
|
+
<ButtonPopup
|
|
21
|
+
size="sm"
|
|
22
|
+
spacingSize="xl"
|
|
23
|
+
startIcon={{ icon: faPlus }}
|
|
24
|
+
href="/apps/add?nodraft=true"
|
|
25
|
+
>
|
|
26
|
+
<svelte:fragment slot="main"
|
|
27
|
+
>New App (alpha) <LayoutDashboard class="ml-1.5" size={18} />
|
|
28
|
+
</svelte:fragment>
|
|
29
|
+
<ButtonPopupItem on:click={() => drawer?.toggleDrawer?.()}>
|
|
30
|
+
Import from raw JSON
|
|
31
|
+
</ButtonPopupItem>
|
|
32
|
+
</ButtonPopup>
|
|
33
|
+
</div>
|
|
34
|
+
|
|
35
|
+
<!-- Raw JSON -->
|
|
36
|
+
<Drawer bind:this={drawer} size="800px">
|
|
37
|
+
<DrawerContent title="Import app from JSON" on:close={() => drawer?.toggleDrawer?.()}>
|
|
38
|
+
<SimpleEditor bind:code={pendingJson} lang="json" class="h-full" fixedOverflowWidgets={false} />
|
|
39
|
+
<svelte:fragment slot="actions">
|
|
40
|
+
<Button size="sm" on:click={importJson}>Import</Button>
|
|
41
|
+
</svelte:fragment>
|
|
42
|
+
</DrawerContent>
|
|
43
|
+
</Drawer>
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { SvelteComponentTyped } from "svelte";
|
|
2
|
+
declare const __propDef: {
|
|
3
|
+
props: Record<string, never>;
|
|
4
|
+
events: {
|
|
5
|
+
[evt: string]: CustomEvent<any>;
|
|
6
|
+
};
|
|
7
|
+
slots: {};
|
|
8
|
+
};
|
|
9
|
+
export type CreateActionsAppProps = typeof __propDef.props;
|
|
10
|
+
export type CreateActionsAppEvents = typeof __propDef.events;
|
|
11
|
+
export type CreateActionsAppSlots = typeof __propDef.slots;
|
|
12
|
+
export default class CreateActionsApp extends SvelteComponentTyped<CreateActionsAppProps, CreateActionsAppEvents, CreateActionsAppSlots> {
|
|
13
|
+
}
|
|
14
|
+
export {};
|
|
@@ -18,7 +18,12 @@ async function importJson() {
|
|
|
18
18
|
|
|
19
19
|
<!-- Buttons -->
|
|
20
20
|
<div class="flex flex-row gap-2">
|
|
21
|
-
<ButtonPopup
|
|
21
|
+
<ButtonPopup
|
|
22
|
+
size="sm"
|
|
23
|
+
spacingSize="xl"
|
|
24
|
+
startIcon={{ icon: faPlus }}
|
|
25
|
+
href="/flows/add?nodraft=true"
|
|
26
|
+
>
|
|
22
27
|
<svelte:fragment slot="main"
|
|
23
28
|
>New Flow <Icon data={faBarsStaggered} scale={0.8} class="ml-1.5" />
|
|
24
29
|
</svelte:fragment>
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
<script>import { dfs, flowStore } from '../flowStore';
|
|
2
|
+
import FlowCard from '../common/FlowCard.svelte';
|
|
3
|
+
import { Alert, Badge } from '../../common';
|
|
4
|
+
import SchemaForm from '../../SchemaForm.svelte';
|
|
5
|
+
import { flowStateStore } from '../flowState';
|
|
6
|
+
import { setContext } from 'svelte';
|
|
7
|
+
import { writable } from 'svelte/store';
|
|
8
|
+
import { slide } from 'svelte/transition';
|
|
9
|
+
import Toggle from '../../Toggle.svelte';
|
|
10
|
+
let hideOptional = false;
|
|
11
|
+
$: steps = dfs($flowStore.value.modules, (x) => x)
|
|
12
|
+
.map((x) => [x.value, x])
|
|
13
|
+
.filter((x) => x[0].type == 'script' || x[0].type == 'rawscript')
|
|
14
|
+
.map(([v, m]) => [
|
|
15
|
+
v.input_transforms,
|
|
16
|
+
Object.entries(v.input_transforms)
|
|
17
|
+
.filter((x) => {
|
|
18
|
+
const shouldDisplay = hideOptional
|
|
19
|
+
? $flowStateStore[m.id]?.schema.required?.includes(x[0])
|
|
20
|
+
: true;
|
|
21
|
+
return x[1].type == 'static' && shouldDisplay;
|
|
22
|
+
})
|
|
23
|
+
.map((x) => x[0]),
|
|
24
|
+
m
|
|
25
|
+
])
|
|
26
|
+
.filter(([i, f, m]) => f.length > 0);
|
|
27
|
+
setContext('PropPickerWrapper', {
|
|
28
|
+
focusProp: () => { },
|
|
29
|
+
propPickerConfig: writable(undefined),
|
|
30
|
+
clearFocus: () => { }
|
|
31
|
+
});
|
|
32
|
+
</script>
|
|
33
|
+
|
|
34
|
+
<div class="min-h-full">
|
|
35
|
+
<FlowCard title="All Static Inputs">
|
|
36
|
+
<Toggle
|
|
37
|
+
slot="header"
|
|
38
|
+
bind:checked={hideOptional}
|
|
39
|
+
options={{left: 'Hide optional inputs'}}
|
|
40
|
+
/>
|
|
41
|
+
<div class="min-h-full flex-1">
|
|
42
|
+
<Alert type="info" title="Static Inputs" class="m-4"
|
|
43
|
+
>This page centralizes the static inputs of every steps. It is akin to a file containing all
|
|
44
|
+
constants. Modifying a value here modify it in the step input directly. It is especially
|
|
45
|
+
useful when forking a flow to get an overview of all the variables to parametrize that are
|
|
46
|
+
not exposed directly as flow inputs.</Alert
|
|
47
|
+
>
|
|
48
|
+
{#if steps.length == 0}
|
|
49
|
+
<div class="mt-2" />
|
|
50
|
+
{#if $flowStore.value.modules.length == 0}
|
|
51
|
+
<Alert type="warning" title="No steps" class="m-4">
|
|
52
|
+
This flow has no steps. Add a step to see its static inputs.
|
|
53
|
+
</Alert>
|
|
54
|
+
{:else}
|
|
55
|
+
<Alert type="warning" title="No static inputs" class="m-4">
|
|
56
|
+
This flow has no steps with static inputs. Add a step with static inputs to see them
|
|
57
|
+
here.
|
|
58
|
+
</Alert>
|
|
59
|
+
{/if}
|
|
60
|
+
{/if}
|
|
61
|
+
{#each steps as [args, filter, m] (m.id)}
|
|
62
|
+
{#if filter.length > 0}
|
|
63
|
+
<div transition:slide class="relative h-full border-t p-4">
|
|
64
|
+
<h2 class="sticky w-full top-0 z-10 inline-flex items-center bg-white py-2">
|
|
65
|
+
<span class="mr-4">{m.summary || m.value['path'] || 'Inline script'}</span>
|
|
66
|
+
<Badge large color="indigo">{m.id}</Badge>
|
|
67
|
+
</h2>
|
|
68
|
+
|
|
69
|
+
<SchemaForm
|
|
70
|
+
noDynamicToggle
|
|
71
|
+
inputTransform
|
|
72
|
+
{filter}
|
|
73
|
+
class="mt-2"
|
|
74
|
+
schema={$flowStateStore[m.id]?.schema ?? {}}
|
|
75
|
+
bind:args
|
|
76
|
+
/>
|
|
77
|
+
</div>
|
|
78
|
+
{/if}
|
|
79
|
+
{/each}
|
|
80
|
+
</div>
|
|
81
|
+
</FlowCard>
|
|
82
|
+
</div>
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { SvelteComponentTyped } from "svelte";
|
|
2
|
+
declare const __propDef: {
|
|
3
|
+
props: Record<string, never>;
|
|
4
|
+
events: {
|
|
5
|
+
[evt: string]: CustomEvent<any>;
|
|
6
|
+
};
|
|
7
|
+
slots: {};
|
|
8
|
+
};
|
|
9
|
+
export type FlowConstantsProps = typeof __propDef.props;
|
|
10
|
+
export type FlowConstantsEvents = typeof __propDef.events;
|
|
11
|
+
export type FlowConstantsSlots = typeof __propDef.slots;
|
|
12
|
+
export default class FlowConstants extends SvelteComponentTyped<FlowConstantsProps, FlowConstantsEvents, FlowConstantsSlots> {
|
|
13
|
+
}
|
|
14
|
+
export {};
|