windmill-components 1.46.2 → 1.52.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 (496) hide show
  1. package/common.d.ts +6 -5
  2. package/components/ApiConnectForm.svelte +21 -0
  3. package/components/ApiConnectForm.svelte.d.ts +18 -0
  4. package/components/AppConnect.svelte +229 -174
  5. package/components/AppConnect.svelte.d.ts +4 -3
  6. package/components/ArgInfo.svelte +2 -2
  7. package/components/ArgInfo.svelte.d.ts +3 -3
  8. package/components/ArgInput.svelte +82 -28
  9. package/components/ArgInput.svelte.d.ts +10 -3
  10. package/components/Badge.svelte.d.ts +3 -3
  11. package/components/Button.svelte +1 -1
  12. package/components/Button.svelte.d.ts +3 -3
  13. package/components/ButtonAndDropdown.svelte.d.ts +3 -3
  14. package/components/CenteredModal.svelte +21 -14
  15. package/components/CenteredModal.svelte.d.ts +3 -3
  16. package/components/ChevronButton.svelte.d.ts +3 -3
  17. package/components/CollapseLink.svelte.d.ts +3 -3
  18. package/components/CronInput.svelte +1 -1
  19. package/components/CronInput.svelte.d.ts +3 -3
  20. package/components/DisplayResult.svelte.d.ts +3 -3
  21. package/components/Dropdown.svelte +13 -7
  22. package/components/Dropdown.svelte.d.ts +3 -3
  23. package/components/Editor.svelte +3 -2
  24. package/components/Editor.svelte.d.ts +4 -3
  25. package/components/EditorBar.svelte +34 -38
  26. package/components/EditorBar.svelte.d.ts +3 -3
  27. package/components/FieldHeader.svelte +4 -3
  28. package/components/FieldHeader.svelte.d.ts +3 -3
  29. package/components/FlowBuilder.svelte +37 -14
  30. package/components/FlowBuilder.svelte.d.ts +4 -3
  31. package/components/FlowGraphViewer.svelte +76 -0
  32. package/components/FlowGraphViewer.svelte.d.ts +23 -0
  33. package/components/FlowJobResult.svelte.d.ts +3 -3
  34. package/components/FlowMetadata.svelte.d.ts +3 -3
  35. package/components/FlowPreviewContent.svelte +54 -64
  36. package/components/FlowPreviewContent.svelte.d.ts +3 -3
  37. package/components/FlowStatusViewer.svelte +156 -106
  38. package/components/FlowStatusViewer.svelte.d.ts +5 -4
  39. package/components/FlowViewer.svelte +3 -78
  40. package/components/FlowViewer.svelte.d.ts +3 -3
  41. package/components/GroupModal.svelte.d.ts +3 -3
  42. package/components/HighlightCode.svelte.d.ts +3 -3
  43. package/components/IconedPath.svelte.d.ts +3 -3
  44. package/components/IconedResourceType.svelte +3 -61
  45. package/components/IconedResourceType.svelte.d.ts +3 -3
  46. package/components/InputTransformForm.svelte +108 -77
  47. package/components/InputTransformForm.svelte.d.ts +10 -5
  48. package/components/InputTransformsViewer.svelte.d.ts +3 -3
  49. package/components/InviteGlobalUser.svelte.d.ts +3 -3
  50. package/components/InviteUser.svelte.d.ts +3 -3
  51. package/components/ItemPicker.svelte +77 -29
  52. package/components/ItemPicker.svelte.d.ts +6 -4
  53. package/components/JobArgs.svelte +5 -5
  54. package/components/JobArgs.svelte.d.ts +3 -3
  55. package/components/JobStatus.svelte.d.ts +3 -3
  56. package/components/LogViewer.svelte +19 -4
  57. package/components/LogViewer.svelte.d.ts +3 -3
  58. package/components/Modal.svelte.d.ts +3 -3
  59. package/components/ModulePreview.svelte +8 -0
  60. package/components/ModulePreview.svelte.d.ts +3 -3
  61. package/components/ObjectResourceInput.svelte +37 -21
  62. package/components/ObjectResourceInput.svelte.d.ts +4 -3
  63. package/components/ObjectTypeNarrowing.svelte.d.ts +3 -3
  64. package/components/PageHeader.svelte +2 -2
  65. package/components/PageHeader.svelte.d.ts +3 -3
  66. package/components/Password.svelte +2 -2
  67. package/components/Password.svelte.d.ts +4 -4
  68. package/components/Path.svelte +4 -1
  69. package/components/Path.svelte.d.ts +5 -4
  70. package/components/Popover.svelte.d.ts +3 -3
  71. package/components/RadioButton.svelte.d.ts +3 -3
  72. package/components/Required.svelte.d.ts +3 -3
  73. package/components/ResourceEditor.svelte +73 -163
  74. package/components/ResourceEditor.svelte.d.ts +3 -5
  75. package/components/ResourcePicker.svelte +33 -30
  76. package/components/ResourcePicker.svelte.d.ts +3 -3
  77. package/components/ResourceTypePicker.svelte.d.ts +3 -3
  78. package/components/RunChart.svelte.d.ts +3 -3
  79. package/components/RunForm.svelte.d.ts +3 -3
  80. package/components/SchemaEditor.svelte +55 -23
  81. package/components/SchemaEditor.svelte.d.ts +3 -3
  82. package/components/SchemaEditorProperty.svelte.d.ts +3 -3
  83. package/components/SchemaForm.svelte +97 -33
  84. package/components/SchemaForm.svelte.d.ts +8 -4
  85. package/components/SchemaModal.svelte.d.ts +4 -4
  86. package/components/SchemaViewer.svelte.d.ts +3 -3
  87. package/components/ScriptBuilder.svelte +64 -66
  88. package/components/ScriptBuilder.svelte.d.ts +3 -3
  89. package/components/ScriptEditor.svelte +26 -28
  90. package/components/ScriptEditor.svelte.d.ts +4 -3
  91. package/components/ScriptPicker.svelte +28 -38
  92. package/components/ScriptPicker.svelte.d.ts +4 -3
  93. package/components/ScriptSchema.svelte +1 -1
  94. package/components/ScriptSchema.svelte.d.ts +3 -3
  95. package/components/SearchItems.svelte +29 -0
  96. package/components/SearchItems.svelte.d.ts +23 -0
  97. package/components/ShareModal.svelte.d.ts +3 -3
  98. package/components/SharedBadge.svelte +4 -2
  99. package/components/SharedBadge.svelte.d.ts +3 -3
  100. package/components/SimpleEditor.svelte +33 -7
  101. package/components/SimpleEditor.svelte.d.ts +4 -4
  102. package/components/Star.svelte +42 -0
  103. package/components/Star.svelte.d.ts +19 -0
  104. package/components/StringTypeNarrowing.svelte.d.ts +3 -3
  105. package/components/SuperadminSettings.svelte +18 -15
  106. package/components/SuperadminSettings.svelte.d.ts +3 -3
  107. package/components/TableCustom.svelte +1 -1
  108. package/components/TableCustom.svelte.d.ts +3 -3
  109. package/components/TableSimple.svelte.d.ts +3 -3
  110. package/components/TestJobLoader.svelte +41 -24
  111. package/components/TestJobLoader.svelte.d.ts +9 -3
  112. package/components/Toggle.svelte.d.ts +3 -3
  113. package/components/Tooltip.svelte.d.ts +3 -3
  114. package/components/UserSettings.svelte.d.ts +3 -3
  115. package/components/VariableEditor.svelte +71 -32
  116. package/components/VariableEditor.svelte.d.ts +5 -3
  117. package/components/apps/CreateApp.svelte +65 -0
  118. package/components/apps/CreateApp.svelte.d.ts +14 -0
  119. package/components/apps/components/DisplayComponent.svelte +23 -0
  120. package/components/apps/components/DisplayComponent.svelte.d.ts +19 -0
  121. package/components/apps/components/buttons/AppButton.svelte +42 -0
  122. package/components/apps/components/buttons/AppButton.svelte.d.ts +25 -0
  123. package/components/apps/components/dataDisplay/AppBarChart.svelte +18 -0
  124. package/components/apps/components/dataDisplay/AppBarChart.svelte.d.ts +23 -0
  125. package/components/apps/components/dataDisplay/AppPieChart.svelte +22 -0
  126. package/components/apps/components/dataDisplay/AppPieChart.svelte.d.ts +23 -0
  127. package/components/apps/components/dataDisplay/AppTable.svelte +135 -0
  128. package/components/apps/components/dataDisplay/AppTable.svelte.d.ts +27 -0
  129. package/components/apps/components/dataDisplay/AppText.svelte +15 -0
  130. package/components/apps/components/dataDisplay/AppText.svelte.d.ts +21 -0
  131. package/components/apps/components/helpers/AlignWrapper.svelte +29 -0
  132. package/components/apps/components/helpers/AlignWrapper.svelte.d.ts +19 -0
  133. package/components/apps/components/helpers/DebouncedInput.svelte +16 -0
  134. package/components/apps/components/helpers/DebouncedInput.svelte.d.ts +19 -0
  135. package/components/apps/components/helpers/InputValue.svelte +37 -0
  136. package/components/apps/components/helpers/InputValue.svelte.d.ts +18 -0
  137. package/components/apps/components/helpers/RunnableComponent.svelte +182 -0
  138. package/components/apps/components/helpers/RunnableComponent.svelte.d.ts +28 -0
  139. package/components/apps/components/index.d.ts +22 -0
  140. package/components/apps/components/index.js +42 -0
  141. package/components/apps/components/selectInputs/AppCheckbox.svelte +26 -0
  142. package/components/apps/components/selectInputs/AppCheckbox.svelte.d.ts +22 -0
  143. package/components/apps/editor/AppEditor.svelte +105 -0
  144. package/components/apps/editor/AppEditor.svelte.d.ts +19 -0
  145. package/components/apps/editor/AppEditorHeader.svelte +75 -0
  146. package/components/apps/editor/AppEditorHeader.svelte.d.ts +19 -0
  147. package/components/apps/editor/ComponentEditor.svelte +64 -0
  148. package/components/apps/editor/ComponentEditor.svelte.d.ts +18 -0
  149. package/components/apps/editor/GridEditor.svelte +45 -0
  150. package/components/apps/editor/GridEditor.svelte.d.ts +14 -0
  151. package/components/apps/editor/componentsPanel/ComponentList.svelte +92 -0
  152. package/components/apps/editor/componentsPanel/ComponentList.svelte.d.ts +14 -0
  153. package/components/apps/editor/componentsPanel/componentDefaultProps.d.ts +7 -0
  154. package/components/apps/editor/componentsPanel/componentDefaultProps.js +9 -0
  155. package/components/apps/editor/componentsPanel/componentStaticValues.d.ts +4 -0
  156. package/components/apps/editor/componentsPanel/componentStaticValues.js +6 -0
  157. package/components/apps/editor/componentsPanel/data.d.ts +3 -0
  158. package/components/apps/editor/componentsPanel/data.js +158 -0
  159. package/components/apps/editor/componentsPanel/store.d.ts +9 -0
  160. package/components/apps/editor/componentsPanel/store.js +16 -0
  161. package/components/apps/editor/contextPanel/ComponentOutputViewer.svelte +22 -0
  162. package/components/apps/editor/contextPanel/ComponentOutputViewer.svelte.d.ts +19 -0
  163. package/components/apps/editor/contextPanel/ContextPanel.svelte +184 -0
  164. package/components/apps/editor/contextPanel/ContextPanel.svelte.d.ts +16 -0
  165. package/components/apps/editor/contextPanel/InlineScriptCreationPanel.svelte +29 -0
  166. package/components/apps/editor/contextPanel/InlineScriptCreationPanel.svelte.d.ts +16 -0
  167. package/components/apps/editor/settingsPanel/ComponentPanel.svelte +196 -0
  168. package/components/apps/editor/settingsPanel/ComponentPanel.svelte.d.ts +18 -0
  169. package/components/apps/editor/settingsPanel/DynamicInputEditor.svelte +64 -0
  170. package/components/apps/editor/settingsPanel/DynamicInputEditor.svelte.d.ts +17 -0
  171. package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte +11 -0
  172. package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte.d.ts +18 -0
  173. package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte +99 -0
  174. package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte.d.ts +20 -0
  175. package/components/apps/editor/settingsPanel/PickFlow.svelte +37 -0
  176. package/components/apps/editor/settingsPanel/PickFlow.svelte.d.ts +16 -0
  177. package/components/apps/editor/settingsPanel/PickInlineScript.svelte +38 -0
  178. package/components/apps/editor/settingsPanel/PickInlineScript.svelte.d.ts +20 -0
  179. package/components/apps/editor/settingsPanel/SectionPanel.svelte +70 -0
  180. package/components/apps/editor/settingsPanel/SectionPanel.svelte.d.ts +19 -0
  181. package/components/apps/editor/settingsPanel/StaticInputEditor.svelte +29 -0
  182. package/components/apps/editor/settingsPanel/StaticInputEditor.svelte.d.ts +18 -0
  183. package/components/apps/editor/settingsPanel/TableActions.svelte +107 -0
  184. package/components/apps/editor/settingsPanel/TableActions.svelte.d.ts +19 -0
  185. package/components/apps/editor/settingsPanel/UserInputEditor.svelte +2 -0
  186. package/components/apps/editor/settingsPanel/UserInputEditor.svelte.d.ts +14 -0
  187. package/components/apps/editor/settingsPanel/common/PanelSection.svelte +11 -0
  188. package/components/apps/editor/settingsPanel/common/PanelSection.svelte.d.ts +19 -0
  189. package/components/apps/gridUtils.d.ts +11 -0
  190. package/components/apps/gridUtils.js +24 -0
  191. package/components/apps/rx.d.ts +27 -0
  192. package/components/apps/rx.js +87 -0
  193. package/components/apps/types.d.ts +120 -0
  194. package/components/apps/types.js +1 -0
  195. package/components/apps/utils.d.ts +36 -0
  196. package/components/apps/utils.js +96 -0
  197. package/components/common/actionRow/ActionRow.svelte.d.ts +3 -3
  198. package/components/common/alert/Alert.svelte +29 -7
  199. package/components/common/alert/Alert.svelte.d.ts +4 -3
  200. package/components/common/alert/model.d.ts +1 -1
  201. package/components/common/badge/Badge.svelte +3 -7
  202. package/components/common/badge/Badge.svelte.d.ts +6 -4
  203. package/components/common/badge/model.d.ts +2 -2
  204. package/components/common/breadcrumb/Breadcrumb.svelte.d.ts +3 -3
  205. package/components/common/button/Button.svelte +24 -6
  206. package/components/common/button/Button.svelte.d.ts +6 -4
  207. package/components/common/button/ButtonPopup.svelte +3 -1
  208. package/components/common/button/ButtonPopup.svelte.d.ts +5 -4
  209. package/components/common/button/ButtonPopupItem.svelte.d.ts +3 -3
  210. package/components/common/button/model.d.ts +2 -1
  211. package/components/common/button/model.js +2 -1
  212. package/components/common/confirmationModal/ConfirmationModal.svelte.d.ts +3 -3
  213. package/components/common/confirmationModal/UnsavedConfirmationModal.svelte.d.ts +3 -3
  214. package/components/common/drawer/Drawer.svelte +5 -1
  215. package/components/common/drawer/Drawer.svelte.d.ts +3 -3
  216. package/components/common/drawer/DrawerContent.svelte +11 -3
  217. package/components/common/drawer/DrawerContent.svelte.d.ts +5 -3
  218. package/components/common/languageIcons/LanguageIcon.svelte +6 -4
  219. package/components/common/languageIcons/LanguageIcon.svelte.d.ts +4 -4
  220. package/components/common/menu/Menu.svelte +7 -5
  221. package/components/common/menu/Menu.svelte.d.ts +7 -6
  222. package/components/common/menu/MenuItem.svelte +1 -0
  223. package/components/common/popup/Popup.svelte.d.ts +3 -3
  224. package/components/common/skeleton/Skeleton.svelte.d.ts +3 -3
  225. package/components/common/skeleton/SkeletonElement.svelte.d.ts +3 -3
  226. package/components/common/skeleton/model.d.ts +4 -4
  227. package/components/common/table/AppRow.svelte +61 -0
  228. package/components/common/table/AppRow.svelte.d.ts +23 -0
  229. package/components/common/table/FlowRow.svelte +136 -0
  230. package/components/common/table/FlowRow.svelte.d.ts +25 -0
  231. package/components/common/table/LanguageBadge.svelte +32 -0
  232. package/components/common/table/LanguageBadge.svelte.d.ts +24 -0
  233. package/components/common/table/Row.svelte +47 -0
  234. package/components/common/table/Row.svelte.d.ts +27 -0
  235. package/components/common/table/RowIcon.svelte +23 -0
  236. package/components/common/table/RowIcon.svelte.d.ts +16 -0
  237. package/components/common/table/ScriptRow.svelte +147 -0
  238. package/components/common/table/ScriptRow.svelte.d.ts +25 -0
  239. package/components/common/table/Table.svelte +9 -0
  240. package/components/common/table/Table.svelte.d.ts +23 -0
  241. package/components/common/tabs/Tab.svelte +15 -4
  242. package/components/common/tabs/Tab.svelte.d.ts +5 -3
  243. package/components/common/tabs/TabContent.svelte.d.ts +3 -3
  244. package/components/common/tabs/Tabs.svelte +5 -1
  245. package/components/common/tabs/Tabs.svelte.d.ts +4 -4
  246. package/components/common/toggleButton/ToggleButton.svelte +12 -9
  247. package/components/common/toggleButton/ToggleButton.svelte.d.ts +6 -4
  248. package/components/common/toggleButton/ToggleButtonGroup.svelte +12 -19
  249. package/components/common/toggleButton/ToggleButtonGroup.svelte.d.ts +10 -8
  250. package/components/flows/CreateActionsFlow.svelte +66 -0
  251. package/components/flows/CreateActionsFlow.svelte.d.ts +14 -0
  252. package/components/flows/FlowEditor.svelte +22 -5
  253. package/components/flows/FlowEditor.svelte.d.ts +4 -3
  254. package/components/flows/FlowProgressBar.svelte.d.ts +3 -3
  255. package/components/flows/common/FlowCard.svelte.d.ts +3 -3
  256. package/components/flows/common/FlowCardHeader.svelte +3 -1
  257. package/components/flows/common/FlowCardHeader.svelte.d.ts +3 -3
  258. package/components/flows/content/CapturePayload.svelte.d.ts +3 -3
  259. package/components/flows/content/DynamicInputHelpBox.svelte +2 -32
  260. package/components/flows/content/DynamicInputHelpBox.svelte.d.ts +4 -6
  261. package/components/flows/content/FlowBranchAllWrapper.svelte.d.ts +3 -3
  262. package/components/flows/content/FlowBranchOneWrapper.svelte +3 -2
  263. package/components/flows/content/FlowBranchOneWrapper.svelte.d.ts +3 -3
  264. package/components/flows/content/FlowBranchesWrapper.svelte +2 -2
  265. package/components/flows/content/FlowBranchesWrapper.svelte.d.ts +3 -3
  266. package/components/flows/content/FlowEditorPanel.svelte +2 -0
  267. package/components/flows/content/FlowEditorPanel.svelte.d.ts +3 -3
  268. package/components/flows/content/FlowFailureModule.svelte.d.ts +3 -3
  269. package/components/flows/content/FlowInput.svelte +9 -12
  270. package/components/flows/content/FlowInput.svelte.d.ts +3 -3
  271. package/components/flows/content/FlowInputs.svelte +119 -140
  272. package/components/flows/content/FlowInputs.svelte.d.ts +4 -7
  273. package/components/flows/content/FlowLoop.svelte +3 -2
  274. package/components/flows/content/FlowLoop.svelte.d.ts +3 -3
  275. package/components/flows/content/FlowModuleComponent.svelte +49 -45
  276. package/components/flows/content/FlowModuleComponent.svelte.d.ts +3 -3
  277. package/components/flows/content/FlowModuleEarlyStop.svelte +3 -2
  278. package/components/flows/content/FlowModuleEarlyStop.svelte.d.ts +3 -3
  279. package/components/flows/content/FlowModuleHeader.svelte +6 -3
  280. package/components/flows/content/FlowModuleHeader.svelte.d.ts +3 -3
  281. package/components/flows/content/FlowModuleScript.svelte.d.ts +3 -3
  282. package/components/flows/content/FlowModuleSuspend.svelte +9 -3
  283. package/components/flows/content/FlowModuleSuspend.svelte.d.ts +3 -3
  284. package/components/flows/content/FlowModuleWrapper.svelte +0 -22
  285. package/components/flows/content/FlowModuleWrapper.svelte.d.ts +3 -3
  286. package/components/flows/content/FlowRetries.svelte.d.ts +3 -3
  287. package/components/flows/content/FlowSchedules.svelte.d.ts +3 -3
  288. package/components/flows/content/FlowSettings.svelte +89 -92
  289. package/components/flows/content/FlowSettings.svelte.d.ts +3 -3
  290. package/components/flows/content/RemoveStepConfirmationModal.svelte.d.ts +3 -3
  291. package/components/flows/flowState.d.ts +2 -2
  292. package/components/flows/flowStateUtils.d.ts +1 -0
  293. package/components/flows/flowStateUtils.js +13 -2
  294. package/components/flows/flowStore.d.ts +1 -1
  295. package/components/flows/flowStore.js +1 -1
  296. package/components/flows/header/FlowImportExportMenu.svelte +9 -23
  297. package/components/flows/header/FlowImportExportMenu.svelte.d.ts +3 -3
  298. package/components/flows/header/FlowPreviewButtons.svelte +20 -16
  299. package/components/flows/header/FlowPreviewButtons.svelte.d.ts +3 -3
  300. package/components/flows/map/FlowBranchAllMap.svelte +47 -37
  301. package/components/flows/map/FlowBranchAllMap.svelte.d.ts +3 -3
  302. package/components/flows/map/FlowBranchOneMap.svelte +50 -42
  303. package/components/flows/map/FlowBranchOneMap.svelte.d.ts +3 -3
  304. package/components/flows/map/FlowErrorHandlerItem.svelte +5 -3
  305. package/components/flows/map/FlowErrorHandlerItem.svelte.d.ts +3 -3
  306. package/components/flows/map/FlowInputsItem.svelte +3 -2
  307. package/components/flows/map/FlowInputsItem.svelte.d.ts +3 -3
  308. package/components/flows/map/FlowModuleSchemaItem.svelte +26 -31
  309. package/components/flows/map/FlowModuleSchemaItem.svelte.d.ts +5 -5
  310. package/components/flows/map/FlowModuleSchemaMap.svelte +50 -92
  311. package/components/flows/map/FlowModuleSchemaMap.svelte.d.ts +3 -4
  312. package/components/flows/map/FlowSettingsItem.svelte +8 -7
  313. package/components/flows/map/FlowSettingsItem.svelte.d.ts +3 -3
  314. package/components/flows/map/InsertModuleButton.svelte +62 -8
  315. package/components/flows/map/InsertModuleButton.svelte.d.ts +4 -4
  316. package/components/flows/map/MapItem.svelte +30 -16
  317. package/components/flows/map/MapItem.svelte.d.ts +4 -6
  318. package/components/flows/pickers/FlowScriptPicker.svelte +11 -4
  319. package/components/flows/pickers/FlowScriptPicker.svelte.d.ts +8 -6
  320. package/components/flows/pickers/PickHubScript.svelte +74 -29
  321. package/components/flows/pickers/PickHubScript.svelte.d.ts +5 -6
  322. package/components/flows/pickers/PickScript.svelte +16 -9
  323. package/components/flows/pickers/PickScript.svelte.d.ts +3 -4
  324. package/components/flows/pickers/WorkspaceScriptPicker.svelte +53 -0
  325. package/components/flows/pickers/WorkspaceScriptPicker.svelte.d.ts +19 -0
  326. package/components/flows/pickers/model.d.ts +5 -3
  327. package/components/flows/previousResults.d.ts +2 -2
  328. package/components/flows/previousResults.js +5 -5
  329. package/components/flows/propPicker/PropPickerWrapper.svelte +2 -2
  330. package/components/flows/propPicker/PropPickerWrapper.svelte.d.ts +7 -7
  331. package/components/flows/scheduleUtils.d.ts +1 -1
  332. package/components/flows/scheduleUtils.js +1 -1
  333. package/components/flows/types.d.ts +1 -1
  334. package/components/flows/utils.d.ts +1 -1
  335. package/components/flows/utils.js +4 -9
  336. package/components/graph/FlowGraph.svelte +75 -34
  337. package/components/graph/FlowGraph.svelte.d.ts +7 -4
  338. package/components/graph/model.d.ts +7 -6
  339. package/components/icons/AirtableIcon.svelte.d.ts +3 -3
  340. package/components/icons/DbIcon.svelte.d.ts +3 -3
  341. package/components/icons/DiscordIcon.svelte.d.ts +3 -3
  342. package/components/icons/GCloudIcon.svelte.d.ts +3 -3
  343. package/components/icons/GItlabIcon.svelte.d.ts +3 -3
  344. package/components/icons/GSheetsIcon.svelte.d.ts +3 -3
  345. package/components/icons/GcalIcon.svelte.d.ts +3 -3
  346. package/components/icons/GdriveIcon.svelte.d.ts +3 -3
  347. package/components/icons/GithubIcon.svelte.d.ts +3 -3
  348. package/components/icons/GmailIcon.svelte.d.ts +3 -3
  349. package/components/icons/HatIcon.svelte.d.ts +3 -3
  350. package/components/icons/HttpIcon.svelte.d.ts +3 -3
  351. package/components/icons/Mail.svelte.d.ts +3 -3
  352. package/components/icons/MailchimpIcon.svelte +18 -0
  353. package/components/icons/MailchimpIcon.svelte.d.ts +17 -0
  354. package/components/icons/MastodonIcon.svelte.d.ts +3 -3
  355. package/components/icons/MatrixIcon.svelte.d.ts +3 -3
  356. package/components/icons/Mysql.svelte.d.ts +3 -3
  357. package/components/icons/PostgresIcon.svelte.d.ts +3 -3
  358. package/components/icons/S3Icon.svelte.d.ts +3 -3
  359. package/components/icons/SendgridIcon.svelte +66 -0
  360. package/components/icons/SendgridIcon.svelte.d.ts +17 -0
  361. package/components/icons/Slack.svelte.d.ts +3 -3
  362. package/components/icons/TogglIcon.svelte.d.ts +3 -3
  363. package/components/icons/WindmillIcon.svelte.d.ts +3 -3
  364. package/components/icons/index.d.ts +48 -0
  365. package/components/icons/index.js +48 -0
  366. package/components/jobs/JobDetail.svelte +2 -2
  367. package/components/jobs/JobDetail.svelte.d.ts +3 -3
  368. package/components/preview/FlowPreviewStatus.svelte.d.ts +3 -3
  369. package/components/progressBar/ProgressBar.svelte.d.ts +3 -3
  370. package/components/progressBar/ProgressBarGeneralPart.svelte.d.ts +3 -3
  371. package/components/progressBar/ProgressBarLoopAccessor.svelte.d.ts +3 -3
  372. package/components/progressBar/ProgressBarLoopPart.svelte.d.ts +3 -3
  373. package/components/progressBar/model.d.ts +9 -9
  374. package/components/propertyPicker/ObjectViewer.svelte +34 -9
  375. package/components/propertyPicker/ObjectViewer.svelte.d.ts +4 -3
  376. package/components/propertyPicker/PropPicker.svelte +118 -110
  377. package/components/propertyPicker/PropPicker.svelte.d.ts +3 -3
  378. package/components/propertyPicker/PropPickerResult.svelte +0 -1
  379. package/components/propertyPicker/PropPickerResult.svelte.d.ts +3 -3
  380. package/components/scriptEditor/LogPanel.svelte +4 -4
  381. package/components/scriptEditor/LogPanel.svelte.d.ts +3 -3
  382. package/components/scripts/{CreateActions.svelte → CreateActionsScript.svelte} +7 -46
  383. package/components/scripts/CreateActionsScript.svelte.d.ts +14 -0
  384. package/components/sidebar/MenuLink.svelte +7 -4
  385. package/components/sidebar/MenuLink.svelte.d.ts +4 -3
  386. package/components/sidebar/SidebarContent.svelte +25 -18
  387. package/components/sidebar/SidebarContent.svelte.d.ts +7 -3
  388. package/components/sidebar/UserMenu.svelte +1 -1
  389. package/components/sidebar/UserMenu.svelte.d.ts +3 -3
  390. package/components/sidebar/WorkspaceMenu.svelte +3 -3
  391. package/components/sidebar/WorkspaceMenu.svelte.d.ts +3 -3
  392. package/components/splitPanes/SplitPanesWrapper.svelte.d.ts +3 -3
  393. package/editorUtils.d.ts +1 -1
  394. package/editorUtils.js +2 -2
  395. package/gen/core/ApiRequestOptions.d.ts +1 -1
  396. package/gen/core/ApiResult.d.ts +1 -1
  397. package/gen/core/OpenAPI.d.ts +3 -3
  398. package/gen/core/OpenAPI.js +1 -1
  399. package/gen/index.d.ts +2 -0
  400. package/gen/index.js +1 -0
  401. package/gen/models/AppWithLastVersion.d.ts +12 -12
  402. package/gen/models/AuditLog.d.ts +1 -1
  403. package/gen/models/BranchAll.d.ts +1 -1
  404. package/gen/models/BranchOne.d.ts +1 -1
  405. package/gen/models/CompletedJob.d.ts +1 -1
  406. package/gen/models/ContextualVariable.d.ts +1 -1
  407. package/gen/models/CreateResource.d.ts +1 -2
  408. package/gen/models/CreateVariable.d.ts +1 -1
  409. package/gen/models/CreateWorkspace.d.ts +1 -1
  410. package/gen/models/EditResource.d.ts +1 -1
  411. package/gen/models/EditResourceType.d.ts +1 -1
  412. package/gen/models/EditSchedule.d.ts +1 -1
  413. package/gen/models/EditVariable.d.ts +1 -1
  414. package/gen/models/EditWorkspaceUser.d.ts +1 -1
  415. package/gen/models/Flow.d.ts +1 -1
  416. package/gen/models/FlowMetadata.d.ts +2 -1
  417. package/gen/models/FlowModule.d.ts +1 -1
  418. package/gen/models/FlowModuleValue.d.ts +1 -1
  419. package/gen/models/FlowPreview.d.ts +1 -1
  420. package/gen/models/FlowStatus.d.ts +1 -1
  421. package/gen/models/FlowStatusModule.d.ts +1 -1
  422. package/gen/models/FlowValue.d.ts +1 -1
  423. package/gen/models/ForloopFlow.d.ts +1 -1
  424. package/gen/models/GlobalUserInfo.d.ts +1 -1
  425. package/gen/models/Group.d.ts +1 -1
  426. package/gen/models/Identity.d.ts +1 -1
  427. package/gen/models/InputTransform.d.ts +1 -1
  428. package/gen/models/JavascriptTransform.d.ts +1 -1
  429. package/gen/models/Job.d.ts +1 -1
  430. package/gen/models/ListableApp.d.ts +10 -8
  431. package/gen/models/ListableResource.d.ts +13 -0
  432. package/gen/models/ListableResource.js +4 -0
  433. package/gen/models/ListableVariable.d.ts +4 -1
  434. package/gen/models/Login.d.ts +1 -1
  435. package/gen/models/MainArgSignature.d.ts +1 -1
  436. package/gen/models/NewSchedule.d.ts +1 -1
  437. package/gen/models/NewToken.d.ts +1 -1
  438. package/gen/models/NewUser.d.ts +1 -1
  439. package/gen/models/OpenFlow.d.ts +1 -1
  440. package/gen/models/OpenFlowWPath.d.ts +1 -1
  441. package/gen/models/PathScript.d.ts +1 -1
  442. package/gen/models/Policy.d.ts +1 -1
  443. package/gen/models/Preview.d.ts +1 -1
  444. package/gen/models/QueuedJob.d.ts +1 -1
  445. package/gen/models/RawScript.d.ts +2 -1
  446. package/gen/models/Resource.d.ts +1 -1
  447. package/gen/models/ResourceType.d.ts +1 -1
  448. package/gen/models/Retry.d.ts +1 -1
  449. package/gen/models/Schedule.d.ts +1 -1
  450. package/gen/models/Script.d.ts +2 -1
  451. package/gen/models/ScriptArgs.d.ts +1 -1
  452. package/gen/models/SlackToken.d.ts +1 -1
  453. package/gen/models/StaticTransform.d.ts +1 -1
  454. package/gen/models/TokenResponse.d.ts +1 -1
  455. package/gen/models/TruncatedToken.d.ts +1 -1
  456. package/gen/models/Usage.d.ts +1 -1
  457. package/gen/models/User.d.ts +1 -1
  458. package/gen/models/UserWorkspaceList.d.ts +1 -1
  459. package/gen/models/WorkerPing.d.ts +1 -1
  460. package/gen/models/Workspace.d.ts +1 -1
  461. package/gen/models/WorkspaceInvite.d.ts +1 -1
  462. package/gen/services/AppService.d.ts +101 -1
  463. package/gen/services/AppService.js +88 -1
  464. package/gen/services/FavoriteService.d.ts +27 -0
  465. package/gen/services/FavoriteService.js +36 -0
  466. package/gen/services/FlowService.d.ts +7 -91
  467. package/gen/services/FlowService.js +2 -73
  468. package/gen/services/JobService.d.ts +15 -0
  469. package/gen/services/JobService.js +19 -0
  470. package/gen/services/ResourceService.d.ts +3 -2
  471. package/gen/services/ResourceService.js +1 -1
  472. package/gen/services/ScheduleService.d.ts +1 -1
  473. package/gen/services/ScheduleService.js +1 -1
  474. package/gen/services/ScriptService.d.ts +7 -1
  475. package/gen/services/ScriptService.js +2 -1
  476. package/package.json +80 -19
  477. package/script_helpers.d.ts +3 -1
  478. package/script_helpers.js +73 -25
  479. package/stateMachine.d.ts +4 -4
  480. package/stores.d.ts +2 -0
  481. package/stores.js +1 -0
  482. package/utils.d.ts +4 -2
  483. package/utils.js +20 -3
  484. package/components/FlowModulesViewer.svelte +0 -191
  485. package/components/FlowModulesViewer.svelte.d.ts +0 -18
  486. package/components/landing/FlowGettingStarted.svelte +0 -50
  487. package/components/landing/FlowGettingStarted.svelte.d.ts +0 -19
  488. package/components/landing/FlowLandingBox.svelte +0 -39
  489. package/components/landing/FlowLandingBox.svelte.d.ts +0 -17
  490. package/components/landing/RessourceGettingStarted.svelte +0 -21
  491. package/components/landing/RessourceGettingStarted.svelte.d.ts +0 -19
  492. package/components/landing/ScriptBox.svelte +0 -52
  493. package/components/landing/ScriptBox.svelte.d.ts +0 -17
  494. package/components/landing/ScriptGettingStarted.svelte +0 -48
  495. package/components/landing/ScriptGettingStarted.svelte.d.ts +0 -19
  496. package/components/scripts/CreateActions.svelte.d.ts +0 -14
