windmill-components 1.504.6 → 1.510.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.
Files changed (196) hide show
  1. package/package/ata/index.js +1 -1
  2. package/package/components/AppConnectInner.svelte +161 -29
  3. package/package/components/ArgInput.svelte +33 -103
  4. package/package/components/AuthSettings.svelte +45 -1
  5. package/package/components/Dev.svelte +31 -24
  6. package/package/components/DisplayResult.svelte +53 -26
  7. package/package/components/DisplayResult.svelte.d.ts +1 -1
  8. package/package/components/DynSelect.svelte +3 -3
  9. package/package/components/Editor.svelte +7 -4
  10. package/package/components/EditorBar.svelte +2 -2
  11. package/package/components/ErrorOrRecoveryHandler.svelte +73 -67
  12. package/package/components/ErrorOrRecoveryHandler.svelte.d.ts +8 -24
  13. package/package/components/FlowBuilder.svelte +11 -2
  14. package/package/components/FlowJobResult.svelte +12 -17
  15. package/package/components/FlowJobResult.svelte.d.ts +5 -18
  16. package/package/components/FlowPreviewContent.svelte +13 -10
  17. package/package/components/FlowPreviewContent.svelte.d.ts +1 -1
  18. package/package/components/FlowPreviewResult.svelte +14 -6
  19. package/package/components/FlowStatusViewer.svelte +11 -24
  20. package/package/components/FlowStatusViewer.svelte.d.ts +19 -18
  21. package/package/components/FlowStatusViewerInner.svelte +110 -131
  22. package/package/components/FlowStatusViewerInner.svelte.d.ts +20 -18
  23. package/package/components/GitDiffPreview.svelte +55 -0
  24. package/package/components/GitDiffPreview.svelte.d.ts +13 -0
  25. package/package/components/HistoricInputs.svelte +2 -2
  26. package/package/components/InitGitRepoPopover.svelte +410 -0
  27. package/package/components/InitGitRepoPopover.svelte.d.ts +13 -0
  28. package/package/components/InstanceSetting.svelte +21 -9
  29. package/package/components/InstanceSettings.svelte +16 -3
  30. package/package/components/JobLoader.svelte +567 -0
  31. package/package/components/JobLoader.svelte.d.ts +53 -0
  32. package/package/components/JobLogs.svelte +6 -4
  33. package/package/components/JobLogs.svelte.d.ts +5 -18
  34. package/package/components/LightweightResourcePicker.svelte +18 -39
  35. package/package/components/LightweightResourcePicker.svelte.d.ts +6 -22
  36. package/package/components/LogViewer.svelte +35 -41
  37. package/package/components/LogViewer.svelte.d.ts +6 -20
  38. package/package/components/ModulePreviewResultViewer.svelte +3 -1
  39. package/package/components/ModulePreviewResultViewer.svelte.d.ts +1 -0
  40. package/package/components/ModuleTest.svelte +16 -11
  41. package/package/components/PullGitRepoPopover.svelte +355 -0
  42. package/package/components/PullGitRepoPopover.svelte.d.ts +18 -0
  43. package/package/components/S3FilePicker.svelte +5 -3
  44. package/package/components/SavedInputs.svelte +2 -2
  45. package/package/components/ScriptBuilder.svelte +4 -3
  46. package/package/components/ScriptEditor.svelte +34 -31
  47. package/package/components/ScriptEditor.svelte.d.ts +3 -3
  48. package/package/components/ServiceLogsInner.svelte +2 -1
  49. package/package/components/ServiceLogsInner.svelte.d.ts +1 -0
  50. package/package/components/UserSettings.svelte +1 -1
  51. package/package/components/WorkerTagSelect.svelte +32 -3
  52. package/package/components/apps/components/buttons/AppButton.svelte +7 -1
  53. package/package/components/apps/components/buttons/AppButton.svelte.d.ts +1 -0
  54. package/package/components/apps/components/display/AppCustomComponent.svelte +1 -1
  55. package/package/components/apps/components/display/AppDisplayComponentByJobId.svelte +16 -11
  56. package/package/components/apps/components/display/AppJobIdLogComponent.svelte +13 -10
  57. package/package/components/apps/components/display/AppMenu.svelte +5 -0
  58. package/package/components/apps/components/display/dbtable/AppDbExplorer.svelte +3 -3
  59. package/package/components/apps/components/display/dbtable/DeleteRow.svelte +3 -3
  60. package/package/components/apps/components/display/dbtable/InsertRowRunnable.svelte +3 -3
  61. package/package/components/apps/components/display/dbtable/UpdateCell.svelte +3 -3
  62. package/package/components/apps/components/display/table/AppAggridInfiniteTable.svelte +3 -3
  63. package/package/components/apps/components/helpers/RunnableComponent.svelte +65 -54
  64. package/package/components/apps/components/helpers/RunnableComponent.svelte.d.ts +5 -5
  65. package/package/components/apps/components/inputs/AppUserResource.svelte +26 -8
  66. package/package/components/apps/editor/AppEditorHeader.svelte +11 -5
  67. package/package/components/apps/editor/AppJobsDrawer.svelte +5 -5
  68. package/package/components/apps/editor/RunnableJobPanel.svelte +4 -4
  69. package/package/components/apps/editor/component/components.d.ts +12 -0
  70. package/package/components/apps/editor/component/components.js +19 -7
  71. package/package/components/assets/AssetButtons.svelte +38 -0
  72. package/package/components/assets/AssetButtons.svelte.d.ts +15 -0
  73. package/package/components/assets/AssetsDropdownButton.svelte +60 -72
  74. package/package/components/assets/AssetsDropdownButton.svelte.d.ts +3 -4
  75. package/package/components/assets/AssetsUsageDrawer.svelte +10 -10
  76. package/package/components/assets/JobAssetsViewer.svelte +79 -0
  77. package/package/components/assets/JobAssetsViewer.svelte.d.ts +7 -0
  78. package/package/components/assets/README_DEV.md +0 -0
  79. package/package/components/assets/lib.d.ts +9 -1
  80. package/package/components/assets/lib.js +48 -7
  81. package/package/components/common/fileUpload/FileUpload.svelte +126 -84
  82. package/package/components/common/fileUpload/FileUpload.svelte.d.ts +13 -3
  83. package/package/components/common/fileUpload/S3ArgInput.svelte +111 -0
  84. package/package/components/common/fileUpload/S3ArgInput.svelte.d.ts +21 -0
  85. package/package/components/common/table/ScriptRow.svelte +3 -1
  86. package/package/components/copilot/autocomplete/Autocompletor.js +23 -5
  87. package/package/components/copilot/chat/AIChatDisplay.svelte +8 -0
  88. package/package/components/copilot/chat/AIChatManager.svelte.js +13 -8
  89. package/package/components/copilot/chat/flow/ModuleAcceptReject.svelte +5 -5
  90. package/package/components/copilot/chat/flow/core.d.ts +1 -1
  91. package/package/components/copilot/chat/flow/core.js +2 -38
  92. package/package/components/copilot/chat/navigator/apiTools.d.ts +8 -0
  93. package/package/components/copilot/chat/navigator/apiTools.js +95 -15
  94. package/package/components/copilot/chat/navigator/core.d.ts +1 -1
  95. package/package/components/copilot/chat/navigator/core.js +2 -1
  96. package/package/components/copilot/chat/script/core.d.ts +11 -2
  97. package/package/components/copilot/chat/script/core.js +135 -1
  98. package/package/components/copilot/chat/shared.d.ts +10 -0
  99. package/package/components/copilot/chat/shared.js +56 -0
  100. package/package/components/copilot/lib.d.ts +1 -0
  101. package/package/components/copilot/lib.js +27 -9
  102. package/package/components/custom_ui.d.ts +1 -0
  103. package/package/components/flows/FlowAssetsHandler.svelte +133 -0
  104. package/package/components/flows/FlowAssetsHandler.svelte.d.ts +14 -0
  105. package/package/components/flows/content/FlowModuleComponent.svelte +16 -18
  106. package/package/components/flows/flowStore.d.ts +1 -1
  107. package/package/components/flows/map/FlowModuleSchemaItem.svelte +1 -0
  108. package/package/components/flows/propPicker/OutputPicker.svelte +9 -4
  109. package/package/components/flows/scheduleUtils.js +1 -1
  110. package/package/components/flows/types.d.ts +2 -1
  111. package/package/components/graph/FlowGraphV2.svelte +8 -104
  112. package/package/components/graph/FlowGraphV2.svelte.d.ts +0 -2
  113. package/package/components/graph/graphBuilder.svelte.d.ts +6 -3
  114. package/package/components/graph/graphBuilder.svelte.js +35 -9
  115. package/package/components/graph/renderers/edges/BaseEdge.svelte +2 -5
  116. package/package/components/graph/renderers/edges/BaseEdge.svelte.d.ts +1 -0
  117. package/package/components/graph/renderers/nodes/AssetNode.svelte +23 -20
  118. package/package/components/graph/renderers/nodes/AssetNode.svelte.d.ts +5 -10
  119. package/package/components/graph/renderers/nodes/AssetsOverflowedNode.svelte +1 -1
  120. package/package/components/graph/util.js +1 -1
  121. package/package/components/home/ItemsList.svelte +2 -0
  122. package/package/components/icons/AssetGenericIcon.svelte +0 -3
  123. package/package/components/jobs/JobPreview.svelte +10 -6
  124. package/package/components/raw_apps/RawAppInlineScriptRunnable.svelte +13 -12
  125. package/package/components/runs/BatchReRunOptionsPane.svelte +5 -1
  126. package/package/components/runs/JobPreview.svelte +26 -16
  127. package/package/components/runs/{JobLoader.svelte.d.ts → JobsLoader.svelte.d.ts} +3 -3
  128. package/package/components/runs/NoWorkerWithTagWarning.svelte +2 -2
  129. package/package/components/runs/NoWorkerWithTagWarning.svelte.d.ts +1 -0
  130. package/package/components/runs/RunsFilter.svelte.d.ts +1 -1
  131. package/package/components/scriptEditor/LogPanel.svelte +3 -2
  132. package/package/components/script_builder.d.ts +2 -2
  133. package/package/components/settings/CreateToken.svelte +76 -41
  134. package/package/components/settings/CreateToken.svelte.d.ts +1 -1
  135. package/package/components/settings/ScopeSelector.svelte +613 -0
  136. package/package/components/settings/ScopeSelector.svelte.d.ts +8 -0
  137. package/package/components/settings/TokenDisplay.svelte +103 -0
  138. package/package/components/settings/TokenDisplay.svelte.d.ts +10 -0
  139. package/package/components/settings/TokensTable.svelte +70 -349
  140. package/package/components/sidebar/CriticalAlertModal.svelte +3 -0
  141. package/package/components/triggers/DeleteTriggerButton.svelte +1 -1
  142. package/package/components/triggers/TriggerEditorToolbar.svelte +3 -3
  143. package/package/components/triggers/TriggerRetriesAndErrorHandler.svelte +55 -0
  144. package/package/components/triggers/TriggerRetriesAndErrorHandler.svelte.d.ts +13 -0
  145. package/package/components/triggers/TriggersEditor.svelte +45 -3
  146. package/package/components/triggers/TriggersWrapper.svelte +2 -2
  147. package/package/components/triggers/gcp/GcpTriggerEditorInner.svelte +43 -2
  148. package/package/components/triggers/gcp/utils.js +9 -1
  149. package/package/components/triggers/http/OpenAPISpecGenerator.svelte +1 -0
  150. package/package/components/triggers/http/RouteEditorInner.svelte +208 -164
  151. package/package/components/triggers/http/RouteEditorInner.svelte.d.ts +6 -2
  152. package/package/components/triggers/http/utils.js +9 -3
  153. package/package/components/triggers/kafka/KafkaTriggerEditorInner.svelte +43 -2
  154. package/package/components/triggers/kafka/utils.js +9 -1
  155. package/package/components/triggers/mqtt/MqttEditorConfigSection.svelte +4 -132
  156. package/package/components/triggers/mqtt/MqttEditorConfigSection.svelte.d.ts +2 -5
  157. package/package/components/triggers/mqtt/MqttTriggerEditorInner.svelte +178 -9
  158. package/package/components/triggers/mqtt/utils.js +9 -1
  159. package/package/components/triggers/nats/NatsTriggerEditorInner.svelte +43 -2
  160. package/package/components/triggers/nats/utils.js +9 -1
  161. package/package/components/triggers/postgres/PostgresTriggerEditorInner.svelte +41 -2
  162. package/package/components/triggers/postgres/utils.js +9 -1
  163. package/package/components/triggers/schedules/ScheduleEditorInner.svelte +34 -88
  164. package/package/components/triggers/sqs/SqsTriggerEditorInner.svelte +43 -2
  165. package/package/components/triggers/sqs/utils.js +9 -1
  166. package/package/components/triggers/utils.js +12 -0
  167. package/package/components/triggers/websocket/WebsocketTriggerEditorInner.svelte +43 -2
  168. package/package/components/triggers/websocket/utils.js +11 -1
  169. package/package/components/workspaceSettings/AISettings.svelte +0 -2
  170. package/package/components/workspaceSettings/FilterList.svelte +56 -0
  171. package/package/components/workspaceSettings/FilterList.svelte.d.ts +8 -0
  172. package/package/components/workspaceSettings/GitSyncFilterSettings.svelte +785 -0
  173. package/package/components/workspaceSettings/GitSyncFilterSettings.svelte.d.ts +18 -0
  174. package/package/gen/core/OpenAPI.js +1 -1
  175. package/package/gen/schemas.gen.d.ts +305 -23
  176. package/package/gen/schemas.gen.js +305 -23
  177. package/package/gen/services.gen.d.ts +33 -1
  178. package/package/gen/services.gen.js +66 -2
  179. package/package/gen/types.gen.d.ts +216 -11
  180. package/package/history.svelte.js +0 -2
  181. package/package/hub.d.ts +1 -0
  182. package/package/hubPaths.json +5 -2
  183. package/package/infer.js +16 -10
  184. package/package/svelte5Utils.svelte.d.ts +1 -0
  185. package/package/svelte5Utils.svelte.js +25 -18
  186. package/package/toast.js +10 -0
  187. package/package/utils.d.ts +3 -2
  188. package/package/utils.js +20 -5
  189. package/package.json +11 -11
  190. package/package/components/ResultJobLoader.svelte +0 -219
  191. package/package/components/ResultJobLoader.svelte.d.ts +0 -52
  192. package/package/components/TestJobLoader.svelte +0 -274
  193. package/package/components/TestJobLoader.svelte.d.ts +0 -43
  194. package/package/components/icons/AssetVarIcon.svelte +0 -31
  195. package/package/components/icons/AssetVarIcon.svelte.d.ts +0 -9
  196. /package/package/components/runs/{JobLoader.svelte → JobsLoader.svelte} +0 -0
