n8n-editor-ui 1.112.1 → 1.113.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 (126) hide show
  1. package/.build/cache-marker +1 -0
  2. package/.build/node-popularity.json +3918 -0
  3. package/dist/assets/{AddDataStoreModal-C9lDhooH.js → AddDataStoreModal-BpBgou0E.js} +1 -1
  4. package/dist/assets/{AnimatedSpinner-DoiaSsyo.js → AnimatedSpinner-BVVzuhy8.js} +1 -1
  5. package/dist/assets/{AnnotationTagsDropdown.ee.vue_vue_type_script_setup_true_lang-C68foyxp.js → AnnotationTagsDropdown.ee.vue_vue_type_script_setup_true_lang-D9y_kml7.js} +1 -1
  6. package/dist/assets/{AuthView-CLDlKRpw.js → AuthView-DLJKQ74o.js} +2 -2
  7. package/dist/assets/{ChangePasswordView-iG7PgYdd.js → ChangePasswordView-BMWrkaiq.js} +3 -3
  8. package/dist/assets/CollectionParameter-Cb7K8toD.js +4 -0
  9. package/dist/assets/{ConsumedTokensDetails.vue_vue_type_script_setup_true_lang-DlF8qxM5.js → ConsumedTokensDetails.vue_vue_type_script_setup_true_lang-CgS2Cb5Q.js} +1 -1
  10. package/dist/assets/{CredentialsView-CYgIFP1z.js → CredentialsView-DHSg9xJ1.js} +10 -10
  11. package/dist/assets/{DataStoreActions.vue_vue_type_script_setup_true_lang-BC-HriQ3.js → DataStoreActions.vue_vue_type_script_setup_true_lang-C2Dn9B2o.js} +1 -1
  12. package/dist/assets/{DataStoreDetailsView-C8fMxukz.css → DataStoreDetailsView-Bc-J9ZrW.css} +224 -46
  13. package/dist/assets/{DataStoreDetailsView-CtMeAyyY.js → DataStoreDetailsView-yJ7Ifouw.js} +8117 -339
  14. package/dist/assets/{DataStoreView-D0R0E_jH.css → DataStoreView-BqQv7QeU.css} +10 -9
  15. package/dist/assets/{DataStoreView-B1Kxtjnl.js → DataStoreView-jb9J_g-Y.js} +35 -16
  16. package/dist/assets/{DemoFooter-BPQy7EdR.js → DemoFooter-BYvzzkpQ.js} +6 -6
  17. package/dist/assets/{EmptySharedSectionActionBox.vue_vue_type_script_setup_true_lang-D9e3ObnE.js → EmptySharedSectionActionBox.vue_vue_type_script_setup_true_lang-BfHfE-dU.js} +1 -1
  18. package/dist/assets/{EntityNotFound-DDHiVWRe.js → EntityNotFound-lPracI2m.js} +1 -1
  19. package/dist/assets/{EntityUnAuthorised-Clm3_4En.js → EntityUnAuthorised-zuygLqjz.js} +1 -1
  20. package/dist/assets/{ErrorView-CrYsrADA.js → ErrorView-C_k5_sJ0.js} +1 -1
  21. package/dist/assets/{EvaluationsRootView-C0OyvjOt.js → EvaluationsRootView-DP2_MhvN.js} +1 -1
  22. package/dist/assets/{EvaluationsView-BcMhW8o6.js → EvaluationsView-BHRPpTsS.js} +3 -3
  23. package/dist/assets/{ExecutionsTime.vue_vue_type_script_setup_true_lang-BmjUbn85.js → ExecutionsTime.vue_vue_type_script_setup_true_lang-DTpILxvC.js} +2 -2
  24. package/dist/assets/{ExecutionsView-GKNLT5Ec.css → ExecutionsView-B5yiPX6U.css} +1 -1
  25. package/dist/assets/{ExecutionsView-CdMuQ6Ay.js → ExecutionsView-Bv3YVM-6.js} +26 -20
  26. package/dist/assets/{FixedCollectionParameter-DNRbGHuU.js → FixedCollectionParameter-CZc3TqBt.js} +1 -1
  27. package/dist/assets/{ForgotMyPasswordView-CVYkGoS6.js → ForgotMyPasswordView-CaiqDg42.js} +3 -3
  28. package/dist/assets/{InfoAccordion-DXq9DJ4j.js → InfoAccordion-TbgnFURd.js} +1 -1
  29. package/dist/assets/{InsightsChartAverageRuntime-CXByy6Zo.js → InsightsChartAverageRuntime-BqCmV_C3.js} +4 -4
  30. package/dist/assets/{InsightsChartFailed-9zaeZgek.js → InsightsChartFailed-nhNAvWJ-.js} +4 -4
  31. package/dist/assets/{InsightsChartFailureRate-DT96wC8C.js → InsightsChartFailureRate-Ca8Ar9nD.js} +4 -4
  32. package/dist/assets/{InsightsChartTimeSaved-C6pLWWxa.js → InsightsChartTimeSaved-CuO9b6Em.js} +4 -4
  33. package/dist/assets/{InsightsChartTotal-Cc0YLVD7.js → InsightsChartTotal-Dk2_nvoT.js} +4 -4
  34. package/dist/assets/{InsightsDashboard-C27Avzrv.css → InsightsDashboard-Bo0U18-6.css} +18 -12
  35. package/dist/assets/{InsightsDashboard-qL2EE60l.js → InsightsDashboard-zCjTFLpM.js} +68 -35
  36. package/dist/assets/{InsightsPaywall-C_2IPEhI.js → InsightsPaywall-CBtrv5fk.js} +1 -1
  37. package/dist/assets/{InsightsSummary-tylKFBgw.js → InsightsSummary-BWRporX0.js} +1 -1
  38. package/dist/assets/{InsightsTableWorkflows-BwRj0aXe.js → InsightsTableWorkflows-DlGA2gWN.js} +4 -4
  39. package/dist/assets/{Logo-DqC1X5we.js → Logo-ayCSvzHf.js} +1 -1
  40. package/dist/assets/{LogsPanel-DZguGtyt.js → LogsPanel-DwPSXTSp.js} +34 -26
  41. package/dist/assets/{MainHeader-IFzZPcNW.js → MainHeader-BGOzl1ir.js} +11 -11
  42. package/dist/assets/{MainSidebar-D-2Yb5yU.js → MainSidebar-CGhxTuih.js} +27 -10
  43. package/dist/assets/{NodeCreation-CrPTESjn.js → NodeCreation-C2TX7WTu.js} +3 -3
  44. package/dist/assets/{NodeCreator-Db1k7Npw.js → NodeCreator-tQVCw9Uh.js} +1 -1
  45. package/dist/assets/{NodeDetailsView-T6l22FLo.js → NodeDetailsView-C-BCfvgR.js} +13 -13
  46. package/dist/assets/{NodeDetailsViewV2-Caf-LQD7.js → NodeDetailsViewV2-CHkxHxvz.js} +13 -13
  47. package/dist/assets/{NodeView-B08ajmmZ.js → NodeView-B6Bv6TYS.js} +13 -12
  48. package/dist/assets/{PageViewLayout-B01Cj9Ag.js → PageViewLayout-_SQAsKsq.js} +1 -1
  49. package/dist/assets/{PrebuiltAgentTemplatesView-ZbB8Spq8.js → PrebuiltAgentTemplatesView-DOI6Oras.js} +2 -2
  50. package/dist/assets/{ProjectBreadcrumb-vTjbzQHC.js → ProjectBreadcrumb-DdovGxoT.js} +1 -1
  51. package/dist/assets/{ProjectHeader-CsH8YD16.js → ProjectHeader-CmNr3RiV.js} +3 -3
  52. package/dist/assets/{ProjectSettings-CCVXNK3G.css → ProjectSettings-B5z1mrGW.css} +155 -9
  53. package/dist/assets/{ProjectSettings-CYy5LBLu.js → ProjectSettings-BLw1-aa2.js} +490 -121
  54. package/dist/assets/{PushConnectionTracker.vue_vue_type_script_setup_true_lang-DOMRXCVj.js → PushConnectionTracker.vue_vue_type_script_setup_true_lang-BvsEzRu6.js} +1 -1
  55. package/dist/assets/{ResourcesListLayout-CEq6DTya.js → ResourcesListLayout-CFoOOQpo.js} +4 -4
  56. package/dist/assets/{RunDataJson-CM54dhgQ.js → RunDataJson-KBqmqbfA.js} +3 -3
  57. package/dist/assets/{RunDataJsonActions-BGkwaXF1.js → RunDataJsonActions-CKFc7ymK.js} +1 -1
  58. package/dist/assets/{RunDataParsedAiContent-CCScHhrV.js → RunDataParsedAiContent-Ce_ctsro.js} +2 -2
  59. package/dist/assets/{RunDataSearch-D8tSIc5y.js → RunDataSearch-gM--YmOH.js} +1 -1
  60. package/dist/assets/{RunDataTable-y4SItH7m.js → RunDataTable-CV1IQEC1.js} +1 -1
  61. package/dist/assets/{SamlOnboarding-B-qxZA7T.js → SamlOnboarding-sD7YkjXE.js} +3 -3
  62. package/dist/assets/{SelectedItemsInfo-8rTveqLV.js → SelectedItemsInfo-CWRoXt5N.js} +1 -1
  63. package/dist/assets/{SettingsApiView-Crwc7f2q.js → SettingsApiView-CjxSweZ2.js} +1 -1
  64. package/dist/assets/{SettingsCommunityNodesView-D_CDclON.js → SettingsCommunityNodesView-BZS-1Pu8.js} +6 -6
  65. package/dist/assets/{SettingsExternalSecrets-D9EYRw94.js → SettingsExternalSecrets-CUP7WmUX.js} +1 -1
  66. package/dist/assets/{SettingsLdapView-IWmIFFmQ.js → SettingsLdapView-CAcFtpvb.js} +1 -1
  67. package/dist/assets/{SettingsLogStreamingView-T9ajKTLt.js → SettingsLogStreamingView-Db06ainF.js} +1 -1
  68. package/dist/assets/{SettingsPersonalView-ClpcCCUK.js → SettingsPersonalView-CFAcW525.js} +15 -2
  69. package/dist/assets/{SettingsSourceControl-D4MKPsIp.js → SettingsSourceControl-Cl0Z45op.js} +1 -1
  70. package/dist/assets/{SettingsSso-Dh0TCa3N.js → SettingsSso-hvpitcmh.js} +1 -1
  71. package/dist/assets/{SettingsUsageAndPlan-_VxSs28G.css → SettingsUsageAndPlan-CfFJy6fo.css} +3 -3
  72. package/dist/assets/{SettingsUsageAndPlan-DMz52D_8.js → SettingsUsageAndPlan-pIa02R8X.js} +3 -7
  73. package/dist/assets/{SettingsUsersView-CyOqQQ1T.js → SettingsUsersView-Bc_d_j_C.js} +10 -24
  74. package/dist/assets/{SettingsView-9XSvAxZn.js → SettingsView-k1Qk6b9u.js} +1 -1
  75. package/dist/assets/{SetupView-CaQUQHtZ.js → SetupView-CgueTipX.js} +3 -3
  76. package/dist/assets/{SetupWorkflowCredentialsButton-CLPdPWR-.js → SetupWorkflowCredentialsButton-9ZdgoxH6.js} +1 -1
  77. package/dist/assets/{SetupWorkflowFromTemplateView-Cwy86CRf.js → SetupWorkflowFromTemplateView-DImn3MLc.js} +3 -3
  78. package/dist/assets/{SigninView-B1CFcKZW.js → SigninView-Dy2njlT9.js} +3 -3
  79. package/dist/assets/{SignoutView-tXEnZbBW.js → SignoutView-BW4OLG4T.js} +1 -1
  80. package/dist/assets/{SignupView-tG0nF3IX.js → SignupView-DqiOjgU_.js} +3 -3
  81. package/dist/assets/{TableBase-Bk0Ksvri.js → TableBase-J7qyS7Oi.js} +1 -1
  82. package/dist/assets/{Tags-bLJnzJ9O.js → Tags-DHmekS5b.js} +1 -1
  83. package/dist/assets/{TemplateDetails-DwB2MNDs.js → TemplateDetails-lA7coCfr.js} +2 -2
  84. package/dist/assets/{TemplateList-xz6dq_b_.js → TemplateList-C_enJUC-.js} +1 -1
  85. package/dist/assets/{TemplatesCollectionView-CBHrX6qh.js → TemplatesCollectionView-Bvr4Jl4e.js} +6 -6
  86. package/dist/assets/{TemplatesSearchView-DlCohPQw.js → TemplatesSearchView-DNEWIXcA.js} +3 -3
  87. package/dist/assets/{TemplatesView-BWRC7u13.js → TemplatesView-D6kBDKHq.js} +1 -1
  88. package/dist/assets/{TemplatesWorkflowView-IFi-aXTJ.js → TemplatesWorkflowView-CxpvFC33.js} +6 -6
  89. package/dist/assets/{TriggerPanel-CGEgWBP1.js → TriggerPanel-aOMoGQPb.js} +5 -5
  90. package/dist/assets/{VariablesView-DCIpb3py.js → VariablesView-CF7zW6sO.js} +6 -6
  91. package/dist/assets/{WorkerView-BNJtp3_b.js → WorkerView-CPSFDQ3M.js} +8 -8
  92. package/dist/assets/{WorkflowActivator-GWpvfdPq.js → WorkflowActivator-2k4uBcXx.js} +3 -3
  93. package/dist/assets/{WorkflowExecutionsInfoAccordion-DyC6zINy.js → WorkflowExecutionsInfoAccordion-DLSyy7P3.js} +2 -2
  94. package/dist/assets/{WorkflowExecutionsLandingPage-CHU6rsbS.js → WorkflowExecutionsLandingPage-B0lwEkzs.js} +3 -3
  95. package/dist/assets/{WorkflowExecutionsPreview-BRZcVWz8.js → WorkflowExecutionsPreview-fdG8WvjQ.js} +4 -4
  96. package/dist/assets/{WorkflowExecutionsView-D2avX462.js → WorkflowExecutionsView-DoOsdRNS.js} +12 -14
  97. package/dist/assets/{WorkflowExecutionsView-C_xuUSa8.css → WorkflowExecutionsView-DqWqyiNg.css} +2 -2
  98. package/dist/assets/{WorkflowHistory-CezxUWJ3.js → WorkflowHistory-BmCEHmbX.js} +2 -2
  99. package/dist/assets/{WorkflowOnboardingView-CoLRNMn7.js → WorkflowOnboardingView-DoANwef9.js} +1 -1
  100. package/dist/assets/{WorkflowPreview-6_5498ls.js → WorkflowPreview-BcVSQJ1r.js} +1 -1
  101. package/dist/assets/{WorkflowsView-yo-aPIAy.js → WorkflowsView-DfkdEDYd.js} +14 -14
  102. package/dist/assets/{canvas-CNbb2A4n.js → canvas-DjkOwLgJ.js} +1 -1
  103. package/dist/assets/{chartjs.utils-BuEfxZRs.js → chartjs.utils-P0M5ijsc.js} +2 -2
  104. package/dist/assets/{core-BmUd0ZQy.js → core-WbBbE4BE.js} +1 -1
  105. package/dist/assets/{global-link-actions-DLwTpw-D.js → global-link-actions-Cq9wmyMP.js} +1 -1
  106. package/dist/assets/{index-B7wrqKiF.css → index-CpPc1kM8.css} +331 -206
  107. package/dist/assets/{index-BqqmY62y.js → index-DGLJxfnn.js} +8240 -4664
  108. package/dist/assets/{index-B4kldndn.js → index-vcIMPEwS.js} +1 -1
  109. package/dist/assets/{pickBy-D_Xqfu3B.js → pickBy-ClKklBll.js} +1 -1
  110. package/dist/assets/{readyToRunWorkflows.store-DV_gQvCM.js → readyToRunWorkflows.store-By37rv7G.js} +1 -1
  111. package/dist/assets/readyToRunWorkflowsV2.store-Dl9lSVnl.js +648 -0
  112. package/dist/assets/{templateActions-BswjlHEI.js → templateActions-DIHXnHcb.js} +1 -1
  113. package/dist/assets/{useBeforeUnload-BfDs84Xo.js → useBeforeUnload-DixKQhw1.js} +1 -1
  114. package/dist/assets/{useExecutionDebugging-ZrtkQtcL.js → useExecutionDebugging-CONIO3Vz.js} +1 -1
  115. package/dist/assets/{useImportCurlCommand-TipLhFW-.js → useImportCurlCommand-CcLwFKyp.js} +1 -1
  116. package/dist/assets/{useProjectPages-DGeR5Bq7.js → useProjectPages-eaNvpOz-.js} +1 -1
  117. package/dist/assets/{usePushConnection-BxoIfCAQ.js → usePushConnection-C9lQfiNc.js} +12 -7
  118. package/dist/assets/{useWorkflowActivate-Dk_tmPQm.js → useWorkflowActivate-ByzVgA6z.js} +1 -1
  119. package/dist/index.html +2 -2
  120. package/package.json +1 -1
  121. package/scripts/fetch-node-popularity.mjs +90 -0
  122. package/turbo.json +19 -0
  123. package/vite/vite-plugin-node-popularity.mts +32 -0
  124. package/vite.config.mts +2 -0
  125. package/dist/assets/CollectionParameter-CYXwrQBH.js +0 -4
  126. package/dist/assets/readyToRunWorkflowsV2.store-ZhxGm4dM.js +0 -137
