@tapni/auth 1.0.52 → 1.0.54
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/.vite/manifest.json +10 -10
- package/dist/{Apps-WVb4S3LS.js → Apps-Dnw2La4O.js} +1 -1
- package/dist/{Billing-C8WFpUFn.js → Billing-C9TDWfv1.js} +1 -1
- package/dist/{CustomApp-LUQvCaYr.js → CustomApp-CjMfIsaK.js} +1 -1
- package/dist/{QR-C6K2Z3Ey.js → QR-7_VeMwh2.js} +1 -1
- package/dist/TapniAuth.es.js +1 -1
- package/dist/TapniAuth.umd.js +4 -4
- package/dist/{install-Bwa_1dZE.js → install-CLAhcoxj.js} +305 -297
- package/dist/style.css +1 -1
- package/package.json +65 -65
- package/src/App.vue +247 -258
- package/src/views/General.vue +3 -6
- package/src/views/Security.vue +4 -6
package/src/App.vue
CHANGED
|
@@ -1,333 +1,322 @@
|
|
|
1
1
|
<script setup>
|
|
2
|
-
import { RouterView } from 'vue-router'
|
|
2
|
+
import { RouterView } from 'vue-router';
|
|
3
3
|
// add Buffer globally
|
|
4
4
|
import { Buffer } from 'buffer/';
|
|
5
5
|
window.Buffer = Buffer;
|
|
6
|
-
document.addEventListener('DOMContentLoaded', function() {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
document.addEventListener('DOMContentLoaded', function () {
|
|
7
|
+
const recaptchaScript = document.createElement('script');
|
|
8
|
+
recaptchaScript.src = `https://www.google.com/recaptcha/api.js?render=${import.meta.env.VITE_GOOGLE_RECAPTCHA_SITE_KEY}`;
|
|
9
|
+
document.head.appendChild(recaptchaScript);
|
|
10
10
|
});
|
|
11
11
|
</script>
|
|
12
12
|
|
|
13
|
-
|
|
14
13
|
<template>
|
|
15
|
-
|
|
16
|
-
|
|
14
|
+
<div id="ssoapp" :style="containerStyle">
|
|
15
|
+
<a v-if="display === 'redirect' || renderView.includes('Auth')" href="/" class="header-logo"><img src="https://cdn.tapni.co/images/logo-dark.png" class="header-logo-img" /></a>
|
|
17
16
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
17
|
+
<AuthWelcome v-if="initialized && renderView === 'AuthWelcome'" />
|
|
18
|
+
<AuthLogin v-else-if="initialized && renderView === 'AuthLogin'" :isModal="isModal" />
|
|
19
|
+
<AuthGeneral v-else-if="initialized && renderView === 'AuthGeneral'" :isModal="isModal" @update:viewProp="setView" />
|
|
20
|
+
<AuthAccount v-else-if="initialized && renderView === 'AuthAccount'" :isModal="isModal" @update:viewProp="setView" />
|
|
21
|
+
<AuthRegister v-else-if="initialized && renderView === 'AuthRegister'" :isModal="isModal" />
|
|
22
|
+
<AuthVerify v-else-if="initialized && renderView === 'AuthVerify'" :isModal="isModal" />
|
|
23
|
+
<AuthSecurity v-else-if="initialized && renderView === 'AuthSecurity'" :isModal="isModal" :payload="payload" @update:viewProp="setView" />
|
|
24
|
+
<AuthReset v-else-if="initialized && renderView === 'AuthReset'" />
|
|
25
|
+
<AuthCallback v-else-if="initialized && renderView === 'AuthCallback'" />
|
|
26
|
+
<RouterView v-else-if="display !== 'npm'" />
|
|
28
27
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
style="width: 100%;"
|
|
45
|
-
/>
|
|
46
|
-
</a>
|
|
47
|
-
</p>
|
|
48
|
-
<p class="snack-body" id="successSnack">
|
|
49
|
-
<span id="successMessage"> {{ ssoLang[appLanguage].success }} </span>
|
|
50
|
-
<a
|
|
51
|
-
@click="closeSnacks"
|
|
52
|
-
style="
|
|
53
|
-
position: absolute;
|
|
54
|
-
right: 10px;
|
|
55
|
-
top: 10px;
|
|
56
|
-
width: 50px;
|
|
57
|
-
height: 50px;
|
|
58
|
-
"
|
|
59
|
-
>
|
|
60
|
-
<img
|
|
61
|
-
src="https://cdn.tapni.co/icons/notification-close.png"
|
|
62
|
-
style="width: 100%"
|
|
63
|
-
/>
|
|
64
|
-
</a>
|
|
65
|
-
</p>
|
|
66
|
-
</div>
|
|
67
|
-
</div>
|
|
28
|
+
<div class="snackbar snackbar-boxed" id="snackbar">
|
|
29
|
+
<p class="snack-body" id="errorSnack">
|
|
30
|
+
<span id="errorMessage"> {{ ssoLang[appLanguage].error }} </span>
|
|
31
|
+
<a @click="closeSnacks" style="position: absolute; right: 10px; top: 10px; width: 50px; height: 50px">
|
|
32
|
+
<img src="https://cdn.tapni.co/icons/notification-close.png" style="width: 100%" />
|
|
33
|
+
</a>
|
|
34
|
+
</p>
|
|
35
|
+
<p class="snack-body" id="successSnack">
|
|
36
|
+
<span id="successMessage"> {{ ssoLang[appLanguage].success }} </span>
|
|
37
|
+
<a @click="closeSnacks" style="position: absolute; right: 10px; top: 10px; width: 50px; height: 50px">
|
|
38
|
+
<img src="https://cdn.tapni.co/icons/notification-close.png" style="width: 100%" />
|
|
39
|
+
</a>
|
|
40
|
+
</p>
|
|
41
|
+
</div>
|
|
42
|
+
</div>
|
|
68
43
|
</template>
|
|
69
44
|
|
|
70
45
|
<script>
|
|
71
|
-
import AuthWelcome from
|
|
72
|
-
import AuthLogin from
|
|
73
|
-
import AuthAccount from
|
|
74
|
-
import AuthRegister from
|
|
75
|
-
import AuthVerify from
|
|
76
|
-
import AuthSecurity from
|
|
77
|
-
import AuthGeneral from
|
|
78
|
-
import AuthReset from
|
|
79
|
-
import AuthCallback from
|
|
80
|
-
import {EventBus} from
|
|
81
|
-
import AuthMixin from
|
|
82
|
-
import ReactiveStorage from '@tapni/capacitor-reactive-localstorage-vue3'
|
|
46
|
+
import AuthWelcome from '@/views/Welcome.vue';
|
|
47
|
+
import AuthLogin from '@/views/Login.vue';
|
|
48
|
+
import AuthAccount from '@/views/Account.vue';
|
|
49
|
+
import AuthRegister from '@/views/Register.vue';
|
|
50
|
+
import AuthVerify from '@/views/Verify.vue';
|
|
51
|
+
import AuthSecurity from '@/views/Security.vue';
|
|
52
|
+
import AuthGeneral from '@/views/General.vue';
|
|
53
|
+
import AuthReset from '@/views/Reset.vue';
|
|
54
|
+
import AuthCallback from '@/views/Callback.vue';
|
|
55
|
+
import { EventBus } from './store/event-bus.js';
|
|
56
|
+
import AuthMixin from '@/mixins/auth.mixin.js';
|
|
57
|
+
import ReactiveStorage from '@tapni/capacitor-reactive-localstorage-vue3';
|
|
83
58
|
import store from './store/auth.js';
|
|
84
59
|
import UtilService from './services/UtilService.js';
|
|
85
60
|
|
|
86
61
|
export default {
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
62
|
+
store,
|
|
63
|
+
name: 'TapniAuth',
|
|
64
|
+
mixins: [ReactiveStorage, AuthMixin],
|
|
65
|
+
data() {
|
|
66
|
+
return {
|
|
67
|
+
storeInterval: null,
|
|
68
|
+
isSetup: false
|
|
69
|
+
};
|
|
70
|
+
},
|
|
71
|
+
components: {
|
|
72
|
+
AuthCallback,
|
|
73
|
+
AuthReset,
|
|
74
|
+
AuthVerify,
|
|
75
|
+
AuthSecurity,
|
|
76
|
+
AuthRegister,
|
|
77
|
+
AuthLogin,
|
|
78
|
+
AuthAccount,
|
|
79
|
+
AuthWelcome,
|
|
80
|
+
AuthGeneral
|
|
81
|
+
},
|
|
82
|
+
props: {
|
|
83
|
+
viewProp: {
|
|
84
|
+
type: String,
|
|
85
|
+
default: ''
|
|
86
|
+
},
|
|
87
|
+
isModal: {
|
|
88
|
+
type: Boolean,
|
|
89
|
+
default: false
|
|
90
|
+
},
|
|
91
|
+
payload: {
|
|
92
|
+
type: Object,
|
|
93
|
+
default: {}
|
|
94
|
+
},
|
|
95
|
+
options: {
|
|
96
|
+
type: Object,
|
|
97
|
+
default: {
|
|
98
|
+
token: '',
|
|
99
|
+
refreshTokens: '',
|
|
100
|
+
username: '',
|
|
101
|
+
UserId: '',
|
|
102
|
+
verifyEmail: '',
|
|
103
|
+
subdomain: '',
|
|
104
|
+
localUser: ''
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
},
|
|
108
|
+
computed: {
|
|
109
|
+
initialized() {
|
|
110
|
+
return this.isSetup || this.isModal;
|
|
111
|
+
},
|
|
112
|
+
containerStyle() {
|
|
113
|
+
return {
|
|
114
|
+
maxHeight: this.isModal ? '90vh' : 'auto',
|
|
115
|
+
overflowY: this.isModal ? 'hidden' : 'auto'
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
},
|
|
119
|
+
async mounted() {
|
|
120
|
+
this.applyBgStyle();
|
|
121
|
+
this.setView(this.viewProp);
|
|
133
122
|
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
123
|
+
EventBus.$on('ssoEvent', this.ssoOutgoingEvent);
|
|
124
|
+
EventBus.$on('ssoLogout', (data) => this.logout(data));
|
|
125
|
+
EventBus.$on('getLoggedInAccounts', () => this.getLoggedInAccounts());
|
|
126
|
+
EventBus.$on('refreshTokenAction', (data) => this.refreshTokenAction({ ...data, storage: this.$storex }));
|
|
127
|
+
EventBus.$on('switchAccount', (data) => this.switchAccount(data));
|
|
128
|
+
EventBus.$on('setToken', (data) => this.setToken(data));
|
|
129
|
+
EventBus.$on('setStorageItem', (data) => this.setStorageItem(data));
|
|
141
130
|
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
131
|
+
if (import.meta.env.VITE_APP_COMPARE_LANGUAGE_KEYS === 'true') {
|
|
132
|
+
UtilService.compareLangKeys();
|
|
133
|
+
}
|
|
134
|
+
},
|
|
135
|
+
methods: {
|
|
136
|
+
async init() {
|
|
137
|
+
this.$store.commit('auth/setApiRoot', this.$apiRoot || process.env.VUE_APP_API_ROOT);
|
|
149
138
|
|
|
150
|
-
|
|
151
|
-
|
|
139
|
+
// Set $storage into vuex $storex
|
|
140
|
+
this.setStorage(this.strg);
|
|
152
141
|
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
142
|
+
// Make sure the function is called just once
|
|
143
|
+
if (this.isSetup) return;
|
|
144
|
+
this.isSetup = true;
|
|
156
145
|
|
|
157
|
-
|
|
146
|
+
await this.getLoggedInAccounts();
|
|
158
147
|
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
}
|
|
148
|
+
// Let App know that the auth is ready
|
|
149
|
+
this.$emit('ssoLibraryReady', this.$storex);
|
|
150
|
+
},
|
|
151
|
+
ssoOutgoingEvent(data) {
|
|
152
|
+
this.$emit('ssoEvent', data);
|
|
153
|
+
},
|
|
154
|
+
ssoIncomingEvent(data) {
|
|
155
|
+
EventBus.$emit(data.name, data.data);
|
|
156
|
+
},
|
|
157
|
+
applyBgStyle() {
|
|
158
|
+
if (this.display === 'redirect') {
|
|
159
|
+
document.getElementsByTagName('html')[0].style = 'background: #dfeefe;';
|
|
160
|
+
} else {
|
|
161
|
+
document.getElementsByTagName('html')[0].style = '';
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
},
|
|
165
|
+
watch: {
|
|
166
|
+
viewProp(nv) {
|
|
167
|
+
this.setView(nv);
|
|
168
|
+
},
|
|
169
|
+
display() {
|
|
170
|
+
this.applyBgStyle();
|
|
171
|
+
},
|
|
172
|
+
'strgReady.value'(nv) {
|
|
173
|
+
if (nv) {
|
|
174
|
+
// Initialize Library after all event listeners & storage are set
|
|
175
|
+
this.$nextTick(() => {
|
|
176
|
+
this.init();
|
|
177
|
+
});
|
|
178
|
+
}
|
|
179
|
+
},
|
|
180
|
+
$storex: {
|
|
181
|
+
handler(nv) {
|
|
182
|
+
clearInterval(this.storeInterval);
|
|
183
|
+
this.storeInterval = setTimeout(() => {
|
|
184
|
+
Object.keys(nv).forEach((key) => {
|
|
185
|
+
this.strg[key] = nv[key];
|
|
186
|
+
});
|
|
187
|
+
}, 250);
|
|
188
|
+
},
|
|
189
|
+
deep: true
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
};
|
|
204
193
|
</script>
|
|
205
194
|
|
|
206
195
|
<style>
|
|
207
196
|
html * {
|
|
208
|
-
|
|
197
|
+
font-family: 'Inter', sans-serif;
|
|
209
198
|
}
|
|
210
199
|
|
|
211
200
|
#bodyId {
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
201
|
+
padding-top: 3%;
|
|
202
|
+
max-width: 667px !important;
|
|
203
|
+
margin: auto;
|
|
204
|
+
height: 95% !important;
|
|
205
|
+
margin-top: 1.5%;
|
|
206
|
+
border-radius: 20px;
|
|
218
207
|
}
|
|
219
208
|
|
|
220
209
|
.action-block-top .default-text,
|
|
221
210
|
.action-block-top .default-text:after {
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
211
|
+
border-radius: 50%;
|
|
212
|
+
width: 10em !important;
|
|
213
|
+
height: 10em !important;
|
|
225
214
|
}
|
|
226
215
|
.action-block-top .default-text {
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
216
|
+
margin: 10px auto;
|
|
217
|
+
font-size: 3px;
|
|
218
|
+
position: relative;
|
|
219
|
+
text-indent: -9999em;
|
|
220
|
+
/*
|
|
232
221
|
border-left: 0.5em solid #ffffff;
|
|
233
222
|
border-top: 0.5em solid rgba(255, 255, 255, 0.2);
|
|
234
223
|
border-right: 0.5em solid rgba(255, 255, 255, 0.2);
|
|
235
224
|
border-bottom: 0.5em solid rgba(255, 255, 255, 0.2);
|
|
236
225
|
*/
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
226
|
+
border-left: 0.5em solid #000000;
|
|
227
|
+
border-top: 0.5em solid rgba(0, 0, 0, 0.2);
|
|
228
|
+
border-right: 0.5em solid rgba(0, 0, 0, 0.2);
|
|
229
|
+
border-bottom: 0.5em solid rgba(0, 0, 0, 0.2);
|
|
230
|
+
-webkit-transform: translateZ(0);
|
|
231
|
+
-ms-transform: translateZ(0);
|
|
232
|
+
transform: translateZ(0);
|
|
233
|
+
-webkit-animation: load8 1.1s infinite linear;
|
|
234
|
+
animation: load8 1.1s infinite linear;
|
|
246
235
|
}
|
|
247
236
|
@-webkit-keyframes load8 {
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
237
|
+
0% {
|
|
238
|
+
-webkit-transform: rotate(0deg);
|
|
239
|
+
transform: rotate(0deg);
|
|
240
|
+
}
|
|
241
|
+
100% {
|
|
242
|
+
-webkit-transform: rotate(360deg);
|
|
243
|
+
transform: rotate(360deg);
|
|
244
|
+
}
|
|
256
245
|
}
|
|
257
246
|
@keyframes load8 {
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
247
|
+
0% {
|
|
248
|
+
-webkit-transform: rotate(0deg);
|
|
249
|
+
transform: rotate(0deg);
|
|
250
|
+
}
|
|
251
|
+
100% {
|
|
252
|
+
-webkit-transform: rotate(360deg);
|
|
253
|
+
transform: rotate(360deg);
|
|
254
|
+
}
|
|
266
255
|
}
|
|
267
256
|
.smartbanner-ios {
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
257
|
+
background: linear-gradient(to bottom, #f4f4f4, #f4f4f4);
|
|
258
|
+
box-shadow: 0 0px 0px #ffffff;
|
|
259
|
+
border-bottom: 1px solid #dddddd;
|
|
271
260
|
}
|
|
272
261
|
.smartbanner-icon {
|
|
273
|
-
|
|
262
|
+
border-radius: 16px;
|
|
274
263
|
}
|
|
275
264
|
.smartbanner-ios .smartbanner-button {
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
265
|
+
font-size: 13px;
|
|
266
|
+
padding: 9px 0px;
|
|
267
|
+
height: 40px;
|
|
268
|
+
border-radius: 13px;
|
|
269
|
+
background: #f4f4f4;
|
|
270
|
+
color: #0a99d2;
|
|
271
|
+
border: none;
|
|
272
|
+
box-shadow: none;
|
|
273
|
+
text-transform: uppercase;
|
|
285
274
|
}
|
|
286
275
|
|
|
287
276
|
.snack-body {
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
277
|
+
display: none;
|
|
278
|
+
border-radius: 40px;
|
|
279
|
+
font-size: 15px !important;
|
|
291
280
|
}
|
|
292
281
|
|
|
293
282
|
#errorSnack {
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
283
|
+
background-color: #fee3e3 !important;
|
|
284
|
+
border: 2px solid #edd9d9 !important;
|
|
285
|
+
color: #000000;
|
|
297
286
|
}
|
|
298
287
|
|
|
299
288
|
#successSnack {
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
289
|
+
background-color: #eff5eb !important;
|
|
290
|
+
border: 2px solid #e3ecd7 !important;
|
|
291
|
+
color: #000000;
|
|
303
292
|
}
|
|
304
293
|
|
|
305
294
|
.grecaptcha-badge {
|
|
306
|
-
|
|
295
|
+
visibility: hidden;
|
|
307
296
|
}
|
|
308
297
|
|
|
309
298
|
.header-logo {
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
299
|
+
position: absolute;
|
|
300
|
+
left: 50%;
|
|
301
|
+
transform: translate(-50%, -50%);
|
|
302
|
+
margin-top: 0px;
|
|
303
|
+
z-index: 2;
|
|
315
304
|
}
|
|
316
305
|
|
|
317
306
|
.header-logo-img {
|
|
318
|
-
|
|
319
|
-
|
|
307
|
+
height: 40px;
|
|
308
|
+
margin-top: 10px;
|
|
320
309
|
}
|
|
321
310
|
|
|
322
311
|
@media (max-width: 768px) {
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
312
|
+
#bodyId {
|
|
313
|
+
margin-top: 0;
|
|
314
|
+
border-radius: 0;
|
|
315
|
+
height: 100% !important;
|
|
316
|
+
}
|
|
328
317
|
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
318
|
+
.header-logo {
|
|
319
|
+
margin-top: 15px;
|
|
320
|
+
}
|
|
332
321
|
}
|
|
333
322
|
</style>
|
package/src/views/General.vue
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
</a>
|
|
8
8
|
<div class="subheaderContainer full-top">
|
|
9
9
|
<!-- Back Button -->
|
|
10
|
-
<div v-if="isModal" class="
|
|
10
|
+
<div v-if="isModal" class="pointer left-button" @click="$emit('update:viewProp', 'AuthAccount')">
|
|
11
11
|
<img
|
|
12
12
|
:src="getIcon('arrow-gray-right.svg')"
|
|
13
13
|
height="20"
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
style="rotate: 180deg;"
|
|
17
17
|
/>
|
|
18
18
|
</div>
|
|
19
|
-
<router-link v-else to="/account" class="button gray-button pointer left-button">
|
|
19
|
+
<router-link v-else to="/account" class="button gray-button pointer left-button" >
|
|
20
20
|
<img
|
|
21
21
|
:src="getIcon('arrow-gray-right.svg')"
|
|
22
22
|
height="20"
|
|
@@ -172,7 +172,4 @@ export default {
|
|
|
172
172
|
},
|
|
173
173
|
}
|
|
174
174
|
};
|
|
175
|
-
</script>
|
|
176
|
-
|
|
177
|
-
<style>
|
|
178
|
-
</style>
|
|
175
|
+
</script>
|
package/src/views/Security.vue
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
</a>
|
|
8
8
|
<div class="subheaderContainer full-top">
|
|
9
9
|
<!-- Back Button -->
|
|
10
|
-
<div v-if="isModal" class="
|
|
10
|
+
<div v-if="isModal" class="pointer left-button" @click="$emit('update:viewProp', 'AuthAccount')">
|
|
11
11
|
<img
|
|
12
12
|
:src="getIcon('arrow-gray-right.svg')"
|
|
13
13
|
height="20"
|
|
@@ -113,8 +113,8 @@
|
|
|
113
113
|
<img class="transition-icon" :class="{ 'rotate-icon': !!changePassword }" :src="getIcon('arrow-gray-down.svg')" />
|
|
114
114
|
</div>
|
|
115
115
|
</div>
|
|
116
|
-
|
|
117
|
-
<form @submit.prevent="submitChangePassword">
|
|
116
|
+
|
|
117
|
+
<form @submit.prevent="submitChangePassword" v-show="changePassword" class="center-text half-top">
|
|
118
118
|
<input type="password" v-model="currentPassword" :placeholder="ssoLang[appLanguage].password_current_p"
|
|
119
119
|
class="edit-input h-40 lh-40" required minlength="8" style="width: 100%"/>
|
|
120
120
|
<p class="small-text small-top-padding small-bottom">{{ssoLang[appLanguage].password_current}}</p>
|
|
@@ -140,9 +140,7 @@
|
|
|
140
140
|
<router-link to="/reset" exact class="color-black">{{ssoLang[appLanguage].by_clicking_here}}</router-link>
|
|
141
141
|
</p>
|
|
142
142
|
</form>
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
143
|
+
|
|
146
144
|
<!-- Delete Account -->
|
|
147
145
|
<div class="settingRow full-top" @click="accountDelete = !accountDelete">
|
|
148
146
|
<div class="firstRow">
|