windmill-components 1.444.1 → 1.447.4

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.
Files changed (229) hide show
  1. package/package/autosize.js +1 -1
  2. package/package/components/AppConnectInner.svelte +2 -1
  3. package/package/components/ArgInput.svelte +37 -24
  4. package/package/components/CapturesInputs.svelte +16 -0
  5. package/package/components/CapturesInputs.svelte.d.ts +21 -0
  6. package/package/components/Dev.svelte +7 -1
  7. package/package/components/EditableSchemaForm.svelte +369 -290
  8. package/package/components/EditableSchemaForm.svelte.d.ts +12 -2
  9. package/package/components/Editor.svelte +5 -7
  10. package/package/components/FirstStepInputs.svelte +111 -0
  11. package/package/components/FirstStepInputs.svelte.d.ts +17 -0
  12. package/package/components/FlowBuilder.svelte +28 -7
  13. package/package/components/FlowPreviewContent.svelte +72 -1
  14. package/package/components/FlowPreviewContent.svelte.d.ts +1 -0
  15. package/package/components/GfmMarkdown.svelte +93 -2
  16. package/package/components/HighlightCode.svelte +2 -0
  17. package/package/components/HistoricInputs.svelte +193 -0
  18. package/package/components/HistoricInputs.svelte.d.ts +20 -0
  19. package/package/components/InfiniteList.svelte +161 -0
  20. package/package/components/InfiniteList.svelte.d.ts +40 -0
  21. package/package/components/LightweightArgInput.svelte +19 -15
  22. package/package/components/MoveDrawer.svelte +2 -1
  23. package/package/components/Path.svelte +7 -1
  24. package/package/components/Path.svelte.d.ts +1 -1
  25. package/package/components/ResourcePicker.svelte +2 -1
  26. package/package/components/ResourcePicker.svelte.d.ts +1 -0
  27. package/package/components/ResultJobLoader.svelte.d.ts +1 -1
  28. package/package/components/SaveInputsButton.svelte +53 -0
  29. package/package/components/SaveInputsButton.svelte.d.ts +24 -0
  30. package/package/components/SavedInputs.svelte +33 -61
  31. package/package/components/SavedInputsPicker.svelte +264 -0
  32. package/package/components/SavedInputsPicker.svelte.d.ts +20 -0
  33. package/package/components/ScheduleEditorInner.svelte +0 -1
  34. package/package/components/SchemaForm.svelte +22 -3
  35. package/package/components/ScriptBuilder.svelte +595 -562
  36. package/package/components/ScriptEditor.svelte +10 -3
  37. package/package/components/ScriptEditor.svelte.d.ts +5 -2
  38. package/package/components/ScriptSchema.svelte +1 -2
  39. package/package/components/Section.svelte +6 -4
  40. package/package/components/ShareModal.svelte.d.ts +2 -2
  41. package/package/components/SimpleEditor.svelte +39 -7
  42. package/package/components/SimpleEditor.svelte.d.ts +1 -4
  43. package/package/components/StringTypeNarrowing.svelte +3 -1
  44. package/package/components/TestConnection.svelte +5 -0
  45. package/package/components/TestJobLoader.svelte.d.ts +1 -1
  46. package/package/components/WorkerGroup.svelte +2 -1
  47. package/package/components/apps/components/inputs/AppS3FileInput.svelte +1 -0
  48. package/package/components/apps/editor/component/components.d.ts +79 -79
  49. package/package/components/apps/editor/component/default-codes.d.ts +1 -1
  50. package/package/components/apps/editor/component/default-codes.js +10 -10
  51. package/package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte +2 -1
  52. package/package/components/apps/inputType.d.ts +2 -2
  53. package/package/components/common/button/Button.svelte +10 -52
  54. package/package/components/common/button/PulseButton.svelte +81 -0
  55. package/package/components/common/button/PulseButton.svelte.d.ts +34 -0
  56. package/package/components/common/button/RoundIconButton.svelte +11 -0
  57. package/package/components/common/button/RoundIconButton.svelte.d.ts +19 -0
  58. package/package/components/common/button/model.d.ts +1 -0
  59. package/package/components/common/button/model.js +47 -0
  60. package/package/components/common/fileUpload/FileUpload.svelte +3 -1
  61. package/package/components/common/fileUpload/FileUpload.svelte.d.ts +1 -0
  62. package/package/components/common/languageIcons/LanguageIcon.svelte +3 -0
  63. package/package/components/common/layout/List.svelte +10 -4
  64. package/package/components/common/layout/List.svelte.d.ts +1 -0
  65. package/package/components/common/tabs/Tab.svelte +14 -1
  66. package/package/components/common/tabs/Tab.svelte.d.ts +1 -0
  67. package/package/components/copilot/ScriptGen.svelte +1 -1
  68. package/package/components/copilot/lib.js +1 -1
  69. package/package/components/copilot/prompts/edit.yaml +1 -1
  70. package/package/components/copilot/prompts/editPrompt.js +1 -1
  71. package/package/components/copilot/prompts/fix.yaml +1 -1
  72. package/package/components/copilot/prompts/fixPrompt.js +1 -1
  73. package/package/components/copilot/prompts/gen.yaml +1 -1
  74. package/package/components/copilot/prompts/genPrompt.js +1 -1
  75. package/package/components/custom_ui.d.ts +1 -0
  76. package/package/components/details/DetailPageDetailPanel.svelte +20 -19
  77. package/package/components/details/DetailPageDetailPanel.svelte.d.ts +4 -1
  78. package/package/components/details/DetailPageLayout.svelte +4 -1
  79. package/package/components/details/DetailPageLayout.svelte.d.ts +3 -0
  80. package/package/components/details/DetailPageTriggerPanel.svelte +84 -63
  81. package/package/components/details/DetailPageTriggerPanel.svelte.d.ts +3 -1
  82. package/package/components/details/EmailTriggerConfigSection.svelte +1 -1
  83. package/package/components/details/EmailTriggerConfigSection.svelte.d.ts +2 -1
  84. package/package/components/details/EmailTriggerPanel.svelte +2 -0
  85. package/package/components/details/EmailTriggerPanel.svelte.d.ts +2 -0
  86. package/package/components/flows/FlowEditor.svelte +8 -2
  87. package/package/components/flows/FlowEditor.svelte.d.ts +1 -0
  88. package/package/components/flows/common/FlowCard.svelte +12 -6
  89. package/package/components/flows/content/DynamicInputHelpBox.svelte +1 -0
  90. package/package/components/flows/content/FlowEditorPanel.svelte +15 -9
  91. package/package/components/flows/content/FlowEditorPanel.svelte.d.ts +1 -0
  92. package/package/components/flows/content/FlowInput.svelte +449 -98
  93. package/package/components/flows/content/FlowInput.svelte.d.ts +2 -0
  94. package/package/components/flows/content/FlowInputEditor.svelte +46 -0
  95. package/package/components/flows/content/FlowInputEditor.svelte.d.ts +25 -0
  96. package/package/components/flows/content/FlowInputsQuick.svelte +1 -1
  97. package/package/components/flows/content/FlowLoop.svelte +192 -194
  98. package/package/components/flows/content/FlowModuleComponent.svelte +372 -382
  99. package/package/components/flows/content/FlowModuleMock.svelte +6 -7
  100. package/package/components/flows/content/FlowPathViewer.svelte +2 -1
  101. package/package/components/flows/content/FlowSettings.svelte +25 -3
  102. package/package/components/flows/content/FlowWhileLoop.svelte +97 -99
  103. package/package/components/flows/flowStore.d.ts +13 -0
  104. package/package/components/flows/flowStore.js +41 -0
  105. package/package/components/flows/header/FlowPreviewButtons.svelte +10 -4
  106. package/package/components/flows/header/FlowPreviewButtons.svelte.d.ts +4 -2
  107. package/package/components/flows/header/FlowYamlEditor.svelte +3 -0
  108. package/package/components/flows/map/FlowModuleSchemaItem.svelte +8 -58
  109. package/package/components/flows/map/FlowModuleSchemaItemViewer.svelte +67 -0
  110. package/package/components/flows/map/FlowModuleSchemaItemViewer.svelte.d.ts +24 -0
  111. package/package/components/flows/map/FlowModuleSchemaMap.svelte +2 -2
  112. package/package/components/flows/pickers/FlowScriptPicker.svelte +1 -1
  113. package/package/components/flows/previousResults.d.ts +1 -1
  114. package/package/components/flows/previousResults.js +7 -2
  115. package/package/components/flows/types.d.ts +7 -0
  116. package/package/components/flows/utils.d.ts +1 -0
  117. package/package/components/flows/utils.js +3 -0
  118. package/package/components/graph/graphBuilder.js +1 -1
  119. package/package/components/graph/renderers/triggers/TriggersBadge.svelte +22 -8
  120. package/package/components/graph/renderers/triggers/TriggersBadge.svelte.d.ts +1 -1
  121. package/package/components/icons/NatsIcon.svelte +19 -0
  122. package/package/components/icons/NatsIcon.svelte.d.ts +18 -0
  123. package/package/components/icons/OracleDBIcon.svelte +15 -0
  124. package/package/components/icons/OracleDBIcon.svelte.d.ts +25 -0
  125. package/package/components/icons/index.d.ts +7 -1
  126. package/package/components/icons/index.js +8 -2
  127. package/package/components/meltComponents/ButtonDropDown.svelte +32 -0
  128. package/package/components/meltComponents/ButtonDropDown.svelte.d.ts +27 -0
  129. package/package/components/meltComponents/Popover.svelte +7 -4
  130. package/package/components/meltComponents/Popover.svelte.d.ts +1 -0
  131. package/package/components/runs/RunsFilter.svelte +2 -2
  132. package/package/components/schema/AddPropertyFormV2.svelte +46 -0
  133. package/package/components/schema/AddPropertyFormV2.svelte.d.ts +18 -0
  134. package/package/components/schema/AddPropertyV2.svelte +151 -0
  135. package/package/components/schema/AddPropertyV2.svelte.d.ts +25 -0
  136. package/package/components/schema/EditableSchemaDrawer.svelte +17 -8
  137. package/package/components/schema/EditableSchemaWrapper.svelte +58 -14
  138. package/package/components/schema/EditableSchemaWrapper.svelte.d.ts +0 -1
  139. package/package/components/schema/FlowPropertyEditor.svelte +8 -3
  140. package/package/components/schema/JobSchemaPicker.svelte +32 -0
  141. package/package/components/schema/JobSchemaPicker.svelte.d.ts +19 -0
  142. package/package/components/schema/PropertyEditor.svelte +9 -1
  143. package/package/components/schema/RunningJobSchemaPicker.svelte +67 -0
  144. package/package/components/schema/RunningJobSchemaPicker.svelte.d.ts +21 -0
  145. package/package/components/schema/SchemaFormDND.svelte +1 -1
  146. package/package/components/schema/SchemaPicker.svelte +92 -0
  147. package/package/components/schema/SchemaPicker.svelte.d.ts +23 -0
  148. package/package/components/schema/SchemaPickerRow.svelte +95 -0
  149. package/package/components/schema/SchemaPickerRow.svelte.d.ts +22 -0
  150. package/package/components/scriptEditor/LogPanel.svelte +1 -1
  151. package/package/components/settings/ChangeWorkspaceColor.svelte +103 -0
  152. package/package/components/settings/ChangeWorkspaceColor.svelte.d.ts +16 -0
  153. package/package/components/settings/ChangeWorkspaceId.svelte +1 -0
  154. package/package/components/settings/ChangeWorkspaceName.svelte +4 -0
  155. package/package/components/sidebar/MenuButton.svelte +5 -2
  156. package/package/components/sidebar/MenuButton.svelte.d.ts +1 -0
  157. package/package/components/sidebar/SidebarContent.svelte +8 -0
  158. package/package/components/sidebar/WorkspaceMenu.svelte +40 -21
  159. package/package/components/table/DataTable.svelte +43 -3
  160. package/package/components/table/DataTable.svelte.d.ts +2 -0
  161. package/package/components/table/Head.svelte +1 -1
  162. package/package/components/table/Row.svelte +11 -1
  163. package/package/components/table/Row.svelte.d.ts +3 -0
  164. package/package/components/table/index.d.ts +3 -0
  165. package/package/components/table/index.js +3 -0
  166. package/package/components/triggers/CaptureButton.svelte +38 -4
  167. package/package/components/triggers/CaptureButton.svelte.d.ts +3 -1
  168. package/package/components/triggers/CaptureIcon.svelte +7 -4
  169. package/package/components/triggers/CaptureIcon.svelte.d.ts +7 -13
  170. package/package/components/triggers/CaptureSection.svelte +50 -17
  171. package/package/components/triggers/CaptureSection.svelte.d.ts +5 -3
  172. package/package/components/triggers/CaptureTable.svelte +239 -186
  173. package/package/components/triggers/CaptureTable.svelte.d.ts +9 -11
  174. package/package/components/triggers/CaptureWrapper.svelte +126 -109
  175. package/package/components/triggers/CaptureWrapper.svelte.d.ts +3 -1
  176. package/package/components/triggers/KafkaTriggerEditorInner.svelte +1 -0
  177. package/package/components/triggers/KafkaTriggersConfigSection.svelte +16 -4
  178. package/package/components/triggers/KafkaTriggersConfigSection.svelte.d.ts +3 -1
  179. package/package/components/triggers/KafkaTriggersPanel.svelte +2 -0
  180. package/package/components/triggers/KafkaTriggersPanel.svelte.d.ts +2 -0
  181. package/package/components/triggers/NatsTriggerEditor.svelte +19 -0
  182. package/package/components/triggers/NatsTriggerEditor.svelte.d.ts +21 -0
  183. package/package/components/triggers/NatsTriggerEditorInner.svelte +239 -0
  184. package/package/components/triggers/NatsTriggerEditorInner.svelte.d.ts +21 -0
  185. package/package/components/triggers/NatsTriggersConfigSection.svelte +276 -0
  186. package/package/components/triggers/NatsTriggersConfigSection.svelte.d.ts +37 -0
  187. package/package/components/triggers/NatsTriggersPanel.svelte +126 -0
  188. package/package/components/triggers/NatsTriggersPanel.svelte.d.ts +26 -0
  189. package/package/components/triggers/RouteEditorConfigSection.svelte +12 -2
  190. package/package/components/triggers/RouteEditorConfigSection.svelte.d.ts +5 -1
  191. package/package/components/triggers/RouteEditorInner.svelte +5 -0
  192. package/package/components/triggers/RoutesPanel.svelte +4 -0
  193. package/package/components/triggers/RoutesPanel.svelte.d.ts +3 -0
  194. package/package/components/triggers/TriggersEditor.svelte +146 -97
  195. package/package/components/triggers/TriggersEditor.svelte.d.ts +2 -0
  196. package/package/components/triggers/TriggersEditorSection.svelte +19 -13
  197. package/package/components/triggers/TriggersEditorSection.svelte.d.ts +3 -0
  198. package/package/components/triggers/TriggersWrapper.svelte +7 -3
  199. package/package/components/triggers/TriggersWrapper.svelte.d.ts +2 -1
  200. package/package/components/triggers/WebhooksConfigSection.svelte +7 -6
  201. package/package/components/triggers/WebhooksConfigSection.svelte.d.ts +2 -1
  202. package/package/components/triggers/WebhooksPanel.svelte +2 -0
  203. package/package/components/triggers/WebhooksPanel.svelte.d.ts +2 -0
  204. package/package/components/triggers/WebsocketEditorConfigSection.svelte +3 -1
  205. package/package/components/triggers/WebsocketEditorConfigSection.svelte.d.ts +2 -1
  206. package/package/components/triggers/WebsocketTriggersPanel.svelte +2 -0
  207. package/package/components/triggers/WebsocketTriggersPanel.svelte.d.ts +2 -0
  208. package/package/components/triggers.d.ts +2 -1
  209. package/package/components/triggers.js +2 -0
  210. package/package/components/vscode.js +12 -8
  211. package/package/consts.d.ts +1 -0
  212. package/package/consts.js +18 -0
  213. package/package/gen/core/OpenAPI.js +1 -1
  214. package/package/gen/schemas.gen.d.ts +207 -13
  215. package/package/gen/schemas.gen.js +207 -13
  216. package/package/gen/services.gen.d.ts +118 -10
  217. package/package/gen/services.gen.js +237 -17
  218. package/package/gen/types.gen.d.ts +400 -40
  219. package/package/hubPaths.json +2 -1
  220. package/package/infer.js +11 -2
  221. package/package/monaco_workers/build_workers.js +39 -37
  222. package/package/monaco_workers/graphql.worker.bundle.js +18371 -36513
  223. package/package/script_helpers.d.ts +5 -2
  224. package/package/script_helpers.js +46 -8
  225. package/package/scripts.js +4 -0
  226. package/package/stores.d.ts +2 -1
  227. package/package/stores.js +2 -1
  228. package/package.json +14 -16
  229. package/package/monaco_workers/graphql.worker.bundle.d.ts +0 -0