@@ -1,6 +1,6 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/InsightsPaywall-C_2IPEhI.js","assets/index-BqqmY62y.js","assets/index-B7wrqKiF.css","assets/InsightsPaywall-CE5W3W4m.css","assets/InsightsChartTotal-Cc0YLVD7.js","assets/chartjs.utils-BuEfxZRs.js","assets/InsightsSummary-tylKFBgw.js","assets/InsightsSummary-DTFIhBF3.css","assets/index-B4kldndn.js","assets/InsightsChartFailed-9zaeZgek.js","assets/InsightsChartFailureRate-DT96wC8C.js","assets/InsightsChartTimeSaved-C6pLWWxa.js","assets/InsightsChartAverageRuntime-CXByy6Zo.js","assets/InsightsTableWorkflows-BwRj0aXe.js","assets/InsightsTableWorkflows-BTHSCwX8.css"])))=>i.map(i=>d[i]);
2
- import { d as defineComponent, ek as useModel, gh as useInsightsStore, gr as getTimeRangeLabels, r as ref, h9 as UNLICENSED_TIME_RANGE, e as createBlock, g as openBlock, w as withCtx, h as createElementBlock, F as Fragment, A as renderList, l as unref, ed as _sfc_main$3, k as createTextVNode, f as createCommentVNode, t as toDisplayString, j as createBaseVNode, ec as N8nSelect, x as computed, c as useI18n, i as createVNode, p as N8nText, q as N8nButton, ha as ElDialog, aB as usePageRedirectionHelper, _ as _export_sfc, a3 as useRoute, hb as INSIGHT_TYPES, dx as defineAsyncComponent, a8 as watch, o as onMounted, ay as useDocumentTitle, m as N8nHeading, n as normalizeClass, dN as _sfc_main$4, c5 as resolveDynamicComponent, aV as __vitePreload, am as useTelemetry, hc as TELEMETRY_TIME_RANGE } from "./index-BqqmY62y.js";
3
- import { I as InsightsSummary } from "./InsightsSummary-tylKFBgw.js";
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/InsightsPaywall-CBtrv5fk.js","assets/index-DGLJxfnn.js","assets/index-CpPc1kM8.css","assets/InsightsPaywall-CE5W3W4m.css","assets/InsightsChartTotal-Dk2_nvoT.js","assets/chartjs.utils-P0M5ijsc.js","assets/InsightsSummary-BWRporX0.js","assets/InsightsSummary-DTFIhBF3.css","assets/index-vcIMPEwS.js","assets/InsightsChartFailed-nhNAvWJ-.js","assets/InsightsChartFailureRate-Ca8Ar9nD.js","assets/InsightsChartTimeSaved-CuO9b6Em.js","assets/InsightsChartAverageRuntime-BqCmV_C3.js","assets/InsightsTableWorkflows-DlGA2gWN.js","assets/InsightsTableWorkflows-BTHSCwX8.css"])))=>i.map(i=>d[i]);
2
+ import { d as defineComponent, em as useModel, gh as useInsightsStore, gr as getTimeRangeLabels, r as ref, hb as UNLICENSED_TIME_RANGE, e as createBlock, g as openBlock, w as withCtx, h as createElementBlock, F as Fragment, A as renderList, l as unref, ed as _sfc_main$3, k as createTextVNode, f as createCommentVNode, t as toDisplayString, j as createBaseVNode, ec as N8nSelect, x as computed, c as useI18n, i as createVNode, p as N8nText, q as N8nButton, hc as ElDialog, aB as usePageRedirectionHelper, _ as _export_sfc, a3 as useRoute, av as useProjectsStore, hd as INSIGHT_TYPES, dx as defineAsyncComponent, a8 as watch, o as onMounted, ay as useDocumentTitle, b2 as onBeforeMount, m as N8nHeading, n as normalizeClass, fI as ProjectSharing, dN as _sfc_main$4, c5 as resolveDynamicComponent, aV as __vitePreload, am as useTelemetry, he as TELEMETRY_TIME_RANGE } from "./index-DGLJxfnn.js";
3
+ import { I as InsightsSummary } from "./InsightsSummary-BWRporX0.js";
4
4
  const _hoisted_1$2 = {
5
5
  key: 0,
6
6
  width: "16",
@@ -167,7 +167,10 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
167
167
  }