@@ -4,12 +4,13 @@ import ToggleButton from '../common/toggleButton-v2/ToggleButton.svelte';
4
4
  import ToggleButtonGroup from '../common/toggleButton-v2/ToggleButtonGroup.svelte';
5
5
  import { triggerableByAI } from '../../actions/triggerableByAI.svelte';
6
6
  import Toggle from '../Toggle.svelte';
7
- import { UserService } from '../../gen';
8
- import { copyToClipboard } from '../../utils';
9
- import { Clipboard } from 'lucide-svelte';
10
- import ClipboardPanel from '../details/ClipboardPanel.svelte';
7
+ import { IntegrationService, UserService } from '../../gen';
11
8
  import { createEventDispatcher } from 'svelte';
12
- let { showMcpMode = false, defaultNewTokenWorkspace, scopes, actions, newTokenLabel = $bindable(undefined) } = $props();
9
+ import MultiSelect from '../select/MultiSelect.svelte';
10
+ import { safeSelectItems } from '../select/utils.svelte';
11
+ import TokenDisplay from './TokenDisplay.svelte';
12
+ import ScopeSelector from './ScopeSelector.svelte';
13
+ let { showMcpMode = false, defaultNewTokenWorkspace, scopes, onTokenCreated, newTokenLabel = $bindable(undefined) } = $props();
13
14
  let newToken = $state(undefined);
