n8n-editor-ui 1.102.2 → 1.103.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (115) hide show
  1. package/dist/assets/{ActionDropdown-CiegfqhB.js → ActionDropdown-BhU4vCrE.js} +1 -1
  2. package/dist/assets/{AnimatedSpinner-DZ7wHd_W.js → AnimatedSpinner-Du5eXSIY.js} +1 -1
  3. package/dist/assets/{AnnotationTagsDropdown.ee.vue_vue_type_script_setup_true_lang-BQoi5khn.js → AnnotationTagsDropdown.ee.vue_vue_type_script_setup_true_lang-DEQTwSbx.js} +1 -1
  4. package/dist/assets/{AuthView-K2y2JXyp.js → AuthView-BJ-YTYTN.js} +2 -2
  5. package/dist/assets/{ChangePasswordView-D_EsQtLD.js → ChangePasswordView-B-OkU_yr.js} +3 -3
  6. package/dist/assets/CollectionParameter-BHthTTpD.js +4 -0
  7. package/dist/assets/{CredentialsView-DvE9GnD7.js → CredentialsView-BjUZvEdd.js} +8 -8
  8. package/dist/assets/{DemoFooter-kRP32xy4.js → DemoFooter-9WRPL1Nd.js} +8 -8
  9. package/dist/assets/{EmptySharedSectionActionBox.vue_vue_type_script_setup_true_lang-B6KKFEL7.js → EmptySharedSectionActionBox.vue_vue_type_script_setup_true_lang-D3Zaxt4S.js} +1 -1
  10. package/dist/assets/{EntityNotFound-q_5k8QTh.js → EntityNotFound-DvAk0XOf.js} +1 -1
  11. package/dist/assets/{EntityUnAuthorised-DrFh2EVh.js → EntityUnAuthorised-BTLaJBAA.js} +1 -1
  12. package/dist/assets/{ErrorView-CdyA4lBI.js → ErrorView-KDDRlAEN.js} +1 -1
  13. package/dist/assets/{EvaluationsRootView-DBi9hUxa.js → EvaluationsRootView-BViIGqmh.js} +1 -1
  14. package/dist/assets/{EvaluationsView-VbCSsM2z.js → EvaluationsView-BY0HmUSo.js} +3 -3
  15. package/dist/assets/{ExecutionsTime.vue_vue_type_script_setup_true_lang-v5SEEKlZ.js → ExecutionsTime.vue_vue_type_script_setup_true_lang-Dz1TldYs.js} +3 -6
  16. package/dist/assets/{ExecutionsView-sSmNa_LK.js → ExecutionsView-z5GL4TFM.js} +9 -9
  17. package/dist/assets/{FileSaver.min-BemkeU_7.js → FileSaver.min-BRpMoNCX.js} +1 -1
  18. package/dist/assets/{FixedCollectionParameter-yzvCzSx6.js → FixedCollectionParameter-BW_7bc6a.js} +1 -1
  19. package/dist/assets/{ForgotMyPasswordView-BKvBLqbr.js → ForgotMyPasswordView-C3yPX8Sm.js} +3 -3
  20. package/dist/assets/{InfoAccordion--ZQQuSPX.js → InfoAccordion-B3ebdljQ.js} +1 -1
  21. package/dist/assets/{InsightsChartAverageRuntime-DGOGXDwW.js → InsightsChartAverageRuntime-B07vNUKi.js} +4 -4
  22. package/dist/assets/{InsightsChartFailed-1vg5XpxV.js → InsightsChartFailed-vwVIlrMM.js} +4 -4
  23. package/dist/assets/{InsightsChartFailureRate-7nJvVi9O.js → InsightsChartFailureRate-3R9NR__K.js} +4 -4
  24. package/dist/assets/{InsightsChartTimeSaved-DKn1pZ2q.js → InsightsChartTimeSaved-0XAZRsQL.js} +4 -4
  25. package/dist/assets/{InsightsChartTotal-ByrPtNMJ.js → InsightsChartTotal-QtHpPQPx.js} +4 -4
  26. package/dist/assets/{InsightsDashboard-BwLnzxKC.js → InsightsDashboard-jAR8co6U.js} +10 -10
  27. package/dist/assets/{InsightsPaywall-8Xzv5tgi.js → InsightsPaywall-CqlSj87d.js} +1 -1
  28. package/dist/assets/{InsightsSummary-CVMZ0AIR.js → InsightsSummary-1EyHgtD2.js} +1 -1
  29. package/dist/assets/{InsightsTableWorkflows-KGsV_wLS.js → InsightsTableWorkflows-CMfER3Lz.js} +6 -7
  30. package/dist/assets/{InsightsTableWorkflows-DJhX6bQW.css → InsightsTableWorkflows-RGpSnp7n.css} +3 -3
  31. package/dist/assets/{Logo-DFdhGUpH.js → Logo-BAbynr3J.js} +1 -1
  32. package/dist/assets/{LogsPanel-DDzEUcu_.js → LogsPanel-C4P2jfja.js} +14 -8
  33. package/dist/assets/{MainHeader-IUjqKc1i.js → MainHeader-2VAdoAN3.js} +12 -19
  34. package/dist/assets/{MainSidebar-BV-JzM27.js → MainSidebar-ChT_fvtq.js} +3 -3
  35. package/dist/assets/{N8nDataTableServer-Dq5Mwh9d.js → N8nDataTableServer-CUJVgPuN.js} +21 -11
  36. package/dist/assets/{NodeCreation-DCV9QVeh.js → NodeCreation-B0_VqZl0.js} +43 -21
  37. package/dist/assets/{NodeCreation-32nlvQSy.css → NodeCreation-CxN6JIS_.css} +9 -1
  38. package/dist/assets/{NodeCreator-C8jv1gta.js → NodeCreator-Dudc-sld.js} +2 -9
  39. package/dist/assets/{NodeDetailsView-D7qedYA0.js → NodeDetailsView-D3jGDk45.js} +15 -15
  40. package/dist/assets/{NodeDetailsViewV2-BAkPjDo5.js → NodeDetailsViewV2-B0iyvHRQ.js} +15 -15
  41. package/dist/assets/{NodeView-DKlyR0_C.js → NodeView-CX3GlUP1.js} +392 -129
  42. package/dist/assets/{NodeView-BbQy7Are.css → NodeView-hst6fesm.css} +63 -76
  43. package/dist/assets/{ProjectHeader-Co0EPo6y.js → ProjectHeader-CBBQ32Nc.js} +2 -2
  44. package/dist/assets/{ProjectSettings-CUwuhSyu.js → ProjectSettings-D7CCWy0v.js} +3 -3
  45. package/dist/assets/{PushConnectionTracker.vue_vue_type_script_setup_true_lang-DDVpVAyT.js → PushConnectionTracker.vue_vue_type_script_setup_true_lang-aTaPuBRW.js} +1 -1
  46. package/dist/assets/{ResourcesListLayout-0KbQy3_m.js → ResourcesListLayout-CR6jD0wL.js} +3 -3
  47. package/dist/assets/{RunData-CctCvWsu.js → RunData-CY2AnQ-5.js} +83 -70
  48. package/dist/assets/{RunData-DuKNwYqe.css → RunData-D0dKnadD.css} +61 -62
  49. package/dist/assets/{RunDataJson-T-LRvnsQ.js → RunDataJson-PZfvyEtF.js} +9 -9
  50. package/dist/assets/{RunDataJsonActions-C5tGgl2w.js → RunDataJsonActions-BmrxonyU.js} +1 -1
  51. package/dist/assets/RunDataParsedAiContent-b0irqoyM.js +298 -0
  52. package/dist/assets/{RunDataSearch-CsykTpQU.js → RunDataSearch-DS17rPDS.js} +1 -1
  53. package/dist/assets/{RunDataTable-DS-hDrAF.js → RunDataTable-DgBV9mGl.js} +50 -41
  54. package/dist/assets/{RunDataTable-CTBtmQIs.css → RunDataTable-n918b-Qv.css} +55 -55
  55. package/dist/assets/{SamlOnboarding-Dr42BiUa.js → SamlOnboarding-COuXHYGq.js} +3 -3
  56. package/dist/assets/{SettingsApiView-0TAqOns3.js → SettingsApiView-Bjmx5RKa.js} +1 -1
  57. package/dist/assets/{SettingsCommunityNodesView-BO5mZg81.js → SettingsCommunityNodesView-JkmQWaRv.js} +3 -3
  58. package/dist/assets/{SettingsExternalSecrets-BmpYfnUN.js → SettingsExternalSecrets-unJLQHhU.js} +1 -1
  59. package/dist/assets/{SettingsLdapView-AdcIL_WB.js → SettingsLdapView-DvZbXhb2.js} +1 -1
  60. package/dist/assets/{SettingsLogStreamingView-DHAPBv4i.js → SettingsLogStreamingView-DT_BpBbv.js} +1 -1
  61. package/dist/assets/{SettingsPersonalView-D-sKTNF5.js → SettingsPersonalView-D0VCYPEd.js} +1 -1
  62. package/dist/assets/{SettingsSourceControl-D_jgIQPN.js → SettingsSourceControl-CatnTfFf.js} +1 -1
  63. package/dist/assets/{SettingsSso-DpxORkrt.js → SettingsSso-CxWN7WTJ.js} +1 -1
  64. package/dist/assets/{SettingsUsageAndPlan-DWu4RW1N.js → SettingsUsageAndPlan-BMsLzUeh.js} +1 -1
  65. package/dist/assets/{SettingsUsersView-BuZbf1jq.css → SettingsUsersView-B81cHl3f.css} +9 -6
  66. package/dist/assets/{SettingsUsersView-r6-ZO8CO.js → SettingsUsersView-hbKTH9np.js} +12 -10
  67. package/dist/assets/{SettingsView-DoZ4920P.js → SettingsView-C3FWxmaD.js} +1 -1
  68. package/dist/assets/{SetupView-Ca70rhsh.js → SetupView-DdjBoiKa.js} +3 -3
  69. package/dist/assets/{SetupWorkflowCredentialsButton-ujybntOa.js → SetupWorkflowCredentialsButton-BX8a8Tuq.js} +1 -1
  70. package/dist/assets/{SetupWorkflowFromTemplateView-KE6NTkHC.js → SetupWorkflowFromTemplateView-D9BTRma8.js} +3 -3
  71. package/dist/assets/{SigninView-_rmKLSpx.js → SigninView-D8iOgwLO.js} +3 -3
  72. package/dist/assets/{SignoutView-DYPGyBsZ.js → SignoutView-DXt0Sdaq.js} +1 -1
  73. package/dist/assets/{SignupView-BDSpYIB0.js → SignupView-D6pEOFGY.js} +3 -3
  74. package/dist/assets/{TableBase-Bz6zRvAL.js → TableBase-6tpR_KYY.js} +1 -1
  75. package/dist/assets/{Tags-Doq3WsWA.js → Tags-3OtmQZg1.js} +1 -1
  76. package/dist/assets/{TemplateDetails-BzDS-0Fd.js → TemplateDetails-Bvec_Syb.js} +2 -2
  77. package/dist/assets/{TemplateList-D_XBHKQu.js → TemplateList-B0_W0uvx.js} +1 -1
  78. package/dist/assets/{TemplatesCollectionView-BvnC5QZ9.js → TemplatesCollectionView-ChXD8R-e.js} +6 -6
  79. package/dist/assets/{TemplatesSearchView-CCsnhiD3.js → TemplatesSearchView-B_cMlFlv.js} +3 -3
  80. package/dist/assets/{TemplatesView-DbW9D41Q.js → TemplatesView-CziYbcJq.js} +1 -1
  81. package/dist/assets/{TemplatesWorkflowView-CVFtBBcd.js → TemplatesWorkflowView-Hb4zWBu5.js} +6 -6
  82. package/dist/assets/{TriggerPanel-CP3_UsCW.js → TriggerPanel-BsmQ9v2s.js} +4 -112
  83. package/dist/assets/{VariablesView-DIZkSQZ3.js → VariablesView-WOzl2JBK.js} +5 -5
  84. package/dist/assets/{WorkerView-DgXLi4d9.js → WorkerView-C0gI6gbP.js} +5 -5
  85. package/dist/assets/{WorkflowActivator-f0lJXePV.js → WorkflowActivator-B96_pQnb.js} +2 -2
  86. package/dist/assets/{WorkflowExecutionsInfoAccordion-BFSae6PE.js → WorkflowExecutionsInfoAccordion-DFCLkh95.js} +2 -2
  87. package/dist/assets/{WorkflowExecutionsLandingPage-Bb104kSO.js → WorkflowExecutionsLandingPage-B3aM2Zsk.js} +3 -3
  88. package/dist/assets/{WorkflowExecutionsPreview-Do5Rp-8m.js → WorkflowExecutionsPreview-D6oMyJtk.js} +9 -7
  89. package/dist/assets/{WorkflowExecutionsView-BSv7OYhx.js → WorkflowExecutionsView-BiKDjD1D.js} +8 -8
  90. package/dist/assets/{WorkflowHistory-CsEfwZK8.js → WorkflowHistory-CgxAK62K.js} +3 -3
  91. package/dist/assets/{WorkflowOnboardingView-BOvx7CPi.js → WorkflowOnboardingView-tKN781CD.js} +1 -1
  92. package/dist/assets/{WorkflowPreview-BQ_GLS2J.js → WorkflowPreview-CDgvgZcr.js} +3 -1
  93. package/dist/assets/{WorkflowsView-DYxrTukw.js → WorkflowsView-zxJZKrLk.js} +10 -10
  94. package/dist/assets/{chartjs.utils-D8ESC4_p.js → chartjs.utils-EXdTT15A.js} +2 -2
  95. package/dist/assets/{en-C2EOIYih.js → en-FjyeYndD.js} +5 -0
  96. package/dist/assets/{global-link-actions-BIVeUMGo.js → global-link-actions-NNtNk_7A.js} +1 -1
  97. package/dist/assets/{import-curl-CjhdjoGU.js → import-curl-DcVVML3m.js} +1 -1
  98. package/dist/assets/{index-B3p3789J.js → index-BEC9W_3K.js} +3051 -2886
  99. package/dist/assets/{index-COleXxZf.css → index-C6LoGNAx.css} +84 -217
  100. package/dist/assets/{index-DAODXvFs.js → index-CFNl0R-J.js} +1 -1
  101. package/dist/assets/{pickBy-CaeaG_7P.js → pickBy-BXP1QU1C.js} +1 -1
  102. package/dist/assets/{templateActions-Ct4VGqHx.js → templateActions-DWb-SuCl.js} +1 -1
  103. package/dist/assets/{useBeforeUnload-Yj83KQFp.js → useBeforeUnload-uH0nIAM3.js} +1 -1
  104. package/dist/assets/{useExecutionDebugging-wUQ9K2sh.js → useExecutionDebugging-bE32iQtx.js} +1 -1
  105. package/dist/assets/{useExecutionHelpers-i07QEXws.js → useExecutionHelpers-CXZC4OGe.js} +1 -1
  106. package/dist/assets/{useImportCurlCommand-Bs8VOC2z.js → useImportCurlCommand-Bxi0W0ub.js} +2 -2
  107. package/dist/assets/{useKeybindings-ul7syjnB.js → useKeybindings-D5pwrTFM.js} +72 -2
  108. package/dist/assets/{useProjectPages-DHCwu3nX.js → useProjectPages-BKkEKuqG.js} +1 -1
  109. package/dist/assets/{usePushConnection-Iyy-883l.js → usePushConnection-TyXi_EKD.js} +2 -2
  110. package/dist/assets/{useWorkflowActivate-DpHXxGAq.js → useWorkflowActivate-BRxfn_zV.js} +1 -1
  111. package/dist/index.html +2 -2
  112. package/eslint.config.mjs +1 -1
  113. package/package.json +1 -1
  114. package/dist/assets/CollectionParameter-DvyRKBx0.js +0 -4
  115. package/dist/assets/RunDataParsedAiContent-BILLIvVH.js +0 -148
