{"version":3,"sources":["webpack:///./src/views/Signup.vue","webpack:///./src/models/CreateInviteByCodeRequest.ts","webpack:///./src/models/RegisterRequest.ts","webpack:///./src/views/Signup.vue?9a61","webpack:///./src/views/Signup.vue?8843","webpack:///./src/views/Signup.vue?d966","webpack:///./src/models/CreateInviteByCodeResponse.ts","webpack:///./src/store/InviteStore.ts"],"names":["_c","staticClass","attrs","_vm","_s","on","_v","isAdminSigninPage","ref","preventDefault","required","model","value","invitationCode","callback","$$v","expression","validateInvitationCode","$event","useInvitationCodes","$t","email","signupEmail","usePasswordlessSignup","passwordVisible","passwordMinLength","password","confirmPasswordVisible","confirmPassword","onSignupWithEmailClick","domProps","staticRenderFns","render","CreateInviteByCodeRequest","constructor","code","this","RegisterRequestBase","EmailWithoutPasswordRegisterRequest","EmailWithPasswordRegisterRequest","Signup","Vue","loading","validatingCode","invitationCodeValid","signupWithEmailSelected","inviteCreated","inviteEmailSentSuccessfully","firstName","lastName","identityVerificationFragment","emailIsTaken","AppStore","appTheme","dark","appThemes","_this$appTheme","_this$appTheme2","appName","process","$route","query","role","console","log","signUpFormRef","$refs","signUpForm","validate","isValid","valid","v","test","emailIsAvailable","length","number","passwordContainsUppercase","passwordContainsLowercase","passwordContainsNumber","Routes","signin","_AppStore$features","features","invitationCodes","selectSignupWithEmailMethod","clearServerErrors","request","response","InviteStore","createInviteByCode","CreateInviteByCodeResponse","emailSent","useOrganizationAccessCodes","organization","accessCode","organizationAccessCode","AuthStore","registerWithEmailWithoutPassword","registerWithEmailWithPassword","e","_e$response","_e$response$data","_e$response$data$mess","isAxiosError","data","message","includes","$toast","error","invitationCodeForm","codeIsValid","validateCode","_AppStore$features2","_AppStore$features2$o","organizationAccessCodes","enabled","OrganizationStore","visitor","organizationIsVisitor","window","__signup","c","toString","$router","push","access","__decorate","Component","components","component","name","store","state","unregisterModule","warn","InviteStoreModule","InviteStoreModule_1","VuexModule","err","errString","NotificationStore","addSnackbarNotification","SnackbarNotification","SnackbarNotificationType","Error","inviteToken","path","baseURL","ApiService","get","status","handleError","post","Action","Module","dynamic","namespaced","getModule"],"mappings":"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","file":"js/chunk-175acb16.c1f8ccd2.js","sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',{staticClass:\"signup-page\",attrs:{\"fluid\":\"\"}},[_c('v-row',{attrs:{\"no-gutters\":\"\",\"justify\":\"center\"}},[_c('v-col',{staticClass:\"mt-4\",attrs:{\"cols\":\"12\"}},[_c('v-container',[_c('v-row',{staticClass:\"my-4\",attrs:{\"justify\":\"center\"}},[_c('span',{staticClass:\"title\"},[_vm._v(_vm._s(_vm.appName))])])],1),_c('v-card',{staticClass:\"signup-page__card pa-3 mx-auto\",attrs:{\"max-width\":\"571\"}},[_c('v-card-title',{staticClass:\"signup-page__card-title\"},[_c('span',{staticClass:\"primary--text\"},[_vm._v(_vm._s(_vm.$t('views.signup.title')))])]),(!_vm.signupWithEmailSelected)?[_c('v-card-text',{attrs:{\"align\":\"center\"}},[_c('v-btn',{attrs:{\"block\":\"\",\"color\":\"primary\",\"loading\":_vm.validatingCode},on:{\"click\":_vm.selectSignupWithEmailMethod}},[_vm._v(\" \"+_vm._s(_vm.$t('views.signup.action.email.label'))+\" \")]),(_vm.isAdminSigninPage)?[_c('v-container',{staticClass:\"my-5\"},[_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-divider'),_vm._v(\" \"),_c('span',{staticClass:\"mx-5\"},[_vm._v(\"or\")]),_vm._v(\" \"),_c('v-divider')],1)],1),_c('v-container',{staticClass:\"mt-5\"},[_c('v-row',[_c('v-btn',{attrs:{\"block\":\"\",\"color\":\"#00a2ed\",\"dark\":\"\",\"elevation\":2,\"loading\":false,\"disabled\":false},on:{\"click\":_vm.onSigninWithMsalClick}},[_c('v-icon',{staticClass:\"mr-2\"},[_vm._v(\"mdi-microsoft-office\")]),_vm._v(\" \"+_vm._s(_vm.$t('views.signup.action.externalLogin.microsoft365.label'))+\" \")],1),_c('v-btn',{staticClass:\"mt-4\",attrs:{\"block\":\"\",\"color\":\"#de5246\",\"dark\":\"\",\"elevation\":2,\"loading\":false,\"disabled\":false},on:{\"click\":_vm.onSigninWithGoogleClick}},[_c('v-icon',{staticClass:\"mr-2\"},[_vm._v(\"mdi-google\")]),_vm._v(\" \"+_vm._s(_vm.$t('views.signup.action.externalLogin.google.label'))+\" \")],1)],1)],1)]:_vm._e()],2)]:_vm._e(),(_vm.signupWithEmailSelected && _vm.useInvitationCodes && !_vm.invitationCodeValid && !_vm.inviteCreated)?[_c('v-card-text',[_c('v-form',{ref:\"invitationCodeForm\",staticClass:\"signup-page__invitation-code-form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.validateInvitationCode.apply(null, arguments)}}},[_c('div',{staticClass:\"signin-page__card-text mb-1\"},[_vm._v(\" \"+_vm._s(_vm.$t('views.signup.invitationCode.form.prompt'))+\" \")]),_c('v-text-field',{attrs:{\"label\":_vm.$t('views.signup.invitationCode.form.invitationCode.label'),\"placeholder\":_vm.$t('views.signup.invitationCode.form.invitationCode.placeholder'),\"type\":\"text\",\"persistent-hint\":\"\",\"rules\":[_vm.rules.required]},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _vm.validateInvitationCode.apply(null, arguments)}},model:{value:(_vm.invitationCode),callback:function ($$v) {_vm.invitationCode=$$v},expression:\"invitationCode\"}})],1)],1),_c('v-card-actions',{staticClass:\"signup-page__button-container\"},[_c('v-btn',{attrs:{\"color\":\"primary\",\"loading\":_vm.validatingCode},on:{\"click\":_vm.validateInvitationCode}},[_vm._v(\" \"+_vm._s(_vm.$t('views.signup.invitationCode.form.submit.button.label'))+\" \")])],1)]:_vm._e(),(_vm.signupWithEmailSelected && \n (\n !_vm.useInvitationCodes || \n (_vm.useInvitationCodes && _vm.invitationCodeValid && !_vm.inviteCreated)\n ))?[_c('v-card-text',[_c('v-form',{ref:\"signUpForm\",staticClass:\"signup-page__invitation-code-form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.onSignupWithEmailClick.apply(null, arguments)}}},[_c('div',{staticClass:\"signin-page__card-text mb-1\"},[(_vm.useInvitationCodes)?[_vm._v(\" \"+_vm._s(_vm.$t('views.signup.email.form.promptForSendingEmailConfirmation'))+\" \")]:[_vm._v(\" \"+_vm._s(_vm.$t('views.signup.email.form.prompt'))+\" \")]],2),_c('v-text-field',{attrs:{\"label\":_vm.$t('views.signup.email.form.email.label'),\"placeholder\":_vm.$t('views.signup.email.form.email.placeholder'),\"type\":\"text\",\"autocomplete\":\"email\",\"rules\":[_vm.rules.email, _vm.rules.required, _vm.rules.emailIsAvailable]},model:{value:(_vm.signupEmail),callback:function ($$v) {_vm.signupEmail=$$v},expression:\"signupEmail\"}}),(_vm.usePasswordlessSignup)?void 0:[_c('v-text-field',{attrs:{\"append-icon\":_vm.passwordVisible ? 'mdi-eye' : 'mdi-eye-off',\"type\":_vm.passwordVisible ? 'text' : 'password',\"label\":_vm.$t('views.resetPassword.form.password.label'),\"placeholder\":_vm.$t('views.resetPassword.form.password.placeholder'),\"autocomplete\":\"new-password\",\"persistent-hint\":\"\",\"rules\":[_vm.rules.passwordMinLength]},on:{\"click:append\":function($event){_vm.passwordVisible = !_vm.passwordVisible}},model:{value:(_vm.password),callback:function ($$v) {_vm.password=$$v},expression:\"password\"}}),_c('v-text-field',{attrs:{\"append-icon\":_vm.confirmPasswordVisible ? 'mdi-eye' : 'mdi-eye-off',\"type\":_vm.confirmPasswordVisible ? 'text' : 'password',\"label\":_vm.$t('views.resetPassword.form.confirmPassword.label'),\"placeholder\":_vm.$t('views.resetPassword.form.confirmPassword.placeholder'),\"autocomplete\":\"new-password\",\"persistent-hint\":\"\",\"rules\":[_vm.rules.confirmPassword]},on:{\"click:append\":function($event){_vm.confirmPasswordVisible = !_vm.confirmPasswordVisible}},model:{value:(_vm.confirmPassword),callback:function ($$v) {_vm.confirmPassword=$$v},expression:\"confirmPassword\"}})]],2)],1),_c('v-card-actions',{staticClass:\"signup-page__button-container\"},[_c('v-btn',{attrs:{\"color\":\"primary\",\"loading\":_vm.loading,\"disabled\":false},on:{\"click\":_vm.onSignupWithEmailClick}},[_vm._v(\" \"+_vm._s(_vm.$t('generic.action.submit.label'))+\" \")])],1)]:_vm._e(),(_vm.inviteCreated)?[_c('v-card-text',[_c('v-form',{ref:\"invitationCodeSentForm\",staticClass:\"signup-page__invitation-code-form\"},[_c('div',{staticClass:\"signin-page__card-text mb-3\"},[_vm._v(\" \"+_vm._s(_vm.$t('views.signup.email.form.submit.success.title'))+\" \")]),_c('div',{staticClass:\"signin-page__card-text mb-1\"},[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.$t('views.signup.email.form.submit.success.body'))}})])])],1)]:_vm._e()],2),_c('v-card',{staticClass:\"signup-page__card pa-3 mx-auto my-6\",attrs:{\"max-width\":\"571\"}},[_c('v-card-title',{staticClass:\"signup-page__card-title\"},[_c('span',{staticClass:\"primary--text\"},[_vm._v(\" \"+_vm._s(_vm.$t('views.signup.alreadyHaveAnAccount.title'))+\" \")])]),_c('v-card-text',{attrs:{\"align\":\"center\"}},[_c('v-btn',{attrs:{\"block\":\"\",\"color\":\"primary\",\"to\":_vm.signinRoute}},[_vm._v(\" \"+_vm._s(_vm.$t('generic.action.login.label'))+\" \")])],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default class CreateInviteByCodeRequest {\r\n email: string;\r\n code: string;\r\n\r\n constructor(email: string, code: string) {\r\n this.email = email;\r\n this.code = code;\r\n }\r\n}\r\n","class RegisterRequestBase {\r\n firstName: string;\r\n lastName: string;\r\n identityVerificationFragment: string;\r\n organizationAccessCode: string;\r\n}\r\n\r\nexport class PhoneNumberWithoutPasswordRegisterRequest extends RegisterRequestBase {\r\n phoneNumber: string;\r\n}\r\n\r\nexport class EmailWithoutPasswordRegisterRequest extends RegisterRequestBase {\r\n email: string;\r\n}\r\n\r\nexport class EmailWithPasswordRegisterRequest extends EmailWithoutPasswordRegisterRequest {\r\n password: string;\r\n confirmPassword: string;\r\n}\r\n\r\nexport default class InviteRegisterRequest extends RegisterRequestBase {\r\n inviteToken: string;\r\n}\r\n","\r\nimport Routes from \"@/Routes\";\r\nimport { Component, Vue } from \"vue-property-decorator\";\r\nimport { RouteConfig } from \"vue-router\";\r\nimport InviteStore from \"@/store/InviteStore\";\r\nimport CreateInviteByCodeResponse from \"@/models/CreateInviteByCodeResponse\";\r\nimport CreateInviteByCodeRequest from \"@/models/CreateInviteByCodeRequest\";\r\nimport AppStore from \"@/store/AppStore\";\r\nimport { EmailWithoutPasswordRegisterRequest, EmailWithPasswordRegisterRequest } from \"@/models/RegisterRequest\";\r\nimport AuthStore from \"@/store/AuthStore\";\r\nimport Organization from \"@/models/Organization\";\r\nimport OrganizationStore from \"@/store/OrganizationStore\";\r\nimport { AxiosError } from \"axios\";\r\nimport Vuetify from \"vuetify/lib\";\r\nimport IAppTheme from \"@/../../Main/src/themes/IAppTheme\";\r\n\r\n@Component({\r\n components: {\r\n },\r\n})\r\nexport default class Signup extends Vue {\r\n loading = false;\r\n validatingCode = false;\r\n invitationCode = \"\";\r\n invitationCodeValid = false;\r\n signupWithEmailSelected = false;\r\n signupEmail = \"\";\r\n inviteCreated = false;\r\n inviteEmailSentSuccessfully = false;\r\n\r\n firstName = \"\";\r\n lastName = \"\";\r\n identityVerificationFragment = \"\";\r\n emailIsTaken = false;\r\n\r\n passwordVisible = false;\r\n confirmPasswordVisible = false;\r\n password = \"\";\r\n confirmPassword = \"\";\r\n\r\n get appTheme(): IAppTheme {\r\n return AppStore.appTheme\r\n }\r\n\r\n get appThemeDark(): boolean {\r\n return this.appTheme.dark;\r\n }\r\n\r\n get appThemes(): IAppTheme[] {\r\n return AppStore.appThemes\r\n }\r\n \r\n get appName() {\r\n return this.appTheme?.appName ? this.appTheme?.appName : process.env.VUE_APP_NAME\r\n }\r\n\r\n get isAdminSigninPage() {\r\n return this.$route.query.role && this.$route.query.role === \"admin\";\r\n // return process.env.NODE_ENV === \"development\"\r\n // ? true\r\n // : process.env.NODE_ENV === \"production\" && \r\n }\r\n\r\n get signUpFormIsValid(): boolean {\r\n console.log(\"getter running ...\")\r\n const signUpFormRef = this.$refs.signUpForm as any;\r\n if (!signUpFormRef){\r\n return false;\r\n }\r\n if (this.signupEmail && !this.emailIsTaken){\r\n console.log(\"validating\");\r\n signUpFormRef.validate();\r\n }\r\n const isValid = signUpFormRef.valid;\r\n console.log(\"isValid:\", isValid)\r\n return isValid;\r\n }\r\n\r\n get rules(): { [key: string]: any; } {\r\n return {\r\n required: (v: any) => \r\n !!v || \r\n this.$t('generic.validation.required'),\r\n email: (v: any) => \r\n /.+@.+/.test(v) || \r\n this.$t('generic.validation.validEmail'),\r\n emailIsAvailable: (v: any) => \r\n !this.emailIsTaken || \r\n this.$t('generic.validation.emailIsAvailable'),\r\n passwordMinLength: (v: any) =>\r\n v.length >= 10 || \r\n this.$t('generic.validation.passwordMinLength', { number: 10 }),\r\n passwordContainsUppercase: (v: any) => \r\n /[A-Z]/.test(v) ||\r\n this.$t('generic.validation.passwordContainsUppercase'),\r\n passwordContainsLowercase: (v: any) => \r\n /[a-z]/.test(v) ||\r\n this.$t('generic.validation.passwordContainsLowercase'),\r\n passwordContainsNumber: (v: any) => \r\n /[0-9]/.test(v) || \r\n this.$t('generic.validation.passwordContainsNumber'),\r\n confirmPassword: (v: any) => \r\n this.password === this.confirmPassword ||\r\n this.$t('generic.validation.confirmPassword')\r\n }\r\n }\r\n\r\n get signinRoute(): RouteConfig {\r\n return Routes.signin;\r\n }\r\n\r\n get useInvitationCodes(): boolean {\r\n return AppStore.features?.invitationCodes\r\n ? true \r\n : false;\r\n }\r\n\r\n selectSignupWithEmailMethod() {\r\n this.signupWithEmailSelected = true;\r\n }\r\n\r\n clearServerErrors(){\r\n this.emailIsTaken = false;\r\n }\r\n\r\n async onSignupWithEmailClick() {\r\n (this.$refs.signUpForm as any).validate();\r\n if (!this.signupEmail || (this.useInvitationCodes && !this.invitationCode)) {\r\n return;\r\n }\r\n this.clearServerErrors();\r\n this.loading = true;\r\n if (this.useInvitationCodes){\r\n const request = new CreateInviteByCodeRequest(this.signupEmail, this.invitationCode);\r\n const response = await InviteStore.createInviteByCode(request);\r\n if (response instanceof CreateInviteByCodeResponse) {\r\n this.inviteCreated = true;\r\n this.inviteEmailSentSuccessfully = response.emailSent;\r\n }\r\n } else {\r\n let request = null;\r\n if (this.usePasswordlessSignup){\r\n request = new EmailWithoutPasswordRegisterRequest();\r\n } else {\r\n request = new EmailWithPasswordRegisterRequest();\r\n \r\n request.password = this.password;\r\n request.confirmPassword = this.confirmPassword;\r\n }\r\n request.email = this.signupEmail;\r\n request.firstName = this.firstName;\r\n request.lastName = this.lastName;\r\n \r\n request.identityVerificationFragment = this.identityVerificationFragment;\r\n if (this.useOrganizationAccessCodes && this.organization && this.organization.accessCode){\r\n request.organizationAccessCode = this.organization.accessCode;\r\n }\r\n let response = null;\r\n try {\r\n response = this.usePasswordlessSignup\r\n ? await AuthStore.registerWithEmailWithoutPassword(request as EmailWithoutPasswordRegisterRequest)\r\n : await AuthStore.registerWithEmailWithPassword(request as EmailWithPasswordRegisterRequest);\r\n } catch(e){\r\n if ((e as any).isAxiosError){\r\n if ((e as AxiosError).response?.data?.message?.includes(\"Email is already taken\")){\r\n this.emailIsTaken = true;\r\n }\r\n }\r\n }\r\n \r\n // No need to handle response separately, error will be notifified or and success will cause a page load\r\n }\r\n (this.$refs.signUpForm as any).validate();\r\n this.loading = false;\r\n }\r\n\r\n async onSigninWithMsalClick() {\r\n this.$toast.error('This feature has not been enable in this version.')\r\n // this.msalLoginInProgress = true;\r\n\r\n // try {\r\n // await this.$msal.signIn();\r\n // this.msalLoginInProgress = false;\r\n // } catch (e) {\r\n // const message = \"There was a problem signing you in with an external provider. Try again later or contact support.\";\r\n // NotificationStore.addSnackbarNotification(new SnackbarNotification(SnackbarNotificationType.Error, message));\r\n // this.msalLoginInProgress = false;\r\n // }\r\n }\r\n\r\n async onSigninWithGoogleClick() {\r\n this.$toast.error('This feature has not been enable in this version.')\r\n // this.googleLoginInProgress = true;\r\n // try {\r\n // await this.$firebaseAuth.signInWithGoogle();\r\n // } catch (e) {\r\n // const message = \"There was a problem signing you in with an external provider. Try again later or contact support.\";\r\n // NotificationStore.addSnackbarNotification(new SnackbarNotification(SnackbarNotificationType.Error, message));\r\n // }\r\n\r\n // this.googleLoginInProgress = false;\r\n }\r\n\r\n async validateInvitationCode() {\r\n if (!(this.$refs.invitationCodeForm as any).validate()) {\r\n return;\r\n }\r\n this.validatingCode = true;\r\n const codeIsValid = await InviteStore.validateCode(this.invitationCode);\r\n if (codeIsValid) {\r\n this.invitationCodeValid = true;\r\n }\r\n this.validatingCode = false;\r\n }\r\n\r\n get useOrganizationAccessCodes(): boolean {\r\n return AppStore.features?.organizationAccessCodes?.enabled\r\n ? true \r\n : false;\r\n }\r\n\r\n get organization(): Organization | null {\r\n return OrganizationStore.organization;\r\n }\r\n\r\n get organizationIsVisitor(): boolean {\r\n return this.organization\r\n ? this.organization.visitor\r\n : false;\r\n }\r\n\r\n get usePasswordlessSignup(): boolean {\r\n return this.organizationIsVisitor;\r\n }\r\n\r\n async mounted(){\r\n if (!this.isAdminSigninPage){\r\n this.signupWithEmailSelected = true;\r\n }\r\n }\r\n\r\n async created() {\r\n (window as any).__signup = this;\r\n if (this.useInvitationCodes){\r\n this.invitationCode = this.$route.query.c ? this.$route.query.c.toString() : \"\";\r\n if (this.invitationCode) {\r\n await this.validateInvitationCode();\r\n }\r\n }\r\n if (this.useOrganizationAccessCodes){\r\n if (!this.organization || !this.organization.accessCode){\r\n this.$router.push(Routes.access);\r\n }\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Signup.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Signup.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Signup.vue?vue&type=template&id=6bd70be0&\"\nimport script from \"./Signup.vue?vue&type=script&lang=ts&\"\nexport * from \"./Signup.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import UserInvite from \"./UserInvite\";\r\n\r\nexport default class CreateInviteByCodeResponse {\r\n emailSent: boolean;\r\n\r\n constructor(emailSent: boolean) {\r\n this.emailSent = emailSent;\r\n }\r\n}\r\n","import { Module, VuexModule, Mutation, Action, getModule } from 'vuex-module-decorators'\r\nimport store from '@/store';\r\nimport UserInvite from '@/models/UserInvite';\r\nimport ApiService from '@/services/ApiService';\r\nimport NotificationStore from './NotificationStore';\r\nimport SnackbarNotification, { SnackbarNotificationType } from '@/models/SnackbarNotification';\r\nimport CreateInviteByCodeRequest from '@/models/CreateInviteByCodeRequest';\r\nimport CreateInviteByCodeResponse from '@/models/CreateInviteByCodeResponse';\r\n\r\nexport interface IInviteStoreState {\r\n}\r\n\r\n// Hack due to issues\r\n// https://github.com/championswimmer/vuex-module-decorators/issues/131\r\n// https://github.com/championswimmer/vuex-module-decorators/issues/189\r\n\r\nconst name = 'invite';\r\nif (store && store.state[name]) {\r\n try{\r\n store.unregisterModule(name);\r\n } catch (e) {\r\n console.warn(\"Unregister store module workaround error, ignoring ...\")\r\n }\r\n}\r\n\r\n@Module({\r\n dynamic: true,\r\n namespaced: true,\r\n store,\r\n name\r\n})\r\nexport class InviteStoreModule extends VuexModule implements IInviteStoreState {\r\n static baseURL = \"/api/invite\";\r\n\r\n static handleError(err: any) {\r\n const errString = err.toString();\r\n NotificationStore.addSnackbarNotification(new SnackbarNotification(SnackbarNotificationType.Error, errString));\r\n console.error(err);\r\n }\r\n\r\n @Action\r\n public async validateToken(inviteToken: string): Promise {\r\n const path = InviteStoreModule.baseURL + \"/validateToken/\" + inviteToken;\r\n try {\r\n const response = await ApiService.get(path);\r\n if (response.status === 200) return true;\r\n return false;\r\n } catch (err) {\r\n InviteStoreModule.handleError(\"Invitation token is not valid, has expired or was already used\");\r\n return false;\r\n }\r\n }\r\n\r\n @Action\r\n public async validateCode(code: string): Promise {\r\n const path = InviteStoreModule.baseURL + \"/validateCode/\" + code;\r\n try {\r\n const response = await ApiService.get(path);\r\n if (response.status === 200) return true;\r\n return false;\r\n } catch (err) {\r\n InviteStoreModule.handleError(\"Invitation code is not valid, has expired or was already used\");\r\n return false;\r\n }\r\n }\r\n\r\n @Action\r\n public async createInviteByCode(request: CreateInviteByCodeRequest): Promise {\r\n const path = InviteStoreModule.baseURL + \"/createInviteByCode\";\r\n try {\r\n const response = await ApiService.post(path, request);\r\n return new CreateInviteByCodeResponse(response.data.emailSent);\r\n } catch (err) {\r\n InviteStoreModule.handleError(\"Error when processing the request. Please check if the invitation code is correct and email is valid.\");\r\n return null;\r\n }\r\n }\r\n}\r\n\r\nconst InviteStore = getModule(InviteStoreModule);\r\nexport default InviteStore;"],"sourceRoot":""}