n8n-editor-ui 1.73.0 → 1.74.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (194) hide show
  1. package/LICENSE.md +5 -3
  2. package/dist/assets/{AnnotationTagsDropdown.ee.vue_vue_type_script_setup_true_lang-DfdMypiE.js → AnnotationTagsDropdown.ee.vue_vue_type_script_setup_true_lang-CRv-7oGl.js} +1 -1
  3. package/dist/assets/AuthView-D4i2WDPk.css +408 -0
  4. package/dist/assets/{AuthView-ns622vck.js → AuthView-DiVCkmJO.js} +7 -7
  5. package/dist/assets/{CanvasChat-CxcfSR2i.js → CanvasChat-BMwaSHw5.js} +30 -29
  6. package/dist/assets/CanvasChat-oFfeuF_m.css +2735 -0
  7. package/dist/assets/{CanvasControls-pos7-QhU.js → CanvasControls-B3S4M5tk.js} +4 -4
  8. package/dist/assets/CanvasControls-DTjEPKS0.css +148 -0
  9. package/dist/assets/{ChangePasswordView-Db0MLvV3.js → ChangePasswordView-DMNxdEvW.js} +3 -3
  10. package/dist/assets/CollectionParameter-Cmdh94LV.js +4 -0
  11. package/dist/assets/{ConcurrentExecutionsHeader-D35VlIVA.js → ConcurrentExecutionsHeader-Cz1SdK5W.js} +11 -11
  12. package/dist/assets/ConcurrentExecutionsHeader-DETjSHgm.css +438 -0
  13. package/dist/assets/{CredentialsView-BV4NcyAR.js → CredentialsView-BdvSQS_L.js} +42 -14
  14. package/dist/assets/CredentialsView-DRWQyccW.css +294 -0
  15. package/dist/assets/ErrorView-DPS9icAS.css +144 -0
  16. package/dist/assets/{ErrorView-ClpY9Omy.js → ErrorView-pJv59Fp1.js} +4 -4
  17. package/dist/assets/ExecutionsView-C0P3HAAt.css +710 -0
  18. package/dist/assets/{ExecutionsView-CqWfQ-OS.js → ExecutionsView-DizYSIgZ.js} +35 -35
  19. package/dist/assets/{FileSaver.min-gIFS8BdZ.js → FileSaver.min-CYFZIcxk.js} +1 -1
  20. package/dist/assets/{FixedCollectionParameter-x6YwFDm3.js → FixedCollectionParameter-C-azlgUa.js} +1 -1
  21. package/dist/assets/{FixedCollectionParameter-YwQknIIC.css → FixedCollectionParameter-DvdC-9QQ.css} +122 -0
  22. package/dist/assets/{ForgotMyPasswordView-BgI4UOal.js → ForgotMyPasswordView-DLg1bxUi.js} +3 -3
  23. package/dist/assets/Logo-1eGohTKw.css +160 -0
  24. package/dist/assets/{Logo-DkVmhuQi.js → Logo-DN8dwlbz.js} +11 -10
  25. package/dist/assets/MainHeader-BIKp2Ncp.css +1449 -0
  26. package/dist/assets/{MainHeader-DzT-lrog.js → MainHeader-Dj7ade30.js} +46 -26
  27. package/dist/assets/MainSidebar-Djaxwdmm.css +985 -0
  28. package/dist/assets/{MainSidebar-5Pl77alo.js → MainSidebar-DlNj8GJy.js} +180 -98
  29. package/dist/assets/NodeCreation-RKvezEeg.css +152 -0
  30. package/dist/assets/{NodeCreation-CuUKKWoi.js → NodeCreation-ZBewl4bk.js} +10 -10
  31. package/dist/assets/NodeCreator-DDiuO5S0.css +2493 -0
  32. package/dist/assets/{NodeCreator-D7v1eC6a.js → NodeCreator-DdQP0uVg.js} +108 -84
  33. package/dist/assets/NodeViewSwitcher-Bdg8qofd.js +14837 -0
  34. package/dist/assets/NodeViewSwitcher-UPCWvuIo.css +6801 -0
  35. package/dist/assets/ProjectCardBadge-CKGc0yDi.css +145 -0
  36. package/dist/assets/{ProjectCardBadge-D7xb-Eyd.js → ProjectCardBadge-pbI58Ond.js} +9 -6
  37. package/dist/assets/ProjectHeader-CQjB5wC7.css +285 -0
  38. package/dist/assets/{ProjectHeader-K-i88xtf.js → ProjectHeader-D7XYidpZ.js} +67 -49
  39. package/dist/assets/ProjectSettings-BgunHp-2.css +286 -0
  40. package/dist/assets/{ProjectSettings-BO2wFmU7.js → ProjectSettings-CXSvZq_1.js} +87 -47
  41. package/dist/assets/{PushConnectionTracker.vue_vue_type_script_setup_true_lang-a7Fc7Xy7.js → PushConnectionTracker.vue_vue_type_script_setup_true_lang-B8guxlKC.js} +1 -1
  42. package/dist/assets/{ResourcesListLayout-CRrq5kQe.js → ResourcesListLayout-BhSNEyun.js} +25 -21
  43. package/dist/assets/ResourcesListLayout-Dw1dU1aW.css +748 -0
  44. package/dist/assets/RunDataJson-BXTLuo7i.css +323 -0
  45. package/dist/assets/{RunDataJson-DklR3U0f.js → RunDataJson-DyoK2r6Z.js} +19 -16
  46. package/dist/assets/{RunDataJsonActions-CHdDowSE.js → RunDataJsonActions-DmM5PsDX.js} +3 -4
  47. package/dist/assets/RunDataJsonActions-DrgwFS0W.css +133 -0
  48. package/dist/assets/{RunDataSearch-DWL0Lv8j.js → RunDataSearch-B9xsocwZ.js} +4 -4
  49. package/dist/assets/RunDataSearch-R6qtl0Jf.css +150 -0
  50. package/dist/assets/RunDataTable-CX7gToH4.css +272 -0
  51. package/dist/assets/{RunDataTable-C-K-SFOI.js → RunDataTable-iUS0fcZW.js} +28 -28
  52. package/dist/assets/{SamlOnboarding-CmE16j09.js → SamlOnboarding-c9rXuzta.js} +3 -3
  53. package/dist/assets/{SettingsApiView-Bm7VfYUo.js → SettingsApiView-BbA8em4X.js} +6 -6
  54. package/dist/assets/SettingsApiView-DJKJO7zM.css +145 -0
  55. package/dist/assets/{SettingsCommunityNodesView-BvoqYDi6.js → SettingsCommunityNodesView-BUA0OLqR.js} +18 -17
  56. package/dist/assets/SettingsCommunityNodesView-CAggjsaT.css +317 -0
  57. package/dist/assets/{SettingsExternalSecrets-_w5OFPo8.js → SettingsExternalSecrets-Bp4-QTpk.js} +7 -7
  58. package/dist/assets/SettingsExternalSecrets-d1KDgYYp.css +151 -0
  59. package/dist/assets/SettingsLdapView-Bx1eqk76.css +156 -0
  60. package/dist/assets/{SettingsLdapView-TS7oUlks.js → SettingsLdapView-DAraUZwU.js} +8 -8
  61. package/dist/assets/SettingsLogStreamingView-CflEMmu9.css +290 -0
  62. package/dist/assets/{SettingsLogStreamingView-CAarolrh.js → SettingsLogStreamingView-DTgMc-WZ.js} +8 -8
  63. package/dist/assets/{SettingsPersonalView-Dms8_Ph5.js → SettingsPersonalView-BDWzpO2x.js} +9 -9
  64. package/dist/assets/SettingsPersonalView-CwV8ImYG.css +175 -0
  65. package/dist/assets/{SettingsSourceControl-P9lNmLfg.js → SettingsSourceControl-Dr974WK5.js} +12 -12
  66. package/dist/assets/SettingsSourceControl-DxshapuD.css +202 -0
  67. package/dist/assets/SettingsSso-BjoJZ2DU.css +163 -0
  68. package/dist/assets/{SettingsSso-ICCxzOQe.js → SettingsSso-BxAzGPEO.js} +7 -7
  69. package/dist/assets/SettingsUsageAndPlan-B5DEUrT3.css +333 -0
  70. package/dist/assets/{SettingsUsageAndPlan-BSEPUc4B.js → SettingsUsageAndPlan-DXkQcpTq.js} +12 -12
  71. package/dist/assets/SettingsUsersView-By12E2li.css +143 -0
  72. package/dist/assets/{SettingsUsersView-BzekHfPV.js → SettingsUsersView-ioxWjgmR.js} +6 -6
  73. package/dist/assets/{SettingsView-DupTDURU.js → SettingsView-B_btgRH4.js} +7 -7
  74. package/dist/assets/SettingsView-Bawwm19P.css +285 -0
  75. package/dist/assets/{SetupView-Cq64VV9c.js → SetupView-r9ZPGr7D.js} +3 -3
  76. package/dist/assets/{SetupWorkflowCredentialsButton-LuQ_SEWx.js → SetupWorkflowCredentialsButton-BQTw1Lni.js} +1 -1
  77. package/dist/assets/{SetupWorkflowFromTemplateView-ClOfcHle.js → SetupWorkflowFromTemplateView-ChO-yyKZ.js} +8 -8
  78. package/dist/assets/SetupWorkflowFromTemplateView-ZPJL_m2F.css +148 -0
  79. package/dist/assets/SigninView-D57wRRHz.css +150 -0
  80. package/dist/assets/{SigninView-DM8DhinJ.js → SigninView-D7_W1amk.js} +9 -9
  81. package/dist/assets/{SignoutView-BK-qDL3I.js → SignoutView-BvPOsQQ0.js} +1 -1
  82. package/dist/assets/{SignupView-CWOVKxEj.js → SignupView-Bf0vYlCQ.js} +3 -3
  83. package/dist/assets/{TemplateDetails-DUTNl1QK.js → TemplateDetails-D-RiAVQD.js} +7 -7
  84. package/dist/assets/TemplateDetails-DyUqVhf2.css +265 -0
  85. package/dist/assets/TemplateList-DcOqRM10.css +480 -0
  86. package/dist/assets/{TemplateList-DYRBepI5.js → TemplateList-DeJfbzYl.js} +24 -24
  87. package/dist/assets/TemplatesCollectionView-2q1rzsOG.css +156 -0
  88. package/dist/assets/{TemplatesCollectionView-BxG1bRhA.js → TemplatesCollectionView-uSsfhIa9.js} +12 -12
  89. package/dist/assets/{TemplatesSearchView-UBZQnh-e.js → TemplatesSearchView-DBbTV_xi.js} +18 -18
  90. package/dist/assets/TemplatesSearchView-DETaMpDt.css +953 -0
  91. package/dist/assets/TemplatesView-Cyu28Dlo.css +285 -0
  92. package/dist/assets/{TemplatesView-mU_A1pwb.js → TemplatesView-Qt03GfQO.js} +8 -8
  93. package/dist/assets/{TemplatesWorkflowView-D5N-R1lr.js → TemplatesWorkflowView-CLplrMA6.js} +13 -13
  94. package/dist/assets/TemplatesWorkflowView-DpIiJjJp.css +168 -0
  95. package/dist/assets/{TestDefinitionEditView-CAgd51U-.js → TestDefinitionEditView-CEfQepq8.js} +587 -197
  96. package/dist/assets/TestDefinitionEditView-DM4tV2LS.css +1267 -0
  97. package/dist/assets/{TestDefinitionListView-CKSy47GW.js → TestDefinitionListView-6hn-gG-H.js} +96 -65
  98. package/dist/assets/TestDefinitionListView-BD5_O4Fx.css +567 -0
  99. package/dist/assets/{VariablesView-DPbCYxLS.js → VariablesView-BrXojLhD.js} +8 -8
  100. package/dist/assets/VariablesView-D4pRzSuY.css +434 -0
  101. package/dist/assets/WorkerView-BrSoYcbf.css +977 -0
  102. package/dist/assets/{WorkerView-CtrrcIx2.js → WorkerView-DwULN80E.js} +30 -177
  103. package/dist/assets/WorkflowActivator-DQhm5t0U.css +260 -0
  104. package/dist/assets/{WorkflowActivator-BbwFaJ9a.js → WorkflowActivator-Dm9xwqOB.js} +3 -3
  105. package/dist/assets/{WorkflowExecutionsInfoAccordion-D-0JKX5I.js → WorkflowExecutionsInfoAccordion-B-Z0pyld.js} +3 -3
  106. package/dist/assets/WorkflowExecutionsInfoAccordion-BBtwnPZQ.css +155 -0
  107. package/dist/assets/WorkflowExecutionsLandingPage-Bm_hJMl4.css +145 -0
  108. package/dist/assets/{WorkflowExecutionsLandingPage-C9P1l_M7.js → WorkflowExecutionsLandingPage-HJBYlJAc.js} +5 -5
  109. package/dist/assets/WorkflowExecutionsPreview-CrGxxhLQ.css +537 -0
  110. package/dist/assets/{WorkflowExecutionsPreview-C05AfyP-.js → WorkflowExecutionsPreview-nYDpKm_b.js} +37 -37
  111. package/dist/assets/{WorkflowExecutionsView-qXpp42wG.js → WorkflowExecutionsView-Chvs3FQ3.js} +35 -35
  112. package/dist/assets/WorkflowExecutionsView-DEqJNNDZ.css +676 -0
  113. package/dist/assets/{WorkflowHistory-CbBn3xYH.js → WorkflowHistory-6MCJq0xa.js} +22 -22
  114. package/dist/assets/WorkflowHistory-7Ad0Va7M.css +669 -0
  115. package/dist/assets/{WorkflowOnboardingView-Cb8Efn6T.js → WorkflowOnboardingView-7WiSlKOU.js} +1 -19
  116. package/dist/assets/WorkflowPreview-CIOAVgxK.css +162 -0
  117. package/dist/assets/{WorkflowPreview-DzTTLI8R.js → WorkflowPreview-Dw2NtUVX.js} +8 -8
  118. package/dist/assets/WorkflowsView-DMIGjzPW.css +323 -0
  119. package/dist/assets/{WorkflowsView-BUM-Mmss.js → WorkflowsView-DXnpDXEX.js} +29 -19
  120. package/dist/assets/easyAiWorkflowUtils-BTWwHsY8.js +181 -0
  121. package/dist/assets/{index-LIwDUX8i.css → index-B7TFhNa2.css} +30882 -6572
  122. package/dist/assets/{index-DYxqsGB9.js → index-D0W-rAl_.js} +78733 -72194
  123. package/dist/assets/{pushConnection.store-BVUirLTG.js → pushConnection.store-SZWXnCKb.js} +1 -1
  124. package/dist/assets/{templateActions-CXAWj8IS.js → templateActions-DDtJe_-b.js} +1 -1
  125. package/dist/assets/typescript.worker-H0DmdklC.js +213997 -0
  126. package/dist/assets/{useBugReporting-C3NtP4ZZ.js → useBugReporting-BGxycXGV.js} +1 -1
  127. package/dist/assets/{NodeViewSwitcher-hKoOeK8j.js → useCanvasOperations-BsWyQUek.js} +19402 -33901
  128. package/dist/assets/useCanvasOperations-Byu1Z5ea.css +4144 -0
  129. package/dist/assets/{useExecutionDebugging-BnF8o4vE.js → useExecutionDebugging-CB_jUGyC.js} +1 -1
  130. package/dist/assets/{useExecutionHelpers-7qmdZ0on.js → useExecutionHelpers-COwnTHmy.js} +1 -1
  131. package/dist/assets/{useNodeViewVersionSwitcher-tFqgPPim.js → useNodeViewVersionSwitcher-C8AkOtTL.js} +1 -1
  132. package/dist/assets/usePinnedData-872bXiu-.js +274 -0
  133. package/dist/assets/{usePushConnection-FexDCcd7.js → usePushConnection-CXpJRez7.js} +11 -4
  134. package/dist/assets/{useRunWorkflow-BDl-2MsN.css → useRunWorkflow-DWoFsQdi.css} +406 -40
  135. package/dist/assets/{useRunWorkflow-BPsvjsSm.js → useRunWorkflow-u9KNHrnZ.js} +31 -301
  136. package/dist/assets/{useWorkflowActivate-CIqICdFm.js → useWorkflowActivate-D8Du1iYk.js} +1 -1
  137. package/dist/index.html +2 -2
  138. package/package.json +1 -1
  139. package/tsconfig.json +2 -1
  140. package/vite.config.mts +8 -1
  141. package/dist/assets/AuthView-CvfW_aKu.css +0 -42
  142. package/dist/assets/CanvasChat-DhkdJLy7.css +0 -661
  143. package/dist/assets/CanvasControls-BEOkwFDJ.css +0 -26
  144. package/dist/assets/CollectionParameter-DYy0fmgJ.js +0 -4
  145. package/dist/assets/ConcurrentExecutionsHeader-ChCLnjVG.css +0 -72
  146. package/dist/assets/CredentialsView-CzforIh7.css +0 -36
  147. package/dist/assets/ErrorView-DZCz_7-d.css +0 -22
  148. package/dist/assets/ExecutionsView-CLxQdDnP.css +0 -217
  149. package/dist/assets/Logo-1JT6Fq4s.css +0 -38
  150. package/dist/assets/MainHeader-B1mQLyCP.css +0 -224
  151. package/dist/assets/MainSidebar-BQss-EVY.css +0 -245
  152. package/dist/assets/NodeCreation-DTNNkgVv.css +0 -30
  153. package/dist/assets/NodeCreator-BvqI_pdC.css +0 -522
  154. package/dist/assets/NodeViewSwitcher-D0jynVNt.css +0 -3108
  155. package/dist/assets/ProjectCardBadge-DQvW5T7s.css +0 -20
  156. package/dist/assets/ProjectHeader-CY9vPy_p.css +0 -37
  157. package/dist/assets/ProjectSettings-DZws5IzZ.css +0 -34
  158. package/dist/assets/ResourcesListLayout-NZz6R66g.css +0 -96
  159. package/dist/assets/RunDataJson-DW_khHj4.css +0 -79
  160. package/dist/assets/RunDataJsonActions-CoiM0oFP.css +0 -11
  161. package/dist/assets/RunDataSearch-B4q8H9Ex.css +0 -28
  162. package/dist/assets/RunDataTable-BOaG0Pms.css +0 -150
  163. package/dist/assets/SettingsApiView-DX3S-5pa.css +0 -23
  164. package/dist/assets/SettingsCommunityNodesView-kzxtAoLp.css +0 -73
  165. package/dist/assets/SettingsExternalSecrets-BnXyxlJd.css +0 -29
  166. package/dist/assets/SettingsLdapView-BPh_inzE.css +0 -34
  167. package/dist/assets/SettingsLogStreamingView-Uz298HNW.css +0 -46
  168. package/dist/assets/SettingsPersonalView-CqzRUitO.css +0 -53
  169. package/dist/assets/SettingsSourceControl-C7H8sLJN.css +0 -80
  170. package/dist/assets/SettingsSso-Be_ejj46.css +0 -41
  171. package/dist/assets/SettingsUsageAndPlan-C3fKPMTY.css +0 -89
  172. package/dist/assets/SettingsUsersView-C13eCMjh.css +0 -21
  173. package/dist/assets/SettingsView-o6uNYu0t.css +0 -41
  174. package/dist/assets/SetupWorkflowFromTemplateView-DjBcyMCl.css +0 -26
  175. package/dist/assets/SigninView-BbpzRtoX.css +0 -28
  176. package/dist/assets/TemplateDetails-p3M6A7jr.css +0 -21
  177. package/dist/assets/TemplateList-BR3bpDTv.css +0 -114
  178. package/dist/assets/TemplatesCollectionView-DJVlK4Bb.css +0 -34
  179. package/dist/assets/TemplatesSearchView-CFrHWGcY.css +0 -221
  180. package/dist/assets/TemplatesView-CBNZZ_X1.css +0 -41
  181. package/dist/assets/TemplatesWorkflowView-CVC0fbb6.css +0 -46
  182. package/dist/assets/TestDefinitionEditView-CVRXpJ4c.css +0 -220
  183. package/dist/assets/TestDefinitionListView-BJVxwUdb.css +0 -80
  184. package/dist/assets/VariablesView-BnGnRwcl.css +0 -182
  185. package/dist/assets/WorkerView-CvXMClDD.css +0 -123
  186. package/dist/assets/WorkflowActivator-DSBGQvK0.css +0 -16
  187. package/dist/assets/WorkflowExecutionsInfoAccordion-f5tIRAwu.css +0 -33
  188. package/dist/assets/WorkflowExecutionsLandingPage-BodEQ5Bq.css +0 -23
  189. package/dist/assets/WorkflowExecutionsPreview-C-e7WZrK.css +0 -171
  190. package/dist/assets/WorkflowExecutionsView-CFOgmzpK.css +0 -178
  191. package/dist/assets/WorkflowHistory-D0ufvWsH.css +0 -181
  192. package/dist/assets/WorkflowPreview-DuLM6rtd.css +0 -40
  193. package/dist/assets/WorkflowsView-D5fBzfD4.css +0 -65
  194. package/dist/assets/testDefinition.store.ee-D3IYMf-K.js +0 -138
