n8n-editor-ui 1.65.1 → 1.67.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 (104) hide show
  1. package/dist/assets/{AnnotationTagsDropdown.ee.vue_vue_type_script_setup_true_lang-B4V5qQ9q.js → AnnotationTagsDropdown.ee.vue_vue_type_script_setup_true_lang-DbabN_I2.js} +2 -2
  2. package/dist/assets/{AuthView-DDTsGVDI.js → AuthView-DmC24d7S.js} +17 -19
  3. package/dist/assets/{CanvasControls-BrmZza76.js → CanvasControls-BPXQqeeO.js} +1 -1
  4. package/dist/assets/{ChangePasswordView-Txc3JLbg.js → ChangePasswordView-SC3n2vJc.js} +2 -2
  5. package/dist/assets/CollectionParameter-Odk28FRT.js +4 -0
  6. package/dist/assets/{CredentialsView-4YDBK-zY.js → CredentialsView-B3m9CpEC.js} +14 -11
  7. package/dist/assets/{ErrorView-CeJF1j4H.js → ErrorView-D6M8WlVP.js} +1 -1
  8. package/dist/assets/{ExecutionsFilter-BecTg03r.css → ExecutionsFilter-DVxRt-Pz.css} +6 -6
  9. package/dist/assets/{ExecutionsFilter-ODySTrFf.js → ExecutionsFilter-DlZH8tDW.js} +5 -5
  10. package/dist/assets/{ExecutionsView-Cfc2bklt.js → ExecutionsView-DaHtYmF4.js} +4 -4
  11. package/dist/assets/{FileSaver.min-2E3H7obf.js → FileSaver.min-DNytcjKT.js} +1 -1
  12. package/dist/assets/FixedCollectionParameter-CypxYAFK.js +334 -0
  13. package/dist/assets/{FixedCollectionParameter-fI2wTyfY.css → FixedCollectionParameter-DzOGMEdq.css} +10 -10
  14. package/dist/assets/{ForgotMyPasswordView-DY9dxNXM.js → ForgotMyPasswordView-BJ6gd5CS.js} +4 -3
  15. package/dist/assets/{MainHeader-Bc5G9_Uq.css → MainHeader-D56WYRMG.css} +9 -9
  16. package/dist/assets/{MainHeader-2746Uag0.js → MainHeader-DniXcGMK.js} +92 -98
  17. package/dist/assets/{MainSidebar-cNW0UJBC.css → MainSidebar-BRYJRpOA.css} +2 -2
  18. package/dist/assets/{MainSidebar-Deuxu_ZA.js → MainSidebar-NwOfijmV.js} +7 -6
  19. package/dist/assets/{NodeCreation-C2dcJSCB.js → NodeCreation-Ce1ct2i3.js} +6 -6
  20. package/dist/assets/{NodeCreator-DFg5sW0J.css → NodeCreator-CvOLgSO_.css} +4 -4
  21. package/dist/assets/{NodeCreator-DbLN5EpO.js → NodeCreator-DMLTbzAt.js} +38 -25
  22. package/dist/assets/{NodeViewSwitcher-C7fT1hjp.js → NodeViewSwitcher-B9JUn3eY.js} +448 -332
  23. package/dist/assets/{NodeViewSwitcher-Np-f2Pkl.css → NodeViewSwitcher-CnP5aYyg.css} +138 -138
  24. package/dist/assets/{ProjectCardBadge.vue_vue_type_script_setup_true_lang-1r16lWfz.js → ProjectCardBadge-C3QU-WmO.js} +63 -30
  25. package/dist/assets/ProjectCardBadge-DPUG4BoB.css +20 -0
  26. package/dist/assets/{ProjectSettings-B-0hlVBb.js → ProjectSettings-BvcEg3hx.js} +35 -6
  27. package/dist/assets/{ProjectTabs-BLgXz0GM.js → ProjectTabs-Dve3xFj9.js} +1 -1
  28. package/dist/assets/PushConnectionTracker.vue_vue_type_script_setup_true_lang-DlJOpf7N.js +39 -0
  29. package/dist/assets/ResourceListHeader-B2sxe6HT.js +66 -0
  30. package/dist/assets/ResourceListHeader-DgE1VPUF.css +19 -0
  31. package/dist/assets/ResourcesListLayout-Bc4__nvw.js +692 -0
  32. package/dist/assets/{ResourcesListLayout-DAvOygN7.css → ResourcesListLayout-Ci-K1bH3.css} +17 -12
  33. package/dist/assets/{RunDataAi-DWyv1KtV.js → RunDataAi-BKu1beM6.js} +45 -43
  34. package/dist/assets/{RunDataJson-BkOB7Mi5.js → RunDataJson-ea5u1EeD.js} +12 -12
  35. package/dist/assets/{RunDataJsonActions-K_wfkbT2.js → RunDataJsonActions-Dflnt8gK.js} +127 -159
  36. package/dist/assets/{RunDataSearch-CdIFsfvp.js → RunDataSearch-DKNVmEqa.js} +1 -1
  37. package/dist/assets/{RunDataTable-CSd24Wzt.js → RunDataTable-DISLWxMc.js} +1 -1
  38. package/dist/assets/{SamlOnboarding-C7jmImZi.js → SamlOnboarding-CPvGRYUg.js} +2 -2
  39. package/dist/assets/SettingsApiView-BFj9fDL9.js +227 -0
  40. package/dist/assets/{SettingsCommunityNodesView-QbJKukss.js → SettingsCommunityNodesView-nJFDrtIR.js} +185 -195
  41. package/dist/assets/{SettingsExternalSecrets-CBL5kSMf.js → SettingsExternalSecrets-0-mj45K-.js} +3 -3
  42. package/dist/assets/{SettingsLdapView-CHwYGxkx.js → SettingsLdapView-BhBxX72w.js} +3 -3
  43. package/dist/assets/SettingsLogStreamingView-CmEJrEOv.js +500 -0
  44. package/dist/assets/{SettingsPersonalView-BfL80wvU.js → SettingsPersonalView-C__lC8Vv.js} +1 -1
  45. package/dist/assets/{SettingsSourceControl-CrPjF7Tl.js → SettingsSourceControl-CMoS5B5P.js} +3 -3
  46. package/dist/assets/{SettingsSso-CoM-3Knf.js → SettingsSso-DJfrl1Rl.js} +3 -3
  47. package/dist/assets/{SettingsUsageAndPlan-BeHnYh3Q.js → SettingsUsageAndPlan-CWQ5uVrG.js} +7 -6
  48. package/dist/assets/{SettingsUsageAndPlan-C76Ty5yF.css → SettingsUsageAndPlan-vijI-va0.css} +3 -3
  49. package/dist/assets/{SettingsUsersView-KIj2fh50.js → SettingsUsersView-Cvr6Digb.js} +4 -3
  50. package/dist/assets/{SettingsView-Chfmh8Oz.js → SettingsView-DtGga45F.js} +2 -30
  51. package/dist/assets/{SetupView-Cj9NK5oF.js → SetupView-DkJH96By.js} +2 -2
  52. package/dist/assets/{SetupWorkflowCredentialsButton-1LXFp3M1.js → SetupWorkflowCredentialsButton-C1Jv_-V5.js} +1 -1
  53. package/dist/assets/{SetupWorkflowFromTemplateView-nyPe7OpV.js → SetupWorkflowFromTemplateView-WSzVMgC4.js} +3 -3
  54. package/dist/assets/{SigninView-TCarjEXK.js → SigninView-xej8y-Vu.js} +4 -3
  55. package/dist/assets/{SignoutView-Delor5Ax.js → SignoutView-Dc8fBBIm.js} +1 -1
  56. package/dist/assets/{SignupView-DOREfT5l.js → SignupView-CKA28Xc8.js} +4 -3
  57. package/dist/assets/TemplateDetails-Pi49rFlS.js +179 -0
  58. package/dist/assets/TemplateList-BncQL783.js +371 -0
  59. package/dist/assets/{TemplatesCollectionView-DtaG85Jk.js → TemplatesCollectionView-C9PKPo5y.js} +8 -8
  60. package/dist/assets/{TemplatesSearchView-CqH8oefx.js → TemplatesSearchView-65taIL-M.js} +530 -577
  61. package/dist/assets/{TemplatesView-B9Lz_EzK.js → TemplatesView-DkP9JWHk.js} +32 -37
  62. package/dist/assets/{TemplatesWorkflowView-BfqaXGKg.js → TemplatesWorkflowView-B5uc0BtL.js} +5 -5
  63. package/dist/assets/{VariablesView-CHXdt5-z.css → VariablesView-BPKo50HJ.css} +18 -18
  64. package/dist/assets/{VariablesView-BH0opxm_.js → VariablesView-DV1-KgmN.js} +6 -4
  65. package/dist/assets/WorkerView-5P9lg6ew.js +148 -0
  66. package/dist/assets/WorkerView-Dm0b18Mh.css +22 -0
  67. package/dist/assets/{WorkflowActivator-u3HKoT5w.css → WorkflowActivator-D8FiI2jP.css} +2 -2
  68. package/dist/assets/{WorkflowActivator-ByVmTkYU.js → WorkflowActivator-Dc_Un-Af.js} +15 -4
  69. package/dist/assets/{WorkflowExecutionsInfoAccordion-BqbBanz6.js → WorkflowExecutionsInfoAccordion-BLyC6lr5.js} +1 -1
  70. package/dist/assets/{WorkflowExecutionsLandingPage-5u6ZDaFD.js → WorkflowExecutionsLandingPage-Dsa6Bgkn.js} +2 -2
  71. package/dist/assets/{WorkflowExecutionsPreview-BGb9AU3g.js → WorkflowExecutionsPreview-B_X-enUV.js} +5 -5
  72. package/dist/assets/{WorkflowExecutionsView-KTlGfaLi.js → WorkflowExecutionsView-Bkz3Sig-.js} +5 -5
  73. package/dist/assets/{WorkflowHistory-DqXCxz1p.js → WorkflowHistory-BiPMooAv.js} +5 -4
  74. package/dist/assets/{WorkflowOnboardingView-Cx7hbCo8.js → WorkflowOnboardingView-XHuS6lCs.js} +1 -1
  75. package/dist/assets/{WorkflowPreview-BTF7OmQM.css → WorkflowPreview-Bpiv2_RO.css} +8 -8
  76. package/dist/assets/{WorkflowPreview-DAQ7mvNi.js → WorkflowPreview-DxZKd23H.js} +8 -8
  77. package/dist/assets/{WorkflowsView-ChU_EKMN.js → WorkflowsView-BBaLVqJs.js} +14 -12
  78. package/dist/assets/{dateFormatter-CfOgAO2k.js → dateFormatter-C53K7zEn.js} +1 -1
  79. package/dist/assets/{index-BUjeBzRM.js → index-7YFQEQmt.js} +36340 -36753
  80. package/dist/assets/{index-DoeC8czU.css → index-BFH_KxyA.css} +162 -130
  81. package/dist/assets/{pushConnection.store-BKOlrr3c.js → pushConnection.store-DbprXL-x.js} +1 -1
  82. package/dist/assets/{templateActions-BTYgtgDN.js → templateActions-QFQD8amJ.js} +1 -1
  83. package/dist/assets/{useBugReporting-lkBiyjPH.js → useBugReporting-IgwBNdXI.js} +1 -1
  84. package/dist/assets/{useExecutionDebugging-C91tSyen.js → useExecutionDebugging-CLORI_Ma.js} +5 -4
  85. package/dist/assets/{useNodeViewVersionSwitcher-D2zGsXPQ.js → useNodeViewVersionSwitcher-CJLQ5lju.js} +2 -2
  86. package/dist/assets/{usePushConnection-CQXTn-bO.js → usePushConnection-DjPgTuLw.js} +9 -10
  87. package/dist/assets/{useWorkflowActivate-DbL83lsy.js → useWorkflowActivate-D_gK841h.js} +1 -1
  88. package/dist/index.html +3 -2
  89. package/index.html +1 -0
  90. package/package.json +1 -1
  91. package/vite.config.mts +1 -17
  92. package/dist/assets/CollectionParameter-D35RQT1r.js +0 -4
  93. package/dist/assets/FixedCollectionParameter-D6dq95nm.js +0 -355
  94. package/dist/assets/PushConnectionTracker-CGjuGy8P.js +0 -38
  95. package/dist/assets/ResourcesListLayout-D_C1ZSTp.js +0 -765
  96. package/dist/assets/SettingsApiView-4M-cLSvs.js +0 -255
  97. package/dist/assets/SettingsFakeDoorView-CEbWEc6P.js +0 -44
  98. package/dist/assets/SettingsFakeDoorView-DpKZ4qWG.css +0 -14
  99. package/dist/assets/SettingsLogStreamingView-DZ71hi2g.js +0 -519
  100. package/dist/assets/TemplateDetails-rjxog6MY.js +0 -199
  101. package/dist/assets/TemplateList-DYMX_2qI.js +0 -433
  102. package/dist/assets/WorkerView-BRiI1Adt.js +0 -825
  103. package/dist/assets/WorkerView-C_d54L0W.css +0 -181
  104. package/dist/assets/cloud-CGOqFKZO.js +0 -37
