n8n-editor-ui
Version:
Workflow Editor UI for n8n
140 lines (139 loc) • 4.56 kB
JavaScript
import { C as computed, It as ref, P as defineComponent, T as createBlock, Z as onMounted, et as openBlock } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
import { gt as useI18n } from "./_MapCache-B159LOu5.js";
import "./src-BW7zuOU1.js";
import "./en-b3uD8cvU.js";
import "./preload-helper-CR0ecmWK.js";
import "./_plugin-vue_export-helper-BwBpWJRZ.js";
import { v as useRoute, y as useRouter } from "./truncate-Dc5upPom.js";
import "./icon-MZ_3fB_h.js";
import "./empty-4-N75rxI.js";
import { nr as useUsersStore } from "./useTelemetry-C797TaYa.js";
import { t as useToast } from "./useToast-ZaUhbG9w.js";
import "./sanitize-html-CgpOSgtK.js";
import "./CalendarDate-DxkU3CHY.js";
import "./path-browserify-B5h_dP_u.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 "./useExternalHooks-CYMS6JpD.js";
import "./useStyles-DhM0cpS7.js";
import "./sso.store-B_c2j1dV.js";
import { t as AuthView_default } from "./AuthView-DDyHoJhx.js";
var SignupView_default = /* @__PURE__ */ defineComponent({
__name: "SignupView",
setup(__props) {
const usersStore = useUsersStore();
const toast = useToast();
const i18n = useI18n();
const router = useRouter();
const route = useRoute();
const FORM_CONFIG = {
title: i18n.baseText("auth.signup.setupYourAccount"),
buttonText: i18n.baseText("auth.signup.finishAccountSetup"),
inputs: [
{
name: "firstName",
properties: {
label: i18n.baseText("auth.firstName"),
maxlength: 32,
required: true,
autocomplete: "given-name",
capitalize: true,
focusInitially: true
}
},
{
name: "lastName",
properties: {
label: i18n.baseText("auth.lastName"),
maxlength: 32,
required: true,
autocomplete: "family-name",
capitalize: true
}
},
{
name: "password",
properties: {
label: i18n.baseText("auth.password"),
type: "password",
validationRules: [{ name: "DEFAULT_PASSWORD_RULES" }],
required: true,
infoText: i18n.baseText("auth.defaultPasswordRequirements"),
autocomplete: "new-password",
capitalize: true
}
},
{
name: "agree",
properties: {
label: i18n.baseText("auth.agreement.label"),
type: "checkbox"
}
}
]
};
const loading = ref(false);
const inviter = ref(null);
const inviterId = ref(null);
const inviteeId = ref(null);
const inviteMessage = computed(() => {
if (!inviter.value) return "";
return i18n.baseText("settings.signup.signUpInviterInfo", { interpolate: {
firstName: inviter.value.firstName,
lastName: inviter.value.lastName
} });
});
onMounted(async () => {
const inviterIdParam = getQueryParameter("inviterId");
const inviteeIdParam = getQueryParameter("inviteeId");
try {
if (!inviterIdParam || !inviteeIdParam) throw new Error(i18n.baseText("auth.signup.missingTokenError"));
inviterId.value = inviterIdParam;
inviteeId.value = inviteeIdParam;
inviter.value = (await usersStore.validateSignupToken({
inviteeId: inviteeId.value,
inviterId: inviterId.value
})).inviter;
} catch (e) {
toast.showError(e, i18n.baseText("auth.signup.tokenValidationError"));
router.replace({ name: VIEWS.SIGNIN });
}
});
async function onSubmit(values) {
if (!inviterId.value || !inviteeId.value) {
toast.showError(new Error(i18n.baseText("auth.signup.tokenValidationError")), i18n.baseText("auth.signup.setupYourAccountError"));
return;
}
try {
loading.value = true;
await usersStore.acceptInvitation({
...values,
inviterId: inviterId.value,
inviteeId: inviteeId.value
});
if (values.agree === true) try {
await usersStore.submitContactEmail(values.email.toString(), values.agree);
} catch {}
await router.push({ name: VIEWS.HOMEPAGE });
} catch (error) {
toast.showError(error, i18n.baseText("auth.signup.setupYourAccountError"));
}
loading.value = false;
}
function getQueryParameter(key) {
return !route.query[key] || typeof route.query[key] !== "string" ? null : route.query[key];
}
return (_ctx, _cache) => {
return openBlock(), createBlock(AuthView_default, {
form: FORM_CONFIG,
"form-loading": loading.value,
subtitle: inviteMessage.value,
onSubmit
}, null, 8, ["form-loading", "subtitle"]);
};
}
});
export { SignupView_default as default };