n8n-editor-ui 1.100.0 → 1.101.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 (134) hide show
  1. package/dist/assets/ActionDropdown-BmC0wfMx.css +172 -0
  2. package/dist/assets/ActionDropdown-BujIG0Jq.js +172 -0
  3. package/dist/assets/{AnimatedSpinner-CmnLqX1g.js → AnimatedSpinner-B5cpb6Fs.js} +3 -3
  4. package/dist/assets/{AnnotationTagsDropdown.ee.vue_vue_type_script_setup_true_lang-LialmjU-.js → AnnotationTagsDropdown.ee.vue_vue_type_script_setup_true_lang-BPigGQTI.js} +1 -1
  5. package/dist/assets/AuthView-BOTPYtpM.js +242 -0
  6. package/dist/assets/AuthView-DZB9HITQ.css +450 -0
  7. package/dist/assets/{ChangePasswordView-F2YljaHC.js → ChangePasswordView-DbeC55bz.js} +4 -4
  8. package/dist/assets/CollectionParameter-CExdr4jd.js +4 -0
  9. package/dist/assets/{CredentialsView-_HiqTMnI.js → CredentialsView-DUh5K-2r.js} +16 -15
  10. package/dist/assets/{DemoFooter-BWGzoS_I.js → DemoFooter-BXPfbNJE.js} +7 -6
  11. package/dist/assets/EmptySharedSectionActionBox.vue_vue_type_script_setup_true_lang-CDDQIxv5.js +39 -0
  12. package/dist/assets/{EntityNotFound-Cy9wp8En.js → EntityNotFound-CBUuOOYw.js} +1 -1
  13. package/dist/assets/{EntityUnAuthorised-CqJIbUWK.js → EntityUnAuthorised-7xgN3ECo.js} +1 -1
  14. package/dist/assets/{ErrorView-Kpuz8zoT.js → ErrorView-BVfcsoOa.js} +4 -4
  15. package/dist/assets/{EvaluationsRootView-HfYQYHAD.js → EvaluationsRootView-BjrpKDj-.js} +2 -2
  16. package/dist/assets/{EvaluationsView-i9O4Pq6o.js → EvaluationsView-DdmFZCH-.js} +9 -9
  17. package/dist/assets/{ExecutionsTime-BDLkVZem.css → ExecutionsTime-kMSlccIr.css} +6 -6
  18. package/dist/assets/{ExecutionsTime.vue_vue_type_script_setup_true_lang-BHONBvt7.js → ExecutionsTime.vue_vue_type_script_setup_true_lang-Ctx5Ybnr.js} +24 -19
  19. package/dist/assets/{ExecutionsView-BY23VFik.js → ExecutionsView-8BjGHy2I.js} +13 -12
  20. package/dist/assets/{ExecutionsView-ChOXAON3.css → ExecutionsView-DSsowKj4.css} +1 -1
  21. package/dist/assets/{FileSaver.min-CxOI-Vgx.js → FileSaver.min-C5wzcK59.js} +1 -1
  22. package/dist/assets/{FixedCollectionParameter-Dj0393fQ.js → FixedCollectionParameter-BrPQ5Vay.js} +1 -1
  23. package/dist/assets/{ForgotMyPasswordView-yMWlCT90.js → ForgotMyPasswordView-L0afefc1.js} +3 -3
  24. package/dist/assets/InfoAccordion-CEk3XG5b.js +146 -0
  25. package/dist/assets/InfoAccordion-dxudNqVC.css +168 -0
  26. package/dist/assets/{InsightsChartAverageRuntime-CAzHGVRl.js → InsightsChartAverageRuntime-BrwBWr_R.js} +4 -4
  27. package/dist/assets/{InsightsChartFailed-DQ9ntBQJ.js → InsightsChartFailed-ILKWvikG.js} +4 -4
  28. package/dist/assets/{InsightsChartFailureRate-DVZarv-u.js → InsightsChartFailureRate-D1AVYwU7.js} +4 -4
  29. package/dist/assets/{InsightsChartTimeSaved-CAhRkqgH.js → InsightsChartTimeSaved-D49Rwn6-.js} +4 -4
  30. package/dist/assets/{InsightsChartTotal-C60cS-Xa.js → InsightsChartTotal-Bs-pUgA3.js} +4 -4
  31. package/dist/assets/{InsightsDashboard-DM-I5QbW.js → InsightsDashboard-BIC4uZpW.js} +12 -12
  32. package/dist/assets/{InsightsPaywall-BLHoSCNL.js → InsightsPaywall-DmwFI-6e.js} +4 -4
  33. package/dist/assets/{InsightsSummary-JPw9kN4a.js → InsightsSummary-D9lEzWNT.js} +3 -3
  34. package/dist/assets/InsightsTableWorkflows-CC8t-sAL.js +3355 -0
  35. package/dist/assets/{Logo-C699HbA_.js → Logo-DNxOhbuV.js} +1 -1
  36. package/dist/assets/{LogsPanel-BWnaJuFj.js → LogsPanel-DvWnD7rJ.js} +21 -18
  37. package/dist/assets/{MainHeader-Ce0GAh6o.js → MainHeader-BVHIuVVT.js} +165 -22
  38. package/dist/assets/{MainHeader--6ITU977.css → MainHeader-DYYEm7nF.css} +202 -12
  39. package/dist/assets/{MainSidebar-CooH0xuY.js → MainSidebar-CEHr93uL.js} +305 -92
  40. package/dist/assets/{MainSidebar-DrjvHIqG.css → MainSidebar-DqrgzqvZ.css} +209 -48
  41. package/dist/assets/{NodeCreation-RKvezEeg.css → NodeCreation-32nlvQSy.css} +4 -24
  42. package/dist/assets/{NodeCreation-T5AfZVS1.js → NodeCreation-Bq5626Ha.js} +75 -81
  43. package/dist/assets/{NodeCreator-4g3-zQj6.js → NodeCreator-D7xT3ogw.js} +156 -42
  44. package/dist/assets/{NodeCreator-B1jJcOYT.css → NodeCreator-Dk0sNXFZ.css} +212 -0
  45. package/dist/assets/{NodeDetailsView-DWA1ZgwG.css → NodeDetailsView-BaIj2qAa.css} +241 -0
  46. package/dist/assets/{NodeDetailsView-BvClCeyF.js → NodeDetailsView-DB-5JPUD.js} +81 -56
  47. package/dist/assets/{NodeView-RurRbUaI.css → NodeView-DL8JxnMc.css} +516 -125
  48. package/dist/assets/{NodeView-DWCMsw1d.js → NodeView-DoR46iB5.js} +1393 -988
  49. package/dist/assets/{ProjectHeader-C7A20kgK.js → ProjectHeader-DSKKwiQ0.js} +14 -10
  50. package/dist/assets/{ProjectSettings-DVNR9FN4.js → ProjectSettings-C3sMIDHh.js} +366 -22
  51. package/dist/assets/{WorkflowActivator-C0R6Yly0.css → ProjectSettings-CCVXNK3G.css} +97 -43
  52. package/dist/assets/{PushConnectionTracker.vue_vue_type_script_setup_true_lang-D-uuE-zX.js → PushConnectionTracker.vue_vue_type_script_setup_true_lang-cnANEo9o.js} +2 -2
  53. package/dist/assets/{ResourcesListLayout-D0WMvHN_.js → ResourcesListLayout-BVbjqFbc.js} +349 -24
  54. package/dist/assets/{ResourcesListLayout-D6zDTXm4.css → ResourcesListLayout-uBbUHbxU.css} +8 -8
  55. package/dist/assets/{RunData-C-tqFRZO.js → RunData-DG20AzLo.js} +16 -15
  56. package/dist/assets/{RunDataJson-pe7NZQoH.js → RunDataJson-7okRLIES.js} +7 -6
  57. package/dist/assets/{RunDataJsonActions-3CT6wqXW.js → RunDataJsonActions-Qkg8HmUd.js} +2 -2
  58. package/dist/assets/{RunDataParsedAiContent-CGCVmkuV.js → RunDataParsedAiContent-DRO1Bjsh.js} +5 -4
  59. package/dist/assets/{RunDataSearch-jkQ60p9j.js → RunDataSearch-D5eQUWvi.js} +3 -3
  60. package/dist/assets/{RunDataTable-BqU63PyF.js → RunDataTable-CJmmTtEp.js} +115 -4
  61. package/dist/assets/{RunDataTable-CUxj7dHx.css → RunDataTable-CykHIwNT.css} +129 -0
  62. package/dist/assets/{SamlOnboarding-tGJha_9t.js → SamlOnboarding-ClxYfm5z.js} +3 -3
  63. package/dist/assets/{SettingsApiView-DkeogFEJ.js → SettingsApiView-Ds7FYVrN.js} +13 -13
  64. package/dist/assets/{SettingsCommunityNodesView-DdKQ7Jg5.js → SettingsCommunityNodesView-QKvLs6gi.js} +13 -13
  65. package/dist/assets/{SettingsExternalSecrets-CIvPLpaR.js → SettingsExternalSecrets-DGRdvsMy.js} +9 -9
  66. package/dist/assets/{SettingsLdapView-u9uiXIG8.js → SettingsLdapView-C_LJwixk.js} +6 -6
  67. package/dist/assets/{SettingsLogStreamingView-CQDEQGxK.js → SettingsLogStreamingView-CaEJvgJ9.js} +9 -9
  68. package/dist/assets/{SettingsPersonalView-ta7XbuCV.js → SettingsPersonalView-DlwXaGDs.js} +13 -12
  69. package/dist/assets/{SettingsSourceControl-DxbBCbMO.js → SettingsSourceControl-B6eULOfX.js} +23 -12
  70. package/dist/assets/{AuthView-jgkkdJYL.css → SettingsSourceControl-BBxJXbFC.css} +82 -32
  71. package/dist/assets/{SettingsSso-Bp4pf_0a.js → SettingsSso-5zcg-J4E.js} +11 -11
  72. package/dist/assets/{SettingsUsageAndPlan-D680YlPQ.js → SettingsUsageAndPlan-CMBvYdjo.js} +10 -10
  73. package/dist/assets/{SettingsUsageAndPlan-Bc3LLaWe.css → SettingsUsageAndPlan-D6TiPwUx.css} +3 -3
  74. package/dist/assets/{SettingsUsersView-DP2nppP6.js → SettingsUsersView-BL3TAhT8.js} +13 -12
  75. package/dist/assets/{SettingsView-BUpTI--W.js → SettingsView-BuDKhqwZ.js} +4 -4
  76. package/dist/assets/{SetupView-Bocro878.js → SetupView-DSaQcQDF.js} +3 -3
  77. package/dist/assets/{SetupWorkflowCredentialsButton-DODNIDNV.js → SetupWorkflowCredentialsButton-BWISZAxq.js} +2 -2
  78. package/dist/assets/{SetupWorkflowFromTemplateView-BLzrIJTt.js → SetupWorkflowFromTemplateView-CfDWCwoA.js} +6 -6
  79. package/dist/assets/{SigninView-2_f1aXTx.js → SigninView-BpjyswHb.js} +17 -20
  80. package/dist/assets/{SignoutView-oMETilwl.js → SignoutView-f_CoUl4S.js} +1 -1
  81. package/dist/assets/{SignupView-CYMsjH_L.js → SignupView-q3f9g3P9.js} +3 -3
  82. package/dist/assets/{SettingsSourceControl-DxshapuD.css → TableBase-Bf42_9Yp.css} +52 -67
  83. package/dist/assets/TableBase-DruQl-SO.js +28 -0
  84. package/dist/assets/{ProjectSettings-8tvaQJye.css → Tags-B0bIUnzf.css} +48 -39
  85. package/dist/assets/Tags-DbmKHzWo.js +95 -0
  86. package/dist/assets/{TemplateDetails-CmL1Gj71.js → TemplateDetails-DP_5pkzG.js} +17 -9
  87. package/dist/assets/{TemplateList-DpqrSF2u.js → TemplateList-y8Aumcsb.js} +6 -6
  88. package/dist/assets/{TemplatesCollectionView-DVlz-_MJ.js → TemplatesCollectionView-VdQpHtxs.js} +13 -12
  89. package/dist/assets/{TemplatesSearchView-CcToWnkG.js → TemplatesSearchView-BUcYRVEK.js} +16 -12
  90. package/dist/assets/{TemplatesView-CXH6dh9Y.js → TemplatesView-4DUEEEtD.js} +1 -1
  91. package/dist/assets/{TemplatesWorkflowView-DL9rIrAK.js → TemplatesWorkflowView--zUXMB8f.js} +12 -11
  92. package/dist/assets/{VariablesView-CX3umLhX.js → VariablesView-DoWb0Vtv.js} +7 -6
  93. package/dist/assets/{VariablesView-2BSJPXRB.css → VariablesView-Kog_9PMT.css} +8 -5
  94. package/dist/assets/{WorkerView-C5XLf-D-.js → WorkerView-D56d7XJA.js} +18 -18
  95. package/dist/assets/WorkflowActivator-BJPsIkXE.css +836 -0
  96. package/dist/assets/{WorkflowActivator-Bzz5eOg4.js → WorkflowActivator-CQxaDCfA.js} +313 -19
  97. package/dist/assets/{WorkflowExecutionsInfoAccordion-UVslt3c0.js → WorkflowExecutionsInfoAccordion-D9p_ZqmA.js} +6 -5
  98. package/dist/assets/{WorkflowExecutionsLandingPage-C1xNEQ3_.js → WorkflowExecutionsLandingPage-CymYth6K.js} +6 -5
  99. package/dist/assets/{WorkflowExecutionsPreview--Vn3C-sa.js → WorkflowExecutionsPreview-DRvf3WQC.js} +18 -18
  100. package/dist/assets/{WorkflowExecutionsView-_l8AgWIb.css → WorkflowExecutionsView-C_xuUSa8.css} +2 -2
  101. package/dist/assets/{WorkflowExecutionsView-B_Pvn_mZ.js → WorkflowExecutionsView-DxiIaUKV.js} +18 -15
  102. package/dist/assets/{WorkflowHistory-CQLQcsG4.js → WorkflowHistory-DBPIq2u7.js} +14 -13
  103. package/dist/assets/{WorkflowOnboardingView-DJZD6lcQ.js → WorkflowOnboardingView-D4QKSetf.js} +1 -1
  104. package/dist/assets/{WorkflowPreview-CAv2jWEf.js → WorkflowPreview-D3YRZjYi.js} +3 -3
  105. package/dist/assets/{WorkflowsView-9oLDmGMf.js → WorkflowsView-DPADmBVd.js} +37 -32
  106. package/dist/assets/{chartjs.utils-D3bkyfMC.js → chartjs.utils-Cou_ISuU.js} +2 -2
  107. package/dist/assets/{en-BUHUsdZz.js → en-DzZibgm_.js} +15 -1
  108. package/dist/assets/{global-link-actions-CudV1inR.js → global-link-actions-olwfH36z.js} +1 -1
  109. package/dist/assets/{import-curl-Q2R3Aa93.js → import-curl-DD21H3kK.js} +1 -1
  110. package/dist/assets/{index-ZImlcrmd.js → index-7S5ADieN.js} +177205 -181453
  111. package/dist/assets/{index-CeLskvTy.css → index-BzamKJpD.css} +2688 -5455
  112. package/dist/assets/{index-Cjj5DRsU.js → index-uJOu4Uio.js} +1 -1
  113. package/dist/assets/{pickBy-C61vriIY.js → pickBy-DPxZbMic.js} +1 -1
  114. package/dist/assets/{polyfills-deFGRMT9.js → polyfills-B8p9DdqU.js} +388 -1
  115. package/dist/assets/{templateActions-DgE3PfYi.js → templateActions-DJJfyIhq.js} +1 -1
  116. package/dist/assets/{typescript.worker-DIrCbxuR.js → typescript.worker-CUj0Nj-S.js} +39 -39
  117. package/dist/assets/{useBeforeUnload-CX6OL9lX.js → useBeforeUnload-DveXGtGN.js} +1 -1
  118. package/dist/assets/{useExecutionDebugging-Bw29Xcz_.js → useExecutionDebugging-DM4nhx6D.js} +1 -1
  119. package/dist/assets/{useExecutionHelpers-DfJOrkT9.js → useExecutionHelpers-BfF56crp.js} +1 -1
  120. package/dist/assets/{useImportCurlCommand-BtBYH8AF.js → useImportCurlCommand-BAgQhwtE.js} +11 -11
  121. package/dist/assets/{ProjectCardBadge-t3v64i1e.css → useKeybindings-BUK7Ngh6.css} +10 -31
  122. package/dist/assets/{useKeybindings-Dl2fatxs.js → useKeybindings-CV0VsjNP.js} +35 -1
  123. package/dist/assets/{useProjectPages-wyiRSAYY.js → useProjectPages-DgMGWOaO.js} +1 -1
  124. package/dist/assets/{usePushConnection-DbNbVMYT.js → usePushConnection-D8SE-itT.js} +3 -2
  125. package/dist/assets/{useWorkflowActivate-CnaSqjqM.js → useWorkflowActivate-BKz3N1SO.js} +1 -1
  126. package/dist/index.html +3 -3
  127. package/eslint.config.mjs +58 -0
  128. package/package.json +2 -1
  129. package/postcss.config.cjs +6 -0
  130. package/vite.config.mts +4 -0
  131. package/dist/assets/AuthView-BBEIdfYQ.js +0 -130
  132. package/dist/assets/CollectionParameter-_4aFNEaG.js +0 -4
  133. package/dist/assets/InsightsTableWorkflows-Cs0bf9Y9.js +0 -176
  134. package/dist/assets/ProjectCardBadge-saH09Hgi.js +0 -237