@@ -1,199 +0,0 @@
1
- import { d as defineComponent, c as openBlock, h as createElementBlock, j as createBaseVNode, i as createVNode, w as withCtx, k as createTextVNode, t as toDisplayString, n as normalizeClass, q as renderSlot, l as resolveComponent, _ as _export_sfc, d3 as _sfc_main$2, hW as _sfc_main$3, e0 as mapStores, aC as useTemplatesStore, hX as abbreviateNumber, hY as filterTemplateNodes, e as createBlock, F as Fragment, z as renderList, f as createCommentVNode } from "./index-BUjeBzRM.js";
2
- const _sfc_main$1 = /* @__PURE__ */ defineComponent({
3
- __name: "TemplateDetailsBlock",
4
- props: {
5
- title: {}
6
- },
7
- setup(__props) {
8
- return (_ctx, _cache) => {
9
- const _component_n8n_heading = resolveComponent("n8n-heading");
10
- return openBlock(), createElementBlock("div", {
11
- class: normalizeClass(_ctx.$style.block)
12
- }, [
13
- createBaseVNode("div", {
14
- class: normalizeClass(_ctx.$style.header)
15
- }, [
16
- createVNode(_component_n8n_heading, {
17
- tag: "h3",
18
- size: "small",
19
- color: "text-base"
20
- }, {
21
- default: withCtx(() => [
22
- createTextVNode(toDisplayString(_ctx.title), 1)
23
- ]),
24
- _: 1
25
- })
26
- ], 2),
27
- createBaseVNode("div", {
28
- class: normalizeClass(_ctx.$style.content)
29
- }, [
30
- renderSlot(_ctx.$slots, "default")
31
- ], 2)
32
- ], 2);
33
- };
34
- }
35
- });
36
- const block = "_block_czs8t_1";
37
- const header = "_header_czs8t_5";
38
- const content = "_content_czs8t_10";
39
- const style0$1 = {
40
- block,
41
- header,
42
- content
43
- };
44
- const cssModules$1 = {
45
- "$style": style0$1
46
- };
47
- const __unplugin_components_1$1 = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__cssModules", cssModules$1]]);
48
- function isTemplatesWorkflow(template) {
49
- return !!template && "totalViews" in template;
50
- }
51
- function isFullTemplatesCollection(template) {
52
- return !!template && "description" in template && "categories" in template;
53
- }
54
- const _sfc_main = defineComponent({
55
- name: "TemplateDetails",
56
- components: {
57
- NodeIcon: _sfc_main$2,
58
- TemplateDetailsBlock: __unplugin_components_1$1,
59
- TimeAgo: _sfc_main$3
60
- },
61
- props: {
62
- template: {
63
- type: Object,
64
- required: true
65
- },
66
- blockTitle: {
67
- type: String,
68
- required: true
69
- },
70
- loading: {
71
- type: Boolean
72
- }
73
- },
74
- computed: {
75
- ...mapStores(useTemplatesStore)
76
- },
77
- methods: {
78
- abbreviateNumber,
79
- filterTemplateNodes,
80
- redirectToCategory(id) {
81
- this.templatesStore.resetSessionId();
82
- void this.$router.push(`/templates?categories=${id}`);
83
- },
84
- redirectToSearchPage(node) {
85
- this.templatesStore.resetSessionId();
86
- void this.$router.push(`/templates?search=${node.displayName}`);
87
- },
88
- isFullTemplatesCollection,
89
- isTemplatesWorkflow
90
- }
91
- });
92
- const icons = "_icons_1yw74_1";
93
- const icon = "_icon_1yw74_1";
94
- const text = "_text_1yw74_12";
95
- const style0 = {
96
- icons,
97
- icon,
98
- text
99
- };
100
- function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
101
- const _component_n8n_loading = resolveComponent("n8n-loading");
102
- const _component_NodeIcon = _sfc_main$2;
103
- const _component_TemplateDetailsBlock = __unplugin_components_1$1;
104
- const _component_n8n_tags = resolveComponent("n8n-tags");
105
- const _component_TimeAgo = _sfc_main$3;
106
- const _component_n8n_text = resolveComponent("n8n-text");
107
- return openBlock(), createElementBlock("div", null, [
108
- createVNode(_component_n8n_loading, {
109
- loading: _ctx.loading,
110
- rows: 5,
111
- variant: "p"
112
- }, null, 8, ["loading"]),
113
- !_ctx.loading && _ctx.template && _ctx.template.nodes.length > 0 ? (openBlock(), createBlock(_component_TemplateDetailsBlock, {
114
- key: 0,
115
- title: _ctx.blockTitle
116
- }, {
117
- default: withCtx(() => [
118
- createBaseVNode("div", {
119
- class: normalizeClass(_ctx.$style.icons)
120
- }, [
121
- (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.filterTemplateNodes(_ctx.template.nodes), (node) => {
122
- return openBlock(), createElementBlock("div", {
123
- key: node.name,
124
- class: normalizeClass(_ctx.$style.icon)
125
- }, [
126
- createVNode(_component_NodeIcon, {
127
- "node-type": node,
128
- size: 24,
129
- "show-tooltip": true,
130
- onClick: ($event) => _ctx.redirectToSearchPage(node)
131
- }, null, 8, ["node-type", "onClick"])
132
- ], 2);
133
- }), 128))
134
- ], 2)
135
- ]),
136
- _: 1
137
- }, 8, ["title"])) : createCommentVNode("", true),
138
- !_ctx.loading && _ctx.isFullTemplatesCollection(_ctx.template) && _ctx.template.categories.length > 0 ? (openBlock(), createBlock(_component_TemplateDetailsBlock, {
139
- key: 1,
140
- title: _ctx.$locale.baseText("template.details.categories")
141
- }, {
142
- default: withCtx(() => [
143
- createVNode(_component_n8n_tags, {
144
- tags: _ctx.template.categories,
145
- "onClick:tag": _ctx.redirectToCategory
146
- }, null, 8, ["tags", "onClick:tag"])
147
- ]),
148
- _: 1
149
- }, 8, ["title"])) : createCommentVNode("", true),
150
- !_ctx.loading && _ctx.template ? (openBlock(), createBlock(_component_TemplateDetailsBlock, {
151
- key: 2,
152
- title: _ctx.$locale.baseText("template.details.details")
153
- }, {
154
- default: withCtx(() => [
155
- createBaseVNode("div", {
156
- class: normalizeClass(_ctx.$style.text)
157
- }, [
158
- _ctx.isTemplatesWorkflow(_ctx.template) ? (openBlock(), createBlock(_component_n8n_text, {
159
- key: 0,
160
- size: "small",
161
- color: "text-base"
162
- }, {
163
- default: withCtx(() => [
164
- createTextVNode(toDisplayString(_ctx.$locale.baseText("template.details.created")) + " ", 1),
165
- createVNode(_component_TimeAgo, {
166
- date: _ctx.template.createdAt
167
- }, null, 8, ["date"]),
168
- createTextVNode(" " + toDisplayString(_ctx.$locale.baseText("template.details.by")) + " " + toDisplayString(_ctx.template.user ? _ctx.template.user.username : "n8n team"), 1)
169
- ]),
170
- _: 1
171
- })) : createCommentVNode("", true)
172
- ], 2),
173
- createBaseVNode("div", {
174
- class: normalizeClass(_ctx.$style.text)
175
- }, [
176
- _ctx.isTemplatesWorkflow(_ctx.template) && _ctx.template.totalViews !== 0 ? (openBlock(), createBlock(_component_n8n_text, {
177
- key: 0,
178
- size: "small",
179
- color: "text-base"
180
- }, {
181
- default: withCtx(() => [
182
- createTextVNode(toDisplayString(_ctx.$locale.baseText("template.details.viewed")) + " " + toDisplayString(_ctx.abbreviateNumber(_ctx.template.totalViews)) + " " + toDisplayString(_ctx.$locale.baseText("template.details.times")), 1)
183
- ]),
184
- _: 1
185
- })) : createCommentVNode("", true)
186
- ], 2)
187
- ]),
188
- _: 1
189
- }, 8, ["title"])) : createCommentVNode("", true)
190
- ]);
191
- }
192
- const cssModules = {
193
- "$style": style0
194
- };
195
- const __unplugin_components_1 = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__cssModules", cssModules]]);
196
- export {
197
- __unplugin_components_1 as _,
198
- isFullTemplatesCollection as i
199
- };
@@ -1,433 +0,0 @@
1
- import { d as defineComponent, d3 as _sfc_main$3, hY as filterTemplateNodes, _ as _export_sfc, c as openBlock, h as createElementBlock, F as Fragment, z as renderList, n as normalizeClass, i as createVNode, t as toDisplayString, f as createCommentVNode, hW as _sfc_main$4, hX as abbreviateNumber, w as withCtx, k as createTextVNode, e as createBlock, I as withModifiers, l as resolveComponent, j as createBaseVNode } from "./index-BUjeBzRM.js";
2
- const _sfc_main$2 = defineComponent({
3
- name: "NodeList",
4
- components: {
5
- NodeIcon: _sfc_main$3
6
- },
7
- props: {
8
- nodes: {
9
- type: Array
10
- },
11
- limit: {
12
- type: Number,
13
- default: 4
14
- },
15
- size: {
16
- type: String,
17
- default: "sm"
18
- }
19
- },
20
- computed: {
21
- filteredCoreNodes() {
22
- return filterTemplateNodes(this.nodes);
23
- },
24
- hiddenNodes() {
25
- return this.filteredCoreNodes.length - this.countNodesToBeSliced(this.filteredCoreNodes);
26
- },
27
- slicedNodes() {
28
- return this.filteredCoreNodes.slice(0, this.countNodesToBeSliced(this.filteredCoreNodes));
29
- }
30
- },
31
- methods: {
32
- countNodesToBeSliced(nodes2) {
33
- if (nodes2.length > this.limit) {
34
- return this.limit - 1;
35
- } else {
36
- return this.limit;
37
- }
38
- }
39
- }
40
- });
41
- const list = "_list_10uzg_1";
42
- const container = "_container_10uzg_9";
43
- const sm = "_sm_10uzg_14";
44
- const md = "_md_10uzg_18";
45
- const button$1 = "_button_10uzg_22";
46
- const buttonSm = "_buttonSm_10uzg_36";
47
- const buttonMd = "_buttonMd_10uzg_43";
48
- const style0$2 = {
49
- list,
50
- container,
51
- sm,
52
- md,
53
- button: button$1,
54
- buttonSm,
55
- buttonMd
56
- };
57
- function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {
58
- const _component_NodeIcon = _sfc_main$3;
59
- return openBlock(), createElementBlock("div", {
60
- class: normalizeClass(_ctx.$style.list)
61
- }, [
62
- (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.slicedNodes, (node) => {
63
- return openBlock(), createElementBlock("div", {
64
- key: node.name,
65
- class: normalizeClass([_ctx.$style.container, _ctx.$style[_ctx.size]])
66
- }, [
67
- createVNode(_component_NodeIcon, {
68
- "node-type": node,
69
- size: _ctx.size === "md" ? 24 : 18,
70
- "show-tooltip": true
71
- }, null, 8, ["node-type", "size"])
72
- ], 2);
73
- }), 128)),
74
- _ctx.filteredCoreNodes.length > _ctx.limit + 1 ? (openBlock(), createElementBlock("div", {
75
- key: 0,
76
- class: normalizeClass([_ctx.$style.button, _ctx.size === "md" ? _ctx.$style.buttonMd : _ctx.$style.buttonSm])
77
- }, " +" + toDisplayString(_ctx.hiddenNodes), 3)) : createCommentVNode("", true)
78
- ], 2);
79
- }
80
- const cssModules$2 = {
81
- "$style": style0$2
82
- };
83
- const __unplugin_components_0$1 = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["render", _sfc_render$2], ["__cssModules", cssModules$2]]);
84
- const _sfc_main$1 = defineComponent({
85
- name: "TemplateCard",
86
- components: {
87
- TimeAgo: _sfc_main$4,
88
- NodeList: __unplugin_components_0$1
89
- },
90
- props: {
91
- workflow: {
92
- type: Object
93
- },
94
- lastItem: {
95
- type: Boolean,
96
- default: false
97
- },
98
- firstItem: {
99
- type: Boolean,
100
- default: false
101
- },
102
- useWorkflowButton: {
103
- type: Boolean
104
- },
105
- loading: {
106
- type: Boolean
107
- },
108
- simpleView: {
109
- type: Boolean,
110
- default: false
111
- }
112
- },
113
- data() {
114
- return {
115
- nodesToBeShown: 5
116
- };
117
- },
118
- methods: {
119
- filterTemplateNodes,
120
- abbreviateNumber,
121
- countNodesToBeSliced(nodes2) {
122
- if (nodes2.length > this.nodesToBeShown) {
123
- return this.nodesToBeShown - 1;
124
- } else {
125
- return this.nodesToBeShown;
126
- }
127
- },
128
- onUseWorkflowClick(e) {
129
- this.$emit("useWorkflow", e);
130
- },
131
- onCardClick(e) {
132
- this.$emit("click", e);
133
- }
134
- }
135
- });
136
- const nodes$1 = "_nodes_psqnp_1";
137
- const icon = "_icon_psqnp_8";
138
- const card = "_card_psqnp_12";
139
- const hideOnHover = "_hideOnHover_psqnp_24";
140
- const buttonContainer = "_buttonContainer_psqnp_27";
141
- const loaded = "_loaded_psqnp_38";
142
- const first = "_first_psqnp_42";
143
- const last = "_last_psqnp_48";
144
- const content = "_content_psqnp_53";
145
- const line = "_line_psqnp_58";
146
- const loading = "_loading_psqnp_64";
147
- const nodesContainer = "_nodesContainer_psqnp_69";
148
- const style0$1 = {
149
- nodes: nodes$1,
150
- icon,
151
- card,
152
- hideOnHover,
153
- buttonContainer,
154
- loaded,
155
- first,
156
- last,
157
- content,
158
- line,
159
- loading,
160
- nodesContainer
161
- };
162
- const _hoisted_1$1 = { key: 1 };
163
- const _hoisted_2$1 = { key: 0 };
164
- function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
165
- const _component_n8n_loading = resolveComponent("n8n-loading");
166
- const _component_n8n_heading = resolveComponent("n8n-heading");
167
- const _component_font_awesome_icon = resolveComponent("font-awesome-icon");
168
- const _component_n8n_text = resolveComponent("n8n-text");
169
- const _component_TimeAgo = _sfc_main$4;
170
- const _component_NodeList = __unplugin_components_0$1;
171
- const _component_n8n_button = resolveComponent("n8n-button");
172
- return openBlock(), createElementBlock("div", {
173
- class: normalizeClass([
174
- _ctx.$style.card,
175
- _ctx.lastItem && _ctx.$style.last,
176
- _ctx.firstItem && _ctx.$style.first,
177
- !_ctx.loading && _ctx.$style.loaded
178
- ]),
179
- "data-test-id": "template-card",
180
- onClick: _cache[0] || (_cache[0] = (...args) => _ctx.onCardClick && _ctx.onCardClick(...args))
181
- }, [
182
- _ctx.loading ? (openBlock(), createElementBlock("div", {
183
- key: 0,
184
- class: normalizeClass(_ctx.$style.loading)
185
- }, [
186
- createVNode(_component_n8n_loading, {
187
- rows: 2,
188
- "shrink-last": false,
189
- loading: _ctx.loading
190
- }, null, 8, ["loading"])
191
- ], 2)) : _ctx.workflow ? (openBlock(), createElementBlock("div", _hoisted_1$1, [
192
- createVNode(_component_n8n_heading, {
193
- bold: true,
194
- size: "small"
195
- }, {
196
- default: withCtx(() => [
197
- createTextVNode(toDisplayString(_ctx.workflow.name), 1)
198
- ]),
199
- _: 1
200
- }),
201
- !_ctx.simpleView ? (openBlock(), createElementBlock("div", {
202
- key: 0,
203
- class: normalizeClass(_ctx.$style.content)
204
- }, [
205
- _ctx.workflow.totalViews ? (openBlock(), createElementBlock("span", _hoisted_2$1, [
206
- createVNode(_component_n8n_text, {
207
- size: "small",
208
- color: "text-light"
209
- }, {
210
- default: withCtx(() => [
211
- createVNode(_component_font_awesome_icon, { icon: "eye" }),
212
- createTextVNode(" " + toDisplayString(_ctx.abbreviateNumber(_ctx.workflow.totalViews)), 1)
213
- ]),
214
- _: 1
215
- })
216
- ])) : createCommentVNode("", true),
217
- _ctx.workflow.totalViews ? (openBlock(), createElementBlock("div", {
218
- key: 1,
219
- class: normalizeClass(_ctx.$style.line),
220
- textContent: "|"
221
- }, null, 2)) : createCommentVNode("", true),
222
- createVNode(_component_n8n_text, {
223
- size: "small",
224
- color: "text-light"
225
- }, {
226
- default: withCtx(() => [
227
- createVNode(_component_TimeAgo, {
228
- date: _ctx.workflow.createdAt
229
- }, null, 8, ["date"])
230
- ]),
231
- _: 1
232
- }),
233
- _ctx.workflow.user ? (openBlock(), createElementBlock("div", {
234
- key: 2,
235
- class: normalizeClass(_ctx.$style.line),
236
- textContent: "|"
237
- }, null, 2)) : createCommentVNode("", true),
238
- _ctx.workflow.user ? (openBlock(), createBlock(_component_n8n_text, {
239
- key: 3,
240
- size: "small",
241
- color: "text-light"
242
- }, {
243
- default: withCtx(() => [
244
- createTextVNode("By " + toDisplayString(_ctx.workflow.user.username), 1)
245
- ]),
246
- _: 1
247
- })) : createCommentVNode("", true)
248
- ], 2)) : createCommentVNode("", true)
249
- ])) : createCommentVNode("", true),
250
- !_ctx.loading && _ctx.workflow ? (openBlock(), createElementBlock("div", {
251
- key: 2,
252
- class: normalizeClass([_ctx.$style.nodesContainer, _ctx.useWorkflowButton && _ctx.$style.hideOnHover])
253
- }, [
254
- _ctx.workflow.nodes ? (openBlock(), createBlock(_component_NodeList, {
255
- key: 0,
256
- nodes: _ctx.workflow.nodes,
257
- limit: _ctx.nodesToBeShown,
258
- size: "md"
259
- }, null, 8, ["nodes", "limit"])) : createCommentVNode("", true)
260
- ], 2)) : createCommentVNode("", true),
261
- _ctx.useWorkflowButton ? (openBlock(), createElementBlock("div", {
262
- key: 3,
263
- class: normalizeClass(_ctx.$style.buttonContainer)
264
- }, [
265
- _ctx.useWorkflowButton ? (openBlock(), createBlock(_component_n8n_button, {
266
- key: 0,
267
- outline: "",
268
- label: "Use workflow",
269
- "data-test-id": "use-workflow-button",
270
- onClick: withModifiers(_ctx.onUseWorkflowClick, ["stop"])
271
- }, null, 8, ["onClick"])) : createCommentVNode("", true)
272
- ], 2)) : createCommentVNode("", true)
273
- ], 2);
274
- }
275
- const cssModules$1 = {
276
- "$style": style0$1
277
- };
278
- const __unplugin_components_0 = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["render", _sfc_render$1], ["__cssModules", cssModules$1]]);
279
- const _sfc_main = defineComponent({
280
- name: "TemplateList",
281
- components: {
282
- TemplateCard: __unplugin_components_0
283
- },
284
- props: {
285
- infiniteScrollEnabled: {
286
- type: Boolean,
287
- default: false
288
- },
289
- loading: {
290
- type: Boolean
291
- },
292
- useWorkflowButton: {
293
- type: Boolean,
294
- default: false
295
- },
296
- workflows: {
297
- type: Array,
298
- default: () => []
299
- },
300
- totalWorkflows: {
301
- type: Number,
302
- default: 0
303
- },
304
- simpleView: {
305
- type: Boolean,
306
- default: false
307
- },
308
- totalCount: {
309
- type: Number,
310
- default: 0
311
- }
312
- },
313
- mounted() {
314
- if (this.infiniteScrollEnabled) {
315
- const content2 = document.getElementById("content");
316
- if (content2) {
317
- content2.addEventListener("scroll", this.onScroll);
318
- }
319
- }
320
- },
321
- beforeUnmount() {
322
- const content2 = document.getElementById("content");
323
- if (content2) {
324
- content2.removeEventListener("scroll", this.onScroll);
325
- }
326
- },
327
- methods: {
328
- onScroll() {
329
- const loaderRef = this.$refs.loader;
330
- if (!loaderRef || this.loading) {
331
- return;
332
- }
333
- const rect = loaderRef.getBoundingClientRect();
334
- const inView = rect.top >= 0 && rect.left >= 0 && rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) && rect.right <= (window.innerWidth || document.documentElement.clientWidth);
335
- if (inView) {
336
- this.$emit("loadMore");
337
- }
338
- },
339
- onCardClick(event, id) {
340
- this.$emit("openTemplate", { event, id });
341
- },
342
- onUseWorkflow(event, id) {
343
- this.$emit("useWorkflow", { event, id });
344
- }
345
- }
346
- });
347
- const header = "_header_1ivn7_1";
348
- const workflowButton = "_workflowButton_1ivn7_5";
349
- const button = "_button_1ivn7_5";
350
- const nodes = "_nodes_1ivn7_8";
351
- const style0 = {
352
- header,
353
- workflowButton,
354
- button,
355
- nodes
356
- };
357
- const _hoisted_1 = {
358
- key: 0,
359
- "data-test-id": "template-count-label"
360
- };
361
- const _hoisted_2 = ["textContent"];
362
- const _hoisted_3 = {
363
- key: 0,
364
- ref: "loader"
365
- };
366
- const _hoisted_4 = {
367
- key: 1,
368
- "data-test-id": "templates-loading-container"
369
- };
370
- function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
371
- const _component_n8n_heading = resolveComponent("n8n-heading");
372
- const _component_TemplateCard = __unplugin_components_0;
373
- return _ctx.loading || _ctx.workflows.length ? (openBlock(), createElementBlock("div", {
374
- key: 0,
375
- class: normalizeClass(_ctx.$style.list)
376
- }, [
377
- !_ctx.simpleView ? (openBlock(), createElementBlock("div", {
378
- key: 0,
379
- class: normalizeClass(_ctx.$style.header)
380
- }, [
381
- createVNode(_component_n8n_heading, {
382
- bold: true,
383
- size: "medium",
384
- color: "text-light"
385
- }, {
386
- default: withCtx(() => [
387
- createTextVNode(toDisplayString(_ctx.$locale.baseText("templates.workflows")) + " ", 1),
388
- _ctx.totalCount > 0 ? (openBlock(), createElementBlock("span", _hoisted_1, "(" + toDisplayString(_ctx.totalCount) + ")", 1)) : createCommentVNode("", true),
389
- !_ctx.loading && _ctx.totalWorkflows ? (openBlock(), createElementBlock("span", {
390
- key: 1,
391
- textContent: toDisplayString(`(${_ctx.totalWorkflows})`)
392
- }, null, 8, _hoisted_2)) : createCommentVNode("", true)
393
- ]),
394
- _: 1
395
- })
396
- ], 2)) : createCommentVNode("", true),
397
- createBaseVNode("div", {
398
- class: normalizeClass(_ctx.$style.container)
399
- }, [
400
- (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.workflows, (workflow, index) => {
401
- return openBlock(), createBlock(_component_TemplateCard, {
402
- key: workflow.id,
403
- workflow,
404
- "first-item": index === 0,
405
- "simple-view": _ctx.simpleView,
406
- "last-item": index === _ctx.workflows.length - 1 && !_ctx.loading,
407
- "use-workflow-button": _ctx.useWorkflowButton,
408
- onClick: (e) => _ctx.onCardClick(e, workflow.id),
409
- onUseWorkflow: (e) => _ctx.onUseWorkflow(e, workflow.id)
410
- }, null, 8, ["workflow", "first-item", "simple-view", "last-item", "use-workflow-button", "onClick", "onUseWorkflow"]);
411
- }), 128)),
412
- _ctx.infiniteScrollEnabled ? (openBlock(), createElementBlock("div", _hoisted_3, null, 512)) : createCommentVNode("", true),
413
- _ctx.loading ? (openBlock(), createElementBlock("div", _hoisted_4, [
414
- (openBlock(), createElementBlock(Fragment, null, renderList(4, (n) => {
415
- return createVNode(_component_TemplateCard, {
416
- key: "index-" + n,
417
- loading: true,
418
- "first-item": _ctx.workflows.length === 0 && n === 1,
419
- "last-item": n === 4
420
- }, null, 8, ["first-item", "last-item"]);
421
- }), 64))
422
- ])) : createCommentVNode("", true)
423
- ], 2)
424
- ], 2)) : createCommentVNode("", true);
425
- }
426
- const cssModules = {
427
- "$style": style0
428
- };
429
- const __unplugin_components_2 = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__cssModules", cssModules]]);
430
- export {
431
- __unplugin_components_2 as _,
432
- __unplugin_components_0$1 as a
433
- };