package/common.d.ts CHANGED
@@ -1,6 +1,7 @@
1
- export declare type OwnerKind = 'group' | 'user';
2
- export declare type ActionKind = 'Create' | 'Update' | 'Delete' | 'Execute';
3
- export declare type SupportedLanguage = 'deno' | 'python3' | 'go' | 'bash';
1
+ import type { Script } from "./gen";
2
+ export type OwnerKind = 'group' | 'user';
3
+ export type ActionKind = 'Create' | 'Update' | 'Delete' | 'Execute';
4
+ export type SupportedLanguage = Script.language;
4
5
  export interface SchemaProperty {
5
6
  type: string | undefined;
6
7
  description: string;
@@ -17,7 +18,7 @@ export interface SchemaProperty {
17
18
  [name: string]: SchemaProperty;
18
19
  };
19
20
  }
20
- export declare type Schema = {
21
+ export type Schema = {
21
22
  $schema: string;
22
23
  type: string;
23
24
  properties: {
@@ -25,7 +26,7 @@ export declare type Schema = {
25
26
  };
26
27
  required: string[];
27
28
  };
28
- export declare type Meta = {
29
+ export type Meta = {
29
30
  ownerKind: OwnerKind;
30
31
  owner: string;
31
32
  name: string;
@@ -0,0 +1,21 @@
1
+ <script>import { ResourceService } from '../gen';
2
+ import { workspaceStore } from '../stores';
3
+ import { emptySchema } from '../utils';
4
+ import SchemaForm from './SchemaForm.svelte';
5
+ export let resource_type;
6
+ export let args = {};
7
+ export let password;
8
+ let schema = emptySchema();
9
+ async function loadSchema() {
10
+ const rt = await ResourceService.getResourceType({
11
+ workspace: $workspaceStore,
12
+ path: resource_type
13
+ });
14
+ schema = rt.schema;
15
+ }
16
+ $: {
17
+ $workspaceStore && loadSchema();
18
+ }
19
+ </script>
20
+
21
+ <SchemaForm {password} isValid {schema} bind:args />
@@ -0,0 +1,18 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ declare const __propDef: {
3
+ props: {
4
+ resource_type: string;
5
+ args?: Record<string, any> | undefined;
6
+ password: string;
7
+ };
8
+ events: {
9
+ [evt: string]: CustomEvent<any>;
10
+ };
11
+ slots: {};
12
+ };
13
+ export type ApiConnectFormProps = typeof __propDef.props;
14
+ export type ApiConnectFormEvents = typeof __propDef.events;
15
+ export type ApiConnectFormSlots = typeof __propDef.slots;
16
+ export default class ApiConnectForm extends SvelteComponentTyped<ApiConnectFormProps, ApiConnectFormEvents, ApiConnectFormSlots> {
17
+ }
18
+ export {};
@@ -2,42 +2,68 @@
2
2
  const apiTokenApps = {
3
3
  airtable: {
4
4
  img: 'airtable_connect.png',
5
- instructions: 'Click on the top-right avatar -> Account -> Api'
5
+ instructions: ['Click on the top-right avatar', 'Click on Account', 'Find "Api"']
6
6
  },
7
7
  discord_webhook: {
8
8
  img: 'discord_webhook.png',
9
- instructions: 'Server Settings -> Integration -> Webhooks',
9
+ instructions: ['Click on Server Settings', 'Click on Integration', 'Find "Webhooks"'],
10
10
  key: 'webhook_url'
11
11
  },
12
12
  toggl: {
13
13
  img: 'toggl_connect.png',
14
- instructions: 'Go to https://track.toggl.com/profile -> API Token'
14
+ instructions: [
15
+ 'Go to <a href="https://track.toggl.com/profile" target="_blank" rel=”noopener noreferrer”>https://track.toggl.com/profile</a>',
16
+ 'Find "API Token"'
17
+ ]
18
+ },
19
+ mailchimp: {
20
+ img: 'mailchimp_connect.png',
21
+ instructions: [
22
+ 'Go to <a href="https://admin.mailchimp.com/account/api" target="_blank" rel=”noopener noreferrer”>https://admin.mailchimp.com/account/api</a>',
23
+ 'Find "Your API Keys"'
24
+ ]
25
+ },
26
+ sendgrid: {
27
+ img: 'sendgrid_connect.png',
28
+ instructions: [
29
+ 'Go to <a href="https://app.sendgrid.com/settings/api_keys" target="_blank" rel=”noopener noreferrer”>https://app.sendgrid.com/settings/api_keys</a>',
30
+ 'Create an API key',
31
+ 'Copy your key'
32
+ ]
15
33
  }
16
34
  };
17
35
  </script>
18
36
 
19
- <script>import { oauthStore, userStore, workspaceStore } from '../stores';
37
+ <script>import { oauthStore, workspaceStore } from '../stores';
20
38
  import { faMinus, faPlus } from '@fortawesome/free-solid-svg-icons';
21
39
  import IconedResourceType from './IconedResourceType.svelte';
22
40
  import { OauthService, ResourceService, VariableService } from '../gen';
23
41
  import { page } from '$app/stores';
24
- import { sendUserToast, truncateRev } from '../utils';
42
+ import { emptyString, sendUserToast, truncateRev } from '../utils';
25
43
  import { createEventDispatcher } from 'svelte';
26
44
  import Icon from 'svelte-awesome';
27
- import Password from './Password.svelte';
28
45
  import Path from './Path.svelte';
29
- import { Alert, Button, Drawer } from './common';
46
+ import { Button, Drawer, Skeleton } from './common';
30
47
  import DrawerContent from './common/drawer/DrawerContent.svelte';
48
+ import ApiConnectForm from './ApiConnectForm.svelte';
49
+ import SearchItems from './SearchItems.svelte';
50
+ export let newPageOAuth = false;
51
+ let filter = '';
31
52
  let manual = false;
32
53
  let value = '';
33
54
  let valueToken;
34
- let connects = {};
35
- let connectsManual = [];
36
- let key = 'token';
37
- $: key = apiTokenApps[resource_type]?.key ?? 'token';
55
+ let connects = undefined;
56
+ let connectsManual = undefined;
57
+ let args = {};
58
+ $: key =
59
+ apiTokenApps[resource_type]?.key ??
60
+ (args != undefined
61
+ ? Object.keys(args).filter((x) => ['token', 'password', 'api_key'].includes(x))[0]
62
+ : undefined);
38
63
  let scopes = [];
39
64
  let extra_params = [];
40
65
  let path;
66
+ let description = '';
41
67
  let drawer;
42
68
  let resource_type = '';
43
69
  let step = 1;
@@ -46,15 +72,19 @@ let pathError = '';
46
72
  export async function open(rt) {
47
73
  step = 1;
48
74
  value = '';
75
+ description = '';
49
76
  no_back = false;
50
77
  resource_type = rt ?? '';
51
78
  await loadConnects();
52
- const connect = connects[resource_type];
79
+ const connect = connects?.[resource_type];
53
80
  if (connect) {
54
81
  scopes = connect.scopes;
55
82
  extra_params = Object.entries(connect.extra_params ?? {});
56
83
  }
57
- drawer.openDrawer();
84
+ else {
85
+ manual = true;
86
+ }
87
+ drawer.openDrawer?.();
58
88
  }
59
89
  export function openFromOauth(rt) {
60
90
  resource_type = rt;
@@ -64,19 +94,29 @@ export function openFromOauth(rt) {
64
94
  manual = false;
65
95
  step = 3;
66
96
  no_back = true;
67
- drawer.openDrawer();
97
+ drawer.openDrawer?.();
68
98
  }
69
99
  async function loadConnects() {
70
100
  connects = await OauthService.listOAuthConnects();
71
101
  }
72
102
  async function loadResources() {
103
+ await loadConnects();
73
104
  const availableRts = await ResourceService.listResourceTypeNames({
74
105
  workspace: $workspaceStore
75
106
  });
76
- connectsManual = Object.entries(apiTokenApps).filter(([key, _]) => availableRts.includes(key));
107
+ connectsManual = availableRts
108
+ .filter((x) => !Object.keys(connects ?? {}).includes(x))
109
+ .map((x) => [
110
+ x,
111
+ apiTokenApps[x] ?? {
112
+ instructions: '',
113
+ img: undefined,
114
+ key: undefined
115
+ }
116
+ ]);
77
117
  }
78
118
  async function next() {
79
- if (step < 3 && manual) {
119
+ if (step == 1 && manual) {
80
120
  step += 1;
81
121
  }
82
122
  else if (step == 1 && !manual) {
@@ -85,7 +125,12 @@ async function next() {
85
125
  if (extra_params.length > 0) {
86
126
  extra_params.forEach(([key, value]) => url.searchParams.append(key, value));
87
127
  }
88
- window.location.href = url.toString();
128
+ if (!newPageOAuth) {
129
+ window.location.href = url.toString();
130
+ }
131
+ else {
132
+ window.open(url.toString(), '_blank');
133
+ }
89
134
  }
90
135
  else {
91
136
  let exists = await VariableService.existsVariable({
@@ -114,33 +159,35 @@ async function next() {
114
159
  }
115
160
  }));
116
161
  }
117
- const description = `${manual ? 'Token' : 'OAuth token'} for ${resource_type}`;
118
- await VariableService.createVariable({
119
- workspace: $workspaceStore,
120
- requestBody: {
121
- path,
122
- value,
123
- is_secret: true,
124
- description,
125
- is_oauth: !manual,
126
- account: account
127
- }
128
- });
129
- const resourceValue = {};
130
- resourceValue[key] = `$var:${path}`;
162
+ const resourceValue = args;
163
+ if (!manual || key != undefined) {
164
+ await VariableService.createVariable({
165
+ workspace: $workspaceStore,
166
+ requestBody: {
167
+ path,
168
+ value: manual ? args[key ?? ''] : value,
169
+ is_secret: true,
170
+ description: emptyString(description)
171
+ ? `${manual ? 'Token' : 'OAuth token'} for ${resource_type}`
172
+ : description,
173
+ is_oauth: !manual,
174
+ account: account
175
+ }
176
+ });
177
+ resourceValue[key ?? 'token'] = `$var:${path}`;
178
+ }
131
179
  await ResourceService.createResource({
132
180
  workspace: $workspaceStore,
133
181
  requestBody: {
134
182
  resource_type,
135
183
  path,
136
184
  value: resourceValue,
137
- description,
138
- is_oauth: !manual
185
+ description
139
186
  }
140
187
  });
141
- dispatch('refresh');
188
+ dispatch('refresh', path);
142
189
  sendUserToast(`App token set at resource and variable path: ${path}`);
143
- drawer.closeDrawer();
190
+ drawer.closeDrawer?.();
144
191
  }
145
192
  }
146
193
  async function back() {
@@ -158,188 +205,196 @@ $: isGoogleSignin =
158
205
  resource_type == 'gsheets');
159
206
  $: disabled =
160
207
  (step == 1 && resource_type == '') ||
161
- (step == 2 && value == '') ||
208
+ (step == 2 &&
209
+ value == '' &&
210
+ args['token'] == '' &&
211
+ args['password'] == '' &&
212
+ args['api_key'] == '' &&
213
+ key != undefined) ||
162
214
  (step == 3 && pathError != '');
215
+ let filteredConnects = [];
216
+ let filteredConnectsManual = [];
163
217
  </script>
164
218
 
219
+ <SearchItems
220
+ {filter}
221
+ items={connects ? Object.entries(connects).sort((a, b) => a[0].localeCompare(b[0])) : undefined}
222
+ bind:filteredItems={filteredConnects}
223
+ f={(x) => x[0]}
224
+ />
225
+ <SearchItems
226
+ {filter}
227
+ items={connectsManual?.sort((a, b) => a[0].localeCompare(b[0]))}
228
+ bind:filteredItems={filteredConnectsManual}
229
+ f={(x) => x[0]}
230
+ />
231
+
165
232
  <Drawer
166
233
  bind:this={drawer}
167
234
  on:close={() => {
168
235
  dispatch('close')
169
236
  }}
170
237
  on:open={() => {
171
- loadConnects()
172
238
  loadResources()
173
239
  }}
174
240
  >
175
241
  <DrawerContent title="Connect an API" on:close={drawer.closeDrawer}>
176
242
  {#if step == 1}
177
- {#if resource_type && !connects[resource_type] && !connectsManual.find((x) => x[0] == resource_type)}
178
- <Alert class="mb-4" type="error" title="Resource type not found">
179
- The resource type "{resource_type}" seems to not have an OAuth API integration. You can
180
- still create this resource manually by closing this modal and pressing: "Add a resource".
181
- You can also contribute to windmill and add it as an API integration if relevant.
182
- </Alert>
183
- {/if}
184
- <div class="mb-1 font-semibold text-gray-700">OAuth APIs</div>
185
- <div class="grid sm:grid-cols-2 md:grid-cols-3 gap-x-2 gap-y-1 items-center mb-2">
186
- {#each Object.entries(connects).sort((a, b) => a[0].localeCompare(b[0])) as [key, values]}
187
- <Button
188
- size="sm"
189
- variant="border"
190
- color={key === resource_type ? 'blue' : 'dark'}
191
- btnClasses={key === resource_type ? '!border-2 !bg-blue-50/75' : 'm-[1px]'}
192
- on:click={() => {
193
- manual = false
194
- resource_type = key
195
- scopes = values.scopes
196
- extra_params = Object.entries(values.extra_params ?? {})
243
+ <div class="w-12/12 pb-2 flex flex-row my-1 gap-1">
244
+ <input
245
+ type="text"
246
+ placeholder="Search resource type"
247
+ bind:value={filter}
248
+ class="text-2xl grow"
249
+ />
250
+ </div>
197
251
 
198
- dispatch('click')
199
- }}
200
- >
201
- <IconedResourceType name={key} after={true} width="20px" height="20px" />
202
- </Button>
203
- {/each}
252
+ <h2 class="mb-2">OAuth APIs</h2>
253
+ <div class="grid sm:grid-cols-2 md:grid-cols-3 gap-x-2 gap-y-1 items-center mb-2">
254
+ {#if filteredConnects}
255
+ {#each filteredConnects as [key, values]}
256
+ <Button
257
+ size="sm"
258
+ variant="border"
259
+ color={key === resource_type ? 'blue' : 'dark'}
260
+ btnClasses={key === resource_type ? '!border-2 !bg-blue-50/75' : 'm-[1px]'}
261
+ on:click={() => {
262
+ manual = false
263
+ resource_type = key
264
+ scopes = values.scopes
265
+ extra_params = Object.entries(values.extra_params ?? {})
266
+ }}
267
+ >
268
+ <IconedResourceType name={key} after={true} width="20px" height="20px" />
269
+ </Button>
270
+ {/each}
271
+ {:else}
272
+ {#each new Array(3) as _}
273
+ <Skeleton layout={[[2]]} />
274
+ {/each}
275
+ {/if}
204
276
  </div>
205
- <div class="mb-1 font-semibold text-gray-700 mt-6">Scopes</div>
206
- {#if !manual && resource_type != ''}
207
- {#each scopes as v}
208
- <div class="flex flex-row max-w-md mb-2">
209
- <input type="text" bind:value={v} />
277
+ {#if manual == false && resource_type != ''}
278
+ <h3>Scopes</h3>
279
+ {#if !manual && resource_type != ''}
280
+ {#each scopes as v}
281
+ <div class="flex flex-row max-w-md mb-2">
282
+ <input type="text" bind:value={v} />
283
+ <Button
284
+ variant="border"
285
+ color="red"
286
+ size="xs"
287
+ btnClasses="mx-6"
288
+ on:click={() => {
289
+ scopes = scopes.filter((el) => el != v)
290
+ }}
291
+ >
292
+ <Icon data={faMinus} />
293
+ </Button>
294
+ </div>
295
+ {/each}
296
+ <div class="flex items-center mt-1">
210
297
  <Button
211
298
  variant="border"
212
- color="red"
213
- size="xs"
214
- btnClasses="mx-6"
299
+ color="blue"
300
+ size="sm"
301
+ endIcon={{ icon: faPlus }}
215
302
  on:click={() => {
216
- scopes = scopes.filter((el) => el != v)
303
+ scopes = scopes.concat('')
217
304
  }}
218
305
  >
219
- <Icon data={faMinus} />
306
+ Add item
220
307
  </Button>
308
+ <span class="ml-2 text-sm text-gray-500">
309
+ ({(scopes ?? []).length} item{(scopes ?? []).length > 1 ? 's' : ''})
310
+ </span>
221
311
  </div>
222
- {/each}
223
- <div class="flex items-center mt-1">
224
- <Button
225
- variant="border"
226
- color="blue"
227
- size="sm"
228
- endIcon={{ icon: faPlus }}
229
- on:click={() => {
230
- scopes = scopes.concat('')
231
- }}
232
- >
233
- Add item
234
- </Button>
235
- <span class="ml-2 text-sm text-gray-500">
236
- ({(scopes ?? []).length} item{(scopes ?? []).length > 1 ? 's' : ''})
237
- </span>
238
- </div>
239
- {:else}
240
- <p class="italic text-sm">Pick an OAuth API and customize the scopes here</p>
312
+ {/if}
241
313
  {/if}
242
- <div class="mb-1 font-semibold text-gray-700 mt-6">Extra params</div>
243
- {#if !manual && resource_type != ''}
244
- {#each extra_params as [k, v]}
245
- <div class="flex flex-row max-w-md mb-2">
246
- <input type="text" bind:value={k} class="mr-2" />
247
- <input type="text" bind:value={v} />
248
314
 
315
+ <h2 class="mt-8 mb-2">Non OAuth APIs</h2>
316
+ <div class="grid sm:grid-cols-2 md:grid-cols-3 gap-x-2 gap-y-1 items-center mb-2">
317
+ {#if filteredConnectsManual}
318
+ {#each filteredConnectsManual as [key, instructions]}
249
319
  <Button
320
+ size="sm"
250
321
  variant="border"
251
- color="red"
252
- size="xs"
253
- btnClasses="mx-6"
322
+ color={key === resource_type ? 'blue' : 'dark'}
323
+ btnClasses={key === resource_type ? '!border-2 !bg-blue-50/75' : 'm-[1px]'}
254
324
  on:click={() => {
255
- extra_params = extra_params.filter((el) => el[0] != k)
325
+ manual = true
326
+ resource_type = key
327
+ next()
328
+ dispatch('click')
256
329
  }}
257
330
  >
258
- <Icon data={faMinus} />
331
+ <IconedResourceType name={key} after={true} width="20px" height="20px" />
259
332
  </Button>
260
- </div>
261
- {/each}
262
- <div class="flex items-center mt-1">
263
- <Button
264
- variant="border"
265
- color="blue"
266
- size="sm"
267
- endIcon={{ icon: faPlus }}
268
- on:click={() => {
269
- extra_params.push(['', ''])
270
- extra_params = extra_params
271
- }}
272
- >
273
- Add item
274
- </Button>
275
- <span class="ml-2 text-sm text-gray-500">
276
- ({(extra_params ?? []).length} item{(extra_params ?? []).length > 1 ? 's' : ''})
277
- </span>
278
- </div>
279
- {:else}
280
- <p class="italic text-sm">Pick an OAuth API and customize the extra parameters here</p>
281
- {/if}
282
- <div class="mb-1 font-semibold text-gray-700 mt-6">Non OAuth APIs</div>
283
- <div class="grid sm:grid-cols-2 md:grid-cols-3 gap-x-2 gap-y-1 items-center mb-2">
284
- {#each connectsManual as [key, instructions]}
285
- <Button
286
- size="sm"
287
- variant="border"
288
- color={key === resource_type ? 'blue' : 'dark'}
289
- btnClasses={key === resource_type ? '!border-2 !bg-blue-50/75' : 'm-[1px]'}
290
- on:click={() => {
291
- manual = true
292
- resource_type = key
293
- dispatch('click')
294
- }}
295
- >
296
- <IconedResourceType name={key} after={true} width="20px" height="20px" />
297
- </Button>
298
- {/each}
333
+ {/each}
334
+ {:else}
335
+ {#each new Array(9) as _}
336
+ <Skeleton layout={[[2]]} />
337
+ {/each}
338
+ {/if}
299
339
  </div>
300
- {:else if step == 2}
301
- {#if manual}
340
+ {:else if step == 2 && manual}
341
+ <Path
342
+ bind:error={pathError}
343
+ bind:path
344
+ initialPath=""
345
+ namePlaceholder="my_{resource_type}"
346
+ kind="resource"
347
+ />
348
+ <h2 class="mt-4 mb-2">Description</h2>
349
+
350
+ <input type="text" bind:value={description} />
351
+
352
+ <h2 class="mt-4">Value</h2>
353
+ {#if apiTokenApps[resource_type]}
302
354
  <div class="mb-1 font-semibold text-gray-700 mt-6">Instructions</div>
303
- <div>
304
- {apiTokenApps[resource_type].instructions}
355
+ <div class="pl-10">
356
+ <ol class="list-decimal">
357
+ {#each apiTokenApps[resource_type].instructions as step}
358
+ <li>
359
+ {@html step}
360
+ </li>
361
+ {/each}
362
+ </ol>
305
363
  </div>
306
364
  {#if apiTokenApps[resource_type].img}
307
365
  <div class="mt-4">
308
366
  <img alt="connect" src={apiTokenApps[resource_type].img} />
309
367
  </div>
310
368
  {/if}
311
- <div class="mt-4">
312
- <Password bind:password={value} label="Paste token here" />
313
- </div>
314
369
  {/if}
370
+
371
+ <div class="mt-4">
372
+ <ApiConnectForm password={key ?? ''} {resource_type} bind:args />
373
+ </div>
315
374
  {:else}
316
375
  <Path
376
+ initialPath=""
377
+ namePlaceholder="my_{resource_type}"
317
378
  bind:error={pathError}
318
379
  bind:path
319
- initialPath={`u/${$userStore?.username ?? ''}/my_${resource_type}`}
320
380
  kind="resource"
321
381
  />
322
- <ul class="mt-10 bg-white">
323
- <li>
324
- 1. A secret variable containing the token <span class="font-bold"
325
- >{truncateRev(value, 5, '*****')}</span
326
- >
327
- will be stored at
328
- <span class="font-mono">{path}</span>. You can refer to this variable anywhere this token
329
- is required.
330
- </li>
331
- <li class="mt-4">
332
- 2. A resource with a unique token field will be stored at <span class="font-mono"
333
- >{path}</span
334
- >
335
- and refer to the secret variable <span class="font-mono">{path}</span> as its token (using
336
- variable templating
337
- <span class="font-mono">`$var:${path}`</span>). You can refer to this resource anywhere
338
- this token is required. A script can use the resource type
339
- <span class="font-mono">{resource_type}</span> as a type parameter to restrict the kind of
340
- tokens it accepts to this api.
341
- </li>
342
- </ul>
382
+ {#if apiTokenApps[resource_type] || !manual}
383
+ <ul class="mt-10 bg-white">
384
+ <li>
385
+ 1. A secret variable containing the {apiTokenApps[resource_type]?.key ?? 'token'}
386
+ <span class="font-bold">{truncateRev(value, 5, '*****')}</span>
387
+ will be stored a
388
+ <span class="font-mono whitespace-nowrap">{path}</span>.
389
+ </li>
390
+ <li class="mt-4">
391
+ 2. The resource containing that token will be stored at the same path <span
392
+ class="font-mono whitespace-nowrap">{path}</span
393
+ >. The Variable and Resource will be "linked together", they will be deleted and renamed
394
+ together.
395
+ </li></ul
396
+ >
397
+ {/if}
343
398
  {/if}
344
399
  <div slot="submission" class="flex items-center gap-4">
345
400
  {#if step > 1 && !no_back}
@@ -353,10 +408,10 @@ $: disabled =
353
408
  <Button {disabled} on:click={next}>
354
409
  {#if step == 1 && !manual}
355
410
  Connect
356
- {:else if step == 3}
357
- Add resource
358
- {:else}
411
+ {:else if step == 1 && manual}
359
412
  Next
413
+ {:else}
414
+ Save
360
415
  {/if}
361
416
  </Button>
362
417
  {/if}
@@ -1,6 +1,7 @@
1
1
  import { SvelteComponentTyped } from "svelte";
2
2
  declare const __propDef: {
3
3
  props: {
4
+ newPageOAuth?: boolean | undefined;
4
5
  open?: ((rt?: string) => Promise<void>) | undefined;
5
6
  openFromOauth?: ((rt: string) => void) | undefined;
6
7
  };
@@ -12,9 +13,9 @@ declare const __propDef: {
12
13
  };
13
14
  slots: {};
14
15
  };
15
- export declare type AppConnectProps = typeof __propDef.props;
16
- export declare type AppConnectEvents = typeof __propDef.events;
17
- export declare type AppConnectSlots = typeof __propDef.slots;
16
+ export type AppConnectProps = typeof __propDef.props;
17
+ export type AppConnectEvents = typeof __propDef.events;
18
+ export type AppConnectSlots = typeof __propDef.slots;
18
19
  export default class AppConnect extends SvelteComponentTyped<AppConnectProps, AppConnectEvents, AppConnectSlots> {
19
20
  get open(): (rt?: string | undefined) => Promise<void>;
20
21
  get openFromOauth(): (rt: string) => void;
@@ -39,8 +39,8 @@ async function getResource(path) {
39
39
  }}>{value}</button
40
40
  >
41
41
  {:else if typeof value !== 'object'}
42
- {truncate(JSON.stringify(value), 40)}
43
- {#if JSON.stringify(value).length > 40}
42
+ {truncate(JSON.stringify(value), 100)}
43
+ {#if JSON.stringify(value).length > 100}
44
44
  <button
45
45
  class="text-xs text-blue-500"
46
46
  on:click={() => {
@@ -8,9 +8,9 @@ declare const __propDef: {
8
8
  };
9
9
  slots: {};
10
10
  };
11
- export declare type ArgInfoProps = typeof __propDef.props;
12
- export declare type ArgInfoEvents = typeof __propDef.events;
13
- export declare type ArgInfoSlots = typeof __propDef.slots;
11
+ export type ArgInfoProps = typeof __propDef.props;
12
+ export type ArgInfoEvents = typeof __propDef.events;
13
+ export type ArgInfoSlots = typeof __propDef.slots;
14
14
  export default class ArgInfo extends SvelteComponentTyped<ArgInfoProps, ArgInfoEvents, ArgInfoSlots> {
15
15
  }
16
16
  export {};