168
168
  });
169
169
  const InsightsUpgradeModal = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-f995e7d0"]]);
170
- const _hoisted_1 = { class: "mt-s" };
170
+ const _hoisted_1 = {
171
+ class: "mt-s",
172
+ style: { "display": "flex", "gap": "12px", "align-items": "center" }
173
+ };
171
174
  const _sfc_main = /* @__PURE__ */ defineComponent({
172
175
  __name: "InsightsDashboard",
173
176
  props: {
@@ -175,31 +178,32 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
175
178
  },
176
179
  setup(__props) {
177
180
  const InsightsPaywall = defineAsyncComponent(
178
- async () => await __vitePreload(() => import("./InsightsPaywall-C_2IPEhI.js"), true ? __vite__mapDeps([0,1,2,3]) : void 0)
181
+ async () => await __vitePreload(() => import("./InsightsPaywall-CBtrv5fk.js"), true ? __vite__mapDeps([0,1,2,3]) : void 0)
179
182
  );
180
183
  const InsightsChartTotal = defineAsyncComponent(
181
- async () => await __vitePreload(() => import("./InsightsChartTotal-Cc0YLVD7.js"), true ? __vite__mapDeps([4,1,2,5,6,7,8]) : void 0)
184
+ async () => await __vitePreload(() => import("./InsightsChartTotal-Dk2_nvoT.js"), true ? __vite__mapDeps([4,1,2,5,6,7,8]) : void 0)
182
185
  );
183
186
  const InsightsChartFailed = defineAsyncComponent(
184
- async () => await __vitePreload(() => import("./InsightsChartFailed-9zaeZgek.js"), true ? __vite__mapDeps([9,1,2,5,6,7,8]) : void 0)
187
+ async () => await __vitePreload(() => import("./InsightsChartFailed-nhNAvWJ-.js"), true ? __vite__mapDeps([9,1,2,5,6,7,8]) : void 0)
185
188
  );
186
189
  const InsightsChartFailureRate = defineAsyncComponent(
187
- async () => await __vitePreload(() => import("./InsightsChartFailureRate-DT96wC8C.js"), true ? __vite__mapDeps([10,1,2,5,6,7,8]) : void 0)
190
+ async () => await __vitePreload(() => import("./InsightsChartFailureRate-Ca8Ar9nD.js"), true ? __vite__mapDeps([10,1,2,5,6,7,8]) : void 0)
188
191
  );
189
192
  const InsightsChartTimeSaved = defineAsyncComponent(
190
- async () => await __vitePreload(() => import("./InsightsChartTimeSaved-C6pLWWxa.js"), true ? __vite__mapDeps([11,1,2,5,6,7,8]) : void 0)
193
+ async () => await __vitePreload(() => import("./InsightsChartTimeSaved-CuO9b6Em.js"), true ? __vite__mapDeps([11,1,2,5,6,7,8]) : void 0)
191
194
  );
192
195
  const InsightsChartAverageRuntime = defineAsyncComponent(
193
- async () => await __vitePreload(() => import("./InsightsChartAverageRuntime-CXByy6Zo.js"), true ? __vite__mapDeps([12,1,2,5,6,7,8]) : void 0)
196
+ async () => await __vitePreload(() => import("./InsightsChartAverageRuntime-BqCmV_C3.js"), true ? __vite__mapDeps([12,1,2,5,6,7,8]) : void 0)
194
197
  );
195
198
  const InsightsTableWorkflows = defineAsyncComponent(
196
- async () => await __vitePreload(() => import("./InsightsTableWorkflows-BwRj0aXe.js"), true ? __vite__mapDeps([13,1,2,6,7,14]) : void 0)
199
+ async () => await __vitePreload(() => import("./InsightsTableWorkflows-DlGA2gWN.js"), true ? __vite__mapDeps([13,1,2,6,7,14]) : void 0)
197
200
  );
198
201
  const props = __props;
199
202
  const route = useRoute();
200
203
  const i18n = useI18n();
201
204
  const telemetry = useTelemetry();
202
205
  const insightsStore = useInsightsStore();
206
+ const projectsStore = useProjectsStore();
203
207
  const isTimeSavedRoute = computed(() => route.params.insightType === INSIGHT_TYPES.TIME_SAVED);
204
208
  const chartComponents = computed(() => ({
205
209
  total: InsightsChartTotal,
@@ -213,11 +217,19 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
213
217
  const order = desc ? "desc" : "asc";
214
218
  return `${key}:${order}`;
215
219
  };
220
+ const sortTableBy = ref([{ id: props.insightType, desc: true }]);
221
+ const upgradeModalVisible = ref(false);
222
+ const selectedDateRange = ref("week");
223
+ const granularity = computed(
224
+ () => insightsStore.dateRanges.find((item) => item.key === selectedDateRange.value)?.granularity ?? "day"
225
+ );
226
+ const selectedProject = ref(null);
216
227
  const fetchPaginatedTableData = ({
217
228
  page = 0,
218
229
  itemsPerPage = 25,
219
230
  sortBy,
220
- dateRange = selectedDateRange.value
231
+ dateRange = selectedDateRange.value,
232
+ projectId = selectedProject.value?.id
221
233
  }) => {
222
234
  const skip = page * itemsPerPage;
223
235
  const take = itemsPerPage;
@@ -226,15 +238,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
226
238
  skip,
227
239
  take,
228
240
  sortBy: sortKey,
229
- dateRange
241
+ dateRange,
242
+ projectId
230
243
  });
231
244
  };
232
- const sortTableBy = ref([{ id: props.insightType, desc: true }]);
233
- const upgradeModalVisible = ref(false);
234
- const selectedDateRange = ref("week");
235
- const granularity = computed(
236
- () => insightsStore.dateRanges.find((item) => item.key === selectedDateRange.value)?.granularity ?? "day"
237
- );
238
245
  function handleTimeChange(value) {
239
246
  if (value === UNLICENSED_TIME_RANGE) {
240
247
  upgradeModalVisible.value = true;
@@ -244,15 +251,25 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
244
251
  telemetry.track("User updated insights time range", { range: TELEMETRY_TIME_RANGE[value] });
245
252
  }
246
253
  watch(
247
- () => [props.insightType, selectedDateRange.value],
254
+ () => [props.insightType, selectedDateRange.value, selectedProject.value],
248
255
  () => {
249
256
  sortTableBy.value = [{ id: props.insightType, desc: true }];
250
257
  if (insightsStore.isSummaryEnabled) {
251
- void insightsStore.summary.execute(0, { dateRange: selectedDateRange.value });
258
+ void insightsStore.summary.execute(0, {
259
+ dateRange: selectedDateRange.value,
260
+ projectId: selectedProject.value?.id
261
+ });
252
262
  }
253
- void insightsStore.charts.execute(0, { dateRange: selectedDateRange.value });
263
+ void insightsStore.charts.execute(0, {
264
+ dateRange: selectedDateRange.value,
265
+ projectId: selectedProject.value?.id
266
+ });
254
267
  if (insightsStore.isDashboardEnabled) {
255
- fetchPaginatedTableData({ sortBy: sortTableBy.value, dateRange: selectedDateRange.value });
268
+ fetchPaginatedTableData({
269
+ sortBy: sortTableBy.value,
270
+ dateRange: selectedDateRange.value,
271
+ projectId: selectedProject.value?.id
272
+ });
256
273
  }
257
274
  },
258
275
  {
@@ -262,6 +279,9 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
262
279
  onMounted(() => {
263
280
  useDocumentTitle().set(i18n.baseText("insights.heading"));
264
281
  });
282
+ onBeforeMount(async () => {
283
+ await projectsStore.getAvailableProjects();
284
+ });
265
285
  return (_ctx, _cache) => {
266
286
  const _component_N8nHeading = N8nHeading;
267
287
  const _component_N8nSpinner = _sfc_main$4;
@@ -282,6 +302,17 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
282
302
  _: 1
283
303
  }),
284
304
  createBaseVNode("div", _hoisted_1, [
305
+ createVNode(ProjectSharing, {
306
+ modelValue: selectedProject.value,
307
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => selectedProject.value = $event),
308
+ projects: unref(projectsStore).availableProjects,
309
+ placeholder: unref(i18n).baseText("forms.resourceFiltersDropdown.owner.placeholder"),
310
+ "empty-options-text": unref(i18n).baseText("projects.sharing.noMatchingProjects"),
311
+ size: "mini",
312
+ class: normalizeClass(_ctx.$style.projectSelect),
313
+ clearable: "",
314
+ onClear: _cache[1] || (_cache[1] = ($event) => selectedProject.value = null)
315
+ }, null, 8, ["modelValue", "projects", "placeholder", "empty-options-text", "class"]),
285
316
  createVNode(_sfc_main$2, {
286
317
  "model-value": selectedDateRange.value,
287
318
  style: { "width": "173px" },
@@ -290,7 +321,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
290
321
  }, null, 8, ["model-value"]),
291
322
  createVNode(InsightsUpgradeModal, {
292
323
  modelValue: upgradeModalVisible.value,
293
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => upgradeModalVisible.value = $event)
324
+ "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => upgradeModalVisible.value = $event)
294
325
  }, null, 8, ["modelValue"])
295
326
  ]),
296
327
  unref(insightsStore).isSummaryEnabled ? (openBlock(), createBlock(InsightsSummary, {
@@ -332,7 +363,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
332
363
  }, [
333
364
  createVNode(unref(InsightsTableWorkflows), {
334
365
  "sort-by": sortTableBy.value,
335
- "onUpdate:sortBy": _cache[1] || (_cache[1] = ($event) => sortTableBy.value = $event),
366
+ "onUpdate:sortBy": _cache[3] || (_cache[3] = ($event) => sortTableBy.value = $event),
336
367
  data: unref(insightsStore).table.state,
337
368
  loading: unref(insightsStore).table.isLoading,
338
369
  "is-dashboard-enabled": unref(insightsStore).isDashboardEnabled,
@@ -346,15 +377,16 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
346
377
  };
347
378
  }
348
379
  });
349
- const insightsView = "_insightsView_8g4zl_123";
350
- const insightsContainer = "_insightsContainer_8g4zl_131";
351
- const insightsBanner = "_insightsBanner_8g4zl_138";
352
- const insightsContent = "_insightsContent_8g4zl_146";
353
- const insightsContentWrapper = "_insightsContentWrapper_8g4zl_155";
354
- const insightsChartWrapper = "_insightsChartWrapper_8g4zl_160";
355
- const insightsTableWrapper = "_insightsTableWrapper_8g4zl_167";
356
- const dataLoader = "_dataLoader_8g4zl_173";
357
- const isDataLoading = "_isDataLoading_8g4zl_186";
380
+ const insightsView = "_insightsView_qoygt_123";
381
+ const insightsContainer = "_insightsContainer_qoygt_131";
382
+ const insightsBanner = "_insightsBanner_qoygt_138";
383
+ const insightsContent = "_insightsContent_qoygt_146";
384
+ const insightsContentWrapper = "_insightsContentWrapper_qoygt_155";
385
+ const insightsChartWrapper = "_insightsChartWrapper_qoygt_160";
386
+ const insightsTableWrapper = "_insightsTableWrapper_qoygt_167";
387
+ const dataLoader = "_dataLoader_qoygt_173";
388
+ const isDataLoading = "_isDataLoading_qoygt_186";
389
+ const projectSelect = "_projectSelect_qoygt_208";
358
390
  const style0 = {
359
391
  insightsView,
360
392
  insightsContainer,
@@ -364,7 +396,8 @@ const style0 = {
364
396
  insightsChartWrapper,
365
397
  insightsTableWrapper,
366
398
  dataLoader,
367
- isDataLoading
399
+ isDataLoading,
400
+ projectSelect
368
401
  };
369
402
  const cssModules = {
370
403
  "$style": style0
@@ -1,4 +1,4 @@
1
- import { d as defineComponent, aB as usePageRedirectionHelper, h as createElementBlock, g as openBlock, i as createVNode, N as N8nIcon, w as withCtx, k as createTextVNode, t as toDisplayString, l as unref, c as useI18n, p as N8nText, q as N8nButton, n as normalizeClass, _ as _export_sfc } from "./index-BqqmY62y.js";
1
+ import { d as defineComponent, aB as usePageRedirectionHelper, h as createElementBlock, g as openBlock, i as createVNode, N as N8nIcon, w as withCtx, k as createTextVNode, t as toDisplayString, l as unref, c as useI18n, p as N8nText, q as N8nButton, n as normalizeClass, _ as _export_sfc } from "./index-DGLJxfnn.js";
2
2
  const _sfc_main = /* @__PURE__ */ defineComponent({
3
3
  __name: "InsightsPaywall",
4
4
  setup(__props) {
@@ -1,4 +1,4 @@
1
- import { d as defineComponent, a3 as useRoute, at as useCssModule, gr as getTimeRangeLabels, x as computed, c as useI18n, V as VIEWS, a9 as resolveComponent, h as createElementBlock, g as openBlock, n as normalizeClass, l as unref, j as createBaseVNode, F as Fragment, A as renderList, i as createVNode, w as withCtx, aa as Tooltip, k as createTextVNode, t as toDisplayString, N as N8nIcon, ac as I18nT, f as createCommentVNode, gs as INSIGHT_IMPACT_TYPES, am as useTelemetry, gt as INSIGHTS_UNIT_IMPACT_MAPPING, _ as _export_sfc } from "./index-BqqmY62y.js";
1
+ import { d as defineComponent, a3 as useRoute, at as useCssModule, gr as getTimeRangeLabels, x as computed, c as useI18n, V as VIEWS, a9 as resolveComponent, h as createElementBlock, g as openBlock, n as normalizeClass, l as unref, j as createBaseVNode, F as Fragment, A as renderList, i as createVNode, w as withCtx, aa as Tooltip, k as createTextVNode, t as toDisplayString, N as N8nIcon, ac as I18nT, f as createCommentVNode, gs as INSIGHT_IMPACT_TYPES, am as useTelemetry, gt as INSIGHTS_UNIT_IMPACT_MAPPING, _ as _export_sfc } from "./index-DGLJxfnn.js";
2
2
  const smartDecimal = (value, decimals = 2) => {
3
3
  if (Number.isInteger(value)) {
4
4
  return value;
@@ -1,6 +1,6 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/InsightsPaywall-C_2IPEhI.js","assets/index-BqqmY62y.js","assets/index-B7wrqKiF.css","assets/InsightsPaywall-CE5W3W4m.css"])))=>i.map(i=>d[i]);
2
- import { d as defineComponent, ej as mergeModels, x as computed, r as ref, c as useI18n, i7 as transformInsightsFailureRate, i8 as INSIGHTS_UNIT_MAPPING, ia as transformInsightsTimeSaved, ib as transformInsightsAverageRunTime, ek as useModel, a8 as watch, a9 as resolveComponent, h as createElementBlock, g as openBlock, i as createVNode, w as withCtx, k as createTextVNode, t as toDisplayString, l as unref, m as N8nHeading, bs as createSlots, j as createBaseVNode, n as normalizeClass, dx as defineAsyncComponent, e as createBlock, aa as Tooltip, F as Fragment, V as VIEWS, c5 as resolveDynamicComponent, c3 as normalizeProps, c4 as guardReactiveProps, el as N8nDataTableServer, aV as __vitePreload, am as useTelemetry, _ as _export_sfc } from "./index-BqqmY62y.js";
3
- import { s as smartDecimal } from "./InsightsSummary-tylKFBgw.js";
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/InsightsPaywall-CBtrv5fk.js","assets/index-DGLJxfnn.js","assets/index-CpPc1kM8.css","assets/InsightsPaywall-CE5W3W4m.css"])))=>i.map(i=>d[i]);
2
+ import { d as defineComponent, el as mergeModels, x as computed, r as ref, c as useI18n, i9 as transformInsightsFailureRate, ia as INSIGHTS_UNIT_MAPPING, ic as transformInsightsTimeSaved, id as transformInsightsAverageRunTime, em as useModel, a8 as watch, a9 as resolveComponent, h as createElementBlock, g as openBlock, i as createVNode, w as withCtx, k as createTextVNode, t as toDisplayString, l as unref, m as N8nHeading, bs as createSlots, j as createBaseVNode, n as normalizeClass, dx as defineAsyncComponent, e as createBlock, aa as Tooltip, F as Fragment, V as VIEWS, c5 as resolveDynamicComponent, c3 as normalizeProps, c4 as guardReactiveProps, en as N8nDataTableServer, aV as __vitePreload, am as useTelemetry, _ as _export_sfc } from "./index-DGLJxfnn.js";
3
+ import { s as smartDecimal } from "./InsightsSummary-BWRporX0.js";
4
4
  const _sfc_main = /* @__PURE__ */ defineComponent({
5
5
  __name: "InsightsTableWorkflows",
6
6
  props: /* @__PURE__ */ mergeModels({
@@ -14,7 +14,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
14
14
  emits: /* @__PURE__ */ mergeModels(["update:options"], ["update:sortBy"]),
15
15
  setup(__props, { emit: __emit }) {
16
16
  const InsightsPaywall = defineAsyncComponent(
17
- async () => await __vitePreload(() => import("./InsightsPaywall-C_2IPEhI.js"), true ? __vite__mapDeps([0,1,2,3]) : void 0)
17
+ async () => await __vitePreload(() => import("./InsightsPaywall-CBtrv5fk.js"), true ? __vite__mapDeps([0,1,2,3]) : void 0)
18
18
  );
19
19
  const props = __props;
20
20
  const i18n = useI18n();
@@ -1,4 +1,4 @@
1
- import { h as createElementBlock, g as openBlock, j as createBaseVNode, d as defineComponent, x as computed, at as useCssModule, aH as useTemplateRef, o as onMounted, f9 as useFavicon, n as normalizeClass, i as createVNode, e as createBlock, f as createCommentVNode, Y as renderSlot, l as unref, _ as _export_sfc } from "./index-BqqmY62y.js";
1
+ import { h as createElementBlock, g as openBlock, j as createBaseVNode, d as defineComponent, x as computed, at as useCssModule, aH as useTemplateRef, o as onMounted, fb as useFavicon, n as normalizeClass, i as createVNode, e as createBlock, f as createCommentVNode, Y as renderSlot, l as unref, _ as _export_sfc } from "./index-DGLJxfnn.js";
2
2
  const _hoisted_1$1 = {
3
3
  xmlns: "http://www.w3.org/2000/svg",
4
4
  width: "32",
@@ -1,8 +1,8 @@
1
- import { bz as addTokenUsageData, bA as emptyTokenUsageData, bB as parseErrorMetadata, bC as isChatNode, bD as NodeConnectionTypes, bE as v4, bF as get, bG as AGENT_LANGCHAIN_NODE_TYPE, bH as MANUAL_CHAT_TRIGGER_NODE_TYPE, bI as CHAT_TRIGGER_NODE_TYPE, bJ as isEmpty, a as useToast, r as ref, x as computed, c as useI18n$1, bK as usePinnedData, an as useMessage, ao as MODAL_CONFIRM, a2 as useWorkflowsStore, au as useRootStore, bL as useLogsStore, b as useRouter, bM as useNodeHelpers, bN as useRunWorkflow, V as VIEWS, bO as chatEventBus, a8 as watch, bP as provide, d as defineComponent, h as createElementBlock, g as openBlock, n as normalizeClass, i as createVNode, j as createBaseVNode, l as unref, p as N8nText, w as withCtx, Y as renderSlot, k as createTextVNode, t as toDisplayString, _ as _export_sfc, a3 as useRoute, ag as useSourceControlStore, bQ as useCanvasOperations, ae as useNodeTypesStore, bR as START_NODE_TYPE, e as createBlock, f as createCommentVNode, aa as Tooltip, bS as formatTokenUsageCount, bT as getDefaultExportFromCjs, bU as requireUpperFirst, F as Fragment, aH as useTemplateRef, bV as useTimestamp, bW as toTime, bX as toDayMonth, B as withModifiers, A as renderList, aq as normalizeStyle, bY as NodeIcon, ac as I18nT, N as N8nIcon, ab as _sfc_main$k, q as N8nButton, Z as nextTick, bZ as getScrollbarWidth, b_ as useVirtualList, b$ as toRef, K as mergeProps, O as N8nRadioButtons, c0 as inject, c1 as isRef, c2 as toRefs, o as onMounted, c3 as normalizeProps, c4 as guardReactiveProps, c5 as resolveDynamicComponent, c6 as markdownLink, c7 as useFileDialog, c8 as onUnmounted, b3 as withDirectives, c9 as vModelText, b9 as withKeys, ca as useAttrs, cb as useClipboard, bs as createSlots, aZ as useNDVStore, cc as PopOutWindowKey, cd as resolveDirective, ce as RunData, C as N8nLink, cf as waitingNodeTooltip, cg as RunDataItemCount, a$ as useLocalStorage, ch as LOG_DETAILS_PANEL_STATE, ci as KeyboardShortcutTooltip, cj as N8nResizeWrapper, ck as useStyles, aN as N8nActionDropdown, cl as Workflow, cm as LOGS_EXECUTION_DATA_THROTTLE_DURATION, cn as useThrottleFn, co as parse, a4 as PLACEHOLDER_EMPTY_WORKFLOW_ID, cp as shallowRef, Q as useUIStore, cq as useCanvasStore, am as useTelemetry, ay as useDocumentTitle, cr as onScopeDispose, X as onBeforeUnmount, cs as useProvideTooltipAppendTo, ct as LOGS_PANEL_STATE, cu as LOCAL_STORAGE_PANEL_HEIGHT, cv as LOCAL_STORAGE_OVERVIEW_PANEL_WIDTH, cw as LOCAL_STORAGE_PANEL_WIDTH, cx as useActiveElement, bo as useKeybindings, cy as ndvEventBus } from "./index-BqqmY62y.js";
2
- import { _ as __unplugin_components_1 } from "./AnimatedSpinner-DoiaSsyo.js";
3
- import { _ as _sfc_main$j } from "./ConsumedTokensDetails.vue_vue_type_script_setup_true_lang-DlF8qxM5.js";
4
- import { H as HighlightJS, V as VueMarkdown } from "./core-BmUd0ZQy.js";
5
- import { c as canvasEventBus } from "./canvas-CNbb2A4n.js";
1
+ import { bz as addTokenUsageData, bA as emptyTokenUsageData, bB as parseErrorMetadata, bC as isChatNode, bD as NodeConnectionTypes, bE as v4, bF as get, bG as AGENT_LANGCHAIN_NODE_TYPE, bH as MANUAL_CHAT_TRIGGER_NODE_TYPE, bI as CHAT_TRIGGER_NODE_TYPE, bJ as isEmpty, a as useToast, r as ref, x as computed, c as useI18n$1, bK as usePinnedData, an as useMessage, ao as MODAL_CONFIRM, a2 as useWorkflowsStore, au as useRootStore, bL as useLogsStore, b as useRouter, bM as useNodeHelpers, bN as useRunWorkflow, a8 as watch, V as VIEWS, bO as chatEventBus, a4 as PLACEHOLDER_EMPTY_WORKFLOW_ID, bP as provide, d as defineComponent, h as createElementBlock, g as openBlock, n as normalizeClass, i as createVNode, j as createBaseVNode, l as unref, p as N8nText, w as withCtx, Y as renderSlot, k as createTextVNode, t as toDisplayString, _ as _export_sfc, a3 as useRoute, ag as useSourceControlStore, bQ as useCanvasOperations, ae as useNodeTypesStore, bR as START_NODE_TYPE, e as createBlock, f as createCommentVNode, aa as Tooltip, bS as formatTokenUsageCount, bT as getDefaultExportFromCjs, bU as requireUpperFirst, F as Fragment, aH as useTemplateRef, bV as useTimestamp, bW as toTime, bX as toDayMonth, B as withModifiers, A as renderList, aq as normalizeStyle, bY as NodeIcon, ac as I18nT, N as N8nIcon, ab as _sfc_main$k, q as N8nButton, Z as nextTick, bZ as getScrollbarWidth, b_ as useVirtualList, b$ as toRef, K as mergeProps, O as N8nRadioButtons, c0 as inject, c1 as isRef, c2 as toRefs, o as onMounted, c3 as normalizeProps, c4 as guardReactiveProps, c5 as resolveDynamicComponent, c6 as markdownLink, c7 as useFileDialog, c8 as onUnmounted, b3 as withDirectives, c9 as vModelText, b9 as withKeys, ca as useAttrs, cb as useClipboard, bs as createSlots, aZ as useNDVStore, cc as PopOutWindowKey, cd as resolveDirective, ce as RunData, C as N8nLink, cf as waitingNodeTooltip, cg as RunDataItemCount, a$ as useLocalStorage, ch as LOG_DETAILS_PANEL_STATE, ci as KeyboardShortcutTooltip, cj as N8nResizeWrapper, ck as useStyles, aN as N8nActionDropdown, cl as Workflow, cm as LOGS_EXECUTION_DATA_THROTTLE_DURATION, cn as useThrottleFn, co as parse, cp as shallowRef, Q as useUIStore, cq as useCanvasStore, am as useTelemetry, ay as useDocumentTitle, cr as onScopeDispose, X as onBeforeUnmount, cs as useProvideTooltipAppendTo, ct as LOGS_PANEL_STATE, cu as LOCAL_STORAGE_PANEL_HEIGHT, cv as LOCAL_STORAGE_OVERVIEW_PANEL_WIDTH, cw as LOCAL_STORAGE_PANEL_WIDTH, cx as useActiveElement, bo as useKeybindings, cy as ndvEventBus } from "./index-DGLJxfnn.js";
2
+ import { _ as __unplugin_components_1 } from "./AnimatedSpinner-BVVzuhy8.js";
3
+ import { _ as _sfc_main$j } from "./ConsumedTokensDetails.vue_vue_type_script_setup_true_lang-CgS2Cb5Q.js";
4
+ import { H as HighlightJS, V as VueMarkdown } from "./core-WbBbE4BE.js";
5
+ import { c as canvasEventBus } from "./canvas-DjkOwLgJ.js";
6
6
  const TOOL_EXECUTOR_NODE_NAME = "PartialExecutionToolExecutor";
7
7
  function constructChatWebsocketUrl(url, executionId, sessionId2, isPublic) {
8
8
  const baseUrl = new URL(url).origin;
@@ -375,11 +375,11 @@ function isPlaceholderLog(treeNode) {
375
375
  }
376
376
  function useChatMessaging({
377
377
  chatTrigger,
378
- messages: messages2,
379
378
  sessionId: sessionId2,
380
379
  executionResultData,
381
380
  onRunChatWorkflow,
382
- ws
381
+ ws,
382
+ onNewMessage
383
383
  }) {
384
384
  const locale = useI18n$1();
385
385
  const { showError } = useToast();
@@ -437,7 +437,7 @@ function useChatMessaging({
437
437
  const inputKey = getInputKey(triggerNode);
438
438
  const inputPayload = {
439
439
  json: {
440
- sessionId: sessionId2.value,
440
+ sessionId: sessionId2,
441
441
  action: "sendMessage",
442
442
  [inputKey]: message
443
443
  }
@@ -478,7 +478,7 @@ function useChatMessaging({
478
478
  locale.baseText("chat.window.chat.response.empty")
479
479
  ) : void 0;
480
480
  if (chatMessage !== void 0) {
481
- messages2.value.push(chatMessage);
481
+ onNewMessage(chatMessage);
482
482
  }
483
483
  }
484
484
  async function sendMessage(message, files) {
@@ -506,15 +506,15 @@ function useChatMessaging({
506
506
  const newMessage = {
507
507
  text: message,
508
508
  sender: "user",
509
- sessionId: sessionId2.value,
509
+ sessionId: sessionId2,
510
510
  id: v4(),
511
511
  files
512
512
  };
513
- messages2.value.push(newMessage);
513
+ onNewMessage(newMessage);
514
514
  if (ws.value?.readyState === WebSocket.OPEN && !isLoading.value) {
515
515
  ws.value.send(
516
516
  JSON.stringify({
517
- sessionId: sessionId2.value,
517
+ sessionId: sessionId2,
518
518
  action: "sendMessage",
519
519
  chatInput: message,
520
520
  files: await processFiles(files)
@@ -544,8 +544,8 @@ function useChatState(isReadOnly) {
544
544
  const nodeHelpers = useNodeHelpers();
545
545
  const { runWorkflow } = useRunWorkflow({ router });
546
546
  const ws = ref(null);
547
- const messages2 = ref([]);
548
- const currentSessionId = ref(v4().replace(/-/g, ""));
547
+ const messages2 = computed(() => logsStore.chatSessionMessages);
548
+ const currentSessionId = computed(() => logsStore.chatSessionId);
549
549
  const previousChatMessages = computed(() => workflowsStore.getPastChatMessages);
550
550
  const chatTriggerNode = computed(() => workflowsStore.allNodes.find(isChatNode) ?? null);
551
551
  const allowFileUploads = computed(
@@ -559,10 +559,10 @@ function useChatState(isReadOnly) {
559
559
  );
560
560
  const { sendMessage, isLoading, setLoadingState } = useChatMessaging({
561
561
  chatTrigger: chatTriggerNode,
562
- messages: messages2,
563
- sessionId: currentSessionId,
562
+ sessionId: currentSessionId.value,
564
563
  executionResultData: computed(() => workflowsStore.getWorkflowExecution?.data?.resultData),
565
564
  onRunChatWorkflow,
565
+ onNewMessage: logsStore.addChatMessage,
566
566
  ws
567
567
  });
568
568
  function createChatConfig(params) {
@@ -658,7 +658,7 @@ function useChatState(isReadOnly) {
658
658
  sessionId: currentSessionId.value,
659
659
  id: v4()
660
660
  };
661
- messages2.value.push(newMessage);
661
+ logsStore.addChatMessage(newMessage);
662
662
  if (logsStore.isOpen) {
663
663
  chatEventBus.emit("focusInput");
664
664
  }
@@ -677,8 +677,8 @@ function useChatState(isReadOnly) {
677
677
  function refreshSession() {
678
678
  workflowsStore.setWorkflowExecutionData(null);
679
679
  nodeHelpers.updateNodesExecutionIssues();
680
- messages2.value = [];
681
- currentSessionId.value = v4().replace(/-/g, "");
680
+ logsStore.resetChatSessionId();
681
+ logsStore.resetMessages();
682
682
  if (logsStore.isOpen) {
683
683
  chatEventBus.emit("focusInput");
684
684
  }
@@ -690,9 +690,20 @@ function useChatState(isReadOnly) {
690
690
  });
691
691
  window.open(route.href, "_blank");
692
692
  }
693
+ watch(
694
+ () => workflowsStore.workflowId,
695
+ (_newWorkflowId, prevWorkflowId) => {
696
+ if (prevWorkflowId === PLACEHOLDER_EMPTY_WORKFLOW_ID) {
697
+ return;
698
+ }
699
+ refreshSession();
700
+ }
701
+ );
693
702
  return {
694
- currentSessionId,
695
- messages: computed(() => isReadOnly ? restoredChatMessages.value : messages2.value),
703
+ currentSessionId: computed(() => logsStore.chatSessionId),
704
+ messages: computed(
705
+ () => isReadOnly ? restoredChatMessages.value : logsStore.chatSessionMessages
706
+ ),
696
707
  previousChatMessages,
697
708
  sendMessage,
698
709
  refreshSession,
@@ -5935,11 +5946,7 @@ function useLogsPanelLayout(workflowName, popOutContainer, popOutContent2, conta
5935
5946
  const isCollapsingDetailsPanel = computed(() => overviewPanelResizer.isFullSize.value);
5936
5947
  const popOutWindowTitle = computed(() => `Logs - ${workflowName.value}`);
5937
5948
  const shouldPopOut = computed(() => logsStore.state === LOGS_PANEL_STATE.FLOATING);
5938
- const {
5939
- canPopOut,
5940
- isPoppedOut,
5941
- popOutWindow
5942
- } = usePopOutWindow({
5949
+ const { canPopOut, isPoppedOut, popOutWindow } = usePopOutWindow({
5943
5950
  title: popOutWindowTitle,
5944
5951
  initialHeight: INITIAL_POPUP_HEIGHT,
5945
5952
  initialWidth: window.document.body.offsetWidth * 0.8,
@@ -5994,6 +6001,7 @@ function useLogsPanelLayout(workflowName, popOutContainer, popOutContent2, conta
5994
6001
  },
5995
6002
  { immediate: true }
5996
6003
  );
6004
+ onBeforeUnmount(() => logsStore.setHeight(0));
5997
6005
  return {
5998
6006
  height: resizer.size,
5999
6007
  chatPanelWidth: chatPanelResizer.size,
@@ -1,14 +1,14 @@
1
- import { d as defineComponent, r as ref, x as computed, e as createBlock, f as createCommentVNode, g as openBlock, l as unref, y as N8nPopoverReka, w as withCtx, j as createBaseVNode, n as normalizeClass, i as createVNode, h as createElementBlock, m as N8nHeading, k as createTextVNode, t as toDisplayString, z as N8nCallout, F as Fragment, A as renderList, B as withModifiers, N as N8nIcon, p as N8nText, C as N8nLink, D as useI18n, T as Tag, _ as _export_sfc, E as ElDropdown, G as N8nAvatar, H as ElDropdownMenu, I as ElDropdownItem, J as N8nUserInfo, K as mergeProps, L as MAIN_HEADER_TABS, O as N8nRadioButtons, P as useDebounce, Q as useUIStore, R as BREAKPOINT_SM, S as BREAKPOINT_XL, U as BREAKPOINT_LG, W as BREAKPOINT_MD, o as onMounted, X as onBeforeUnmount, Y as renderSlot, Z as nextTick, $ as getBannerRowHeight, a0 as defineStore, a1 as usePushConnectionStore, a2 as useWorkflowsStore, u as useUsersStore, a3 as useRoute, a4 as PLACEHOLDER_EMPTY_WORKFLOW_ID, a5 as STORES, a6 as TIME, a7 as useDocumentVisibility, a8 as watch, V as VIEWS, a9 as resolveComponent, aa as Tooltip, ab as _sfc_main$d, c as useI18n$1, ac as I18nT, b as useRouter, ad as useEvaluationStore, ae as useNodeTypesStore, af as useWorkflowSettingsCache, ag as useSourceControlStore, ah as WORKFLOW_ACTIVE_MODAL_KEY, ai as ERROR_WORKFLOW_DOCS_URL, aj as EVALUATIONS_DOCS_URL, ak as TIME_SAVED_DOCS_URL, al as WORKFLOW_SETTINGS_MODAL_KEY, am as useTelemetry, an as useMessage, ao as MODAL_CONFIRM, ap as debounce, aq as normalizeStyle, ar as createEventBus, as as useTagsStore, at as useCssModule, au as useRootStore, v as useSettingsStore, av as useProjectsStore, aw as useFoldersStore, ax as useNpsSurveyStore, a as useToast, ay as useDocumentTitle, az as useWorkflowSaving, aA as useWorkflowHelpers, aB as usePageRedirectionHelper, aC as getResourcePermissions, aD as WORKFLOW_MENU_ACTIONS, aE as hasPermission, aF as EnterpriseEditionFeature, aG as ProjectTypes, aH as useTemplateRef, aI as InlineRename, aJ as MAX_WORKFLOW_NAME_LENGTH, aK as _sfc_main$e, aL as N8nBadge, q as N8nButton, aM as SaveButton, aN as N8nActionDropdown, aO as WORKFLOW_SHARE_MODAL_KEY, aP as nodeViewEventBus, aQ as IMPORT_WORKFLOW_URL_MODAL_KEY, aR as FileSaver_minExports, aS as DUPLICATE_MODAL_KEY, aT as ResourceType, aU as PROJECT_MOVE_RESOURCE_MODAL, aV as __vitePreload, aW as hyphenate, aX as h, aY as hasOwn, aZ as useNDVStore, a_ as useExecutionsStore, a$ as useLocalStorage, b0 as LOCAL_STORAGE_HIDE_GITHUB_STAR_BUTTON, b1 as STICKY_NODE_TYPE, b2 as onBeforeMount, b3 as withDirectives, b4 as vShow, b5 as N8N_MAIN_GITHUB_REPO_URL } from "./index-BqqmY62y.js";
2
- import { _ as __unplugin_components_0, W as WorkflowActivator } from "./WorkflowActivator-GWpvfdPq.js";
3
- import { u as useBeforeUnload } from "./useBeforeUnload-BfDs84Xo.js";
4
- import { _ as _sfc_main$f } from "./PushConnectionTracker.vue_vue_type_script_setup_true_lang-DOMRXCVj.js";
5
- import { u as usePushConnection } from "./usePushConnection-BxoIfCAQ.js";
6
- import "./ProjectBreadcrumb-vTjbzQHC.js";
7
- import "./useWorkflowActivate-Dk_tmPQm.js";
8
- import "./global-link-actions-DLwTpw-D.js";
9
- import "./readyToRunWorkflows.store-DV_gQvCM.js";
10
- import "./readyToRunWorkflowsV2.store-ZhxGm4dM.js";
11
- import "./useProjectPages-DGeR5Bq7.js";
1
+ import { d as defineComponent, r as ref, x as computed, e as createBlock, f as createCommentVNode, g as openBlock, l as unref, y as N8nPopoverReka, w as withCtx, j as createBaseVNode, n as normalizeClass, i as createVNode, h as createElementBlock, m as N8nHeading, k as createTextVNode, t as toDisplayString, z as N8nCallout, F as Fragment, A as renderList, B as withModifiers, N as N8nIcon, p as N8nText, C as N8nLink, D as useI18n, T as Tag, _ as _export_sfc, E as ElDropdown, G as N8nAvatar, H as ElDropdownMenu, I as ElDropdownItem, J as N8nUserInfo, K as mergeProps, L as MAIN_HEADER_TABS, O as N8nRadioButtons, P as useDebounce, Q as useUIStore, R as BREAKPOINT_SM, S as BREAKPOINT_XL, U as BREAKPOINT_LG, W as BREAKPOINT_MD, o as onMounted, X as onBeforeUnmount, Y as renderSlot, Z as nextTick, $ as getBannerRowHeight, a0 as defineStore, a1 as usePushConnectionStore, a2 as useWorkflowsStore, u as useUsersStore, a3 as useRoute, a4 as PLACEHOLDER_EMPTY_WORKFLOW_ID, a5 as STORES, a6 as TIME, a7 as useDocumentVisibility, a8 as watch, V as VIEWS, a9 as resolveComponent, aa as Tooltip, ab as _sfc_main$d, c as useI18n$1, ac as I18nT, b as useRouter, ad as useEvaluationStore, ae as useNodeTypesStore, af as useWorkflowSettingsCache, ag as useSourceControlStore, ah as WORKFLOW_ACTIVE_MODAL_KEY, ai as ERROR_WORKFLOW_DOCS_URL, aj as EVALUATIONS_DOCS_URL, ak as TIME_SAVED_DOCS_URL, al as WORKFLOW_SETTINGS_MODAL_KEY, am as useTelemetry, an as useMessage, ao as MODAL_CONFIRM, ap as debounce, aq as normalizeStyle, ar as createEventBus, as as useTagsStore, at as useCssModule, au as useRootStore, v as useSettingsStore, av as useProjectsStore, aw as useFoldersStore, ax as useNpsSurveyStore, a as useToast, ay as useDocumentTitle, az as useWorkflowSaving, aA as useWorkflowHelpers, aB as usePageRedirectionHelper, aC as getResourcePermissions, aD as WORKFLOW_MENU_ACTIONS, aE as hasPermission, aF as EnterpriseEditionFeature, aG as ProjectTypes, aH as useTemplateRef, aI as InlineRename, aJ as MAX_WORKFLOW_NAME_LENGTH, aK as _sfc_main$e, aL as N8nBadge, q as N8nButton, aM as SaveButton, aN as N8nActionDropdown, aO as WORKFLOW_SHARE_MODAL_KEY, aP as nodeViewEventBus, aQ as IMPORT_WORKFLOW_URL_MODAL_KEY, aR as FileSaver_minExports, aS as DUPLICATE_MODAL_KEY, aT as ResourceType, aU as PROJECT_MOVE_RESOURCE_MODAL, aV as __vitePreload, aW as hyphenate, aX as h, aY as hasOwn, aZ as useNDVStore, a_ as useExecutionsStore, a$ as useLocalStorage, b0 as LOCAL_STORAGE_HIDE_GITHUB_STAR_BUTTON, b1 as STICKY_NODE_TYPE, b2 as onBeforeMount, b3 as withDirectives, b4 as vShow, b5 as N8N_MAIN_GITHUB_REPO_URL } from "./index-DGLJxfnn.js";
2
+ import { _ as __unplugin_components_0, W as WorkflowActivator } from "./WorkflowActivator-2k4uBcXx.js";
3
+ import { u as useBeforeUnload } from "./useBeforeUnload-DixKQhw1.js";
4
+ import { _ as _sfc_main$f } from "./PushConnectionTracker.vue_vue_type_script_setup_true_lang-BvsEzRu6.js";
5
+ import { u as usePushConnection } from "./usePushConnection-C9lQfiNc.js";
6
+ import "./ProjectBreadcrumb-DdovGxoT.js";
7
+ import "./useWorkflowActivate-ByzVgA6z.js";
8
+ import "./global-link-actions-Cq9wmyMP.js";
9
+ import "./readyToRunWorkflows.store-By37rv7G.js";
10
+ import "./readyToRunWorkflowsV2.store-Dl9lSVnl.js";
11
+ import "./useProjectPages-eaNvpOz-.js";
12
12
  const _hoisted_1$4 = ["data-action-id", "onClick"];
13
13
  const _hoisted_2$3 = { key: 0 };
14
14
  const _sfc_main$c = /* @__PURE__ */ defineComponent({
@@ -1,5 +1,5 @@
1
- import { d as defineComponent, r as ref, e as createBlock, g as openBlock, w as withCtx, i as createVNode, l as unref, b6 as ElSubMenu, n as normalizeClass, h as createElementBlock, F as Fragment, A as renderList, b7 as _sfc_main$6, b8 as ElMenuItem, f as createCommentVNode, k as createTextVNode, Y as renderSlot, N as N8nIcon, p as N8nText, t as toDisplayString, K as mergeProps, b9 as withKeys, ba as ElMenu, _ as _export_sfc, bb as get, ag as useSourceControlStore, av as useProjectsStore, a3 as useRoute, b as useRouter, x as computed, aE as hasPermission, aC as getResourcePermissions, aq as normalizeStyle, j as createBaseVNode, aa as Tooltip, q as N8nButton, c as useI18n, a0 as defineStore, bc as useCloudPlanStore, au as useRootStore, bd as useStorage, be as DateTime, a5 as STORES, am as useTelemetry, v as useSettingsStore, a as useToast, bf as sortByProperty, V as VIEWS, bg as updatedIconSet, aB as usePageRedirectionHelper, u as useUsersStore, b2 as onBeforeMount, bh as N8nMenuItem, bi as useDebugInfo, bj as useVersionsStore, Q as useUIStore, C as N8nLink, bk as VERSIONS_MODAL_KEY, bl as useTemplatesStore, a2 as useWorkflowsStore, bm as usePersonalizedTemplatesV2Store, P as useDebounce, bn as useCalloutHelpers, bo as useKeybindings, bp as RELEASE_NOTES_URL, o as onMounted, bq as useExternalHooks, Z as nextTick, X as onBeforeUnmount, br as onClickOutside, a9 as resolveComponent, ac as I18nT, ab as _sfc_main$7, bs as createSlots, G as N8nAvatar, aN as N8nActionDropdown, bt as N8nMenu, bu as WHATS_NEW_MODAL_KEY, bv as ABOUT_MODAL_KEY, bw as EXPERIMENT_TEMPLATE_RECO_V2_KEY, bx as trackTemplatesClick, by as TemplateClickSource } from "./index-BqqmY62y.js";
2
- import { L as Logo } from "./Logo-DqC1X5we.js";
1
+ import { d as defineComponent, r as ref, e as createBlock, g as openBlock, w as withCtx, i as createVNode, l as unref, b6 as ElSubMenu, n as normalizeClass, h as createElementBlock, F as Fragment, A as renderList, b7 as _sfc_main$6, b8 as ElMenuItem, f as createCommentVNode, k as createTextVNode, Y as renderSlot, N as N8nIcon, p as N8nText, t as toDisplayString, K as mergeProps, b9 as withKeys, ba as ElMenu, _ as _export_sfc, bb as get, ag as useSourceControlStore, av as useProjectsStore, a3 as useRoute, b as useRouter, x as computed, aE as hasPermission, aC as getResourcePermissions, aq as normalizeStyle, j as createBaseVNode, aa as Tooltip, q as N8nButton, c as useI18n, a0 as defineStore, bc as useCloudPlanStore, au as useRootStore, bd as useStorage, be as DateTime, a5 as STORES, am as useTelemetry, v as useSettingsStore, a as useToast, bf as sortByProperty, V as VIEWS, bg as updatedIconSet, aB as usePageRedirectionHelper, u as useUsersStore, b2 as onBeforeMount, bh as N8nMenuItem, bi as useDebugInfo, bj as useVersionsStore, Q as useUIStore, C as N8nLink, bk as VERSIONS_MODAL_KEY, bl as useTemplatesStore, a2 as useWorkflowsStore, bm as usePersonalizedTemplatesV2Store, P as useDebounce, bn as useCalloutHelpers, bo as useKeybindings, bp as RELEASE_NOTES_URL, o as onMounted, bq as useExternalHooks, Z as nextTick, X as onBeforeUnmount, br as onClickOutside, a9 as resolveComponent, ac as I18nT, ab as _sfc_main$7, bs as createSlots, G as N8nAvatar, aN as N8nActionDropdown, bt as N8nMenu, bu as WHATS_NEW_MODAL_KEY, bv as ABOUT_MODAL_KEY, bw as EXPERIMENT_TEMPLATE_RECO_V2_KEY, bx as trackTemplatesClick, by as TemplateClickSource } from "./index-DGLJxfnn.js";
2
+ import { L as Logo } from "./Logo-ayCSvzHf.js";
3
3
  const ROOT_MENU_INDEX = "-1";
4
4
  const _sfc_main$5 = /* @__PURE__ */ defineComponent({
5
5
  ...{
@@ -881,7 +881,12 @@ ${debugInfo.generateDebugInfo({ skipSensitive: true, secondaryHeader: true })}}`
881
881
  }
882
882
  const _sfc_main$1 = /* @__PURE__ */ defineComponent({
883
883
  __name: "VersionUpdateCTA",
884
+ props: {
885
+ disabled: { type: Boolean, default: false },
886
+ tooltipText: { default: void 0 }
887
+ },
884
888
  setup(__props) {
889
+ const props = __props;
885
890
  const i18n = useI18n();
886
891
  const versionsStore = useVersionsStore();
887
892
  const uiStore = useUIStore();
@@ -915,13 +920,22 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
915
920
  ]),
916
921
  _: 1
917
922
  }),
918
- createVNode(unref(N8nButton), {
919
- class: normalizeClass(_ctx.$style.button),
920
- label: unref(i18n).baseText("whatsNew.update"),
921
- "data-test-id": "version-update-cta-button",
922
- size: "mini",
923
- onClick: onUpdateClick
924
- }, null, 8, ["class", "label"])
923
+ createVNode(unref(Tooltip), {
924
+ disabled: !props.tooltipText,
925
+ content: props.tooltipText
926
+ }, {
927
+ default: withCtx(() => [
928
+ createVNode(unref(N8nButton), {
929
+ class: normalizeClass(_ctx.$style.button),
930
+ label: unref(i18n).baseText("whatsNew.update"),
931
+ "data-test-id": "version-update-cta-button",
932
+ size: "mini",
933
+ disabled: props.disabled,
934
+ onClick: onUpdateClick
935
+ }, null, 8, ["class", "label", "disabled"])
936
+ ]),
937
+ _: 1
938
+ }, 8, ["disabled", "content"])
925
939
  ], 2);
926
940
  };
927
941
  }
@@ -1140,7 +1154,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
1140
1154
  id: "version-upgrade-cta",
1141
1155
  component: VersionUpdateCTA,
1142
1156
  available: versionsStore.hasVersionUpdates,
1143
- props: {}
1157
+ props: {
1158
+ disabled: !usersStore.canUserUpdateVersion,
1159
+ tooltipText: !usersStore.canUserUpdateVersion ? i18n.baseText("whatsNew.updateNudgeTooltip") : void 0
1160
+ }
1144
1161
  }
1145
1162
  ]
1146
1163
  }
@@ -1,5 +1,5 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/NodeCreator-Db1k7Npw.js","assets/index-BqqmY62y.js","assets/index-B7wrqKiF.css","assets/NodeCreator-COTYfPaK.css"])))=>i.map(i=>d[i]);
2
- import { d as defineComponent, Q as useUIStore, cJ as useFocusPanelStore, fk as useAssistantStore, hy as useActions, h as createElementBlock, g as openBlock, f as createCommentVNode, e as createBlock, n as normalizeClass, i as createVNode, w as withCtx, ab as _sfc_main$1, l as unref, c as useI18n, ci as KeyboardShortcutTooltip, q as N8nButton, j as createBaseVNode, dc as _sfc_main$2, k as createTextVNode, t as toDisplayString, aa as Tooltip, dx as defineAsyncComponent, dw as Suspense, F as Fragment, aV as __vitePreload, dy as NODE_CREATOR_OPEN_SOURCES, hz as getMidCanvasPosition, b1 as STICKY_NODE_TYPE, am as useTelemetry, hA as DEFAULT_STICKY_WIDTH, hB as DEFAULT_STICKY_HEIGHT, _ as _export_sfc } from "./index-BqqmY62y.js";
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/NodeCreator-tQVCw9Uh.js","assets/index-DGLJxfnn.js","assets/index-CpPc1kM8.css","assets/NodeCreator-COTYfPaK.css"])))=>i.map(i=>d[i]);
2
+ import { d as defineComponent, Q as useUIStore, cJ as useFocusPanelStore, fm as useAssistantStore, hA as useActions, h as createElementBlock, g as openBlock, f as createCommentVNode, e as createBlock, n as normalizeClass, i as createVNode, w as withCtx, ab as _sfc_main$1, l as unref, c as useI18n, ci as KeyboardShortcutTooltip, q as N8nButton, j as createBaseVNode, dc as _sfc_main$2, k as createTextVNode, t as toDisplayString, aa as Tooltip, dx as defineAsyncComponent, dw as Suspense, F as Fragment, aV as __vitePreload, dy as NODE_CREATOR_OPEN_SOURCES, hB as getMidCanvasPosition, b1 as STICKY_NODE_TYPE, am as useTelemetry, hC as DEFAULT_STICKY_WIDTH, hD as DEFAULT_STICKY_HEIGHT, _ as _export_sfc } from "./index-DGLJxfnn.js";
3
3
  const _sfc_main = /* @__PURE__ */ defineComponent({
4
4
  __name: "NodeCreation",
5
5
  props: {
@@ -10,7 +10,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
10
10
  emits: ["addNodes", "toggleNodeCreator"],
11
11
  setup(__props, { emit: __emit }) {
12
12
  const LazyNodeCreator = defineAsyncComponent(
13
- async () => await __vitePreload(() => import("./NodeCreator-Db1k7Npw.js"), true ? __vite__mapDeps([0,1,2,3]) : void 0)
13
+ async () => await __vitePreload(() => import("./NodeCreator-tQVCw9Uh.js"), true ? __vite__mapDeps([0,1,2,3]) : void 0)
14
14
  );
15
15
  const props = __props;
16
16
  const emit = __emit;
@@ -1,4 +1,4 @@
1
- import { d as defineComponent, db as reactive, o as onMounted, bq as useExternalHooks, X as onBeforeUnmount, c2 as toRefs, h as createElementBlock, g as openBlock, n as normalizeClass, j as createBaseVNode, f as createCommentVNode, i as createVNode, N as N8nIcon, _ as _export_sfc, l as unref, ig as REGULAR_NODE_CREATOR_VIEW, F as Fragment, Y as renderSlot, ih as useViewStacks, r as ref, ae as useNodeTypesStore, x as computed, u as useUsersStore, e as createBlock, p as N8nText, w as withCtx, k as createTextVNode, t as toDisplayString, ii as _sfc_main$b, aa as Tooltip, f4 as i18n, ij as fetchInstalledPackageInfo, ik as captureException, il as useKeyboardNavigation, hy as useActions, dd as useNodeCreatorStore, bn as useCalloutHelpers, im as CUSTOM_API_CALL_KEY, io as TRIGGER_NODE_CREATOR_VIEW, ip as isNodePreviewKey, iq as OPEN_AI_NODE_TYPE, ir as OPEN_AI_NODE_MESSAGE_ASSISTANT_TYPE, am as useTelemetry, is as getActiveViewCallouts, cd as resolveDirective, it as ItemsRenderer, bs as createSlots, iu as withMemo, iv as CategorizedItemsRenderer, c as useI18n, z as N8nCallout, b3 as withDirectives, cV as InfoTip, B as withModifiers, iw as CommunityNodeFooter, ix as HTTP_REQUEST_NODE_TYPE, fA as createStaticVNode, C as N8nLink, iy as REQUEST_NODE_FORM_URL, iz as filterAndSearchNodes, iA as getRootSearchCallouts, hW as WEBHOOK_NODE_TYPE, iB as PRE_BUILT_AGENTS_COLLECTION, iC as camelCase, iD as shouldShowCommunityNodeDetails, fn as isCommunityPackageName, iE as prepareCommunityNodeDetailsViewStack, i1 as getNodeIconSource, iF as transformNodeType, iG as AINodesView, iH as AIView, iI as RegularView, iJ as TriggerView, iK as flattenCreateElements, iL as HITL_SUBCATEGORY, iM as getHumanInTheLoopActions, iN as AI_OTHERS_NODE_CREATOR_VIEW, iO as AI_NODE_CREATOR_VIEW, et as useCommunityNodesStore, a as useToast, bY as NodeIcon, iP as OfficialIcon, q as N8nButton, de as useCredentialsStore, iQ as removePreviewToken, P as useDebounce, c8 as onUnmounted, a8 as watch, eb as N8nNotice, c3 as normalizeProps, K as mergeProps, hY as Transition, iR as AI_EVALUATION, iS as AI_UNCATEGORIZED_CATEGORY, Q as useUIStore, fk as useAssistantStore, dh as useBuilderStore, br as onClickOutside, ab as _sfc_main$c, aq as normalizeStyle, iT as SlideTransition, dL as DRAG_EVENT_DATA_KEY, iU as useActionsGenerator } from "./index-BqqmY62y.js";
1
+ import { d as defineComponent, db as reactive, o as onMounted, bq as useExternalHooks, X as onBeforeUnmount, c2 as toRefs, h as createElementBlock, g as openBlock, n as normalizeClass, j as createBaseVNode, f as createCommentVNode, i as createVNode, N as N8nIcon, _ as _export_sfc, l as unref, ii as REGULAR_NODE_CREATOR_VIEW, F as Fragment, Y as renderSlot, ij as useViewStacks, r as ref, ae as useNodeTypesStore, x as computed, u as useUsersStore, e as createBlock, p as N8nText, w as withCtx, k as createTextVNode, t as toDisplayString, ik as _sfc_main$b, aa as Tooltip, f6 as i18n, il as fetchInstalledPackageInfo, im as captureException, io as useKeyboardNavigation, hA as useActions, dd as useNodeCreatorStore, bn as useCalloutHelpers, ip as CUSTOM_API_CALL_KEY, iq as TRIGGER_NODE_CREATOR_VIEW, ir as isNodePreviewKey, is as OPEN_AI_NODE_TYPE, it as OPEN_AI_NODE_MESSAGE_ASSISTANT_TYPE, am as useTelemetry, iu as getActiveViewCallouts, cd as resolveDirective, iv as ItemsRenderer, bs as createSlots, iw as withMemo, ix as CategorizedItemsRenderer, c as useI18n, z as N8nCallout, b3 as withDirectives, cV as InfoTip, B as withModifiers, iy as CommunityNodeFooter, iz as HTTP_REQUEST_NODE_TYPE, fA as createStaticVNode, C as N8nLink, iA as REQUEST_NODE_FORM_URL, iB as filterAndSearchNodes, iC as getRootSearchCallouts, hY as WEBHOOK_NODE_TYPE, iD as PRE_BUILT_AGENTS_COLLECTION, iE as camelCase, iF as shouldShowCommunityNodeDetails, fp as isCommunityPackageName, iG as prepareCommunityNodeDetailsViewStack, i3 as getNodeIconSource, iH as transformNodeType, iI as AINodesView, iJ as AIView, iK as RegularView, iL as TriggerView, iM as flattenCreateElements, iN as HITL_SUBCATEGORY, iO as getHumanInTheLoopActions, iP as AI_OTHERS_NODE_CREATOR_VIEW, iQ as AI_NODE_CREATOR_VIEW, ev as useCommunityNodesStore, a as useToast, bY as NodeIcon, iR as OfficialIcon, q as N8nButton, de as useCredentialsStore, iS as removePreviewToken, P as useDebounce, c8 as onUnmounted, a8 as watch, eb as N8nNotice, c3 as normalizeProps, K as mergeProps, h_ as Transition, iT as AI_EVALUATION, iU as AI_UNCATEGORIZED_CATEGORY, Q as useUIStore, fm as useAssistantStore, dh as useBuilderStore, br as onClickOutside, ab as _sfc_main$c, aq as normalizeStyle, iV as SlideTransition, dL as DRAG_EVENT_DATA_KEY, iW as useActionsGenerator } from "./index-DGLJxfnn.js";
2
2
  const _hoisted_1$5 = ["placeholder", "value"];
3
3
  const _sfc_main$a = /* @__PURE__ */ defineComponent({
4
4
  __name: "SearchBar",
@@ -1,16 +1,16 @@
1
- import { d as defineComponent, e as createBlock, g as openBlock, gk as Draggable, n as normalizeClass, w as withCtx, j as createBaseVNode, h as createElementBlock, f as createCommentVNode, i as createVNode, N as N8nIcon, _ as _export_sfc, cn as useThrottleFn, aZ as useNDVStore, Q as useUIStore, r as ref, fL as useSlots, o as onMounted, x as computed, cy as ndvEventBus, X as onBeforeUnmount, a8 as watch, hC as MAIN_NODE_PANEL_WIDTH, bd as useStorage, hD as LOCAL_STORAGE_MAIN_PANEL_RELATIVE_WIDTH, l as unref, aq as normalizeStyle, Y as renderSlot, cj as N8nResizeWrapper, Z as nextTick, bM as useNodeHelpers, ex as storeToRefs, bK as usePinnedData, ae as useNodeTypesStore, a2 as useWorkflowsStore, cN as useDeviceSupport, cO as useTelemetryContext, hE as getNodeOutputs, bD as NodeConnectionTypes, bR as START_NODE_TYPE, hF as EXECUTABLE_TRIGGER_NODE_TYPES, b1 as STICKY_NODE_TYPE, hG as BASE_NODE_SURVEY_URL, hH as dataPinningEventBus, a9 as resolveComponent, aa as Tooltip, p as N8nText, k as createTextVNode, t as toDisplayString, c as useI18n, bs as createSlots, hI as NodeSettings, ar as createEventBus, hJ as InputPanel, ck as useStyles, hK as APP_MODALS_ELEMENT_ID, am as useTelemetry, an as useMessage, ao as MODAL_CONFIRM, dq as jsonParse, bq as useExternalHooks } from "./index-BqqmY62y.js";
2
- import { _ as __unplugin_components_0, O as OutputPanel, T as TriggerPanel } from "./TriggerPanel-CGEgWBP1.js";
3
- import { u as useWorkflowActivate } from "./useWorkflowActivate-Dk_tmPQm.js";
4
- import "./RunDataParsedAiContent-CCScHhrV.js";
5
- import "./core-BmUd0ZQy.js";
6
- import "./ConsumedTokensDetails.vue_vue_type_script_setup_true_lang-DlF8qxM5.js";
7
- import "./NodeView-B08ajmmZ.js";
8
- import "./global-link-actions-DLwTpw-D.js";
9
- import "./useExecutionDebugging-ZrtkQtcL.js";
10
- import "./useBeforeUnload-BfDs84Xo.js";
11
- import "./canvas-CNbb2A4n.js";
12
- import "./readyToRunWorkflows.store-DV_gQvCM.js";
13
- import "./InfoAccordion-DXq9DJ4j.js";
1
+ import { d as defineComponent, e as createBlock, g as openBlock, gk as Draggable, n as normalizeClass, w as withCtx, j as createBaseVNode, h as createElementBlock, f as createCommentVNode, i as createVNode, N as N8nIcon, _ as _export_sfc, cn as useThrottleFn, aZ as useNDVStore, Q as useUIStore, r as ref, fL as useSlots, o as onMounted, x as computed, cy as ndvEventBus, X as onBeforeUnmount, a8 as watch, hE as MAIN_NODE_PANEL_WIDTH, bd as useStorage, hF as LOCAL_STORAGE_MAIN_PANEL_RELATIVE_WIDTH, l as unref, aq as normalizeStyle, Y as renderSlot, cj as N8nResizeWrapper, Z as nextTick, bM as useNodeHelpers, ez as storeToRefs, bK as usePinnedData, ae as useNodeTypesStore, a2 as useWorkflowsStore, cN as useDeviceSupport, cO as useTelemetryContext, hG as getNodeOutputs, bD as NodeConnectionTypes, bR as START_NODE_TYPE, hH as EXECUTABLE_TRIGGER_NODE_TYPES, b1 as STICKY_NODE_TYPE, hI as BASE_NODE_SURVEY_URL, hJ as dataPinningEventBus, a9 as resolveComponent, aa as Tooltip, p as N8nText, k as createTextVNode, t as toDisplayString, c as useI18n, bs as createSlots, hK as NodeSettings, ar as createEventBus, hL as InputPanel, ck as useStyles, hM as APP_MODALS_ELEMENT_ID, am as useTelemetry, an as useMessage, ao as MODAL_CONFIRM, dq as jsonParse, bq as useExternalHooks } from "./index-DGLJxfnn.js";
2
+ import { _ as __unplugin_components_0, O as OutputPanel, T as TriggerPanel } from "./TriggerPanel-aOMoGQPb.js";
3
+ import { u as useWorkflowActivate } from "./useWorkflowActivate-ByzVgA6z.js";
4
+ import "./RunDataParsedAiContent-Ce_ctsro.js";
5
+ import "./core-WbBbE4BE.js";
6
+ import "./ConsumedTokensDetails.vue_vue_type_script_setup_true_lang-CgS2Cb5Q.js";
7
+ import "./NodeView-B6Bv6TYS.js";
8
+ import "./global-link-actions-Cq9wmyMP.js";
9
+ import "./useExecutionDebugging-CONIO3Vz.js";
10
+ import "./useBeforeUnload-DixKQhw1.js";
11
+ import "./canvas-DjkOwLgJ.js";
12
+ import "./readyToRunWorkflows.store-By37rv7G.js";
13
+ import "./InfoAccordion-TbgnFURd.js";
14
14
  const _sfc_main$2 = /* @__PURE__ */ defineComponent({
15
15
  __name: "PanelDragButton",
16
16
  props: {