@@ -1,4 +1,4 @@
1
- import { d as defineComponent, e as createBlock, g as openBlock, dJ as Transition, w as withCtx, aU as withDirectives, aV as vShow, j as createBaseVNode, n as normalizeClass, _ as _export_sfc, Q as createEventBus, bW as inject, r as ref, c5 as PiPWindowSymbol, cn as useActiveElement, dP as useDeviceSupport, x as computed, cZ as toValue, eD as useEventListener } from "./index-B3p3789J.js";
1
+ import { d as defineComponent, e as createBlock, g as openBlock, dK as Transition, w as withCtx, aS as withDirectives, aT as vShow, j as createBaseVNode, n as normalizeClass, _ as _export_sfc, Q as createEventBus, a2 as defineStore, a4 as useWorkflowsStore, v as useSettingsStore, x as computed, cd as shallowRef, co as useVueFlow, dz as calculateNodeSize, bU as inject, r as ref, c3 as PiPWindowSymbol, cl as useActiveElement, dQ as useDeviceSupport, cX as toValue, eU as useEventListener } from "./index-BEC9W_3K.js";
2
2
  const _sfc_main = /* @__PURE__ */ defineComponent({
3
3
  __name: "BlockUi",
4
4
  props: {
@@ -33,6 +33,75 @@ const cssModules = {
33
33
  };
34
34
  const N8nBlockUi = /* @__PURE__ */ _export_sfc(_sfc_main, [["__cssModules", cssModules], ["__scopeId", "data-v-76a59b58"]]);
35
35
  const canvasEventBus = createEventBus();
36
+ const useExperimentalNdvStore = defineStore("experimentalNdv", () => {
37
+ const workflowStore = useWorkflowsStore();
38
+ const settingsStore = useSettingsStore();
39
+ const isEnabled = computed(
40
+ () => !Number.isNaN(settingsStore.experimental__minZoomNodeSettingsInCanvas) && settingsStore.experimental__minZoomNodeSettingsInCanvas > 0
41
+ );
42
+ const maxCanvasZoom = computed(
43
+ () => isEnabled.value ? settingsStore.experimental__minZoomNodeSettingsInCanvas : 4
44
+ );
45
+ const collapsedNodes = shallowRef({});
46
+ function setNodeExpanded(nodeId, isExpanded) {
47
+ collapsedNodes.value = {
48
+ ...collapsedNodes.value,
49
+ [nodeId]: isExpanded === void 0 ? !collapsedNodes.value[nodeId] : !isExpanded
50
+ };
51
+ }
52
+ function collapseAllNodes() {
53
+ collapsedNodes.value = workflowStore.allNodes.reduce(
54
+ (acc, node) => {
55
+ acc[node.id] = true;
56
+ return acc;
57
+ },
58
+ {}
59
+ );
60
+ }
61
+ function expandAllNodes() {
62
+ collapsedNodes.value = {};
63
+ }
64
+ function isActive(canvasZoom) {
65
+ return isEnabled.value && canvasZoom === maxCanvasZoom.value;
66
+ }
67
+ function focusNode(nodeId) {
68
+ const nodeToFocus = workflowStore.getNodeById(nodeId);
69
+ if (!nodeToFocus) {
70
+ return;
71
+ }
72
+ const vueFlow = useVueFlow(workflowStore.workflow.id);
73
+ collapsedNodes.value = workflowStore.allNodes.reduce(
74
+ (acc, node) => {
75
+ acc[node.id] = node.id !== nodeId;
76
+ return acc;
77
+ },
78
+ {}
79
+ );
80
+ const workflow = workflowStore.getCurrentWorkflow();
81
+ const nodeSize = calculateNodeSize(
82
+ workflow.getChildNodes(nodeToFocus.name, "ALL_NON_MAIN").length > 0,
83
+ workflow.getParentNodes(nodeToFocus.name, "ALL_NON_MAIN").length > 0,
84
+ workflow.getParentNodes(nodeToFocus.name, "main").length,
85
+ workflow.getChildNodes(nodeToFocus.name, "main").length,
86
+ workflow.getParentNodes(nodeToFocus.name, "ALL_NON_MAIN").length
87
+ );
88
+ void vueFlow.setCenter(
89
+ nodeToFocus.position[0] + nodeSize.width * 1.5 / 2,
90
+ nodeToFocus.position[1] + 80,
91
+ { duration: 200, zoom: maxCanvasZoom.value }
92
+ );
93
+ }
94
+ return {
95
+ isEnabled,
96
+ maxCanvasZoom,
97
+ collapsedNodes: computed(() => collapsedNodes.value),
98
+ isActive,
99
+ setNodeExpanded,
100
+ expandAllNodes,
101
+ collapseAllNodes,
102
+ focusNode
103
+ };
104
+ });
36
105
  const useKeybindings = (keymap, options) => {
37
106
  const pipWindow = inject(PiPWindowSymbol, ref());
38
107
  const activeElement = useActiveElement({ window: pipWindow?.value });
@@ -113,6 +182,7 @@ const useKeybindings = (keymap, options) => {
113
182
  };
114
183
  export {
115
184
  N8nBlockUi as N,
185
+ useKeybindings as a,
116
186
  canvasEventBus as c,
117
- useKeybindings as u
187
+ useExperimentalNdvStore as u
118
188
  };
@@ -1,4 +1,4 @@
1
- import { a5 as useRoute, x as computed, V as VIEWS, ee as reactive } from "./index-B3p3789J.js";
1
+ import { a5 as useRoute, x as computed, V as VIEWS, ew as reactive } from "./index-BEC9W_3K.js";
2
2
  const useProjectPages = () => {
3
3
  const route = useRoute();
4
4
  const isOverviewSubPage = computed(
@@ -1,5 +1,5 @@
1
- import { fS as makeRestApiRequest, a4 as useWorkflowsStore, T as useUIStore, fT as clearPopupWindowState, ev as getEasyAiWorkflowJson, ay as useTelemetry, ce as parse, fU as hasTrimmedItem, v as useSettingsStore, aj as useWorkflowSaving, ak as useWorkflowHelpers, aC as WORKFLOW_SETTINGS_MODAL_KEY, a as useToast, fV as generateNodesGraph, c as useI18n, fW as getExecutionErrorToastConfiguration, bI as useNodeTypesStore, dZ as getTriggerNodeServiceName, bD as useNodeHelpers, fX as hasTrimmedData, bf as useExternalHooks, fY as codeNodeEditorEventBus, eo as EVALUATION_TRIGGER_NODE_TYPE, bE as useRunWorkflow, fZ as getExecutionErrorMessage, dg as useCredentialsStore, f_ as useAssistantStore, f$ as useSchemaPreviewStore, c_ as isCommunityPackageName, a2 as defineStore, ac as useRootStore, a3 as usePushConnectionStore, r as ref } from "./index-B3p3789J.js";
2
- import { g as globalLinkActionsEventBus } from "./global-link-actions-BIVeUMGo.js";
1
+ import { g7 as makeRestApiRequest, a4 as useWorkflowsStore, T as useUIStore, g8 as clearPopupWindowState, eM as getEasyAiWorkflowJson, ay as useTelemetry, cc as parse, g9 as hasTrimmedItem, v as useSettingsStore, aj as useWorkflowSaving, ak as useWorkflowHelpers, aC as WORKFLOW_SETTINGS_MODAL_KEY, a as useToast, ga as generateNodesGraph, c as useI18n, gb as getExecutionErrorToastConfiguration, bG as useNodeTypesStore, d_ as getTriggerNodeServiceName, bB as useNodeHelpers, gc as hasTrimmedData, bd as useExternalHooks, gd as codeNodeEditorEventBus, eF as EVALUATION_TRIGGER_NODE_TYPE, bC as useRunWorkflow, ge as getExecutionErrorMessage, de as useCredentialsStore, gf as useAssistantStore, gg as useSchemaPreviewStore, cY as isCommunityPackageName, a2 as defineStore, ac as useRootStore, a3 as usePushConnectionStore, r as ref } from "./index-BEC9W_3K.js";
2
+ import { g as globalLinkActionsEventBus } from "./global-link-actions-NNtNk_7A.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);
@@ -1,4 +1,4 @@
1
- import { r as ref, b as useRouter, ak as useWorkflowHelpers, aj as useWorkflowSaving, a4 as useWorkflowsStore, T as useUIStore, a as useToast, ah as useNpsSurveyStore, a6 as PLACEHOLDER_EMPTY_WORKFLOW_ID, ay as useTelemetry, bf as useExternalHooks, c as useI18n, b6 as useStorage, g6 as LOCAL_STORAGE_ACTIVATION_FLAG, g7 as WORKFLOW_ACTIVE_MODAL_KEY } from "./index-B3p3789J.js";
1
+ import { r as ref, b as useRouter, ak as useWorkflowHelpers, aj as useWorkflowSaving, a4 as useWorkflowsStore, T as useUIStore, a as useToast, ah as useNpsSurveyStore, a6 as PLACEHOLDER_EMPTY_WORKFLOW_ID, ay as useTelemetry, bd as useExternalHooks, c as useI18n, b4 as useStorage, gn as LOCAL_STORAGE_ACTIVATION_FLAG, go as WORKFLOW_ACTIVE_MODAL_KEY } from "./index-BEC9W_3K.js";
2
2
  function useWorkflowActivate() {
3
3
  const updatingWorkflowActivation = ref(false);
4
4
  const router = useRouter();
package/dist/index.html CHANGED
@@ -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-B3p3789J.js"></script>
20
- <link rel="stylesheet" crossorigin href="/{{BASE_PATH}}/assets/index-COleXxZf.css">
19
+ <script type="module" crossorigin src="/{{BASE_PATH}}/assets/index-BEC9W_3K.js"></script>
20
+ <link rel="stylesheet" crossorigin href="/{{BASE_PATH}}/assets/index-C6LoGNAx.css">
21
21
  </head>
22
22
  <body>
23
23
  <noscript>
package/eslint.config.mjs CHANGED
@@ -24,7 +24,7 @@ export default defineConfig(frontendConfig, {
24
24
  '@typescript-eslint/dot-notation': 'warn',
25
25
  '@stylistic/lines-between-class-members': 'warn',
26
26
  '@stylistic/member-delimiter-style': 'warn',
27
- '@typescript-eslint/naming-convention': 'warn',
27
+ '@typescript-eslint/naming-convention': 'off',
28
28
  '@typescript-eslint/no-empty-interface': 'warn',
29
29
  '@typescript-eslint/no-for-in-array': 'warn',
30
30
  '@typescript-eslint/no-loop-func': 'warn',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "n8n-editor-ui",
3
- "version": "1.102.2",
3
+ "version": "1.103.1",
4
4
  "description": "Workflow Editor UI for n8n",
5
5
  "main": "index.js",
6
6
  "type": "module",
@@ -1,4 +0,0 @@
1
- import { hE as _sfc_main } from "./index-B3p3789J.js";
2
- export {
3
- _sfc_main as default
4
- };
@@ -1,148 +0,0 @@
1
- import { d as defineComponent, c4 as useClipboard, a as useToast, h as createElementBlock, g as openBlock, n as normalizeClass, F as Fragment, y as renderList, e as createBlock, f as createCommentVNode, l as unref, t as toDisplayString, i as createVNode, a0 as _sfc_main$1, c as useI18n, _ as _export_sfc } from "./index-B3p3789J.js";
2
- import { V as VueMarkdown, H as HighlightJS } from "./RunData-CctCvWsu.js";
3
- import "./FileSaver.min-BemkeU_7.js";
4
- import "./useKeybindings-ul7syjnB.js";
5
- import "./useExecutionHelpers-i07QEXws.js";
6
- const _hoisted_1 = ["data-content-type"];
7
- const _hoisted_2 = ["textContent"];
8
- const _sfc_main = /* @__PURE__ */ defineComponent({
9
- __name: "RunDataParsedAiContent",
10
- props: {
11
- content: {},
12
- compact: { type: Boolean, default: false },
13
- renderType: {}
14
- },
15
- setup(__props) {
16
- const i18n = useI18n();
17
- const clipboard = useClipboard();
18
- const { showMessage } = useToast();
19
- function isJsonString(text) {
20
- try {
21
- JSON.parse(text);
22
- return true;
23
- } catch (e) {
24
- return false;
25
- }
26
- }
27
- const markdownOptions = {
28
- highlight(str, lang) {
29
- if (lang && HighlightJS.getLanguage(lang)) {
30
- try {
31
- return HighlightJS.highlight(str, { language: lang }).value;
32
- } catch {
33
- }
34
- }
35
- return "";
36
- }
37
- };
38
- function isMarkdown(jsonMarkdown) {
39
- if (typeof jsonMarkdown !== "string") return false;
40
- const markdownPatterns = [
41
- /^# .+/gm,
42
- // headers
43
- /\*{1,2}.+\*{1,2}/g,
44
- // emphasis and strong
45
- /\[.+\]\(.+\)/g,
46
- // links
47
- /```[\s\S]+```/g
48
- // code blocks
49
- ];
50
- return markdownPatterns.some((pattern) => pattern.test(jsonMarkdown));
51
- }
52
- function formatToJsonMarkdown(data) {
53
- return "```json\n" + data + "\n```";
54
- }
55
- function jsonToMarkdown(data) {
56
- if (isMarkdown(data)) return data;
57
- if (Array.isArray(data) && data.length && typeof data[0] !== "number") {
58
- const markdownArray = data.map((item) => jsonToMarkdown(item));
59
- return markdownArray.join("\n\n").trim();
60
- }
61
- if (typeof data === "string") {
62
- if (isJsonString(data)) {
63
- return formatToJsonMarkdown(data);
64
- }
65
- return data;
66
- }
67
- return formatToJsonMarkdown(JSON.stringify(data, null, 2));
68
- }
69
- function onCopyToClipboard(object) {
70
- try {
71
- void clipboard.copy(JSON.stringify(object, void 0, 2));
72
- showMessage({
73
- title: i18n.baseText("generic.copiedToClipboard"),
74
- type: "success"
75
- });
76
- } catch {
77
- }
78
- }
79
- return (_ctx, _cache) => {
80
- return openBlock(), createElementBlock("div", {
81
- class: normalizeClass([_ctx.$style.component, _ctx.compact ? _ctx.$style.compact : ""])
82
- }, [
83
- (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.content, ({ parsedContent, raw }, index) => {
84
- return openBlock(), createElementBlock("div", {
85
- key: index,
86
- class: normalizeClass(_ctx.$style.contentText),
87
- "data-content-type": parsedContent?.type
88
- }, [
89
- parsedContent && _ctx.renderType === "rendered" ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
90
- parsedContent.type === "json" ? (openBlock(), createBlock(unref(VueMarkdown), {
91
- key: 0,
92
- source: jsonToMarkdown(parsedContent.data),
93
- class: normalizeClass(_ctx.$style.markdown),
94
- options: markdownOptions
95
- }, null, 8, ["source", "class"])) : parsedContent.type === "markdown" ? (openBlock(), createBlock(unref(VueMarkdown), {
96
- key: 1,
97
- source: parsedContent.data,
98
- class: normalizeClass(_ctx.$style.markdown),
99
- options: markdownOptions
100
- }, null, 8, ["source", "class"])) : parsedContent.type === "text" ? (openBlock(), createElementBlock("p", {
101
- key: 2,
102
- class: normalizeClass(_ctx.$style.runText),
103
- textContent: toDisplayString(parsedContent.data)
104
- }, null, 10, _hoisted_2)) : createCommentVNode("", true)
105
- ], 64)) : (openBlock(), createElementBlock("div", {
106
- key: 1,
107
- class: normalizeClass(_ctx.$style.rawContent)
108
- }, [
109
- createVNode(unref(_sfc_main$1), {
110
- size: "small",
111
- class: normalizeClass(_ctx.$style.copyToClipboard),
112
- type: "secondary",
113
- title: unref(i18n).baseText("nodeErrorView.copyToClipboard"),
114
- icon: "files",
115
- onClick: ($event) => onCopyToClipboard(raw)
116
- }, null, 8, ["class", "title", "onClick"]),
117
- createVNode(unref(VueMarkdown), {
118
- source: jsonToMarkdown(raw),
119
- class: normalizeClass(_ctx.$style.markdown)
120
- }, null, 8, ["source", "class"])
121
- ], 2))
122
- ], 10, _hoisted_1);
123
- }), 128))
124
- ], 2);
125
- };
126
- }
127
- });
128
- const runText = "_runText_1ucj0_123";
129
- const markdown = "_markdown_1ucj0_128";
130
- const compact = "_compact_1ucj0_151";
131
- const copyToClipboard = "_copyToClipboard_1ucj0_159";
132
- const rawContent = "_rawContent_1ucj0_169";
133
- const contentText = "_contentText_1ucj0_173";
134
- const style0 = {
135
- runText,
136
- markdown,
137
- compact,
138
- copyToClipboard,
139
- rawContent,
140
- contentText
141
- };
142
- const cssModules = {
143
- "$style": style0
144
- };
145
- const RunDataAi = /* @__PURE__ */ _export_sfc(_sfc_main, [["__cssModules", cssModules]]);
146
- export {
147
- RunDataAi as default
148
- };