windmill-components 1.339.2 → 1.352.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/package/assets/app.css +0 -12
- package/package/ata/index.js +1 -0
- package/package/autosize.js +1 -1
- package/package/common.d.ts +6 -2
- package/package/common.js +2 -1
- package/package/components/AppConnectDrawer.svelte +1 -1
- package/package/components/AppConnectInner.svelte +9 -15
- package/package/components/ArgEnum.svelte +4 -1
- package/package/components/ArgEnum.svelte.d.ts +3 -1
- package/package/components/ArgInput.svelte +184 -141
- package/package/components/ArgInput.svelte.d.ts +7 -7
- package/package/components/ArrayTypeNarrowing.svelte +29 -27
- package/package/components/CenteredPage.svelte +2 -2
- package/package/components/DefaultTagsInner.svelte +1 -1
- package/package/components/Dev.svelte +2 -1
- package/package/components/DiffDrawer.svelte +1 -2
- package/package/components/DisplayResult.svelte +293 -233
- package/package/components/DurationMs.svelte +11 -3
- package/package/components/DurationMs.svelte.d.ts +2 -0
- package/package/components/EditableSchemaForm.svelte +447 -103
- package/package/components/EditableSchemaForm.svelte.d.ts +16 -6
- package/package/components/Editor.svelte +3 -1
- package/package/components/EditorBar.svelte +2 -2
- package/package/components/FlowBuilder.svelte +14 -6
- package/package/components/FlowGraphViewer.svelte +1 -1
- package/package/components/FlowGraphViewerStep.svelte +37 -9
- package/package/components/FlowGraphViewerStep.svelte.d.ts +2 -7
- package/package/components/FlowJobResult.svelte +1 -3
- package/package/components/FlowMetadata.svelte +1 -1
- package/package/components/FlowPreviewContent.svelte +5 -3
- package/package/components/FlowStatusViewer.svelte +4 -0
- package/package/components/FlowStatusViewer.svelte.d.ts +3 -0
- package/package/components/FlowStatusViewerInner.svelte +50 -17
- package/package/components/FlowStatusViewerInner.svelte.d.ts +3 -0
- package/package/components/FlowTimeline.svelte +13 -0
- package/package/components/FlowTimeline.svelte.d.ts +2 -0
- package/package/components/FlowViewer.svelte +0 -5
- package/package/components/FolderEditor.svelte +25 -0
- package/package/components/FolderEditor.svelte.d.ts +2 -0
- package/package/components/GroupEditor.svelte +36 -91
- package/package/components/GroupInfo.svelte +1 -1
- package/package/components/InputTransformForm.svelte +16 -1
- package/package/components/InputTransformForm.svelte.d.ts +2 -0
- package/package/components/InputTransformSchemaForm.svelte +6 -0
- package/package/components/InputTransformSchemaForm.svelte.d.ts +2 -0
- package/package/components/InstanceSettings.svelte +36 -3
- package/package/components/InstanceSettings.svelte.d.ts +2 -0
- package/package/components/JobStatus.svelte +2 -2
- package/package/components/LightweightArgInput.svelte +66 -14
- package/package/components/LightweightArgInput.svelte.d.ts +3 -2
- package/package/components/LightweightSchemaForm.svelte +24 -15
- package/package/components/ModulePreviewForm.svelte +1 -0
- package/package/components/NumberTypeNarrowing.svelte +71 -44
- package/package/components/ObjectResourceInput.svelte +2 -0
- package/package/components/ObjectResourceInput.svelte.d.ts +1 -0
- package/package/components/ObjectTypeNarrowing.svelte +0 -1
- package/package/components/ParqetCsvTableRenderer.svelte +181 -0
- package/package/components/ParqetCsvTableRenderer.svelte.d.ts +21 -0
- package/package/components/Path.svelte +2 -2
- package/package/components/PersistentScriptDrawer.svelte +6 -3
- package/package/components/Range.svelte +88 -286
- package/package/components/Range.svelte.d.ts +9 -23
- package/package/components/ResourceEditor.svelte +138 -141
- package/package/components/ResourceEditor.svelte.d.ts +9 -2
- package/package/components/ResourceEditorDrawer.svelte +45 -0
- package/package/components/ResourceEditorDrawer.svelte.d.ts +21 -0
- package/package/components/ResourcePicker.svelte +5 -2
- package/package/components/ResourceTypePicker.svelte +88 -36
- package/package/components/RunChart.svelte +55 -5
- package/package/components/RunChart.svelte.d.ts +1 -0
- package/package/components/RunForm.svelte +1 -1
- package/package/components/S3FilePicker.svelte +20 -8
- package/package/components/S3FilePicker.svelte.d.ts +2 -0
- package/package/components/ScheduleEditorInner.svelte +40 -37
- package/package/components/SchemaForm.svelte +192 -103
- package/package/components/SchemaForm.svelte.d.ts +16 -2
- package/package/components/ScriptBuilder.svelte +13 -8
- package/package/components/ScriptSchedules.svelte +11 -8
- package/package/components/ScriptSchema.svelte +3 -21
- package/package/components/ScriptVersionHistory.svelte +1 -1
- package/package/components/StringTypeNarrowing.svelte +217 -174
- package/package/components/StringTypeNarrowing.svelte.d.ts +5 -1
- package/package/components/Toggle.svelte +6 -3
- package/package/components/Toggle.svelte.d.ts +1 -0
- package/package/components/UserSettings.svelte +24 -1
- package/package/components/WorkspaceGroup.svelte +11 -13
- package/package/components/apps/components/buttons/AppButton.svelte +2 -0
- package/package/components/apps/components/buttons/AppButton.svelte.d.ts +1 -0
- package/package/components/apps/components/display/AppFlowStatusComponent.svelte +13 -70
- package/package/components/apps/components/display/AppFlowStatusComponent.svelte.d.ts +1 -9
- package/package/components/apps/components/display/AppJobIdFlowStatus.svelte +21 -8
- package/package/components/apps/components/display/AppJobIdFlowStatus.svelte.d.ts +1 -3
- package/package/components/apps/components/display/AppJobIdLogComponent.svelte +19 -7
- package/package/components/apps/components/display/AppJobIdLogComponent.svelte.d.ts +1 -3
- package/package/components/apps/components/display/AppLogsComponent.svelte +13 -70
- package/package/components/apps/components/display/AppLogsComponent.svelte.d.ts +1 -9
- package/package/components/apps/components/display/charts/AppAgCharts.svelte +25 -15
- package/package/components/apps/components/display/table/AppAggridTableActions.svelte +2 -0
- package/package/components/apps/components/display/table/SyncColumnDefs.svelte +1 -1
- package/package/components/apps/components/helpers/HiddenComponent.svelte +2 -1
- package/package/components/apps/components/helpers/RunnableComponent.svelte +18 -8
- package/package/components/apps/components/helpers/RunnableComponent.svelte.d.ts +1 -0
- package/package/components/apps/components/helpers/RunnableWrapper.svelte +2 -0
- package/package/components/apps/components/helpers/RunnableWrapper.svelte.d.ts +1 -0
- package/package/components/apps/components/helpers/eval.js +1 -36
- package/package/components/apps/components/inputs/AppFileInput.svelte +3 -1
- package/package/components/apps/components/inputs/AppFileInput.svelte.d.ts +1 -0
- package/package/components/apps/components/inputs/AppS3FileInput.svelte +3 -1
- package/package/components/apps/components/inputs/AppS3FileInput.svelte.d.ts +1 -0
- package/package/components/apps/components/layout/AppConditionalWrapper.svelte +3 -1
- package/package/components/apps/components/layout/AppConditionalWrapper.svelte.d.ts +1 -0
- package/package/components/apps/components/layout/AppStepper.svelte +5 -1
- package/package/components/apps/components/layout/AppStepper.svelte.d.ts +2 -0
- package/package/components/apps/components/layout/AppTabs.svelte +3 -1
- package/package/components/apps/components/layout/AppTabs.svelte.d.ts +1 -0
- package/package/components/apps/editor/AppEditorHeader.svelte +6 -7
- package/package/components/apps/editor/SettingsPanel.svelte +13 -3
- package/package/components/apps/editor/component/Component.svelte +8 -16
- package/package/components/apps/editor/component/components.d.ts +11 -2
- package/package/components/apps/editor/component/components.js +2 -1
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte +1 -1
- package/package/components/apps/editor/settingsPanel/ArrayStaticInputEditor.svelte +5 -34
- package/package/components/apps/editor/settingsPanel/ComponentPanel.svelte +3 -41
- package/package/components/apps/editor/settingsPanel/EventHandlerItem.svelte +33 -0
- package/package/components/apps/editor/settingsPanel/EventHandlerItem.svelte.d.ts +19 -0
- package/package/components/apps/editor/settingsPanel/EventHandlers.svelte +103 -0
- package/package/components/apps/editor/settingsPanel/EventHandlers.svelte.d.ts +18 -0
- package/package/components/apps/editor/settingsPanel/GridCondition.svelte +21 -45
- package/package/components/apps/editor/settingsPanel/GridTab.svelte +3 -23
- package/package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte +5 -1
- package/package/components/apps/editor/settingsPanel/SubTypeEditor.svelte +0 -2
- package/package/components/apps/editor/settingsPanel/SubTypeEditor.svelte.d.ts +0 -1
- package/package/components/apps/editor/settingsPanel/inputEditor/EvalV2InputEditor.svelte +7 -1
- package/package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte +7 -14
- package/package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte.d.ts +0 -1
- package/package/components/common/button/ButtonDropdown.svelte +1 -0
- package/package/components/common/drawer/Disposable.svelte +3 -2
- package/package/components/common/drawer/Disposable.svelte.d.ts +1 -0
- package/package/components/common/drawer/Drawer.svelte +12 -2
- package/package/components/common/drawer/Drawer.svelte.d.ts +1 -0
- package/package/components/common/fileDownload/FileDownload.svelte +4 -2
- package/package/components/common/fileUpload/FileUpload.svelte +4 -3
- package/package/components/common/modal/Modal.svelte +4 -1
- package/package/components/common/modal/Modal.svelte.d.ts +1 -0
- package/package/components/common/popup/Popup.svelte +1 -1
- package/package/components/common/toggleButton-v2/ToggleButtonGroup.svelte +4 -1
- package/package/components/common/toggleButton-v2/ToggleButtonGroup.svelte.d.ts +1 -0
- package/package/components/common/waitTimeWarning/WaitTimeWarning.svelte +79 -0
- package/package/components/common/waitTimeWarning/WaitTimeWarning.svelte.d.ts +18 -0
- package/package/components/flows/content/FlowEditorPanel.svelte +16 -2
- package/package/components/flows/content/FlowInput.svelte +63 -53
- package/package/components/flows/content/FlowModuleComponent.svelte +26 -3
- package/package/components/flows/content/FlowModuleScript.svelte +40 -1
- package/package/components/flows/content/FlowModuleScript.svelte.d.ts +2 -0
- package/package/components/flows/content/FlowModuleSuspend.svelte +99 -59
- package/package/components/flows/content/FlowModuleWrapper.svelte +16 -1
- package/package/components/flows/content/FlowSchedules.svelte +11 -8
- package/package/components/flows/content/ScriptEditorDrawer.svelte +3 -4
- package/package/components/flows/flowStateUtils.js +4 -1
- package/package/components/flows/map/FlowModuleSchemaItem.svelte +16 -1
- package/package/components/flows/map/FlowModuleSchemaMap.svelte +6 -1
- package/package/components/flows/types.d.ts +4 -0
- package/package/components/flows/utils.d.ts +5 -1
- package/package/components/flows/utils.js +36 -0
- package/package/components/graph/FlowGraph.svelte +5 -2
- package/package/components/graph/FlowGraph.svelte.d.ts +2 -0
- package/package/components/graph/svelvet/container/models/index.d.ts +0 -5
- package/package/components/graph/svelvet/container/models/index.js +1 -1
- package/package/components/graph/svelvet/container/views/Svelvet.svelte +2 -5
- package/package/components/graph/util.d.ts +1 -37
- package/package/components/graph/util.js +0 -34
- package/package/components/instanceSettings.js +2 -1
- package/package/components/jobs/JobPreview.svelte +1 -1
- package/package/components/multiselect/MultiSelect.svelte +4 -3
- package/package/components/multiselect/MultiSelect.svelte.d.ts +1 -0
- package/package/components/multiselect/MultiSelectWrapper.svelte +89 -0
- package/package/components/multiselect/MultiSelectWrapper.svelte.d.ts +20 -0
- package/package/components/propertyPicker/ObjectViewer.svelte +6 -2
- package/package/components/runs/JobPreview.svelte +5 -1
- package/package/components/runs/RunRow.svelte +22 -3
- package/package/components/runs/RunRow.svelte.d.ts +2 -1
- package/package/components/runs/RunsTable.svelte +22 -9
- package/package/components/runs/RunsTable.svelte.d.ts +2 -1
- package/package/components/schema/AddProperty.svelte +149 -0
- package/package/components/schema/AddProperty.svelte.d.ts +23 -0
- package/package/components/schema/AddPropertyForm.svelte +33 -0
- package/package/components/schema/AddPropertyForm.svelte.d.ts +16 -0
- package/package/components/schema/EditableSchemaDrawer.svelte +198 -0
- package/package/components/schema/EditableSchemaDrawer.svelte.d.ts +21 -0
- package/package/components/schema/EditableSchemaWrapper.svelte +31 -0
- package/package/components/schema/EditableSchemaWrapper.svelte.d.ts +22 -0
- package/package/components/schema/FlowPropertyEditor.svelte +393 -0
- package/package/components/schema/FlowPropertyEditor.svelte.d.ts +47 -0
- package/package/components/schema/PropertyEditor.svelte +185 -0
- package/package/components/schema/PropertyEditor.svelte.d.ts +46 -0
- package/package/components/schema/SchemaFormDND.svelte +75 -0
- package/package/components/schema/SchemaFormDND.svelte.d.ts +28 -0
- package/package/components/table/AutoDataTable.svelte +90 -104
- package/package/components/table/Cell.svelte +4 -1
- package/package/components/table/Cell.svelte.d.ts +1 -0
- package/package/components/table/DownloadCsv.svelte +30 -0
- package/package/components/table/DownloadCsv.svelte.d.ts +17 -0
- package/package/components/table/tableUtils.d.ts +8 -0
- package/package/components/table/tableUtils.js +37 -0
- package/package/consts.js +3 -1
- package/package/deno_fetch.d.ts.txt +6 -0
- package/package/gen/core/OpenAPI.js +1 -1
- package/package/gen/schemas.gen.d.ts +76 -0
- package/package/gen/schemas.gen.js +76 -0
- package/package/gen/services.gen.d.ts +100 -5
- package/package/gen/services.gen.js +216 -16
- package/package/gen/types.gen.d.ts +378 -5
- package/package/inferArgSig.d.ts +10 -0
- package/package/inferArgSig.js +59 -2
- package/package/scripts.d.ts +2 -0
- package/package/scripts.js +6 -3
- package/package/utils.d.ts +4 -3
- package/package/utils.js +9 -4
- package/package/workspace_settings.d.ts +15 -0
- package/package/workspace_settings.js +81 -0
- package/package.json +16 -7
- package/package/components/ParqetTableRenderer.svelte +0 -117
- package/package/components/ParqetTableRenderer.svelte.d.ts +0 -18
- package/package/components/PropertyRow.svelte +0 -88
- package/package/components/PropertyRow.svelte.d.ts +0 -23
- package/package/components/SchemaEditor.svelte +0 -346
- package/package/components/SchemaEditor.svelte.d.ts +0 -25
- package/package/components/SchemaModal.svelte +0 -443
- package/package/components/SchemaModal.svelte.d.ts +0 -33
- package/package/components/apps/editor/settingsPanel/Recompute.svelte +0 -55
- package/package/components/apps/editor/settingsPanel/Recompute.svelte.d.ts +0 -20
|
@@ -1,443 +0,0 @@
|
|
|
1
|
-
<script context="module">import { modalToSchema } from '../common';
|
|
2
|
-
import Tab from './common/tabs/Tab.svelte';
|
|
3
|
-
import TabContent from './common/tabs/TabContent.svelte';
|
|
4
|
-
import Tabs from './common/tabs/Tabs.svelte';
|
|
5
|
-
import SchemaEditor from './SchemaEditor.svelte';
|
|
6
|
-
export const ARG_TYPES = [
|
|
7
|
-
'integer',
|
|
8
|
-
'number',
|
|
9
|
-
'string',
|
|
10
|
-
'boolean',
|
|
11
|
-
'object',
|
|
12
|
-
'array',
|
|
13
|
-
'S3'
|
|
14
|
-
];
|
|
15
|
-
const argTypesLabels = {
|
|
16
|
-
integer: 'Integer',
|
|
17
|
-
number: 'Number',
|
|
18
|
-
string: 'String',
|
|
19
|
-
boolean: 'Boolean',
|
|
20
|
-
object: 'Object',
|
|
21
|
-
array: 'Array',
|
|
22
|
-
S3: 'S3 Object'
|
|
23
|
-
};
|
|
24
|
-
export function schemaToModal(schema, name, required) {
|
|
25
|
-
return {
|
|
26
|
-
name,
|
|
27
|
-
selectedType: schema.type,
|
|
28
|
-
description: schema.description ?? '',
|
|
29
|
-
pattern: schema.pattern,
|
|
30
|
-
default: schema.default,
|
|
31
|
-
contentEncoding: schema.contentEncoding,
|
|
32
|
-
format: schema.format,
|
|
33
|
-
enum_: schema.enum,
|
|
34
|
-
min: schema.min,
|
|
35
|
-
max: schema.max,
|
|
36
|
-
currency: schema.currency,
|
|
37
|
-
currencyLocale: schema.currencyLocale,
|
|
38
|
-
multiselect: schema.multiselect,
|
|
39
|
-
items: schema.items?.type
|
|
40
|
-
? { type: schema.items.type, enum: schema.items.enum }
|
|
41
|
-
: undefined,
|
|
42
|
-
required,
|
|
43
|
-
schema: schema.type == 'object'
|
|
44
|
-
? {
|
|
45
|
-
$schema: undefined,
|
|
46
|
-
type: schema.type,
|
|
47
|
-
properties: schema.properties ?? {},
|
|
48
|
-
required: schema.required ?? []
|
|
49
|
-
}
|
|
50
|
-
: undefined,
|
|
51
|
-
showExpr: schema.showExpr,
|
|
52
|
-
password: schema.password,
|
|
53
|
-
nullable: schema.nullable,
|
|
54
|
-
dateFormat: schema.format,
|
|
55
|
-
title: schema.title,
|
|
56
|
-
placeholder: schema.placeholder
|
|
57
|
-
};
|
|
58
|
-
}
|
|
59
|
-
export const DEFAULT_PROPERTY = {
|
|
60
|
-
selectedType: 'string',
|
|
61
|
-
description: '',
|
|
62
|
-
name: '',
|
|
63
|
-
required: false
|
|
64
|
-
};
|
|
65
|
-
</script>
|
|
66
|
-
|
|
67
|
-
<script>import { createEventDispatcher } from 'svelte';
|
|
68
|
-
import ArgInput from './ArgInput.svelte';
|
|
69
|
-
import StringTypeNarrowing from './StringTypeNarrowing.svelte';
|
|
70
|
-
import Required from './Required.svelte';
|
|
71
|
-
import ObjectTypeNarrowing from './ObjectTypeNarrowing.svelte';
|
|
72
|
-
import { Alert, Button } from './common';
|
|
73
|
-
import Toggle from './Toggle.svelte';
|
|
74
|
-
import DrawerContent from './common/drawer/DrawerContent.svelte';
|
|
75
|
-
import Drawer from './common/drawer/Drawer.svelte';
|
|
76
|
-
import ArrayTypeNarrowing from './ArrayTypeNarrowing.svelte';
|
|
77
|
-
import LightweightSchemaForm from './LightweightSchemaForm.svelte';
|
|
78
|
-
import NumberTypeNarrowing from './NumberTypeNarrowing.svelte';
|
|
79
|
-
import SimpleEditor from './SimpleEditor.svelte';
|
|
80
|
-
import Label from './Label.svelte';
|
|
81
|
-
import { shouldDisplayPlaceholder } from '../utils';
|
|
82
|
-
import ItemPicker from './ItemPicker.svelte';
|
|
83
|
-
import { Plus } from 'lucide-svelte';
|
|
84
|
-
import { VariableService } from '../gen';
|
|
85
|
-
import { workspaceStore } from '../stores';
|
|
86
|
-
export let error = '';
|
|
87
|
-
export let editing = false;
|
|
88
|
-
export let oldArgName = undefined;
|
|
89
|
-
export let isFlowInput = false;
|
|
90
|
-
export let propsNames = [];
|
|
91
|
-
export let variableEditor = undefined;
|
|
92
|
-
let itemPicker = undefined;
|
|
93
|
-
const dispatch = createEventDispatcher();
|
|
94
|
-
let drawer;
|
|
95
|
-
let property = DEFAULT_PROPERTY;
|
|
96
|
-
function handleKeyUp(event) {
|
|
97
|
-
const key = event.key;
|
|
98
|
-
if (key === 'Enter') {
|
|
99
|
-
dispatch('save', property);
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
export function openDrawer(nproperty) {
|
|
103
|
-
drawer.openDrawer();
|
|
104
|
-
error = '';
|
|
105
|
-
property = nproperty;
|
|
106
|
-
}
|
|
107
|
-
export function closeDrawer() {
|
|
108
|
-
drawer.closeDrawer();
|
|
109
|
-
}
|
|
110
|
-
function clearModal() {
|
|
111
|
-
error = '';
|
|
112
|
-
editing = false;
|
|
113
|
-
oldArgName = undefined;
|
|
114
|
-
property.name = DEFAULT_PROPERTY.name;
|
|
115
|
-
property.default = DEFAULT_PROPERTY.default;
|
|
116
|
-
property.description = DEFAULT_PROPERTY.description;
|
|
117
|
-
property.required = DEFAULT_PROPERTY.required;
|
|
118
|
-
property.selectedType = DEFAULT_PROPERTY.selectedType;
|
|
119
|
-
property.format = undefined;
|
|
120
|
-
property.schema = undefined;
|
|
121
|
-
property.min = undefined;
|
|
122
|
-
property.max = undefined;
|
|
123
|
-
property.currency = undefined;
|
|
124
|
-
property.currencyLocale = undefined;
|
|
125
|
-
property.multiselect = undefined;
|
|
126
|
-
property.items = undefined;
|
|
127
|
-
property.showExpr = undefined;
|
|
128
|
-
property.password = undefined;
|
|
129
|
-
property.nullable = false;
|
|
130
|
-
property.dateFormat = undefined;
|
|
131
|
-
property.title = undefined;
|
|
132
|
-
property.placeholder = undefined;
|
|
133
|
-
drawer.closeDrawer();
|
|
134
|
-
}
|
|
135
|
-
$: if (property.name == '') {
|
|
136
|
-
error = 'Name is required';
|
|
137
|
-
}
|
|
138
|
-
else {
|
|
139
|
-
error = '';
|
|
140
|
-
}
|
|
141
|
-
let title = '';
|
|
142
|
-
$: title = editing ? `Edit ${oldArgName} argument` : 'Add an argument';
|
|
143
|
-
function getResourceTypesFromFormat(format) {
|
|
144
|
-
if (format?.startsWith('resource-')) {
|
|
145
|
-
return [format.split('-')[1]];
|
|
146
|
-
}
|
|
147
|
-
return [];
|
|
148
|
-
}
|
|
149
|
-
function shouldDisplayPlaceholderForProperty(property) {
|
|
150
|
-
return shouldDisplayPlaceholder(property.selectedType, property.format, property.enum_, property.contentEncoding, property.pattern);
|
|
151
|
-
}
|
|
152
|
-
</script>
|
|
153
|
-
|
|
154
|
-
<Drawer bind:this={drawer} placement="right">
|
|
155
|
-
<DrawerContent on:close={clearModal} {title}>
|
|
156
|
-
<div class="flex flex-col gap-6">
|
|
157
|
-
<div>
|
|
158
|
-
<label class="block">
|
|
159
|
-
<div class="mb-1 font-semibold text-secondary">
|
|
160
|
-
Name
|
|
161
|
-
<Required required={true} />
|
|
162
|
-
</div>
|
|
163
|
-
<!-- svelte-ignore a11y-autofocus -->
|
|
164
|
-
<input
|
|
165
|
-
id="schema-modal-name"
|
|
166
|
-
autofocus
|
|
167
|
-
autocomplete="off"
|
|
168
|
-
type="text"
|
|
169
|
-
placeholder="Enter a name"
|
|
170
|
-
bind:value={property.name}
|
|
171
|
-
on:keyup={handleKeyUp}
|
|
172
|
-
class={error === ''
|
|
173
|
-
? ''
|
|
174
|
-
: 'border border-red-700 bg-red-100 border-opacity-30 focus:border-red-700 focus:border-opacity-30 focus-visible:ring-red-700 focus-visible:ring-opacity-25 focus-visible:border-red-700'}
|
|
175
|
-
/>
|
|
176
|
-
</label>
|
|
177
|
-
<div class="text-red-600 text-2xs">{error}</div>
|
|
178
|
-
</div>
|
|
179
|
-
|
|
180
|
-
<label class="block">
|
|
181
|
-
<div class="mb-1 font-semibold text-secondary">
|
|
182
|
-
Description
|
|
183
|
-
<Required required={false} />
|
|
184
|
-
</div>
|
|
185
|
-
<textarea placeholder="Enter a description" rows="3" bind:value={property.description} />
|
|
186
|
-
</label>
|
|
187
|
-
|
|
188
|
-
<label class="block">
|
|
189
|
-
<div class="mb-1 font-semibold text-secondary"> Custom Title </div>
|
|
190
|
-
<textarea placeholder="Enter a custom title" rows="1" bind:value={property.title} />
|
|
191
|
-
</label>
|
|
192
|
-
<div>
|
|
193
|
-
<div class="mb-1 font-semibold text-secondary">Type<Required required={true} /></div>
|
|
194
|
-
<div class="grid sm:grid-cols-3 md:grid-cols-4 gap-x-2 gap-y-1 items-center mb-2 w-full">
|
|
195
|
-
{#each ARG_TYPES as argType}
|
|
196
|
-
{@const isSelected =
|
|
197
|
-
(argType === 'S3' && property.format === 'resource-s3_object') ||
|
|
198
|
-
(argType === property.selectedType && property.format !== 'resource-s3_object')}
|
|
199
|
-
<Button
|
|
200
|
-
size="sm"
|
|
201
|
-
variant="border"
|
|
202
|
-
color={isSelected ? 'blue' : 'light'}
|
|
203
|
-
btnClasses={isSelected ? '!border-2' : 'm-[1px]'}
|
|
204
|
-
on:click={() => {
|
|
205
|
-
const isS3 = argType == 'S3'
|
|
206
|
-
|
|
207
|
-
if (isS3) {
|
|
208
|
-
property.selectedType = 'object'
|
|
209
|
-
property.format = 'resource-s3_object'
|
|
210
|
-
} else {
|
|
211
|
-
property.format = undefined
|
|
212
|
-
property.selectedType = argType
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
property.contentEncoding = undefined
|
|
216
|
-
property.enum_ = undefined
|
|
217
|
-
property.pattern = undefined
|
|
218
|
-
property.default = undefined
|
|
219
|
-
property.min = undefined
|
|
220
|
-
property.max = undefined
|
|
221
|
-
property.currency = undefined
|
|
222
|
-
property.currencyLocale = undefined
|
|
223
|
-
property.multiselect = undefined
|
|
224
|
-
property.password = undefined
|
|
225
|
-
property.dateFormat = undefined
|
|
226
|
-
if (argType == 'array') {
|
|
227
|
-
property.items = { type: 'string' }
|
|
228
|
-
} else {
|
|
229
|
-
property.items = undefined
|
|
230
|
-
}
|
|
231
|
-
property.showExpr = undefined
|
|
232
|
-
}}
|
|
233
|
-
id={`schema-modal-type-${argType}`}
|
|
234
|
-
>
|
|
235
|
-
{argTypesLabels[argType]}
|
|
236
|
-
</Button>
|
|
237
|
-
{/each}
|
|
238
|
-
<Button
|
|
239
|
-
size="sm"
|
|
240
|
-
variant="border"
|
|
241
|
-
color={!property.selectedType ? 'blue' : 'light'}
|
|
242
|
-
btnClasses={!property.selectedType ? '!border-2' : 'm-[1px]'}
|
|
243
|
-
on:click={() => {
|
|
244
|
-
property.selectedType = undefined
|
|
245
|
-
}}
|
|
246
|
-
>
|
|
247
|
-
any
|
|
248
|
-
</Button>
|
|
249
|
-
</div>
|
|
250
|
-
</div>
|
|
251
|
-
<div>
|
|
252
|
-
<div class="flex flex-row gap-x-4 items-center">
|
|
253
|
-
<ArgInput
|
|
254
|
-
{itemPicker}
|
|
255
|
-
resourceTypes={getResourceTypesFromFormat(property.format)}
|
|
256
|
-
label="Default"
|
|
257
|
-
bind:value={property.default}
|
|
258
|
-
type={property.password ? 'string' : property.selectedType}
|
|
259
|
-
pattern={property.pattern}
|
|
260
|
-
customErrorMessage={property.customErrorMessage}
|
|
261
|
-
itemsType={property.items}
|
|
262
|
-
contentEncoding={property.contentEncoding}
|
|
263
|
-
format={property.format}
|
|
264
|
-
extra={property.password ? {} : property}
|
|
265
|
-
nullable={property.nullable}
|
|
266
|
-
title={property.title}
|
|
267
|
-
placeholder={property.placeholder}
|
|
268
|
-
{variableEditor}
|
|
269
|
-
/>
|
|
270
|
-
<div>
|
|
271
|
-
<Toggle
|
|
272
|
-
options={{ right: 'Required' }}
|
|
273
|
-
size="xs"
|
|
274
|
-
bind:checked={property.required}
|
|
275
|
-
on:change={(event) => {
|
|
276
|
-
if (event?.detail) {
|
|
277
|
-
property.nullable = false
|
|
278
|
-
}
|
|
279
|
-
}}
|
|
280
|
-
/>
|
|
281
|
-
{#if property?.selectedType === 'string'}
|
|
282
|
-
<Toggle
|
|
283
|
-
options={{
|
|
284
|
-
right: 'Nullable',
|
|
285
|
-
rightTooltip:
|
|
286
|
-
'If enabled, the default value will be null and not an empty string.'
|
|
287
|
-
}}
|
|
288
|
-
size="xs"
|
|
289
|
-
bind:checked={property.nullable}
|
|
290
|
-
disabled={property?.required}
|
|
291
|
-
/>
|
|
292
|
-
{/if}
|
|
293
|
-
</div>
|
|
294
|
-
</div>
|
|
295
|
-
{#if isFlowInput}
|
|
296
|
-
<Alert type="info" title="Default not used by webhooks" size="xs" collapsible>
|
|
297
|
-
If this flow is triggered by a webhook, the default value will not replace a missing
|
|
298
|
-
value from the payload. It will only be used as the default value in the autogenerated
|
|
299
|
-
UI. We recommend using default values in the signature of the steps where this value is
|
|
300
|
-
used (using `x=default`) to have the desired behavior.
|
|
301
|
-
</Alert>
|
|
302
|
-
{/if}
|
|
303
|
-
</div>
|
|
304
|
-
<div>
|
|
305
|
-
<div class="font-semibold text-secondary mb-1">Advanced</div>
|
|
306
|
-
{#if property.selectedType == 'string'}
|
|
307
|
-
<StringTypeNarrowing
|
|
308
|
-
bind:customErrorMessage={property.customErrorMessage}
|
|
309
|
-
bind:format={property.format}
|
|
310
|
-
bind:pattern={property.pattern}
|
|
311
|
-
bind:enum_={property.enum_}
|
|
312
|
-
bind:contentEncoding={property.contentEncoding}
|
|
313
|
-
bind:password={property.password}
|
|
314
|
-
bind:dateFormat={property.dateFormat}
|
|
315
|
-
noExtra
|
|
316
|
-
/>
|
|
317
|
-
{:else if property.selectedType == 'array'}
|
|
318
|
-
<ArrayTypeNarrowing bind:itemsType={property.items} />
|
|
319
|
-
{:else if property.selectedType == 'number' || property.selectedType == 'integer'}
|
|
320
|
-
<NumberTypeNarrowing
|
|
321
|
-
bind:min={property.min}
|
|
322
|
-
bind:max={property.max}
|
|
323
|
-
bind:currency={property.currency}
|
|
324
|
-
bind:currencyLocale={property.currencyLocale}
|
|
325
|
-
/>
|
|
326
|
-
{:else if property.selectedType == 'object' && property.format !== 'resource-s3'}
|
|
327
|
-
<Tabs selected="resource">
|
|
328
|
-
<Tab value="resource">Resource</Tab>
|
|
329
|
-
<Tab value="custom-object">Custom Object</Tab>
|
|
330
|
-
<svelte:fragment slot="content">
|
|
331
|
-
<div class="pt-2">
|
|
332
|
-
<TabContent value="custom-object">
|
|
333
|
-
<SchemaEditor bind:schema={property.schema} />
|
|
334
|
-
</TabContent>
|
|
335
|
-
|
|
336
|
-
<TabContent value="resource">
|
|
337
|
-
<h3 class="mb-2 font-bold mt-4">Resource type</h3>
|
|
338
|
-
<ObjectTypeNarrowing bind:format={property.format} />
|
|
339
|
-
</TabContent>
|
|
340
|
-
</div>
|
|
341
|
-
</svelte:fragment>
|
|
342
|
-
</Tabs>
|
|
343
|
-
{/if}
|
|
344
|
-
{#if property && shouldDisplayPlaceholderForProperty(property)}
|
|
345
|
-
<Label label="Placeholder" class="pt-2">
|
|
346
|
-
<textarea
|
|
347
|
-
placeholder="Enter a placeholder"
|
|
348
|
-
rows="1"
|
|
349
|
-
bind:value={property.placeholder}
|
|
350
|
-
/>
|
|
351
|
-
</Label>
|
|
352
|
-
{/if}
|
|
353
|
-
|
|
354
|
-
<div class="pt-2">
|
|
355
|
-
<Toggle
|
|
356
|
-
options={{ right: 'Show this field only when conditions are met' }}
|
|
357
|
-
class="!justify-start"
|
|
358
|
-
checked={Boolean(property.showExpr)}
|
|
359
|
-
on:change={() => {
|
|
360
|
-
property.showExpr = property.showExpr ? undefined : 'true //fields.foo == 42'
|
|
361
|
-
}}
|
|
362
|
-
/>
|
|
363
|
-
{#if property.showExpr != undefined}
|
|
364
|
-
<div class="border">
|
|
365
|
-
<SimpleEditor
|
|
366
|
-
extraLib={`declare const fields: Record<${propsNames
|
|
367
|
-
.filter((x) => x != property.name)
|
|
368
|
-
.map((x) => `"${x}"`)
|
|
369
|
-
.join(' | ')}, any>;\n`}
|
|
370
|
-
lang="javascript"
|
|
371
|
-
bind:code={property.showExpr}
|
|
372
|
-
shouldBindKey={false}
|
|
373
|
-
fixedOverflowWidgets={false}
|
|
374
|
-
autoHeight
|
|
375
|
-
/>
|
|
376
|
-
</div>
|
|
377
|
-
<div class="flex flex-row-reverse text-2xs text-tertiary"
|
|
378
|
-
><div
|
|
379
|
-
>Other fields are available under <code>fields</code> (e.g:
|
|
380
|
-
<code>fields.foo == 42</code>)</div
|
|
381
|
-
></div
|
|
382
|
-
>
|
|
383
|
-
{/if}
|
|
384
|
-
</div>
|
|
385
|
-
</div>
|
|
386
|
-
</div>
|
|
387
|
-
<div class="font-semibold text-secondary mb-1 pt-4">Preview</div>
|
|
388
|
-
<LightweightSchemaForm
|
|
389
|
-
displayType={false}
|
|
390
|
-
schema={{
|
|
391
|
-
properties: {
|
|
392
|
-
[property.name]: modalToSchema(property)
|
|
393
|
-
},
|
|
394
|
-
required: property.required ? [property.name] : []
|
|
395
|
-
}}
|
|
396
|
-
/>
|
|
397
|
-
<svelte:fragment slot="actions">
|
|
398
|
-
<div class="h-10" />
|
|
399
|
-
<Button
|
|
400
|
-
color="dark"
|
|
401
|
-
disabled={!property.name || error != ''}
|
|
402
|
-
on:click={() => {
|
|
403
|
-
dispatch('save', property)
|
|
404
|
-
}}
|
|
405
|
-
id="schema-modal-save"
|
|
406
|
-
>
|
|
407
|
-
Save
|
|
408
|
-
</Button>
|
|
409
|
-
</svelte:fragment>
|
|
410
|
-
</DrawerContent>
|
|
411
|
-
</Drawer>
|
|
412
|
-
|
|
413
|
-
{#if isFlowInput}
|
|
414
|
-
<ItemPicker
|
|
415
|
-
bind:this={itemPicker}
|
|
416
|
-
pickCallback={(path, _) => {
|
|
417
|
-
if (property) {
|
|
418
|
-
property.default = '$var:' + path
|
|
419
|
-
}
|
|
420
|
-
}}
|
|
421
|
-
itemName="Variable"
|
|
422
|
-
tooltip="Variables are dynamic values that have a key associated to them and can be retrieved during the execution of a Script or Flow."
|
|
423
|
-
documentationLink="https://www.windmill.dev/docs/core_concepts/variables_and_secrets"
|
|
424
|
-
extraField="path"
|
|
425
|
-
loadItems={async () =>
|
|
426
|
-
(await VariableService.listVariable({ workspace: $workspaceStore ?? '' })).map((x) => ({
|
|
427
|
-
name: x.path,
|
|
428
|
-
...x
|
|
429
|
-
}))}
|
|
430
|
-
>
|
|
431
|
-
<div slot="submission">
|
|
432
|
-
<Button
|
|
433
|
-
variant="border"
|
|
434
|
-
color="blue"
|
|
435
|
-
size="sm"
|
|
436
|
-
startIcon={{ icon: Plus }}
|
|
437
|
-
on:click={() => variableEditor?.initNew?.()}
|
|
438
|
-
>
|
|
439
|
-
New Variable
|
|
440
|
-
</Button>
|
|
441
|
-
</div>
|
|
442
|
-
</ItemPicker>
|
|
443
|
-
{/if}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { SvelteComponent } from "svelte";
|
|
2
|
-
import { type SchemaProperty, type ModalSchemaProperty } from '../common';
|
|
3
|
-
export declare const ARG_TYPES: readonly ["integer", "number", "string", "boolean", "object", "array", "S3"];
|
|
4
|
-
export type ArgType = (typeof ARG_TYPES)[number];
|
|
5
|
-
export declare function schemaToModal(schema: SchemaProperty, name: string, required: boolean): ModalSchemaProperty;
|
|
6
|
-
export declare const DEFAULT_PROPERTY: ModalSchemaProperty;
|
|
7
|
-
import type VariableEditor from './VariableEditor.svelte';
|
|
8
|
-
declare const __propDef: {
|
|
9
|
-
props: {
|
|
10
|
-
error?: string | undefined;
|
|
11
|
-
editing?: boolean | undefined;
|
|
12
|
-
oldArgName?: string | undefined;
|
|
13
|
-
isFlowInput?: boolean | undefined;
|
|
14
|
-
propsNames?: string[] | undefined;
|
|
15
|
-
variableEditor?: VariableEditor | undefined;
|
|
16
|
-
openDrawer?: ((nproperty: ModalSchemaProperty) => void) | undefined;
|
|
17
|
-
closeDrawer?: (() => void) | undefined;
|
|
18
|
-
};
|
|
19
|
-
events: {
|
|
20
|
-
save: CustomEvent<any>;
|
|
21
|
-
} & {
|
|
22
|
-
[evt: string]: CustomEvent<any>;
|
|
23
|
-
};
|
|
24
|
-
slots: {};
|
|
25
|
-
};
|
|
26
|
-
export type SchemaModalProps = typeof __propDef.props;
|
|
27
|
-
export type SchemaModalEvents = typeof __propDef.events;
|
|
28
|
-
export type SchemaModalSlots = typeof __propDef.slots;
|
|
29
|
-
export default class SchemaModal extends SvelteComponent<SchemaModalProps, SchemaModalEvents, SchemaModalSlots> {
|
|
30
|
-
get openDrawer(): (nproperty: ModalSchemaProperty) => void;
|
|
31
|
-
get closeDrawer(): () => void;
|
|
32
|
-
}
|
|
33
|
-
export {};
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
<script>import Badge from '../../../common/badge/Badge.svelte';
|
|
2
|
-
import { getContext } from 'svelte';
|
|
3
|
-
import PanelSection from './common/PanelSection.svelte';
|
|
4
|
-
import Toggle from '../../../Toggle.svelte';
|
|
5
|
-
export let recomputeIds = undefined;
|
|
6
|
-
export let ownId;
|
|
7
|
-
export let title = 'Trigger runnables on success';
|
|
8
|
-
export let tooltip = 'Select components to recompute after this runnable has successfully run';
|
|
9
|
-
export let documentationLink = 'https://www.windmill.dev/docs/apps/app-runnable-panel#trigger-runnables-on-success';
|
|
10
|
-
const { runnableComponents } = getContext('AppViewerContext');
|
|
11
|
-
function onChange(checked, id) {
|
|
12
|
-
if (checked) {
|
|
13
|
-
recomputeIds = [...(recomputeIds ?? []), id];
|
|
14
|
-
}
|
|
15
|
-
else {
|
|
16
|
-
recomputeIds = recomputeIds?.filter((x) => x !== id);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
</script>
|
|
20
|
-
|
|
21
|
-
<PanelSection {title} {tooltip} {documentationLink}>
|
|
22
|
-
{#if Object.keys($runnableComponents ?? {}).filter((id) => id !== ownId).length > 0}
|
|
23
|
-
<table class="divide-y border w-full">
|
|
24
|
-
<thead class="bg-surface-secondary">
|
|
25
|
-
<tr>
|
|
26
|
-
<th scope="col" class="px-2 py-2 text-left text-xs font-medium text-tertiary">
|
|
27
|
-
Component
|
|
28
|
-
</th>
|
|
29
|
-
<th scope="col" class="px-4 py-2 text-left text-xs font-medium text-tertiary">
|
|
30
|
-
Recompute
|
|
31
|
-
</th>
|
|
32
|
-
</tr>
|
|
33
|
-
</thead>
|
|
34
|
-
<tbody>
|
|
35
|
-
{#each Object.keys($runnableComponents ?? {}).filter((id) => id !== ownId) as id}
|
|
36
|
-
<tr>
|
|
37
|
-
<td class="whitespace-nowrap px-2 text-xs">
|
|
38
|
-
<Badge color="indigo">{id}</Badge>
|
|
39
|
-
</td>
|
|
40
|
-
<td class="relative whitespace-nowrap px-4">
|
|
41
|
-
<Toggle
|
|
42
|
-
class="windmillapp my-1"
|
|
43
|
-
size="xs"
|
|
44
|
-
on:change={(e) => onChange(e.detail, id)}
|
|
45
|
-
checked={recomputeIds?.includes(id)}
|
|
46
|
-
/>
|
|
47
|
-
</td>
|
|
48
|
-
</tr>
|
|
49
|
-
{/each}
|
|
50
|
-
</tbody>
|
|
51
|
-
</table>
|
|
52
|
-
{:else}
|
|
53
|
-
<div class="text-xs">No components to recompute. Create one and select it here.</div>
|
|
54
|
-
{/if}
|
|
55
|
-
</PanelSection>
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { SvelteComponent } from "svelte";
|
|
2
|
-
declare const __propDef: {
|
|
3
|
-
props: {
|
|
4
|
-
recomputeIds?: string[] | undefined;
|
|
5
|
-
ownId: string;
|
|
6
|
-
title?: string | undefined;
|
|
7
|
-
tooltip?: string | undefined;
|
|
8
|
-
documentationLink?: string | undefined;
|
|
9
|
-
};
|
|
10
|
-
events: {
|
|
11
|
-
[evt: string]: CustomEvent<any>;
|
|
12
|
-
};
|
|
13
|
-
slots: {};
|
|
14
|
-
};
|
|
15
|
-
export type RecomputeProps = typeof __propDef.props;
|
|
16
|
-
export type RecomputeEvents = typeof __propDef.events;
|
|
17
|
-
export type RecomputeSlots = typeof __propDef.slots;
|
|
18
|
-
export default class Recompute extends SvelteComponent<RecomputeProps, RecomputeEvents, RecomputeSlots> {
|
|
19
|
-
}
|
|
20
|
-
export {};
|