windmill-components 1.394.8 → 1.405.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.
Files changed (219) hide show
  1. package/package/ata/edgeCases.d.ts +0 -1
  2. package/package/ata/edgeCases.js +2 -8
  3. package/package/ata/index.js +4 -3
  4. package/package/common.d.ts +1 -1
  5. package/package/common.js +2 -2
  6. package/package/components/ApiConnectForm.svelte +33 -7
  7. package/package/components/ArgInput.svelte +4 -2
  8. package/package/components/CenteredModal.svelte +4 -1
  9. package/package/components/CenteredModal.svelte.d.ts +1 -0
  10. package/package/components/DateInput.svelte +2 -0
  11. package/package/components/DateInput.svelte.d.ts +1 -0
  12. package/package/components/DefaultScripts.svelte +8 -3
  13. package/package/components/DefaultScripts.svelte.d.ts +5 -1
  14. package/package/components/DefaultScriptsInner.svelte +16 -7
  15. package/package/components/DefaultScriptsInner.svelte.d.ts +3 -1
  16. package/package/components/Dev.svelte +68 -11
  17. package/package/components/DropdownV2.svelte.d.ts +3 -3
  18. package/package/components/DropdownV2Inner.svelte.d.ts +3 -3
  19. package/package/components/EditableSchemaForm.svelte +1 -0
  20. package/package/components/Editor.svelte +3 -2
  21. package/package/components/Editor.svelte.d.ts +1 -1
  22. package/package/components/ExecutionDuration.svelte +44 -0
  23. package/package/components/ExecutionDuration.svelte.d.ts +24 -0
  24. package/package/components/FlowBuilder.svelte +20 -12
  25. package/package/components/FlowGraphViewer.svelte +9 -2
  26. package/package/components/FlowGraphViewerStep.svelte +23 -10
  27. package/package/components/FlowJobResult.svelte +0 -1
  28. package/package/components/FlowStatusViewerInner.svelte +17 -4
  29. package/package/components/FlowTimeline.svelte +3 -3
  30. package/package/components/HighlightCode.svelte +3 -0
  31. package/package/components/IconedResourceType.svelte +17 -10
  32. package/package/components/IconedResourceType.svelte.d.ts +2 -0
  33. package/package/components/IdEditorInput.svelte +0 -1
  34. package/package/components/InstanceSettings.svelte +247 -129
  35. package/package/components/InstanceSettings.svelte.d.ts +2 -0
  36. package/package/components/JobArgs.svelte +3 -1
  37. package/package/components/LightweightArgInput.svelte +35 -10
  38. package/package/components/LightweightArgInput.svelte.d.ts +1 -0
  39. package/package/components/LightweightObjectResourceInput.svelte +2 -0
  40. package/package/components/LightweightObjectResourceInput.svelte.d.ts +1 -0
  41. package/package/components/LightweightSchemaForm.svelte +2 -0
  42. package/package/components/LightweightSchemaForm.svelte.d.ts +1 -0
  43. package/package/components/Login.svelte +10 -5
  44. package/package/components/Login.svelte.d.ts +1 -0
  45. package/package/components/ModulePreview.svelte +21 -2
  46. package/package/components/ModuleStatus.svelte +3 -0
  47. package/package/components/ModuleStatus.svelte.d.ts +1 -0
  48. package/package/components/OAuthSetting.svelte +40 -15
  49. package/package/components/ObjectStoreConfigSettings.svelte +78 -76
  50. package/package/components/ParqetCsvTableRenderer.svelte +25 -3
  51. package/package/components/Password.svelte.d.ts +1 -1
  52. package/package/components/Path.svelte +74 -54
  53. package/package/components/Path.svelte.d.ts +2 -1
  54. package/package/components/ResourceEditor.svelte +38 -9
  55. package/package/components/ResultJobLoader.svelte +6 -3
  56. package/package/components/ResultJobLoader.svelte.d.ts +1 -1
  57. package/package/components/ScheduleEditorInner.svelte +2 -2
  58. package/package/components/SchemaForm.svelte +6 -1
  59. package/package/components/ScriptBuilder.svelte +12 -5
  60. package/package/components/ScriptEditor.svelte +33 -3
  61. package/package/components/ScriptEditor.svelte.d.ts +1 -1
  62. package/package/components/Scrollable.svelte +47 -0
  63. package/package/components/Scrollable.svelte.d.ts +21 -0
  64. package/package/components/ShareModal.svelte.d.ts +2 -2
  65. package/package/components/SuperadminSettings.svelte +5 -7
  66. package/package/components/TestJobLoader.svelte +46 -5
  67. package/package/components/TestJobLoader.svelte.d.ts +2 -1
  68. package/package/components/ToggleHubWorkspaceQuick.svelte +14 -0
  69. package/package/components/ToggleHubWorkspaceQuick.svelte.d.ts +16 -0
  70. package/package/components/WorkspaceGroup.svelte +3 -2
  71. package/package/components/apps/components/helpers/DebouncedInput.svelte +9 -1
  72. package/package/components/apps/components/inputs/AppSelect.svelte +1 -1
  73. package/package/components/apps/editor/component/components.d.ts +79 -79
  74. package/package/components/apps/svelte-select/lib/Select.svelte +1 -1
  75. package/package/components/common/fileUpload/FileUpload.svelte +1 -1
  76. package/package/components/common/languageIcons/LanguageIcon.svelte +5 -2
  77. package/package/components/common/menu/Menu.svelte +2 -1
  78. package/package/components/common/menu/MenuV2.svelte +3 -1
  79. package/package/components/common/menu/MenuV2.svelte.d.ts +1 -0
  80. package/package/components/common/popup/Popup.svelte +22 -12
  81. package/package/components/common/popup/Popup.svelte.d.ts +2 -0
  82. package/package/components/common/popup/PopupV2.svelte +58 -0
  83. package/package/components/common/popup/PopupV2.svelte.d.ts +27 -0
  84. package/package/components/copilot/CronGen.svelte +1 -1
  85. package/package/components/copilot/RegexGen.svelte +4 -4
  86. package/package/components/copilot/StepGen.svelte +6 -6
  87. package/package/components/copilot/StepGenQuick.svelte +57 -0
  88. package/package/components/copilot/StepGenQuick.svelte.d.ts +23 -0
  89. package/package/components/copilot/flow.d.ts +2 -0
  90. package/package/components/copilot/flow.js +55 -0
  91. package/package/components/details/DetailPageDetailPanel.svelte +9 -1
  92. package/package/components/details/DetailPageDetailPanel.svelte.d.ts +2 -1
  93. package/package/components/details/DetailPageLayout.svelte +2 -0
  94. package/package/components/details/DetailPageLayout.svelte.d.ts +3 -0
  95. package/package/components/details/utils.d.ts +0 -1
  96. package/package/components/details/utils.js +1 -12
  97. package/package/components/flows/FlowEditor.svelte +2 -1
  98. package/package/components/flows/FlowProgressBar.svelte +16 -1
  99. package/package/components/flows/FlowProgressBar.svelte.d.ts +1 -0
  100. package/package/components/flows/content/FlowBranchesAllWrapper.svelte +8 -0
  101. package/package/components/flows/content/FlowBranchesAllWrapper.svelte.d.ts +1 -0
  102. package/package/components/flows/content/FlowBranchesOneWrapper.svelte +8 -0
  103. package/package/components/flows/content/FlowBranchesOneWrapper.svelte.d.ts +1 -0
  104. package/package/components/flows/content/FlowConstants.svelte +1 -1
  105. package/package/components/flows/content/FlowEditorPanel.svelte +3 -0
  106. package/package/components/flows/content/FlowInputs.svelte +7 -6
  107. package/package/components/flows/content/FlowInputs.svelte.d.ts +1 -0
  108. package/package/components/flows/content/FlowInputsFlowQuick.svelte +65 -0
  109. package/package/components/flows/content/FlowInputsFlowQuick.svelte.d.ts +19 -0
  110. package/package/components/flows/content/FlowInputsQuick.svelte +419 -0
  111. package/package/components/flows/content/FlowInputsQuick.svelte.d.ts +33 -0
  112. package/package/components/flows/content/FlowLoop.svelte +7 -1
  113. package/package/components/flows/content/FlowModuleComponent.svelte +12 -3
  114. package/package/components/flows/content/FlowModuleComponent.svelte.d.ts +1 -0
  115. package/package/components/flows/content/FlowModuleSkip.svelte +69 -0
  116. package/package/components/flows/content/FlowModuleSkip.svelte.d.ts +20 -0
  117. package/package/components/flows/content/FlowModuleWrapper.svelte +17 -4
  118. package/package/components/flows/content/FlowPreprocessorModule.svelte +16 -0
  119. package/package/components/flows/content/FlowPreprocessorModule.svelte.d.ts +16 -0
  120. package/package/components/flows/content/FlowWhileLoop.svelte +9 -0
  121. package/package/components/flows/content/FlowWhileLoop.svelte.d.ts +1 -0
  122. package/package/components/flows/content/GenAiQuick.svelte +30 -0
  123. package/package/components/flows/content/GenAiQuick.svelte.d.ts +20 -0
  124. package/package/components/flows/content/ScriptEditorDrawer.svelte +3 -2
  125. package/package/components/flows/flowInfers.js +1 -1
  126. package/package/components/flows/header/FlowPreviewButtons.svelte +1 -0
  127. package/package/components/flows/idUtils.js +3 -1
  128. package/package/components/flows/map/FlowCopilotButton.svelte +55 -0
  129. package/package/components/flows/map/FlowCopilotButton.svelte.d.ts +16 -0
  130. package/package/components/flows/map/FlowErrorHandlerItem.svelte +77 -47
  131. package/package/components/flows/map/FlowJobsMenu.svelte +1 -1
  132. package/package/components/flows/map/FlowModuleSchemaItem.svelte +25 -12
  133. package/package/components/flows/map/FlowModuleSchemaItem.svelte.d.ts +1 -0
  134. package/package/components/flows/map/FlowModuleSchemaMap.svelte +61 -18
  135. package/package/components/flows/map/InsertModuleButton.svelte +161 -138
  136. package/package/components/flows/map/InsertModuleButton.svelte.d.ts +7 -4
  137. package/package/components/flows/map/MapItem.svelte +11 -0
  138. package/package/components/flows/map/MapItem.svelte.d.ts +1 -0
  139. package/package/components/flows/pickers/FlowScriptPickerQuick.svelte +48 -0
  140. package/package/components/flows/pickers/FlowScriptPickerQuick.svelte.d.ts +23 -0
  141. package/package/components/flows/pickers/FlowToplevelNode.svelte +19 -0
  142. package/package/components/flows/pickers/FlowToplevelNode.svelte.d.ts +19 -0
  143. package/package/components/flows/pickers/PickHubScriptQuick.svelte +138 -0
  144. package/package/components/flows/pickers/PickHubScriptQuick.svelte.d.ts +33 -0
  145. package/package/components/flows/pickers/TopLevelNode.svelte +58 -0
  146. package/package/components/flows/pickers/TopLevelNode.svelte.d.ts +21 -0
  147. package/package/components/flows/pickers/WorkspaceScriptPickerQuick.svelte +120 -0
  148. package/package/components/flows/pickers/WorkspaceScriptPickerQuick.svelte.d.ts +35 -0
  149. package/package/components/flows/types.d.ts +1 -0
  150. package/package/components/graph/FlowGraphV2.svelte +93 -58
  151. package/package/components/graph/FlowGraphV2.svelte.d.ts +2 -1
  152. package/package/components/graph/graphBuilder.d.ts +2 -1
  153. package/package/components/graph/graphBuilder.js +345 -280
  154. package/package/components/graph/model.d.ts +1 -0
  155. package/package/components/graph/renderers/edges/BaseEdge.svelte +36 -14
  156. package/package/components/graph/renderers/nodes/BranchOneStart.svelte +1 -1
  157. package/package/components/graph/renderers/nodes/InputNode.svelte +31 -51
  158. package/package/components/graph/renderers/nodes/InputNode.svelte.d.ts +6 -1
  159. package/package/components/graph/renderers/nodes/ModuleNode.svelte +2 -1
  160. package/package/components/graph/util.d.ts +1 -1
  161. package/package/components/graph/util.js +7 -2
  162. package/package/components/home/ListFiltersQuick.svelte +51 -0
  163. package/package/components/home/ListFiltersQuick.svelte.d.ts +23 -0
  164. package/package/components/icons/AnsibleIcon.svelte +42 -0
  165. package/package/components/icons/AnsibleIcon.svelte.d.ts +25 -0
  166. package/package/components/icons/WindmillIcon2.svelte +141 -0
  167. package/package/components/icons/WindmillIcon2.svelte.d.ts +20 -0
  168. package/package/components/icons/index.d.ts +2 -1
  169. package/package/components/icons/index.js +2 -1
  170. package/package/components/instanceSettings.d.ts +2 -2
  171. package/package/components/instanceSettings.js +25 -58
  172. package/package/components/jobs/JobProgressBar.svelte +52 -0
  173. package/package/components/jobs/JobProgressBar.svelte.d.ts +23 -0
  174. package/package/components/progressBar/ProgressBar.svelte +18 -1
  175. package/package/components/progressBar/ProgressBar.svelte.d.ts +3 -0
  176. package/package/components/runs/JobPreview.svelte +1 -0
  177. package/package/components/runs/PreprocessedArgsDisplay.svelte +71 -0
  178. package/package/components/runs/PreprocessedArgsDisplay.svelte.d.ts +16 -0
  179. package/package/components/schema/AddProperty.svelte +1 -0
  180. package/package/components/schema/EditableSchemaWrapper.svelte +142 -19
  181. package/package/components/schema/EditableSchemaWrapper.svelte.d.ts +1 -0
  182. package/package/components/schema/FlowPropertyEditor.svelte +12 -0
  183. package/package/components/schema/FlowPropertyEditor.svelte.d.ts +1 -0
  184. package/package/components/scriptEditor/LogPanel.svelte +1 -0
  185. package/package/components/scriptEditor/LogPanel.svelte.d.ts +3 -1
  186. package/package/components/search/GlobalSearchModal.svelte +2 -1
  187. package/package/components/sidebar/SidebarContent.svelte +69 -8
  188. package/package/components/sidebar/changelogs.js +10 -0
  189. package/package/components/triggers/RouteEditor.svelte +19 -0
  190. package/package/components/triggers/RouteEditor.svelte.d.ts +21 -0
  191. package/package/components/triggers/RouteEditorInner.svelte +327 -0
  192. package/package/components/triggers/RouteEditorInner.svelte.d.ts +21 -0
  193. package/package/components/triggers/RoutesPanel.svelte +74 -0
  194. package/package/components/triggers/RoutesPanel.svelte.d.ts +17 -0
  195. package/package/editorUtils.js +2 -0
  196. package/package/gen/core/OpenAPI.js +1 -1
  197. package/package/gen/schemas.gen.d.ts +159 -8
  198. package/package/gen/schemas.gen.js +161 -8
  199. package/package/gen/services.gen.d.ts +139 -1
  200. package/package/gen/services.gen.js +282 -1
  201. package/package/gen/types.gen.d.ts +455 -12
  202. package/package/hubPaths.json +6 -8
  203. package/package/infer.d.ts +4 -2
  204. package/package/infer.js +25 -23
  205. package/package/inferArgSig.js +8 -2
  206. package/package/monaco_workers/graphql.worker.bundle.js +45440 -174
  207. package/package/relative_imports.d.ts +3 -0
  208. package/package/relative_imports.js +25 -0
  209. package/package/script_helpers.d.ts +7 -2
  210. package/package/script_helpers.js +151 -3
  211. package/package/scripts.d.ts +1 -1
  212. package/package/scripts.js +5 -1
  213. package/package/stores.d.ts +1 -0
  214. package/package/stores.js +1 -0
  215. package/package/utils.d.ts +1 -0
  216. package/package/utils.js +4 -0
  217. package/package.json +16 -7
  218. package/package/components/flows/map/InsertTriggerButton.svelte +0 -48
  219. package/package/components/flows/map/InsertTriggerButton.svelte.d.ts +0 -24
