@tapni/auth 0.0.170 → 0.0.172

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/README.md +2 -0
  2. package/dist/.vite/manifest.json +18 -10
  3. package/dist/.well-known/assetlinks.json +10 -12
  4. package/dist/.well-known/microsoft-identity-association.json +5 -5
  5. package/dist/{Account-6F9eRo1R.js → Account-BVGvxZ85.js} +31 -32
  6. package/dist/{QR-2Izy5Dj4.js → QR-DwjajyG2.js} +3 -3
  7. package/dist/TapniAuth.es.js +1 -1
  8. package/dist/TapniAuth.umd.js +9 -9
  9. package/dist/blank.html +31 -0
  10. package/dist/{install-co2F1hxN.js → install-B8fBS6C4.js} +752 -996
  11. package/dist/site.webmanifest +11 -1
  12. package/dist/style.css +1 -1
  13. package/dist/{web-NrPZl3qD.js → web-XbruGdlD.js} +2 -5
  14. package/package.json +64 -55
  15. package/src/.prettierrc.json +16 -0
  16. package/src/App.vue +249 -265
  17. package/src/components/Language.vue +66 -143
  18. package/src/components/LinkIcon.vue +174 -225
  19. package/src/components/ModalOverlay.vue +47 -50
  20. package/src/components/OTP.vue +64 -94
  21. package/src/components/SSO.vue +80 -111
  22. package/src/components/SSOPick.vue +93 -148
  23. package/src/eslint.config.js +15 -0
  24. package/src/install.js +9 -10
  25. package/src/main.js +54 -57
  26. package/src/mixins/apple.mixin.js +56 -54
  27. package/src/mixins/auth.mixin.js +21 -74
  28. package/src/mixins/facebook.mixin.js +67 -66
  29. package/src/mixins/global.mixin.js +107 -109
  30. package/src/mixins/google.mixin.js +53 -54
  31. package/src/mixins/mfa-auth.mixin.js +68 -68
  32. package/src/mixins/microsoft.mixin.js +67 -75
  33. package/src/mixins/okta.mixin.js +50 -57
  34. package/src/mixins/qr-auth.mixin.js +111 -107
  35. package/src/mixins/saml.mixin.js +97 -48
  36. package/src/router/index.js +6 -6
  37. package/src/routes.js +60 -66
  38. package/src/services/Api.js +55 -57
  39. package/src/services/AuthService.js +75 -75
  40. package/src/services/CompanyService.js +10 -10
  41. package/src/services/DeviceService.js +3 -3
  42. package/src/services/UserService.js +45 -45
  43. package/src/services/UtilService.js +256 -218
  44. package/src/store/auth.js +471 -543
  45. package/src/store/constants.js +1 -1
  46. package/src/store/event-bus.js +22 -22
  47. package/src/store/locales/cn.js +442 -458
  48. package/src/store/locales/de.js +438 -517
  49. package/src/store/locales/en.js +449 -510
  50. package/src/store/locales/es.js +442 -524
  51. package/src/store/locales/fr.js +442 -516
  52. package/src/store/locales/it.js +442 -514
  53. package/src/store/locales/kr.js +442 -491
  54. package/src/store/locales/lang.js +43 -43
  55. package/src/store/locales/sr.js +439 -492
  56. package/src/store/locales/tr.js +436 -487
  57. package/src/store/store.js +6 -6
  58. package/src/views/Account.vue +169 -207
  59. package/src/views/Callback.vue +36 -33
  60. package/src/views/Login.vue +220 -392
  61. package/src/views/MFA.vue +89 -103
  62. package/src/views/QR.vue +25 -28
  63. package/src/views/Register.vue +201 -205
  64. package/src/views/Reset.vue +132 -135
  65. package/src/views/Verify.vue +153 -151
  66. package/src/views/Welcome.vue +61 -60
  67. /package/dist/{web-L3jORB19.js → web-AXRKjAOB.js} +0 -0
  68. /package/dist/{web-5VtGcKeU.js → web-IFGkBi0t.js} +0 -0
  69. /package/dist/{web-AImUTDQQ.js → web-LIfHmYL2.js} +0 -0
@@ -1,217 +1,213 @@
1
1
  <template>