@@ -1,6 +1,6 @@
1
- import { hk as require$$0, bz as getDefaultExportFromCjs, a as useToast, m as unref, e_ as assert, hl as CURL_IMPORT_NOT_SUPPORTED_PROTOCOLS, hm as CURL_IMPORT_NODES_PROTOCOLS, c as useI18n, dg as get } from "./index-ZImlcrmd.js";
1
+ import { hH as require$$0, bQ as getDefaultExportFromCjs, a as useToast, m as unref, fu as assert, hI as CURL_IMPORT_NOT_SUPPORTED_PROTOCOLS, hJ as CURL_IMPORT_NODES_PROTOCOLS, c as useI18n, dl as get } from "./index-7S5ADieN.js";
2
2
  import { c as commonjsRequire } from "./_commonjs-dynamic-modules-TGKdzP3c.js";
3
- import { i as importCurlEventBus } from "./import-curl-Q2R3Aa93.js";
3
+ import { i as importCurlEventBus } from "./import-curl-DD21H3kK.js";
4
4
  class CCError extends Error {
5
5
  }
6
6
  const UTF8encoder = new TextEncoder();
@@ -4510,63 +4510,63 @@ function setArgValue(global_, config, argName, toggle) {
4510
4510
  if (toggle) {
4511
4511
  config.authtype |= CURLAUTH_DIGEST;
4512
4512
  } else {
4513
- config.authtype &= -3;
4513
+ config.authtype &= ~CURLAUTH_DIGEST;
4514
4514
  }
4515
4515
  break;
4516
4516
  case "proxy-digest":
4517
4517
  if (toggle) {
4518
4518
  config.proxyauthtype |= CURLAUTH_DIGEST;
4519
4519
  } else {
4520
- config.proxyauthtype &= -3;
4520
+ config.proxyauthtype &= ~CURLAUTH_DIGEST;
4521
4521
  }
4522
4522
  break;
4523
4523
  case "negotiate":
4524
4524
  if (toggle) {
4525
4525
  config.authtype |= CURLAUTH_NEGOTIATE;
4526
4526
  } else {
4527
- config.authtype &= -5;
4527
+ config.authtype &= ~CURLAUTH_NEGOTIATE;
4528
4528
  }
4529
4529
  break;
4530
4530
  case "proxy-negotiate":
4531
4531
  if (toggle) {
4532
4532
  config.proxyauthtype |= CURLAUTH_NEGOTIATE;
4533
4533
  } else {
4534
- config.proxyauthtype &= -5;
4534
+ config.proxyauthtype &= ~CURLAUTH_NEGOTIATE;
4535
4535
  }
4536
4536
  break;
4537
4537
  case "ntlm":
4538
4538
  if (toggle) {
4539
4539
  config.authtype |= CURLAUTH_NTLM;
4540
4540
  } else {
4541
- config.authtype &= -9;
4541
+ config.authtype &= ~CURLAUTH_NTLM;
4542
4542
  }
4543
4543
  break;
4544
4544
  case "proxy-ntlm":
4545
4545
  if (toggle) {
4546
4546
  config.proxyauthtype |= CURLAUTH_NTLM;
4547
4547
  } else {
4548
- config.proxyauthtype &= -9;
4548
+ config.proxyauthtype &= ~CURLAUTH_NTLM;
4549
4549
  }
4550
4550
  break;
4551
4551
  case "ntlm-wb":
4552
4552
  if (toggle) {
4553
4553
  config.authtype |= CURLAUTH_NTLM_WB;
4554
4554
  } else {
4555
- config.authtype &= -33;
4555
+ config.authtype &= ~CURLAUTH_NTLM_WB;
4556
4556
  }
4557
4557
  break;
4558
4558
  case "basic":
4559
4559
  if (toggle) {
4560
4560
  config.authtype |= CURLAUTH_BASIC;
4561
4561
  } else {
4562
- config.authtype &= -2;
4562
+ config.authtype &= ~CURLAUTH_BASIC;
4563
4563
  }
4564
4564
  break;
4565
4565
  case "proxy-basic":
4566
4566
  if (toggle) {
4567
4567
  config.proxyauthtype |= CURLAUTH_BASIC;
4568
4568
  } else {
4569
- config.proxyauthtype &= -2;
4569
+ config.proxyauthtype &= ~CURLAUTH_BASIC;
4570
4570
  }
4571
4571
  break;
4572
4572
  case "anyauth":
@@ -120,35 +120,14 @@
120
120
  -------------------------- */
121
121
  /* BEM
122
122
  -------------------------- */
123
- ._wrapper_1w2ly_123 {
124
- display: flex;
125
- align-items: center;
126
- border: var(--border-base);
127
- border-radius: var(--border-radius-base);
128
- }
129
- ._wrapper_1w2ly_123._no-border_1w2ly_129 {
130
- border: none;
131
- }
132
- ._badge_1w2ly_133 {
133
- padding: var(--spacing-4xs) var(--spacing-2xs);
134
- background-color: var(--color-background-xlight);
135
- border-color: var(--color-foreground-base);
136
- z-index: 1;
137
- position: relative;
138
- height: 23px;
139
- }
140
- ._badge_1w2ly_133 .n8n-text,
141
- ._badge_1w2ly_133 a {
142
- color: var(--color-text-base);
143
- }
144
- ._projectBadge_1w2ly_146 > span {
145
- display: flex;
146
- gap: var(--spacing-3xs);
147
- }
148
- ._count-badge_1w2ly_151 {
149
- font-size: var(--font-size-2xs);
150
- padding: var(--spacing-4xs) var(--spacing-3xs);
151
- color: var(--color-text-base);
152
- border-left: var(--border-base);
153
- line-height: var(--font-line-height-regular);
123
+ ._uiBlocker_j0zl4_123 {
124
+ position: absolute;
125
+ top: 0;
126
+ left: 0;
127
+ width: 100%;
128
+ height: 100%;
129
+ background-color: var(--color-block-ui-overlay);
130
+ z-index: 10;
131
+ opacity: 0.6;
132
+ border-radius: var(--border-radius-large);
154
133
  }
@@ -1,4 +1,37 @@
1
- import { E as createEventBus, bM as inject, cd as useActiveElement, dG as useDeviceSupport, x as computed, m as unref, eq as useEventListener, bX as PiPWindowSymbol } from "./index-ZImlcrmd.js";
1
+ import { d as defineComponent, e as createBlock, g as openBlock, dW as Transition, w as withCtx, aT as withDirectives, aU as vShow, k as createBaseVNode, n as normalizeClass, _ as _export_sfc, P as createEventBus, b_ as inject, c9 as PiPWindowSymbol, cq as useActiveElement, d_ as useDeviceSupport, x as computed, m as unref, eO as useEventListener } from "./index-7S5ADieN.js";
2
+ const _sfc_main = /* @__PURE__ */ defineComponent({
3
+ __name: "BlockUi",
4
+ props: {
5
+ show: { type: Boolean, default: false }
6
+ },
7
+ setup(__props) {
8
+ return (_ctx, _cache) => {
9
+ return openBlock(), createBlock(Transition, {
10
+ name: "fade",
11
+ mode: "out-in"
12
+ }, {
13
+ default: withCtx(() => [
14
+ withDirectives(createBaseVNode("div", {
15
+ class: normalizeClass(["n8n-block-ui", _ctx.$style.uiBlocker]),
16
+ role: "dialog",
17
+ "aria-hidden": true
18
+ }, null, 2), [
19
+ [vShow, _ctx.show]
20
+ ])
21
+ ]),
22
+ _: 1
23
+ });
24
+ };
25
+ }
26
+ });
27
+ const uiBlocker = "_uiBlocker_j0zl4_123";
28
+ const style0 = {
29
+ uiBlocker
30
+ };
31
+ const cssModules = {
32
+ "$style": style0
33
+ };
34
+ const N8nBlockUi = /* @__PURE__ */ _export_sfc(_sfc_main, [["__cssModules", cssModules], ["__scopeId", "data-v-76a59b58"]]);
2
35
  const canvasEventBus = createEventBus();
3
36
  const useKeybindings = (keymap, options) => {
4
37
  const pipWindow = inject(PiPWindowSymbol);
@@ -79,6 +112,7 @@ const useKeybindings = (keymap, options) => {
79
112
  useEventListener(pipWindow?.value?.document ?? document, "keydown", onKeyDown);
80
113
  };
81
114
  export {
115
+ N8nBlockUi as N,
82
116
  canvasEventBus as c,
83
117
  useKeybindings as u
84
118
  };
@@ -1,4 +1,4 @@
1
- import { U as useRoute, x as computed, V as VIEWS, e1 as reactive } from "./index-ZImlcrmd.js";
1
+ import { a4 as useRoute, x as computed, V as VIEWS, ep as reactive } from "./index-7S5ADieN.js";
2
2
  const useProjectPages = () => {
3
3
  const route = useRoute();
4
4
  const isOverviewSubPage = computed(
@@ -1,5 +1,5 @@
1
- import { fx as makeRestApiRequest, T as useWorkflowsStore, J as useUIStore, fy as clearPopupWindowState, ei as getEasyAiWorkflowJson, am as useTelemetry, c5 as parse, fz as hasTrimmedItem, v as useSettingsStore, a8 as useWorkflowSaving, a9 as useWorkflowHelpers, aq as WORKFLOW_SETTINGS_MODAL_KEY, a as useToast, fA as generateNodesGraph, c as useI18n, fB as getExecutionErrorToastConfiguration, bw as useNodeTypesStore, dQ as getTriggerNodeServiceName, br as useNodeHelpers, fC as hasTrimmedData, aX as useExternalHooks, fD as codeNodeEditorEventBus, ea as EVALUATION_TRIGGER_NODE_TYPE, bs as useRunWorkflow, fE as getExecutionErrorMessage, d7 as useCredentialsStore, fF as useAssistantStore, fG as useSchemaPreviewStore, cQ as isCommunityPackageName, R as defineStore, a1 as useRootStore, S as usePushConnectionStore, r as ref } from "./index-ZImlcrmd.js";
2
- import { g as globalLinkActionsEventBus } from "./global-link-actions-CudV1inR.js";
1
+ import { f_ as makeRestApiRequest, a3 as useWorkflowsStore, S as useUIStore, f$ as clearPopupWindowState, eG as getEasyAiWorkflowJson, ax as useTelemetry, ci as parse, g0 as hasTrimmedItem, v as useSettingsStore, ai as useWorkflowSaving, aj as useWorkflowHelpers, aB as WORKFLOW_SETTINGS_MODAL_KEY, a as useToast, g1 as generateNodesGraph, c as useI18n, g2 as getExecutionErrorToastConfiguration, bN as useNodeTypesStore, e8 as getTriggerNodeServiceName, bI as useNodeHelpers, g3 as hasTrimmedData, bf as useExternalHooks, g4 as codeNodeEditorEventBus, ez as EVALUATION_TRIGGER_NODE_TYPE, bJ as useRunWorkflow, g5 as getExecutionErrorMessage, dh as useCredentialsStore, g6 as useAssistantStore, g7 as useSchemaPreviewStore, c$ as isCommunityPackageName, a1 as defineStore, ab as useRootStore, a2 as usePushConnectionStore, r as ref } from "./index-7S5ADieN.js";
2
+ import { g as globalLinkActionsEventBus } from "./global-link-actions-olwfH36z.js";
3
3
  var GET_STATUS_ENDPOINT = "/orchestration/worker/status";
4
4
  var sendGetWorkerStatus = async (context) => {
5
5
  await makeRestApiRequest(context, "POST", GET_STATUS_ENDPOINT);
@@ -7,6 +7,7 @@ var sendGetWorkerStatus = async (context) => {
7
7
  async function executionFinished({ data }, options) {
8
8
  const workflowsStore = useWorkflowsStore();
9
9
  const uiStore = useUIStore();
10
+ workflowsStore.lastAddedExecutingNode = null;
10
11
  if (typeof workflowsStore.activeExecutionId === "undefined") {
11
12
  return;
12
13
  }
@@ -1,4 +1,4 @@
1
- import { r as ref, b as useRouter, a9 as useWorkflowHelpers, a8 as useWorkflowSaving, T as useWorkflowsStore, J as useUIStore, a as useToast, a6 as useNpsSurveyStore, W as PLACEHOLDER_EMPTY_WORKFLOW_ID, am as useTelemetry, aX as useExternalHooks, c as useI18n, aR as useStorage, fM as LOCAL_STORAGE_ACTIVATION_FLAG, fN as WORKFLOW_ACTIVE_MODAL_KEY } from "./index-ZImlcrmd.js";
1
+ import { r as ref, b as useRouter, aj as useWorkflowHelpers, ai as useWorkflowSaving, a3 as useWorkflowsStore, S as useUIStore, a as useToast, ag as useNpsSurveyStore, a5 as PLACEHOLDER_EMPTY_WORKFLOW_ID, ax as useTelemetry, bf as useExternalHooks, c as useI18n, b6 as useStorage, gd as LOCAL_STORAGE_ACTIVATION_FLAG, ge as WORKFLOW_ACTIVE_MODAL_KEY } from "./index-7S5ADieN.js";
2
2
  function useWorkflowActivate() {
3
3
  const updatingWorkflowActivation = ref(false);
4
4
  const router = useRouter();
package/dist/index.html CHANGED
@@ -1,7 +1,7 @@
1
1
  <!DOCTYPE html>
2
2
  <html lang="en">
3
3
  <head>
4
- <script type="module" crossorigin src="/{{BASE_PATH}}/assets/polyfills-deFGRMT9.js"></script>
4
+ <script type="module" crossorigin src="/{{BASE_PATH}}/assets/polyfills-B8p9DdqU.js"></script>
5
5
 
6
6
  <meta charset="utf-8" />
7
7
  <meta http-equiv="X-UA-Compatible" content="IE=edge" />
@@ -16,8 +16,8 @@
16
16
  <script>!function(t,e){var o,n,p,r;e.__SV||(window.posthog=e,e._i=[],e.init=function(i,s,a){function g(t,e){var o=e.split(".");2==o.length&&(t=t[o[0]],e=o[1]),t[e]=function(){t.push([e].concat(Array.prototype.slice.call(arguments,0)))}}(p=t.createElement("script")).type="text/javascript",p.async=!0,p.src=s.api_host+"/static/array.js",(r=t.getElementsByTagName("script")[0]).parentNode.insertBefore(p,r);var u=e;for(void 0!==a?u=e[a]=[]:a="posthog",u.people=u.people||[],u.toString=function(t){var e="posthog";return"posthog"!==a&&(e+="."+a),t||(e+=" (stub)"),e},u.people.toString=function(){return u.toString(1)+".people (stub)"},o="capture identify alias people.set people.set_once set_config register register_once unregister opt_out_capturing has_opted_out_capturing opt_in_capturing reset isFeatureEnabled getFeatureFlag onFeatureFlags reloadFeatureFlags".split(" "),n=0;n<o.length;n++)g(u,o[n]);e._i.push([i,s,a])},e.__SV=1)}(document,window.posthog||[])</script>
17
17
 
18
18
  <title>n8n.io - Workflow Automation</title>
19
- <script type="module" crossorigin src="/{{BASE_PATH}}/assets/index-ZImlcrmd.js"></script>
20
- <link rel="stylesheet" crossorigin href="/{{BASE_PATH}}/assets/index-CeLskvTy.css">
19
+ <script type="module" crossorigin src="/{{BASE_PATH}}/assets/index-7S5ADieN.js"></script>
20
+ <link rel="stylesheet" crossorigin href="/{{BASE_PATH}}/assets/index-BzamKJpD.css">
21
21
  </head>
22
22
  <body>
23
23
  <noscript>
@@ -0,0 +1,58 @@
1
+ import { defineConfig } from 'eslint/config';
2
+ import { frontendConfig } from '@n8n/eslint-config/frontend';
3
+
4
+ export default defineConfig(frontendConfig, {
5
+ rules: {
6
+ // TODO: Remove these
7
+ '@typescript-eslint/ban-ts-comment': ['warn', { 'ts-ignore': true }],
8
+ 'id-denylist': 'warn',
9
+ 'no-case-declarations': 'warn',
10
+ 'no-useless-escape': 'warn',
11
+ 'no-prototype-builtins': 'warn',
12
+ 'no-empty': 'warn',
13
+ 'no-fallthrough': 'warn',
14
+ 'no-extra-boolean-cast': 'warn',
15
+ 'no-sparse-arrays': 'warn',
16
+ 'no-control-regex': 'warn',
17
+ 'import-x/extensions': 'warn',
18
+ 'import-x/no-default-export': 'warn',
19
+ 'import-x/order': 'off',
20
+ 'import-x/no-cycle': 'warn',
21
+ 'import-x/no-duplicates': 'warn',
22
+ 'no-unsafe-optional-chaining': 'warn',
23
+ '@typescript-eslint/no-restricted-types': 'warn',
24
+ '@typescript-eslint/dot-notation': 'warn',
25
+ '@stylistic/lines-between-class-members': 'warn',
26
+ '@stylistic/member-delimiter-style': 'warn',
27
+ '@typescript-eslint/naming-convention': 'warn',
28
+ '@typescript-eslint/no-empty-interface': 'warn',
29
+ '@typescript-eslint/no-for-in-array': 'warn',
30
+ '@typescript-eslint/no-loop-func': 'warn',
31
+ '@typescript-eslint/no-non-null-assertion': 'warn',
32
+ '@typescript-eslint/no-shadow': 'warn',
33
+ '@typescript-eslint/no-this-alias': 'warn',
34
+ '@typescript-eslint/no-unnecessary-boolean-literal-compare': 'warn',
35
+ '@typescript-eslint/no-unnecessary-type-assertion': 'warn',
36
+ '@typescript-eslint/no-unused-expressions': 'warn',
37
+ '@typescript-eslint/no-unused-vars': 'warn',
38
+ '@typescript-eslint/no-var-requires': 'warn',
39
+ '@typescript-eslint/prefer-nullish-coalescing': 'warn',
40
+ '@typescript-eslint/prefer-optional-chain': 'warn',
41
+ '@typescript-eslint/restrict-plus-operands': 'warn',
42
+ '@typescript-eslint/no-redundant-type-constituents': 'warn',
43
+ '@typescript-eslint/no-unsafe-enum-comparison': 'warn',
44
+ '@typescript-eslint/require-await': 'warn',
45
+ '@typescript-eslint/prefer-promise-reject-errors': 'warn',
46
+ '@typescript-eslint/no-base-to-string': 'warn',
47
+ '@typescript-eslint/no-empty-object-type': 'warn',
48
+ '@typescript-eslint/no-unsafe-function-type': 'warn',
49
+ 'vue/attribute-hyphenation': 'warn',
50
+ '@typescript-eslint/no-unsafe-assignment': 'warn',
51
+ '@typescript-eslint/unbound-method': 'warn',
52
+ '@typescript-eslint/restrict-template-expressions': 'warn',
53
+ '@typescript-eslint/no-unsafe-call': 'warn',
54
+ '@typescript-eslint/no-unsafe-argument': 'warn',
55
+ '@typescript-eslint/no-unsafe-member-access': 'warn',
56
+ '@typescript-eslint/no-unsafe-return': 'warn',
57
+ },
58
+ });
package/package.json CHANGED
@@ -1,8 +1,9 @@
1
1
  {
2
2
  "name": "n8n-editor-ui",
3
- "version": "1.100.0",
3
+ "version": "1.101.0",
4
4
  "description": "Workflow Editor UI for n8n",
5
5
  "main": "index.js",
6
+ "type": "module",
6
7
  "license": "SEE LICENSE IN LICENSE.md",
7
8
  "homepage": "https://n8n.io",
8
9
  "author": {
@@ -0,0 +1,6 @@
1
+ module.exports = {
2
+ plugins: {
3
+ // tailwindcss: {},
4
+ autoprefixer: {},
5
+ },
6
+ };
package/vite.config.mts CHANGED
@@ -73,6 +73,10 @@ const plugins = [
73
73
  components({
74
74
  dts: './src/components.d.ts',
75
75
  resolvers: [
76
+ (componentName) => {
77
+ if (componentName.startsWith('N8n'))
78
+ return { name: componentName, from: '@n8n/design-system' };
79
+ },
76
80
  iconsResolver({
77
81
  prefix: 'icon',
78
82
  }),
@@ -1,130 +0,0 @@
1
- import { L as Logo } from "./Logo-C699HbA_.js";
2
- import { d as defineComponent, eE as useSSOStore, a as useToast, U as useRoute, h as resolveComponent, i as createElementBlock, f as createCommentVNode, m as unref, g as openBlock, n as normalizeClass, k as createBaseVNode, j as createVNode, t as toDisplayString, c as useI18n, _ as _export_sfc, v as useSettingsStore, w as withCtx, l as createTextVNode, e as createBlock, bK as mergeProps } from "./index-ZImlcrmd.js";
3
- const _sfc_main$1 = /* @__PURE__ */ defineComponent({
4
- __name: "SSOLogin",
5
- setup(__props) {
6
- const i18n = useI18n();
7
- const ssoStore = useSSOStore();
8
- const toast = useToast();
9
- const route = useRoute();
10
- const onSSOLogin = async () => {
11
- try {
12
- const redirectUrl = ssoStore.isDefaultAuthenticationSaml ? await ssoStore.getSSORedirectUrl(
13
- typeof route.query?.redirect === "string" ? route.query.redirect : ""
14
- ) : ssoStore.oidc.loginUrl;
15
- window.location.href = redirectUrl ?? "";
16
- } catch (error) {
17
- toast.showError(error, "Error", error.message);
18
- }
19
- };
20
- return (_ctx, _cache) => {
21
- const _component_n8n_button = resolveComponent("n8n-button");
22
- return unref(ssoStore).showSsoLoginButton ? (openBlock(), createElementBlock("div", {
23
- key: 0,
24
- class: normalizeClass(_ctx.$style.ssoLogin)
25
- }, [
26
- createBaseVNode("div", {
27
- class: normalizeClass(_ctx.$style.divider)
28
- }, [
29
- createBaseVNode("span", null, toDisplayString(unref(i18n).baseText("sso.login.divider")), 1)
30
- ], 2),
31
- createVNode(_component_n8n_button, {
32
- size: "large",
33
- type: "primary",
34
- outline: "",
35
- label: unref(i18n).baseText("sso.login.button"),
36
- onClick: onSSOLogin
37
- }, null, 8, ["label"])
38
- ], 2)) : createCommentVNode("", true);
39
- };
40
- }
41
- });
42
- const ssoLogin = "_ssoLogin_krsnh_123";
43
- const divider = "_divider_krsnh_127";
44
- const style0$1 = {
45
- ssoLogin,
46
- divider
47
- };
48
- const cssModules$1 = {
49
- "$style": style0$1
50
- };
51
- const SSOLogin = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__cssModules", cssModules$1]]);
52
- const _sfc_main = /* @__PURE__ */ defineComponent({
53
- __name: "AuthView",
54
- props: {
55
- form: {},
56
- formLoading: { type: Boolean, default: false },
57
- subtitle: {},
58
- withSso: { type: Boolean, default: false }
59
- },
60
- emits: ["update", "submit", "secondaryClick"],
61
- setup(__props, { emit: __emit }) {
62
- const emit = __emit;
63
- const onUpdate = (e) => {
64
- emit("update", e);
65
- };
66
- const onSubmit = (values) => {
67
- emit("submit", values);
68
- };
69
- const onSecondaryClick = () => {
70
- emit("secondaryClick");
71
- };
72
- const {
73
- settings: { releaseChannel }
74
- } = useSettingsStore();
75
- return (_ctx, _cache) => {
76
- const _component_n8n_text = resolveComponent("n8n-text");
77
- const _component_n8n_form_box = resolveComponent("n8n-form-box");
78
- return openBlock(), createElementBlock("div", {
79
- class: normalizeClass(_ctx.$style.container)
80
- }, [
81
- createVNode(Logo, {
82
- location: "authView",
83
- "release-channel": unref(releaseChannel)
84
- }, null, 8, ["release-channel"]),
85
- _ctx.subtitle ? (openBlock(), createElementBlock("div", {
86
- key: 0,
87
- class: normalizeClass(_ctx.$style.textContainer)
88
- }, [
89
- createVNode(_component_n8n_text, { size: "large" }, {
90
- default: withCtx(() => [
91
- createTextVNode(toDisplayString(_ctx.subtitle), 1)
92
- ]),
93
- _: 1
94
- })
95
- ], 2)) : createCommentVNode("", true),
96
- createBaseVNode("div", {
97
- class: normalizeClass(_ctx.$style.formContainer)
98
- }, [
99
- createVNode(_component_n8n_form_box, mergeProps(_ctx.form, {
100
- "data-test-id": "auth-form",
101
- "button-loading": _ctx.formLoading,
102
- onSecondaryClick,
103
- onSubmit,
104
- onUpdate
105
- }), {
106
- default: withCtx(() => [
107
- _ctx.withSso ? (openBlock(), createBlock(SSOLogin, { key: 0 })) : createCommentVNode("", true)
108
- ]),
109
- _: 1
110
- }, 16, ["button-loading"])
111
- ], 2)
112
- ], 2);
113
- };
114
- }
115
- });
116
- const container = "_container_1vfzm_127";
117
- const textContainer = "_textContainer_1vfzm_137";
118
- const formContainer = "_formContainer_1vfzm_141";
119
- const style0 = {
120
- container,
121
- textContainer,
122
- formContainer
123
- };
124
- const cssModules = {
125
- "$style": style0
126
- };
127
- const AuthView = /* @__PURE__ */ _export_sfc(_sfc_main, [["__cssModules", cssModules]]);
128
- export {
129
- AuthView as A
130
- };
@@ -1,4 +0,0 @@
1
- import { hj as _sfc_main } from "./index-ZImlcrmd.js";
2
- export {
3
- _sfc_main as default
4
- };
@@ -1,176 +0,0 @@
1
- import { d as defineComponent, cK as mergeModels, x as computed, r as ref, c as useI18n, i4 as transformInsightsFailureRate, i5 as INSIGHTS_UNIT_MAPPING, i7 as transformInsightsTimeSaved, i8 as transformInsightsAverageRunTime, cL as useModel, $ as watch, h as resolveComponent, i as createElementBlock, g as openBlock, j as createVNode, w as withCtx, l as createTextVNode, e as createBlock, m as unref, aZ as N8nTooltip, k as createBaseVNode, t as toDisplayString, F as Fragment, V as VIEWS, i9 as N8nDataTableServer, am as useTelemetry, _ as _export_sfc } from "./index-ZImlcrmd.js";
2
- import { s as smartDecimal } from "./InsightsSummary-JPw9kN4a.js";
3
- const _hoisted_1 = { class: "ellipsis" };
4
- const _hoisted_2 = { class: "ellipsis" };
5
- const _sfc_main = /* @__PURE__ */ defineComponent({
6
- __name: "InsightsTableWorkflows",
7
- props: /* @__PURE__ */ mergeModels({
8
- data: {},
9
- loading: { type: Boolean }
10
- }, {
11
- "sortBy": {},
12
- "sortByModifiers": {}
13
- }),
14
- emits: /* @__PURE__ */ mergeModels(["update:options"], ["update:sortBy"]),
15
- setup(__props, { emit: __emit }) {
16
- const props = __props;
17
- const i18n = useI18n();
18
- const telemetry = useTelemetry();
19
- const rows = computed(() => props.data.data);
20
- const headers = ref([
21
- {
22
- title: "Name",
23
- key: "workflowName",
24
- width: 400,
25
- disableSort: true
26
- },
27
- {
28
- title: i18n.baseText("insights.banner.title.total"),
29
- key: "total",
30
- value(row) {
31
- return row.total.toLocaleString("en-US");
32
- }
33
- },
34
- {
35
- title: i18n.baseText("insights.banner.title.failed"),
36
- key: "failed",
37
- value(row) {
38
- return row.failed.toLocaleString("en-US");
39
- }
40
- },
41
- {
42
- title: i18n.baseText("insights.banner.title.failureRate"),
43
- key: "failureRate",
44
- value(row) {
45
- return smartDecimal(transformInsightsFailureRate(row.failureRate)) + INSIGHTS_UNIT_MAPPING.failureRate(row.failureRate);
46
- }
47
- },
48
- {
49
- title: i18n.baseText("insights.banner.title.timeSaved"),
50
- key: "timeSaved",
51
- value(row) {
52
- return smartDecimal(transformInsightsTimeSaved(row.timeSaved)) + INSIGHTS_UNIT_MAPPING.timeSaved(row.timeSaved);
53
- }
54
- },
55
- {
56
- title: i18n.baseText("insights.banner.title.averageRunTime"),
57
- key: "averageRunTime",
58
- value(row) {
59
- return smartDecimal(transformInsightsAverageRunTime(row.averageRunTime)) + INSIGHTS_UNIT_MAPPING.averageRunTime(row.averageRunTime);
60
- }
61
- },
62
- {
63
- title: i18n.baseText("insights.dashboard.table.projectName"),
64
- key: "projectName",
65
- disableSort: true
66
- }
67
- ]);
68
- const sortBy = useModel(__props, "sortBy");
69
- const currentPage = ref(0);
70
- const itemsPerPage = ref(25);
71
- const emit = __emit;
72
- const getWorkflowLink = (item, query) => ({
73
- name: VIEWS.WORKFLOW,
74
- params: {
75
- name: item.workflowId
76
- },
77
- query
78
- });
79
- const trackWorkflowClick = (item) => {
80
- telemetry.track("User clicked on workflow from insights table", {
81
- workflow_id: item.workflowId
82
- });
83
- };
84
- watch(sortBy, (newValue) => {
85
- telemetry.track("User sorted insights table", {
86
- sorted_by: (newValue ?? []).map((item) => ({
87
- ...item,
88
- label: headers.value.find((header) => header.key === item.id)?.title
89
- }))
90
- });
91
- });
92
- return (_ctx, _cache) => {
93
- const _component_N8nHeading = resolveComponent("N8nHeading");
94
- const _component_router_link = resolveComponent("router-link");
95
- return openBlock(), createElementBlock("div", null, [
96
- createVNode(_component_N8nHeading, {
97
- bold: "",
98
- tag: "h3",
99
- size: "medium",
100
- class: "mb-s"
101
- }, {
102
- default: withCtx(() => _cache[4] || (_cache[4] = [
103
- createTextVNode("Workflow insights")
104
- ])),
105
- _: 1
106
- }),
107
- createVNode(N8nDataTableServer, {
108
- "sort-by": sortBy.value,
109
- "onUpdate:sortBy": _cache[0] || (_cache[0] = ($event) => sortBy.value = $event),
110
- page: currentPage.value,
111
- "onUpdate:page": _cache[1] || (_cache[1] = ($event) => currentPage.value = $event),
112
- "items-per-page": itemsPerPage.value,
113
- "onUpdate:itemsPerPage": _cache[2] || (_cache[2] = ($event) => itemsPerPage.value = $event),
114
- items: rows.value,
115
- headers: headers.value,
116
- "items-length": _ctx.data.count,
117
- "onUpdate:options": _cache[3] || (_cache[3] = ($event) => emit("update:options", $event))
118
- }, {
119
- [`item.workflowName`]: withCtx(({ item }) => [
120
- createVNode(_component_router_link, {
121
- to: getWorkflowLink(item),
122
- class: "link",
123
- onClick: ($event) => trackWorkflowClick(item)
124
- }, {
125
- default: withCtx(() => [
126
- createVNode(unref(N8nTooltip), {
127
- content: item.workflowName,
128
- placement: "top"
129
- }, {
130
- default: withCtx(() => [
131
- createBaseVNode("div", _hoisted_1, toDisplayString(item.workflowName), 1)
132
- ]),
133
- _: 2
134
- }, 1032, ["content"])
135
- ]),
136
- _: 2
137
- }, 1032, ["to", "onClick"])
138
- ]),
139
- [`item.timeSaved`]: withCtx(({ item, value }) => [
140
- !item.timeSaved ? (openBlock(), createBlock(_component_router_link, {
141
- key: 0,
142
- to: getWorkflowLink(item, { settings: "true" }),
143
- class: "link"
144
- }, {
145
- default: withCtx(() => [
146
- createTextVNode(toDisplayString(unref(i18n).baseText("insights.dashboard.table.estimate")), 1)
147
- ]),
148
- _: 2
149
- }, 1032, ["to"])) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
150
- createTextVNode(toDisplayString(value), 1)
151
- ], 64))
152
- ]),
153
- [`item.projectName`]: withCtx(({ item }) => [
154
- item.projectName ? (openBlock(), createBlock(unref(N8nTooltip), {
155
- key: 0,
156
- content: item.projectName,
157
- placement: "top"
158
- }, {
159
- default: withCtx(() => [
160
- createBaseVNode("div", _hoisted_2, toDisplayString(item.projectName), 1)
161
- ]),
162
- _: 2
163
- }, 1032, ["content"])) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
164
- createTextVNode(" - ")
165
- ], 64))
166
- ]),
167
- _: 2
168
- }, 1032, ["sort-by", "page", "items-per-page", "items", "headers", "items-length"])
169
- ]);
170
- };
171
- }
172
- });
173
- const InsightsTableWorkflows = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-c4d44bd3"]]);
174
- export {
175
- InsightsTableWorkflows as default
176
- };