@@ -60,6 +60,7 @@ export type GraphModuleState = {
60
60
  started_at?: number;
61
61
  suspend_count?: number;
62
62
  isListJob?: boolean;
63
+ skipped?: boolean;
63
64
  };
64
65
  export type NestedNodes = GraphItem[];
65
66
  export declare function isNode(item: GraphItem | NestedNodes | undefined): item is Node;
@@ -3,7 +3,6 @@ import { getBezierPath, BaseEdge, EdgeLabelRenderer } from '@xyflow/svelte';
3
3
  import { ClipboardCopy } from 'lucide-svelte';
4
4
  import { getContext } from 'svelte';
5
5
  import { getStraightLinePath } from '../utils';
6
- import InsertTriggerButton from '../../../flows/map/InsertTriggerButton.svelte';
7
6
  import { twMerge } from 'tailwind-merge';
8
7
  export let sourceX;
9
8
  export let sourceY;
@@ -27,32 +26,44 @@ $: completeEdge =
27
26
  ? `${edgePath} ${getStraightLinePath({ sourceX, sourceY, targetY })}`
28
27
  : edgePath;
29
28
  const { useDataflow } = getContext('FlowGraphContext');
30
- let menuOpen = false;
31
29
  </script>
32
30
 
33
31
  <EdgeLabelRenderer>