2
- <form class="page-login content-boxed content-boxed-padding" @submit.prevent="submit" autocomplete="on" :style="isModal ? 'max-width: 500px;' : ''">
3
- <a v-if="isModal" @click="close" class="color-black pull-right pointer" style="margin-top: 0px; position: absolute; right: -20px; text-align: right;">
4
- <i class="font-17 color-black">
5
- <img src="https://cdn.tapni.co/icons/down-arrow.png" class="responsive-image" style="width: 35%;"/>
6
- </i>
7
- </a>
8
- <h1 class="bold no-bottom center-text" style="margin-top: 63px;">{{ssoLang[this.appLanguage].register}}</h1>
9
- <p class="half-bottom small-top center-text color-black">
10
- <span v-if="usernameRegister">
11
- t.link/{{username}} {{ssoLang[this.appLanguage].username_is_free}} ✅
12
- <br>
13
-
2
+ <form class="page-login content-boxed content-boxed-padding" @submit.prevent="submit" autocomplete="on" :style="isModal ? 'max-width: 500px;' : ''">
3
+ <a v-if="isModal" @click="close" class="color-black pull-right pointer" style="margin-top: 0px; position: absolute; right: -20px; text-align: right">
4
+ <i class="font-17 color-black">
5
+ <img src="https://cdn.tapni.co/icons/down-arrow.png" class="responsive-image" style="width: 35%" />
6
+ </i>
7
+ </a>
8
+ <h1 class="bold no-bottom center-text" style="margin-top: 63px">{{ ssoLang[this.appLanguage].register }}</h1>
9
+ <p class="half-bottom small-top center-text color-black">
10
+ <span v-if="usernameRegister">
11
+ t.link/{{ username }} {{ ssoLang[this.appLanguage].username_is_free }} ✅
12
+ <br />
13
+ </span>
14
+ </p>
15
+
16
+ <span v-if="emailLogin">
17
+ <div class="page-login-field half-top">
18
+ <i style="padding-top: 15px">
19
+ <img src="https://cdn.tapni.co/icons/mail.png" class="responsive-image" style="width: 60%" />
20
+ </i>
21
+ <input v-model="email" @keydown.space.prevent type="email" :placeholder="ssoLang[this.appLanguage].email" name="email" required />
22
+ <em></em>
23
+ </div>
24
+ <div class="page-login-field half-top">
25
+ <i style="padding-top: 15px">
26
+ <img src="https://cdn.tapni.co/icons/user.png" class="responsive-image" style="width: 50%" />
27
+ </i>
28
+ <input v-model="username" @keydown.space.prevent type="text" autocorrect="off" autocapitalize="off" spellcheck="false" :placeholder="ssoLang[this.appLanguage].username" name="username" required :disabled="usernameRegister" :class="{ 'input-disabled': usernameRegister }" />
29
+ <em></em>
30
+ </div>
31
+ <div class="page-login-field half-top half-bottom">
32
+ <i style="padding-top: 15px">
33
+ <img src="https://cdn.tapni.co/icons/padlock.png" class="responsive-image" style="width: 50%" />
34
+ </i>
35
+ <input v-model="password" :type="revealPassword ? 'text' : 'password'" :placeholder="ssoLang[this.appLanguage].password" name="password" required minlength="8" />
36
+ <em @click="revealPassword = !revealPassword" class="pointer">
37
+ <img v-show="!revealPassword" src="https://cdn.tapni.co/icons/reveal-password.png" class="responsive-image password-reveal-icon" />
38
+ <img v-show="revealPassword" src="https://cdn.tapni.co/icons/hide-password.png" class="responsive-image password-reveal-icon" />
39
+ </em>
40
+ </div>
41
+ <button type="submit" class="button black-button google-button bg-tapni-grey pointer button-90 button-center uppercase button-rounded bold full-top">
42
+ <span v-if="!submitted">{{ formButtonText }}</span>
43
+ <span v-else class="button--loading button__loader"></span>
44
+ </button>
14
45
  </span>
