n8n-editor-ui
Version:
Workflow Editor UI for n8n
62 lines (61 loc) • 2.44 kB
JavaScript
import { D as createElementBlock, P as defineComponent, Z as onMounted, et as openBlock } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
import { gt as useI18n } from "./_MapCache-B159LOu5.js";
import { v as useRoute, y as useRouter } from "./truncate-Dc5upPom.js";
import "./empty-4-N75rxI.js";
import { Kn as useLoadingService, o as useWorkflowsStore } from "./useTelemetry-C797TaYa.js";
import { Io as VIEWS } from "./constants-CX1ozgFz.js";
import "./merge-BArJwbQo.js";
import "./_baseOrderBy-DL6Sy5xK.js";
import "./dateformat-CMLc6OKJ.js";
import "./useDebounce-RgPaX171.js";
import "./cloudPlan.store-nppjm48S.js";
import { t as useTemplatesStore } from "./templates.store-CSx5YxpE.js";
var WorkflowOnboardingView_default = /* @__PURE__ */ defineComponent({
__name: "WorkflowOnboardingView",
setup(__props) {
const loadingService = useLoadingService();
const templateStore = useTemplatesStore();
const workflowsStore = useWorkflowsStore();
const router = useRouter();
const route = useRoute();
const i18n = useI18n();
const openWorkflowTemplate = async (templateId) => {
try {
loadingService.startLoading();
const template = await templateStore.getFixedWorkflowTemplate(templateId);
if (!template) throw new Error();
const name = i18n.baseText("onboarding.title", { interpolate: { name: template.name } });
const workflow = await workflowsStore.createNewWorkflow({
name,
connections: template.workflow.connections,
nodes: template.workflow.nodes.map(workflowsStore.convertTemplateNodeToNodeUi),
pinData: template.workflow.pinData,
settings: template.workflow.settings,
meta: { onboardingId: templateId }
});
await router.replace({
name: VIEWS.WORKFLOW,
params: { name: workflow.id },
query: { onboardingId: templateId }
});
loadingService.stopLoading();
} catch (e) {
await router.replace({ name: VIEWS.NEW_WORKFLOW });
loadingService.stopLoading();
throw new Error(`Could not load onboarding template ${templateId}`);
}
};
onMounted(async () => {
const templateId = route.params.id;
if (!templateId || typeof templateId !== "string") {
await router.replace({ name: VIEWS.NEW_WORKFLOW });
return;
}
await openWorkflowTemplate(templateId);
});
return (_ctx, _cache) => {
return openBlock(), createElementBlock("div");
};
}
});
export { WorkflowOnboardingView_default as default };