@iamproperty/components 5.1.0-beta → 5.1.0-beta11
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/assets/css/components/accordion.global.css.map +1 -1
- package/assets/css/components/card.css +1 -1
- package/assets/css/components/card.css.map +1 -1
- package/assets/css/components/carousel.css +1 -1
- package/assets/css/components/carousel.css.map +1 -1
- package/assets/css/components/component.native.css +1 -1
- package/assets/css/components/component.native.css.map +1 -1
- package/assets/css/components/component.reset.css +1 -1
- package/assets/css/components/component.reset.css.map +1 -1
- package/assets/css/components/fileupload.css +1 -1
- package/assets/css/components/fileupload.css.map +1 -1
- package/assets/css/components/header.css +1 -1
- package/assets/css/components/header.css.map +1 -1
- package/assets/css/components/marketing.css +1 -0
- package/assets/css/components/marketing.css.map +1 -0
- package/assets/css/components/nav.css +1 -1
- package/assets/css/components/nav.css.map +1 -1
- package/assets/css/components/nav.global.css +1 -1
- package/assets/css/components/nav.global.css.map +1 -1
- package/assets/css/components/pagination.css +1 -1
- package/assets/css/components/pagination.css.map +1 -1
- package/assets/css/components/slider.css.map +1 -1
- package/assets/css/core.min.css +1 -1
- package/assets/css/core.min.css.map +1 -1
- package/assets/css/style.min.css +1 -1
- package/assets/css/style.min.css.map +1 -1
- package/assets/img/signin-bg.png +0 -0
- package/assets/js/components/accordion/accordion.component.min.js +1 -1
- package/assets/js/components/actionbar/actionbar.component.min.js +1 -1
- package/assets/js/components/address-lookup/address-lookup.component.js +17 -3
- package/assets/js/components/address-lookup/address-lookup.component.min.js +4 -4
- package/assets/js/components/address-lookup/address-lookup.component.min.js.map +1 -1
- package/assets/js/components/applied-filters/applied-filters.component.min.js +1 -1
- package/assets/js/components/card/card.component.js +2 -1
- package/assets/js/components/card/card.component.min.js +4 -3
- package/assets/js/components/card/card.component.min.js.map +1 -1
- package/assets/js/components/carousel/carousel.component.js +61 -0
- package/assets/js/components/collapsible-side/collapsible-side.component.min.js +1 -1
- package/assets/js/components/fileupload/fileupload.component.min.js +2 -2
- package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
- package/assets/js/components/header/header.component.js +6 -12
- package/assets/js/components/header/header.component.min.js +8 -14
- package/assets/js/components/header/header.component.min.js.map +1 -1
- package/assets/js/components/marketing/marketing.component.js +37 -0
- package/assets/js/components/nav/nav.component.js +4 -36
- package/assets/js/components/nav/nav.component.min.js +10 -13
- package/assets/js/components/nav/nav.component.min.js.map +1 -1
- package/assets/js/components/notification/notification.component.min.js +1 -1
- package/assets/js/components/pagination/pagination.component.min.js +2 -2
- package/assets/js/components/search/search.component.js +148 -0
- package/assets/js/components/search/search.component.min.js +14 -0
- package/assets/js/components/search/search.component.min.js.map +1 -0
- package/assets/js/components/table/table.component.min.js +5 -5
- package/assets/js/components/table/table.component.min.js.map +1 -1
- package/assets/js/components/tabs/tabs.component.min.js +1 -1
- package/assets/js/dynamic.js +1 -1
- package/assets/js/dynamic.min.js +5 -4
- package/assets/js/dynamic.min.js.map +1 -1
- package/assets/js/modules/carousel.js +15 -23
- package/assets/js/modules/dynamicEvents.js +28 -13
- package/assets/js/modules/helpers.js +8 -1
- package/assets/js/modules/inputs.js +57 -0
- package/assets/js/modules/table.js +8 -6
- package/assets/js/scripts.bundle.js +39 -43
- package/assets/js/scripts.bundle.js.map +1 -1
- package/assets/js/scripts.bundle.min.js +2 -2
- package/assets/js/scripts.bundle.min.js.map +1 -1
- package/assets/js/vendor/hibp.js +78 -0
- package/assets/sass/_corefiles.scss +1 -0
- package/assets/sass/_elements.scss +1 -1
- package/assets/sass/_functions/mixins.scss +16 -0
- package/assets/sass/_functions/utilities.scss +0 -17
- package/assets/sass/_functions/variables.scss +1 -0
- package/assets/sass/components/card.scss +23 -3
- package/assets/sass/components/carousel.scss +86 -159
- package/assets/sass/components/component.native.scss +86 -3
- package/assets/sass/components/fileupload.scss +1 -1
- package/assets/sass/components/header.scss +53 -55
- package/assets/sass/components/marketing.scss +64 -0
- package/assets/sass/components/nav.global.scss +2 -1
- package/assets/sass/components/nav.scss +7 -1
- package/assets/sass/components/pagination.scss +4 -0
- package/assets/sass/elements/admin-panel.scss +9 -7
- package/assets/sass/elements/badge.scss +29 -0
- package/assets/sass/elements/dialog.scss +4 -4
- package/assets/sass/elements/forms.scss +23 -4
- package/assets/sass/elements/links.scss +2 -1
- package/assets/sass/foundations/reboot.scss +12 -13
- package/assets/sass/foundations/root.scss +11 -3
- package/assets/sass/helpers/max-height.scss +78 -4
- package/assets/sass/templates/auth.scss +112 -0
- package/assets/ts/components/address-lookup/address-lookup.component.ts +23 -4
- package/assets/ts/components/card/card.component.ts +2 -1
- package/assets/ts/components/carousel/README.md +39 -0
- package/assets/ts/components/carousel/carousel.component.ts +75 -0
- package/assets/ts/components/header/header.component.ts +6 -12
- package/assets/ts/components/marketing/marketing.component.ts +49 -0
- package/assets/ts/components/nav/README.md +2 -13
- package/assets/ts/components/nav/nav.component.ts +4 -47
- package/assets/ts/components/search/search.component.ts +177 -0
- package/assets/ts/dynamic.ts +1 -1
- package/assets/ts/modules/carousel.ts +21 -33
- package/assets/ts/modules/dynamicEvents.ts +44 -24
- package/assets/ts/modules/helpers.ts +13 -2
- package/assets/ts/modules/inputs.ts +79 -0
- package/assets/ts/modules/table.ts +11 -14
- package/assets/ts/vendor/hibp.ts +81 -0
- package/dist/components.es.js +744 -949
- package/dist/components.umd.js +107 -101
- package/dist/style.css +1 -1
- package/package.json +1 -1
- package/src/components/Carousel/Carousel.vue +18 -103
- package/src/components/Header/Header.vue +1 -3
- package/src/components/Marketing/Marketing.vue +39 -0
- package/src/components/Marketing/README.md +20 -0
- package/src/components/Nav/README.md +1 -12
- package/src/components/Search/Search.vue +25 -0
- package/src/components/Carousel/Carousel.spec.js +0 -45
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
/**
|
|
3
|
+
* hibp.js
|
|
4
|
+
* @version v1
|
|
5
|
+
* @author Mehdi Bounya
|
|
6
|
+
*
|
|
7
|
+
* Report any bugs here: https://github.com/mehdibo/hibp-js
|
|
8
|
+
*
|
|
9
|
+
* The MIT License (http://www.opensource.org/licenses/mit-license.php)
|
|
10
|
+
*
|
|
11
|
+
* Permission is hereby granted, free of charge, to any person
|
|
12
|
+
* obtaining a copy of this software and associated documentation
|
|
13
|
+
* files (the "Software"), to deal in the Software without
|
|
14
|
+
* restriction, including without limitation the rights to use,
|
|
15
|
+
* copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
16
|
+
* copies of the Software, and to permit persons to whom the
|
|
17
|
+
* Software is furnished to do so, subject to the following
|
|
18
|
+
* conditions:
|
|
19
|
+
*
|
|
20
|
+
* The above copyright notice and this permission notice shall be
|
|
21
|
+
* included in all copies or substantial portions of the Software.
|
|
22
|
+
*
|
|
23
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
24
|
+
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
|
25
|
+
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
26
|
+
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
|
27
|
+
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
|
28
|
+
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
29
|
+
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
|
30
|
+
* OTHER DEALINGS IN THE SOFTWARE.
|
|
31
|
+
*/
|
|
32
|
+
function sha1(string) {
|
|
33
|
+
var buffer = new TextEncoder("utf-8").encode(string);
|
|
34
|
+
return crypto.subtle.digest("SHA-1", buffer).then(function (buffer) {
|
|
35
|
+
// Get the hex code
|
|
36
|
+
var hexCodes = [];
|
|
37
|
+
var view = new DataView(buffer);
|
|
38
|
+
for (var i = 0; i < view.byteLength; i += 4) {
|
|
39
|
+
// Using getUint32 reduces the number of iterations needed (we process 4 bytes each time)
|
|
40
|
+
var value = view.getUint32(i);
|
|
41
|
+
// toString(16) will give the hex representation of the number without padding
|
|
42
|
+
var stringValue = value.toString(16);
|
|
43
|
+
// We use concatenation and slice for padding
|
|
44
|
+
var padding = '00000000';
|
|
45
|
+
var paddedValue = (padding + stringValue).slice(-padding.length);
|
|
46
|
+
hexCodes.push(paddedValue);
|
|
47
|
+
}
|
|
48
|
+
// Join all the hex strings into one
|
|
49
|
+
return hexCodes.join("");
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
const hibpCheck = (pwd, input) => {
|
|
53
|
+
// We hash the pwd first
|
|
54
|
+
sha1(pwd).then(function (hash) {
|
|
55
|
+
// We send the first 5 chars of the hash to hibp's API
|
|
56
|
+
const req = new XMLHttpRequest();
|
|
57
|
+
req.addEventListener("load", function () {
|
|
58
|
+
// When we get back a response from the server
|
|
59
|
+
// We create an array of lines and loop through them
|
|
60
|
+
const resp = this.responseText.split('\n');
|
|
61
|
+
const hashSub = hash.slice(5).toUpperCase();
|
|
62
|
+
var result = false;
|
|
63
|
+
for (let index in resp) {
|
|
64
|
+
// Check if the line matches the rest of the hash
|
|
65
|
+
if (resp[index].substring(0, 35) == hashSub) {
|
|
66
|
+
result = true;
|
|
67
|
+
break; // If found no need to continue the loop
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
// Trigger an event with the result
|
|
71
|
+
const event = new CustomEvent('hibpCheck', { detail: result });
|
|
72
|
+
input.dispatchEvent(event);
|
|
73
|
+
});
|
|
74
|
+
req.open('GET', 'https://api.pwnedpasswords.com/range/' + hash.substr(0, 5));
|
|
75
|
+
req.send();
|
|
76
|
+
});
|
|
77
|
+
};
|
|
78
|
+
export default hibpCheck;
|
|
@@ -211,3 +211,19 @@
|
|
|
211
211
|
--colour-#{$color}: #{$value};
|
|
212
212
|
}
|
|
213
213
|
}
|
|
214
|
+
|
|
215
|
+
@mixin slotted($el, $isComponent:"true"){
|
|
216
|
+
|
|
217
|
+
@if $isComponent == "true" {
|
|
218
|
+
::slotted(#{$el}) {
|
|
219
|
+
|
|
220
|
+
@content;
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
@else {
|
|
224
|
+
#{$el} {
|
|
225
|
+
|
|
226
|
+
@content;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
}
|
|
@@ -201,23 +201,6 @@ $utilities: map-merge(
|
|
|
201
201
|
);
|
|
202
202
|
// #endregion
|
|
203
203
|
|
|
204
|
-
// #region Max height classes
|
|
205
|
-
$utilities: map-merge(
|
|
206
|
-
$utilities,
|
|
207
|
-
(
|
|
208
|
-
"max-heights": (
|
|
209
|
-
property: max-height,
|
|
210
|
-
class: mh,
|
|
211
|
-
values: (
|
|
212
|
-
"sm": #{rem(200)},
|
|
213
|
-
"md": #{rem(400)},
|
|
214
|
-
"lg": #{rem(600)}
|
|
215
|
-
)
|
|
216
|
-
)
|
|
217
|
-
)
|
|
218
|
-
);
|
|
219
|
-
// #endregion
|
|
220
|
-
|
|
221
204
|
// #region Max height classes
|
|
222
205
|
$utilities: map-merge(
|
|
223
206
|
$utilities,
|
|
@@ -39,6 +39,7 @@ $vars: map-merge((
|
|
|
39
39
|
"--container-padding-top": 0,
|
|
40
40
|
"--container-padding-bottom": #{rem(16)},
|
|
41
41
|
"--container-padding-x": #{rem($container-padding-x)},
|
|
42
|
+
"--container-padding-x-sm": #{rem($container-padding-x-sm)},
|
|
42
43
|
"--container-padding-x-md": #{rem($container-padding-x-md)},
|
|
43
44
|
"--container-padding": $container-padding,
|
|
44
45
|
"--container-padding-sm": $container-padding-sm,
|
|
@@ -17,8 +17,8 @@
|
|
|
17
17
|
overflow: hidden;
|
|
18
18
|
z-index: 0;
|
|
19
19
|
background: var(--colour-canvas-2);
|
|
20
|
-
outline:
|
|
21
|
-
outline-offset: -
|
|
20
|
+
outline: 2px solid var(--colour-canvas-2);
|
|
21
|
+
outline-offset: -2px;
|
|
22
22
|
|
|
23
23
|
&.border-0 {
|
|
24
24
|
box-shadow: none;
|
|
@@ -131,7 +131,7 @@
|
|
|
131
131
|
vertical-align: middle!important;
|
|
132
132
|
}
|
|
133
133
|
|
|
134
|
-
::slotted(span){
|
|
134
|
+
::slotted(span:not(.badge)){
|
|
135
135
|
display: block!important;
|
|
136
136
|
font-weight: normal!important;
|
|
137
137
|
padding-top: rem(24)!important;
|
|
@@ -139,6 +139,26 @@
|
|
|
139
139
|
}
|
|
140
140
|
// #endregion
|
|
141
141
|
|
|
142
|
+
// #region card bages
|
|
143
|
+
.card__badges {
|
|
144
|
+
position: absolute;
|
|
145
|
+
top: 0;
|
|
146
|
+
right: 0.25rem;
|
|
147
|
+
padding: 0.25rem;
|
|
148
|
+
z-index: 9;
|
|
149
|
+
text-align: right;
|
|
150
|
+
width: 1;
|
|
151
|
+
}
|
|
152
|
+
.card__head .card__badges {
|
|
153
|
+
|
|
154
|
+
top: auto;
|
|
155
|
+
bottom: 0;
|
|
156
|
+
text-align: left;
|
|
157
|
+
left: 0.25rem;
|
|
158
|
+
right: auto;
|
|
159
|
+
}
|
|
160
|
+
// #endregion
|
|
161
|
+
|
|
142
162
|
// #region border left
|
|
143
163
|
.card[class*="colour-"],
|
|
144
164
|
.card--filter {
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
// #region default carousel
|
|
4
4
|
.carousel {
|
|
5
|
-
padding-bottom: 3rem;
|
|
6
5
|
|
|
7
6
|
.carousel__wrapper {
|
|
8
7
|
|
|
@@ -14,45 +13,31 @@
|
|
|
14
13
|
--gutter-x: #{$grid-gutter-width};
|
|
15
14
|
overflow: auto;
|
|
16
15
|
scroll-snap-type: x mandatory;
|
|
17
|
-
margin-right: calc(var(--gutter-x) * -.5);
|
|
18
|
-
margin-left: calc(var(--gutter-x) * -.5);
|
|
19
|
-
|
|
20
|
-
> .row {
|
|
21
|
-
flex-wrap: nowrap;
|
|
22
|
-
margin: 0;
|
|
23
|
-
|
|
24
|
-
> .col {
|
|
25
|
-
padding-top: rem(36);
|
|
26
|
-
padding-bottom: rem(24);
|
|
27
|
-
scroll-snap-align: start;
|
|
28
|
-
scroll-padding: calc(var(--gutter-x) * -1);
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
16
|
}
|
|
32
17
|
|
|
33
|
-
.
|
|
18
|
+
.col > *:last-child {
|
|
34
19
|
margin-bottom: 0;
|
|
35
20
|
padding-bottom: 0;
|
|
36
21
|
}
|
|
37
22
|
}
|
|
23
|
+
|
|
24
|
+
|
|
38
25
|
// #endregion
|
|
39
26
|
|
|
40
27
|
// #region Remove the scrollbar
|
|
41
|
-
|
|
28
|
+
.carousel__inner {
|
|
42
29
|
// FireFox
|
|
43
30
|
scrollbar-width: none;
|
|
44
31
|
// IE10+
|
|
45
32
|
-ms-overflow-style: none;
|
|
46
33
|
}
|
|
47
34
|
|
|
48
|
-
|
|
35
|
+
.carousel__inner::-webkit-scrollbar {
|
|
49
36
|
// Chrome, Safari, Edge
|
|
50
37
|
display: none;
|
|
51
38
|
}
|
|
52
39
|
// #endregion
|
|
53
40
|
|
|
54
|
-
|
|
55
|
-
|
|
56
41
|
// #region Direction button
|
|
57
42
|
.btn-next,
|
|
58
43
|
.btn-prev {
|
|
@@ -63,13 +48,8 @@ body.js-enabled .carousel__inner::-webkit-scrollbar {
|
|
|
63
48
|
background: var(--marker-bg);
|
|
64
49
|
border-radius: 100%;
|
|
65
50
|
width: rem(36);
|
|
51
|
+
max-width: rem(36);
|
|
66
52
|
height: rem(36);
|
|
67
|
-
|
|
68
|
-
@include media-breakpoint-up(md) {
|
|
69
|
-
|
|
70
|
-
width: rem(48);
|
|
71
|
-
height: rem(48);
|
|
72
|
-
}
|
|
73
53
|
text-indent: -300rem;
|
|
74
54
|
overflow: hidden;
|
|
75
55
|
border: none;
|
|
@@ -77,6 +57,11 @@ body.js-enabled .carousel__inner::-webkit-scrollbar {
|
|
|
77
57
|
margin: 0 rem(8);
|
|
78
58
|
padding: 0;
|
|
79
59
|
|
|
60
|
+
position: absolute;
|
|
61
|
+
top: 50%;
|
|
62
|
+
left: 0rem;
|
|
63
|
+
transform: translate(0,-50%);
|
|
64
|
+
|
|
80
65
|
&:disabled {
|
|
81
66
|
opacity: 0.8;
|
|
82
67
|
pointer-events: none;
|
|
@@ -114,194 +99,136 @@ body.js-enabled .carousel__inner::-webkit-scrollbar {
|
|
|
114
99
|
}
|
|
115
100
|
}
|
|
116
101
|
|
|
102
|
+
.btn-next {
|
|
103
|
+
left: auto;
|
|
104
|
+
right: 0;
|
|
105
|
+
|
|
106
|
+
@include media-breakpoint-up(md) {
|
|
107
|
+
|
|
108
|
+
margin-right: rem(-48);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
|
|
117
112
|
.btn-prev {
|
|
113
|
+
|
|
114
|
+
@include media-breakpoint-up(md) {
|
|
115
|
+
|
|
116
|
+
margin-left: rem(-48);
|
|
117
|
+
}
|
|
118
|
+
|
|
118
119
|
&:after {
|
|
119
120
|
|
|
120
121
|
transform: rotate(180deg);
|
|
121
122
|
}
|
|
122
123
|
}
|
|
123
|
-
// #endregion
|
|
124
124
|
|
|
125
125
|
|
|
126
|
-
// #region carousel controls/pips
|
|
127
|
-
.carousel:not(.hide-controls) {
|
|
128
|
-
padding-bottom: 4.5rem!important;
|
|
129
|
-
}
|
|
130
126
|
|
|
131
|
-
.carousel.hide-controls .carousel__controls {
|
|
132
|
-
display: none;
|
|
133
|
-
}
|
|
134
127
|
|
|
128
|
+
|
|
129
|
+
// #endregion
|
|
130
|
+
|
|
131
|
+
// #region carousel controls/pips
|
|
135
132
|
.carousel .carousel__controls {
|
|
136
|
-
|
|
133
|
+
|
|
137
134
|
text-align: center;
|
|
138
|
-
width:
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
margin-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
135
|
+
width: 10rem;
|
|
136
|
+
max-height: 1rem;
|
|
137
|
+
overflow: hidden;
|
|
138
|
+
margin-inline: auto;
|
|
139
|
+
|
|
140
|
+
@include media-breakpoint-up(sm) {
|
|
141
|
+
width: 100%;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
button {
|
|
146
145
|
width: 1rem;
|
|
147
146
|
height: 1rem;
|
|
148
147
|
min-height: 1rem;
|
|
149
148
|
border-radius: 50%;
|
|
150
149
|
text-indent: -50rem;
|
|
151
150
|
overflow: hidden;
|
|
152
|
-
background:
|
|
151
|
+
background: var(--colour-primary-theme);
|
|
153
152
|
padding: 0;
|
|
154
153
|
margin: 0 0.5rem 0.5rem 0.5rem;
|
|
154
|
+
border: none;
|
|
155
155
|
|
|
156
156
|
&:before {
|
|
157
157
|
display: none;
|
|
158
158
|
}
|
|
159
159
|
}
|
|
160
160
|
|
|
161
|
-
|
|
161
|
+
button:first-child:last-child {
|
|
162
162
|
display: none;
|
|
163
163
|
}
|
|
164
164
|
}
|
|
165
165
|
|
|
166
|
-
.
|
|
166
|
+
.carousel__controls > button[aria-current] {
|
|
167
167
|
|
|
168
|
-
|
|
168
|
+
background: var(--colour-success);
|
|
169
169
|
}
|
|
170
|
+
|
|
170
171
|
// #endregion
|
|
171
172
|
|
|
172
|
-
// #region
|
|
173
|
+
// #region Hide buttons and pips
|
|
173
174
|
.carousel.hide-btns .carousel__wrapper > .btn {
|
|
174
175
|
display: none;
|
|
175
176
|
}
|
|
176
177
|
|
|
177
|
-
.carousel
|
|
178
|
-
|
|
179
|
-
margin-left: rem(28);
|
|
180
|
-
margin-right: rem(28);
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
.carousel .carousel__wrapper > .btn {
|
|
184
|
-
position: absolute;
|
|
185
|
-
top: 50%;
|
|
186
|
-
left: -1.25rem;
|
|
187
|
-
transform: translate(0,-50%);
|
|
188
|
-
|
|
189
|
-
&.btn-next {
|
|
190
|
-
left: auto;
|
|
191
|
-
right: -1.25rem;
|
|
192
|
-
}
|
|
193
|
-
|
|
194
|
-
@include media-breakpoint-up(md) {
|
|
195
|
-
|
|
196
|
-
margin-left: -1rem;
|
|
197
|
-
margin-right: -1rem;
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
// #endregion
|
|
203
|
-
|
|
204
|
-
.carousel .carousel__inner > .row > .col:first-child {
|
|
205
|
-
margin-left: 0!important;
|
|
178
|
+
.carousel.hide-controls .carousel__controls {
|
|
179
|
+
display: none;
|
|
206
180
|
}
|
|
207
181
|
|
|
208
182
|
@include media-breakpoint-up(sm) {
|
|
209
183
|
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
.carousel .carousel__inner > .row[class*="row-cols-sm-"] > .col{
|
|
216
|
-
scroll-snap-align: unset;
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
.carousel .carousel__inner > .row-cols-sm-2 > .col:nth-child(odd),
|
|
220
|
-
.carousel .carousel__inner > .row-cols-sm-3 > .col:nth-child(3n+1),
|
|
221
|
-
.carousel .carousel__inner > .row-cols-sm-4 > .col:nth-child(4n+1),
|
|
222
|
-
.carousel .carousel__inner > .row-cols-sm-5 > .col:nth-child(5n+1),
|
|
223
|
-
.carousel .carousel__inner > .row-cols-sm-6 > .col:nth-child(6n+1) {
|
|
224
|
-
scroll-snap-align: start;
|
|
225
|
-
|
|
226
|
-
body:not(.js-enabled) & {
|
|
227
|
-
margin-left: 4rem;
|
|
228
|
-
}
|
|
229
|
-
}
|
|
230
|
-
|
|
231
|
-
.carousel .carousel__controls.cols-sm-2 > a:not(:nth-child(odd)),
|
|
232
|
-
.carousel .carousel__controls.cols-sm-3 > a:not(:nth-child(3n+1)),
|
|
233
|
-
.carousel .carousel__controls.cols-sm-4 > a:not(:nth-child(4n+1)),
|
|
234
|
-
.carousel .carousel__controls.cols-sm-5 > a:not(:nth-child(5n+1)),
|
|
235
|
-
.carousel .carousel__controls.cols-sm-6 > a:not(:nth-child(6n+1)) {
|
|
184
|
+
[data-row-class*="cols-sm-2"] .carousel__controls > button:not(:nth-child(odd)),
|
|
185
|
+
[data-row-class*="cols-sm-3"] .carousel__controls > button:not(:nth-child(3n+1)),
|
|
186
|
+
[data-row-class*="cols-sm-4"] .carousel__controls > button:not(:nth-child(4n+1)),
|
|
187
|
+
[data-row-class*="cols-sm-5"] .carousel__controls > button:not(:nth-child(5n+1)),
|
|
188
|
+
[data-row-class*="cols-sm-6"] .carousel__controls > button:not(:nth-child(6n+1)) {
|
|
236
189
|
display: none;
|
|
237
190
|
}
|
|
238
191
|
|
|
239
192
|
// Make sure that we dont just have one pip showing
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
193
|
+
[data-row-class*="cols-sm-2"] .carousel__controls:has(button:first-child:nth-last-child(2)),
|
|
194
|
+
[data-row-class*="cols-sm-3"] .carousel__controls:has(:is(button:first-child:nth-last-child(2), button:first-child:nth-last-child(3))),
|
|
195
|
+
[data-row-class*="cols-sm-4"] .carousel__controls:has(:is(button:first-child:nth-last-child(2), button:first-child:nth-last-child(3), button:first-child:nth-last-child(4))),
|
|
196
|
+
[data-row-class*="cols-sm-5"] .carousel__controls:has(:is(button:first-child:nth-last-child(2),button:first-child:nth-last-child(3),button:first-child:nth-last-child(4),button:first-child:nth-last-child(5))),
|
|
197
|
+
[data-row-class*="cols-sm-6"] .carousel__controls:has(:is(button:first-child:nth-last-child(2),button:first-child:nth-last-child(3),button:first-child:nth-last-child(4),button:first-child:nth-last-child(5),button:first-child:nth-last-child(6))),
|
|
198
|
+
[data-row-class*="cols-sm-2"] .carousel__controls:has(button:first-child:nth-last-child(2)) ~ .btn,
|
|
199
|
+
[data-row-class*="cols-sm-3"] .carousel__controls:has(:is(button:first-child:nth-last-child(2), button:first-child:nth-last-child(3))) ~ .btn,
|
|
200
|
+
[data-row-class*="cols-sm-4"] .carousel__controls:has(:is(button:first-child:nth-last-child(2), button:first-child:nth-last-child(3), button:first-child:nth-last-child(4))) ~ .btn,
|
|
201
|
+
[data-row-class*="cols-sm-5"] .carousel__controls:has(:is(button:first-child:nth-last-child(2),button:first-child:nth-last-child(3),button:first-child:nth-last-child(4),button:first-child:nth-last-child(5))) ~ .btn,
|
|
202
|
+
[data-row-class*="cols-sm-6"] .carousel__controls:has(:is(button:first-child:nth-last-child(2),button:first-child:nth-last-child(3),button:first-child:nth-last-child(4),button:first-child:nth-last-child(5),button:first-child:nth-last-child(6))) ~ .btn {
|
|
250
203
|
display: none;
|
|
251
204
|
}
|
|
252
|
-
|
|
253
|
-
.carousel.hide-sm-btns .carousel__inner {
|
|
254
|
-
|
|
255
|
-
margin-left: 0;
|
|
256
|
-
margin-right: 0;
|
|
257
|
-
}
|
|
258
205
|
}
|
|
259
206
|
|
|
260
207
|
@include media-breakpoint-up(md) {
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
scroll-snap-align: unset;
|
|
264
|
-
margin-left: 0;
|
|
208
|
+
.carousel__controls > button {
|
|
209
|
+
display: inline-block!important;
|
|
265
210
|
}
|
|
266
|
-
|
|
267
|
-
.carousel .carousel__inner > .row-cols-md-2 > .col:nth-child(odd),
|
|
268
|
-
.carousel .carousel__inner > .row-cols-md-3 > .col:nth-child(3n+1),
|
|
269
|
-
.carousel .carousel__inner > .row-cols-md-4 > .col:nth-child(4n+1),
|
|
270
|
-
.carousel .carousel__inner > .row-cols-md-5 > .col:nth-child(5n+1),
|
|
271
|
-
.carousel .carousel__inner > .row-cols-md-6 > .col:nth-child(6n+1) {
|
|
272
|
-
scroll-snap-align: start;
|
|
273
|
-
|
|
274
|
-
body:not(.js-enabled) & {
|
|
275
211
|
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
.carousel .carousel__controls.cols-md-4 > a:not(:nth-child(4n+1)),
|
|
283
|
-
.carousel .carousel__controls.cols-md-5 > a:not(:nth-child(5n+1)),
|
|
284
|
-
.carousel .carousel__controls.cols-md-6 > a:not(:nth-child(6n+1)) {
|
|
285
|
-
display: none;
|
|
212
|
+
[data-row-class*="cols-md-2"] .carousel__controls > button:not(:nth-child(odd)),
|
|
213
|
+
[data-row-class*="cols-md-3"] .carousel__controls > button:not(:nth-child(3n+1)),
|
|
214
|
+
[data-row-class*="cols-md-4"] .carousel__controls > button:not(:nth-child(4n+1)),
|
|
215
|
+
[data-row-class*="cols-md-5"] .carousel__controls > button:not(:nth-child(5n+1)),
|
|
216
|
+
[data-row-class*="cols-md-6"] .carousel__controls > button:not(:nth-child(6n+1)) {
|
|
217
|
+
display: none!important;
|
|
286
218
|
}
|
|
287
219
|
|
|
288
220
|
// Make sure that we dont just have one pip showing
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
221
|
+
[data-row-class*="cols-md-2"] .carousel__controls:has(button:first-child:nth-last-child(2)),
|
|
222
|
+
[data-row-class*="cols-md-3"] .carousel__controls:has(:is(button:first-child:nth-last-child(2), button:first-child:nth-last-child(3))),
|
|
223
|
+
[data-row-class*="cols-md-4"] .carousel__controls:has(:is(button:first-child:nth-last-child(2), button:first-child:nth-last-child(3), button:first-child:nth-last-child(4))),
|
|
224
|
+
[data-row-class*="cols-md-5"] .carousel__controls:has(:is(button:first-child:nth-last-child(2),button:first-child:nth-last-child(3),button:first-child:nth-last-child(4),button:first-child:nth-last-child(5))),
|
|
225
|
+
[data-row-class*="cols-md-6"] .carousel__controls:has(:is(button:first-child:nth-last-child(2),button:first-child:nth-last-child(3),button:first-child:nth-last-child(4),button:first-child:nth-last-child(5),button:first-child:nth-last-child(6))),
|
|
226
|
+
[data-row-class*="cols-md-2"] .carousel__controls:has(button:first-child:nth-last-child(2)) ~ .btn,
|
|
227
|
+
[data-row-class*="cols-md-3"] .carousel__controls:has(:is(button:first-child:nth-last-child(2), button:first-child:nth-last-child(3))) ~ .btn,
|
|
228
|
+
[data-row-class*="cols-md-4"] .carousel__controls:has(:is(button:first-child:nth-last-child(2), button:first-child:nth-last-child(3), button:first-child:nth-last-child(4))) ~ .btn,
|
|
229
|
+
[data-row-class*="cols-md-5"] .carousel__controls:has(:is(button:first-child:nth-last-child(2),button:first-child:nth-last-child(3),button:first-child:nth-last-child(4),button:first-child:nth-last-child(5))) ~ .btn,
|
|
230
|
+
[data-row-class*="cols-md-6"] .carousel__controls:has(:is(button:first-child:nth-last-child(2),button:first-child:nth-last-child(3),button:first-child:nth-last-child(4),button:first-child:nth-last-child(5),button:first-child:nth-last-child(6))) ~ .btn {
|
|
299
231
|
display: none;
|
|
300
232
|
}
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
margin-left: 0;
|
|
305
|
-
margin-right: 0;
|
|
306
|
-
}
|
|
307
|
-
}
|
|
233
|
+
}
|
|
234
|
+
// #endregion
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
@use "../_func" as *;
|
|
3
3
|
|
|
4
4
|
// #region Undefined web components
|
|
5
|
-
:is(*):not(:defined):not(iam-nav):not(iam-pagination) {
|
|
5
|
+
:is(*):not(:defined):not(iam-nav):not(iam-pagination):not(iam-carousel) {
|
|
6
6
|
display: block;
|
|
7
7
|
padding: rem(24);
|
|
8
8
|
margin-bottom: rem(24);
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
max-width: 80rem;
|
|
13
13
|
}
|
|
14
14
|
|
|
15
|
-
main > :is(*):not(:defined) {
|
|
15
|
+
main > :is(*):not(:defined):not(iam-carousel) {
|
|
16
16
|
|
|
17
17
|
padding: var(--container-padding);
|
|
18
18
|
padding-top: 1rem;
|
|
@@ -20,7 +20,7 @@ main > :is(*):not(:defined) {
|
|
|
20
20
|
|
|
21
21
|
@include media-breakpoint-up(md) {
|
|
22
22
|
|
|
23
|
-
main > :is(*):not(:defined) {
|
|
23
|
+
main > :is(*):not(:defined):not(iam-carousel) {
|
|
24
24
|
max-width: 100%!important;
|
|
25
25
|
padding-inline: calc(50% - #{rem(math.div(1112,2))});
|
|
26
26
|
}
|
|
@@ -34,4 +34,87 @@ main > :is(*):not(:defined) {
|
|
|
34
34
|
box-shadow: var(--card-box-shadow);
|
|
35
35
|
border-radius: var(--card-border-radius);
|
|
36
36
|
padding: var(--card-top-padding) var(--card-right-padding) var(--card-bottom-padding) var(--card-left-padding);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
// carousel
|
|
40
|
+
iam-carousel {
|
|
41
|
+
|
|
42
|
+
margin-inline: calc(var(--container-padding-x) * -1);
|
|
43
|
+
margin-bottom: 5rem;
|
|
44
|
+
overflow: auto;
|
|
45
|
+
display: block;
|
|
46
|
+
|
|
47
|
+
> .row {
|
|
48
|
+
|
|
49
|
+
flex-wrap: nowrap!important;
|
|
50
|
+
margin-inline-end: 0;
|
|
51
|
+
padding-inline-start: var(--container-padding-x);
|
|
52
|
+
padding-inline-end: var(--container-padding-x);
|
|
53
|
+
|
|
54
|
+
.col:last-child{
|
|
55
|
+
padding-inline-end: var(--container-padding-x);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
@include media-breakpoint-up(md) {
|
|
60
|
+
|
|
61
|
+
margin-inline: calc(-0.5 * $grid-gutter-width);
|
|
62
|
+
|
|
63
|
+
> .row {
|
|
64
|
+
|
|
65
|
+
padding-inline: 0;
|
|
66
|
+
margin-inline: 0;
|
|
67
|
+
|
|
68
|
+
.col:last-child{
|
|
69
|
+
padding-inline-end: calc(0.5 * $grid-gutter-width);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
// For extra file
|
|
79
|
+
iam-carousel:defined {
|
|
80
|
+
|
|
81
|
+
overflow: visible;
|
|
82
|
+
}
|
|
83
|
+
iam-carousel > .row .col {
|
|
84
|
+
scroll-snap-align: start;
|
|
85
|
+
scroll-margin-left: calc(var(--container-padding-x) - calc(0.5 * $grid-gutter-width));
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
@include media-breakpoint-up(sm) {
|
|
90
|
+
|
|
91
|
+
iam-carousel > .row[class*="row-cols-sm-"] > .col{
|
|
92
|
+
scroll-snap-align: unset;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
iam-carousel > .row-cols-sm-2 > .col:nth-child(odd),
|
|
96
|
+
iam-carousel > .row-cols-sm-3 > .col:nth-child(3n+1),
|
|
97
|
+
iam-carousel > .row-cols-sm-4 > .col:nth-child(4n+1),
|
|
98
|
+
iam-carousel > .row-cols-sm-5 > .col:nth-child(5n+1),
|
|
99
|
+
iam-carousel > .row-cols-sm-6 > .col:nth-child(6n+1) {
|
|
100
|
+
scroll-snap-align: start;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
@include media-breakpoint-up(md) {
|
|
105
|
+
|
|
106
|
+
iam-carousel > .row[class*="row-cols-md-"] > .col{
|
|
107
|
+
scroll-snap-align: unset;
|
|
108
|
+
margin-left: 0;
|
|
109
|
+
scroll-margin-left: 0;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
iam-carousel > .row-cols-md-2 > .col:nth-child(odd),
|
|
113
|
+
iam-carousel > .row-cols-md-3 > .col:nth-child(3n+1),
|
|
114
|
+
iam-carousel > .row-cols-md-4 > .col:nth-child(4n+1),
|
|
115
|
+
iam-carousel > .row-cols-md-5 > .col:nth-child(5n+1),
|
|
116
|
+
iam-carousel > .row-cols-md-6 > .col:nth-child(6n+1) {
|
|
117
|
+
scroll-snap-align: start;
|
|
118
|
+
|
|
119
|
+
}
|
|
37
120
|
}
|