windmill-components 1.383.8 → 1.389.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 (195) hide show
  1. package/package/assets/app.css +25 -1
  2. package/package/components/ArgInput.svelte +2 -1
  3. package/package/components/ChangeInstanceUsername.svelte +9 -108
  4. package/package/components/ChangeInstanceUsernameInner.svelte +112 -0
  5. package/package/components/ChangeInstanceUsernameInner.svelte.d.ts +21 -0
  6. package/package/components/DiffDrawer.svelte +27 -20
  7. package/package/components/DiffEditor.svelte +13 -1
  8. package/package/components/DisplayResult.svelte +39 -9
  9. package/package/components/DropdownV2.svelte +4 -26
  10. package/package/components/DropdownV2.svelte.d.ts +9 -1
  11. package/package/components/DropdownV2Inner.svelte +42 -0
  12. package/package/components/DropdownV2Inner.svelte.d.ts +40 -0
  13. package/package/components/Editor.svelte +142 -128
  14. package/package/components/Editor.svelte.d.ts +5 -4
  15. package/package/components/EditorBar.svelte +9 -11
  16. package/package/components/EditorSettings.svelte +44 -0
  17. package/package/components/EditorSettings.svelte.d.ts +17 -0
  18. package/package/components/EditorTheme.svelte +1 -1
  19. package/package/components/ErrorOrRecoveryHandler.svelte +27 -20
  20. package/package/components/FlowBuilder.svelte +17 -3
  21. package/package/components/FlowBuilder.svelte.d.ts +3 -0
  22. package/package/components/FlowGraphViewerStep.svelte +1 -1
  23. package/package/components/FlowStatusViewer.svelte +3 -1
  24. package/package/components/FlowStatusViewer.svelte.d.ts +1 -0
  25. package/package/components/FlowStatusViewerInner.svelte +5 -2
  26. package/package/components/FlowViewerInner.svelte +3 -7
  27. package/package/components/FormatOnSave.svelte +12 -29
  28. package/package/components/GraphqlSchemaViewer.svelte +1 -1
  29. package/package/components/GraphqlSchemaViewer.svelte.d.ts +1 -1
  30. package/package/components/HighlightCode.svelte +3 -0
  31. package/package/components/InstanceNameEditor.svelte +64 -0
  32. package/package/components/InstanceNameEditor.svelte.d.ts +23 -0
  33. package/package/components/LightweightArgInput.svelte +6 -11
  34. package/package/components/LogViewer.svelte +37 -29
  35. package/package/components/LogViewer.svelte.d.ts +2 -0
  36. package/package/components/ObjectResourceInput.svelte +1 -1
  37. package/package/components/ObjectResourceInput.svelte.d.ts +1 -0
  38. package/package/components/Path.svelte +3 -3
  39. package/package/components/QueueMetricsDrawer.svelte +6 -218
  40. package/package/components/QueueMetricsDrawer.svelte.d.ts +2 -3
  41. package/package/components/QueueMetricsDrawerInner.svelte +211 -0
  42. package/package/components/QueueMetricsDrawerInner.svelte.d.ts +15 -0
  43. package/package/components/ResourceEditorDrawer.svelte +14 -11
  44. package/package/components/ResourceEditorDrawer.svelte.d.ts +1 -1
  45. package/package/components/ResultJobLoader.svelte.d.ts +1 -1
  46. package/package/components/S3FilePicker.svelte +20 -8
  47. package/package/components/ScheduleEditorInner.svelte +497 -469
  48. package/package/components/ScriptBuilder.svelte +12 -1
  49. package/package/components/ScriptBuilder.svelte.d.ts +3 -0
  50. package/package/components/ScriptEditor.svelte +2 -0
  51. package/package/components/ScriptEditor.svelte.d.ts +2 -1
  52. package/package/components/ServiceLogsInner.svelte +511 -0
  53. package/package/components/ServiceLogsInner.svelte.d.ts +20 -0
  54. package/package/components/SimpleEditor.svelte +75 -37
  55. package/package/components/SimpleEditor.svelte.d.ts +9 -3
  56. package/package/components/Summary.svelte +33 -31
  57. package/package/components/Summary.svelte.d.ts +1 -0
  58. package/package/components/SuperadminSettings.svelte +28 -10
  59. package/package/components/TemplateEditor.svelte +1 -1
  60. package/package/components/TestJobLoader.svelte.d.ts +1 -1
  61. package/package/components/VimMode.svelte +16 -0
  62. package/package/components/VimMode.svelte.d.ts +14 -0
  63. package/package/components/WorkerTagPicker.svelte +4 -1
  64. package/package/components/WorkspaceGroup.svelte +139 -68
  65. package/package/components/WorkspaceGroup.svelte.d.ts +3 -0
  66. package/package/components/apps/components/display/table/AppAggridExplorerTable.svelte +19 -2
  67. package/package/components/apps/components/display/table/AppAggridInfiniteTable.svelte +1 -0
  68. package/package/components/apps/components/display/table/AppAggridInfiniteTable.svelte.d.ts +2 -1
  69. package/package/components/apps/components/display/table/AppAggridInfiniteTableEe.svelte +2 -0
  70. package/package/components/apps/components/display/table/AppAggridInfiniteTableEe.svelte.d.ts +2 -1
  71. package/package/components/apps/components/display/table/AppAggridTable.svelte +45 -3
  72. package/package/components/apps/components/display/table/AppAggridTable.svelte.d.ts +2 -1
  73. package/package/components/apps/components/display/table/AppAggridTableEe.svelte +2 -0
  74. package/package/components/apps/components/display/table/AppAggridTableEe.svelte.d.ts +2 -1
  75. package/package/components/apps/editor/AppEditor.svelte +239 -92
  76. package/package/components/apps/editor/AppEditorBottomPanel.svelte +22 -0
  77. package/package/components/apps/editor/AppEditorBottomPanel.svelte.d.ts +24 -0
  78. package/package/components/apps/editor/AppEditorHeader.svelte +44 -2
  79. package/package/components/apps/editor/AppEditorHeader.svelte.d.ts +9 -0
  80. package/package/components/apps/editor/AppExportButton.svelte +1 -1
  81. package/package/components/apps/editor/AppPreview.svelte +4 -0
  82. package/package/components/apps/editor/DeploymentHistory.svelte +7 -3
  83. package/package/components/apps/editor/GridEditor.svelte +4 -13
  84. package/package/components/apps/editor/RunnableJobPanel.svelte +25 -58
  85. package/package/components/apps/editor/RunnableJobPanel.svelte.d.ts +10 -1
  86. package/package/components/apps/editor/RunnalbeJobPanelInner.svelte +56 -0
  87. package/package/components/apps/editor/RunnalbeJobPanelInner.svelte.d.ts +18 -0
  88. package/package/components/apps/editor/SubGridEditor.svelte +3 -1
  89. package/package/components/apps/editor/component/Component.svelte +26 -4
  90. package/package/components/apps/editor/component/Component.svelte.d.ts +1 -0
  91. package/package/components/apps/editor/component/components.d.ts +5 -0
  92. package/package/components/apps/editor/componentsPanel/CssProperty.svelte +2 -0
  93. package/package/components/apps/editor/componentsPanel/tailwindUtils.js +267 -1
  94. package/package/components/apps/editor/contextPanel/ContextPanel.svelte +9 -1
  95. package/package/components/apps/editor/contextPanel/ContextPanel.svelte.d.ts +2 -0
  96. package/package/components/apps/editor/inlineScriptsPanel/CacheTtlPopup.svelte +1 -0
  97. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptEditor.svelte +4 -0
  98. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanel.svelte +7 -2
  99. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanel.svelte.d.ts +5 -1
  100. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanelList.svelte +14 -2
  101. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanelList.svelte.d.ts +1 -0
  102. package/package/components/apps/editor/settingsPanel/ComponentPanel.svelte +25 -5
  103. package/package/components/apps/editor/settingsPanel/HideButton.svelte +47 -0
  104. package/package/components/apps/editor/settingsPanel/HideButton.svelte.d.ts +22 -0
  105. package/package/components/apps/editor/settingsPanel/TableActions.svelte +43 -4
  106. package/package/components/apps/editor/settingsPanel/TableActions.svelte.d.ts +2 -1
  107. package/package/components/apps/editor/settingsPanel/inputEditor/JsonEditor.svelte +2 -1
  108. package/package/components/apps/editor/settingsPanel/inputEditor/JsonEditor.svelte.d.ts +1 -0
  109. package/package/components/apps/svelte-grid/Grid.svelte +6 -2
  110. package/package/components/apps/svelte-grid/Grid.svelte.d.ts +1 -0
  111. package/package/components/apps/svelte-grid/MoveResize.svelte +11 -3
  112. package/package/components/apps/svelte-grid/MoveResize.svelte.d.ts +1 -0
  113. package/package/components/apps/svelte-grid/utils/item.d.ts +4 -1
  114. package/package/components/apps/svelte-grid/utils/item.js +11 -4
  115. package/package/components/build_workers.d.ts +1 -1
  116. package/package/components/build_workers.js +16 -122
  117. package/package/components/common/button/Button.svelte.d.ts +2 -2
  118. package/package/components/common/calendarPicker/CalendarPicker.svelte +6 -2
  119. package/package/components/common/calendarPicker/CalendarPicker.svelte.d.ts +2 -0
  120. package/package/components/common/drawer/ConditionalPortal.svelte +2 -1
  121. package/package/components/common/drawer/ConditionalPortal.svelte.d.ts +1 -0
  122. package/package/components/common/languageIcons/LanguageIcon.svelte +5 -2
  123. package/package/components/common/popup/Popup.svelte +2 -1
  124. package/package/components/common/popup/Popup.svelte.d.ts +1 -0
  125. package/package/components/common/table/AppRow.svelte +11 -8
  126. package/package/components/common/table/AppRow.svelte.d.ts +1 -2
  127. package/package/components/common/table/FlowRow.svelte +3 -3
  128. package/package/components/common/table/FlowRow.svelte.d.ts +1 -2
  129. package/package/components/common/table/RawAppRow.svelte +3 -3
  130. package/package/components/common/table/RawAppRow.svelte.d.ts +1 -2
  131. package/package/components/common/table/ScriptRow.svelte +3 -3
  132. package/package/components/common/table/ScriptRow.svelte.d.ts +1 -2
  133. package/package/components/copilot/CodeCompletionStatus.svelte +21 -46
  134. package/package/components/copilot/StepGen.svelte +2 -1
  135. package/package/components/custom_ui.d.ts +4 -1
  136. package/package/components/flows/CreateActionsApp.svelte +11 -8
  137. package/package/components/flows/CreateActionsFlow.svelte +11 -8
  138. package/package/components/flows/FlowEditor.svelte +1 -2
  139. package/package/components/flows/FlowEditor.svelte.d.ts +0 -1
  140. package/package/components/flows/FlowHistory.svelte +6 -3
  141. package/package/components/flows/content/FlowModuleComponent.svelte +1 -0
  142. package/package/components/flows/content/FlowModuleScript.svelte +15 -11
  143. package/package/components/flows/content/FlowSettings.svelte +1 -4
  144. package/package/components/flows/content/ScriptEditorDrawer.svelte +3 -0
  145. package/package/components/flows/header/FlowYamlEditor.svelte +55 -0
  146. package/package/components/flows/header/FlowYamlEditor.svelte.d.ts +17 -0
  147. package/package/components/flows/map/InsertTriggerButton.svelte +1 -1
  148. package/package/components/flows/map/InsertTriggerButton.svelte.d.ts +1 -0
  149. package/package/components/flows/map/VirtualItem.svelte +1 -1
  150. package/package/components/flows/pickers/PickHubScript.svelte +1 -0
  151. package/package/components/flows/types.d.ts +7 -6
  152. package/package/components/flows/utils.d.ts +9 -0
  153. package/package/components/flows/utils.js +21 -0
  154. package/package/components/graph/graphBuilder.js +1 -0
  155. package/package/components/graph/model.d.ts +1 -0
  156. package/package/components/graph/renderers/edges/BaseEdge.svelte +16 -0
  157. package/package/components/graph/renderers/nodes/BranchOneStart.svelte +1 -1
  158. package/package/components/graph/renderers/nodes/NoBranchNode.svelte +5 -1
  159. package/package/components/graph/renderers/nodes/NoBranchNode.svelte.d.ts +1 -0
  160. package/package/components/home/Item.svelte +0 -17
  161. package/package/components/home/deploy_ui.d.ts +2 -0
  162. package/package/components/home/deploy_ui.js +21 -0
  163. package/package/components/icons/RustIcon.svelte +70 -0
  164. package/package/components/icons/RustIcon.svelte.d.ts +25 -0
  165. package/package/components/icons/rust-logo.svg +1 -0
  166. package/package/components/instanceSettings.js +2 -2
  167. package/package/components/monaco_keybindings.d.ts +3 -0
  168. package/package/components/monaco_keybindings.js +9 -0
  169. package/package/components/preview/FlowPreviewStatus.svelte +6 -2
  170. package/package/components/runs/JobLoader.svelte +12 -3
  171. package/package/components/runs/JobLoader.svelte.d.ts +1 -1
  172. package/package/components/runs/ManuelDatePicker.svelte +31 -44
  173. package/package/components/runs/ManuelDatePicker.svelte.d.ts +6 -2
  174. package/package/components/runs/RunsFilter.svelte +4 -1
  175. package/package/components/runs/RunsFilter.svelte.d.ts +1 -0
  176. package/package/components/search/GlobalSearchModal.svelte +36 -25
  177. package/package/components/vscode.js +1 -1
  178. package/package/components/wizards/TableActionsWizard.svelte +84 -0
  179. package/package/components/wizards/TableActionsWizard.svelte.d.ts +22 -0
  180. package/package/editorUtils.js +2 -0
  181. package/package/gen/core/OpenAPI.js +1 -1
  182. package/package/gen/schemas.gen.d.ts +8 -8
  183. package/package/gen/schemas.gen.js +8 -8
  184. package/package/gen/services.gen.d.ts +4 -0
  185. package/package/gen/services.gen.js +16 -0
  186. package/package/gen/types.gen.d.ts +20 -8
  187. package/package/infer.d.ts +1 -1
  188. package/package/infer.js +48 -7
  189. package/package/script_helpers.d.ts +1 -0
  190. package/package/script_helpers.js +39 -1
  191. package/package/scripts.d.ts +1 -1
  192. package/package/scripts.js +12 -4
  193. package/package/stores.d.ts +5 -1
  194. package/package/stores.js +7 -2
  195. package/package.json +18 -9