@@ -1,4 +1,4 @@
1
- import { b as useRouter, a as useToast, T as useWorkflowsStore, p as useSettingsStore, K as useUIStore, a5 as usePageRedirectionHelper, q as computed, a8 as EnterpriseEditionFeature, aq as h, f$ as sanitizeHtml, ae as MODAL_CONFIRM, V as VIEWS, Z as useRootStore, gu as isFullExecutionResponse, gv as DEBUG_PAYWALL_MODAL_KEY, ak as useTelemetry, g as useI18n, al as useMessage } from "./index-DYxqsGB9.js";
1
+ import { b as useRouter, a as useToast, T as useWorkflowsStore, p as useSettingsStore, K as useUIStore, a5 as usePageRedirectionHelper, q as computed, a8 as EnterpriseEditionFeature, aq as h, eW as sanitizeHtml, ae as MODAL_CONFIRM, V as VIEWS, Z as useRootStore, f3 as isFullExecutionResponse, f4 as DEBUG_PAYWALL_MODAL_KEY, ak as useTelemetry, g as useI18n, al as useMessage } from "./index-D0W-rAl_.js";
2
2
  const useExecutionDebugging = () => {
3
3
  const telemetry = useTelemetry();
4
4
  const router = useRouter();
@@ -1,4 +1,4 @@
1
- import { hu as dateformat, b as useRouter, V as VIEWS, g as useI18n, ak as useTelemetry } from "./index-DYxqsGB9.js";
1
+ import { ge as dateformat, b as useRouter, V as VIEWS, g as useI18n, ak as useTelemetry } from "./index-D0W-rAl_.js";
2
2
  const convertToDisplayDateComponents = (fullDate) => {
3
3
  const mask = `d mmm${new Date(fullDate).getFullYear() === (/* @__PURE__ */ new Date()).getFullYear() ? "" : ", yyyy"}#HH:MM:ss`;
4
4
  const formattedDate = dateformat(fullDate, mask);
@@ -1,4 +1,4 @@
1
- import { K as useUIStore, $ as useCanvasStore, r as ref, q as computed, V as VIEWS, g as useI18n, at as useNDVStore, T as useWorkflowsStore, p as useSettingsStore, aw as useLocalStorage, ak as useTelemetry } from "./index-DYxqsGB9.js";
1
+ import { K as useUIStore, $ as useCanvasStore, r as ref, q as computed, V as VIEWS, g as useI18n, at as useNDVStore, T as useWorkflowsStore, p as useSettingsStore, aw as useLocalStorage, ak as useTelemetry } from "./index-D0W-rAl_.js";
2
2
  function useBeforeUnload({ route }) {
3
3
  const uiStore = useUIStore();
4
4
  const canvasStore = useCanvasStore();
@@ -0,0 +1,274 @@
1
+ import { g5 as baseSlice, g6 as toString, bn as useNodeTypesStore, q as computed, l as unref, eI as isSubNodeType, Z as useRootStore, T as useWorkflowsStore, a as useToast, g7 as PIN_DATA_NODE_TYPES_DENYLIST, bf as getNodeOutputs, bg as NodeConnectionType, g8 as jsonStringify, g9 as toMegaBytes, ga as stringSizeInBytes, cg as jsonParse, g as useI18n, ak as useTelemetry, aS as useExternalHooks, eJ as useDataSchema, gb as MAX_PINNED_DATA_SIZE, gc as MAX_WORKFLOW_SIZE, gd as MAX_EXPECTED_REQUEST_SIZE } from "./index-D0W-rAl_.js";
2
+ function castSlice(array, start, end) {
3
+ var length = array.length;
4
+ end = end === void 0 ? length : end;
5
+ return !start && end >= length ? array : baseSlice(array, start, end);
6
+ }
7
+ var rsAstralRange$1 = "\\ud800-\\udfff", rsComboMarksRange$1 = "\\u0300-\\u036f", reComboHalfMarksRange$1 = "\\ufe20-\\ufe2f", rsComboSymbolsRange$1 = "\\u20d0-\\u20ff", rsComboRange$1 = rsComboMarksRange$1 + reComboHalfMarksRange$1 + rsComboSymbolsRange$1, rsVarRange$1 = "\\ufe0e\\ufe0f";
8
+ var rsZWJ$1 = "\\u200d";
9
+ var reHasUnicode = RegExp("[" + rsZWJ$1 + rsAstralRange$1 + rsComboRange$1 + rsVarRange$1 + "]");
10
+ function hasUnicode(string) {
11
+ return reHasUnicode.test(string);
12
+ }
13
+ function asciiToArray(string) {
14
+ return string.split("");
15
+ }
16
+ var rsAstralRange = "\\ud800-\\udfff", rsComboMarksRange = "\\u0300-\\u036f", reComboHalfMarksRange = "\\ufe20-\\ufe2f", rsComboSymbolsRange = "\\u20d0-\\u20ff", rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange, rsVarRange = "\\ufe0e\\ufe0f";
17
+ var rsAstral = "[" + rsAstralRange + "]", rsCombo = "[" + rsComboRange + "]", rsFitz = "\\ud83c[\\udffb-\\udfff]", rsModifier = "(?:" + rsCombo + "|" + rsFitz + ")", rsNonAstral = "[^" + rsAstralRange + "]", rsRegional = "(?:\\ud83c[\\udde6-\\uddff]){2}", rsSurrPair = "[\\ud800-\\udbff][\\udc00-\\udfff]", rsZWJ = "\\u200d";
18
+ var reOptMod = rsModifier + "?", rsOptVar = "[" + rsVarRange + "]?", rsOptJoin = "(?:" + rsZWJ + "(?:" + [rsNonAstral, rsRegional, rsSurrPair].join("|") + ")" + rsOptVar + reOptMod + ")*", rsSeq = rsOptVar + reOptMod + rsOptJoin, rsSymbol = "(?:" + [rsNonAstral + rsCombo + "?", rsCombo, rsRegional, rsSurrPair, rsAstral].join("|") + ")";
19
+ var reUnicode = RegExp(rsFitz + "(?=" + rsFitz + ")|" + rsSymbol + rsSeq, "g");
20
+ function unicodeToArray(string) {
21
+ return string.match(reUnicode) || [];
22
+ }
23
+ function stringToArray(string) {
24
+ return hasUnicode(string) ? unicodeToArray(string) : asciiToArray(string);
25
+ }
26
+ function createCaseFirst(methodName) {
27
+ return function(string) {
28
+ string = toString(string);
29
+ var strSymbols = hasUnicode(string) ? stringToArray(string) : void 0;
30
+ var chr = strSymbols ? strSymbols[0] : string.charAt(0);
31
+ var trailing = strSymbols ? castSlice(strSymbols, 1).join("") : string.slice(1);
32
+ return chr[methodName]() + trailing;
33
+ };
34
+ }
35
+ var upperFirst = createCaseFirst("toUpperCase");
36
+ function capitalize(string) {
37
+ return upperFirst(toString(string).toLowerCase());
38
+ }
39
+ function useNodeType(options = {}) {
40
+ const nodeTypesStore = useNodeTypesStore();
41
+ const nodeType = computed(() => {
42
+ if (options.nodeType) {
43
+ return unref(options.nodeType);
44
+ }
45
+ const activeNode = unref(options.node);
46
+ if (activeNode) {
47
+ return nodeTypesStore.getNodeType(activeNode.type, activeNode.typeVersion);
48
+ }
49
+ return null;
50
+ });
51
+ const isSubNodeType$1 = computed(() => isSubNodeType(nodeType.value));
52
+ const isMultipleOutputsNodeType = computed(() => {
53
+ const outputs = nodeType.value?.outputs;
54
+ if (typeof outputs === "string") return false;
55
+ return (outputs ?? []).length > 1;
56
+ });
57
+ return {
58
+ nodeType,
59
+ isSubNodeType: isSubNodeType$1,
60
+ isMultipleOutputsNodeType
61
+ };
62
+ }
63
+ function usePinnedData(node, options = {}) {
64
+ const rootStore = useRootStore();
65
+ const workflowsStore = useWorkflowsStore();
66
+ const toast = useToast();
67
+ const i18n = useI18n();
68
+ const telemetry = useTelemetry();
69
+ const externalHooks = useExternalHooks();
70
+ const { getInputDataWithPinned } = useDataSchema();
71
+ const { isSubNodeType: isSubNodeType2, isMultipleOutputsNodeType } = useNodeType({
72
+ node
73
+ });
74
+ const data = computed(() => {
75
+ const targetNode = unref(node);
76
+ return targetNode ? workflowsStore.pinDataByNodeName(targetNode.name) : void 0;
77
+ });
78
+ const hasData = computed(() => {
79
+ const targetNode = unref(node);
80
+ return !!targetNode && typeof data.value !== "undefined";
81
+ });
82
+ const isValidNodeType = computed(() => {
83
+ const targetNode = unref(node);
84
+ return !!targetNode && !isSubNodeType2.value && !isMultipleOutputsNodeType.value && !PIN_DATA_NODE_TYPES_DENYLIST.includes(targetNode.type);
85
+ });
86
+ function canPinNode(checkDataEmpty = false, outputIndex) {
87
+ const targetNode = unref(node);
88
+ if (targetNode === null || PIN_DATA_NODE_TYPES_DENYLIST.includes(targetNode.type)) return false;
89
+ const nodeType = useNodeTypesStore().getNodeType(targetNode.type, targetNode.typeVersion);
90
+ const dataToPin = getInputDataWithPinned(targetNode);
91
+ if (!nodeType || checkDataEmpty && dataToPin.length === 0) return false;
92
+ const workflow = workflowsStore.getCurrentWorkflow();
93
+ const outputs = getNodeOutputs(workflow, targetNode, nodeType).map(
94
+ (output) => typeof output === "string" ? { type: output } : output
95
+ );
96
+ const mainOutputs = outputs.filter(
97
+ (output) => output.type === NodeConnectionType.Main && output.category !== "error"
98
+ );
99
+ let indexAcceptable = true;
100
+ if (outputIndex !== void 0) {
101
+ const output = outputs[outputIndex];
102
+ if (outputs[outputIndex] === void 0) return false;
103
+ indexAcceptable = output.type === NodeConnectionType.Main && output.category !== "error";
104
+ }
105
+ return mainOutputs.length === 1 && indexAcceptable;
106
+ }
107
+ function isValidJSON(data2) {
108
+ try {
109
+ JSON.parse(data2);
110
+ return true;
111
+ } catch (error) {
112
+ const title = i18n.baseText("runData.editOutputInvalid");
113
+ const toRemove = new RegExp(/JSON\.parse:|of the JSON data/, "g");
114
+ const message = error.message.replace(toRemove, "").trim();
115
+ const positionMatchRegEx = /at position (\d+)/;
116
+ const positionMatch = error.message.match(positionMatchRegEx);
117
+ error.message = message.charAt(0).toUpperCase() + message.slice(1);
118
+ error.message = error.message.replace(
119
+ "Unexpected token ' in JSON",
120
+ i18n.baseText("runData.editOutputInvalid.singleQuote")
121
+ );
122
+ if (positionMatch) {
123
+ const position = parseInt(positionMatch[1], 10);
124
+ const lineBreaksUpToPosition = (data2.slice(0, position).match(/\n/g) || []).length;
125
+ error.message = error.message.replace(
126
+ positionMatchRegEx,
127
+ i18n.baseText("runData.editOutputInvalid.atPosition", {
128
+ interpolate: {
129
+ position: `${position}`
130
+ }
131
+ })
132
+ );
133
+ error.message = `${i18n.baseText("runData.editOutputInvalid.onLine", {
134
+ interpolate: {
135
+ line: `${lineBreaksUpToPosition + 1}`
136
+ }
137
+ })} ${error.message}`;
138
+ }
139
+ toast.showError(error, title);
140
+ return false;
141
+ }
142
+ }
143
+ function getMaxPinnedDataSize() {
144
+ return window.maxPinnedDataSize ?? MAX_PINNED_DATA_SIZE;
145
+ }
146
+ function isValidSize(data2) {
147
+ const targetNode = unref(node);
148
+ if (!targetNode) {
149
+ return false;
150
+ }
151
+ if (typeof data2 === "object") data2 = JSON.stringify(data2);
152
+ const { pinData: currentPinData, ...workflow } = workflowsStore.getCurrentWorkflow();
153
+ const workflowJson = jsonStringify(workflow, { replaceCircularRefs: true });
154
+ const newPinData = { ...currentPinData, [targetNode.name]: data2 };
155
+ const newPinDataSize = workflowsStore.getPinDataSize(newPinData);
156
+ if (newPinDataSize > getMaxPinnedDataSize()) {
157
+ toast.showError(
158
+ new Error(
159
+ i18n.baseText("ndv.pinData.error.tooLarge.description", {
160
+ interpolate: {
161
+ size: toMegaBytes(newPinDataSize),
162
+ limit: toMegaBytes(getMaxPinnedDataSize())
163
+ }
164
+ })
165
+ ),
166
+ i18n.baseText("ndv.pinData.error.tooLarge.title")
167
+ );
168
+ return false;
169
+ }
170
+ const workflowSize = stringSizeInBytes(workflowJson) + newPinDataSize;
171
+ const limit = MAX_WORKFLOW_SIZE - MAX_EXPECTED_REQUEST_SIZE;
172
+ if (workflowSize > limit) {
173
+ toast.showError(
174
+ new Error(
175
+ i18n.baseText("ndv.pinData.error.tooLargeWorkflow.description", {
176
+ interpolate: { size: toMegaBytes(workflowSize), limit: toMegaBytes(limit) }
177
+ })
178
+ ),
179
+ i18n.baseText("ndv.pinData.error.tooLargeWorkflow.title")
180
+ );
181
+ return false;
182
+ }
183
+ return true;
184
+ }
185
+ function onSetDataSuccess({ source }) {
186
+ const targetNode = unref(node);
187
+ const displayMode = unref(options.displayMode);
188
+ const runIndex = unref(options.runIndex);
189
+ const telemetryPayload = {
190
+ pinning_source: source,
191
+ node_type: targetNode?.type,
192
+ push_ref: rootStore.pushRef,
193
+ data_size: stringSizeInBytes(data.value),
194
+ view: displayMode,
195
+ run_index: runIndex
196
+ };
197
+ void externalHooks.run("runData.onDataPinningSuccess", telemetryPayload);
198
+ telemetry.track("Ndv data pinning success", telemetryPayload);
199
+ }
200
+ function onSetDataError({
201
+ errorType,
202
+ source
203
+ }) {
204
+ const targetNode = unref(node);
205
+ const displayMode = unref(options.displayMode);
206
+ const runIndex = unref(options.runIndex);
207
+ telemetry.track("Ndv data pinning failure", {
208
+ pinning_source: source,
209
+ node_type: targetNode?.type,
210
+ push_ref: rootStore.pushRef,
211
+ data_size: stringSizeInBytes(data.value),
212
+ view: displayMode,
213
+ run_index: runIndex,
214
+ error_type: errorType
215
+ });
216
+ }
217
+ function setData(data2, source) {
218
+ const targetNode = unref(node);
219
+ if (!targetNode) {
220
+ return;
221
+ }
222
+ if (typeof data2 === "string") {
223
+ if (!isValidJSON(data2)) {
224
+ onSetDataError({ errorType: "invalid-json", source });
225
+ throw new Error("Invalid JSON");
226
+ }
227
+ data2 = jsonParse(data2);
228
+ }
229
+ if (!isValidSize(data2)) {
230
+ onSetDataError({ errorType: "data-too-large", source });
231
+ throw new Error("Data too large");
232
+ }
233
+ workflowsStore.pinData({ node: targetNode, data: data2 });
234
+ onSetDataSuccess({ source });
235
+ }
236
+ function onUnsetData({ source }) {
237
+ const targetNode = unref(node);
238
+ const runIndex = unref(options.runIndex);
239
+ telemetry.track("User unpinned ndv data", {
240
+ node_type: targetNode?.type,
241
+ push_ref: rootStore.pushRef,
242
+ run_index: runIndex,
243
+ source,
244
+ data_size: stringSizeInBytes(data.value)
245
+ });
246
+ }
247
+ function unsetData(source) {
248
+ const targetNode = unref(node);
249
+ if (!targetNode) {
250
+ return;
251
+ }
252
+ onUnsetData({ source });
253
+ workflowsStore.unpinData({ node: targetNode });
254
+ }
255
+ return {
256
+ data,
257
+ hasData,
258
+ isValidNodeType,
259
+ canPinNode,
260
+ setData,
261
+ onSetDataSuccess,
262
+ onSetDataError,
263
+ unsetData,
264
+ onUnsetData,
265
+ isValidJSON,
266
+ isValidSize
267
+ };
268
+ }
269
+ export {
270
+ useNodeType as a,
271
+ upperFirst as b,
272
+ capitalize as c,
273
+ usePinnedData as u
274
+ };
@@ -1,5 +1,6 @@
1
- import { hl as makeRestApiRequest, R as defineStore, Z as useRootStore, d as defineComponent, cW as resolveDirective, c as openBlock, h as createElementBlock, ay as withDirectives, j as createBaseVNode, t as toDisplayString, l as unref, g as useI18n, a4 as useWorkflowHelpers, bl as useNodeHelpers, a as useToast, bZ as useCredentialsStore, bk as useNodeTypesStore, p as useSettingsStore, K as useUIStore, T as useWorkflowsStore, gc as useAssistantStore, r as ref, hm as EASY_AI_WORKFLOW_JSON, hn as parse, ho as codeNodeEditorEventBus, ag as WORKFLOW_SETTINGS_MODAL_KEY, eL as generateNodesGraph, aq as h, d6 as getTriggerNodeServiceName, aP as useExternalHooks, ak as useTelemetry, hp as clearPopupWindowState } from "./index-DYxqsGB9.js";
2
- import { u as usePushConnectionStore, g as globalLinkActionsEventBus } from "./pushConnection.store-BVUirLTG.js";
1
+ import { fX as makeRestApiRequest, R as defineStore, Z as useRootStore, d as defineComponent, cO as resolveDirective, c as openBlock, h as createElementBlock, ay as withDirectives, j as createBaseVNode, t as toDisplayString, l as unref, g as useI18n, a4 as useWorkflowHelpers, bo as useNodeHelpers, a as useToast, bQ as useCredentialsStore, bn as useNodeTypesStore, p as useSettingsStore, K as useUIStore, T as useWorkflowsStore, eT as useAssistantStore, av as usePostHog, r as ref, bS as AI_CREDITS_EXPERIMENT, fY as parse, fZ as codeNodeEditorEventBus, ag as WORKFLOW_SETTINGS_MODAL_KEY, dN as generateNodesGraph, aq as h, c$ as getTriggerNodeServiceName, aS as useExternalHooks, ak as useTelemetry, f_ as clearPopupWindowState } from "./index-D0W-rAl_.js";
2
+ import { u as usePushConnectionStore, g as globalLinkActionsEventBus } from "./pushConnection.store-SZWXnCKb.js";
3
+ import { g as getEasyAiWorkflowJson } from "./easyAiWorkflowUtils-BTWwHsY8.js";
3
4
  const GET_STATUS_ENDPOINT = "/orchestration/worker/status";
4
5
  const sendGetWorkerStatus = async (context) => {
5
6
  await makeRestApiRequest(context, "POST", GET_STATUS_ENDPOINT);
@@ -101,6 +102,7 @@ function usePushConnection({ router }) {
101
102
  const uiStore = useUIStore();
102
103
  const workflowsStore = useWorkflowsStore();
103
104
  const assistantStore = useAssistantStore();
105
+ const posthogStore = usePostHog();
104
106
  const retryTimeout = ref(null);
105
107
  const pushMessageQueue = ref([]);
106
108
  const removeEventListener = ref(null);
@@ -196,7 +198,12 @@ function usePushConnection({ router }) {
196
198
  clearPopupWindowState();
197
199
  const workflow2 = workflowsStore.getWorkflowById(receivedData.data.workflowId);
198
200
  if (workflow2?.meta?.templateId) {
199
- const isEasyAIWorkflow = workflow2.meta.templateId === EASY_AI_WORKFLOW_JSON.meta.templateId;
201
+ const isAiCreditsExperimentEnabled = posthogStore.getVariant(AI_CREDITS_EXPERIMENT.name) === AI_CREDITS_EXPERIMENT.variant;
202
+ const easyAiWorkflowJson = getEasyAiWorkflowJson({
203
+ isInstanceInAiFreeCreditsExperiment: isAiCreditsExperimentEnabled,
204
+ withOpenAiFreeCredits: settingsStore.aiCreditsQuota
205
+ });
206
+ const isEasyAIWorkflow = workflow2.meta.templateId === easyAiWorkflowJson.meta.templateId;
200
207
  if (isEasyAIWorkflow) {
201
208
  telemetry.track(
202
209
  "User executed test AI workflow",
@@ -254,7 +261,7 @@ function usePushConnection({ router }) {
254
261
  );
255
262
  }
256
263
  const lineNumber = iRunExecutionData.resultData?.error?.lineNumber;
257
- codeNodeEditorEventBus.emit("highlightLine", lineNumber ?? "final");
264
+ codeNodeEditorEventBus.emit("highlightLine", lineNumber ?? "last");
258
265
  const workflow = workflowHelpers.getCurrentWorkflow();
259
266
  if (executionData.data?.waitTill !== void 0) {
260
267
  const workflowSettings = workflowsStore.workflowSettings;