@@ -1,5 +1,4 @@
1
1
  import { SvelteComponent } from "svelte";
2
- import { type TriggerKind } from '../triggers';
3
2
  import { type CaptureTriggerKind } from '../../gen';
4
3
  declare const __propDef: {
5
4
  props: {
@@ -7,28 +6,27 @@ declare const __propDef: {
7
6
  hasPreprocessor?: boolean | undefined;
8
7
  canHavePreprocessor?: boolean | undefined;
9
8
  isFlow?: boolean | undefined;
10
- captureType?: CaptureTriggerKind | 'all';
9
+ captureType?: CaptureTriggerKind | undefined;
11
10
  headless?: boolean | undefined;
12
11
  addButton?: boolean | undefined;
13
- hideCapturesWhenEmpty?: boolean | undefined;
14
12
  canEdit?: boolean | undefined;
15
- maxHeight?: number | undefined;
16
- refreshCaptures?: (() => Promise<void>) | undefined;
13
+ fullHeight?: boolean | undefined;
14
+ loadCaptures?: ((refresh?: boolean) => Promise<void>) | undefined;
17
15
  };
18
16
  events: {
19
- openTriggers: CustomEvent<{
20
- kind: TriggerKind;
21
- config: Record<string, any>;
22
- }>;
17
+ openTriggers: CustomEvent<any>;
23
18
  applyArgs: CustomEvent<{
24
19
  kind: 'main' | 'preprocessor';
25
20
  args: Record<string, any> | undefined;
26
21
  }>;
27
22
  addPreprocessor: CustomEvent<null>;
28
23
  updateSchema: CustomEvent<{
29
- schema: any;
24
+ payloadData: any;
30
25
  redirect: boolean;
26
+ args?: boolean | undefined;
31
27
  }>;
28
+ select: CustomEvent<any>;
29
+ testWithArgs: CustomEvent<any>;
32
30
  } & {
33
31
  [evt: string]: CustomEvent<any>;
34
32
  };
@@ -38,6 +36,6 @@ export type CaptureTableProps = typeof __propDef.props;
38
36
  export type CaptureTableEvents = typeof __propDef.events;
39
37
  export type CaptureTableSlots = typeof __propDef.slots;
40
38
  export default class CaptureTable extends SvelteComponent<CaptureTableProps, CaptureTableEvents, CaptureTableSlots> {
41
- get refreshCaptures(): () => Promise<void>;
39
+ get loadCaptures(): (refresh?: boolean) => Promise<void>;
42
40
  }
43
41
  export {};
@@ -10,6 +10,7 @@ import WebhooksConfigSection from './WebhooksConfigSection.svelte';
10
10
  import EmailTriggerConfigSection from '../details/EmailTriggerConfigSection.svelte';
11
11
  import KafkaTriggersConfigSection from './KafkaTriggersConfigSection.svelte';
12
12
  import CaptureTable from './CaptureTable.svelte';
13
+ import NatsTriggersConfigSection from './NatsTriggersConfigSection.svelte';
13
14
  export let isFlow;
14
15
  export let path;
15
16
  export let hasPreprocessor;
@@ -69,33 +70,21 @@ async function capture() {
69
70
  });
70
71
  await getCaptureConfigs();
71
72
  }
