181 lines
6.9 KiB
JavaScript
Executable File
181 lines
6.9 KiB
JavaScript
Executable File
import { d as defineComponent, h as createElementBlock, g as openBlock, n as normalizeClass, j as createBaseVNode, i as createVNode, w as withCtx, k as createTextVNode, t as toDisplayString, m as N8nHeading, X as renderSlot, _ as _export_sfc, b as useRouter, bk as useTemplatesStore, x as computed, e as createBlock, f as createCommentVNode, dK as N8nLoading, F as Fragment, A as renderList, bX as NodeIcon, l as unref, eI as filterTemplateNodes, eG as isFullTemplatesCollection, c as useI18n, eJ as isTemplatesWorkflow, p as N8nText, eK as _sfc_main$2, eL as abbreviateNumber } from "./index--OJ5nhDf.js";
|
|
import { T as Tags } from "./Tags-CdXa3Xx9.js";
|
|
const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
__name: "TemplateDetailsBlock",
|
|
props: {
|
|
title: {}
|
|
},
|
|
setup(__props) {
|
|
return (_ctx, _cache) => {
|
|
const _component_n8n_heading = N8nHeading;
|
|
return openBlock(), createElementBlock("div", {
|
|
class: normalizeClass(_ctx.$style.block)
|
|
}, [
|
|
createBaseVNode("div", {
|
|
class: normalizeClass(_ctx.$style.header)
|
|
}, [
|
|
createVNode(_component_n8n_heading, {
|
|
tag: "h3",
|
|
size: "small",
|
|
color: "text-base"
|
|
}, {
|
|
default: withCtx(() => [
|
|
createTextVNode(toDisplayString(_ctx.title), 1)
|
|
]),
|
|
_: 1
|
|
})
|
|
], 2),
|
|
createBaseVNode("div", {
|
|
class: normalizeClass(_ctx.$style.content)
|
|
}, [
|
|
renderSlot(_ctx.$slots, "default")
|
|
], 2)
|
|
], 2);
|
|
};
|
|
}
|
|
});
|
|
const block = "_block_1355k_123";
|
|
const header = "_header_1355k_127";
|
|
const content = "_content_1355k_132";
|
|
const style0$1 = {
|
|
block,
|
|
header,
|
|
content
|
|
};
|
|
const cssModules$1 = {
|
|
"$style": style0$1
|
|
};
|
|
const TemplateDetailsBlock = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__cssModules", cssModules$1]]);
|
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
__name: "TemplateDetails",
|
|
props: {
|
|
template: {},
|
|
blockTitle: {},
|
|
loading: { type: Boolean }
|
|
},
|
|
setup(__props) {
|
|
const props = __props;
|
|
const router = useRouter();
|
|
const i18n = useI18n();
|
|
const templatesStore = useTemplatesStore();
|
|
const categoriesAsTags = computed(
|
|
() => props.template && "categories" in props.template ? props.template.categories.map((category) => ({
|
|
id: `${category.id}`,
|
|
name: category.name
|
|
})) : []
|
|
);
|
|
const redirectToCategory = (id) => {
|
|
templatesStore.resetSessionId();
|
|
void router.push(`/templates?categories=${id}`);
|
|
};
|
|
const redirectToSearchPage = (node) => {
|
|
templatesStore.resetSessionId();
|
|
void router.push(`/templates?search=${node.displayName}`);
|
|
};
|
|
return (_ctx, _cache) => {
|
|
const _component_n8n_loading = N8nLoading;
|
|
const _component_n8n_tags = Tags;
|
|
const _component_n8n_text = N8nText;
|
|
return openBlock(), createElementBlock("div", null, [
|
|
createVNode(_component_n8n_loading, {
|
|
loading: _ctx.loading,
|
|
rows: 5,
|
|
variant: "p"
|
|
}, null, 8, ["loading"]),
|
|
!_ctx.loading && _ctx.template && _ctx.template.nodes.length > 0 ? (openBlock(), createBlock(TemplateDetailsBlock, {
|
|
key: 0,
|
|
title: _ctx.blockTitle
|
|
}, {
|
|
default: withCtx(() => [
|
|
createBaseVNode("div", {
|
|
class: normalizeClass(_ctx.$style.icons)
|
|
}, [
|
|
(openBlock(true), createElementBlock(Fragment, null, renderList(unref(filterTemplateNodes)(_ctx.template.nodes), (node) => {
|
|
return openBlock(), createElementBlock("div", {
|
|
key: node.name,
|
|
class: normalizeClass(_ctx.$style.icon)
|
|
}, [
|
|
createVNode(NodeIcon, {
|
|
"node-type": node,
|
|
size: 24,
|
|
"show-tooltip": true,
|
|
onClick: ($event) => redirectToSearchPage(node)
|
|
}, null, 8, ["node-type", "onClick"])
|
|
], 2);
|
|
}), 128))
|
|
], 2)
|
|
]),
|
|
_: 1
|
|
}, 8, ["title"])) : createCommentVNode("", true),
|
|
!_ctx.loading && unref(isFullTemplatesCollection)(_ctx.template) && categoriesAsTags.value.length > 0 ? (openBlock(), createBlock(TemplateDetailsBlock, {
|
|
key: 1,
|
|
title: unref(i18n).baseText("template.details.categories")
|
|
}, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_n8n_tags, {
|
|
tags: categoriesAsTags.value,
|
|
"onClick:tag": redirectToCategory
|
|
}, null, 8, ["tags"])
|
|
]),
|
|
_: 1
|
|
}, 8, ["title"])) : createCommentVNode("", true),
|
|
!_ctx.loading && _ctx.template ? (openBlock(), createBlock(TemplateDetailsBlock, {
|
|
key: 2,
|
|
title: unref(i18n).baseText("template.details.details")
|
|
}, {
|
|
default: withCtx(() => [
|
|
createBaseVNode("div", {
|
|
class: normalizeClass(_ctx.$style.text)
|
|
}, [
|
|
unref(isTemplatesWorkflow)(_ctx.template) ? (openBlock(), createBlock(_component_n8n_text, {
|
|
key: 0,
|
|
size: "small",
|
|
color: "text-base"
|
|
}, {
|
|
default: withCtx(() => [
|
|
createTextVNode(toDisplayString(unref(i18n).baseText("template.details.created")) + " ", 1),
|
|
createVNode(_sfc_main$2, {
|
|
date: _ctx.template.createdAt
|
|
}, null, 8, ["date"]),
|
|
createTextVNode(" " + toDisplayString(unref(i18n).baseText("template.details.by")) + " " + toDisplayString(_ctx.template.user ? _ctx.template.user.username : "n8n team"), 1)
|
|
]),
|
|
_: 1
|
|
})) : createCommentVNode("", true)
|
|
], 2),
|
|
createBaseVNode("div", {
|
|
class: normalizeClass(_ctx.$style.text)
|
|
}, [
|
|
unref(isTemplatesWorkflow)(_ctx.template) && _ctx.template.totalViews !== 0 ? (openBlock(), createBlock(_component_n8n_text, {
|
|
key: 0,
|
|
size: "small",
|
|
color: "text-base"
|
|
}, {
|
|
default: withCtx(() => [
|
|
createTextVNode(toDisplayString(unref(i18n).baseText("template.details.viewed")) + " " + toDisplayString(unref(abbreviateNumber)(_ctx.template.totalViews)) + " " + toDisplayString(unref(i18n).baseText("template.details.times")), 1)
|
|
]),
|
|
_: 1
|
|
})) : createCommentVNode("", true)
|
|
], 2)
|
|
]),
|
|
_: 1
|
|
}, 8, ["title"])) : createCommentVNode("", true)
|
|
]);
|
|
};
|
|
}
|
|
});
|
|
const icons = "_icons_2rr5g_123";
|
|
const icon = "_icon_2rr5g_123";
|
|
const text = "_text_2rr5g_134";
|
|
const style0 = {
|
|
icons,
|
|
icon,
|
|
text
|
|
};
|
|
const cssModules = {
|
|
"$style": style0
|
|
};
|
|
const __unplugin_components_6 = /* @__PURE__ */ _export_sfc(_sfc_main, [["__cssModules", cssModules]]);
|
|
export {
|
|
__unplugin_components_6 as _
|
|
};
|