@@ -6,12 +6,13 @@ export let date;
6
6
  export let label;
7
7
  export let useDropdown = false;
8
8
  export let clearable = false;
9
+ export let target = undefined;
9
10
  const dispatch = createEventDispatcher();
10
11
  let input;
11
12
  export let placement = 'top-end';
12
13
  </script>
13
14
 
14
- <Popup floatingConfig={{ placement: placement, strategy: 'absolute' }}>
15
+ <Popup floatingConfig={{ placement: placement, strategy: 'absolute' }} {target}>
15
16
  <svelte:fragment slot="button">
16
17
  <button
17
18
  title="Open calendar picker"
@@ -26,9 +27,12 @@ export let placement = 'top-end';
26
27
  </svelte:fragment>
27
28
 
28
29
  <!-- svelte-ignore a11y-label-has-associated-control -->
30
+ <!-- svelte-ignore a11y-click-events-have-key-events -->
29
31
  <label class="block text-primary">
30
32
  <div class="pb-1 text-sm text-secondary">{label}</div>
31
- <div class="flex w-full">
33
+ <!-- svelte-ignore a11y-click-events-have-key-events -->
34
+ <!-- svelte-ignore a11y-no-static-element-interactions -->
35
+ <div on:click|stopPropagation class="flex w-full">
32
36
  <DateTimeInput
