UNPKG

n8n-editor-ui

Version:

Workflow Editor UI for n8n

208 lines (207 loc) 9.61 kB
import { o as __toESM } from "./chunk-6z4oVpB-.js"; import { C as computed, Cn as toDisplayString, D as createElementBlock, E as createCommentVNode, Gt as unref, M as createVNode, P as defineComponent, T as createBlock, Z as onMounted, _ as Fragment, bt as withCtx, et as openBlock, h as withModifiers, it as renderList, j as createTextVNode, vn as normalizeClass, w as createBaseVNode } from "./vue.runtime.esm-bundler-tP5dCd7J.js"; import { _t as useI18n } from "./_MapCache-ficiegRb.js"; import { Ct as N8nActionBox_default, Sn as N8nButton_default, et as N8nCard_default, it as N8nActionToggle_default, mt as N8nLink_default, t as Loading_default, wn as N8nIcon_default, xn as N8nText_default, yn as N8nHeading_default } from "./src-DgvumQTi.js"; import "./en-CF30SCh2.js"; import "./preload-helper-CR0ecmWK.js"; import { t as __plugin_vue_export_helper_default } from "./_plugin-vue_export-helper-BwBpWJRZ.js"; import "./truncate-B1HVeveJ.js"; import "./builder.store-sBTWwxRU.js"; import "./empty-BuGRxzl4.js"; import "./sanitize-html-Cc45ZKm8.js"; import "./CalendarDate-zWqgZMlk.js"; import "./path-browserify-BtCDmZ3_.js"; import "./constants-BbpucWL4.js"; import "./merge-k8vSyyXH.js"; import "./_baseOrderBy-B_6CV8x6.js"; import { t as require_dateformat } from "./dateformat-CM9k0--B.js"; import "./useDebounce-Bnb8W2LR.js"; import { t as TimeAgo_default } from "./TimeAgo-CWvYoS88.js"; import { t as useCredentialResolvers } from "./useCredentialResolvers-hAbB1CCv.js"; var import_dateformat = /* @__PURE__ */ __toESM(require_dateformat()); var _hoisted_1 = { key: 1 }; var _hoisted_2 = { key: 2 }; var docsUrl = "https://docs.n8n.io/"; var ResolversView_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({ __name: "ResolversView", setup(__props) { const i18n = useI18n(); const { resolvers, resolverTypes, isLoading, fetchResolvers, fetchResolverTypes, deleteResolver, openCreateModal, openEditModal } = useCredentialResolvers(); const RESOLVER_LIST_ITEM_ACTIONS = { EDIT: "edit", DELETE: "delete" }; onMounted(async () => { await Promise.all([fetchResolvers(), fetchResolverTypes()]); }); const currentYear = (/* @__PURE__ */ new Date()).getFullYear().toString(); function getDateFormat(date) { return `d mmmm${String(date).startsWith(currentYear) ? "" : ", yyyy"}`; } const actions = computed(() => { return [{ label: i18n.baseText("credentialResolver.action.edit"), value: RESOLVER_LIST_ITEM_ACTIONS.EDIT }, { label: i18n.baseText("credentialResolver.action.delete"), value: RESOLVER_LIST_ITEM_ACTIONS.DELETE }]; }); function createResolver() { openCreateModal(); } function editResolver(resolver) { openEditModal(resolver.id); } async function handleDeleteResolver(resolver) { if (await deleteResolver(resolver)) fetchResolvers(); } async function onAction(action, resolver) { switch (action) { case RESOLVER_LIST_ITEM_ACTIONS.EDIT: editResolver(resolver); break; case RESOLVER_LIST_ITEM_ACTIONS.DELETE: await handleDeleteResolver(resolver); break; } } return (_ctx, _cache) => { return openBlock(), createElementBlock("div", { class: normalizeClass(_ctx.$style.container) }, [createBaseVNode("div", { class: normalizeClass(["mb-xl", _ctx.$style.headerContainer]) }, [createBaseVNode("div", { class: normalizeClass(_ctx.$style.headerTitle) }, [createVNode(unref(N8nHeading_default), { tag: "h1", size: "2xlarge" }, { default: withCtx(() => [createTextVNode(toDisplayString(unref(i18n).baseText("credentialResolver.view.title")), 1)]), _: 1 }), unref(resolvers).length ? (openBlock(), createBlock(unref(N8nText_default), { key: 0, color: "text-base", size: "medium" }, { default: withCtx(() => [createTextVNode(toDisplayString(unref(i18n).baseText("credentialResolver.view.description")) + " " + toDisplayString(unref(i18n).baseText("credentialResolver.view.learnMore")) + " ", 1), createVNode(unref(N8nLink_default), { theme: "text", href: docsUrl, size: "medium", "new-window": "" }, { default: withCtx(() => [createBaseVNode("span", { class: normalizeClass(_ctx.$style.link) }, [createTextVNode(toDisplayString(unref(i18n).baseText("generic.documentation")) + " ", 1), createVNode(unref(N8nIcon_default), { icon: "arrow-up-right" })], 2)]), _: 1 })]), _: 1 })) : createCommentVNode("", true)], 2)], 2), unref(isLoading) && unref(resolvers).length === 0 ? (openBlock(), createBlock(unref(Loading_default), { key: 0, rows: 5, "shrink-last": false })) : unref(resolvers).length === 0 ? (openBlock(), createElementBlock("div", _hoisted_1, [createVNode(unref(N8nActionBox_default), { class: "mt-2xl mb-l", description: "yes" }, { description: withCtx(() => [ createBaseVNode("div", { class: normalizeClass(_ctx.$style.iconCardContainer) }, [ createBaseVNode("div", { class: normalizeClass(_ctx.$style.iconCard) }, [createVNode(unref(N8nIcon_default), { icon: "key-round" })], 2), createBaseVNode("div", { class: normalizeClass(_ctx.$style.iconCard) }, [createVNode(unref(N8nIcon_default), { icon: "split" })], 2), createBaseVNode("div", { class: normalizeClass(_ctx.$style.iconCard) }, [createVNode(unref(N8nIcon_default), { icon: "user" })], 2) ], 2), createVNode(unref(N8nHeading_default), { tag: "h2", size: "medium", align: "center", class: "mb-2xs" }, { default: withCtx(() => _cache[0] || (_cache[0] = [createTextVNode(" Resolve dynamic credentials from user identity ")])), _: 1 }), createBaseVNode("div", null, toDisplayString(unref(i18n).baseText("credentialResolver.view.description")), 1) ]), additionalContent: withCtx(() => [createVNode(unref(N8nButton_default), { type: "highlight", class: "mr-2xs", element: "a", href: docsUrl, target: "_blank" }, { default: withCtx(() => [_cache[1] || (_cache[1] = createTextVNode(" Learn more ")), createVNode(unref(N8nIcon_default), { icon: "arrow-up-right" })]), _: 1 }), createVNode(unref(N8nButton_default), { type: "primary", onClick: createResolver }, { default: withCtx(() => [createTextVNode(toDisplayString(unref(i18n).baseText("credentialResolver.addNew")), 1)]), _: 1 })]), _: 1 })])) : (openBlock(), createElementBlock("div", _hoisted_2, [createBaseVNode("div", { class: normalizeClass(_ctx.$style.actionBar) }, [createVNode(unref(N8nButton_default), { class: "ml-auto", type: "primary", icon: "plus", onClick: createResolver }, { default: withCtx(() => [createTextVNode(toDisplayString(unref(i18n).baseText("credentialResolver.addNew")), 1)]), _: 1 })], 2), (openBlock(true), createElementBlock(Fragment, null, renderList(unref(resolvers), (resolver) => { return openBlock(), createBlock(unref(N8nCard_default), { key: resolver.id, class: "mb-2xs", hoverable: "", onClick: withModifiers(($event) => editResolver(resolver), ["stop"]) }, { prepend: withCtx(() => [createVNode(unref(N8nIcon_default), { icon: "resolver", color: "text-dark", size: 28 })]), header: withCtx(() => [createVNode(unref(N8nText_default), { tag: "h2", bold: "" }, { default: withCtx(() => [createTextVNode(toDisplayString(resolver.name), 1)]), _: 2 }, 1024)]), append: withCtx(() => [createVNode(unref(N8nActionToggle_default), { actions: actions.value, onAction: ($event) => onAction($event, resolver) }, null, 8, ["actions", "onAction"])]), default: withCtx(() => [createBaseVNode("div", { class: normalizeClass(_ctx.$style.cardDescription) }, [ createVNode(unref(N8nText_default), { color: "text-light", size: "small" }, { default: withCtx(() => [createTextVNode(toDisplayString(unref(resolverTypes).find(({ name }) => name === resolver.type)?.displayName || resolver.type) + " | ", 1)]), _: 2 }, 1024), createVNode(unref(N8nText_default), { color: "text-light", size: "small" }, { default: withCtx(() => [ createTextVNode(toDisplayString(unref(i18n).baseText("credentialResolver.item.updated")) + " ", 1), createVNode(TimeAgo_default, { date: resolver.updatedAt.toString() }, null, 8, ["date"]), _cache[2] || (_cache[2] = createTextVNode(" | ")) ]), _: 2 }, 1024), createVNode(unref(N8nText_default), { color: "text-light", size: "small" }, { default: withCtx(() => [createTextVNode(toDisplayString(unref(i18n).baseText("credentialResolver.item.created")) + " " + toDisplayString(unref(import_dateformat.default)(resolver.createdAt, getDateFormat(resolver.createdAt))), 1)]), _: 2 }, 1024) ], 2)]), _: 2 }, 1032, ["onClick"]); }), 128))]))], 2); }; } }); var ResolversView_vue_vue_type_style_index_0_lang_module_default = { container: "_container_1gz34_2", headerContainer: "_headerContainer_1gz34_7", actionBar: "_actionBar_1gz34_13", headerTitle: "_headerTitle_1gz34_19", iconCardContainer: "_iconCardContainer_1gz34_25", iconCard: "_iconCard_1gz34_25", link: "_link_1gz34_57" }; var ResolversView_default = /* @__PURE__ */ __plugin_vue_export_helper_default(ResolversView_vue_vue_type_script_setup_true_lang_default, [["__cssModules", { "$style": ResolversView_vue_vue_type_style_index_0_lang_module_default }]]); export { ResolversView_default as default };