34
32
  {#if data?.insertable && !$useDataflow && !data?.moving}
35
33
  <div
36
- class={twMerge('edgeButtonContainer nodrag nopan top-0', menuOpen ? 'z-50' : '')}
34
+ class={twMerge('edgeButtonContainer nodrag nopan top-0')}
37
35
  style:transform="translate(-50%, 50%) translate({sourceX}px,{sourceY + 2}px)"
38
36
  >
39
37
  <InsertModuleButton
40
38
  disableAi={data.disableAi}
41
39
  index={data.index ?? 0}
42
- trigger={data.enableTrigger}
40
+ allowTrigger={data.enableTrigger}
43
41
  modules={data?.modules ?? []}
44
42
  on:new={(e) => {
45
- data?.eventHandlers.insert({ modules: data.modules, index: data.index, detail: e.detail })
43
+ // console.log('new', e)
44
+ data?.eventHandlers.insert({
45
+ modules: data.modules,
46
+ index: data.index,
47
+ kind: e.detail.kind,
48
+ inlineScript: e.detail.inlineScript
49
+ })
50
+ }}
51
+ on:pickScript={(e) => {
52
+ // console.log('pickScript', e)
53
+ data?.eventHandlers.insert({
54
+ modules: data.modules,
55
+ index: data.index,
56
+ script: e.detail
57
+ })
46
58
  }}
47
- on:insert={(e) => {
59
+ on:pickFlow={(e) => {
60
+ // console.log('pickFlow', e)
48
61
  data?.eventHandlers.insert({
49
62
  modules: data.modules,
50
63
  index: data.index,
51
- script: e.detail,
52
- detail: 'script'
64
+ flow: e.detail
53
65
  })
54
66
  }}
55
- bind:open={menuOpen}
56
67
  />
57
68
  </div>
58
69
  {#if data.enableTrigger}
@@ -60,23 +71,34 @@ let menuOpen = false;
60
71
  class="edgeButtonContainer nodrag nopan"
61
72
  style:transform="translate(100%, 50%) translate({sourceX}px,{sourceY + 2}px)"
62
73
  >
63
- <InsertTriggerButton
74
+ <InsertModuleButton
64
75
  disableAi={data.disableAi}
65
76
  on:new={(e) => {
77
+ // console.log('new', e)
78
+ data?.eventHandlers.insert({
79
+ modules: data.modules,
80
+ index: data.index,
81
+ kind: e.detail.kind,
82
+ inlineScript: e.detail.inlineScript
83
+ })
84
+ }}
85
+ on:pickScript={(e) => {
86
+ // console.log('pickScript', e)
66
87
  data?.eventHandlers.insert({
67
88
  modules: data.modules,
68
89
  index: data.index,
69
- detail: e.detail
90
+ script: e.detail
70
91
  })
71
92
  }}
72
- on:insert={(e) => {
93
+ on:pickFlow={(e) => {
94
+ // console.log('pickFlow', e)
73
95
  data?.eventHandlers.insert({
74
96
  modules: data.modules,
75
97
  index: data.index,
76
- script: e.detail,
77
- detail: 'script'
98
+ flow: e.detail
78
99
  })
79
100
  }}
101
+ kind="trigger"
80
102
  index={data?.index ?? 0}
81
103
  modules={data?.modules ?? []}
82
104
  />
@@ -29,7 +29,7 @@ hover:border-red-700"
29
29
  data.eventHandlers.deleteBranch(
30
30
  {
31
31
  module: data.modules.find((m) => m.id === data.id),
32
- index: data.branchIndex
32
+ index: data.branchIndex + 1
33
33
  },
34
34
  data.label
35
35
  )
@@ -1,62 +1,42 @@
1
1
  <script>import VirtualItem from '../../../flows/map/VirtualItem.svelte';
2
- import { ExternalLink, Wand2 } from 'lucide-svelte';
3
2
  import NodeWrapper from './NodeWrapper.svelte';
4
- import Popover from '../../../Popover.svelte';
5
3
  import { getStateColor } from '../../util';
6
- import Menu from '../../../common/menu/Menu.svelte';
7
4
  import { getContext } from 'svelte';
8
- import { copilotInfo } from '../../../../stores';
9
- import { base } from '../../../../base';
5
+ import FlowCopilotButton from '../../../flows/map/FlowCopilotButton.svelte';
6
+ import InsertModuleButton from '../../../flows/map/InsertModuleButton.svelte';
10
7
  export let data;
11
- let openNoCopilot = false;
12
- const { drawerStore: copilotDrawerStore } = getContext('FlowCopilotContext') || {};
13
8
  const { selectedId } = getContext('FlowGraphContext');
14
9
  </script>
15
10
 
16
- <NodeWrapper enableTargetHandle={false} let:darkMode>
17
- {#if data.insertable && !data.disableAi}
18
- <div class="absolute -top-10 left-1/2 transform -translate-x-1/2 z-10">
19
- <Popover>
20
- <div class={openNoCopilot ? 'z-10' : ''}>
21
- <Menu pointerDown noMinW placement="bottom-center" let:close bind:show={openNoCopilot}>
22
- <button
23
- title="AI Flow Builder"
24
- on:pointerdown={$copilotInfo.exists_openai_resource_path
25
- ? (ev) => {
26
- ev.preventDefault()
27
- ev.stopPropagation()
28
- $copilotDrawerStore?.openDrawer()
29
- }
30
- : undefined}
31
- slot="trigger"
32
- type="button"
33
- class=" bg-surface text-violet-800 dark:text-violet-400 border mx-0.5 focus:outline-none hover:bg-surface-hover focus:ring-4 focus:ring-gray-200 font-medium rounded-full text-sm w-7 h-7 flex items-center justify-center"
34
- >
35
- <Wand2 size={12} />
36
- </button>
37
- {#if !$copilotInfo.exists_openai_resource_path}
38
- <div class="text-primary p-4">
39
- <p class="text-sm w-80">
40
- Enable Windmill AI in the
41
- <a
42
- href="{base}/workspace_settings?tab=openai"
43
- target="_blank"
44
- class="inline-flex flex-row items-center gap-1"
45
- on:click={() => {
46
- close()
47
- }}
48
- >
49
- workspace settings
50
- <ExternalLink size={16} />
51
- </a>
52
- </p>
53
- </div>
54
- {/if}
55
- </Menu>
56
- </div>
57
-
58
- <svelte:fragment slot="text">AI Flow builder</svelte:fragment>
59
- </Popover>
11
+ <NodeWrapper let:darkMode>
12
+ {#if data.insertable && !data.disableAi && !data.hasPreprocessor}
13
+ <FlowCopilotButton className="-top-[4.25rem]" />
14
+ {/if}
15
+ {#if data.insertable && !data.hasPreprocessor}
16
+ <div class="absolute -top-8 left-1/2 transform -translate-x-1/2 z-10">
17
+ <InsertModuleButton
18
+ disableAi={data.disableAi}
19
+ index={data.index ?? 0}
20
+ modules={data?.modules ?? []}
21
+ kind="preprocessor"
22
+ on:new={(e) => {
23
+ data?.eventHandlers.insert({
24
+ modules: data.modules,
25
+ index: data.index,
26
+ kind: e.detail.kind,
27
+ inlineScript: e.detail.inlineScript,
28
+ detail: 'preprocessor'
29
+ })
30
+ }}
31
+ on:pickScript={(e) => {
32
+ data?.eventHandlers.insert({
33
+ modules: data.modules,
34
+ index: data.index,
35
+ script: e.detail,
36
+ detail: 'preprocessor'
37
+ })
38
+ }}
39
+ />
60
40
  </div>
61
41
  {/if}
62
42
  <VirtualItem
@@ -4,10 +4,15 @@ import type { FlowModule } from '../../../../gen';
4
4
  declare const __propDef: {
5
5
  props: {
6
6
  data: {
7
+ hasPreprocessor: boolean;
7
8
  insertable: boolean;
8
- eventHandlers: GraphEventHandlers;
9
9
  modules: FlowModule[];
10
+ moving: string | undefined;
11
+ eventHandlers: GraphEventHandlers;
12
+ index: number;
13
+ enableTrigger: boolean;
10
14
  disableAi: boolean;
15
+ disableMoveIds: string[];
11
16
  };
12
17
  };
13
18
  events: {
@@ -29,11 +29,12 @@ let selectedIteration = -1;
29
29
  '/' +
30
30
  (state?.iteration_total ?? '?')
31
31
  : ''}
32
- bgColor={getStateColor(type, darkMode, true)}
32
+ bgColor={getStateColor(type, darkMode, true, state?.skipped)}
33
33
  modules={data.modules ?? []}
34
34
  moving={data.moving}
35
35
  duration_ms={state?.duration_ms}
36
36
  retries={data.retries}
37
+ disableAi={data.disableAi}
37
38
  {flowJobs}
38
39
  on:delete={(e) => {
39
40
  data.eventHandlers.delete(e.detail, '')
@@ -7,4 +7,4 @@ export declare const NODE: {
7
7
  vertical: number;
8
8
  };
9
9
  };
10
- export declare function getStateColor(state: FlowStatusModule['type'] | undefined, isDark: boolean, nonVirtualItem?: boolean): string;
10
+ export declare function getStateColor(state: FlowStatusModule['type'] | undefined, isDark: boolean, nonVirtualItem?: boolean, isSkipped?: boolean): string;
@@ -6,10 +6,15 @@ export const NODE = {
6
6
  vertical: 50
7
7
  }
8
8
  };
9
- export function getStateColor(state, isDark, nonVirtualItem) {
9
+ export function getStateColor(state, isDark, nonVirtualItem, isSkipped) {
10
10
  switch (state) {
11
11
  case 'Success':
12
- return isDark ? '#059669' : 'rgb(193, 255, 216)';
12
+ if (isSkipped) {
13
+ return isDark ? '#1E3A8A' : 'rgb(191, 219, 254)';
14
+ }
15
+ else {
16
+ return isDark ? '#059669' : 'rgb(193, 255, 216)';
17
+ }
13
18
  case 'Failure':
14
19
  return isDark ? '#dc2626' : 'rgb(248 113 113)';
15
20
  case 'InProgress':
@@ -0,0 +1,51 @@
1
+ <script>import { Folder, User, Circle } from 'lucide-svelte';
2
+ import { APP_TO_ICON_COMPONENT } from '../icons';
3
+ import { twMerge } from 'tailwind-merge';
4
+ import { createEventDispatcher } from 'svelte';
5
+ export let filters;
6
+ export let selectedFilter = undefined;
7
+ $: selectedAppFilter = selectedFilter?.kind === 'integrations' ? selectedFilter?.name : undefined;
8
+ export let resourceType = false;
9
+ function getIconComponent(name) {
10
+ return APP_TO_ICON_COMPONENT[name] || APP_TO_ICON_COMPONENT[name.split('_')[0]];
11
+ }
12
+ const dispatch = createEventDispatcher();
13
+ </script>
14
+
15
+ {#if Array.isArray(filters) && filters.length > 0}
16
+ {#each filters as filter (filter)}
17
+ <div>
18
+ <button
19
+ class={twMerge(
20
+ 'w-full text-left py-2 px-3 hover:bg-surface-hover whitespace-nowrap flex flex-row gap-2 items-center rounded-md',
21
+ filter === selectedAppFilter ? 'bg-surface-hover' : ''
22
+ )}
23
+ on:click={() => {
24
+ selectedFilter =
25
+ selectedAppFilter == filter ? undefined : { kind: 'integrations', name: filter }
26
+ dispatch('selected')
27
+ }}
28
+ >
29
+ <div class="flex justify-center flex-row items-center gap-2">
30
+ {#if resourceType}
31
+ {@const icon = getIconComponent(filter)}
32
+ {#if icon}
33
+ <svelte:component this={icon} height="14px" width="14px" />
34
+ {:else}
35
+ <div
36
+ class="w-[14px] h-[14px] text-gray-400 flex flex-row items-center justify-center"
37
+ >
38
+ <Circle size="12" />
39
+ </div>
40
+ {/if}
41
+ {:else if filter.startsWith('u/')}
42
+ <User class="mr-0.5" size={14} />
43
+ {:else if filter.startsWith('f/')}
44
+ <Folder class="mr-0.5" size={14} />
45
+ {/if}
46
+ <span class="text-left text-2xs text-primary font-normal">{filter}</span>
47
+ </div>
48
+ </button>
49
+ </div>
50
+ {/each}
51
+ {/if}
@@ -0,0 +1,23 @@
1
+ import { SvelteComponent } from "svelte";
2
+ declare const __propDef: {
3
+ props: {
4
+ filters: string[];
5
+ selectedFilter?: {
6
+ kind: 'owner' | 'integrations';
7
+ name: string | undefined;
8
+ } | undefined;
9
+ resourceType?: boolean | undefined;
10
+ };
11
+ events: {
12
+ selected: CustomEvent<any>;
13
+ } & {
14
+ [evt: string]: CustomEvent<any>;
15
+ };
16
+ slots: {};
17
+ };
18
+ export type ListFiltersQuickProps = typeof __propDef.props;
19
+ export type ListFiltersQuickEvents = typeof __propDef.events;
20
+ export type ListFiltersQuickSlots = typeof __propDef.slots;
21
+ export default class ListFiltersQuick extends SvelteComponent<ListFiltersQuickProps, ListFiltersQuickEvents, ListFiltersQuickSlots> {
22
+ }
23
+ export {};
@@ -0,0 +1,42 @@
1
+ <script>
2
+ export let height = '24px'
3
+ export let width = '24px'
4
+ </script>
5
+
6
+ <svg
7
+ {height}
8
+ preserveAspectRatio="xMidYMid"
9
+ viewBox="0 0 256 256"
10
+ {width}
11
+ xmlns="http://www.w3.org/2000/svg"
12
+ >
13
+ <g fill="#1a1918" transform="translate(0 281.86)">
14
+ <path
15
+ d="m67.5168 32.0035c-.54152 0-1.12617-.13685-1.53212-.68583l-17.3835-22.8612v23.3187h-3.96431v-28.7142c0-1.14253.94592-2.0571 2.0278-2.0571.62971 0 1.17084.1826 1.57485.73158l17.3396 22.8159v-23.2276h3.96392v28.6681c0 1.18907-.94592 2.01175-2.02625 2.01175"
16
+ />
17
+ <path
18
+ d="m100.306 32.278c-3.96276 0-8.10693-.82347-11.9803-2.28584l.94631-3.2927c3.55797 1.14332 7.43099 1.96639 11.034 1.96639 4.99958 0 7.61163-1.7834 7.61163-4.29759 0-2.28663-2.02741-3.42956-9.00817-6.72187-6.98076-3.29192-9.72722-5.39477-9.72722-9.51055 0-5.16563 3.96276-7.27006 11.4384-7.27006 3.10813 0 7.88162.64087 10.63 1.46395l-.63087 3.38302c-3.01839-.73119-6.80051-1.23402-9.90864-1.23402-5.26839 0-7.4306 1.00528-7.4306 3.52066 0 2.46844 1.57562 3.52026 8.96194 6.94982 7.79188 3.61216 9.77345 5.4413 9.77345 9.18992 0 5.4417-5.13515 8.13888-11.71 8.13888"
19
+ />
20
+ <path d="m130.798 1.32367h4.09833v30.4511h-4.09833z" />
21
+ <path
22
+ d="m169.758 17.9669h-10.1798v10.334h10.1798c3.46746 0 5.58422-2.19514 5.58422-5.2591 0-2.88057-2.2065-5.07492-5.58422-5.07492m-1.98274-13.1685h-8.19705v9.73929h8.19705c3.28838 0 5.67512-2.10364 5.67512-5.02957 0-2.88057-2.07208-4.70972-5.67512-4.70972m2.02741 26.9766h-12.2499c-1.17162 0-2.07247-.91497-2.07247-2.0575v-26.3361c0-1.09796.90086-2.0575 2.07247-2.0575h10.1332c6.21509 0 9.90786 3.06317 9.90786 7.86439 0 2.60569-1.53134 5.02917-3.8738 6.44659 3.4694 1.05182 5.80992 3.932 5.80992 7.40691 0 4.84657-4.00743 8.73322-9.72722 8.73322"
23
+ />
24
+ <path
25
+ d="m199.212 31.7751c-1.12422 0-2.02547-.96032-2.02547-2.0575v-28.3936h4.09755v26.7479h16.304v3.70326h-18.3761z"
26
+ />
27
+ <path
28
+ d="m245.526 32.278c-8.3773 0-13.4215-3.10892-13.4215-9.37291 0-2.97207 1.66691-5.8069 4.90984-7.13281-2.61244-1.64616-3.96314-3.97814-3.96314-6.53848 0-5.66926 4.36987-8.36802 12.5658-8.36802 2.74763 0 6.62026.32063 9.86358 1.05261l-.45101 3.38302c-3.42201-.54898-6.62104-.86804-9.72839-.86804-5.31462 0-8.15238 1.46237-8.15238 4.98343 0 2.78947 2.61283 4.98382 6.08146 4.98382h7.02504c.99098 0 1.75626.77733 1.75626 1.73726 0 1.00568-.76528 1.78301-1.75626 1.78301h-7.56501c-3.9647 0-6.48546 1.96561-6.48546 4.98421 0 4.43484 4.09833 5.76075 9.23232 5.76075 2.79269 0 6.57442-.3648 9.63671-1.09678l.58697 3.33727c-2.92827.82347-6.757 1.37166-10.1347 1.37166"
29
+ />
30
+ <path
31
+ d="m14.138 7.0347 7.17771 17.9843-10.8406-8.66933 3.66286-9.31493zm12.7514 22.1277-11.0399-26.9746c-.31505-.77733-.94592-1.18907-1.71159-1.18907s-1.44121.41174-1.75626 1.18907l-12.1179 29.5874h4.14456l4.79757-12.1983 14.3142 11.7408c.57571.47208.99098.68583 1.53212.68583 1.08033 0 2.02625-.82268 2.02625-2.01135 0-.19285-.06798-.49968-.18918-.82978z"
32
+ />
33
+ </g>
34
+ <path
35
+ d="m255.879 127.868c0 70.4551-57.1101 127.565-127.566 127.565-70.4501 0-127.566-57.1096-127.566-127.565 0-70.4501 57.1161-127.566 127.566-127.566 70.4561 0 127.566 57.1161 127.566 127.566"
36
+ fill="#1a1918"
37
+ />
38
+ <path
39
+ d="m130.46 78.2289 33.0116 81.4763-49.8635-39.2778 16.8519-42.1984zm58.6445 100.245-50.7786-122.202c-1.44952-3.52436-4.34807-5.38926-7.86591-5.38926-3.52436 0-6.63386 1.86489-8.08339 5.38926l-55.7329 134.04h19.0653l22.0623-55.2653 65.8389 53.1899c2.64792 2.14114 4.55852 3.1095 7.0422 3.1095 4.97389 0 9.32146-3.72878 9.32146-9.11101 0-.87594-.30939-2.2662-.86941-3.76143z"
40
+ fill="#fff"
41
+ />
42
+ </svg>
@@ -0,0 +1,25 @@
1
+ /** @typedef {typeof __propDef.props} AnsibleIconProps */
2
+ /** @typedef {typeof __propDef.events} AnsibleIconEvents */
3
+ /** @typedef {typeof __propDef.slots} AnsibleIconSlots */
4
+ export default class AnsibleIcon extends SvelteComponent<{
5
+ height?: string | undefined;
6
+ width?: string | undefined;
7
+ }, {
8
+ [evt: string]: CustomEvent<any>;
9
+ }, {}> {
10
+ }
11
+ export type AnsibleIconProps = typeof __propDef.props;
12
+ export type AnsibleIconEvents = typeof __propDef.events;
13
+ export type AnsibleIconSlots = typeof __propDef.slots;
14
+ import { SvelteComponent } from "svelte";
15
+ declare const __propDef: {
16
+ props: {
17
+ height?: string | undefined;
18
+ width?: string | undefined;
19
+ };
20
+ events: {
21
+ [evt: string]: CustomEvent<any>;
22
+ };
23
+ slots: {};
24
+ };
25
+ export {};
@@ -0,0 +1,141 @@
1
+ <script>export let white = false;
2
+ export let size = '24px';
3
+ export let color = undefined;
4
+ export let spin = undefined;
5
+ function hslToHex(h, s, l) {
6
+ s /= 100;
7
+ l /= 100;
8
+ let c = (1 - Math.abs(2 * l - 1)) * s;
9
+ let x = c * (1 - Math.abs(((h / 60) % 2) - 1));
10
+ let m = l - c / 2;
11
+ let r = 0;
12
+ let g = 0;
13
+ let b = 0;
14
+ if (0 <= h && h < 60) {
15
+ r = c;
16
+ g = x;
17
+ b = 0;
18
+ }
19
+ else if (60 <= h && h < 120) {
20
+ r = x;
21
+ g = c;
22
+ b = 0;
23
+ }
24
+ else if (120 <= h && h < 180) {
25
+ r = 0;
26
+ g = c;
27
+ b = x;
28
+ }
29
+ else if (180 <= h && h < 240) {
30
+ r = 0;
31
+ g = x;
32
+ b = c;
33
+ }
34
+ else if (240 <= h && h < 300) {
35
+ r = x;
36
+ g = 0;
37
+ b = c;
38
+ }
39
+ else if (300 <= h && h < 360) {
40
+ r = c;
41
+ g = 0;
42
+ b = x;
43
+ }
44
+ let rs = Math.round((r + m) * 255)
45
+ .toString(16)
46
+ .padStart(2, '0');
47
+ let gs = Math.round((g + m) * 255)
48
+ .toString(16)
49
+ .padStart(2, '0');
50
+ let bs = Math.round((b + m) * 255)
51
+ .toString(16)
52
+ .padStart(2, '0');
53
+ return `#${rs}${gs}${bs}`;
54
+ }
55
+ function hexToHsl(hex) {
56
+ let r = parseInt(hex.slice(1, 3), 16) / 255;
57
+ let g = parseInt(hex.slice(3, 5), 16) / 255;
58
+ let b = parseInt(hex.slice(5, 7), 16) / 255;
59
+ const max = Math.max(r, g, b), min = Math.min(r, g, b);
60
+ let h, s, l = (max + min) / 2;
61
+ if (max === min) {
62
+ h = s = 0; // Achromatic
63
+ }
64
+ else {
65
+ const d = max - min;
66
+ s = l > 0.5 ? d / (2 - max - min) : d / (max + min);
67
+ switch (max) {
68
+ case r:
69
+ h = (g - b) / d + (g < b ? 6 : 0);
70
+ break;
71
+ case g:
72
+ h = (b - r) / d + 2;
73
+ break;
74
+ case b:
75
+ h = (r - g) / d + 4;
76
+ break;
77
+ }
78
+ h /= 6;
79
+ }
80
+ return [h * 360, s * 100, l * 100];
81
+ }
82
+ function reduceSaturation(hex, reductionPercent) {
83
+ // Convert HEX to HSL
84
+ // Convert the hex to HSL
85
+ let [h, s, l] = hexToHsl(hex);
86
+ // Reduce the saturation by the specified percentage
87
+ l = Math.max(0, l - reductionPercent);
88
+ // Convert back to hex
89
+ return hslToHex(h, s, l);
90
+ }
91
+ let lessSaturatedColor;
92
+ $: color ? (lessSaturatedColor = reduceSaturation(color, -16)) : (lessSaturatedColor = undefined);
93
+ </script>
94
+
95
+ <!-- SVG Icon with customizable color -->
96
+ <svg
97
+ class={$$props.class}
98
+ class:animate-[spin_2s_linear_infinite]={spin === 'veryfast'}
99
+ class:animate-[spin_5s_linear_infinite]={spin === 'fast'}
100
+ class:animate-[spin_15s_linear_infinite]={spin === 'medium'}
101
+ class:animate-[spin_50s_linear_infinite]={spin === 'slow'}
102
+ version="1.1"
103
+ id="Calque_1"
104
+ xmlns="http://www.w3.org/2000/svg"
105
+ xmlns:xlink="http://www.w3.org/1999/xlink"
106
+ x="0px"
107
+ y="0px"
108
+ width={size}
109
+ height={size}
110
+ viewBox="0 0 256 256"
111
+ style="enable-background:new 0 0 256 256;"
112
+ xml:space="preserve"
113
+ >
114
+ <g>
115
+ <!-- Use color or fallback to defaults (white or blue) -->
116
+ <polygon
117
+ fill={lessSaturatedColor || (white ? '#cccccc' : '#bcd4fc')}
118
+ points="134.78,14.22 114.31,48.21 101.33,69.75 158.22,69.75 177.97,36.95 191.67,14.22"
119
+ />
120
+ <polygon
121
+ fill={color || (white ? '#ffffff' : '#3b82f6')}
122
+ points="227.55,69.75 186.61,69.75 101.33,69.75 129.78,119.02 158.16,119.02 228.61,119.02 256,119.02"
123
+ />
124
+ <polygon
125
+ fill={color || (white ? '#ffffff' : '#3b82f6')}
126
+ points="136.93,132.47 116.46,167.93 73.82,241.78 130.71,241.78 144.9,217.2 180.13,156.18 193.82,132.46"
127
+ />
128
+ <polygon
129
+ fill={color || (white ? '#ffffff' : '#3b82f6')}
130
+ points="121.7,131.95 101.23,96.49 58.59,22.63 30.15,71.91 44.34,96.49 79.57,157.5 93.26,181.22"
131
+ />
132
+ <polygon
133
+ fill={lessSaturatedColor || (white ? '#cccccc' : '#bcd4fc')}
134
+ points="64.81,131.95 25.15,131.21 0,130.74 28.44,180.01 66.73,180.72 93.26,181.21"
135
+ />
136
+ <polygon
137
+ fill={lessSaturatedColor || (white ? '#cccccc' : '#bcd4fc')}
138
+ points="165.38,181.74 184.58,216.46 196.75,238.47 225.19,189.2 206.66,155.69 193.83,132.46"
139
+ />
140
+ </g>
141
+ </svg>
@@ -0,0 +1,20 @@
1
+ import { SvelteComponent } from "svelte";
2
+ declare const __propDef: {
3
+ props: {
4
+ [x: string]: any;
5
+ white?: boolean | undefined;
6
+ size?: string | undefined;
7
+ color?: string | undefined;
8
+ spin?: 'slow' | 'medium' | 'fast' | 'veryfast' | undefined;
9
+ };
10
+ events: {
11
+ [evt: string]: CustomEvent<any>;
12
+ };
13
+ slots: {};
14
+ };
15
+ export type WindmillIcon2Props = typeof __propDef.props;
16
+ export type WindmillIcon2Events = typeof __propDef.events;
17
+ export type WindmillIcon2Slots = typeof __propDef.slots;
18
+ export default class WindmillIcon2 extends SvelteComponent<WindmillIcon2Props, WindmillIcon2Events, WindmillIcon2Slots> {
19
+ }
20
+ export {};
@@ -18,6 +18,7 @@ import S3Icon from './S3Icon.svelte';
18
18
  import Slack from './Slack.svelte';
19
19
  import TogglIcon from './TogglIcon.svelte';
20
20
  import WindmillIcon from './WindmillIcon.svelte';
21
+ import WindmillIcon2 from './WindmillIcon2.svelte';
21
22
  import MailchimpIcon from './MailchimpIcon.svelte';
22
23
  import SendgridIcon from './SendgridIcon.svelte';
23
24
  import SendflakeIcon from './SendflakeIcon.svelte';
@@ -188,4 +189,4 @@ export declare const APP_TO_ICON_COMPONENT: {
188
189
  readonly keycloak: typeof KeycloakIcon;
189
190
  readonly zitadel: typeof ZitadelIcon;
190
191
  };
191
- export { AirtableIcon, DbIcon, DiscordIcon, GcalIcon, GCloudIcon, GdriveIcon, GithubIcon, GitlabIcon, GmailIcon, GSheetsIcon, HttpIcon, Mail, MastodonIcon, MatrixIcon, Mysql, PostgresIcon, S3Icon, Slack, TogglIcon, WindmillIcon, MailchimpIcon, SendgridIcon, LinkedinIcon, HubspotIcon, TelegramIcon, StripeIcon, DatadogIcon, FunkwhaleIcon, GdocsIcon, FaunadbIcon, ClickhouseIcon, OpenaiIcon, AwsIcon, BcryptIcon, GoogleIcon, HackernewsIcon, MongodbIcon, RedditIcon, SupabaseIcon, WebdavIcon, ZammadIcon, NextcloudIcon, SendflakeIcon, SurrealdbIcon, ActivitypubIcon, AwsEcrIcon, CalcomIcon, ClickupIcon, CloudflareIcon, FirebaseIcon, GoogleFormsIcon, JiraIcon, NotionIcon, PineconeIcon, RssIcon, ShopifyIcon, TypeformIcon, BigQueryIcon, GraphqlIcon, NocoDbIcon, AzureIcon, MicrosoftIcon, OktaIcon, AuthentikIcon, AutheliaIcon, KanidmIcon, AsanaIcon, BitbucketIcon, DynatraceIcon, EdgeDbIcon, GitIcon, ZendeskIcon, TwilioIcon, TrelloIcon, ResendIcon, PushoverIcon, QuickbooksIcon, MsTeamsIcon, MailgunIcon, IpinfoIcon, GoogleCloudIcon, CaCertificate, CurrencyApiIcon, VismaIcon, JumpCloudIcon, KeycloakIcon, ZitadelIcon };
192
+ export { AirtableIcon, DbIcon, DiscordIcon, GcalIcon, GCloudIcon, GdriveIcon, GithubIcon, GitlabIcon, GmailIcon, GSheetsIcon, HttpIcon, Mail, MastodonIcon, MatrixIcon, Mysql, PostgresIcon, S3Icon, Slack, TogglIcon, WindmillIcon, WindmillIcon2, MailchimpIcon, SendgridIcon, LinkedinIcon, HubspotIcon, TelegramIcon, StripeIcon, DatadogIcon, FunkwhaleIcon, GdocsIcon, FaunadbIcon, ClickhouseIcon, OpenaiIcon, AwsIcon, BcryptIcon, GoogleIcon, HackernewsIcon, MongodbIcon, RedditIcon, SupabaseIcon, WebdavIcon, ZammadIcon, NextcloudIcon, SendflakeIcon, SurrealdbIcon, ActivitypubIcon, AwsEcrIcon, CalcomIcon, ClickupIcon, CloudflareIcon, FirebaseIcon, GoogleFormsIcon, JiraIcon, NotionIcon, PineconeIcon, RssIcon, ShopifyIcon, TypeformIcon, BigQueryIcon, GraphqlIcon, NocoDbIcon, AzureIcon, MicrosoftIcon, OktaIcon, AuthentikIcon, AutheliaIcon, KanidmIcon, AsanaIcon, BitbucketIcon, DynatraceIcon, EdgeDbIcon, GitIcon, ZendeskIcon, TwilioIcon, TrelloIcon, ResendIcon, PushoverIcon, QuickbooksIcon, MsTeamsIcon, MailgunIcon, IpinfoIcon, GoogleCloudIcon, CaCertificate, CurrencyApiIcon, VismaIcon, JumpCloudIcon, KeycloakIcon, ZitadelIcon };
@@ -18,6 +18,7 @@ import S3Icon from './S3Icon.svelte';
18
18
  import Slack from './Slack.svelte';
19
19
  import TogglIcon from './TogglIcon.svelte';
20
20
  import WindmillIcon from './WindmillIcon.svelte';
21
+ import WindmillIcon2 from './WindmillIcon2.svelte';
21
22
  import MailchimpIcon from './MailchimpIcon.svelte';
22
23
  import SendgridIcon from './SendgridIcon.svelte';
23
24
  import SendflakeIcon from './SendflakeIcon.svelte';
@@ -188,4 +189,4 @@ export const APP_TO_ICON_COMPONENT = {
188
189
  keycloak: KeycloakIcon,
189
190
  zitadel: ZitadelIcon
190
191
  };
191
- export { AirtableIcon, DbIcon, DiscordIcon, GcalIcon, GCloudIcon, GdriveIcon, GithubIcon, GitlabIcon, GmailIcon, GSheetsIcon, HttpIcon, Mail, MastodonIcon, MatrixIcon, Mysql, PostgresIcon, S3Icon, Slack, TogglIcon, WindmillIcon, MailchimpIcon, SendgridIcon, LinkedinIcon, HubspotIcon, TelegramIcon, StripeIcon, DatadogIcon, FunkwhaleIcon, GdocsIcon, FaunadbIcon, ClickhouseIcon, OpenaiIcon, AwsIcon, BcryptIcon, GoogleIcon, HackernewsIcon, MongodbIcon, RedditIcon, SupabaseIcon, WebdavIcon, ZammadIcon, NextcloudIcon, SendflakeIcon, SurrealdbIcon, ActivitypubIcon, AwsEcrIcon, CalcomIcon, ClickupIcon, CloudflareIcon, FirebaseIcon, GoogleFormsIcon, JiraIcon, NotionIcon, PineconeIcon, RssIcon, ShopifyIcon, TypeformIcon, BigQueryIcon, GraphqlIcon, NocoDbIcon, AzureIcon, MicrosoftIcon, OktaIcon, AuthentikIcon, AutheliaIcon, KanidmIcon, AsanaIcon, BitbucketIcon, DynatraceIcon, EdgeDbIcon, GitIcon, ZendeskIcon, TwilioIcon, TrelloIcon, ResendIcon, PushoverIcon, QuickbooksIcon, MsTeamsIcon, MailgunIcon, IpinfoIcon, GoogleCloudIcon, CaCertificate, CurrencyApiIcon, VismaIcon, JumpCloudIcon, KeycloakIcon, ZitadelIcon };
192
+ export { AirtableIcon, DbIcon, DiscordIcon, GcalIcon, GCloudIcon, GdriveIcon, GithubIcon, GitlabIcon, GmailIcon, GSheetsIcon, HttpIcon, Mail, MastodonIcon, MatrixIcon, Mysql, PostgresIcon, S3Icon, Slack, TogglIcon, WindmillIcon, WindmillIcon2, MailchimpIcon, SendgridIcon, LinkedinIcon, HubspotIcon, TelegramIcon, StripeIcon, DatadogIcon, FunkwhaleIcon, GdocsIcon, FaunadbIcon, ClickhouseIcon, OpenaiIcon, AwsIcon, BcryptIcon, GoogleIcon, HackernewsIcon, MongodbIcon, RedditIcon, SupabaseIcon, WebdavIcon, ZammadIcon, NextcloudIcon, SendflakeIcon, SurrealdbIcon, ActivitypubIcon, AwsEcrIcon, CalcomIcon, ClickupIcon, CloudflareIcon, FirebaseIcon, GoogleFormsIcon, JiraIcon, NotionIcon, PineconeIcon, RssIcon, ShopifyIcon, TypeformIcon, BigQueryIcon, GraphqlIcon, NocoDbIcon, AzureIcon, MicrosoftIcon, OktaIcon, AuthentikIcon, AutheliaIcon, KanidmIcon, AsanaIcon, BitbucketIcon, DynatraceIcon, EdgeDbIcon, GitIcon, ZendeskIcon, TwilioIcon, TrelloIcon, ResendIcon, PushoverIcon, QuickbooksIcon, MsTeamsIcon, MailgunIcon, IpinfoIcon, GoogleCloudIcon, CaCertificate, CurrencyApiIcon, VismaIcon, JumpCloudIcon, KeycloakIcon, ZitadelIcon };
@@ -6,12 +6,12 @@ export interface Setting {
6
6
  ee_only?: string;
7
7
  tooltip?: string;
8
8
  key: string;
9
- fieldType: 'text' | 'number' | 'boolean' | 'password' | 'select' | 'textarea' | 'seconds' | 'email' | 'license_key' | 'object_store_config' | 'critical_error_channels' | 'slack_connect';
9
+ fieldType: 'text' | 'number' | 'boolean' | 'password' | 'select' | 'textarea' | 'seconds' | 'email' | 'license_key' | 'object_store_config' | 'critical_error_channels' | 'slack_connect' | 'smtp_connect';
10
10
  storage: SettingStorage;
11
11
  isValid?: (value: any) => boolean;
12
12
  error?: string;
13
13
  defaultValue?: () => any;
14
14
  }
15
- export type SettingStorage = 'setting' | 'config';
15
+ export type SettingStorage = 'setting';
16
16
  export declare const settings: Record<string, Setting[]>;
17
17
  export declare const settingsKeys: string[];