33
37
  {clearable}
34
38
  {useDropdown}
@@ -6,9 +6,11 @@ declare const __propDef: {
6
6
  label: string;
7
7
  useDropdown?: boolean | undefined;
8
8
  clearable?: boolean | undefined;
9
+ target?: string | HTMLElement | undefined;
9
10
  placement?: Placement | undefined;
10
11
  };
11
12
  events: {
13
+ click: MouseEvent;
12
14
  change: CustomEvent<any>;
13
15
  clear: CustomEvent<any>;
14
16
  } & {
@@ -1,9 +1,10 @@
1
1
  <script>import Portal from '../../Portal.svelte';
2
2
  export let condition = false;
3
+ export let target = undefined;
3
4
  </script>
4
5
 
5
6
  {#if condition}
6
- <Portal><slot /></Portal>
7
+ <Portal {target}><slot /></Portal>
7
8
  {:else}
8
9
  <slot />
9
10
  {/if}
@@ -2,6 +2,7 @@ import { SvelteComponent } from "svelte";
2
2
  declare const __propDef: {
3
3
  props: {
4
4
  condition?: boolean | undefined;
5
+ target?: string | HTMLElement | undefined;
5
6
  };
6
7
  events: {
7
8
  [evt: string]: CustomEvent<any>;
@@ -13,6 +13,7 @@ import MSSqlServerIcon from '../../icons/MSSqlServerIcon.svelte';
13
13
  import BunIcon from '../../icons/BunIcon.svelte';
14
14
  import DenoIcon from '../../icons/DenoIcon.svelte';
15
15
  import PHPIcon from '../../icons/PHPIcon.svelte';
16
+ import RustIcon from '../../icons/RustIcon.svelte';
16
17
  export let lang;
17
18
  export let width = 30;
18
19
  export let height = 30;
@@ -32,7 +33,8 @@ const languageLabel = {
32
33
  mysql: 'MySQL',
33
34
  mssql: 'MS SQL Server',
34
35
  bun: 'TypeScript',
35
- php: 'PHP'
36
+ php: 'PHP',
37
+ rust: 'Rust'
36
38
  };
37
39
  const langToComponent = {
38
40
  go: GoIcon,
@@ -54,7 +56,8 @@ const langToComponent = {
54
56
  postgresql: PostgresIcon,
55
57
  nativets: RestIcon,
56
58
  graphql: GraphqlIcon,
57
- php: PHPIcon
59
+ php: PHPIcon,
60
+ rust: RustIcon
58
61
  };
59
62
  let subIconScale = width === 30 ? 0.6 : 0.8;
60
63
  </script>
@@ -9,6 +9,7 @@ export let containerClasses = 'rounded-lg shadow-md border p-4 bg-surface';
9
9
  const [floatingRef, floatingContent] = createFloatingActions(floatingConfig);
10
10
  export let blockOpen = false;
11
11
  export let shouldUsePortal = true;
12
+ export let target = undefined;
12
13
  </script>
13
14
 
14
15
  <Popover on:close class="leading-none">
@@ -17,7 +18,7 @@ export let shouldUsePortal = true;
17
18
  <slot name="button" />
18
19
  </div>
19
20
  </PopoverButton>
20
- <ConditionalPortal condition={shouldUsePortal}>
21
+ <ConditionalPortal condition={shouldUsePortal} {target}>
21
22
  <div use:floatingContent class="z5000">
22
23
  <Transition
23
24
  show={blockOpen || undefined}
@@ -6,6 +6,7 @@ declare const __propDef: {
6
6
  containerClasses?: string | undefined;
7
7
  blockOpen?: boolean | undefined;
8
8
  shouldUsePortal?: boolean | undefined;
9
+ target?: string | HTMLElement | undefined;
9
10
  };
10
11
  events: {
11
12
  close: CustomEvent<any>;
@@ -8,13 +8,13 @@ import Button from '../button/Button.svelte';
8
8
  import Row from './Row.svelte';
9
9
  import DraftBadge from '../../DraftBadge.svelte';
10
10
  import Badge from '../badge/Badge.svelte';
11
- import { ExternalLink, Eye, File, FileJson, FileUp, GitFork, Globe, History, Pen, Share, Trash, Clipboard } from 'lucide-svelte';
11
+ import { ExternalLink, Eye, File, FileJson, FileUp, GitFork, Globe, History, Pen, Share, Trash, Clipboard, Loader2 } from 'lucide-svelte';
12
12
  import { goto as gotoUrl } from '$app/navigation';
13
13
  import { page } from '$app/stores';
14
14
  import { DELETE, copyToClipboard } from '../../../utils';
15
15
  import AppDeploymentHistory from '../../apps/editor/AppDeploymentHistory.svelte';
16
- import AppJsonEditor from '../../apps/editor/AppJsonEditor.svelte';
17
16
  import { isDeployable } from '../../../utils_deployable';
17
+ import { getDeployUiSettings } from '../../home/deploy_ui';
18
18
  export let app;
19
19
  export let marked;
20
20
  export let starred;
@@ -24,17 +24,20 @@ export let deploymentDrawer;
24
24
  export let deleteConfirmedCallback;
25
25
  export let depth = 0;
26
26
  export let menuOpen = false;
27
- export let deployUiSettings = undefined;
28
27
  const dispatch = createEventDispatcher();
29
- let appExport;
28
+ let appExport = undefined;
30
29
  let appDeploymentHistory = undefined;
31
30
  async function loadAppJson() {
32
- appExport.open(app.path);
31
+ appExport?.open(app.path);
33
32
  }
34
33
  </script>
35
34
 
36
35
  {#if menuOpen}
37
- <AppJsonEditor on:change bind:this={appExport} />
36
+ {#await import('../../apps/editor/AppJsonEditor.svelte')}
37
+ <Loader2 class="animate-spin" />
38
+ {:then Module}
39
+ <Module.default on:change bind:this={appExport} />
40
+ {/await}
38
41
  <AppDeploymentHistory bind:this={appDeploymentHistory} appPath={app.path} />
39
42
  {/if}
40
43
 
@@ -94,7 +97,7 @@ async function loadAppJson() {
94
97
  {/if}
95
98
  </span>
96
99
  <Dropdown
97
- items={() => {
100
+ items={async () => {
98
101
  let { draft_only, canWrite, summary, execution_mode, path, has_draft } = app
99
102
 
100
103
  if (draft_only) {
@@ -144,7 +147,7 @@ async function loadAppJson() {
144
147
  disabled: !canWrite,
145
148
  hide: $userStore?.operator
146
149
  },
147
- ...(isDeployable('app', path, deployUiSettings)
150
+ ...(isDeployable('app', path, await getDeployUiSettings())
148
151
  ? [
149
152
  {
150
153
  displayName: 'Deploy to staging/prod',
@@ -1,7 +1,7 @@
1
1
  import { SvelteComponent } from "svelte";
2
2
  import type MoveDrawer from '../../MoveDrawer.svelte';
3
3
  import type ShareModal from '../../ShareModal.svelte';
4
- import { type ListableApp, type WorkspaceDeployUISettings } from '../../../gen';
4
+ import { type ListableApp } from '../../../gen';
5
5
  import type DeployWorkspaceDrawer from '../../DeployWorkspaceDrawer.svelte';
6
6
  declare const __propDef: {
7
7
  props: {
@@ -18,7 +18,6 @@ declare const __propDef: {
18
18
  deleteConfirmedCallback: (() => void) | undefined;
19
19
  depth?: number | undefined;
20
20
  menuOpen?: boolean | undefined;
21
- deployUiSettings?: WorkspaceDeployUISettings | undefined;
22
21
  };
23
22
  events: {
24
23
  change: CustomEvent<any>;
@@ -15,6 +15,7 @@ import { DELETE, copyToClipboard, isOwner } from '../../../utils';
15
15
  import { isDeployable } from '../../../utils_deployable';
16
16
  import { Pen, GitFork, Trash, List, FileUp, Globe, Calendar, Share, Archive, Clipboard, Eye, HistoryIcon } from 'lucide-svelte';
17
17
  import FlowHistory from '../../flows/FlowHistory.svelte';
18
+ import { getDeployUiSettings } from '../../home/deploy_ui';
18
19
  export let flow;
19
20
  export let marked;
20
21
  export let starred;
@@ -25,7 +26,6 @@ export let deploymentDrawer;
25
26
  export let errorHandlerMuted;
26
27
  export let depth = 0;
27
28
  export let menuOpen = false;
28
- export let deployUiSettings = undefined;
29
29
  const dispatch = createEventDispatcher();
30
30
  async function archiveFlow(path, archived) {
31
31
  try {
@@ -115,7 +115,7 @@ let flowHistory;
115
115
  </span>
116
116
 
117
117
  <Dropdown
118
- items={() => {
118
+ items={async () => {
119
119
  let { draft_only, path, archived, has_draft } = flow
120
120
  let owner = isOwner(path, $userStore, $workspaceStore)
121
121
  if (draft_only) {
@@ -173,7 +173,7 @@ let flowHistory;
173
173
  copyToClipboard(path)
174
174
  }
175
175
  },
176
- ...(isDeployable('flow', path, deployUiSettings)
176
+ ...(isDeployable('flow', path, await getDeployUiSettings())
177
177
  ? [
178
178
  {
179
179
  displayName: 'Deploy to staging/prod',
@@ -1,7 +1,7 @@
1
1
  import { SvelteComponent } from "svelte";
2
2
  import type MoveDrawer from '../../MoveDrawer.svelte';
3
3
  import type ShareModal from '../../ShareModal.svelte';
4
- import { type Flow, type WorkspaceDeployUISettings } from '../../../gen';
4
+ import { type Flow } from '../../../gen';
5
5
  import type DeployWorkspaceDrawer from '../../DeployWorkspaceDrawer.svelte';
6
6
  declare const __propDef: {
7
7
  props: {
@@ -19,7 +19,6 @@ declare const __propDef: {
19
19
  errorHandlerMuted: boolean;
20
20
  depth?: number | undefined;
21
21
  menuOpen?: boolean | undefined;
22
- deployUiSettings?: WorkspaceDeployUISettings | undefined;
23
22
  };
24
23
  events: {
25
24
  change: CustomEvent<any>;
@@ -12,6 +12,7 @@ import FileInput from '../fileInput/FileInput.svelte';
12
12
  import { goto } from '../../../navigation';
13
13
  import { FileUp, Globe, Pen, Share, Trash } from 'lucide-svelte';
14
14
  import { isDeployable } from '../../../utils_deployable';
15
+ import { getDeployUiSettings } from '../../home/deploy_ui';
15
16
  export let app;
16
17
  export let marked;
17
18
  export let starred;
@@ -21,7 +22,6 @@ export let deleteConfirmedCallback;
21
22
  export let deploymentDrawer;
22
23
  export let depth = 0;
23
24
  export let menuOpen = false;
24
- export let deployUiSettings = undefined;
25
25
  let updateAppDrawer;
26
26
  const dispatch = createEventDispatcher();
27
27
  </script>
@@ -81,7 +81,7 @@ const dispatch = createEventDispatcher();
81
81
  {/if}
82
82
  </span>
83
83
  <Dropdown
84
- items={() => {
84
+ items={async () => {
85
85
  let { summary, path, canWrite } = app
86
86
 
87
87
  return [
@@ -93,7 +93,7 @@ const dispatch = createEventDispatcher();
93
93
  },
94
94
  disabled: !canWrite
95
95
  },
96
- ...(isDeployable('app', path, deployUiSettings)
96
+ ...(isDeployable('app', path, await getDeployUiSettings())
97
97
  ? [
98
98
  {
99
99
  displayName: 'Deploy to prod/staging',
@@ -1,7 +1,7 @@
1
1
  import { SvelteComponent } from "svelte";
2
2
  import type MoveDrawer from '../../MoveDrawer.svelte';
3
3
  import type ShareModal from '../../ShareModal.svelte';
4
- import { type ListableRawApp, type WorkspaceDeployUISettings } from '../../../gen';
4
+ import { type ListableRawApp } from '../../../gen';
5
5
  import type DeployWorkspaceDrawer from '../../DeployWorkspaceDrawer.svelte';
6
6
  declare const __propDef: {
7
7
  props: {
@@ -16,7 +16,6 @@ declare const __propDef: {
16
16
  deploymentDrawer: DeployWorkspaceDrawer;
17
17
  depth?: number | undefined;
18
18
  menuOpen?: boolean | undefined;
19
- deployUiSettings?: WorkspaceDeployUISettings | undefined;
20
19
  };
21
20
  events: {
22
21
  change: CustomEvent<any>;
@@ -19,6 +19,7 @@ import ScriptVersionHistory from '../../ScriptVersionHistory.svelte';
19
19
  import { Drawer, DrawerContent } from '..';
20
20
  import NoMainFuncBadge from '../../NoMainFuncBadge.svelte';
21
21
  import Tooltip from '../../Tooltip.svelte';
22
+ import { getDeployUiSettings } from '../../home/deploy_ui';
22
23
  export let script;
23
24
  export let marked;
24
25
  export let starred;
@@ -30,7 +31,6 @@ export let errorHandlerMuted;
30
31
  export let showCode;
31
32
  export let depth = 0;
32
33
  export let menuOpen = false;
33
- export let deployUiSettings = undefined;
34
34
  const dispatch = createEventDispatcher();
35
35
  async function archiveScript(path) {
36
36
  await ScriptService.archiveScriptByPath({ workspace: $workspaceStore, path });
@@ -135,7 +135,7 @@ let versionsDrawerOpen = false;
135
135
  {/if}
136
136
  </span>
137
137
  <Dropdown
138
- items={() => {
138
+ items={async () => {
139
139
  let owner = isOwner(script.path, $userStore, $workspaceStore)
140
140
  if (script.draft_only) {
141
141
  return [
@@ -188,7 +188,7 @@ let versionsDrawerOpen = false;
188
188
  disabled: !owner || script.archived,
189
189
  hide: $userStore?.operator
190
190
  },
191
- ...(isDeployable('script', script.path, deployUiSettings)
191
+ ...(isDeployable('script', script.path, await getDeployUiSettings())
192
192
  ? [
193
193
  {
194
194
  displayName: 'Deploy to staging/prod',
@@ -1,7 +1,7 @@
1
1
  import { SvelteComponent } from "svelte";
2
2
  import type MoveDrawer from '../../MoveDrawer.svelte';
3
3
  import type ShareModal from '../../ShareModal.svelte';
4
- import { type Script, type WorkspaceDeployUISettings } from '../../../gen';
4
+ import { type Script } from '../../../gen';
5
5
  import type DeployWorkspaceDrawer from '../../DeployWorkspaceDrawer.svelte';
6
6
  declare const __propDef: {
7
7
  props: {
@@ -19,7 +19,6 @@ declare const __propDef: {
19
19
  showCode: (path: string, summary: string) => void;
20
20
  depth?: number | undefined;
21
21
  menuOpen?: boolean | undefined;
22
- deployUiSettings?: WorkspaceDeployUISettings | undefined;
23
22
  };
24
23
  events: {
25
24
  change: CustomEvent<any>;
@@ -1,53 +1,28 @@
1
- <script>import { SparklesIcon } from 'lucide-svelte';
2
- import Button from '../common/button/Button.svelte';
3
- import { codeCompletionLoading, copilotInfo, codeCompletionSessionEnabled } from '../../stores';
4
- import Popover from '../Popover.svelte';
5
- import { getLocalSetting, storeLocalSetting } from '../../utils';
6
- import SparklesOffIcon from '../icons/SparklesOffIcon.svelte';
7
- const SETTING_NAME = 'codeCompletionSessionEnabled';
8
- function loadSetting() {
9
- $codeCompletionSessionEnabled = (getLocalSetting(SETTING_NAME) ?? 'true') == 'true';
10
- }
1
+ <script>import { codeCompletionSessionEnabled, copilotInfo, FORMAT_ON_SAVE_SETTING_NAME } from '../../stores';
2
+ import { storeLocalSetting } from '../../utils';
3
+ import Toggle from '../Toggle.svelte';
11
4
  function storeSetting() {
12
- $codeCompletionSessionEnabled = !$codeCompletionSessionEnabled;
13
- storeLocalSetting(SETTING_NAME, $codeCompletionSessionEnabled.toString());
5
+ storeLocalSetting(FORMAT_ON_SAVE_SETTING_NAME, $codeCompletionSessionEnabled.toString());
14
6
  }
15
- loadSetting();
16
7
  </script>
17
8
 
18
9
  {#if $copilotInfo.exists_openai_resource_path && $copilotInfo.code_completion_enabled}
19
- <Popover>
20
- <svelte:fragment slot="text"
21
- >Code completion: {$codeCompletionSessionEnabled ? 'enabled' : 'disabled'} (applies only to you)</svelte:fragment
22
- >
23
- <Button
24
- color="light"
25
- size="xs"
26
- loading={$codeCompletionLoading}
27
- startIcon={$codeCompletionLoading
28
- ? undefined
29
- : {
30
- icon: $codeCompletionSessionEnabled ? SparklesIcon : SparklesOffIcon,
31
- classes: $codeCompletionSessionEnabled
32
- ? 'text-violet-800 dark:text-violet-400'
33
- : 'text-violet-800/50 dark:text-violet-400/50'
34
- }}
35
- on:click={() => {
36
- storeSetting()
37
- }}
38
- />
39
- </Popover>
10
+ <Toggle
11
+ size="xs"
12
+ bind:checked={$codeCompletionSessionEnabled}
13
+ on:change={() => {
14
+ storeSetting()
15
+ }}
16
+ options={{ right: 'AI code completion' }}
17
+ />
40
18
  {:else}
41
- <Popover>
42
- <svelte:fragment slot="text"
43
- >Code completion is disabled in the workspace settings</svelte:fragment
44
- >
45
- <Button
46
- color="light"
47
- startIcon={{
48
- icon: SparklesOffIcon
49
- }}
50
- btnClasses="text-violet-800/50 dark:text-violet-400/50"
51
- />
52
- </Popover>
19
+ <Toggle
20
+ disabled
21
+ size="xs"
22
+ checked={false}
23
+ on:change={() => {
24
+ storeSetting()
25
+ }}
26
+ options={{ right: 'AI code completion (disabled in workspace settings)' }}
27
+ />
53
28
  {/if}
@@ -27,7 +27,8 @@ $: prefilteredItems = scripts ?? [];
27
27
  async function loadScripts() {
28
28
  const loadedScripts = await ScriptService.listScripts({
29
29
  workspace: $workspaceStore,
30
- perPage: 300
30
+ perPage: 300,
31
+ kinds: trigger ? 'trigger' : 'script'
31
32
  });
32
33
  scripts = loadedScripts;
33
34
  }
@@ -8,6 +8,7 @@ export type FlowBuilderWhitelabelCustomUi = {
8
8
  tutorials?: boolean;
9
9
  diff?: boolean;
10
10
  extraDeployOptions?: boolean;
11
+ editableSummary?: boolean;
11
12
  };
12
13
  settingsPanel?: boolean;
13
14
  settingsTabs?: {
@@ -41,8 +42,9 @@ export type EditorBarUi = {
41
42
  assistants?: boolean;
42
43
  multiplayer?: boolean;
43
44
  autoformatting?: boolean;
45
+ vimMode?: boolean;
44
46
  aiGen?: boolean;
45
- aiFix?: boolean;
47
+ aiCompletion?: boolean;
46
48
  library?: boolean;
47
49
  useVsCode?: boolean;
48
50
  };
@@ -54,6 +56,7 @@ export type ScriptBuilderWhitelabelCustomUi = {
54
56
  path?: boolean;
55
57
  settings?: boolean;
56
58
  extraDeployOptions?: boolean;
59
+ editableSummary?: boolean;
57
60
  };
58
61
  editorBar?: EditorBarUi;
59
62
  };
@@ -3,8 +3,7 @@ import { base } from '../../base';
3
3
  import { Button, FileInput } from '../common';
4
4
  import Drawer from '../common/drawer/Drawer.svelte';
5
5
  import DrawerContent from '../common/drawer/DrawerContent.svelte';
6
- import SimpleEditor from '../SimpleEditor.svelte';
7
- import { LayoutDashboard, Plus } from 'lucide-svelte';
6
+ import { LayoutDashboard, Loader2, Plus } from 'lucide-svelte';
8
7
  import { importStore } from '../apps/store';
9
8
  import { RawAppService } from '../../gen';
10
9
  import { workspaceStore } from '../../stores';
@@ -79,12 +78,16 @@ async function importRawApp() {
79
78
  title={'Import low-code app from ' + (importType === 'yaml' ? 'YAML' : 'JSON')}
80
79
  on:close={() => drawer?.toggleDrawer?.()}
81
80
  >
82
- <SimpleEditor
83
- bind:code={pendingRaw}
84
- lang={importType}
85
- class="h-full"
86
- fixedOverflowWidgets={false}
87
- />
81
+ {#await import('../SimpleEditor.svelte')}
82
+ <Loader2 class="animate-spin" />
83
+ {:then Module}
84
+ <Module.default
85
+ bind:code={pendingRaw}
86
+ lang={importType}
87
+ class="h-full"
88
+ fixedOverflowWidgets={false}
89
+ />
90
+ {/await}
88
91
  <svelte:fragment slot="actions">
89
92
  <Button size="sm" on:click={importRaw}>Import</Button>
90
93
  </svelte:fragment>
@@ -4,9 +4,8 @@ import BarsStaggered from '../icons/BarsStaggered.svelte';
4
4
  import { Button } from '../common';
5
5
  import Drawer from '../common/drawer/Drawer.svelte';
6
6
  import DrawerContent from '../common/drawer/DrawerContent.svelte';
7
- import SimpleEditor from '../SimpleEditor.svelte';
8
7
  import { importFlowStore } from './flowStore';
9
- import { Plus } from 'lucide-svelte';
8
+ import { Loader2, Plus } from 'lucide-svelte';
10
9
  import YAML from 'yaml';
11
10
  let drawer = undefined;
12
11
  let pendingRaw;
@@ -54,12 +53,16 @@ async function importRaw() {
54
53
  title={'Import flow from ' + (importType === 'yaml' ? 'YAML' : 'JSON')}
55
54
  on:close={() => drawer?.toggleDrawer?.()}
56
55
  >
57
- <SimpleEditor
58
- bind:code={pendingRaw}
59
- lang={importType}
60
- class="h-full"
61
- fixedOverflowWidgets={false}
62
- />
56
+ {#await import('../SimpleEditor.svelte')}
57
+ <Loader2 class="animate-spin" />
58
+ {:then Module}
59
+ <Module.default
60
+ bind:code={pendingRaw}
61
+ lang={importType}
62
+ class="h-full"
63
+ fixedOverflowWidgets={false}
64
+ />
65
+ {/await}
63
66
  <svelte:fragment slot="actions">
64
67
  <Button size="sm" on:click={importRaw}>Import</Button>
65
68
  </svelte:fragment>
@@ -12,7 +12,6 @@ export let disableTutorials = false;
12
12
  export let disableAi = false;
13
13
  export let disableSettings = false;
14
14
  export let smallErrorHandler = false;
15
- export let enableAi = true;
16
15
  let size = 40;
17
16
  const { currentStepStore: copilotCurrentStepStore } = getContext('FlowCopilotContext');
18
17
  </script>
@@ -53,7 +52,7 @@ const { currentStepStore: copilotCurrentStepStore } = getContext('FlowCopilotCon
53
52
  </div>
54
53
  </div>
55
54
  {:else}
56
- <FlowEditorPanel {enableAi} />
55
+ <FlowEditorPanel enableAi={!disableAi} />
57
56
  {/if}
58
57
  </Pane>
59
58
  </Splitpanes>
@@ -7,7 +7,6 @@ declare const __propDef: {
7
7
  disableAi?: boolean | undefined;
8
8
  disableSettings?: boolean | undefined;
9
9
  smallErrorHandler?: boolean | undefined;
10
- enableAi?: boolean | undefined;
11
10
  };
12
11
  events: {
13
12
  reload: any;
@@ -4,11 +4,10 @@ import { classNames, displayDate, emptyString, sendUserToast } from '../../utils
4
4
  import { FlowService } from '../../gen';
5
5
  import { workspaceStore } from '../../stores';
6
6
  import { Skeleton } from '../common';
7
- import FlowViewer from '../FlowViewer.svelte';
8
7
  import Drawer from '../common/drawer/Drawer.svelte';
9
8
  import DrawerContent from '../common/drawer/DrawerContent.svelte';
10
9
  import Button from '../common/button/Button.svelte';
11
- import { ArrowRight, Pencil, X } from 'lucide-svelte';
10
+ import { ArrowRight, Loader2, Pencil, X } from 'lucide-svelte';
12
11
  import { createEventDispatcher } from 'svelte';
13
12
  export let path;
14
13
  let drawer;
@@ -194,7 +193,11 @@ $: selectedVersion !== undefined && loadFlow(selectedVersion.id);
194
193
  >Redeploy with that version
195
194
  </Button>
196
195
  </div>
197
- <FlowViewer flow={selected} />
196
+ {#await import('../FlowViewer.svelte')}
197
+ <Loader2 class="animate-spin" />
198
+ {:then Module}
199
+ <Module.default flow={selected} />
200
+ {/await}
198
201
  </div>
199
202
  {:else}
200
203
  <Skeleton layout={[[40]]} />
@@ -288,6 +288,7 @@ function setFlowInput(argName) {
288
288
  bind:this={diffEditor}
289
289
  automaticLayout
290
290
  fixedOverflowWidgets
291
+ defaultLang={scriptLangToEditorLang(flowModule.value.language)}
291
292
  class="h-full"
292
293
  />
293
294
  {/key}
@@ -1,9 +1,9 @@
1
- <script>import DiffEditor from '../../DiffEditor.svelte';
2
- import HighlightCode from '../../HighlightCode.svelte';
1
+ <script>import HighlightCode from '../../HighlightCode.svelte';
3
2
  import TimeAgo from '../../TimeAgo.svelte';
4
3
  import { ScriptService } from '../../../gen';
5
4
  import { getScriptByPath, scriptLangToEditorLang } from '../../../scripts';
6
5
  import { workspaceStore } from '../../../stores';
6
+ import { Loader2 } from 'lucide-svelte';
7
7
  export let path;
8
8
  export let hash = undefined;
9
9
  export let previousHash = undefined;
@@ -60,15 +60,19 @@ export let showDiff = false;
60
60
  {:else if showAllCode}
61
61
  {#if showDiff}
62
62
  {#key previousCode + code}
63
- <DiffEditor
64
- open={true}
65
- class="h-screen"
66
- readOnly
67
- automaticLayout
68
- defaultLang={scriptLangToEditorLang(language)}
69
- defaultOriginal={previousCode}
70
- defaultModified={code}
71
- />
63
+ {#await import('../../DiffEditor.svelte')}
64
+ <Loader2 class="animate-spin" />
65
+ {:then Module}
66
+ <Module.default
67
+ open={true}
68
+ class="h-screen"
69
+ readOnly
70
+ automaticLayout
71
+ defaultLang={scriptLangToEditorLang(language)}
72
+ defaultOriginal={previousCode}
73
+ defaultModified={code}
74
+ />
75
+ {/await}
72
76
  {/key}
73
77
  {:else}
74
78
  <HighlightCode {language} {code} />
@@ -10,7 +10,7 @@ import Toggle from '../../Toggle.svelte';
10
10
  import { Alert, Button, SecondsInput } from '../../common';
11
11
  import { getContext } from 'svelte';
12
12
  import Slider from '../../Slider.svelte';
13
- import { enterpriseLicense, workerTags, workspaceStore } from '../../../stores';
13
+ import { enterpriseLicense, workspaceStore } from '../../../stores';
14
14
  import { isCloudHosted } from '../../../cloud';
15
15
  import { copyToClipboard } from '../../../utils';
16
16
  import Tooltip from '../../Tooltip.svelte';
@@ -27,9 +27,6 @@ const { selectedId, flowStore, initialPath, previewArgs, pathStore, schedule, cu
27
27
  let hostname = BROWSER ? window.location.protocol + '//' + window.location.host : 'SSR';
28
28
  $: url = `${hostname}/api/w/${$workspaceStore}/jobs/run/f/${$pathStore}`;
29
29
  $: syncedUrl = `${hostname}/api/w/${$workspaceStore}/jobs/run_wait_result/f/${$pathStore}`;
30
- $: if ($selectedId == 'settings-worker-group') {
31
- $workerTags = undefined;
32
- }
33
30
  function asSchema(x) {
34
31
  return x;
35
32
  }