15
- </p>
16
-
17
- <span v-if="emailLogin">
18
- <div class="page-login-field half-top">
19
- <i style="padding-top: 15px;">
20
- <img src="https://cdn.tapni.co/icons/mail.png" class="responsive-image" style="width: 60%;">
21
- </i>
22
- <input v-model="email" @keydown.space.prevent type="email" :placeholder="ssoLang[this.appLanguage].email" name="email" required>
23
- <em></em>
24
- </div>
25
- <div class="page-login-field half-top">
26
- <i style="padding-top: 15px">
27
- <img src="https://cdn.tapni.co/icons/user.png" class="responsive-image" style="width: 50%;">
28
- </i>
29
- <input v-model="username" @keydown.space.prevent type="text"
30
- autocorrect="off" autocapitalize="off" spellcheck="false"
31
- :placeholder="ssoLang[this.appLanguage].username" name="username" required :disabled="usernameRegister"
32
- :class="{'input-disabled': usernameRegister}"
33
- >
34
- <em></em>
46
+ <div class="decoration decoration-lines-thin half-top half-bottom"></div>
47
+
48
+ <!-- Apple Login Button -->
49
+ <a @click="appleLogin" v-if="displayAppleLogin" class="button-center button button-90 google-button pointer">
50
+ <img src="https://cdn.tapni.co/icons/apple-logo.png" style="position: absolute; margin-left: -11px; padding: 8px 0; height: 100%" />
51
+ <span v-if="!appleLoad"> {{ ssoLang[this.appLanguage].sign_up_with }} Apple</span>
52
+ <span v-else class="button--loading-black button__loader"></span>
53
+ </a>
54
+
55
+ <!-- Google Login Button -->
56
+ <a @click="googleLogin" class="button-center button button-90 google-button pointer">
57
+ <img src="https://cdn.tapni.co/icons/g-logo.png" style="position: absolute; margin-left: -9px; padding: 8px 0; height: 100%" />
58
+ <span v-if="!googleLoad">{{ ssoLang[this.appLanguage].sign_up_with }} Google</span>
59
+ <span v-else class="button--loading-black button__loader"></span>
60
+ </a>
61
+
62
+ <!-- Facebook Login Button -->
63
+ <a v-if="displayFacebookLogin" @click="facebookLogin" class="button-center button button-90 google-button pointer">
64
+ <img src="https://cdn.tapni.co/icons/facebook-blue.png" style="position: absolute; margin-left: -10px; padding: 10px 0; height: 100%" />
65
+ <span v-if="!facebookLoad">{{ ssoLang[this.appLanguage].sign_up_with }} Facebook</span>
66
+ <span v-else class="button--loading-black button__loader"></span>
67
+ </a>
68
+
69
+ <!-- Email Login Button -->
70
+ <a @click="emailLogin = true" v-if="!emailLogin" class="button-center button button-90 google-button pointer">
71
+ <img src="https://cdn.tapni.co/icons/mail.png" style="position: absolute; margin-left: -8px; padding: 12px 0; height: 100%" />
72
+ <span>{{ ssoLang[this.appLanguage].sign_up_with }} Email</span>
73
+ </a>
74
+
75
+ <div class="decoration decoration-lines-thin no-bottom"></div>
76
+
77
+ <p class="close-text center-text half-top color-black">
78
+ {{ ssoLang[this.appLanguage].terms_by_registering }} <br />
79
+ <a class="" href="https://tapni.co/policies/terms-of-service">{{ ssoLang[this.appLanguage].terms_of_service }}</a> {{ ssoLang[this.appLanguage].and }} <a href="https://tapni.co/policies/privacy-policy">{{ ssoLang[this.appLanguage].privacy_policy }}</a>
80
+ </p>
81
+ <div class="decoration decoration-lines-thin no-bottom"></div>
82
+ <div v-if="!isModal" class="page-login-links">
83
+ <router-link class="create float-right" to="/verify">{{ ssoLang[this.appLanguage].verify_account }}</router-link>
84
+ <router-link class="forgot float-left" to="/login">{{ ssoLang[this.appLanguage].sign_in }}</router-link>
85
+ <div class="clear"></div>
35
86
  </div>
36
- <div class="page-login-field half-top half-bottom">
37
- <i style="padding-top: 15px">
38
- <img src="https://cdn.tapni.co/icons/padlock.png" class="responsive-image" style="width: 50%;">
39
- </i>
40
- <input v-model="password" :type="revealPassword ? 'text' : 'password'" :placeholder="ssoLang[this.appLanguage].password" name="password" required minlength="8">
41
- <em @click="revealPassword = !revealPassword" class="pointer">
42
- <img v-show="!revealPassword" src="https://cdn.tapni.co/icons/reveal-password.png" class="responsive-image password-reveal-icon">
43
- <img v-show="revealPassword" src="https://cdn.tapni.co/icons/hide-password.png" class="responsive-image password-reveal-icon">
44
- </em>
87
+ <div v-else class="page-login-links" @click="loginAccountModal">
88
+ <a class="forgot center-text pointer small-top"
89
+ >{{ ssoLang[this.appLanguage].or }} <br />
90
+ {{ ssoLang[this.appLanguage].sign_in_with_new }}</a
91
+ >
92
+ <div class="clear"></div>
45
93
  </div>
46
- <button type="submit" class="button black-button google-button bg-tapni-grey pointer button-90 button-center uppercase button-rounded bold full-top">
47
- <span v-if="!submitted">{{formButtonText}}</span>
48
- <span v-else class="button--loading button__loader"></span>
49
- </button>
50
- </span>
51
- <div class="decoration decoration-lines-thin half-top half-bottom"></div>
52
-
53
- <!-- Apple Login Button -->
54
- <a @click="appleLogin" v-if="displayAppleLogin"
55
- class="button-center button button-90 google-button pointer">
56
- <img src="https://cdn.tapni.co/icons/apple-logo.png" style="position: absolute; margin-left: -11px; padding: 8px 0; height: 100%;"/>
57
- <span v-if="!appleLoad"> {{ssoLang[this.appLanguage].sign_up_with}} Apple</span>
58
- <span v-else class="button--loading-black button__loader"></span>
59
- </a>
60
-
61
- <!-- Google Login Button -->
62
- <a @click="googleLogin"
63
- class="button-center button button-90 google-button pointer ">
64
- <img src="https://cdn.tapni.co/icons/g-logo.png" style="position: absolute; margin-left: -9px; padding: 8px 0; height: 100%;"/>
65
- <span v-if="!googleLoad">{{ssoLang[this.appLanguage].sign_up_with}} Google</span>
66
- <span v-else class="button--loading-black button__loader"></span>
67
- </a>
68
-
69
- <!-- Facebook Login Button -->
70
- <a v-if="displayFacebookLogin"
71
- @click="facebookLogin"
72
- class="button-center button button-90 google-button pointer">
73
- <img src="https://cdn.tapni.co/icons/facebook-blue.png" style="position: absolute; margin-left: -10px; padding: 10px 0; height: 100%;"/>
74
- <span v-if="!facebookLoad">{{ssoLang[this.appLanguage].sign_up_with}} Facebook</span>
75
- <span v-else class="button--loading-black button__loader"></span>
76
- </a>
77
-
78
- <!-- Email Login Button -->
79
- <a @click="emailLogin = true" v-if="!emailLogin"
80
- class="button-center button button-90 google-button pointer">
81
- <img src="https://cdn.tapni.co/icons/mail.png" style="position: absolute; margin-left: -8px; padding: 12px 0; height: 100%;"/>
82
- <span>{{ssoLang[this.appLanguage].sign_up_with}} Email</span>
83
- </a>
84
-
85
- <div class="decoration decoration-lines-thin no-bottom"></div>
86
-
87
- <p class="close-text center-text half-top color-black">
88
- {{ssoLang[this.appLanguage].terms_by_registering}} <br>
89
- <a class="" href="https://tapni.co/policies/terms-of-service">{{ssoLang[this.appLanguage].terms_of_service}}</a> {{ssoLang[this.appLanguage].and}} <a href="https://tapni.co/policies/privacy-policy">{{ssoLang[this.appLanguage].privacy_policy}}</a>
90
- </p>
91
- <div class="decoration decoration-lines-thin no-bottom"></div>
92
- <div v-if="!isModal" class="page-login-links">
93
- <router-link class="create float-right" to="/verify">{{ssoLang[this.appLanguage].verify_account}}</router-link>
94
- <router-link class="forgot float-left" to="/login">{{ssoLang[this.appLanguage].sign_in}}</router-link>
95
- <div class="clear"></div>
96
- </div>
97
- <div v-else class="page-login-links" @click="loginAccountModal">
98
- <a class="forgot center-text pointer small-top">{{ssoLang[this.appLanguage].or}} <br> {{ssoLang[this.appLanguage].sign_in_with_new}}</a>
99
- <div class="clear"></div>
100
- </div>
101
- </form>
94
+ </form>
102
95
  </template>
103
96
 
104
97
  <script>
