@tapni/auth 0.0.169 → 1.0.2

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 (40) hide show
  1. package/dist/.vite/manifest.json +48 -10
  2. package/dist/Account-IR-XgmiM.js +153 -0
  3. package/dist/Apps-CQXLKu2F.js +112 -0
  4. package/dist/CustomApp-FxfYHVid.js +112 -0
  5. package/dist/General-BVjTsECb.js +477 -0
  6. package/dist/{QR-ybXT1KGe.js → QR-B60f-H2Q.js} +11 -11
  7. package/dist/TapniAuth.es.js +1 -1
  8. package/dist/TapniAuth.umd.js +17 -17
  9. package/dist/index.css +193 -0
  10. package/dist/{install-4aK3Wz63.js → install-BOPYSGGa.js} +3669 -3702
  11. package/dist/style.css +1 -1
  12. package/dist/{web-NrPZl3qD.js → web-XbruGdlD.js} +2 -5
  13. package/package.json +3 -3
  14. package/src/App.vue +6 -19
  15. package/src/components/{Language.vue → DELETE_Language.vue} +1 -1
  16. package/src/components/{ModalOverlay.vue → DELETE_ModalOverlay.vue} +2 -2
  17. package/src/components/{OTP.vue → DELETE_OTP.vue} +3 -3
  18. package/src/main.js +1 -0
  19. package/src/mixins/DELETE_mfa-auth.mixin.js +53 -0
  20. package/src/mixins/auth.mixin.js +7 -1
  21. package/src/mixins/global.mixin.js +7 -0
  22. package/src/routes.js +27 -15
  23. package/src/store/auth.js +1 -1
  24. package/src/store/constants.js +2 -6
  25. package/src/store/locales/en.js +28 -3
  26. package/src/views/Account.vue +72 -110
  27. package/src/views/Apps.vue +106 -0
  28. package/src/views/CustomApp.vue +106 -0
  29. package/src/views/General.vue +192 -0
  30. package/src/views/Login.vue +27 -10
  31. package/src/views/QR.vue +1 -1
  32. package/src/views/Security.vue +322 -0
  33. package/src/views/Welcome.vue +10 -4
  34. package/dist/Account-ja1hZJy5.js +0 -113
  35. package/src/mixins/mfa-auth.mixin.js +0 -76
  36. package/src/views/MFA.vue +0 -117
  37. /package/dist/{web-L3jORB19.js → web-AXRKjAOB.js} +0 -0
  38. /package/dist/{web-5VtGcKeU.js → web-IFGkBi0t.js} +0 -0
  39. /package/dist/{web-AImUTDQQ.js → web-LIfHmYL2.js} +0 -0
  40. /package/src/components/{LinkIcon.vue → DELETE_LinkIcon.vue} +0 -0
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- .app-store-icon[data-v-615ed484]{box-shadow:0 4px 10px #00000017;border-radius:12px}#codeInput[data-v-89d98ef3],#emailInput[data-v-89d98ef3],#emailInput[data-v-69a9cfa3]{text-align:center;padding-right:15%;font-size:17px}.fade-enter-to[data-v-17c95816]{opacity:1}.sso-img[data-v-11f19a09]{margin:2px auto 0;width:35px}input[data-v-11f19a09]{margin:0 auto;height:25px}.sso-img[data-v-4f821f65]{margin:2px auto 0;width:35px}input[data-v-4f821f65]{margin:0 auto;height:25px}.link-grid,.user-link-img{width:100%;display:inline-table;position:relative}.link-grid{width:30%;margin:1.6%;padding:1.6%}.link-grid .user-link-img img{border-radius:25%!important}.link-grid .edit-icon{border-radius:20px;right:-3%;top:-3%;position:absolute;z-index:3;max-width:23%;overflow:hidden;min-width:30px}.link-grid .direct-icon{border-radius:20px;left:-3%;top:-3%;position:absolute;z-index:555;max-width:23%;overflow:hidden;min-width:30px}.link-grid .link-text{min-height:20px;margin-top:3px!important;display:block;text-align:center;line-height:normal;overflow-wrap:anywhere}.link-list{width:93%;max-height:67px!important;margin:0 auto;display:flex;border-radius:15px!important;background-color:#fff;border:solid 1px #e8e8e8;position:relative;align-items:center}.link-list .user-link-img{display:inline-block;width:65px;border-radius:25%!important}.link-list .link-text{display:inline-block;padding:18px 0% 17px 10%;font-size:15px;font-weight:500;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;flex:1;text-align:left;border-radius:15px!important}.link-list .edit-icon{border-radius:20px;right:7%;top:30%;position:absolute;z-index:3;width:26px;overflow:hidden}.link-list .switching{width:45px}.link-list .direct-icon{border-radius:20px;left:-2%;top:-13%;position:absolute;z-index:555;width:26px;overflow:hidden}.small{width:22%!important;margin:2% 4% 0%;padding:0%}.small .link-text{margin-top:0!important;font-size:13px}.linkExternal{margin-right:20px;width:20px;display:inline-block!important;height:20px;background:#000;-webkit-mask:url(https://cdn.tapni.co/icons/link-external.svg) no-repeat center;mask:url(https://cdn.tapni.co/icons/link-external.svg) no-repeat center;transform:scale(1.5)}.user-img[data-v-7477a961]{margin:2px auto 0;width:65px}input[data-v-7477a961]{margin:0 auto;height:25px}html *{font-family:Inter,sans-serif}#bodyId{padding-top:3%;max-width:667px!important;margin:1.5% auto auto;height:95%!important;border-radius:20px}.action-block-top .default-text,.action-block-top .default-text:after{border-radius:50%;width:10em!important;height:10em!important}.action-block-top .default-text{margin:10px auto;font-size:3px;position:relative;text-indent:-9999em;border-left:.5em solid #000000;border-top:.5em solid rgba(0,0,0,.2);border-right:.5em solid rgba(0,0,0,.2);border-bottom:.5em solid rgba(0,0,0,.2);-webkit-transform:translateZ(0);-ms-transform:translateZ(0);transform:translateZ(0);-webkit-animation:load8 1.1s infinite linear;animation:load8 1.1s infinite linear}@-webkit-keyframes load8{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes load8{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.smartbanner-ios{background:linear-gradient(to bottom,#f4f4f4,#f4f4f4);box-shadow:0 0 #fff;border-bottom:1px solid #dddddd}.smartbanner-icon{border-radius:16px}.smartbanner-ios .smartbanner-button{font-size:13px;padding:9px 0;height:40px;border-radius:13px;background:#f4f4f4;color:#0a99d2;border:none;box-shadow:none;text-transform:uppercase}.snack-body{display:none;border-radius:40px;font-size:15px!important}#errorSnack{background-color:#fee3e3!important;border:2px solid #edd9d9!important;color:#000}#successSnack{background-color:#eff5eb!important;border:2px solid #e3ecd7!important;color:#000}.grecaptcha-badge{visibility:hidden}.header-logo{position:absolute;left:50%;transform:translate(-50%,-50%);margin-top:0;z-index:2}.header-logo-img{height:40px;margin-top:10px}.container[data-v-992c1e64]{padding:20px 20px 100px!important;display:flex;flex-direction:column;gap:20px}.settingsCard[data-v-992c1e64]{background-color:#fff;padding:20px;border-radius:26px;align-items:center}.device[data-v-992c1e64]{display:flex;align-items:center}h4[data-v-992c1e64]{margin-left:20px;font-weight:700}.middle[data-v-992c1e64]{flex:1}.left img[data-v-992c1e64]{background-color:#f7f8f9;border-radius:20px;padding:10px}.divider[data-v-992c1e64]{height:1px;background-color:#f0f0f0;margin:20px 0}.moreFooter[data-v-992c1e64]{display:flex;align-items:center;justify-content:space-between;padding:0 10px}
1
+ .app-store-icon[data-v-7aad6400]{box-shadow:0 4px 10px #00000017;border-radius:12px}#codeInput[data-v-89d98ef3],#emailInput[data-v-89d98ef3]{text-align:center;padding-right:15%;font-size:17px}.firstRow img[data-v-04b9da4f]{width:25px;height:25px;position:absolute;top:50%;right:0;transform:translate(-50%,-50%)}#emailInput[data-v-69a9cfa3]{text-align:center;padding-right:15%;font-size:17px}.fade-enter-to[data-v-e5fbde19]{opacity:1}.sso-img[data-v-11f19a09]{margin:2px auto 0;width:35px}input[data-v-11f19a09]{margin:0 auto;height:25px}.sso-img[data-v-4f821f65]{margin:2px auto 0;width:35px}input[data-v-4f821f65]{margin:0 auto;height:25px}.link-grid,.user-link-img{width:100%;display:inline-table;position:relative}.link-grid{width:30%;margin:1.6%;padding:1.6%}.link-grid .user-link-img img{border-radius:25%!important}.link-grid .edit-icon{border-radius:20px;right:-3%;top:-3%;position:absolute;z-index:3;max-width:23%;overflow:hidden;min-width:30px}.link-grid .direct-icon{border-radius:20px;left:-3%;top:-3%;position:absolute;z-index:555;max-width:23%;overflow:hidden;min-width:30px}.link-grid .link-text{min-height:20px;margin-top:3px!important;display:block;text-align:center;line-height:normal;overflow-wrap:anywhere}.link-list{width:93%;max-height:67px!important;margin:0 auto;display:flex;border-radius:15px!important;background-color:#fff;border:solid 1px #e8e8e8;position:relative;align-items:center}.link-list .user-link-img{display:inline-block;width:65px;border-radius:25%!important}.link-list .link-text{display:inline-block;padding:18px 0% 17px 10%;font-size:15px;font-weight:500;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;flex:1;text-align:left;border-radius:15px!important}.link-list .edit-icon{border-radius:20px;right:7%;top:30%;position:absolute;z-index:3;width:26px;overflow:hidden}.link-list .switching{width:45px}.link-list .direct-icon{border-radius:20px;left:-2%;top:-13%;position:absolute;z-index:555;width:26px;overflow:hidden}.small{width:22%!important;margin:2% 4% 0%;padding:0%}.small .link-text{margin-top:0!important;font-size:13px}.linkExternal{margin-right:20px;width:20px;display:inline-block!important;height:20px;background:#000;-webkit-mask:url(https://cdn.tapni.co/icons/link-external.svg) no-repeat center;mask:url(https://cdn.tapni.co/icons/link-external.svg) no-repeat center;transform:scale(1.5)}.user-img[data-v-ce677789]{margin:2px auto 0;width:65px}input[data-v-ce677789]{margin:0 auto;height:25px}html *{font-family:Inter,sans-serif}#bodyId{padding-top:3%;max-width:667px!important;margin:1.5% auto auto;height:95%!important;border-radius:20px}.action-block-top .default-text,.action-block-top .default-text:after{border-radius:50%;width:10em!important;height:10em!important}.action-block-top .default-text{margin:10px auto;font-size:3px;position:relative;text-indent:-9999em;border-left:.5em solid #000000;border-top:.5em solid rgba(0,0,0,.2);border-right:.5em solid rgba(0,0,0,.2);border-bottom:.5em solid rgba(0,0,0,.2);-webkit-transform:translateZ(0);-ms-transform:translateZ(0);transform:translateZ(0);-webkit-animation:load8 1.1s infinite linear;animation:load8 1.1s infinite linear}@-webkit-keyframes load8{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes load8{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.smartbanner-ios{background:linear-gradient(to bottom,#f4f4f4,#f4f4f4);box-shadow:0 0 #fff;border-bottom:1px solid #dddddd}.smartbanner-icon{border-radius:16px}.smartbanner-ios .smartbanner-button{font-size:13px;padding:9px 0;height:40px;border-radius:13px;background:#f4f4f4;color:#0a99d2;border:none;box-shadow:none;text-transform:uppercase}.snack-body{display:none;border-radius:40px;font-size:15px!important}#errorSnack{background-color:#fee3e3!important;border:2px solid #edd9d9!important;color:#000}#successSnack{background-color:#eff5eb!important;border:2px solid #e3ecd7!important;color:#000}.grecaptcha-badge{visibility:hidden}.header-logo{position:absolute;left:50%;transform:translate(-50%,-50%);margin-top:0;z-index:2}.header-logo-img{height:40px;margin-top:10px}.withBackground[data-v-3e0687c7],.withBackground[data-v-851bd608]{height:50px}[data-v-a6dcb82a] .vue-select{padding:5px 0}[data-v-a6dcb82a] .vue-select .dropdown-icon{color:#1d1d1d;width:25px!important;height:25px!important}[data-v-a6dcb82a] .vue-select .menu-option:hover{background-color:#d9d9d9}[data-v-a6dcb82a] .vue-select .menu-option.focused{background-color:#f4f4f4}[data-v-a6dcb82a] .vue-select .menu-option{border-bottom:1px solid #D9D9D9;font-size:15px;color:#151515}[data-v-a6dcb82a] .vue-select .menu-option:last-child{border-bottom:none}[data-v-a6dcb82a] .vue-select .menu{border-radius:10px;border:none}[data-v-a6dcb82a] .vue-select .control.focused{border:none;box-shadow:none}[data-v-a6dcb82a] .vue-select .control{min-height:54px!important;background-color:#f4f4f4;border:none;border-radius:10px}[data-v-a6dcb82a] .vue-select .menu-option.selected{background-color:#e4e4e4}[data-v-a6dcb82a] .vue-select .indicators-container{padding:5px 15px!important}[data-v-a6dcb82a] .vue-select .value-container{padding:5px 15px}[data-v-a6dcb82a] .vue-select .menu-option{background-color:#f4f4f4}
@@ -11,9 +11,7 @@ var w = { exports: {} };
11
11
  })("$script", function() {
12
12
  var i = document, p = i.getElementsByTagName("head")[0], I = !1, m = "push", S = "readyState", A = "onreadystatechange", s = {}, o = {}, d = {}, f, v;
13
13
  function g(e, t) {
14
- for (var n = 0, u = e.length; n < u; ++n)
15
- if (!t(e[n]))
16
- return I;
14
+ for (var n = 0, u = e.length; n < u; ++n) if (!t(e[n])) return I;
17
15
  return 1;
18
16
  }
19
17
  function h(e, t) {
@@ -36,8 +34,7 @@ var w = { exports: {} };
36
34
  }
37
35
  return setTimeout(function() {
38
36
  h(e, function c(a, W) {
39
- if (a === null)
40
- return _();
37
+ if (a === null) return _();
41
38
  if (!W && !/^https?:\/\//.test(a) && f && (a = a.indexOf(".js") === -1 ? f + a + ".js" : f + a), d[a])
42
39
  return d[a] == 2 ? _() : setTimeout(function() {
43
40
  c(a, !0);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tapni/auth",
3
- "version": "0.0.169",
3
+ "version": "1.0.2",
4
4
  "type": "module",
5
5
  "main": "./dist/TapniAuth.umd.js",
6
6
  "module": "./dist/TapniAuth.es.js",
@@ -34,7 +34,7 @@
34
34
  "@otplib/preset-browser": "^12.0.1",
35
35
  "@recognizebv/capacitor-plugin-msauth": "^3.5.1",
36
36
  "@tapni/capacitor-reactive-localstorage-vue3": "^0.0.17",
37
- "@tapni/styles": "^0.0.3",
37
+ "@tapni/styles": "^0.0.8",
38
38
  "await-to-js": "^3.0.0",
39
39
  "axios": "^1.6.5",
40
40
  "buffer": "^6.0.3",
@@ -43,9 +43,9 @@
43
43
  "vue": "^3.3.11",
44
44
  "vue-cookies": "^1.8.3",
45
45
  "vue-router": "^4.2.5",
46
+ "vue3-select-component": "^0.5.2",
46
47
  "vuex": "^4.0.2",
47
48
  "vuex-router-sync": "v6.0.0-rc.1"
48
-
49
49
  },
50
50
  "devDependencies": {
51
51
  "@rollup/plugin-inject": "^5.0.5",
package/src/App.vue CHANGED
@@ -14,15 +14,6 @@ document.addEventListener('DOMContentLoaded', function() {
14
14
  <template>
15
15
  <div id="ssoapp">
16
16
  <a v-if="display === 'redirect' || renderView.includes('Auth')" href="/" class="header-logo"><img src="data:image/png;base64,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" onerror="this.onerror=null;this.src='https://cdn.tapni.co/images/logo-dark.png';" class="header-logo-img"></a>
17
-
18
- <a v-if="display === 'redirect'"
19
- @click="toggleSSOLanguageModal"
20
- class="font-18 no-border pointer color-black"
21
- style="position: absolute; right: 20px; top: -10px; z-index: 1;">
22
- <span class="lang-icon">{{ appLanguage.toUpperCase() }}</span>
23
- </a>
24
-
25
-
26
17
  <ModalOverlay />
27
18
  <Language v-if="!isModal" />
28
19
  <SSO v-if="!isModal" />
@@ -33,7 +24,7 @@ document.addEventListener('DOMContentLoaded', function() {
33
24
  <AuthLogin v-else-if="initialized && renderView === 'AuthLogin'" :isModal="isModal" />
34
25
  <AuthRegister v-else-if="initialized && renderView === 'AuthRegister'" :isModal="isModal" />
35
26
  <AuthVerify v-else-if="initialized && renderView === 'AuthVerify'" :isModal="isModal" />
36
- <AuthMFA v-else-if="initialized && renderView === 'AuthMFA'" :isModal="isModal" :payload="payload" />
27
+ <AuthSecurity v-else-if="initialized && renderView === 'AuthSecurity'" :isModal="isModal" :payload="payload" />
37
28
  <AuthReset v-else-if="initialized && renderView === 'AuthReset'" />
38
29
  <AuthCallback v-else-if="initialized && renderView === 'AuthCallback'" />
39
30
  <RouterView v-else-if="display !== 'npm'" />
@@ -84,16 +75,15 @@ import AuthWelcome from "@/views/Welcome.vue";
84
75
  import AuthLogin from "@/views/Login.vue";
85
76
  import AuthRegister from "@/views/Register.vue";
86
77
  import AuthVerify from "@/views/Verify.vue";
87
- import AuthMFA from "@/views/MFA.vue";
78
+ import AuthSecurity from "@/views/Security.vue";
88
79
  import AuthReset from "@/views/Reset.vue";
89
80
  import AuthCallback from "@/views/Callback.vue";
90
- import ModalOverlay from "@/components/ModalOverlay.vue";
81
+ import ModalOverlay from "@/components/DELETE_ModalOverlay.vue";
91
82
  import SSO from "@/components/SSO.vue";
92
- import OTP from "@/components/OTP.vue";
93
83
  import SSOPick from "@/components/SSOPick.vue";
94
84
  import {EventBus} from "./store/event-bus.js";
95
85
  import AuthMixin from "@/mixins/auth.mixin.js";
96
- import Language from "@/components/Language.vue";
86
+ import Language from "@/components/DELETE_Language.vue";
97
87
  import ReactiveStorage from '@tapni/capacitor-reactive-localstorage-vue3'
98
88
  import store from './store/auth.js';
99
89
 
@@ -109,9 +99,8 @@ export default {
109
99
  },
110
100
  components: {
111
101
  Language,
112
- OTP,
113
102
  SSOPick,
114
- SSO, ModalOverlay, AuthCallback, AuthReset, AuthVerify, AuthMFA, AuthRegister, AuthLogin, AuthWelcome
103
+ SSO, ModalOverlay, AuthCallback, AuthReset, AuthVerify, AuthSecurity, AuthRegister, AuthLogin, AuthWelcome
115
104
  },
116
105
  props: {
117
106
  viewProp: {
@@ -154,6 +143,7 @@ export default {
154
143
  EventBus.$on('refreshTokenAction',(data) => this.refreshTokenAction({...data, storage: this.$storex}))
155
144
  EventBus.$on('switchAccount',(data) => this.switchAccount(data))
156
145
  EventBus.$on('setToken',(data) => this.setToken(data))
146
+ EventBus.$on('setStorage',(data) => this.setStorage(data))
157
147
  },
158
148
  methods: {
159
149
  async init () {
@@ -184,9 +174,6 @@ export default {
184
174
  document.getElementsByTagName("html")[0].style = ""
185
175
  }
186
176
  },
187
- toggleSSOLanguageModal () {
188
- EventBus.$emit('toggleSSOLanguageModal', true)
189
- }
190
177
  },
191
178
  watch: {
192
179
  viewProp (nv) {
@@ -106,7 +106,7 @@
106
106
 
107
107
  <script>
108
108
  import { EventBus } from "../store/event-bus.js";
109
- import LinkIcon from "./LinkIcon.vue";
109
+ import LinkIcon from "./DELETE_LinkIcon.vue";
110
110
  import UtilService from "../services/UtilService.js";
111
111
  import CONSTANTS from "../store/constants.js";
112
112
  import { Device } from "@capacitor/device";
@@ -35,8 +35,8 @@ export default {
35
35
  // EventBus.$on('togglePasswordModal', this.toggleModal)
36
36
  // EventBus.$on('toggleAddAccountModal', this.toggleModal)
37
37
  // EventBus.$on("toggleAccountSettingsModal", this.toggleModal);
38
- EventBus.$on("toggleSSOLanguageModal", this.toggleModal);
39
- EventBus.$on("toggleOTPModal", this.toggleModal);
38
+ // EventBus.$on("toggleSSOLanguageModal", this.toggleModal);
39
+ // EventBus.$on("toggleOTPField", this.toggleModal);
40
40
  EventBus.$on("toggleSSOModal", this.toggleModal);
41
41
  EventBus.$on("toggleSSOPickModal", this.toggleModal);
42
42
  },
@@ -69,13 +69,13 @@ export default {
69
69
  };
70
70
  },
71
71
  mounted() {
72
- EventBus.$on("toggleOTPModal", this.toggleModal);
72
+ EventBus.$on("toggleOTPField", this.toggleModal);
73
73
  EventBus.$on("closeModal", () => {
74
74
  this.toggle = false;
75
75
  });
76
76
  },
77
77
  beforeDestroy() {
78
- EventBus["_events"]["toggleOTPModal"].pop();
78
+ EventBus["_events"]["toggleOTPField"].pop();
79
79
  },
80
80
  methods: {
81
81
  forceClose() {
@@ -91,7 +91,7 @@ export default {
91
91
 
92
92
  this.loading = true;
93
93
  EventBus.$emit('otpSubmitted', this.otp);
94
- EventBus.$emit("toggleOTPModal")
94
+ EventBus.$emit("toggleOTPField")
95
95
  this.loading = false;
96
96
  },
97
97
  toggleModal() {
package/src/main.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import "@tapni/styles/dist/index.css";
2
+ import "../public/index.css";
2
3
  import { createApp } from 'vue'
3
4
  import RootApp from './App.vue'
4
5
  import router from './router'
@@ -0,0 +1,53 @@
1
+ import QRCodeStyling from "qr-code-styling";
2
+ import { authenticator } from "@otplib/preset-browser";
3
+ import {EventBus} from "@/store/event-bus.js";
4
+
5
+ export default {
6
+ data () {
7
+ return {
8
+ accountDelete: false,
9
+
10
+ changePassword: false,
11
+ password: '',
12
+ passwordRepeat: '',
13
+ currentPassword: '',
14
+
15
+ otpToken: null,
16
+ otpSecret: null,
17
+ mfaEnable: false,
18
+ otp: "",
19
+ qrCodeHash: null,
20
+ qrCodeRefreshInterval: null,
21
+ poolingInterval: null,
22
+ loading: false,
23
+ }
24
+ },
25
+ props: {
26
+ isModal: {
27
+ type: Boolean,
28
+ required: false,
29
+ default: false,
30
+ },
31
+ },
32
+ computed: {
33
+ promptMFA () {
34
+ return false;
35
+ }
36
+ },
37
+ async mounted () {
38
+ if (this.renderView === 'AuthSecurity') {
39
+ await this.getAccountSettings();
40
+ this.generateOTPQrCode();
41
+ }
42
+
43
+ EventBus.$on('otpSubmitted', this.otpSubmitted)
44
+ },
45
+ methods: {
46
+ otpSubmitted(code) {
47
+ this.otpToken = code;
48
+
49
+ // Assuming that the parent component had a method called submit
50
+ this.submit();
51
+ },
52
+ },
53
+ }
@@ -4,6 +4,13 @@ import GlobalMixin from './global.mixin'
4
4
 
5
5
  export default {
6
6
  mixins: [GlobalMixin],
7
+ props: {
8
+ isModal: {
9
+ type: Boolean,
10
+ required: false,
11
+ default: false,
12
+ },
13
+ },
7
14
  computed: {
8
15
  ...mapState([
9
16
  '$storex',
@@ -31,7 +38,6 @@ export default {
31
38
  ...mapActions([
32
39
  'setLoggedInAccounts',
33
40
  'setLoggedInUserId',
34
- 'getRefreshTokens',
35
41
  'setRefreshToken',
36
42
  'unsetRefreshToken',
37
43
  'setToken',
@@ -29,6 +29,13 @@ export default {
29
29
  },
30
30
  },
31
31
  methods: {
32
+ getIcon(icon) {
33
+ if (!this.isNative && false) {
34
+ return 'https://cdn.tapni.co/icons/' + icon;
35
+ } else {
36
+ return `http://localhost:7777/icons/${icon}`;
37
+ }
38
+ },
32
39
  errorHandler(error) {
33
40
  if (error && error.response && error.response.data && error.response.data.error) {
34
41
  if (
package/src/routes.js CHANGED
@@ -1,18 +1,15 @@
1
- const Welcome = () =>
2
- import("./views/Welcome.vue");
1
+ const Welcome = () => import("./views/Welcome.vue");
3
2
  const Login = () => import("./views/Login.vue");
4
- const Register = () =>
5
- import("./views/Register.vue");
3
+ const Register = () => import("./views/Register.vue");
6
4
  const Reset = () => import("./views/Reset.vue");
7
5
  const Account = () => import("./views/Account.vue");
8
- const Verify = () =>
9
- import("./views/Verify.vue");
10
- const Callback = () =>
11
- import("./views/Callback.vue");
12
- const QR = () =>
13
- import("./views/QR.vue");
14
- const MFA = () =>
15
- import("./views/MFA.vue");
6
+ const Verify = () => import("./views/Verify.vue");
7
+ const Callback = () => import("./views/Callback.vue");
8
+ const QR = () => import("./views/QR.vue");
9
+ const Security = () => import("./views/Security.vue");
10
+ const Apps = () => import("./views/Apps.vue");
11
+ const CustomApp = () => import("./views/CustomApp.vue");
12
+ const General = () => import("./views/General.vue");
16
13
 
17
14
  export default [
18
15
  {
@@ -37,9 +34,24 @@ export default [
37
34
  component: QR,
38
35
  },
39
36
  {
40
- path: "/mfa",
41
- name: "AuthMFA",
42
- component: MFA,
37
+ path: "/security",
38
+ name: "AuthSecurity",
39
+ component: Security,
40
+ },
41
+ {
42
+ path: "/apps",
43
+ name: "AuthApps",
44
+ component: Apps,
45
+ },
46
+ {
47
+ path: "/apps/:app",
48
+ name: "AuthApp",
49
+ component: CustomApp,
50
+ },
51
+ {
52
+ path: "/general",
53
+ name: "AuthGeneral",
54
+ component: General,
43
55
  },
44
56
  {
45
57
  path: "/account",
package/src/store/auth.js CHANGED
@@ -150,7 +150,7 @@ export default {
150
150
  }
151
151
 
152
152
  if (error.response.data.error === 'OTP_REQUIRED') {
153
- return EventBus.$emit('toggleOTPModal', true);
153
+ return EventBus.$emit('toggleOTPField', true);
154
154
  }
155
155
 
156
156
  // Link click network error bug fix
@@ -1,8 +1,4 @@
1
1
  export default {
2
- ANDROID_VERSION: '5.6',
3
- IOS_VERSION: '5.6',
4
- WEB_VERSION: '5.6.0',
5
- SUPPORTED_LANGUAGES: ['en', 'de', 'es', 'kr', 'it', 'fr'],
6
- METAPIXEL_ID: '1203678696914368',
7
- GOOGLE_ANALYTICS_ID: ''
2
+ WEB_VERSION: '1.0.1',
3
+ SUPPORTED_LANGUAGES: ['en', 'de', 'es', 'kr', 'it', 'fr', 'sr', 'tr', 'cn'],
8
4
  }
@@ -514,8 +514,33 @@ export default {
514
514
  mfa: "Multi-Factor Authentication",
515
515
  otp_title: "Enter MFA Code to continue",
516
516
  otp_code: "MFA Code",
517
- otp_subtitle: "To continue, turn on or view your MFA device and type the authentication code below.",
518
- otp_p1: "If you have trouble signing in, <br> please contact us at",
519
- change_language: "Change language"
517
+ otp_subtitle: "Enter the code from your authenticator app",
518
+ otp_p1: "If you have trouble with MFA, <br> please contact us at",
519
+ change_language: "Change language",
520
+ welcome_account: "Welcome to Account Center",
521
+ security: "Security",
522
+ security_p: "Manage your authentication options & account status",
523
+ general: "General",
524
+ general_p: "Manage your personal details & other preferences",
525
+ billing: "Billing",
526
+ apps: "Apps",
527
+ apps_p: "View your active apps & explore other",
528
+ apps_my: "My apps",
529
+ mfa_auth: '2 Factor Authentication',
530
+ mfa_auth_enabled: 'Your account is protected via MFA.',
531
+ mfa_auth_p: 'Protect your account from unauthorized access by enabling multi-factor authentication (MFA)',
532
+ mfa_auth_qr: 'Scan the QR code above or enter the secret key into your authenticator app.',
533
+ change_password: 'Change Password',
534
+ active_account: 'Active Account',
535
+ active_account_p: 'When turned off, your account will be temporary deactivated until turned back on.',
536
+ delete_account: 'Delete Account',
537
+ delete_account_p: 'Delete Account',
538
+ permanent_delete: 'Permanent delete',
539
+ permanent_delete_p: 'If you delete your account, all your data will be permanently deleted. This action cannot be undone. If you are unsure, you can temporary deactivate your account.',
540
+
541
+ personal_details: 'Personal Details',
542
+ app_language_p: 'Translate the app on your preferred language',
543
+ app_region: 'Region',
544
+ app_region_p: 'Select your region for personalized billing and support experience',
520
545
  },
521
546
  };