14
15
  let newMcpToken = $state(undefined);
15
16
  let newTokenExpiration = $state(undefined);
@@ -19,10 +20,9 @@ let mcpCreationMode = $state(false);
19
20
  let newMcpScope = $state('favorites');
20
21
  let loadingApps = $state(false);
21
22
  let errorFetchApps = $state(false);
22
- // let allApps = $state<string[]>([])
23
- function handleCopyClick() {
24
- copyToClipboard(newToken ?? '');
25
- }
23
+ let allApps = $state([]);
24
+ let customScopes = $state([]);
25
+ let showCustomScopes = $state(false);
26
26
  const dispatch = createEventDispatcher();
27
27
  function ensureCurrentWorkspaceIncluded(workspacesList, currentWorkspace) {
28
28
  if (!currentWorkspace) {
@@ -47,6 +47,9 @@ async function createToken(mcpMode = false) {
47
47
  tokenScopes.push(`mcp:hub:${newMcpApps.join(',')}`);
48
48
  }
49
49
  }
50
+ else if (showCustomScopes && customScopes.length > 0) {
51
+ tokenScopes = customScopes;
52
+ }
50
53
  const createdToken = await UserService.createToken({
51
54
  requestBody: {
52
55
  label: newTokenLabel,
@@ -62,8 +65,8 @@ async function createToken(mcpMode = false) {
62
65
  newToken = `${createdToken}`;
63
66
  }
64
67
  dispatch('tokenCreated', newToken ?? newMcpToken);
65
- if (actions) {
66
- actions();
68
+ if (onTokenCreated) {
69
+ onTokenCreated(newToken ?? newMcpToken ?? '');
67
70
  }
68
71
  mcpCreationMode = false;
69
72
  }
@@ -73,37 +76,36 @@ async function createToken(mcpMode = false) {
73
76
  }
74
77
  const workspaces = $derived(ensureCurrentWorkspaceIncluded($userWorkspaces, $workspaceStore));
75
78
  const mcpBaseUrl = $derived(`${window.location.origin}/api/mcp/w/${newTokenWorkspace}/sse?token=`);
79
+ $effect(() => {
80
+ if (mcpCreationMode) {
81
+ getAllApps();
82
+ }
83
+ else {
84
+ newMcpApps = [];
85
+ }
86
+ });
87
+ async function getAllApps() {
88
+ if (allApps.length > 0) {
89
+ return;
90
+ }
91
+ try {
92
+ loadingApps = true;
93
+ allApps = (await IntegrationService.listHubIntegrations({
94
+ kind: 'script'
95
+ })).map((x) => x.name);
96
+ }
97
+ catch (err) {
98
+ console.error('Hub is not available');
99
+ allApps = [];
100
+ errorFetchApps = true;
101
+ }
102
+ finally {
103
+ loadingApps = false;
104
+ }
105
+ }
76
106
  </script>
77
107
 
78
108
  <div>
79
- {#if newToken}
80
- <div
81
- class="border rounded-md mb-6 px-2 py-2 bg-green-50 dark:bg-green-200 dark:text-green-800 flex flex-row flex-wrap"
82
- >
83
- <div>
84
- Added token: <button onclick={handleCopyClick} class="inline-flex gap-2 items-center">
85
- {newToken}
86
- <Clipboard size={12} />
87
- </button>
88
- </div>
89
- <div class="pt-1 text-xs ml-2">
90
- Make sure to copy your personal access token now. You won't be able to see it again!
91
- </div>
92
- </div>
93
- {/if}
94
-
95
- {#if newMcpToken}
96
- <div
97
- class="border rounded-md mb-6 px-2 py-2 bg-green-50 dark:bg-green-200 dark:text-green-800 flex flex-row flex-wrap"
98
- >
99
- <p class="text-sm mb-2">New MCP URL:</p>
100
- <ClipboardPanel content={`${mcpBaseUrl}${newMcpToken}`} />
101
- <p class="pt-1 text-xs">
102
- Make sure to copy this URL now. You won't be able to see it again!
103
- </p>
104
- </div>
105
- {/if}
106
-
107
109
  <div class="py-3 px-3 border rounded-md mb-6 bg-surface-secondary min-w-min">
108
110
  <h3 class="pb-3 font-semibold">Add a new token</h3>
109
111
 
@@ -149,7 +151,27 @@ const mcpBaseUrl = $derived(`${window.location.origin}/api/mcp/w/${newTokenWorks
149
151
  </div>
150
152
  {/if}
151
153
 
152
- <div class="grid grid-cols-1 md:grid-cols-2 gap-4">
154
+ {#if !mcpCreationMode && (!scopes || scopes.length === 0)}
155
+ <div class="flex flex-col gap-2">
156
+ <Toggle
157
+ checked={showCustomScopes}
158
+ on:change={(e) => {
159
+ showCustomScopes = e.detail
160
+ }}
161
+ options={{
162
+ right: 'Limit token permissions',
163
+ rightTooltip:
164
+ 'By default, tokens have full API access. Enable this to restrict the token to specific scopes.'
165
+ }}
166
+ size="xs"
167
+ />
168
+ {#if showCustomScopes}
169
+ <ScopeSelector bind:selectedScopes={customScopes} />
170
+ {/if}
171
+ </div>
172
+ {/if}
173
+
174
+ <div class="mt-2 grid grid-cols-1 md:grid-cols-2 gap-4">
153
175
  {#if mcpCreationMode}
154
176
  <div>
155
177
  <span class="block mb-1">Scope</span>
@@ -178,7 +200,12 @@ const mcpBaseUrl = $derived(`${window.location.origin}/api/mcp/w/${newTokenWorks
178
200
  {:else if errorFetchApps}
179
201
  <div>Error fetching apps</div>
180
202
  {:else}
181
- <!-- MultiSelectWrapper was confirmed not to be necessary : deleted -->
203
+ <MultiSelect
204
+ items={safeSelectItems(allApps)}
205
+ placeholder="Select apps"
206
+ bind:value={newMcpApps}
207
+ class="!bg-surface"
208
+ />
182
209
  {/if}
183
210
  </div>
184
211
 
@@ -232,4 +259,12 @@ const mcpBaseUrl = $derived(`${window.location.origin}/api/mcp/w/${newTokenWorks
232
259
  </Button>
233
260
  </div>
234
261
  </div>
262
+
263
+ {#if newToken}
264
+ <TokenDisplay token={newToken} type="token" />
265
+ {/if}
266
+
267
+ {#if newMcpToken}
268
+ <TokenDisplay token={newMcpToken} type="mcp" mcpUrl={`${mcpBaseUrl}${newMcpToken}`} />
269
+ {/if}
235
270
  </div>
@@ -4,7 +4,7 @@ interface Props {
4
4
  newTokenLabel?: string;
5
5
  defaultNewTokenWorkspace?: string;
6
6
  scopes?: string[];
7
- actions?: () => void;
7
+ onTokenCreated?: (token: string) => void;
8
8
  displayCreateToken?: boolean;
9
9
  }
10
10
  interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {