@tapni/auth 0.0.30 → 0.0.32
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.
- package/dist/TapniAuth.es.js +126 -126
- package/dist/TapniAuth.umd.js +2 -2
- package/dist/style.css +1 -1
- package/package.json +1 -1
- package/src/App.vue +3 -3
- package/src/components/Language.vue +10 -10
- package/src/components/LinkIcon.vue +2 -2
- package/src/components/SSO.vue +4 -4
- package/src/components/SSOPick.vue +4 -4
- package/src/mixins/apple.mixin.js +1 -1
- package/src/mixins/auth.mixin.js +5 -5
- package/src/mixins/facebook.mixin.js +1 -1
- package/src/mixins/global.mixin.js +1 -1
- package/src/mixins/google.mixin.js +1 -1
- package/src/mixins/microsoft.mixin.js +1 -1
- package/src/mixins/okta.mixin.js +1 -1
- package/src/services/Api.js +2 -2
- package/src/views/Callback.vue +3 -3
- package/src/views/Login.vue +19 -19
- package/src/views/QR.vue +6 -6
- package/src/views/Register.vue +20 -20
- package/src/views/Reset.vue +15 -15
- package/src/views/Verify.vue +11 -11
- package/src/views/Welcome.vue +5 -5
package/dist/style.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.app-store-icon[data-v-
|
|
1
|
+
.app-store-icon[data-v-806183a1]{box-shadow:0 4px 10px #00000017;border-radius:12px}#codeInput[data-v-a80e9eb1],#emailInput[data-v-a80e9eb1],#emailInput[data-v-7eff2bb3]{text-align:center;padding-right:15%;font-size:17px}.fade-enter-to[data-v-a128c2fa]{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-34a6b7b2]{margin:2px auto 0;width:65px}input[data-v-34a6b7b2]{margin:0 auto;height:25px}html *{font-family:Inter,sans-serif}.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}
|
package/package.json
CHANGED
package/src/App.vue
CHANGED
|
@@ -17,7 +17,7 @@ document.addEventListener('DOMContentLoaded', function() {
|
|
|
17
17
|
@click="toggleLanguageModal"
|
|
18
18
|
class="font-18 no-border pointer color-black"
|
|
19
19
|
style="position: absolute; right: 20px; top: -10px">
|
|
20
|
-
<span class="lang-icon">{{
|
|
20
|
+
<span class="lang-icon">{{ appLanguage.toUpperCase() }}</span>
|
|
21
21
|
</a>
|
|
22
22
|
|
|
23
23
|
|
|
@@ -36,7 +36,7 @@ document.addEventListener('DOMContentLoaded', function() {
|
|
|
36
36
|
|
|
37
37
|
<div class="snackbar snackbar-boxed" id="snackbar">
|
|
38
38
|
<p class="snack-body" id="errorSnack">
|
|
39
|
-
<span id="errorMessage"> {{ ssoLang[
|
|
39
|
+
<span id="errorMessage"> {{ ssoLang[appLanguage].error }} </span>
|
|
40
40
|
<a
|
|
41
41
|
@click="closeSnacks"
|
|
42
42
|
style="
|
|
@@ -54,7 +54,7 @@ document.addEventListener('DOMContentLoaded', function() {
|
|
|
54
54
|
</a>
|
|
55
55
|
</p>
|
|
56
56
|
<p class="snack-body" id="successSnack">
|
|
57
|
-
<span id="successMessage"> {{ ssoLang[
|
|
57
|
+
<span id="successMessage"> {{ ssoLang[appLanguage].success }} </span>
|
|
58
58
|
<a
|
|
59
59
|
@click="closeSnacks"
|
|
60
60
|
style="
|
|
@@ -18,13 +18,13 @@
|
|
|
18
18
|
</i>
|
|
19
19
|
</a>
|
|
20
20
|
<h3 class="bold center-text color-black small-bottom">
|
|
21
|
-
{{ ssoLang[
|
|
21
|
+
{{ ssoLang[appLanguage].app_language }}
|
|
22
22
|
</h3>
|
|
23
23
|
|
|
24
24
|
<LinkIcon
|
|
25
25
|
@click.native="updateLanguage('en')"
|
|
26
26
|
:link-style="'link-grid'"
|
|
27
|
-
:data="{ type: 'lang/en', text: ssoLang[this.
|
|
27
|
+
:data="{ type: 'lang/en', text: ssoLang[this.appLanguage].english }"
|
|
28
28
|
:editing="false"
|
|
29
29
|
:class="{ 'add-button': true }"
|
|
30
30
|
/>
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
<LinkIcon
|
|
33
33
|
@click.native="updateLanguage('es')"
|
|
34
34
|
:link-style="'link-grid'"
|
|
35
|
-
:data="{ type: 'lang/es', text: ssoLang[this.
|
|
35
|
+
:data="{ type: 'lang/es', text: ssoLang[this.appLanguage].spanish }"
|
|
36
36
|
:editing="false"
|
|
37
37
|
:class="{ 'add-button': true }"
|
|
38
38
|
/>
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
<LinkIcon
|
|
41
41
|
@click.native="updateLanguage('de')"
|
|
42
42
|
:link-style="'link-grid'"
|
|
43
|
-
:data="{ type: 'lang/de', text: ssoLang[this.
|
|
43
|
+
:data="{ type: 'lang/de', text: ssoLang[this.appLanguage].german }"
|
|
44
44
|
:editing="false"
|
|
45
45
|
:class="{ 'add-button': true }"
|
|
46
46
|
/>
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
<LinkIcon
|
|
49
49
|
@click.native="updateLanguage('it')"
|
|
50
50
|
:link-style="'link-grid'"
|
|
51
|
-
:data="{ type: 'lang/it', text: ssoLang[this.
|
|
51
|
+
:data="{ type: 'lang/it', text: ssoLang[this.appLanguage].italian }"
|
|
52
52
|
:editing="false"
|
|
53
53
|
:class="{ 'add-button': true }"
|
|
54
54
|
/>
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
<LinkIcon
|
|
57
57
|
@click.native="updateLanguage('fr')"
|
|
58
58
|
:link-style="'link-grid'"
|
|
59
|
-
:data="{ type: 'lang/fr', text: ssoLang[this.
|
|
59
|
+
:data="{ type: 'lang/fr', text: ssoLang[this.appLanguage].french }"
|
|
60
60
|
:editing="false"
|
|
61
61
|
:class="{ 'add-button': true }"
|
|
62
62
|
/>
|
|
@@ -64,7 +64,7 @@
|
|
|
64
64
|
<LinkIcon
|
|
65
65
|
@click.native="updateLanguage('kr')"
|
|
66
66
|
:link-style="'link-grid'"
|
|
67
|
-
:data="{ type: 'lang/kr', text: ssoLang[this.
|
|
67
|
+
:data="{ type: 'lang/kr', text: ssoLang[this.appLanguage].korean }"
|
|
68
68
|
:editing="false"
|
|
69
69
|
:class="{ 'add-button': true }"
|
|
70
70
|
/>
|
|
@@ -72,7 +72,7 @@
|
|
|
72
72
|
<LinkIcon
|
|
73
73
|
@click.native="updateLanguage('sr')"
|
|
74
74
|
:link-style="'link-grid'"
|
|
75
|
-
:data="{ type: 'lang/sr', text: ssoLang[this.
|
|
75
|
+
:data="{ type: 'lang/sr', text: ssoLang[this.appLanguage].serbian }"
|
|
76
76
|
:editing="false"
|
|
77
77
|
:class="{ 'add-button': true }"
|
|
78
78
|
/>
|
|
@@ -80,14 +80,14 @@
|
|
|
80
80
|
<LinkIcon
|
|
81
81
|
@click.native="updateLanguage('tr')"
|
|
82
82
|
:link-style="'link-grid'"
|
|
83
|
-
:data="{ type: 'lang/tr', text: ssoLang[this.
|
|
83
|
+
:data="{ type: 'lang/tr', text: ssoLang[this.appLanguage].turkish }"
|
|
84
84
|
:editing="false"
|
|
85
85
|
:class="{ 'add-button': true }"
|
|
86
86
|
/>
|
|
87
87
|
<!--
|
|
88
88
|
<LinkIcon @click.native="updateLanguage('cn')"
|
|
89
89
|
:link-style="'link-grid'"
|
|
90
|
-
:data="{ type: 'lang/cn', text: ssoLang[this.
|
|
90
|
+
:data="{ type: 'lang/cn', text: ssoLang[this.appLanguage].chinese }"
|
|
91
91
|
:editing="false"
|
|
92
92
|
:class="{ 'add-button': true }" />
|
|
93
93
|
-->
|
|
@@ -133,9 +133,9 @@ export default {
|
|
|
133
133
|
},
|
|
134
134
|
computed: {
|
|
135
135
|
linkText() {
|
|
136
|
-
if (this.
|
|
136
|
+
if (this.appLanguage !== "en" && this.data.text) {
|
|
137
137
|
return (
|
|
138
|
-
this.ssoLang[this.
|
|
138
|
+
this.ssoLang[this.appLanguage][
|
|
139
139
|
"link_text_" +
|
|
140
140
|
this.data.text.toLowerCase().trim().replace(/ /g, "_")
|
|
141
141
|
] || this.data.text
|
package/src/components/SSO.vue
CHANGED
|
@@ -19,13 +19,13 @@
|
|
|
19
19
|
</i>
|
|
20
20
|
</a>
|
|
21
21
|
<h3 class="bold center-text color-black half-top half-bottom">
|
|
22
|
-
{{ ssoLang[
|
|
22
|
+
{{ ssoLang[appLanguage].enter_company_email }}
|
|
23
23
|
</h3>
|
|
24
24
|
<div>
|
|
25
25
|
<input
|
|
26
26
|
type="text"
|
|
27
27
|
v-model="email"
|
|
28
|
-
:placeholder="ssoLang[this.
|
|
28
|
+
:placeholder="ssoLang[this.appLanguage].email"
|
|
29
29
|
autocomplete="off"
|
|
30
30
|
autocorrect="off"
|
|
31
31
|
autocapitalize="off"
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
class="button black-button white-button button-full"
|
|
43
43
|
style="margin: 0 auto; margin-top: 25px; margin-bottom: 30px"
|
|
44
44
|
>
|
|
45
|
-
<span v-if="!loading">{{ ssoLang[
|
|
45
|
+
<span v-if="!loading">{{ ssoLang[appLanguage].continue }} </span>
|
|
46
46
|
<span v-else class="button--loading button__loader"></span>
|
|
47
47
|
</button>
|
|
48
48
|
</form>
|
|
@@ -90,7 +90,7 @@ export default {
|
|
|
90
90
|
ssoTypes = Object.keys(response.sso);
|
|
91
91
|
if (!ssoTypes.length) {
|
|
92
92
|
this.forceClose();
|
|
93
|
-
return this.errorSnack(this.ssoLang[this.
|
|
93
|
+
return this.errorSnack(this.ssoLang[this.appLanguage].no_sso_logins);
|
|
94
94
|
} else if (ssoTypes.length <= 1) {
|
|
95
95
|
if (ssoTypes[0] === "azure")
|
|
96
96
|
this.microsoftLogin("sso", response.sso.azure.sso);
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
</i>
|
|
20
20
|
</a>
|
|
21
21
|
<h3 class="bold center-text color-black half-top half-bottom">
|
|
22
|
-
{{ ssoLang[
|
|
22
|
+
{{ ssoLang[appLanguage].select_sign_method }}
|
|
23
23
|
</h3>
|
|
24
24
|
|
|
25
25
|
<!-- Azure Login Button -->
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"
|
|
39
39
|
/>
|
|
40
40
|
<span v-if="!azureLoad"
|
|
41
|
-
>{{ ssoLang[
|
|
41
|
+
>{{ ssoLang[appLanguage].sign_in_with }} Azure</span
|
|
42
42
|
>
|
|
43
43
|
<span v-else class="button--loading button__loader"></span>
|
|
44
44
|
</a>
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
"
|
|
60
60
|
/>
|
|
61
61
|
<span v-if="!oktaLoad"
|
|
62
|
-
>{{ ssoLang[
|
|
62
|
+
>{{ ssoLang[appLanguage].sign_in_with }} Okta</span
|
|
63
63
|
>
|
|
64
64
|
<span v-else class="button--loading button__loader"></span>
|
|
65
65
|
</a>
|
|
@@ -80,7 +80,7 @@
|
|
|
80
80
|
"
|
|
81
81
|
/>
|
|
82
82
|
<span v-if="!samlLoad"
|
|
83
|
-
>{{ ssoLang[
|
|
83
|
+
>{{ ssoLang[appLanguage].sign_in_with }} SAML</span
|
|
84
84
|
>
|
|
85
85
|
<span v-else class="button--loading button__loader"></span>
|
|
86
86
|
</a>
|
|
@@ -50,7 +50,7 @@ export default {
|
|
|
50
50
|
this.appleLoad = false
|
|
51
51
|
EventBus.$emit('ssoEvent', {name: 'setLoading', data: false})
|
|
52
52
|
}, 1000)
|
|
53
|
-
} else this.errorSnack(this.ssoLang[this.
|
|
53
|
+
} else this.errorSnack(this.ssoLang[this.appLanguage].unexpected_err)
|
|
54
54
|
} else {
|
|
55
55
|
this.appleLoad = false
|
|
56
56
|
EventBus.$emit('ssoEvent', {name: 'setLoading', data: false})
|
package/src/mixins/auth.mixin.js
CHANGED
|
@@ -67,7 +67,7 @@ export default {
|
|
|
67
67
|
};
|
|
68
68
|
},
|
|
69
69
|
computed: {
|
|
70
|
-
|
|
70
|
+
appLanguage() {
|
|
71
71
|
return this.appLanguage;
|
|
72
72
|
},
|
|
73
73
|
isLoggedIn() {
|
|
@@ -217,10 +217,10 @@ export default {
|
|
|
217
217
|
if (response.data.token) this.setToken(response.data.token);
|
|
218
218
|
|
|
219
219
|
// Update Language
|
|
220
|
-
if (response.data?.data?.ssoLang !== this.
|
|
220
|
+
if (response.data?.data?.ssoLang !== this.appLanguage) {
|
|
221
221
|
EventBus.$emit("ssoEvent", {
|
|
222
222
|
name: "saveProfile",
|
|
223
|
-
data: { lang: this.
|
|
223
|
+
data: { lang: this.appLanguage, username: response.data.data.username },
|
|
224
224
|
});
|
|
225
225
|
}
|
|
226
226
|
|
|
@@ -303,7 +303,7 @@ export default {
|
|
|
303
303
|
|
|
304
304
|
if (response.isModal) {
|
|
305
305
|
EventBus.$emit("closeModal");
|
|
306
|
-
this.successSnack(this.ssoLang[this.
|
|
306
|
+
this.successSnack(this.ssoLang[this.appLanguage].success_login);
|
|
307
307
|
}
|
|
308
308
|
this.$router.push("/" + response.data.data.username + "#edit");
|
|
309
309
|
}
|
|
@@ -326,7 +326,7 @@ export default {
|
|
|
326
326
|
);
|
|
327
327
|
if (err) return this.errorHandler(err);
|
|
328
328
|
if (response.data.success) {
|
|
329
|
-
this.successSnack(this.ssoLang[this.
|
|
329
|
+
this.successSnack(this.ssoLang[this.appLanguage].password_reset_success);
|
|
330
330
|
}
|
|
331
331
|
},
|
|
332
332
|
async exchangeAuthCode(data) {
|
|
@@ -68,7 +68,7 @@ export default {
|
|
|
68
68
|
this.facebookLoad = false
|
|
69
69
|
EventBus.$emit('ssoEvent', {name: 'setLoading', data: false})
|
|
70
70
|
}, 1000)
|
|
71
|
-
} else this.errorSnack(this.ssoLang[this.
|
|
71
|
+
} else this.errorSnack(this.ssoLang[this.appLanguage].unexpected_err)
|
|
72
72
|
} else {
|
|
73
73
|
this.facebookLoad = false
|
|
74
74
|
EventBus.$emit('ssoEvent', {name: 'setLoading', data: false})
|
|
@@ -96,7 +96,7 @@ export default {
|
|
|
96
96
|
el.select()
|
|
97
97
|
document.execCommand('copy')
|
|
98
98
|
document.body.removeChild(el)
|
|
99
|
-
this.successSnack(this.ssoLang[this.
|
|
99
|
+
this.successSnack(this.ssoLang[this.appLanguage].copied)
|
|
100
100
|
},
|
|
101
101
|
async getCaptchaToken(action){
|
|
102
102
|
try {
|
|
@@ -51,7 +51,7 @@ export default {
|
|
|
51
51
|
this.googleLoad = false
|
|
52
52
|
EventBus.$emit('ssoEvent', {name: 'setLoading', data: false})
|
|
53
53
|
}, 1000)
|
|
54
|
-
} else this.errorSnack(this.ssoLang[this.
|
|
54
|
+
} else this.errorSnack(this.ssoLang[this.appLanguage].unexpected_err)
|
|
55
55
|
} else {
|
|
56
56
|
this.googleLoad = false
|
|
57
57
|
EventBus.$emit('ssoEvent', {name: 'setLoading', data: false})
|
|
@@ -74,7 +74,7 @@ export default {
|
|
|
74
74
|
this.microsoftSSOLoad = false;
|
|
75
75
|
EventBus.$emit("ssoEvent", { name: "setLoading", data: false });
|
|
76
76
|
}, 1000);
|
|
77
|
-
} else this.errorSnack(this.ssoLang[this.
|
|
77
|
+
} else this.errorSnack(this.ssoLang[this.appLanguage].unexpected_err);
|
|
78
78
|
} else {
|
|
79
79
|
this.microsoftLoad = false;
|
|
80
80
|
this.microsoftSSOLoad = false;
|
package/src/mixins/okta.mixin.js
CHANGED
|
@@ -49,7 +49,7 @@ export default {
|
|
|
49
49
|
this.appleLoad = false
|
|
50
50
|
EventBus.$emit('ssoEvent', {name: 'setLoading', data: false})
|
|
51
51
|
}, 1000)
|
|
52
|
-
} else this.errorSnack(this.ssoLang[this.
|
|
52
|
+
} else this.errorSnack(this.ssoLang[this.appLanguage].unexpected_err)
|
|
53
53
|
},
|
|
54
54
|
async oktaLogin (data) {
|
|
55
55
|
const platform = Capacitor.getPlatform() || 'web';
|
package/src/services/Api.js
CHANGED
|
@@ -20,13 +20,13 @@ export default (storage, refreshTokenAction = false) => {
|
|
|
20
20
|
if (['post', 'put', 'delete'].includes(config.method.toLowerCase())) {
|
|
21
21
|
config.data = {
|
|
22
22
|
...config.data,
|
|
23
|
-
lang: storage.
|
|
23
|
+
lang: storage.appLanguage,
|
|
24
24
|
realm: storage.realm || 'app'
|
|
25
25
|
}
|
|
26
26
|
} else if (config.method.toLowerCase() === 'get') {
|
|
27
27
|
config.params = {
|
|
28
28
|
...config.params,
|
|
29
|
-
lang: storage.
|
|
29
|
+
lang: storage.appLanguage,
|
|
30
30
|
realm: storage.realm || 'app'
|
|
31
31
|
}
|
|
32
32
|
}
|
package/src/views/Callback.vue
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div>
|
|
3
3
|
<h5 v-if="($route.query.platform ==='android' || $route.query.platform ==='ios') && !isNative" style="text-align: center; width: 80%; margin: 0 auto; margin-top: 260px; ">
|
|
4
|
-
{{ssoLang[this.
|
|
5
|
-
{{ssoLang[this.
|
|
6
|
-
<h4 v-else style="text-align: center; width: 80%; margin: 0 auto; margin-top: 260px; ">{{ssoLang[this.
|
|
4
|
+
{{ssoLang[this.appLanguage].you_will_be_redirected}}<br>
|
|
5
|
+
{{ssoLang[this.appLanguage].if_redirect_not_directly}}, <span @click="inAppRedirect" style="color: blue; cursor: pointer">{{ssoLang[this.appLanguage].click_here}}</span>.</h5>
|
|
6
|
+
<h4 v-else style="text-align: center; width: 80%; margin: 0 auto; margin-top: 260px; ">{{ssoLang[this.appLanguage].please_wait}}</h4>
|
|
7
7
|
</div>
|
|
8
8
|
</template>
|
|
9
9
|
|
package/src/views/Login.vue
CHANGED
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
</i>
|
|
26
26
|
</a>
|
|
27
27
|
<h1 class="bold no-bottom center-text" style="margin-top: 63px;" @click="bum">
|
|
28
|
-
{{ this.ssoLang[this.
|
|
28
|
+
{{ this.ssoLang[this.appLanguage].login }}
|
|
29
29
|
</h1>
|
|
30
30
|
<p class="half-bottom small-top center-text color-black"></p>
|
|
31
31
|
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
spellcheck="false"
|
|
47
47
|
type="text"
|
|
48
48
|
name="email"
|
|
49
|
-
:placeholder="ssoLang[this.
|
|
49
|
+
:placeholder="ssoLang[this.appLanguage].email_username"
|
|
50
50
|
required
|
|
51
51
|
/>
|
|
52
52
|
<em></em>
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
<input
|
|
63
63
|
v-model="password"
|
|
64
64
|
:type="revealPassword ? 'text' : 'password'"
|
|
65
|
-
:placeholder="ssoLang[this.
|
|
65
|
+
:placeholder="ssoLang[this.appLanguage].password"
|
|
66
66
|
name="password"
|
|
67
67
|
required
|
|
68
68
|
minlength="8"
|
|
@@ -84,7 +84,7 @@
|
|
|
84
84
|
type="submit"
|
|
85
85
|
class="button black-button google-button bg-tapni-grey button-90 button-center uppercase bold full-top"
|
|
86
86
|
>
|
|
87
|
-
<span v-if="!submitted">{{ ssoLang[
|
|
87
|
+
<span v-if="!submitted">{{ ssoLang[appLanguage].login }}</span>
|
|
88
88
|
<span v-else class="button--loading button__loader"></span>
|
|
89
89
|
</button>
|
|
90
90
|
</span>
|
|
@@ -104,7 +104,7 @@
|
|
|
104
104
|
height: 100%;
|
|
105
105
|
"
|
|
106
106
|
/>
|
|
107
|
-
<span v-if="!appleLoad">{{ ssoLang[
|
|
107
|
+
<span v-if="!appleLoad">{{ ssoLang[appLanguage].sign_in_with }} Apple</span>
|
|
108
108
|
<span v-else class="button--loading button__loader"></span>
|
|
109
109
|
</a>
|
|
110
110
|
|
|
@@ -124,7 +124,7 @@
|
|
|
124
124
|
"
|
|
125
125
|
/>
|
|
126
126
|
<span v-if="!googleLoad"
|
|
127
|
-
>{{ ssoLang[
|
|
127
|
+
>{{ ssoLang[appLanguage].sign_in_with }} Google</span
|
|
128
128
|
>
|
|
129
129
|
<span v-else class="button--loading-black button__loader"></span>
|
|
130
130
|
</a>
|
|
@@ -145,7 +145,7 @@
|
|
|
145
145
|
"
|
|
146
146
|
/>
|
|
147
147
|
<span v-if="!facebookLoad"
|
|
148
|
-
>{{ ssoLang[
|
|
148
|
+
>{{ ssoLang[appLanguage].sign_in_with }} Facebook</span
|
|
149
149
|
>
|
|
150
150
|
<span v-else class="button--loading-black button__loader"></span>
|
|
151
151
|
</a>
|
|
@@ -166,7 +166,7 @@
|
|
|
166
166
|
"
|
|
167
167
|
/>
|
|
168
168
|
<span v-if="!microsoftLoad"
|
|
169
|
-
>{{ ssoLang[
|
|
169
|
+
>{{ ssoLang[appLanguage].sign_in_with }} Outlook</span
|
|
170
170
|
>
|
|
171
171
|
<span v-else class="button--loading-black button__loader"></span>
|
|
172
172
|
</a>
|
|
@@ -186,7 +186,7 @@
|
|
|
186
186
|
height: 100%;
|
|
187
187
|
"
|
|
188
188
|
/>
|
|
189
|
-
<span v-if="!microsoftSSOLoad">{{ ssoLang[
|
|
189
|
+
<span v-if="!microsoftSSOLoad">{{ ssoLang[appLanguage].sign_in_with }} SSO</span>
|
|
190
190
|
<span v-else class="button--loading-black button__loader"></span>
|
|
191
191
|
</a>
|
|
192
192
|
<!-- Microsoft SSO Button -->
|
|
@@ -204,7 +204,7 @@
|
|
|
204
204
|
height: 100%;
|
|
205
205
|
"
|
|
206
206
|
/>
|
|
207
|
-
<span v-if="microsoftSSOLoad">{{ ssoLang[
|
|
207
|
+
<span v-if="microsoftSSOLoad">{{ ssoLang[appLanguage].sign_in_with }} SSO</span>
|
|
208
208
|
<span v-else class="button--loading-black button__loader"></span>
|
|
209
209
|
</a>
|
|
210
210
|
|
|
@@ -223,19 +223,19 @@
|
|
|
223
223
|
height: 100%;
|
|
224
224
|
"
|
|
225
225
|
/>
|
|
226
|
-
<span>{{ ssoLang[
|
|
226
|
+
<span>{{ ssoLang[appLanguage].sign_in_with }} Email</span>
|
|
227
227
|
</a>
|
|
228
228
|
|
|
229
229
|
<div class="decoration decoration-lines-thin no-bottom"></div>
|
|
230
230
|
|
|
231
231
|
<p class="close-text center-text half-top color-black">
|
|
232
|
-
{{ ssoLang[
|
|
232
|
+
{{ ssoLang[appLanguage].terms_by_signing_in }} <br />
|
|
233
233
|
<a class="" href="https://tapni.co/policies/terms-of-service">{{
|
|
234
|
-
ssoLang[this.
|
|
234
|
+
ssoLang[this.appLanguage].terms_of_service
|
|
235
235
|
}}</a>
|
|
236
|
-
{{ ssoLang[
|
|
236
|
+
{{ ssoLang[appLanguage].and }}
|
|
237
237
|
<a href="https://tapni.co/policies/privacy-policy">{{
|
|
238
|
-
ssoLang[this.
|
|
238
|
+
ssoLang[this.appLanguage].privacy_policy
|
|
239
239
|
}}</a>
|
|
240
240
|
</p>
|
|
241
241
|
<div class="decoration decoration-lines-thin no-bottom"></div>
|
|
@@ -244,20 +244,20 @@
|
|
|
244
244
|
v-if="displayRegisterLogin"
|
|
245
245
|
class="forgot float-right"
|
|
246
246
|
to="/register"
|
|
247
|
-
>{{ ssoLang[
|
|
247
|
+
>{{ ssoLang[appLanguage].create_account }}</router-link
|
|
248
248
|
>
|
|
249
249
|
<router-link
|
|
250
250
|
v-if="displayResetPasswordLogin"
|
|
251
251
|
class="create float-left"
|
|
252
252
|
to="/reset"
|
|
253
|
-
>{{ ssoLang[
|
|
253
|
+
>{{ ssoLang[appLanguage].reset_password }}</router-link
|
|
254
254
|
>
|
|
255
255
|
<div class="clear"></div>
|
|
256
256
|
</div>
|
|
257
257
|
<div v-else class="page-login-links" @click="createAccountModal">
|
|
258
258
|
<a class="forgot center-text pointer small-top"
|
|
259
|
-
>{{ ssoLang[
|
|
260
|
-
{{ ssoLang[
|
|
259
|
+
>{{ ssoLang[appLanguage].or }} <br />
|
|
260
|
+
{{ ssoLang[appLanguage].create_new_account }}</a
|
|
261
261
|
>
|
|
262
262
|
<div class="clear"></div>
|
|
263
263
|
</div>
|
package/src/views/QR.vue
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="page-login content-boxed content-boxed-padding">
|
|
3
3
|
<h5 style="text-align: center; width: 80%; margin: 0 auto; margin-top: 130px;">
|
|
4
|
-
{{ ssoLang[
|
|
4
|
+
{{ ssoLang[appLanguage].use_tapni_on_the_web }}
|
|
5
5
|
</h5>
|
|
6
6
|
<br>
|
|
7
7
|
|
|
@@ -12,15 +12,15 @@
|
|
|
12
12
|
<br>
|
|
13
13
|
<br>
|
|
14
14
|
<div style="margin: 0 auto; width: 85%; text-align: left;">
|
|
15
|
-
<h2 class="center-text">{{ ssoLang[
|
|
15
|
+
<h2 class="center-text">{{ ssoLang[appLanguage].login_by_scanning_qr_code }}</h2>
|
|
16
16
|
<br>
|
|
17
|
-
<h4>{{ ssoLang[
|
|
18
|
-
<h4>{{ ssoLang[
|
|
19
|
-
<h4>{{ ssoLang[
|
|
17
|
+
<h4>{{ ssoLang[appLanguage].open_tapni_app_on_your_phone }}</h4>
|
|
18
|
+
<h4>{{ ssoLang[appLanguage].go_to_settings_link_a_device }}</h4>
|
|
19
|
+
<h4>{{ ssoLang[appLanguage].point_your_phone_at_this_qr_code }}</h4>
|
|
20
20
|
<br>
|
|
21
21
|
<br>
|
|
22
22
|
</div>
|
|
23
|
-
<router-link to="/login">{{ ssoLang[
|
|
23
|
+
<router-link to="/login">{{ ssoLang[appLanguage].choose_other_login_methods }}</router-link>
|
|
24
24
|
</div>
|
|
25
25
|
</div>
|
|
26
26
|
</template>
|