105
- import GoogleMixin from '../mixins/google.mixin'
106
- import FacebookMixin from '../mixins/facebook.mixin'
107
- import AppleMixin from '../mixins/apple.mixin'
108
- import MicrosoftMixin from '../mixins/microsoft.mixin'
109
- import {EventBus} from "../store/event-bus";
110
- import AuthMixin from "../mixins/auth.mixin";
98
+ import GoogleMixin from '../mixins/google.mixin';
99
+ import FacebookMixin from '../mixins/facebook.mixin';
100
+ import AppleMixin from '../mixins/apple.mixin';
101
+ import MicrosoftMixin from '../mixins/microsoft.mixin';
102
+ import { EventBus } from '../store/event-bus';
103
+ import AuthMixin from '../mixins/auth.mixin';
111
104
  export default {
112
- name: 'AuthRegister',
113
- mixins: [GoogleMixin, FacebookMixin, AppleMixin, MicrosoftMixin, AuthMixin],
114
- props: {
115
- isModal: {
116
- type: Boolean,
117
- required: false,
118
- default: false
119
- },
120
- },
121
- data () {
122
- return {
123
- usernameRegister: false,
124
- loading: true,
125
- submitted: false,
126
- formButtonText: 'REGISTER',
127
- username: '',
128
- email: '',
129
- password: '',
130
- revealPassword: false,
131
- emailLogin: true,
132
- invitationCode: '',
133
- referral: ''
134
- }
135
- },
136
- mounted () {
137
- if (!this.isModal) {
138
- if (this.isLoggedIn) {
139
- this.$router.push(this.home)
140
- } else if (!this.$route.query.state && !this.$route.query.oauth && !this.$route.params.oauth) {
141
- EventBus.$emit('ssoEvent', {name: 'setLoading', data: false})
142
- }
143
-
144
- this.invitationCode = this.$route.query.ic || ''
145
-
146
- // Username Registration for Link-In-Bio
147
- if (this.$route.query.username) {
148
- this.usernameRegister = true
149
- this.emailLogin = true
150
- this.username = this.$route.query.username
151
- }
152
-
153
- // Track Referrals from Query or Local Storage
154
- if (this.$route.query.ref) {
155
- this.referral = this.$route.query.ref
156
- } else if (this.$storex.referral) {
157
- this.referral = this.$storex.referral
158
- }
159
- }
160
- },
161
- methods: {
162
- async submit() {
163
- if (this.password.length < 8) return this.errorSnack(this.ssoLang[this.appLanguage].password_8_chars);
164
- if (this.password.search(/[a-z]/) < 0) return this.errorSnack(this.ssoLang[this.appLanguage].password_least_one_lowercase);
165
- if (this.password.search(/[A-Z]/) < 0) return this.errorSnack(this.ssoLang[this.appLanguage].password_least_one_uppercase);
166
- if (this.password.search(/[0-9]/) < 0) return this.errorSnack(this.ssoLang[this.appLanguage].password_least_one_number);
167
-
168
- if (this.submitted) return
169
- this.submitted = true
170
-
171
- this.email = this.email.trim()
172
- this.username = this.username.trim()
173
-
174
- let data = {
175
- response_type: this.response_type,
176
- email: this.email,
177
- username: this.username,
178
- password: this.password,
179
- ic: this.invitationCode,
180
- captchaToken: await this.getCaptchaToken('account_verify'),
181
- ref: this.referral
182
- };
183
-
184
- let response = await this.register(data);
185
- this.submitted = false
186
- if (response.data && response.data.success) {
187
- if (response.data.message === 'SUCCESS_REGISTER') {
188
- if (this.isModal) EventBus.$emit('ssoEvent', {name: 'toggleAddAccountModalVerify', data: false})
189
- else this.$router.push('/verify')
190
- this.successSnack(this.ssoLang[this.appLanguage].register_success);
191
- this.formButtonText = this.ssoLang[this.appLanguage].check_your_inbox
192
- } else if (response.data.message === 'SUCCESS_LOGIN') {
193
- if (this.display !== 'popup') {
194
- await this.loginSetup({ ...response, isModal: data.isModal });
195
- await this.getLoggedInAccounts();
196
- }
197
-
198
- await this.loginSuccess({ ...response, isModal: data.isModal });
199
- }
200
- }
201
- },
202
- close () {
203
- EventBus.$emit('ssoEvent', {name: 'toggleAddAccountModal', data: true})
105
+ name: 'AuthRegister',
106
+ mixins: [GoogleMixin, FacebookMixin, AppleMixin, MicrosoftMixin, AuthMixin],
107
+ props: {
108
+ isModal: {
109
+ type: Boolean,
110
+ required: false,
111
+ default: false
112
+ }
113
+ },
114
+ data() {
115
+ return {
116
+ usernameRegister: false,
117
+ loading: true,
118
+ submitted: false,
119
+ formButtonText: 'REGISTER',
120
+ username: '',
121
+ email: '',
122
+ password: '',
123
+ revealPassword: false,
124
+ emailLogin: true,
125
+ invitationCode: '',
126
+ referral: ''
127
+ };
128
+ },
129
+ mounted() {
130
+ if (!this.isModal) {
131
+ if (this.isLoggedIn) {
132
+ this.$router.push(this.home);
133
+ } else if (!this.$route.query.state && !this.$route.query.oauth && !this.$route.params.oauth) {
134
+ EventBus.$emit('ssoEvent', { name: 'setLoading', data: false });
135
+ }
136
+
137
+ this.invitationCode = this.$route.query.ic || '';
138
+
139
+ // Username Registration for Link-In-Bio
140
+ if (this.$route.query.username) {
141
+ this.usernameRegister = true;
142
+ this.emailLogin = true;
143
+ this.username = this.$route.query.username;
144
+ }
145
+
146
+ // Track Referrals from Query or Local Storage
147
+ if (this.$route.query.ref) {
148
+ this.referral = this.$route.query.ref;
149
+ } else if (this.$storex.referral) {
150
+ this.referral = this.$storex.referral;
151
+ }
152
+ }
153
+ },
154
+ methods: {
155
+ async submit() {
156
+ if (this.password.length < 8) return this.errorSnack(this.ssoLang[this.appLanguage].password_8_chars);
157
+ if (this.password.search(/[a-z]/) < 0) return this.errorSnack(this.ssoLang[this.appLanguage].password_least_one_lowercase);
158
+ if (this.password.search(/[A-Z]/) < 0) return this.errorSnack(this.ssoLang[this.appLanguage].password_least_one_uppercase);
159
+ if (this.password.search(/[0-9]/) < 0) return this.errorSnack(this.ssoLang[this.appLanguage].password_least_one_number);
160
+
161
+ if (this.submitted) return;
162
+ this.submitted = true;
163
+
164
+ this.email = this.email.trim();
165
+ this.username = this.username.trim();
166
+
167
+ let data = {
168
+ response_type: this.response_type,
169
+ email: this.email,
170
+ username: this.username,
171
+ password: this.password,
172
+ ic: this.invitationCode,
173
+ captchaToken: await this.getCaptchaToken('account_verify'),
174
+ ref: this.referral
175
+ };
176
+
177
+ let response = await this.register(data);
178
+ this.submitted = false;
179
+ if (response.data && response.data.success) {
180
+ if (response.data.message === 'SUCCESS_REGISTER') {
181
+ if (this.isModal) EventBus.$emit('ssoEvent', { name: 'toggleAddAccountModalVerify', data: false });
182
+ else this.$router.push('/verify');
183
+ this.successSnack(this.ssoLang[this.appLanguage].register_success);
184
+ this.formButtonText = this.ssoLang[this.appLanguage].check_your_inbox;
185
+ } else if (response.data.message === 'SUCCESS_LOGIN') {
186
+ if (this.display !== 'popup') {
187
+ await this.loginSetup({ ...response, isModal: data.isModal });
188
+ await this.getLoggedInAccounts();
189
+ }
190
+
191
+ await this.loginSuccess({ ...response, isModal: data.isModal });
192
+ }
193
+ }
194
+ },
195
+ close() {
196
+ EventBus.$emit('ssoEvent', { name: 'toggleAddAccountModal', data: true });
197
+ },
198
+ loginAccountModal() {
199
+ EventBus.$emit('ssoEvent', { name: 'toggleAddAccountModalLogin', data: false });
200
+ }
204
201
  },
205
- loginAccountModal () {
206
- EventBus.$emit('ssoEvent', {name: 'toggleAddAccountModalLogin', data: false})
202
+ watch: {
203
+ email(nv) {
204
+ this.$storex.verifyEmail = nv;
205
+ },
206
+ referral(nv) {
207
+ this.$storex.referral = nv;
208
+ }
207
209
  }
208
- },
209
- watch: {
210
- email(nv) { this.$storex.verifyEmail = nv },
211
- referral(nv) { this.$storex.referral = nv }
212
- }
213
- }
210
+ };
214
211
  </script>
215
212
 
216
- <style scoped>
217
- </style>
213
+ <style scoped></style>