n8n-editor-ui 1.92.0 → 1.94.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.
- package/dist/assets/{AnimatedSpinner-CtKKeDrz.js → AnimatedSpinner-CY5xYI5m.js} +1 -1
- package/dist/assets/{AnnotationTagsDropdown.ee.vue_vue_type_script_setup_true_lang-DR6h_xsK.js → AnnotationTagsDropdown.ee.vue_vue_type_script_setup_true_lang-BOrzkwPH.js} +1 -1
- package/dist/assets/{AuthView-mKkzBRxh.js → AuthView-BTzGYAnY.js} +2 -2
- package/dist/assets/{CanvasChatSwitch-Bu2VD2kp.js → CanvasChatSwitch-CwpjFCL0.js} +17 -18
- package/dist/assets/{ChangePasswordView-D5UI1v-J.js → ChangePasswordView-BKR2UFVI.js} +3 -3
- package/dist/assets/CollectionParameter-BJtiV9En.js +4 -0
- package/dist/assets/{CredentialsView-B78eNJO5.js → CredentialsView-DVgxfnNi.js} +26 -11
- package/dist/assets/{DemoFooter-DP26HpCu.js → DemoFooter-C1T3Q0NX.js} +7 -8
- package/dist/assets/{ErrorView-C3fvEdCg.js → ErrorView-Cf2Yb8Ea.js} +1 -1
- package/dist/assets/{ExecutionsTime.vue_vue_type_script_setup_true_lang-BBpwYdHY.js → ExecutionsTime.vue_vue_type_script_setup_true_lang-DUu0UMcW.js} +2 -2
- package/dist/assets/{ExecutionsView-BvlDZwIs.js → ExecutionsView-DjNkfnDh.js} +20 -18
- package/dist/assets/{FileSaver.min-BzAtcQXX.js → FileSaver.min-C1p9Eies.js} +1 -1
- package/dist/assets/{FixedCollectionParameter-CS5zXMAh.js → FixedCollectionParameter-DN_uJhpe.js} +1 -1
- package/dist/assets/{ForgotMyPasswordView-CVQ7pcIG.js → ForgotMyPasswordView-BMQBDIrq.js} +3 -3
- package/dist/assets/{InsightsChartAverageRuntime-Boh0SMb3.js → InsightsChartAverageRuntime-JzBkV6Rc.js} +4 -4
- package/dist/assets/{InsightsChartFailed-IZ-KYOU9.js → InsightsChartFailed-DMD3c7zM.js} +4 -4
- package/dist/assets/{InsightsChartFailureRate-2fWw3p0L.js → InsightsChartFailureRate-D_qeZo4f.js} +4 -4
- package/dist/assets/{InsightsChartTimeSaved-B2pLVys1.js → InsightsChartTimeSaved-Cw2T-Wvp.js} +4 -4
- package/dist/assets/{InsightsChartTotal-2QD4wPLR.js → InsightsChartTotal-DlF47gob.js} +4 -4
- package/dist/assets/{InsightsDashboard-Bx4vx9gz.css → InsightsDashboard-BSrakbzr.css} +42 -8
- package/dist/assets/{InsightsDashboard-CbiFbJ8w.js → InsightsDashboard-CxQ9H296.js} +40 -41
- package/dist/assets/{InsightsPaywall-5d-cSdiS.js → InsightsPaywall-hRkAfeHz.js} +1 -1
- package/dist/assets/InsightsSummary-BcXd-3nU.js +209 -0
- package/dist/assets/{InsightsSummary-CdlaUpAt.css → InsightsSummary-DzGQpM5h.css} +27 -24
- package/dist/assets/{InsightsTableWorkflows-Blv_GPUj.css → InsightsTableWorkflows-DfTZQkWL.css} +3 -4
- package/dist/assets/{InsightsTableWorkflows-_eTCUNCX.js → InsightsTableWorkflows-ybloXdDn.js} +5 -6
- package/dist/assets/{Logo-Dl2xVRIu.js → Logo-BGe7-2Vd.js} +1 -1
- package/dist/assets/{LogsPanel-JnYirDqa.js → LogsPanel-DtTp6kY0.js} +334 -338
- package/dist/assets/{MainHeader-CEPLiR-5.css → MainHeader-Y95RcfHb.css} +24 -17
- package/dist/assets/{MainHeader-Bk29pgmL.js → MainHeader-h2DV-VuD.js} +148 -82
- package/dist/assets/{MainSidebar-BM5ku_wM.js → MainSidebar-AAHHRXFA.js} +28 -11
- package/dist/assets/{MainSidebar-zZpP3qQ0.css → MainSidebar-D1_1YFQZ.css} +2 -2
- package/dist/assets/{NodeCreation-BEjdAYc_.js → NodeCreation-nHiG-Lhi.js} +9 -5
- package/dist/assets/{NodeCreator-D9fmPdS2.css → NodeCreator-D18StsVZ.css} +1021 -174
- package/dist/assets/{NodeCreator-cEUgbAI9.js → NodeCreator-weAzsmlU.js} +862 -418
- package/dist/assets/{NodeDetailsView-D4O9dKTA.js → NodeDetailsView-BsXbcyfb.js} +22 -15
- package/dist/assets/{NodeDetailsView-DsFLtbxi.css → NodeDetailsView-DpO8nTmN.css} +16 -16
- package/dist/assets/{NodeView-DDSOUm8E.js → NodeView-BY1O3wWl.js} +104 -50
- package/dist/assets/{ProjectCardBadge-BNn2hiMe.js → ProjectCardBadge-3xpk5Z4e.js} +38 -2
- package/dist/assets/{ProjectHeader-CaEZ2OPj.js → ProjectHeader-CpoOisjf.js} +106 -64
- package/dist/assets/{ProjectSettings-otA8E-yW.js → ProjectSettings-B__3XaPY.js} +14 -3
- package/dist/assets/{PushConnectionTracker.vue_vue_type_script_setup_true_lang-C3JbZMCk.js → PushConnectionTracker.vue_vue_type_script_setup_true_lang-DaoPdG_5.js} +1 -1
- package/dist/assets/{ResourcesListLayout-1d9Ic6VX.js → ResourcesListLayout-DAxou314.js} +156 -53
- package/dist/assets/{ResourcesListLayout-CtGME7aU.css → ResourcesListLayout-DuNjbsMn.css} +8 -8
- package/dist/assets/{RunData-BjlZgIyx.css → RunData-CE5FsU6k.css} +2 -2
- package/dist/assets/{RunData-Bx47sNQp.js → RunData-fnd-jejc.js} +257 -99
- package/dist/assets/{RunDataAi-DOac7nwD.js → RunDataAi-Ck3VGKP_.js} +3 -4
- package/dist/assets/{RunDataJson-Pev6yNEV.js → RunDataJson-B80Z4URL.js} +7 -7
- package/dist/assets/{RunDataJsonActions-Co4xgmVq.js → RunDataJsonActions-CdZi1Qul.js} +1 -1
- package/dist/assets/{RunDataParsedAiContent-D6MNLmT3.js → RunDataParsedAiContent-BczxQ63H.js} +5 -5
- package/dist/assets/{RunDataSearch-C8orcAlP.js → RunDataSearch-C4KmCz4c.js} +1 -1
- package/dist/assets/{RunDataTable-oi_l8dhA.js → RunDataTable-CsLCZIWp.js} +3 -3
- package/dist/assets/{SamlOnboarding-CT5J6dx0.js → SamlOnboarding-DkhjCrPa.js} +3 -3
- package/dist/assets/{SettingsApiView-CupjcI9v.js → SettingsApiView-Ci2-rEpm.js} +1 -1
- package/dist/assets/{SettingsCommunityNodesView-B5K2VLyJ.js → SettingsCommunityNodesView-_UOppuqS.js} +24 -11
- package/dist/assets/{SettingsExternalSecrets-BidJCf_t.js → SettingsExternalSecrets-DHIkKr53.js} +1 -1
- package/dist/assets/{SettingsLdapView-Cva6akhW.js → SettingsLdapView-B8ezgdqP.js} +1 -1
- package/dist/assets/{SettingsLogStreamingView-Cy-rAKUO.js → SettingsLogStreamingView-YP6Xy7Fe.js} +1 -1
- package/dist/assets/{SettingsPersonalView-ZJ1Syok2.js → SettingsPersonalView-BmbFyWPb.js} +1 -1
- package/dist/assets/{SettingsSourceControl-CMtqqlkO.js → SettingsSourceControl-DwaOdDke.js} +1 -1
- package/dist/assets/{SettingsSso-Bi3OpykL.js → SettingsSso-DOC-P2wt.js} +14 -1
- package/dist/assets/{SettingsUsageAndPlan-C5TbwZhP.js → SettingsUsageAndPlan-DVOLlEkG.js} +1 -1
- package/dist/assets/{SettingsUsersView-BHuP5k0A.js → SettingsUsersView-CN_KLeIm.js} +1 -1
- package/dist/assets/{SettingsView-DPIIqaKN.js → SettingsView-DiAhLyco.js} +1 -1
- package/dist/assets/{SetupView-C4V9j6sh.js → SetupView-OE_yCNOU.js} +3 -3
- package/dist/assets/{SetupWorkflowCredentialsButton-BZ9ILQUp.js → SetupWorkflowCredentialsButton-Dx1IkZgW.js} +1 -1
- package/dist/assets/{SetupWorkflowFromTemplateView-3uV3zSU2.js → SetupWorkflowFromTemplateView-lQXKgIuL.js} +3 -3
- package/dist/assets/{SigninView-DWZHdCjG.js → SigninView-BWSrzbF7.js} +3 -3
- package/dist/assets/{SignoutView-DbduXAir.js → SignoutView-DxGgFxt2.js} +1 -1
- package/dist/assets/{SignupView-DWq6VACk.js → SignupView-Dtu5bMqF.js} +3 -3
- package/dist/assets/{TemplateDetails-BckqE6GK.js → TemplateDetails-CQ7TYqsP.js} +1 -1
- package/dist/assets/{TemplateList-Bw0JeBMP.js → TemplateList-Cxmv-0p-.js} +1 -1
- package/dist/assets/{TemplatesCollectionView-CAKT-mpV.js → TemplatesCollectionView-xvV6FXib.js} +5 -5
- package/dist/assets/{TemplatesSearchView-I2a5us58.js → TemplatesSearchView-CsECyZ52.js} +3 -3
- package/dist/assets/{TemplatesView-6EwGFFJK.js → TemplatesView-DrEKpZTU.js} +1 -1
- package/dist/assets/{TemplatesWorkflowView-C8xYMhwu.js → TemplatesWorkflowView-iSAL_yol.js} +5 -5
- package/dist/assets/{TestDefinitionEditView-CNd3Cuzq.js → TestDefinitionEditView-C3ohfu_r.js} +6 -7
- package/dist/assets/{TestDefinitionListView-BwTWIaAM.js → TestDefinitionListView-Dwto0jxH.js} +1 -1
- package/dist/assets/{TestDefinitionNewView-BQas0_G1.js → TestDefinitionNewView-9xVUm2ZJ.js} +2 -2
- package/dist/assets/{TestDefinitionRootView-D971MFye.js → TestDefinitionRootView-DLurQ4xl.js} +1 -1
- package/dist/assets/{VariablesView-DcBBuFxh.js → VariablesView-Cg2WSt_e.js} +4 -3
- package/dist/assets/{WorkerView-DSgBNIeb.js → WorkerView-BG-Dl0Ej.js} +6 -6
- package/dist/assets/{WorkflowActivator-DAyH7N29.css → WorkflowActivator-DrMTmuTZ.css} +2 -2
- package/dist/assets/{WorkflowActivator-CPCbgb_n.js → WorkflowActivator-e7wvW1kJ.js} +17 -11
- package/dist/assets/{WorkflowExecutionsInfoAccordion-Bc6vzAZu.js → WorkflowExecutionsInfoAccordion-CijtfO0l.js} +1 -1
- package/dist/assets/{WorkflowExecutionsLandingPage-BPPS4V9i.js → WorkflowExecutionsLandingPage-Do4y1yOx.js} +2 -2
- package/dist/assets/{WorkflowExecutionsPreview-Bbb5MB8Z.js → WorkflowExecutionsPreview-Bqo_3PXl.js} +6 -6
- package/dist/assets/{WorkflowExecutionsView-Pz-7iHJY.js → WorkflowExecutionsView-C1gS45nc.js} +10 -10
- package/dist/assets/{WorkflowHistory-Czo9IuI6.js → WorkflowHistory-CypQw7rC.js} +37 -19
- package/dist/assets/{WorkflowOnboardingView-B8DdkfJ5.js → WorkflowOnboardingView-DoKXpaNj.js} +1 -1
- package/dist/assets/{WorkflowPreview-eVlO1itk.js → WorkflowPreview-Bxs5XzBX.js} +1 -1
- package/dist/assets/{WorkflowsView-Cr2D0vym.js → WorkflowsView-BlvgD3xI.js} +299 -157
- package/dist/assets/{WorkflowsView-B2_HJCJ5.css → WorkflowsView-CQvTAWQ0.css} +24 -13
- package/dist/assets/{chartjs.utils-Dk1WO3Mr.js → chartjs.utils-CuWcgqCr.js} +2 -2
- package/dist/assets/{dateFormatter-C8N5khiG.js → dateFormatter-LbucaaRt.js} +1 -1
- package/dist/assets/{easyAiWorkflowUtils-CLqHnasO.js → easyAiWorkflowUtils-_kvYb5hw.js} +1 -1
- package/dist/assets/{global-link-actions-BvoZh8u9.js → global-link-actions-DG0SjhQE.js} +1 -1
- package/dist/assets/{import-curl-BpxkGYMX.js → import-curl-DQ6uPzZ1.js} +1 -1
- package/dist/assets/{index-DCpy4nCU.css → index-BA8d2DN9.css} +311 -515
- package/dist/assets/{index-B6eunbxp.js → index-hdsPF3tl.js} +61611 -57550
- package/dist/assets/{index-Br8T1Gn6.js → index-vIybYvt3.js} +1 -1
- package/dist/assets/{pickBy-8Urz9lDY.js → pickBy-DmKUpB7M.js} +1 -1
- package/dist/assets/{polyfills-CLZ4X0Ad.js → polyfills-J2x06Gdp.js} +157 -224
- package/dist/assets/{templateActions-DzjysjbQ.js → templateActions-DxoxchKp.js} +1 -1
- package/dist/assets/{typescript.worker-BsxN2afA.js → typescript.worker-B1loTpxy.js} +1 -1
- package/dist/assets/{useBeforeUnload-DxrN8vOO.js → useBeforeUnload-B7JAQiE8.js} +1 -1
- package/dist/assets/{useCanvasMapping-cuXLM-h-.css → useCanvasMapping-CFf4cwnq.css} +6 -5
- package/dist/assets/{useCanvasMapping-C2BQB9QB.js → useCanvasMapping-CvcOHj5p.js} +94 -50
- package/dist/assets/{useClearExecutionButtonVisible-BV-jMf2m.js → useClearExecutionButtonVisible-DFNEJves.js} +1 -2
- package/dist/assets/{useExecutionDebugging-0pPCimcw.js → useExecutionDebugging-DsRIfE0y.js} +1 -1
- package/dist/assets/{useExecutionHelpers-DIvhViMz.js → useExecutionHelpers-CEOL8_vt.js} +3 -3
- package/dist/assets/{useImportCurlCommand-BWf4R83s.js → useImportCurlCommand-DdIN4YaF.js} +2 -2
- package/dist/assets/useProjectPages-OGc-GAxb.js +17 -0
- package/dist/assets/{usePushConnection-Pobjq0U9.js → usePushConnection-DNGIaS0A.js} +29 -127
- package/dist/assets/{useTestDefinitionForm-BA3IS_2B.js → useTestDefinitionForm-Bi6EgFVm.js} +1 -1
- package/dist/assets/{useWorkflowActivate-DFqvrpj6.js → useWorkflowActivate-CJ1hLmv2.js} +1 -1
- package/dist/assets/{useWorkflowSaving-BACesUoL.js → useWorkflowSaving-BuokdhTC.js} +2 -2
- package/dist/index.html +3 -3
- package/package.json +1 -1
- package/tsconfig.json +1 -0
- package/vite.config.mts +4 -0
- package/dist/assets/CollectionParameter-BeCTpZ-q.js +0 -4
- package/dist/assets/InsightsSummary-gldDQ9rg.js +0 -207
- package/dist/assets/useCanvasOperations-DaP5jKbH.js +0 -3183
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import { P as ProjectCardBadge } from "./ProjectCardBadge-
|
|
2
|
-
import { d as defineComponent, R as useRoute, b as useRouter, a2 as useFoldersStore, r as ref, q as computed, c as useI18n, ab as ProjectTypes, V as VIEWS, h as resolveComponent, i as createElementBlock, g as openBlock, j as createVNode, w as withCtx, n as normalizeClass, k as createBaseVNode, f as createCommentVNode, e as createBlock, m as unref,
|
|
3
|
-
import { W as WorkflowActivator, _ as __unplugin_components_0, I as InlineTextEdit } from "./WorkflowActivator-
|
|
4
|
-
import { R as ResourcesListLayout } from "./ResourcesListLayout-
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import "./
|
|
1
|
+
import { P as ProjectCardBadge, _ as _sfc_main$4 } from "./ProjectCardBadge-3xpk5Z4e.js";
|
|
2
|
+
import { d as defineComponent, R as useRoute, b as useRouter, a2 as useFoldersStore, r as ref, q as computed, c as useI18n, ab as ProjectTypes, V as VIEWS, h as resolveComponent, i as createElementBlock, g as openBlock, j as createVNode, w as withCtx, n as normalizeClass, k as createBaseVNode, f as createCommentVNode, e as createBlock, m as unref, fW as ResourceType, b3 as withModifiers, l as createTextVNode, t as toDisplayString, db as _sfc_main$3, _ as _export_sfc, a as useToast, p as useSettingsStore, H as useUIStore, u as useUsersStore, Q as useWorkflowsStore, a1 as useProjectsStore, a7 as getResourcePermissions, eC as dateFormat, aA as withDirectives, aB as vShow, af as WORKFLOW_SHARE_MODAL_KEY, ag as useTelemetry, an as DUPLICATE_MODAL_KEY, ai as useMessage, aj as MODAL_CONFIRM, fX as PROJECT_MOVE_RESOURCE_MODAL, fY as FOLDER_NAME_ILLEGAL_CHARACTERS_REGEX, fZ as ILLEGAL_FOLDER_CHARACTERS, f_ as FOLDER_NAME_ONLY_DOTS_REGEX, f$ as FOLDER_NAME_MAX_LENGTH, a0 as useSourceControlStore, au as usePostHog, E as useTagsStore, dw as useUsageStore, g0 as useInsightsStore, a4 as useDocumentTitle, G as useDebounce, aa as EnterpriseEditionFeature, g1 as EASY_AI_WORKFLOW_EXPERIMENT, X as watch, o as onMounted, C as createEventBus, y as onBeforeUnmount, A as debounce, g2 as PROJECT_ROOT, aV as createSlots, dt as N8nInputLabel, ad as _sfc_main$5, en as N8nSelect, F as Fragment, D as renderList, em as _sfc_main$6, dg as N8nHeading, bf as N8nText, g3 as N8nCard, bF as N8nIcon, g4 as Draggable, g5 as DEFAULT_WORKFLOW_PAGE_SIZE, dz as COMMUNITY_PLUS_ENROLLMENT_MODAL } from "./index-hdsPF3tl.js";
|
|
3
|
+
import { W as WorkflowActivator, _ as __unplugin_components_0, I as InlineTextEdit } from "./WorkflowActivator-e7wvW1kJ.js";
|
|
4
|
+
import { R as ResourcesListLayout } from "./ResourcesListLayout-DAxou314.js";
|
|
5
|
+
import { P as ProjectHeader } from "./ProjectHeader-CpoOisjf.js";
|
|
6
|
+
import { u as useProjectPages } from "./useProjectPages-OGc-GAxb.js";
|
|
7
|
+
import { I as InsightsSummary } from "./InsightsSummary-BcXd-3nU.js";
|
|
8
|
+
import { g as getEasyAiWorkflowJson } from "./easyAiWorkflowUtils-_kvYb5hw.js";
|
|
9
|
+
import "./useWorkflowActivate-CJ1hLmv2.js";
|
|
9
10
|
const FOLDER_LIST_ITEM_ACTIONS = {
|
|
10
11
|
OPEN: "open",
|
|
11
12
|
CREATE: "create",
|
|
@@ -309,13 +310,15 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
309
310
|
workflowListEventBus: { default: void 0 },
|
|
310
311
|
showOwnershipBadge: { type: Boolean, default: false }
|
|
311
312
|
},
|
|
312
|
-
emits: ["expand:tags", "click:tag", "workflow:deleted", "workflow:active-toggle", "action:move-to-folder"],
|
|
313
|
+
emits: ["expand:tags", "click:tag", "workflow:deleted", "workflow:archived", "workflow:unarchived", "workflow:active-toggle", "action:move-to-folder"],
|
|
313
314
|
setup(__props, { emit: __emit }) {
|
|
314
315
|
const WORKFLOW_LIST_ITEM_ACTIONS = {
|
|
315
316
|
OPEN: "open",
|
|
316
317
|
SHARE: "share",
|
|
317
318
|
DUPLICATE: "duplicate",
|
|
318
319
|
DELETE: "delete",
|
|
320
|
+
ARCHIVE: "archive",
|
|
321
|
+
UNARCHIVE: "unarchive",
|
|
319
322
|
MOVE: "move",
|
|
320
323
|
MOVE_TO_FOLDER: "moveToFolder"
|
|
321
324
|
};
|
|
@@ -381,7 +384,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
381
384
|
value: WORKFLOW_LIST_ITEM_ACTIONS.SHARE
|
|
382
385
|
}
|
|
383
386
|
];
|
|
384
|
-
if (workflowPermissions.value.create && !props.readOnly) {
|
|
387
|
+
if (workflowPermissions.value.create && !props.readOnly && !props.data.isArchived) {
|
|
385
388
|
items.push({
|
|
386
389
|
label: locale.baseText("workflows.item.duplicate"),
|
|
387
390
|
value: WORKFLOW_LIST_ITEM_ACTIONS.DUPLICATE
|
|
@@ -400,10 +403,21 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
400
403
|
});
|
|
401
404
|
}
|
|
402
405
|
if (workflowPermissions.value.delete && !props.readOnly) {
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
406
|
+
if (!props.data.isArchived) {
|
|
407
|
+
items.push({
|
|
408
|
+
label: locale.baseText("workflows.item.archive"),
|
|
409
|
+
value: WORKFLOW_LIST_ITEM_ACTIONS.ARCHIVE
|
|
410
|
+
});
|
|
411
|
+
} else {
|
|
412
|
+
items.push({
|
|
413
|
+
label: locale.baseText("workflows.item.delete"),
|
|
414
|
+
value: WORKFLOW_LIST_ITEM_ACTIONS.DELETE
|
|
415
|
+
});
|
|
416
|
+
items.push({
|
|
417
|
+
label: locale.baseText("workflows.item.unarchive"),
|
|
418
|
+
value: WORKFLOW_LIST_ITEM_ACTIONS.UNARCHIVE
|
|
419
|
+
});
|
|
420
|
+
}
|
|
407
421
|
}
|
|
408
422
|
return items;
|
|
409
423
|
});
|
|
@@ -471,6 +485,12 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
471
485
|
case WORKFLOW_LIST_ITEM_ACTIONS.DELETE:
|
|
472
486
|
await deleteWorkflow();
|
|
473
487
|
break;
|
|
488
|
+
case WORKFLOW_LIST_ITEM_ACTIONS.ARCHIVE:
|
|
489
|
+
await archiveWorkflow();
|
|
490
|
+
break;
|
|
491
|
+
case WORKFLOW_LIST_ITEM_ACTIONS.UNARCHIVE:
|
|
492
|
+
await unarchiveWorkflow();
|
|
493
|
+
break;
|
|
474
494
|
case WORKFLOW_LIST_ITEM_ACTIONS.MOVE:
|
|
475
495
|
moveResource();
|
|
476
496
|
break;
|
|
@@ -509,11 +529,63 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
509
529
|
return;
|
|
510
530
|
}
|
|
511
531
|
toast.showMessage({
|
|
512
|
-
title: locale.baseText("mainSidebar.showMessage.handleSelect1.title"
|
|
532
|
+
title: locale.baseText("mainSidebar.showMessage.handleSelect1.title", {
|
|
533
|
+
interpolate: { workflowName: props.data.name }
|
|
534
|
+
}),
|
|
513
535
|
type: "success"
|
|
514
536
|
});
|
|
515
537
|
emit("workflow:deleted");
|
|
516
538
|
}
|
|
539
|
+
async function archiveWorkflow() {
|
|
540
|
+
if (props.data.active) {
|
|
541
|
+
const archiveConfirmed = await message.confirm(
|
|
542
|
+
locale.baseText("mainSidebar.confirmMessage.workflowArchive.message", {
|
|
543
|
+
interpolate: { workflowName: props.data.name }
|
|
544
|
+
}),
|
|
545
|
+
locale.baseText("mainSidebar.confirmMessage.workflowArchive.headline"),
|
|
546
|
+
{
|
|
547
|
+
type: "warning",
|
|
548
|
+
confirmButtonText: locale.baseText(
|
|
549
|
+
"mainSidebar.confirmMessage.workflowArchive.confirmButtonText"
|
|
550
|
+
),
|
|
551
|
+
cancelButtonText: locale.baseText(
|
|
552
|
+
"mainSidebar.confirmMessage.workflowArchive.cancelButtonText"
|
|
553
|
+
)
|
|
554
|
+
}
|
|
555
|
+
);
|
|
556
|
+
if (archiveConfirmed !== MODAL_CONFIRM) {
|
|
557
|
+
return;
|
|
558
|
+
}
|
|
559
|
+
}
|
|
560
|
+
try {
|
|
561
|
+
await workflowsStore.archiveWorkflow(props.data.id);
|
|
562
|
+
} catch (error) {
|
|
563
|
+
toast.showError(error, locale.baseText("generic.archiveWorkflowError"));
|
|
564
|
+
return;
|
|
565
|
+
}
|
|
566
|
+
toast.showMessage({
|
|
567
|
+
title: locale.baseText("mainSidebar.showMessage.handleArchive.title", {
|
|
568
|
+
interpolate: { workflowName: props.data.name }
|
|
569
|
+
}),
|
|
570
|
+
type: "success"
|
|
571
|
+
});
|
|
572
|
+
emit("workflow:archived");
|
|
573
|
+
}
|
|
574
|
+
async function unarchiveWorkflow() {
|
|
575
|
+
try {
|
|
576
|
+
await workflowsStore.unarchiveWorkflow(props.data.id);
|
|
577
|
+
} catch (error) {
|
|
578
|
+
toast.showError(error, locale.baseText("generic.unarchiveWorkflowError"));
|
|
579
|
+
return;
|
|
580
|
+
}
|
|
581
|
+
toast.showMessage({
|
|
582
|
+
title: locale.baseText("mainSidebar.showMessage.handleUnarchive.title", {
|
|
583
|
+
interpolate: { workflowName: props.data.name }
|
|
584
|
+
}),
|
|
585
|
+
type: "success"
|
|
586
|
+
});
|
|
587
|
+
emit("workflow:unarchived");
|
|
588
|
+
}
|
|
517
589
|
const fetchHiddenBreadCrumbsItems = async () => {
|
|
518
590
|
if (!props.data.homeProject?.id || !projectName.value || !props.data.parentFolder) {
|
|
519
591
|
hiddenBreadcrumbsItemsAsync.value = Promise.resolve([]);
|
|
@@ -557,7 +629,10 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
557
629
|
const _component_n8n_action_toggle = resolveComponent("n8n-action-toggle");
|
|
558
630
|
const _component_n8n_card = resolveComponent("n8n-card");
|
|
559
631
|
return openBlock(), createBlock(_component_n8n_card, {
|
|
560
|
-
class: normalizeClass(
|
|
632
|
+
class: normalizeClass({
|
|
633
|
+
[_ctx.$style.cardLink]: true,
|
|
634
|
+
[_ctx.$style.cardArchived]: _ctx.data.isArchived
|
|
635
|
+
}),
|
|
561
636
|
"data-test-id": "workflow-card",
|
|
562
637
|
onClick
|
|
563
638
|
}, {
|
|
@@ -565,7 +640,10 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
565
640
|
createVNode(_component_n8n_text, {
|
|
566
641
|
tag: "h2",
|
|
567
642
|
bold: "",
|
|
568
|
-
class: normalizeClass(
|
|
643
|
+
class: normalizeClass({
|
|
644
|
+
[_ctx.$style.cardHeading]: true,
|
|
645
|
+
[_ctx.$style.cardHeadingArchived]: _ctx.data.isArchived
|
|
646
|
+
}),
|
|
569
647
|
"data-test-id": "workflow-card-name"
|
|
570
648
|
}, {
|
|
571
649
|
default: withCtx(() => [
|
|
@@ -623,14 +701,28 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
623
701
|
]),
|
|
624
702
|
_: 1
|
|
625
703
|
}, 8, ["class", "resource", "resource-type", "resource-type-label", "personal-project"])) : createCommentVNode("", true),
|
|
626
|
-
|
|
704
|
+
_ctx.data.isArchived ? (openBlock(), createBlock(_component_n8n_text, {
|
|
705
|
+
key: 1,
|
|
706
|
+
color: "text-light",
|
|
707
|
+
size: "small",
|
|
708
|
+
bold: "",
|
|
709
|
+
class: "ml-s mr-s",
|
|
710
|
+
"data-test-id": "workflow-card-archived"
|
|
711
|
+
}, {
|
|
712
|
+
default: withCtx(() => [
|
|
713
|
+
createTextVNode(toDisplayString(unref(locale).baseText("workflows.item.archived")), 1)
|
|
714
|
+
]),
|
|
715
|
+
_: 1
|
|
716
|
+
})) : (openBlock(), createBlock(WorkflowActivator, {
|
|
717
|
+
key: 2,
|
|
627
718
|
class: "mr-s",
|
|
719
|
+
"is-archived": _ctx.data.isArchived,
|
|
628
720
|
"workflow-active": _ctx.data.active,
|
|
629
721
|
"workflow-id": _ctx.data.id,
|
|
630
722
|
"workflow-permissions": workflowPermissions.value,
|
|
631
723
|
"data-test-id": "workflow-card-activator",
|
|
632
724
|
"onUpdate:workflowActive": emitWorkflowActiveToggle
|
|
633
|
-
}, null, 8, ["workflow-active", "workflow-id", "workflow-permissions"]),
|
|
725
|
+
}, null, 8, ["is-archived", "workflow-active", "workflow-id", "workflow-permissions"])),
|
|
634
726
|
createVNode(_component_n8n_action_toggle, {
|
|
635
727
|
actions: actions.value,
|
|
636
728
|
theme: "dark",
|
|
@@ -682,19 +774,23 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
682
774
|
};
|
|
683
775
|
}
|
|
684
776
|
});
|
|
685
|
-
const cardLink = "
|
|
686
|
-
const cardHeading = "
|
|
687
|
-
const
|
|
688
|
-
const
|
|
689
|
-
const
|
|
690
|
-
const
|
|
777
|
+
const cardLink = "_cardLink_15m1t_123";
|
|
778
|
+
const cardHeading = "_cardHeading_15m1t_133";
|
|
779
|
+
const cardHeadingArchived = "_cardHeadingArchived_15m1t_142";
|
|
780
|
+
const cardDescription = "_cardDescription_15m1t_146";
|
|
781
|
+
const cardActions = "_cardActions_15m1t_153";
|
|
782
|
+
const cardBadge = "_cardBadge_15m1t_163";
|
|
783
|
+
const cardArchived = "_cardArchived_15m1t_174";
|
|
784
|
+
const breadcrumbs = "_breadcrumbs_15m1t_191";
|
|
691
785
|
const style0$1 = {
|
|
692
786
|
cardLink,
|
|
693
787
|
cardHeading,
|
|
788
|
+
cardHeadingArchived,
|
|
694
789
|
cardDescription,
|
|
695
790
|
cardActions,
|
|
696
791
|
cardBadge,
|
|
697
|
-
"with-breadcrumbs": "_with-
|
|
792
|
+
"with-breadcrumbs": "_with-breadcrumbs_15m1t_167",
|
|
793
|
+
cardArchived,
|
|
698
794
|
breadcrumbs
|
|
699
795
|
};
|
|
700
796
|
const cssModules$1 = {
|
|
@@ -823,24 +919,26 @@ const _hoisted_1 = { key: 0 };
|
|
|
823
919
|
const _hoisted_2 = { key: 0 };
|
|
824
920
|
const _hoisted_3 = { key: 1 };
|
|
825
921
|
const _hoisted_4 = { key: 1 };
|
|
826
|
-
const _hoisted_5 = {
|
|
922
|
+
const _hoisted_5 = { key: 1 };
|
|
923
|
+
const _hoisted_6 = {
|
|
827
924
|
class: "text-center mt-s",
|
|
828
925
|
"data-test-id": "list-empty-state"
|
|
829
926
|
};
|
|
830
|
-
const
|
|
927
|
+
const _hoisted_7 = {
|
|
831
928
|
key: 0,
|
|
832
929
|
class: "mb-s"
|
|
833
930
|
};
|
|
834
|
-
const
|
|
931
|
+
const _hoisted_8 = { class: "mb-s" };
|
|
932
|
+
const _hoisted_9 = { class: "mb-s" };
|
|
835
933
|
const SEARCH_DEBOUNCE_TIME = 300;
|
|
836
934
|
const FILTERS_DEBOUNCE_TIME = 100;
|
|
837
935
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
838
936
|
__name: "WorkflowsView",
|
|
839
937
|
setup(__props) {
|
|
840
938
|
const StatusFilter = {
|
|
939
|
+
ALL: "",
|
|
841
940
|
ACTIVE: "active",
|
|
842
|
-
DEACTIVATED: "deactivated"
|
|
843
|
-
ALL: ""
|
|
941
|
+
DEACTIVATED: "deactivated"
|
|
844
942
|
};
|
|
845
943
|
const WORKFLOWS_SORT_MAP = {
|
|
846
944
|
lastUpdated: "updatedAt:desc",
|
|
@@ -868,13 +966,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
868
966
|
const insightsStore = useInsightsStore();
|
|
869
967
|
const documentTitle = useDocumentTitle();
|
|
870
968
|
const { callDebounced } = useDebounce();
|
|
871
|
-
const
|
|
872
|
-
const loading = ref(
|
|
969
|
+
const projectPages = useProjectPages();
|
|
970
|
+
const loading = ref(true);
|
|
873
971
|
const breadcrumbsLoading = ref(false);
|
|
874
972
|
const filters = ref({
|
|
875
973
|
search: "",
|
|
876
974
|
homeProject: "",
|
|
877
975
|
status: StatusFilter.ALL,
|
|
976
|
+
showArchived: false,
|
|
878
977
|
tags: []
|
|
879
978
|
});
|
|
880
979
|
const workflowListEventBus = createEventBus();
|
|
@@ -930,7 +1029,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
930
1029
|
)
|
|
931
1030
|
);
|
|
932
1031
|
const readOnlyEnv = computed(() => sourceControlStore.preferences.branchReadOnly);
|
|
933
|
-
const isOverviewPage = computed(() => route.name === VIEWS.WORKFLOWS);
|
|
934
1032
|
const currentUser = computed(() => usersStore.currentUser ?? {});
|
|
935
1033
|
const isShareable = computed(
|
|
936
1034
|
() => settingsStore.isEnterpriseFeatureEnabled[EnterpriseEditionFeature.Sharing]
|
|
@@ -942,7 +1040,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
942
1040
|
return projectsStore.isTeamProjectFeatureEnabled;
|
|
943
1041
|
});
|
|
944
1042
|
const showFolders = computed(() => {
|
|
945
|
-
return foldersEnabled.value && !
|
|
1043
|
+
return foldersEnabled.value && !projectPages.isOverviewSubPage && !projectPages.isSharedSubPage;
|
|
946
1044
|
});
|
|
947
1045
|
const currentFolder = computed(() => {
|
|
948
1046
|
return currentFolderId.value ? foldersStore.breadcrumbsCache[currentFolderId.value] : null;
|
|
@@ -985,6 +1083,9 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
985
1083
|
}
|
|
986
1084
|
return projectName.value;
|
|
987
1085
|
});
|
|
1086
|
+
const personalProject = computed(() => {
|
|
1087
|
+
return projectsStore.personalProject;
|
|
1088
|
+
});
|
|
988
1089
|
const workflowListResources = computed(() => {
|
|
989
1090
|
const resources = (workflowsAndFolders.value || []).map((resource) => {
|
|
990
1091
|
if (resource.resource === "folder") {
|
|
@@ -1006,6 +1107,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1006
1107
|
id: resource.id,
|
|
1007
1108
|
name: resource.name,
|
|
1008
1109
|
active: resource.active ?? false,
|
|
1110
|
+
isArchived: resource.isArchived,
|
|
1009
1111
|
updatedAt: resource.updatedAt.toString(),
|
|
1010
1112
|
createdAt: resource.createdAt.toString(),
|
|
1011
1113
|
homeProject: resource.homeProject,
|
|
@@ -1040,7 +1142,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1040
1142
|
});
|
|
1041
1143
|
const projectPermissions = computed(() => {
|
|
1042
1144
|
return getResourcePermissions(
|
|
1043
|
-
projectsStore.currentProject?.scopes ??
|
|
1145
|
+
projectsStore.currentProject?.scopes ?? personalProject.value?.scopes
|
|
1044
1146
|
);
|
|
1045
1147
|
});
|
|
1046
1148
|
const emptyListDescription = computed(() => {
|
|
@@ -1053,7 +1155,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1053
1155
|
}
|
|
1054
1156
|
});
|
|
1055
1157
|
const hasFilters = computed(() => {
|
|
1056
|
-
return !!(filters.value.search || filters.value.status !== StatusFilter.ALL || filters.value.tags.length);
|
|
1158
|
+
return !!(filters.value.search || filters.value.status !== StatusFilter.ALL || filters.value.showArchived || filters.value.tags.length);
|
|
1057
1159
|
});
|
|
1058
1160
|
const isSelfHostedDeployment = computed(() => settingsStore.deploymentType === "default");
|
|
1059
1161
|
const canUserRegisterCommunityPlus = computed(
|
|
@@ -1062,17 +1164,15 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1062
1164
|
const showRegisteredCommunityCTA = computed(
|
|
1063
1165
|
() => isSelfHostedDeployment.value && !foldersEnabled.value && canUserRegisterCommunityPlus.value
|
|
1064
1166
|
);
|
|
1065
|
-
watch(
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
await initialize();
|
|
1069
|
-
}
|
|
1070
|
-
);
|
|
1167
|
+
watch([() => route.params?.projectId, () => route.name], async () => {
|
|
1168
|
+
loading.value = true;
|
|
1169
|
+
});
|
|
1071
1170
|
watch(
|
|
1072
1171
|
() => route.params?.folderId,
|
|
1073
1172
|
async (newVal) => {
|
|
1074
1173
|
currentFolderId.value = newVal;
|
|
1075
1174
|
filters.value.search = "";
|
|
1175
|
+
saveFiltersOnQueryString();
|
|
1076
1176
|
await fetchWorkflows();
|
|
1077
1177
|
}
|
|
1078
1178
|
);
|
|
@@ -1080,7 +1180,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1080
1180
|
if (name2 !== "pullWorkfolder") return;
|
|
1081
1181
|
after(async () => await initialize());
|
|
1082
1182
|
});
|
|
1083
|
-
const
|
|
1183
|
+
const refreshWorkflows = async () => {
|
|
1084
1184
|
await Promise.all([
|
|
1085
1185
|
fetchWorkflows(),
|
|
1086
1186
|
foldersStore.fetchTotalWorkflowsAndFoldersCount(route.params.projectId)
|
|
@@ -1146,6 +1246,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1146
1246
|
const parentFolder = route.params?.folderId || void 0;
|
|
1147
1247
|
const tags = filters.value.tags.length ? filters.value.tags.map((tagId) => tagsStore.tagsById[tagId]?.name) : [];
|
|
1148
1248
|
const activeFilter = filters.value.status === StatusFilter.ALL ? void 0 : filters.value.status === StatusFilter.ACTIVE;
|
|
1249
|
+
const archivedFilter = filters.value.showArchived ? void 0 : false;
|
|
1149
1250
|
const fetchFolders = showFolders.value && !tags.length && activeFilter === void 0;
|
|
1150
1251
|
try {
|
|
1151
1252
|
const fetchedResources = await workflowsStore.fetchWorkflowsPage(
|
|
@@ -1156,11 +1257,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1156
1257
|
{
|
|
1157
1258
|
name: filters.value.search || void 0,
|
|
1158
1259
|
active: activeFilter,
|
|
1260
|
+
isArchived: archivedFilter,
|
|
1159
1261
|
tags: tags.length ? tags : void 0,
|
|
1160
|
-
parentFolderId: parentFolder
|
|
1161
|
-
// Sending 0 will only show one level of folders
|
|
1262
|
+
parentFolderId: getParentFolderId(parentFolder)
|
|
1162
1263
|
},
|
|
1163
|
-
fetchFolders
|
|
1264
|
+
fetchFolders,
|
|
1265
|
+
projectPages.isSharedSubPage
|
|
1164
1266
|
);
|
|
1165
1267
|
foldersStore.cacheFolders(
|
|
1166
1268
|
fetchedResources.filter((resource) => resource.resource === "folder").map((r) => ({ id: r.id, name: r.name, parentFolder: r.parentFolder?.id }))
|
|
@@ -1173,7 +1275,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1173
1275
|
breadcrumbsLoading.value = false;
|
|
1174
1276
|
}
|
|
1175
1277
|
workflowsAndFolders.value = fetchedResources;
|
|
1176
|
-
showCardsBadge.value =
|
|
1278
|
+
showCardsBadge.value = projectPages.isOverviewSubPage || projectPages.isSharedSubPage || filters.value.search !== "";
|
|
1177
1279
|
return fetchedResources;
|
|
1178
1280
|
} catch (error) {
|
|
1179
1281
|
toast.showError(error, i18n.baseText("workflows.list.error.fetching"));
|
|
@@ -1187,19 +1289,21 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1187
1289
|
}
|
|
1188
1290
|
}
|
|
1189
1291
|
};
|
|
1190
|
-
const
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1292
|
+
const getParentFolderId = (routeId) => {
|
|
1293
|
+
if (routeId !== null && routeId !== void 0) {
|
|
1294
|
+
return routeId;
|
|
1295
|
+
}
|
|
1296
|
+
if (projectPages.isOverviewSubPage || projectPages.isSharedSubPage || filters?.value.search) {
|
|
1297
|
+
return void 0;
|
|
1196
1298
|
}
|
|
1197
|
-
|
|
1299
|
+
return PROJECT_ROOT;
|
|
1198
1300
|
};
|
|
1199
1301
|
const onFiltersUpdated = async () => {
|
|
1200
1302
|
currentPage.value = 1;
|
|
1201
1303
|
saveFiltersOnQueryString();
|
|
1202
|
-
|
|
1304
|
+
if (!loading.value) {
|
|
1305
|
+
await callDebounced(fetchWorkflows, { debounceTime: FILTERS_DEBOUNCE_TIME, trailing: true });
|
|
1306
|
+
}
|
|
1203
1307
|
};
|
|
1204
1308
|
const onSearchUpdated = async (search) => {
|
|
1205
1309
|
currentPage.value = 1;
|
|
@@ -1210,13 +1314,19 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1210
1314
|
await fetchWorkflows();
|
|
1211
1315
|
}
|
|
1212
1316
|
};
|
|
1213
|
-
const
|
|
1214
|
-
|
|
1215
|
-
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1317
|
+
const setPaginationAndSort = async (payload) => {
|
|
1318
|
+
if (payload.page) {
|
|
1319
|
+
currentPage.value = payload.page;
|
|
1320
|
+
}
|
|
1321
|
+
if (payload.pageSize) {
|
|
1322
|
+
pageSize.value = payload.pageSize;
|
|
1323
|
+
}
|
|
1324
|
+
if (payload.sort) {
|
|
1325
|
+
currentSort.value = WORKFLOWS_SORT_MAP[payload.sort] ?? "updatedAt:desc";
|
|
1326
|
+
}
|
|
1327
|
+
if (!loading.value) {
|
|
1328
|
+
await callDebounced(fetchWorkflows, { debounceTime: FILTERS_DEBOUNCE_TIME, trailing: true });
|
|
1329
|
+
}
|
|
1220
1330
|
};
|
|
1221
1331
|
const onClickTag = async (tagId) => {
|
|
1222
1332
|
if (!filters.value.tags.includes(tagId)) {
|
|
@@ -1238,6 +1348,11 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1238
1348
|
} else {
|
|
1239
1349
|
delete currentQuery.status;
|
|
1240
1350
|
}
|
|
1351
|
+
if (filters.value.showArchived) {
|
|
1352
|
+
currentQuery.showArchived = "true";
|
|
1353
|
+
} else {
|
|
1354
|
+
delete currentQuery.showArchived;
|
|
1355
|
+
}
|
|
1241
1356
|
if (filters.value.tags.length) {
|
|
1242
1357
|
currentQuery.tags = filters.value.tags.join(",");
|
|
1243
1358
|
} else {
|
|
@@ -1254,7 +1369,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1254
1369
|
};
|
|
1255
1370
|
const setFiltersFromQueryString = async () => {
|
|
1256
1371
|
const newQuery = { ...route.query };
|
|
1257
|
-
const { tags, status, search, homeProject, sort } = route.query ?? {};
|
|
1372
|
+
const { tags, status, search, homeProject, sort, showArchived } = route.query ?? {};
|
|
1258
1373
|
const isValidString = (value) => typeof value === "string" && value.trim().length > 0;
|
|
1259
1374
|
if (isValidString(homeProject)) {
|
|
1260
1375
|
await projectsStore.getAvailableProjects();
|
|
@@ -1285,8 +1400,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1285
1400
|
} else {
|
|
1286
1401
|
delete newQuery.tags;
|
|
1287
1402
|
}
|
|
1288
|
-
|
|
1289
|
-
if (isValidString(status) && validStatusValues.includes(status)) {
|
|
1403
|
+
if (isValidString(status)) {
|
|
1290
1404
|
newQuery.status = status;
|
|
1291
1405
|
filters.value.status = status === "true" ? StatusFilter.ACTIVE : StatusFilter.DEACTIVATED;
|
|
1292
1406
|
} else {
|
|
@@ -1299,6 +1413,13 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1299
1413
|
} else {
|
|
1300
1414
|
delete newQuery.sort;
|
|
1301
1415
|
}
|
|
1416
|
+
if (isValidString(showArchived)) {
|
|
1417
|
+
newQuery.showArchived = showArchived;
|
|
1418
|
+
filters.value.showArchived = showArchived === "true";
|
|
1419
|
+
} else {
|
|
1420
|
+
delete newQuery.showArchived;
|
|
1421
|
+
filters.value.showArchived = false;
|
|
1422
|
+
}
|
|
1302
1423
|
void router.replace({ query: newQuery });
|
|
1303
1424
|
};
|
|
1304
1425
|
const addWorkflow = () => {
|
|
@@ -1842,6 +1963,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1842
1963
|
const _component_InlineTextEdit = InlineTextEdit;
|
|
1843
1964
|
const _component_FolderBreadcrumbs = __unplugin_components_0;
|
|
1844
1965
|
const _component_FolderCard = __unplugin_components_2;
|
|
1966
|
+
const _component_EmptySharedSectionActionBox = _sfc_main$4;
|
|
1967
|
+
const _component_N8nCheckbox = resolveComponent("N8nCheckbox");
|
|
1845
1968
|
const _component_n8n_action_box = resolveComponent("n8n-action-box");
|
|
1846
1969
|
return openBlock(), createBlock(ResourcesListLayout, {
|
|
1847
1970
|
filters: filters.value,
|
|
@@ -1864,15 +1987,13 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1864
1987
|
"has-empty-state": unref(foldersStore).totalWorkflowCount === 0 && !currentFolderId.value,
|
|
1865
1988
|
"onClick:add": addWorkflow,
|
|
1866
1989
|
"onUpdate:search": onSearchUpdated,
|
|
1867
|
-
"onUpdate:
|
|
1868
|
-
"onUpdate:pageSize": setPageSize,
|
|
1869
|
-
onSort: onSortUpdated,
|
|
1990
|
+
"onUpdate:paginationAndSort": setPaginationAndSort,
|
|
1870
1991
|
onMouseleave: unref(folderHelpers).resetDropTarget
|
|
1871
1992
|
}, createSlots({
|
|
1872
1993
|
header: withCtx(() => [
|
|
1873
1994
|
createVNode(ProjectHeader, { onCreateFolder: createFolderInCurrent }, {
|
|
1874
1995
|
default: withCtx(() => [
|
|
1875
|
-
unref(
|
|
1996
|
+
unref(projectPages).isOverviewSubPage && unref(insightsStore).isSummaryEnabled ? (openBlock(), createBlock(InsightsSummary, {
|
|
1876
1997
|
key: 0,
|
|
1877
1998
|
loading: unref(insightsStore).weeklySummary.isLoading,
|
|
1878
1999
|
summary: unref(insightsStore).weeklySummary.state,
|
|
@@ -1883,7 +2004,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1883
2004
|
})
|
|
1884
2005
|
]),
|
|
1885
2006
|
callout: withCtx(() => [
|
|
1886
|
-
showEasyAIWorkflowCallout.value && easyAICalloutVisible.value ? (openBlock(), createBlock(_component_N8nCallout, {
|
|
2007
|
+
!loading.value && showEasyAIWorkflowCallout.value && easyAICalloutVisible.value ? (openBlock(), createBlock(_component_N8nCallout, {
|
|
1887
2008
|
key: 0,
|
|
1888
2009
|
theme: "secondary",
|
|
1889
2010
|
icon: "robot",
|
|
@@ -1995,7 +2116,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1995
2116
|
data,
|
|
1996
2117
|
actions: folderCardActions.value,
|
|
1997
2118
|
"read-only": readOnlyEnv.value || !hasPermissionToDeleteFolders.value && !hasPermissionToCreateFolders.value,
|
|
1998
|
-
"personal-project":
|
|
2119
|
+
"personal-project": personalProject.value,
|
|
1999
2120
|
"data-resourceid": data.id,
|
|
2000
2121
|
"data-resourcename": data.name,
|
|
2001
2122
|
class: normalizeClass([{
|
|
@@ -2052,7 +2173,9 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
2052
2173
|
"show-ownership-badge": showCardsBadge.value,
|
|
2053
2174
|
"data-target": "workflow",
|
|
2054
2175
|
"onClick:tag": onClickTag,
|
|
2055
|
-
"onWorkflow:deleted":
|
|
2176
|
+
"onWorkflow:deleted": refreshWorkflows,
|
|
2177
|
+
"onWorkflow:archived": refreshWorkflows,
|
|
2178
|
+
"onWorkflow:unarchived": refreshWorkflows,
|
|
2056
2179
|
"onWorkflow:moved": fetchWorkflows,
|
|
2057
2180
|
"onWorkflow:duplicated": fetchWorkflows,
|
|
2058
2181
|
"onWorkflow:activeToggle": onWorkflowActiveToggle,
|
|
@@ -2064,86 +2187,92 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
2064
2187
|
}, 1032, ["disabled", "onDragstart", "onDragend"]))
|
|
2065
2188
|
]),
|
|
2066
2189
|
empty: withCtx(() => [
|
|
2067
|
-
|
|
2068
|
-
createVNode(unref(N8nHeading), {
|
|
2069
|
-
tag: "h2",
|
|
2070
|
-
size: "xlarge",
|
|
2071
|
-
class: "mb-2xs"
|
|
2072
|
-
}, {
|
|
2073
|
-
default: withCtx(() => [
|
|
2074
|
-
createTextVNode(toDisplayString(currentUser.value.firstName ? unref(i18n).baseText("workflows.empty.heading", {
|
|
2075
|
-
interpolate: { name: currentUser.value.firstName }
|
|
2076
|
-
}) : unref(i18n).baseText("workflows.empty.heading.userNotSetup")), 1)
|
|
2077
|
-
]),
|
|
2078
|
-
_: 1
|
|
2079
|
-
}),
|
|
2080
|
-
createVNode(unref(N8nText), {
|
|
2081
|
-
size: "large",
|
|
2082
|
-
color: "text-base"
|
|
2083
|
-
}, {
|
|
2084
|
-
default: withCtx(() => [
|
|
2085
|
-
createTextVNode(toDisplayString(emptyListDescription.value), 1)
|
|
2086
|
-
]),
|
|
2087
|
-
_: 1
|
|
2088
|
-
})
|
|
2089
|
-
]),
|
|
2090
|
-
!readOnlyEnv.value && projectPermissions.value.workflow.create ? (openBlock(), createElementBlock("div", {
|
|
2190
|
+
unref(projectPages).isSharedSubPage && personalProject.value ? (openBlock(), createBlock(_component_EmptySharedSectionActionBox, {
|
|
2091
2191
|
key: 0,
|
|
2092
|
-
|
|
2093
|
-
|
|
2094
|
-
|
|
2095
|
-
|
|
2096
|
-
|
|
2097
|
-
|
|
2098
|
-
|
|
2099
|
-
|
|
2100
|
-
|
|
2101
|
-
|
|
2102
|
-
|
|
2103
|
-
|
|
2104
|
-
|
|
2105
|
-
|
|
2106
|
-
|
|
2107
|
-
|
|
2108
|
-
|
|
2109
|
-
|
|
2110
|
-
|
|
2111
|
-
|
|
2112
|
-
|
|
2113
|
-
|
|
2114
|
-
|
|
2115
|
-
|
|
2116
|
-
|
|
2117
|
-
|
|
2118
|
-
|
|
2192
|
+
"personal-project": personalProject.value,
|
|
2193
|
+
"resource-type": "workflows"
|
|
2194
|
+
}, null, 8, ["personal-project"])) : (openBlock(), createElementBlock("div", _hoisted_5, [
|
|
2195
|
+
createBaseVNode("div", _hoisted_6, [
|
|
2196
|
+
createVNode(unref(N8nHeading), {
|
|
2197
|
+
tag: "h2",
|
|
2198
|
+
size: "xlarge",
|
|
2199
|
+
class: "mb-2xs"
|
|
2200
|
+
}, {
|
|
2201
|
+
default: withCtx(() => [
|
|
2202
|
+
createTextVNode(toDisplayString(currentUser.value.firstName ? unref(i18n).baseText("workflows.empty.heading", {
|
|
2203
|
+
interpolate: { name: currentUser.value.firstName }
|
|
2204
|
+
}) : unref(i18n).baseText("workflows.empty.heading.userNotSetup")), 1)
|
|
2205
|
+
]),
|
|
2206
|
+
_: 1
|
|
2207
|
+
}),
|
|
2208
|
+
createVNode(unref(N8nText), {
|
|
2209
|
+
size: "large",
|
|
2210
|
+
color: "text-base"
|
|
2211
|
+
}, {
|
|
2212
|
+
default: withCtx(() => [
|
|
2213
|
+
createTextVNode(toDisplayString(emptyListDescription.value), 1)
|
|
2214
|
+
]),
|
|
2215
|
+
_: 1
|
|
2216
|
+
})
|
|
2217
|
+
]),
|
|
2218
|
+
!readOnlyEnv.value && projectPermissions.value.workflow.create ? (openBlock(), createElementBlock("div", {
|
|
2119
2219
|
key: 0,
|
|
2120
|
-
class: normalizeClass(_ctx.$style.
|
|
2121
|
-
|
|
2122
|
-
|
|
2123
|
-
|
|
2124
|
-
|
|
2125
|
-
|
|
2126
|
-
|
|
2127
|
-
|
|
2128
|
-
|
|
2129
|
-
|
|
2130
|
-
|
|
2131
|
-
|
|
2132
|
-
|
|
2133
|
-
|
|
2134
|
-
|
|
2135
|
-
|
|
2136
|
-
|
|
2137
|
-
|
|
2138
|
-
|
|
2139
|
-
|
|
2140
|
-
|
|
2141
|
-
|
|
2142
|
-
|
|
2143
|
-
|
|
2220
|
+
class: normalizeClass(["text-center", "mt-2xl", _ctx.$style.actionsContainer])
|
|
2221
|
+
}, [
|
|
2222
|
+
createVNode(unref(N8nCard), {
|
|
2223
|
+
class: normalizeClass(_ctx.$style.emptyStateCard),
|
|
2224
|
+
hoverable: "",
|
|
2225
|
+
"data-test-id": "new-workflow-card",
|
|
2226
|
+
onClick: addWorkflow
|
|
2227
|
+
}, {
|
|
2228
|
+
default: withCtx(() => [
|
|
2229
|
+
createVNode(unref(N8nIcon), {
|
|
2230
|
+
class: normalizeClass(_ctx.$style.emptyStateCardIcon),
|
|
2231
|
+
icon: "file"
|
|
2232
|
+
}, null, 8, ["class"]),
|
|
2233
|
+
createVNode(unref(N8nText), {
|
|
2234
|
+
size: "large",
|
|
2235
|
+
class: "mt-xs",
|
|
2236
|
+
color: "text-dark"
|
|
2237
|
+
}, {
|
|
2238
|
+
default: withCtx(() => [
|
|
2239
|
+
createTextVNode(toDisplayString(unref(i18n).baseText("workflows.empty.startFromScratch")), 1)
|
|
2240
|
+
]),
|
|
2241
|
+
_: 1
|
|
2242
|
+
})
|
|
2243
|
+
]),
|
|
2244
|
+
_: 1
|
|
2245
|
+
}, 8, ["class"]),
|
|
2246
|
+
showEasyAIWorkflowCallout.value ? (openBlock(), createBlock(unref(N8nCard), {
|
|
2247
|
+
key: 0,
|
|
2248
|
+
class: normalizeClass(_ctx.$style.emptyStateCard),
|
|
2249
|
+
hoverable: "",
|
|
2250
|
+
"data-test-id": "easy-ai-workflow-card",
|
|
2251
|
+
onClick: _cache[2] || (_cache[2] = ($event) => openAIWorkflow("empty"))
|
|
2252
|
+
}, {
|
|
2253
|
+
default: withCtx(() => [
|
|
2254
|
+
createVNode(unref(N8nIcon), {
|
|
2255
|
+
class: normalizeClass(_ctx.$style.emptyStateCardIcon),
|
|
2256
|
+
icon: "robot"
|
|
2257
|
+
}, null, 8, ["class"]),
|
|
2258
|
+
createVNode(unref(N8nText), {
|
|
2259
|
+
size: "large",
|
|
2260
|
+
class: "mt-xs pl-2xs pr-2xs",
|
|
2261
|
+
color: "text-dark"
|
|
2262
|
+
}, {
|
|
2263
|
+
default: withCtx(() => [
|
|
2264
|
+
createTextVNode(toDisplayString(unref(i18n).baseText("workflows.empty.easyAI")), 1)
|
|
2265
|
+
]),
|
|
2266
|
+
_: 1
|
|
2267
|
+
})
|
|
2268
|
+
]),
|
|
2269
|
+
_: 1
|
|
2270
|
+
}, 8, ["class"])) : createCommentVNode("", true)
|
|
2271
|
+
], 2)) : createCommentVNode("", true)
|
|
2272
|
+
]))
|
|
2144
2273
|
]),
|
|
2145
2274
|
filters: withCtx(({ setKeyValue }) => [
|
|
2146
|
-
unref(settingsStore).areTagsEnabled ? (openBlock(), createElementBlock("div",
|
|
2275
|
+
unref(settingsStore).areTagsEnabled ? (openBlock(), createElementBlock("div", _hoisted_7, [
|
|
2147
2276
|
createVNode(unref(N8nInputLabel), {
|
|
2148
2277
|
label: unref(i18n).baseText("workflows.filters.tags"),
|
|
2149
2278
|
bold: false,
|
|
@@ -2151,14 +2280,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
2151
2280
|
color: "text-base",
|
|
2152
2281
|
class: "mb-3xs"
|
|
2153
2282
|
}, null, 8, ["label"]),
|
|
2154
|
-
createVNode(_sfc_main$
|
|
2283
|
+
createVNode(_sfc_main$5, {
|
|
2155
2284
|
placeholder: unref(i18n).baseText("workflowOpen.filterWorkflows"),
|
|
2156
2285
|
"model-value": filters.value.tags,
|
|
2157
2286
|
"create-enabled": false,
|
|
2158
2287
|
"onUpdate:modelValue": ($event) => setKeyValue("tags", $event)
|
|
2159
2288
|
}, null, 8, ["placeholder", "model-value", "onUpdate:modelValue"])
|
|
2160
2289
|
])) : createCommentVNode("", true),
|
|
2161
|
-
createBaseVNode("div",
|
|
2290
|
+
createBaseVNode("div", _hoisted_8, [
|
|
2162
2291
|
createVNode(unref(N8nInputLabel), {
|
|
2163
2292
|
label: unref(i18n).baseText("workflows.filters.status"),
|
|
2164
2293
|
bold: false,
|
|
@@ -2173,7 +2302,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
2173
2302
|
}, {
|
|
2174
2303
|
default: withCtx(() => [
|
|
2175
2304
|
(openBlock(true), createElementBlock(Fragment, null, renderList(statusFilterOptions.value, (option) => {
|
|
2176
|
-
return openBlock(), createBlock(unref(_sfc_main$
|
|
2305
|
+
return openBlock(), createBlock(unref(_sfc_main$6), {
|
|
2177
2306
|
key: option.label,
|
|
2178
2307
|
label: option.label,
|
|
2179
2308
|
value: option.value,
|
|
@@ -2183,15 +2312,28 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
2183
2312
|
]),
|
|
2184
2313
|
_: 2
|
|
2185
2314
|
}, 1032, ["model-value", "onUpdate:modelValue"])
|
|
2315
|
+
]),
|
|
2316
|
+
createBaseVNode("div", _hoisted_9, [
|
|
2317
|
+
createVNode(_component_N8nCheckbox, {
|
|
2318
|
+
label: unref(i18n).baseText("workflows.filters.showArchived"),
|
|
2319
|
+
"model-value": filters.value.showArchived || false,
|
|
2320
|
+
"data-test-id": "show-archived-checkbox",
|
|
2321
|
+
"onUpdate:modelValue": ($event) => setKeyValue("showArchived", $event)
|
|
2322
|
+
}, null, 8, ["label", "model-value", "onUpdate:modelValue"])
|
|
2186
2323
|
])
|
|
2187
2324
|
]),
|
|
2188
2325
|
postamble: withCtx(() => [
|
|
2189
|
-
workflowsAndFolders.value.length === 0 &&
|
|
2326
|
+
workflowsAndFolders.value.length === 0 && !hasFilters.value ? (openBlock(), createElementBlock("div", {
|
|
2190
2327
|
key: 0,
|
|
2191
2328
|
class: normalizeClass(_ctx.$style["empty-folder-container"]),
|
|
2192
2329
|
"data-test-id": "empty-folder-container"
|
|
2193
2330
|
}, [
|
|
2194
|
-
|
|
2331
|
+
unref(projectPages).isSharedSubPage && personalProject.value ? (openBlock(), createBlock(_component_EmptySharedSectionActionBox, {
|
|
2332
|
+
key: 0,
|
|
2333
|
+
"personal-project": personalProject.value,
|
|
2334
|
+
"resource-type": "workflows"
|
|
2335
|
+
}, null, 8, ["personal-project"])) : currentFolder.value ? (openBlock(), createBlock(_component_n8n_action_box, {
|
|
2336
|
+
key: 1,
|
|
2195
2337
|
"data-test-id": "empty-folder-action-box",
|
|
2196
2338
|
heading: unref(i18n).baseText("folders.empty.actionbox.title", {
|
|
2197
2339
|
interpolate: { folderName: currentFolder.value.name }
|
|
@@ -2205,7 +2347,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
2205
2347
|
createTextVNode(toDisplayString(readOnlyEnv.value ? unref(i18n).baseText("readOnlyEnv.cantAdd.workflow") : unref(i18n).baseText("generic.missing.permissions")), 1)
|
|
2206
2348
|
]),
|
|
2207
2349
|
_: 1
|
|
2208
|
-
}, 8, ["heading", "button-text", "button-disabled"])
|
|
2350
|
+
}, 8, ["heading", "button-text", "button-disabled"])) : createCommentVNode("", true)
|
|
2209
2351
|
], 2)) : createCommentVNode("", true)
|
|
2210
2352
|
]),
|
|
2211
2353
|
_: 2
|
|
@@ -2215,10 +2357,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
2215
2357
|
fn: withCtx(() => [
|
|
2216
2358
|
createVNode(_component_N8nTooltip, {
|
|
2217
2359
|
placement: "top",
|
|
2218
|
-
disabled: !(
|
|
2360
|
+
disabled: !(unref(projectPages).isOverviewSubPage || unref(projectPages).isSharedSubPage || !readOnlyEnv.value && hasPermissionToCreateFolders.value)
|
|
2219
2361
|
}, {
|
|
2220
2362
|
content: withCtx(() => [
|
|
2221
|
-
|
|
2363
|
+
(unref(projectPages).isOverviewSubPage || unref(projectPages).isSharedSubPage) && !showRegisteredCommunityCTA.value ? (openBlock(), createElementBlock("span", _hoisted_1, [
|
|
2222
2364
|
teamProjectsEnabled.value ? (openBlock(), createElementBlock("span", _hoisted_2, toDisplayString(unref(i18n).baseText("folders.add.overview.withProjects.message")), 1)) : (openBlock(), createElementBlock("span", _hoisted_3, toDisplayString(unref(i18n).baseText("folders.add.overview.community.message")), 1))
|
|
2223
2365
|
])) : (openBlock(), createElementBlock("span", _hoisted_4, toDisplayString(currentParentName.value ? unref(i18n).baseText("folders.add.to.parent.message", {
|
|
2224
2366
|
interpolate: { parent: currentParentName.value }
|