@leapdev/gui 0.2.232 → 0.2.238
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/auth-leap-addin.js +96 -0
- package/dist/auth-leap-desktop.js +96 -0
- package/dist/auth-leap-web.js +96 -0
- package/dist/bs-lawconnect.js +2 -2
- package/dist/bs-leap-slim.js +2 -2
- package/dist/bs-leap.js +2 -2
- package/dist/bs-titlex.js +2 -2
- package/dist/css/4d-bylawyers.css +1 -1
- package/dist/css/4d-lawconnect.css +1 -1
- package/dist/css/4d-leap-web.css +1 -1
- package/dist/css/4d-leap.css +1 -1
- package/dist/css/auth-leap-addin.css +1 -0
- package/dist/css/auth-leap-desktop.css +1 -0
- package/dist/css/auth-leap-web.css +1 -0
- package/dist/images/leap-auth/auth-bg.png +0 -0
- package/dist/images/leap-auth/auth-icons.svg +9 -0
- package/dist/images/leap-auth/auth-logo.svg +6 -0
- package/dist/index.html +2 -2
- package/dist/scss/4d/_variables.scss +1 -1
- package/dist/scss/4d/components/datepicker.scss +3 -0
- package/dist/scss/4d/components/section.scss +11 -1
- package/dist/scss/4d/overrides/forms/input-select.scss +8 -13
- package/dist/scss/4d/overrides/nav/navbar.scss +34 -6
- package/dist/scss/auth/bootstrap/_bootstrap.scss +16 -0
- package/dist/scss/auth/product/leap-4d.scss +22 -0
- package/dist/scss/auth/product/leap.scss +21 -0
- package/dist/scss/auth/product/office-addin.scss +21 -0
- package/dist/scss/auth/theme/bootstrap-variables/_avatar.scss +8 -0
- package/dist/scss/auth/theme/bootstrap-variables/_badges.scss +5 -0
- package/dist/scss/auth/theme/bootstrap-variables/_breadcrumbs.scss +8 -0
- package/dist/scss/auth/theme/bootstrap-variables/_buttons.scss +7 -0
- package/dist/scss/auth/theme/bootstrap-variables/_colours.scss +60 -0
- package/dist/scss/auth/theme/bootstrap-variables/_components.scss +18 -0
- package/dist/scss/auth/theme/bootstrap-variables/_dropdowns.scss +24 -0
- package/dist/scss/auth/theme/bootstrap-variables/_grid.scss +21 -0
- package/dist/scss/auth/theme/bootstrap-variables/_input-box.scss +53 -0
- package/dist/scss/auth/theme/bootstrap-variables/_input-group.scss +0 -0
- package/dist/scss/auth/theme/bootstrap-variables/_input-options.scss +18 -0
- package/dist/scss/auth/theme/bootstrap-variables/_nav.scss +20 -0
- package/dist/scss/auth/theme/bootstrap-variables/_opacity.scss +6 -0
- package/dist/scss/auth/theme/bootstrap-variables/_select.scss +8 -0
- package/dist/scss/auth/theme/bootstrap-variables/_switch.scss +9 -0
- package/dist/scss/auth/theme/bootstrap-variables/_typography.scss +40 -0
- package/dist/scss/auth/theme/bootstrap-variables/_variables.scss +16 -0
- package/dist/scss/auth/theme/components/_badge.scss +34 -0
- package/dist/scss/auth/theme/components/_buttons.scss +86 -0
- package/dist/scss/auth/theme/components/_components.scss +12 -0
- package/dist/scss/auth/theme/components/_divider.scss +14 -0
- package/dist/scss/auth/theme/components/_dropdown.scss +40 -0
- package/dist/scss/auth/theme/components/_icons.scss +27 -0
- package/dist/scss/auth/theme/components/_nav.scss +79 -0
- package/dist/scss/auth/theme/components/_toastr.scss +24 -0
- package/dist/scss/auth/theme/components/forms/_checkbox.scss +73 -0
- package/dist/scss/auth/theme/components/forms/_form-control.scss +59 -0
- package/dist/scss/auth/theme/components/forms/_form-group.scss +8 -0
- package/dist/scss/auth/theme/components/forms/_forms.scss +4 -0
- package/dist/scss/auth/theme/components/forms/_input-group.scss +43 -0
- package/dist/scss/auth/theme/css-variables/_leap-4d.scss +74 -0
- package/dist/scss/auth/theme/css-variables/_leap.scss +77 -0
- package/dist/scss/auth/theme/css-variables/_office-addin.scss +73 -0
- package/dist/scss/auth/theme/features/_auth.scss +288 -0
- package/dist/scss/auth/theme/mixins/_badge.scss +12 -0
- package/dist/scss/auth/theme/mixins/_icons.scss +7 -0
- package/dist/scss/auth/theme/mixins/_mixins.scss +2 -0
- package/dist/scss/product/auth-leap-addin.scss +21 -0
- package/dist/scss/product/auth-leap-desktop.scss +22 -0
- package/dist/scss/product/auth-leap-web.scss +21 -0
- package/dist/scss/xsf-crx/sf-leap.js +103 -2
- package/package.json +3 -2
|
@@ -0,0 +1,288 @@
|
|
|
1
|
+
html {
|
|
2
|
+
height: 100%;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
.auth-page {
|
|
6
|
+
background-color: var(--leap-body-background-color);
|
|
7
|
+
// display: grid;
|
|
8
|
+
// place-items: center;
|
|
9
|
+
display: flex;
|
|
10
|
+
align-items: center;
|
|
11
|
+
min-height: 100%;
|
|
12
|
+
padding-left: 1rem;
|
|
13
|
+
padding-right: 1rem;
|
|
14
|
+
|
|
15
|
+
@media screen and (min-height: 850px) {
|
|
16
|
+
background-image: url(/img/auth-bg.png);
|
|
17
|
+
background-position: bottom left;
|
|
18
|
+
background-repeat: no-repeat;
|
|
19
|
+
background-size: 1194px;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
> .container {
|
|
23
|
+
align-self: center;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
.auth {
|
|
29
|
+
margin: 0 auto;
|
|
30
|
+
padding-bottom: 23vh;
|
|
31
|
+
height: auto;
|
|
32
|
+
|
|
33
|
+
@media screen and (min-width: 577px) {
|
|
34
|
+
max-width: 21.25rem;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
@media screen and (max-height: 849px) {
|
|
38
|
+
padding-bottom: 0;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
&_container {
|
|
42
|
+
margin: auto;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
&_logo {
|
|
46
|
+
display: flex;
|
|
47
|
+
align-items: center;
|
|
48
|
+
justify-content: center;
|
|
49
|
+
margin-bottom: 3.5rem;
|
|
50
|
+
|
|
51
|
+
@media screen and (max-height: 849px) {
|
|
52
|
+
height: auto;
|
|
53
|
+
margin-bottom: 4vh;
|
|
54
|
+
|
|
55
|
+
> svg {
|
|
56
|
+
height: 100%;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
&_title {
|
|
62
|
+
font-size: $h2-font-size;
|
|
63
|
+
color: var(--leap-heading-color);
|
|
64
|
+
font-weight: $font-weight-bold;
|
|
65
|
+
margin-bottom: 1rem;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
&_form {
|
|
69
|
+
margin: auto;
|
|
70
|
+
.input-group-text,
|
|
71
|
+
.form-control {
|
|
72
|
+
border-radius: var(--leap-border-radius) !important;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
&_links {
|
|
77
|
+
display: flex;
|
|
78
|
+
margin-top: 2rem;
|
|
79
|
+
color: $text-muted;
|
|
80
|
+
text-align: center;
|
|
81
|
+
justify-content: space-between;
|
|
82
|
+
|
|
83
|
+
a {
|
|
84
|
+
text-decoration: none;
|
|
85
|
+
font-size: $font-size-sm;
|
|
86
|
+
font-weight: 400;
|
|
87
|
+
&:hover, &:focus {
|
|
88
|
+
text-decoration: underline;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
@media screen and (max-width: 376px) {
|
|
94
|
+
&_links {
|
|
95
|
+
flex-wrap: wrap;
|
|
96
|
+
margin-bottom: 2rem;
|
|
97
|
+
|
|
98
|
+
.nav {
|
|
99
|
+
width: 100%;
|
|
100
|
+
|
|
101
|
+
> li {
|
|
102
|
+
display: block;
|
|
103
|
+
white-space: wrap;
|
|
104
|
+
width: 100%;
|
|
105
|
+
padding-top: 0.25rem;
|
|
106
|
+
padding-bottom: 0.25rem;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
&_or {
|
|
113
|
+
$or-dim: 2.25rem;
|
|
114
|
+
width: 100%;
|
|
115
|
+
height: $or-dim !important;
|
|
116
|
+
margin: 1.5rem 0;
|
|
117
|
+
display: flex;
|
|
118
|
+
flex-wrap: nowrap;
|
|
119
|
+
align-items: center;
|
|
120
|
+
position: relative;
|
|
121
|
+
user-select: none;
|
|
122
|
+
overflow: hidden;
|
|
123
|
+
> span {
|
|
124
|
+
color: var(--leap-label-color);
|
|
125
|
+
display: block;
|
|
126
|
+
font-weight: 600;
|
|
127
|
+
font-size: 0.875rem;
|
|
128
|
+
text-align: center;
|
|
129
|
+
width: $or-dim;
|
|
130
|
+
height: $or-dim;
|
|
131
|
+
padding-top: 0.25rem;
|
|
132
|
+
border: 2px solid var(--leap-border-color);
|
|
133
|
+
border-radius: $or-dim;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
&::before, &::after {
|
|
137
|
+
content: '';
|
|
138
|
+
display: inline-block;
|
|
139
|
+
width: calc(50% - #{$or-dim / 2});
|
|
140
|
+
height: 0.125rem;
|
|
141
|
+
background-color: var(--leap-border-color);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
&_btn_microsoft {
|
|
146
|
+
display: flex;
|
|
147
|
+
justify-content: center;
|
|
148
|
+
align-items: center;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
$icon_microsoft_dimension: 1.25rem;
|
|
152
|
+
&_icon_microsoft {
|
|
153
|
+
width: $icon_microsoft_dimension;
|
|
154
|
+
height: $icon_microsoft_dimension;
|
|
155
|
+
margin-top: -0.0625rem;
|
|
156
|
+
margin-right: 0.5rem;
|
|
157
|
+
$microsoft-icon: str-replace(url("data:image/svg+xml,%3Csvg width='20' height='21' viewBox='0 0 20 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_2_21)'%3E%3Cpath d='M0 0.125H20V20.125H0V0.125Z' fill='%23F3F3F3'/%3E%3Cpath d='M0.869568 0.994564H9.56522V9.69022H0.869568V0.994564Z' fill='%23F35325'/%3E%3Cpath d='M10.4348 0.994564H19.1304V9.69022H10.4348V0.994564Z' fill='%2381BC06'/%3E%3Cpath d='M0.869568 10.5598H9.56522V19.2554H0.869568V10.5598Z' fill='%2305A6F0'/%3E%3Cpath d='M10.4348 10.5598H19.1304V19.2554H10.4348V10.5598Z' fill='%23FFBA08'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_2_21'%3E%3Crect width='20' height='20' fill='white' transform='translate(0 0.125)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A"), "#", "%23");
|
|
158
|
+
&::before {
|
|
159
|
+
width: $icon_microsoft_dimension;
|
|
160
|
+
height: $icon_microsoft_dimension;
|
|
161
|
+
display: inline-block;
|
|
162
|
+
background-repeat: no-repeat;
|
|
163
|
+
background-size: 100%;
|
|
164
|
+
content: '';
|
|
165
|
+
background-image: $microsoft-icon;
|
|
166
|
+
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
&_permissions {
|
|
171
|
+
padding-top: 0.25rem;
|
|
172
|
+
padding-right: 0.25rem;
|
|
173
|
+
padding-bottom: 0.25rem;
|
|
174
|
+
background-color: #f7f7f7;
|
|
175
|
+
border-radius: var(--leap-border-radius);
|
|
176
|
+
margin-bottom: 1rem;
|
|
177
|
+
|
|
178
|
+
&:hover > .auth_permissions_list::-webkit-scrollbar-thumb {
|
|
179
|
+
background-color: #333;
|
|
180
|
+
transition: all 0.25s ease-out;
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
&_permissions_list {
|
|
185
|
+
list-style-type: none;
|
|
186
|
+
padding-left: 0;
|
|
187
|
+
margin-bottom: 0;
|
|
188
|
+
background-color: #f7f7f7;
|
|
189
|
+
padding: 0.75rem 0.75rem 0.75rem 1rem;
|
|
190
|
+
overflow-y: auto;
|
|
191
|
+
min-height: 200px;
|
|
192
|
+
max-height: 30vh;
|
|
193
|
+
-webkit-overflow-scrolling: touch;
|
|
194
|
+
|
|
195
|
+
&::-webkit-scrollbar {
|
|
196
|
+
width: 0.5rem;
|
|
197
|
+
border-top-right-radius: 4px;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
&::-webkit-scrollbar-thumb {
|
|
201
|
+
border-radius: 8px;
|
|
202
|
+
background-color: var(--leap-border-color);
|
|
203
|
+
transition: all 0.25s ease-out;
|
|
204
|
+
&:hover {
|
|
205
|
+
background-color: #333;
|
|
206
|
+
transition: all 0.25s ease-out;
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
> li {
|
|
211
|
+
&:not(:first-child) {
|
|
212
|
+
margin-top: 1rem;
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
> ul {
|
|
216
|
+
list-style-type: none;
|
|
217
|
+
padding-left: 0;
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
> ul li {
|
|
221
|
+
&::before {
|
|
222
|
+
display: inline-block;
|
|
223
|
+
content: '-';
|
|
224
|
+
margin-right: 0.25rem;
|
|
225
|
+
}
|
|
226
|
+
margin-bottom: 0.25rem;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
// @media screen and (min-width: 577px) {
|
|
232
|
+
&_support_tabcontent {
|
|
233
|
+
min-height: 21.5rem;
|
|
234
|
+
}
|
|
235
|
+
// }
|
|
236
|
+
|
|
237
|
+
&_firm_id {
|
|
238
|
+
position: relative;
|
|
239
|
+
|
|
240
|
+
.form-control {
|
|
241
|
+
z-index: 1;
|
|
242
|
+
padding-right: 3rem;
|
|
243
|
+
|
|
244
|
+
@if not $is-desktop {
|
|
245
|
+
padding-left: 1rem;
|
|
246
|
+
}
|
|
247
|
+
@else {
|
|
248
|
+
padding-left: 0.5rem;
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
.btn-icon-only {
|
|
253
|
+
height: auto;
|
|
254
|
+
padding: 0.5rem;
|
|
255
|
+
position: absolute;
|
|
256
|
+
z-index: 2;
|
|
257
|
+
|
|
258
|
+
@if $is-desktop {
|
|
259
|
+
right: 0;
|
|
260
|
+
top: 0;
|
|
261
|
+
bottom: 0;
|
|
262
|
+
}
|
|
263
|
+
@else {
|
|
264
|
+
right: 0.25rem;
|
|
265
|
+
top: 0.25rem;
|
|
266
|
+
bottom: 0.25rem;
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
.icon {
|
|
270
|
+
width: 1.2rem;
|
|
271
|
+
height: 1.2rem;
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
&_reason {
|
|
277
|
+
@if $is-desktop {
|
|
278
|
+
> span.input-group-text {
|
|
279
|
+
height: 60% !important;
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
@else {
|
|
283
|
+
> span.input-group-text {
|
|
284
|
+
height: 71% !important;
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
@mixin badge-variant-outline($bg, $color, $border) {
|
|
2
|
+
color: $color;
|
|
3
|
+
background-color: rgba($bg, 0.12);
|
|
4
|
+
border: 1px solid $border;
|
|
5
|
+
|
|
6
|
+
&[href]:hover,
|
|
7
|
+
&[href]:focus {
|
|
8
|
+
color: $color;
|
|
9
|
+
text-decoration: none;
|
|
10
|
+
background-color: rgba($bg, 0.2);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Theme
|
|
3
|
+
//
|
|
4
|
+
// Custom variables followed by theme variables followed by Bootstrap variables
|
|
5
|
+
// to ensure cascade of styles.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
// Bootstrap functions
|
|
9
|
+
@import '~bootstrap/scss/functions';
|
|
10
|
+
|
|
11
|
+
// Custom theme variables override
|
|
12
|
+
@import '../auth/theme/css-variables/office-addin';
|
|
13
|
+
@import '../auth/theme/bootstrap-variables/variables';
|
|
14
|
+
|
|
15
|
+
// Bootstrap core
|
|
16
|
+
@import '../auth/bootstrap/bootstrap';
|
|
17
|
+
|
|
18
|
+
// Custom theme core including mixins / utilities / features
|
|
19
|
+
@import '../auth/theme/mixins/mixins';
|
|
20
|
+
@import '../auth/theme/components/components';
|
|
21
|
+
@import '../auth/theme/features/auth';
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Theme
|
|
3
|
+
//
|
|
4
|
+
// Custom variables followed by theme variables followed by Bootstrap variables
|
|
5
|
+
// to ensure cascade of styles.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
// Bootstrap functions
|
|
9
|
+
@import '~bootstrap/scss/functions';
|
|
10
|
+
|
|
11
|
+
// Custom theme variables override
|
|
12
|
+
@import '../auth/theme/css-variables/leap-4d';
|
|
13
|
+
@import '../auth/theme/bootstrap-variables/variables';
|
|
14
|
+
|
|
15
|
+
// Bootstrap core
|
|
16
|
+
@import '../auth/bootstrap/bootstrap';
|
|
17
|
+
|
|
18
|
+
// Custom theme core including mixins / utilities / features
|
|
19
|
+
@import '../auth/theme/mixins/mixins';
|
|
20
|
+
@import '../auth/theme/components/components';
|
|
21
|
+
@import '../auth/theme/features/auth';
|
|
22
|
+
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Theme
|
|
3
|
+
//
|
|
4
|
+
// Custom variables followed by theme variables followed by Bootstrap variables
|
|
5
|
+
// to ensure cascade of styles.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
// Bootstrap functions
|
|
9
|
+
@import '~bootstrap/scss/functions';
|
|
10
|
+
|
|
11
|
+
// Custom theme variables override
|
|
12
|
+
@import '../auth/theme/css-variables/leap';
|
|
13
|
+
@import '../auth/theme/bootstrap-variables/variables';
|
|
14
|
+
|
|
15
|
+
// Bootstrap core
|
|
16
|
+
@import '../auth/bootstrap/bootstrap';
|
|
17
|
+
|
|
18
|
+
// Custom theme core including mixins / utilities / features
|
|
19
|
+
@import '../auth/theme/mixins/mixins';
|
|
20
|
+
@import '../auth/theme/components/components';
|
|
21
|
+
@import '../auth/theme/features/auth';
|
|
@@ -10,6 +10,55 @@
|
|
|
10
10
|
return getChildren(n.parentNode.firstChild, n);
|
|
11
11
|
};
|
|
12
12
|
|
|
13
|
+
var getClosestParent = function (elem, selector) {
|
|
14
|
+
if (!Element.prototype.matches) {
|
|
15
|
+
Element.prototype.matches =
|
|
16
|
+
Element.prototype.matchesSelector ||
|
|
17
|
+
Element.prototype.mozMatchesSelector ||
|
|
18
|
+
Element.prototype.msMatchesSelector ||
|
|
19
|
+
Element.prototype.oMatchesSelector ||
|
|
20
|
+
Element.prototype.webkitMatchesSelector ||
|
|
21
|
+
function (s) {
|
|
22
|
+
const matches = (this.document || this.ownerDocument).querySelectorAll(s),
|
|
23
|
+
i = matches.length;
|
|
24
|
+
while (--i >= 0 && matches.item(i) !== this) { }
|
|
25
|
+
return i > -1;
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
// Get the closest matching element
|
|
30
|
+
for (; elem && elem !== document; elem = elem.parentNode) {
|
|
31
|
+
if (elem.matches(selector)) return elem;
|
|
32
|
+
}
|
|
33
|
+
return null;
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
// For Version 1 the order of Hash appendages is Tab -> Accordion -> Subaccordion
|
|
37
|
+
var appendHash = function (str) {
|
|
38
|
+
window.location.hash = (() => {
|
|
39
|
+
const lowercasedStr = str.toLowerCase();
|
|
40
|
+
return lowercasedStr.split(' ').join('-');
|
|
41
|
+
})();
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
var getDeviceType = function () {
|
|
45
|
+
const ua = navigator.userAgent;
|
|
46
|
+
const isiOS = () => {
|
|
47
|
+
return /iPad|iPhone/.test(ua) || navigator.platform === 'MacIntel' && navigator.maxTouchPoints > 1;
|
|
48
|
+
};
|
|
49
|
+
const isAndroid = () => { return /android/i.test(ua); };
|
|
50
|
+
|
|
51
|
+
if (isAndroid()) {
|
|
52
|
+
return 'android';
|
|
53
|
+
}
|
|
54
|
+
else if (isiOS()) {
|
|
55
|
+
if (/iPad/.test(ua)) { return 'ipad'; }
|
|
56
|
+
else if (/iPhone/.test(ua)) { return 'iphone'; }
|
|
57
|
+
else { return 'ios'; }
|
|
58
|
+
}
|
|
59
|
+
return;
|
|
60
|
+
};
|
|
61
|
+
|
|
13
62
|
document.addEventListener('click', function (event) {
|
|
14
63
|
var
|
|
15
64
|
targetElem = event.target,
|
|
@@ -33,15 +82,18 @@
|
|
|
33
82
|
activeTabBtn.classList.add('active');
|
|
34
83
|
targetTab.classList.add('in');
|
|
35
84
|
|
|
36
|
-
|
|
85
|
+
appendHash(targetElem.textContent);
|
|
86
|
+
|
|
87
|
+
activeBtnTabSiblings.forEach(function (element) {
|
|
37
88
|
if (element.classList.value.indexOf('active') !== -1) element.classList.remove('active');
|
|
38
89
|
});
|
|
39
|
-
targetTabSiblings.forEach(function (element
|
|
90
|
+
targetTabSiblings.forEach(function (element) {
|
|
40
91
|
if (element.classList.value.indexOf('in') !== -1) element.classList.remove('in');
|
|
41
92
|
});
|
|
42
93
|
}
|
|
43
94
|
|
|
44
95
|
if (className.value.indexOf('sf-accordion-toggle') !== -1) {
|
|
96
|
+
appendHash(targetElem.querySelector('.sf-accordion-text').textContent);
|
|
45
97
|
className.value.indexOf('in') == -1 ?
|
|
46
98
|
className.add('in') : className.remove('in');
|
|
47
99
|
}
|
|
@@ -49,4 +101,53 @@
|
|
|
49
101
|
return false;
|
|
50
102
|
}, false);
|
|
51
103
|
|
|
104
|
+
// Set default tab via URL hash or device type if present on tabs
|
|
105
|
+
document.addEventListener('DOMContentLoaded', function () {
|
|
106
|
+
const tabs = document.querySelectorAll('.sf-tabs');
|
|
107
|
+
const accordion = document.querySelectorAll('.sf-accordion-toggle');
|
|
108
|
+
const urlHashList = window.location.hash !== '' ? window.location.hash.substring(1).split('#') : undefined;
|
|
109
|
+
|
|
110
|
+
const openParent = (childElement) => {
|
|
111
|
+
const closestTab = getClosestParent(childElement, '.sf-tab-content');
|
|
112
|
+
const closestAccordion = getClosestParent(childElement, '.sf-accordion-content');
|
|
113
|
+
|
|
114
|
+
if (closestTab !== null) {
|
|
115
|
+
document.getElementById(`target_${closestTab.id}`).click();
|
|
116
|
+
}
|
|
117
|
+
if (closestAccordion !== null) {
|
|
118
|
+
document.getElementById(`target_${closestAccordion.id}`).click();
|
|
119
|
+
}
|
|
120
|
+
};
|
|
121
|
+
|
|
122
|
+
if (tabs.length !== 0) {
|
|
123
|
+
tabs.forEach(tab => {
|
|
124
|
+
const deviceType = getDeviceType();
|
|
125
|
+
tab.querySelectorAll('.sf-tab-item-link').forEach(tabitem => {
|
|
126
|
+
const tabItemText = tabitem.textContent.toLowerCase().replace(/\s/g, '');
|
|
127
|
+
|
|
128
|
+
if (tabItemText === deviceType && typeof (urlHashList) === 'undefined') {
|
|
129
|
+
tabitem.click();
|
|
130
|
+
}
|
|
131
|
+
else if (typeof (urlHashList) !== 'undefined' && urlHashList.includes(tabItemText)) {
|
|
132
|
+
openParent(tabitem);
|
|
133
|
+
tabitem.click();
|
|
134
|
+
}
|
|
135
|
+
});
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
if (accordion.length !== 0) {
|
|
140
|
+
accordion.forEach(accordionToggle => {
|
|
141
|
+
const accordionText = accordionToggle
|
|
142
|
+
.querySelector('.sf-accordion-text')
|
|
143
|
+
.textContent.split(' ').join('-').toLowerCase();
|
|
144
|
+
|
|
145
|
+
if (typeof (urlHashList) !== 'undefined' && urlHashList.includes(accordionText)) {
|
|
146
|
+
openParent(accordionToggle);
|
|
147
|
+
accordionToggle.click();
|
|
148
|
+
}
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
});
|
|
152
|
+
|
|
52
153
|
})();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@leapdev/gui",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.238",
|
|
4
4
|
"description": "LEAP GUI",
|
|
5
5
|
"author": "LEAP Dev",
|
|
6
6
|
"license": "ISC",
|
|
@@ -48,5 +48,6 @@
|
|
|
48
48
|
"webpack": "^4.44.1",
|
|
49
49
|
"webpack-cli": "^3.3.12",
|
|
50
50
|
"webpack-dev-server": "^3.11.0"
|
|
51
|
-
}
|
|
51
|
+
},
|
|
52
|
+
"dependencies": {}
|
|
52
53
|
}
|