72
- captureTable?.refreshCaptures();
73
73
  i++;
74
74
  await sleep(1000);
75
+ captureTable?.loadCaptures(true);
75
76
  }
76
77
  }
78
+ let ready = false;
77
79
  function setDefaultArgs(captureConfigs) {
78
80
  if (captureType in captureConfigs) {
79
81
  const triggerConfig = captureConfigs[captureType].trigger_config;
80
82
  args = isObject(triggerConfig) ? triggerConfig : {};
81
83
  }
82
- else if (captureType === 'kafka') {
83
- args = {
84
- ...args,
85
- brokers: [''],
86
- topics: [''],
87
- group_id: `windmill_consumer-${$workspaceStore}-${path.replaceAll('/', '__')}`
88
- };
89
- }
90
- else if (captureType === 'http') {
91
- args = {
92
- route_path: '',
93
- http_method: 'post'
94
- };
95
- }
96
84
  else {
97
85
  args = {};
98
86
  }
87
+ ready = true;
99
88
  }
100
89
  onDestroy(() => {
101
90
  captureActive = false;
@@ -115,14 +104,17 @@ export async function handleCapture() {
115
104
  }
116
105
  let config;
117
106
  $: config = captureConfigs[captureType];
118
- let cloudDisabled = (captureType === 'websocket' || captureType === 'kafka') && isCloudHosted();
107
+ let cloudDisabled = (captureType === 'websocket' || captureType === 'kafka' || captureType === 'nats') &&
108
+ isCloudHosted();
119
109
  function updateConnectionInfo(config, captureActive) {
120
- if ((captureType === 'websocket' || captureType === 'kafka') && config && captureActive) {
110
+ if ((captureType === 'websocket' || captureType === 'kafka' || captureType === 'nats') &&
111
+ config &&
112
+ captureActive) {
121
113
  const serverEnabled = getServerEnabled(config);
122
114
  const connected = serverEnabled && !config.error;
123
115
  const message = connected
124
- ? `${capitalize(captureType)} is connected`
125
- : `${capitalize(captureType)} is not connected${config.error ? ': ' + config.error : ''}`;
116
+ ? `Connected`
117
+ : `Not connected${config.error ? ': ' + config.error : ''}`;
126
118
  connectionInfo = {
127
119
  connected,
128
120
  message
@@ -145,93 +137,118 @@ $: captureInfo = {
145
137
  $: args && (captureActive = false);
146
138
  </script>
147
139
 
148
- <div class="flex flex-col gap-4 w-full">
149
- {#if cloudDisabled}
150
- <Alert title="Not compatible with multi-tenant cloud" type="warning" size="xs">
151
- {capitalize(captureType)} triggers are disabled in the multi-tenant cloud.
152
- </Alert>
153
- {:else if captureType === 'websocket'}
154
- <WebsocketEditorConfigSection
155
- can_write={true}
156
- headless={true}
157
- bind:url={args.url}
158
- bind:url_runnable_args={args.url_runnable_args}
159
- {showCapture}
160
- {captureInfo}
161
- bind:captureTable
162
- on:applyArgs
163
- on:updateSchema
164
- on:addPreprocessor
165
- on:captureToggle={() => {
166
- handleCapture()
167
- }}
168
- />
169
- {:else if captureType === 'webhook'}
170
- <WebhooksConfigSection
171
- {isFlow}
172
- {path}
173
- hash={data?.hash}
174
- token={data?.token}
175
- {args}
176
- scopes={data?.scopes}
177
- {showCapture}
178
- {captureInfo}
179
- bind:captureTable
180
- on:applyArgs
181
- on:updateSchema
182
- on:addPreprocessor
183
- on:captureToggle={() => {
184
- handleCapture()
185
- }}
186
- />
187
- {:else if captureType === 'http'}
188
- <RouteEditorConfigSection
189
- {showCapture}
190
- can_write={true}
191
- bind:route_path={args.route_path}
192
- bind:http_method={args.http_method}
193
- headless
194
- {captureInfo}
195
- bind:captureTable
196
- on:applyArgs
197
- on:updateSchema
198
- on:addPreprocessor
199
- on:captureToggle={() => {
200
- handleCapture()
201
- }}
202
- />
203
- {:else if captureType === 'email'}
204
- <EmailTriggerConfigSection
205
- hash={data?.hash}
206
- token={data?.token}
207
- {path}
208
- {isFlow}
209
- userSettings={data?.userSettings}
210
- emailDomain={data?.emailDomain}
211
- {showCapture}
212
- {captureInfo}
213
- bind:captureTable
214
- on:applyArgs
215
- on:updateSchema
216
- on:addPreprocessor
217
- on:captureToggle={() => {
218
- handleCapture()
219
- }}
220
- />
221
- {:else if captureType === 'kafka'}
222
- <KafkaTriggersConfigSection
223
- headless={true}
224
- bind:args
225
- staticInputDisabled={false}
226
- {showCapture}
227
- {captureInfo}
228
- bind:captureTable
229
- on:applyArgs
230
- on:updateSchema
231
- on:addPreprocessor
232
- on:captureToggle={() => {
233
- handleCapture()
234
- }}
235
- />
236
- {/if}
237
- </div>
140
+ {#key ready}
141
+ <div class="flex flex-col gap-4 w-full">
142
+ {#if cloudDisabled}
143
+ <Alert title="Not compatible with multi-tenant cloud" type="warning" size="xs">
144
+ {capitalize(captureType)} triggers are disabled in the multi-tenant cloud.
145
+ </Alert>
146
+ {:else if captureType === 'websocket'}
147
+ <WebsocketEditorConfigSection
148
+ can_write={true}
149
+ headless={true}
150
+ bind:url={args.url}
151
+ bind:url_runnable_args={args.url_runnable_args}
152
+ {showCapture}
153
+ {captureInfo}
154
+ bind:captureTable
155
+ on:applyArgs
156
+ on:updateSchema
157
+ on:addPreprocessor
158
+ on:captureToggle={() => {
159
+ handleCapture()
160
+ }}
161
+ on:testWithArgs
162
+ />
163
+ {:else if captureType === 'webhook'}
164
+ <WebhooksConfigSection
165
+ {isFlow}
166
+ {path}
167
+ hash={data?.hash}
168
+ token={data?.token}
169
+ {args}
170
+ scopes={data?.scopes}
171
+ {showCapture}
172
+ {captureInfo}
173
+ bind:captureTable
174
+ on:applyArgs
175
+ on:updateSchema
176
+ on:addPreprocessor
177
+ on:captureToggle={() => {
178
+ handleCapture()
179
+ }}
180
+ on:testWithArgs
181
+ />
182
+ {:else if captureType === 'http'}
183
+ <RouteEditorConfigSection
184
+ {isFlow}
185
+ {path}
186
+ {showCapture}
187
+ can_write={true}
188
+ bind:args
189
+ headless
190
+ {captureInfo}
191
+ bind:captureTable
192
+ on:applyArgs
193
+ on:updateSchema
194
+ on:addPreprocessor
195
+ on:captureToggle={() => {
196
+ handleCapture()
197
+ }}
198
+ on:testWithArgs
199
+ />
200
+ {:else if captureType === 'email'}
201
+ <EmailTriggerConfigSection
202
+ hash={data?.hash}
203
+ token={data?.token}
204
+ {path}
205
+ {isFlow}
206
+ userSettings={data?.userSettings}
207
+ emailDomain={data?.emailDomain}
208
+ {showCapture}
209
+ {captureInfo}
210
+ bind:captureTable
211
+ on:applyArgs
212
+ on:updateSchema
213
+ on:addPreprocessor
214
+ on:captureToggle={() => {
215
+ handleCapture()
216
+ }}
217
+ on:testWithArgs
218
+ />
219
+ {:else if captureType === 'kafka'}
220
+ <KafkaTriggersConfigSection
221
+ headless={true}
222
+ {path}
223
+ bind:args
224
+ staticInputDisabled={false}
225
+ {showCapture}
226
+ {captureInfo}
227
+ bind:captureTable
228
+ on:applyArgs
229
+ on:updateSchema
230
+ on:addPreprocessor
231
+ on:captureToggle={() => {
232
+ handleCapture()
233
+ }}
234
+ on:testWithArgs
235
+ />
236
+ {:else if captureType === 'nats'}
237
+ <NatsTriggersConfigSection
238
+ headless={true}
239
+ bind:args
240
+ {path}
241
+ staticInputDisabled={false}
242
+ {showCapture}
243
+ {captureInfo}
244
+ bind:captureTable
245
+ on:applyArgs
246
+ on:updateSchema
247
+ on:addPreprocessor
248
+ on:captureToggle={() => {
249
+ handleCapture()
250
+ }}
251
+ />
252
+ {/if}
253
+ </div>
254
+ {/key}
@@ -1,4 +1,5 @@
1
1
  import { SvelteComponent } from "svelte";
2
+ import { type CaptureTriggerKind } from '../../gen';
2
3
  import type { ConnectionInfo } from '../common/alert/ConnectionIndicator.svelte';
3
4
  import CaptureTable from './CaptureTable.svelte';
4
5
  declare const __propDef: {
@@ -7,7 +8,7 @@ declare const __propDef: {
7
8
  path: string;
8
9
  hasPreprocessor: boolean;
9
10
  canHavePreprocessor: boolean;
10
- captureType?: any;
11
+ captureType?: CaptureTriggerKind | undefined;
11
12
  showCapture?: boolean | undefined;
12
13
  data?: any;
13
14
  connectionInfo?: ConnectionInfo | undefined;
@@ -20,6 +21,7 @@ declare const __propDef: {
20
21
  applyArgs: any;
21
22
  updateSchema: any;
22
23
  addPreprocessor: any;
24
+ testWithArgs: any;
23
25
  } & {
24
26
  [evt: string]: CustomEvent<any>;
25
27
  };
@@ -204,6 +204,7 @@ let isValid = false;
204
204
  <KafkaTriggersConfigSection
205
205
  bind:args
206
206
  bind:isValid
207
+ {path}
207
208
  defaultValues={useDefaultValues() ? defaultValues : undefined}
208
209
  />
209
210
 
@@ -7,6 +7,8 @@ import ToggleButtonGroup from '../common/toggleButton-v2/ToggleButtonGroup.svelt
7
7
  import SchemaForm from '../SchemaForm.svelte';
8
8
  import CaptureSection, {} from './CaptureSection.svelte';
9
9
  import CaptureTable from './CaptureTable.svelte';
10
+ import { workspaceStore } from '../../stores';
11
+ export let path;
10
12
  export let defaultValues = undefined;
11
13
  export let headless = false;
12
14
  export let args = {};
@@ -26,7 +28,8 @@ const connnectionSchema = {
26
28
  type: 'string'
27
29
  },
28
30
  nullable: false,
29
- title: 'Brokers'
31
+ title: 'Brokers',
32
+ default: ['']
30
33
  },
31
34
  security: {
32
35
  type: 'object',
@@ -115,12 +118,13 @@ const argsSchema = {
115
118
  type: 'string'
116
119
  },
117
120
  nullable: false,
118
- title: 'Topics'
121
+ title: 'Topics',
122
+ default: ['']
119
123
  },
120
124
  group_id: {
121
125
  type: 'string',
122
126
  title: 'Group ID',
123
- pattern: '^[a-zA-Z0-9-_.]+$',
127
+ pattern: '^((\\$var:[\\w-\\/]+)|[a-zA-Z0-9-_.]+)$',
124
128
  customErrorMessage: 'Invalid group ID'
125
129
  }
126
130
  },
@@ -139,7 +143,14 @@ $: isValid =
139
143
  args.topics &&
140
144
  args.topics.length > 0 &&
141
145
  args.topics.every((b) => /^[a-zA-Z0-9-_.]+$/.test(b));
142
- $: args.kafka_resource_path && (selected = 'resource');
146
+ $: usingResource = !!args.kafka_resource_path;
147
+ $: usingResource && (selected = 'resource');
148
+ function setGroupId() {
149
+ if (!args.group_id) {
150
+ args.group_id = `windmill_consumer-${$workspaceStore}-${path.replaceAll('/', '__')}`;
151
+ }
152
+ }
153
+ $: path && setGroupId();
143
154
  </script>
144
155
 
145
156
  <div>
@@ -152,6 +163,7 @@ $: args.kafka_resource_path && (selected = 'resource');
152
163
  on:applyArgs
153
164
  on:updateSchema
154
165
  on:addPreprocessor
166
+ on:testWithArgs
155
167
  bind:captureTable
156
168
  />
157
169
  {/if}
@@ -3,6 +3,7 @@ import { type CaptureInfo } from './CaptureSection.svelte';
3
3
  import CaptureTable from './CaptureTable.svelte';
4
4
  declare const __propDef: {
5
5
  props: {
6
+ path: string;
6
7
  defaultValues?: Record<string, any> | undefined;
7
8
  headless?: boolean | undefined;
8
9
  args?: Record<string, any> | undefined;
@@ -19,10 +20,11 @@ declare const __propDef: {
19
20
  args: Record<string, any> | undefined;
20
21
  }>;
21
22
  updateSchema: CustomEvent<{
22
- schema: any;
23
+ payloadData: Record<string, any>;
23
24
  redirect: boolean;
24
25
  }>;
25
26
  addPreprocessor: CustomEvent<null>;
27
+ testWithArgs: CustomEvent<any>;
26
28
  } & {
27
29
  [evt: string]: CustomEvent<any>;
28
30
  };
@@ -77,6 +77,8 @@ function saveTrigger(path, args) {
77
77
  }}
78
78
  on:applyArgs
79
79
  on:addPreprocessor
80
+ on:updateSchema
81
+ on:testWithArgs
80
82
  cloudDisabled={false}
81
83
  triggerType="kafka"
82
84
  {isFlow}
@@ -12,6 +12,8 @@ declare const __propDef: {
12
12
  events: {
13
13
  applyArgs: any;
14
14
  addPreprocessor: any;
15
+ updateSchema: any;
16
+ testWithArgs: any;
15
17
  } & {
16
18
  [evt: string]: CustomEvent<any>;
17
19
  };
@@ -0,0 +1,19 @@
1
+ <script>import { tick } from 'svelte';
2
+ import NatsTriggerEditorInner from './NatsTriggerEditorInner.svelte';
3
+ let open = false;
4
+ export async function openEdit(ePath, isFlow) {
5
+ open = true;
6
+ await tick();
7
+ drawer?.openEdit(ePath, isFlow);
8
+ }
9
+ export async function openNew(is_flow, initial_script_path, defaultValues) {
10
+ open = true;
11
+ await tick();
12
+ drawer?.openNew(is_flow, initial_script_path, defaultValues);
13
+ }
14
+ let drawer;
15
+ </script>
16
+
17
+ {#if open}
18
+ <NatsTriggerEditorInner on:update bind:this={drawer} />
19
+ {/if}
@@ -0,0 +1,21 @@
1
+ import { SvelteComponent } from "svelte";
2
+ declare const __propDef: {
3
+ props: {
4
+ openEdit?: ((ePath: string, isFlow: boolean) => Promise<void>) | undefined;
5
+ openNew?: ((is_flow: boolean, initial_script_path?: string, defaultValues?: Record<string, any>) => Promise<void>) | undefined;
6
+ };
7
+ events: {
8
+ update: CustomEvent<any>;
9
+ } & {
10
+ [evt: string]: CustomEvent<any>;
11
+ };
12
+ slots: {};
13
+ };
14
+ export type NatsTriggerEditorProps = typeof __propDef.props;
15
+ export type NatsTriggerEditorEvents = typeof __propDef.events;
16
+ export type NatsTriggerEditorSlots = typeof __propDef.slots;
17
+ export default class NatsTriggerEditor extends SvelteComponent<NatsTriggerEditorProps, NatsTriggerEditorEvents, NatsTriggerEditorSlots> {
18
+ get openEdit(): (ePath: string, isFlow: boolean) => Promise<void>;
19
+ get openNew(): (is_flow: boolean, initial_script_path?: string | undefined, defaultValues?: Record<string, any> | undefined) => Promise<void>;
20
+ }
21
+ export {};