uikit 3.16.27 → 3.17.1-dev.7c0766a6f
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/CHANGELOG.md +25 -0
- package/build/less.js +5 -4
- package/build/util.js +7 -9
- package/dist/css/uikit-core-rtl.css +53 -18
- package/dist/css/uikit-core-rtl.min.css +1 -1
- package/dist/css/uikit-core.css +53 -18
- package/dist/css/uikit-core.min.css +1 -1
- package/dist/css/uikit-rtl.css +56 -17
- package/dist/css/uikit-rtl.min.css +1 -1
- package/dist/css/uikit.css +56 -17
- package/dist/css/uikit.min.css +1 -1
- package/dist/js/components/countdown.js +1 -1
- package/dist/js/components/countdown.min.js +1 -1
- package/dist/js/components/filter.js +24 -43
- package/dist/js/components/filter.min.js +1 -1
- package/dist/js/components/lightbox-panel.js +2 -3
- package/dist/js/components/lightbox-panel.min.js +1 -1
- package/dist/js/components/lightbox.js +2 -3
- package/dist/js/components/lightbox.min.js +1 -1
- package/dist/js/components/notification.js +2 -2
- package/dist/js/components/notification.min.js +1 -1
- package/dist/js/components/parallax.js +7 -17
- package/dist/js/components/parallax.min.js +1 -1
- package/dist/js/components/slider-parallax.js +6 -13
- package/dist/js/components/slider-parallax.min.js +1 -1
- package/dist/js/components/slider.js +2 -2
- package/dist/js/components/slider.min.js +1 -1
- package/dist/js/components/slideshow-parallax.js +6 -13
- package/dist/js/components/slideshow-parallax.min.js +1 -1
- package/dist/js/components/slideshow.js +19 -4
- package/dist/js/components/slideshow.min.js +1 -1
- package/dist/js/components/sortable.js +24 -43
- package/dist/js/components/sortable.min.js +1 -1
- package/dist/js/components/tooltip.js +1 -2
- package/dist/js/components/tooltip.min.js +1 -1
- package/dist/js/components/upload.js +1 -1
- package/dist/js/components/upload.min.js +1 -1
- package/dist/js/uikit-core.js +455 -185
- package/dist/js/uikit-core.min.js +1 -1
- package/dist/js/uikit-icons.js +1 -1
- package/dist/js/uikit-icons.min.js +1 -1
- package/dist/js/uikit.js +483 -240
- package/dist/js/uikit.min.js +1 -9502
- package/package.json +1 -1
- package/src/js/api/boot.js +2 -2
- package/src/js/api/computed.js +1 -1
- package/src/js/api/observables.js +1 -4
- package/src/js/components/notification.js +1 -1
- package/src/js/components/slideshow.js +19 -2
- package/src/js/core/cover.js +30 -1
- package/src/js/core/drop.js +15 -9
- package/src/js/core/dropnav.js +16 -2
- package/src/js/core/grid.js +119 -64
- package/src/js/core/height-viewport.js +4 -1
- package/src/js/core/margin.js +23 -39
- package/src/js/core/navbar.js +219 -1
- package/src/js/core/scrollspy-nav.js +13 -4
- package/src/js/core/scrollspy.js +1 -1
- package/src/js/core/sticky.js +10 -11
- package/src/js/mixin/internal/animate-fade.js +1 -11
- package/src/js/mixin/internal/slideshow-animations.js +1 -1
- package/src/js/mixin/slider-reactive.js +1 -1
- package/src/js/mixin/togglable.js +0 -2
- package/src/js/util/animation.js +19 -13
- package/src/js/util/class.js +30 -26
- package/src/js/util/dom.js +3 -8
- package/src/js/util/filter.js +2 -6
- package/src/js/util/viewport.js +26 -4
- package/src/less/components/base.less +6 -3
- package/src/less/components/form.less +3 -0
- package/src/less/components/heading.less +18 -0
- package/src/less/components/navbar.less +6 -12
- package/src/less/components/pagination.less +13 -6
- package/src/less/components/position.less +1 -0
- package/src/less/components/section.less +6 -0
- package/src/less/theme/heading.less +4 -0
- package/src/less/theme/navbar.less +5 -0
- package/src/scss/components/base.scss +4 -2
- package/src/scss/components/form.scss +3 -0
- package/src/scss/components/heading.scss +13 -0
- package/src/scss/components/navbar.scss +5 -12
- package/src/scss/components/pagination.scss +13 -6
- package/src/scss/components/position.scss +1 -0
- package/src/scss/components/section.scss +4 -0
- package/src/scss/mixins-theme.scss +13 -1
- package/src/scss/mixins.scss +8 -1
- package/src/scss/theme/heading.scss +4 -0
- package/src/scss/variables-theme.scss +7 -0
- package/src/scss/variables.scss +7 -0
- package/tests/cover.html +2 -2
- package/tests/drop.html +13 -7
- package/tests/dropnav.html +22 -10
- package/tests/filter.html +5 -5
- package/tests/form.html +1 -1
- package/tests/grid-masonry.html +49 -73
- package/tests/grid-parallax.html +82 -40
- package/tests/grid.html +21 -3
- package/tests/heading.html +33 -4
- package/tests/height-viewport.html +3 -3
- package/tests/height.html +2 -2
- package/tests/icon.html +1 -1
- package/tests/image.html +6 -6
- package/tests/leader.html +3 -3
- package/tests/nav.html +1 -1
- package/tests/navbar.html +28 -10
- package/tests/notification.html +1 -1
- package/tests/offcanvas.html +2 -2
- package/tests/parallax.html +1 -1
- package/tests/scrollspy.html +3 -3
- package/tests/sortable.html +3 -3
- package/tests/sticky-navbar.html +233 -14
- package/tests/sticky.html +8 -8
- package/tests/svg.html +1 -1
- package/tests/tab.html +1 -1
- package/tests/toggle.html +2 -2
- package/tests/tooltip.html +2 -2
- package/tests/upload.html +16 -16
- package/tests/utility.html +2 -2
- package/tests/video.html +3 -3
package/src/js/util/viewport.js
CHANGED
|
@@ -60,26 +60,40 @@ export function scrollIntoView(element, { offset: offsetBy = 0 } = {}) {
|
|
|
60
60
|
top = 0;
|
|
61
61
|
}
|
|
62
62
|
|
|
63
|
-
return () => scrollTo(scrollElement, top - scrollTop).then(fn);
|
|
63
|
+
return () => scrollTo(scrollElement, top - scrollTop, element, maxScroll).then(fn);
|
|
64
64
|
},
|
|
65
65
|
() => Promise.resolve(),
|
|
66
66
|
)();
|
|
67
67
|
|
|
68
|
-
function scrollTo(element, top) {
|
|
68
|
+
function scrollTo(element, top, targetEl, maxScroll) {
|
|
69
69
|
return new Promise((resolve) => {
|
|
70
70
|
const scroll = element.scrollTop;
|
|
71
71
|
const duration = getDuration(Math.abs(top));
|
|
72
72
|
const start = Date.now();
|
|
73
|
+
const targetTop = offset(targetEl).top;
|
|
74
|
+
let prev = 0;
|
|
75
|
+
let frames = 15;
|
|
73
76
|
|
|
74
77
|
(function step() {
|
|
75
78
|
const percent = ease(clamp((Date.now() - start) / duration));
|
|
79
|
+
let diff = 0;
|
|
80
|
+
if (parents[0] === element && scroll + top < maxScroll) {
|
|
81
|
+
diff = offset(targetEl).top - targetTop;
|
|
82
|
+
const fixedEl = findFixedElement(targetEl);
|
|
83
|
+
diff -= fixedEl ? offset(fixedEl).height : 0;
|
|
84
|
+
}
|
|
76
85
|
|
|
77
|
-
element.scrollTop =
|
|
86
|
+
element.scrollTop = Math[top + diff > 0 ? 'max' : 'min'](
|
|
87
|
+
element.scrollTop,
|
|
88
|
+
scroll + (top + diff) * percent,
|
|
89
|
+
);
|
|
78
90
|
|
|
79
91
|
// scroll more if we have not reached our destination
|
|
80
|
-
if
|
|
92
|
+
// if element changes position during scroll try another step
|
|
93
|
+
if (percent === 1 && (prev === diff || !frames--)) {
|
|
81
94
|
resolve();
|
|
82
95
|
} else {
|
|
96
|
+
prev = diff;
|
|
83
97
|
requestAnimationFrame(step);
|
|
84
98
|
}
|
|
85
99
|
})();
|
|
@@ -93,6 +107,14 @@ export function scrollIntoView(element, { offset: offsetBy = 0 } = {}) {
|
|
|
93
107
|
function ease(k) {
|
|
94
108
|
return 0.5 * (1 - Math.cos(Math.PI * k));
|
|
95
109
|
}
|
|
110
|
+
|
|
111
|
+
function findFixedElement(target) {
|
|
112
|
+
return target.ownerDocument
|
|
113
|
+
.elementsFromPoint(0, 0)
|
|
114
|
+
.find(
|
|
115
|
+
(el) => ['fixed', 'sticky'].includes(css(el, 'position')) && !el.contains(target),
|
|
116
|
+
);
|
|
117
|
+
}
|
|
96
118
|
}
|
|
97
119
|
|
|
98
120
|
export function scrolledOver(element, startOffset = 0, endOffset = 0) {
|
|
@@ -327,7 +327,8 @@ h6, .uk-h6,
|
|
|
327
327
|
.uk-heading-medium,
|
|
328
328
|
.uk-heading-large,
|
|
329
329
|
.uk-heading-xlarge,
|
|
330
|
-
.uk-heading-2xlarge
|
|
330
|
+
.uk-heading-2xlarge,
|
|
331
|
+
.uk-heading-3xlarge {
|
|
331
332
|
margin: 0 0 @base-margin-vertical 0;
|
|
332
333
|
font-family: @base-heading-font-family;
|
|
333
334
|
font-weight: @base-heading-font-weight;
|
|
@@ -347,7 +348,8 @@ h6, .uk-h6,
|
|
|
347
348
|
* + .uk-heading-medium,
|
|
348
349
|
* + .uk-heading-large,
|
|
349
350
|
* + .uk-heading-xlarge,
|
|
350
|
-
* + .uk-heading-2xlarge
|
|
351
|
+
* + .uk-heading-2xlarge,
|
|
352
|
+
* + .uk-heading-3xlarge { margin-top: @base-heading-margin-top; }
|
|
351
353
|
|
|
352
354
|
/*
|
|
353
355
|
* Sizes
|
|
@@ -649,7 +651,8 @@ template { display: none; }
|
|
|
649
651
|
.uk-heading-medium,
|
|
650
652
|
.uk-heading-large,
|
|
651
653
|
.uk-heading-xlarge,
|
|
652
|
-
.uk-heading-2xlarge
|
|
654
|
+
.uk-heading-2xlarge,
|
|
655
|
+
.uk-heading-3xlarge {
|
|
653
656
|
color: @inverse-base-heading-color;
|
|
654
657
|
.hook-inverse-base-heading();
|
|
655
658
|
}
|
|
@@ -18,23 +18,27 @@
|
|
|
18
18
|
@heading-large-font-size: @heading-large-font-size-m * 0.85; // 50px 0.78
|
|
19
19
|
@heading-xlarge-font-size: @heading-large-font-size-m; // 4rem / 64px
|
|
20
20
|
@heading-2xlarge-font-size: @heading-xlarge-font-size-m; // 6rem / 96px
|
|
21
|
+
@heading-3xlarge-font-size: @heading-2xlarge-font-size-m; // 8rem / 128px
|
|
21
22
|
|
|
22
23
|
@heading-small-font-size-m: @heading-medium-font-size-l * 0.8125; // 3.25rem / 52px
|
|
23
24
|
@heading-medium-font-size-m: @heading-medium-font-size-l * 0.875; // 3.5rem / 56px
|
|
24
25
|
@heading-large-font-size-m: @heading-medium-font-size-l; // 4rem / 64px
|
|
25
26
|
@heading-xlarge-font-size-m: @heading-large-font-size-l; // 6rem / 96px
|
|
26
27
|
@heading-2xlarge-font-size-m: @heading-xlarge-font-size-l; // 8rem / 128px
|
|
28
|
+
@heading-3xlarge-font-size-m: @heading-2xlarge-font-size-l; // 11rem / 176px
|
|
27
29
|
|
|
28
30
|
@heading-medium-font-size-l: 4rem; // 64px
|
|
29
31
|
@heading-large-font-size-l: 6rem; // 96px
|
|
30
32
|
@heading-xlarge-font-size-l: 8rem; // 128px
|
|
31
33
|
@heading-2xlarge-font-size-l: 11rem; // 176px
|
|
34
|
+
@heading-3xlarge-font-size-l: 15rem; // 240px
|
|
32
35
|
|
|
33
36
|
@heading-small-line-height: 1.2;
|
|
34
37
|
@heading-medium-line-height: 1.1;
|
|
35
38
|
@heading-large-line-height: 1.1;
|
|
36
39
|
@heading-xlarge-line-height: 1;
|
|
37
40
|
@heading-2xlarge-line-height: 1;
|
|
41
|
+
@heading-3xlarge-line-height: 1;
|
|
38
42
|
|
|
39
43
|
@heading-divider-padding-bottom: ~'calc(5px + 0.1em)';
|
|
40
44
|
@heading-divider-border-width: ~'calc(0.2px + 0.05em)';
|
|
@@ -88,6 +92,12 @@
|
|
|
88
92
|
.hook-heading-2xlarge();
|
|
89
93
|
}
|
|
90
94
|
|
|
95
|
+
.uk-heading-3xlarge {
|
|
96
|
+
font-size: @heading-3xlarge-font-size;
|
|
97
|
+
line-height: @heading-3xlarge-line-height;
|
|
98
|
+
.hook-heading-3xlarge();
|
|
99
|
+
}
|
|
100
|
+
|
|
91
101
|
/* Tablet Landscape and bigger */
|
|
92
102
|
@media (min-width: @breakpoint-medium) {
|
|
93
103
|
|
|
@@ -96,6 +106,7 @@
|
|
|
96
106
|
.uk-heading-large { font-size: @heading-large-font-size-m; }
|
|
97
107
|
.uk-heading-xlarge { font-size: @heading-xlarge-font-size-m; }
|
|
98
108
|
.uk-heading-2xlarge { font-size: @heading-2xlarge-font-size-m; }
|
|
109
|
+
.uk-heading-3xlarge { font-size: @heading-3xlarge-font-size-m; }
|
|
99
110
|
|
|
100
111
|
}
|
|
101
112
|
|
|
@@ -106,6 +117,7 @@
|
|
|
106
117
|
.uk-heading-large { font-size: @heading-large-font-size-l; }
|
|
107
118
|
.uk-heading-xlarge { font-size: @heading-xlarge-font-size-l; }
|
|
108
119
|
.uk-heading-2xlarge { font-size: @heading-2xlarge-font-size-l; }
|
|
120
|
+
.uk-heading-3xlarge { font-size: @heading-3xlarge-font-size-l; }
|
|
109
121
|
|
|
110
122
|
}
|
|
111
123
|
|
|
@@ -280,6 +292,7 @@
|
|
|
280
292
|
.hook-heading-large() {}
|
|
281
293
|
.hook-heading-xlarge() {}
|
|
282
294
|
.hook-heading-2xlarge() {}
|
|
295
|
+
.hook-heading-3xlarge() {}
|
|
283
296
|
.hook-heading-primary() {}
|
|
284
297
|
.hook-heading-hero() {}
|
|
285
298
|
.hook-heading-divider() {}
|
|
@@ -317,6 +330,10 @@
|
|
|
317
330
|
.hook-inverse-heading-2xlarge();
|
|
318
331
|
}
|
|
319
332
|
|
|
333
|
+
.uk-heading-3xlarge {
|
|
334
|
+
.hook-inverse-heading-3xlarge();
|
|
335
|
+
}
|
|
336
|
+
|
|
320
337
|
.uk-heading-primary when (@deprecated = true) {
|
|
321
338
|
.hook-inverse-heading-primary();
|
|
322
339
|
}
|
|
@@ -348,6 +365,7 @@
|
|
|
348
365
|
.hook-inverse-heading-large() {}
|
|
349
366
|
.hook-inverse-heading-xlarge() {}
|
|
350
367
|
.hook-inverse-heading-2xlarge() {}
|
|
368
|
+
.hook-inverse-heading-3xlarge() {}
|
|
351
369
|
.hook-inverse-heading-primary() {}
|
|
352
370
|
.hook-inverse-heading-hero() {}
|
|
353
371
|
.hook-inverse-heading-divider() {}
|
|
@@ -97,6 +97,8 @@
|
|
|
97
97
|
@navbar-dropdown-nav-sublist-item-hover-color: @global-color;
|
|
98
98
|
@navbar-dropdown-nav-sublist-item-active-color: @global-emphasis-color;
|
|
99
99
|
|
|
100
|
+
@navbar-dropbar-behind-color-mode: dark;
|
|
101
|
+
|
|
100
102
|
|
|
101
103
|
/* ========================================================================
|
|
102
104
|
Component: Navbar
|
|
@@ -104,16 +106,18 @@
|
|
|
104
106
|
|
|
105
107
|
/*
|
|
106
108
|
* 1. Create position context to center navbar group
|
|
109
|
+
* 2. Pass dropbar behind color to JS
|
|
107
110
|
*/
|
|
108
111
|
|
|
109
112
|
.uk-navbar {
|
|
110
113
|
display: flex;
|
|
111
114
|
/* 1 */
|
|
112
115
|
position: relative;
|
|
116
|
+
/* 2 */
|
|
117
|
+
--uk-navbar-dropbar-behind-color: @navbar-dropbar-behind-color-mode;
|
|
113
118
|
.hook-navbar();
|
|
114
119
|
}
|
|
115
120
|
|
|
116
|
-
|
|
117
121
|
/* Container
|
|
118
122
|
========================================================================== */
|
|
119
123
|
|
|
@@ -396,7 +400,7 @@
|
|
|
396
400
|
* Remove margin from the last-child
|
|
397
401
|
*/
|
|
398
402
|
|
|
399
|
-
|
|
403
|
+
.uk-navbar-dropdown > :last-child { margin-bottom: 0; }
|
|
400
404
|
|
|
401
405
|
// Color Mode
|
|
402
406
|
.uk-navbar-dropdown:extend(.uk-light all) when (@navbar-dropdown-color-mode = light) {}
|
|
@@ -557,16 +561,6 @@
|
|
|
557
561
|
.hook-navbar-dropbar();
|
|
558
562
|
}
|
|
559
563
|
|
|
560
|
-
/*
|
|
561
|
-
* Create navbar placeholder space if dropbar is behind navbar
|
|
562
|
-
*/
|
|
563
|
-
|
|
564
|
-
.uk-navbar-dropbar-behind::before {
|
|
565
|
-
content: "";
|
|
566
|
-
display: block;
|
|
567
|
-
height: @navbar-nav-item-height;
|
|
568
|
-
}
|
|
569
|
-
|
|
570
564
|
|
|
571
565
|
// Hooks
|
|
572
566
|
// ========================================================================
|
|
@@ -32,8 +32,9 @@
|
|
|
32
32
|
|
|
33
33
|
/*
|
|
34
34
|
* 1. Allow items to wrap into the next line
|
|
35
|
-
* 2.
|
|
36
|
-
* 3.
|
|
35
|
+
* 2. Center items vertically if they have a different height
|
|
36
|
+
* 3. Gutter
|
|
37
|
+
* 4. Reset list
|
|
37
38
|
*/
|
|
38
39
|
|
|
39
40
|
.uk-pagination {
|
|
@@ -41,8 +42,10 @@
|
|
|
41
42
|
/* 1 */
|
|
42
43
|
flex-wrap: wrap;
|
|
43
44
|
/* 2 */
|
|
44
|
-
|
|
45
|
+
align-items: center;
|
|
45
46
|
/* 3 */
|
|
47
|
+
margin-left: -@pagination-margin-horizontal;
|
|
48
|
+
/* 4 */
|
|
46
49
|
padding: 0;
|
|
47
50
|
list-style: none;
|
|
48
51
|
.hook-pagination();
|
|
@@ -68,14 +71,18 @@
|
|
|
68
71
|
========================================================================== */
|
|
69
72
|
|
|
70
73
|
/*
|
|
71
|
-
* 1.
|
|
72
|
-
* 2.
|
|
74
|
+
* 1. Center content vertically, e.g. an icon
|
|
75
|
+
* 2. Imitate white space gap when using flexbox
|
|
76
|
+
* 3. Style
|
|
73
77
|
*/
|
|
74
78
|
|
|
75
79
|
.uk-pagination > * > * {
|
|
76
80
|
/* 1 */
|
|
77
|
-
display:
|
|
81
|
+
display: flex;
|
|
82
|
+
align-items: center;
|
|
78
83
|
/* 2 */
|
|
84
|
+
column-gap: 0.25em;
|
|
85
|
+
/* 3 */
|
|
79
86
|
padding: @pagination-item-padding-vertical @pagination-item-padding-horizontal;
|
|
80
87
|
color: @pagination-item-color;
|
|
81
88
|
.hook-pagination-item();
|
|
@@ -35,8 +35,10 @@
|
|
|
35
35
|
@section-xlarge-padding-vertical-m: (@global-large-margin + @global-xlarge-margin);
|
|
36
36
|
|
|
37
37
|
@section-default-background: @global-background;
|
|
38
|
+
@section-default-color-mode: dark;
|
|
38
39
|
|
|
39
40
|
@section-muted-background: @global-muted-background;
|
|
41
|
+
@section-muted-color-mode: dark;
|
|
40
42
|
|
|
41
43
|
@section-primary-background: @global-primary-background;
|
|
42
44
|
@section-primary-color-mode: light;
|
|
@@ -148,6 +150,7 @@
|
|
|
148
150
|
|
|
149
151
|
.uk-section-default {
|
|
150
152
|
background: @section-default-background;
|
|
153
|
+
--uk-navbar-color: @section-default-color-mode;
|
|
151
154
|
.hook-section-default();
|
|
152
155
|
}
|
|
153
156
|
|
|
@@ -157,6 +160,7 @@
|
|
|
157
160
|
|
|
158
161
|
.uk-section-muted {
|
|
159
162
|
background: @section-muted-background;
|
|
163
|
+
--uk-navbar-color: @section-muted-color-mode;
|
|
160
164
|
.hook-section-muted();
|
|
161
165
|
}
|
|
162
166
|
|
|
@@ -166,6 +170,7 @@
|
|
|
166
170
|
|
|
167
171
|
.uk-section-primary {
|
|
168
172
|
background: @section-primary-background;
|
|
173
|
+
--uk-navbar-color: @section-primary-color-mode;
|
|
169
174
|
.hook-section-primary();
|
|
170
175
|
}
|
|
171
176
|
|
|
@@ -178,6 +183,7 @@
|
|
|
178
183
|
|
|
179
184
|
.uk-section-secondary {
|
|
180
185
|
background: @section-secondary-background;
|
|
186
|
+
--uk-navbar-color: @section-secondary-color-mode;
|
|
181
187
|
.hook-section-secondary();
|
|
182
188
|
}
|
|
183
189
|
|
|
@@ -21,6 +21,8 @@
|
|
|
21
21
|
|
|
22
22
|
.hook-heading-2xlarge() {}
|
|
23
23
|
|
|
24
|
+
.hook-heading-3xlarge() {}
|
|
25
|
+
|
|
24
26
|
|
|
25
27
|
// Divider
|
|
26
28
|
// ========================================================================
|
|
@@ -60,6 +62,8 @@
|
|
|
60
62
|
|
|
61
63
|
.hook-inverse-heading-2xlarge() {}
|
|
62
64
|
|
|
65
|
+
.hook-inverse-heading-3xlarge() {}
|
|
66
|
+
|
|
63
67
|
.hook-inverse-heading-divider() {}
|
|
64
68
|
|
|
65
69
|
.hook-inverse-heading-bullet() {}
|
|
@@ -265,7 +265,8 @@ h6, .uk-h6,
|
|
|
265
265
|
.uk-heading-medium,
|
|
266
266
|
.uk-heading-large,
|
|
267
267
|
.uk-heading-xlarge,
|
|
268
|
-
.uk-heading-2xlarge
|
|
268
|
+
.uk-heading-2xlarge,
|
|
269
|
+
.uk-heading-3xlarge {
|
|
269
270
|
margin: 0 0 $base-margin-vertical 0;
|
|
270
271
|
font-family: $base-heading-font-family;
|
|
271
272
|
font-weight: $base-heading-font-weight;
|
|
@@ -285,7 +286,8 @@ h6, .uk-h6,
|
|
|
285
286
|
* + .uk-heading-medium,
|
|
286
287
|
* + .uk-heading-large,
|
|
287
288
|
* + .uk-heading-xlarge,
|
|
288
|
-
* + .uk-heading-2xlarge
|
|
289
|
+
* + .uk-heading-2xlarge,
|
|
290
|
+
* + .uk-heading-3xlarge { margin-top: $base-heading-margin-top; }
|
|
289
291
|
|
|
290
292
|
/*
|
|
291
293
|
* Sizes
|
|
@@ -18,17 +18,20 @@ $heading-medium-font-size: $heading-medium-font-size-m * 0
|
|
|
18
18
|
$heading-large-font-size: $heading-large-font-size-m * 0.85 !default; // 50px 0.78
|
|
19
19
|
$heading-xlarge-font-size: $heading-large-font-size-m !default; // 4rem / 64px
|
|
20
20
|
$heading-2xlarge-font-size: $heading-xlarge-font-size-m !default; // 6rem / 96px
|
|
21
|
+
$heading-3xlarge-font-size: $heading-2xlarge-font-size-m !default; // 8rem / 128px
|
|
21
22
|
|
|
22
23
|
$heading-small-font-size-m: $heading-medium-font-size-l * 0.8125 !default; // 3.25rem / 52px
|
|
23
24
|
$heading-medium-font-size-m: $heading-medium-font-size-l * 0.875 !default; // 3.5rem / 56px
|
|
24
25
|
$heading-large-font-size-m: $heading-medium-font-size-l !default; // 4rem / 64px
|
|
25
26
|
$heading-xlarge-font-size-m: $heading-large-font-size-l !default; // 6rem / 96px
|
|
26
27
|
$heading-2xlarge-font-size-m: $heading-xlarge-font-size-l !default; // 8rem / 128px
|
|
28
|
+
$heading-3xlarge-font-size-m: $heading-2xlarge-font-size-l !default; // 11rem / 176px
|
|
27
29
|
|
|
28
30
|
$heading-medium-font-size-l: 4rem !default; // 64px
|
|
29
31
|
$heading-large-font-size-l: 6rem !default; // 96px
|
|
30
32
|
$heading-xlarge-font-size-l: 8rem !default; // 128px
|
|
31
33
|
$heading-2xlarge-font-size-l: 11rem !default; // 176px
|
|
34
|
+
$heading-3xlarge-font-size-l: 15rem !default; // 240px
|
|
32
35
|
|
|
33
36
|
|
|
34
37
|
|
|
@@ -69,6 +72,12 @@ $heading-2xlarge-font-size-l: 11rem !default;
|
|
|
69
72
|
@if(mixin-exists(hook-heading-2xlarge)) {@include hook-heading-2xlarge();}
|
|
70
73
|
}
|
|
71
74
|
|
|
75
|
+
.uk-heading-3xlarge {
|
|
76
|
+
font-size: $heading-3xlarge-font-size;
|
|
77
|
+
line-height: $heading-3xlarge-line-height;
|
|
78
|
+
@if(mixin-exists(hook-heading-3xlarge)) {@include hook-heading-3xlarge();}
|
|
79
|
+
}
|
|
80
|
+
|
|
72
81
|
/* Tablet Landscape and bigger */
|
|
73
82
|
@media (min-width: $breakpoint-medium) {
|
|
74
83
|
|
|
@@ -77,6 +86,7 @@ $heading-2xlarge-font-size-l: 11rem !default;
|
|
|
77
86
|
.uk-heading-large { font-size: $heading-large-font-size-m; }
|
|
78
87
|
.uk-heading-xlarge { font-size: $heading-xlarge-font-size-m; }
|
|
79
88
|
.uk-heading-2xlarge { font-size: $heading-2xlarge-font-size-m; }
|
|
89
|
+
.uk-heading-3xlarge { font-size: $heading-3xlarge-font-size-m; }
|
|
80
90
|
|
|
81
91
|
}
|
|
82
92
|
|
|
@@ -87,6 +97,7 @@ $heading-2xlarge-font-size-l: 11rem !default;
|
|
|
87
97
|
.uk-heading-large { font-size: $heading-large-font-size-l; }
|
|
88
98
|
.uk-heading-xlarge { font-size: $heading-xlarge-font-size-l; }
|
|
89
99
|
.uk-heading-2xlarge { font-size: $heading-2xlarge-font-size-l; }
|
|
100
|
+
.uk-heading-3xlarge { font-size: $heading-3xlarge-font-size-l; }
|
|
90
101
|
|
|
91
102
|
}
|
|
92
103
|
|
|
@@ -268,6 +279,7 @@ $heading-hero-font-size: $heading-hero-font-size-l * 0.5
|
|
|
268
279
|
// @mixin hook-heading-large(){}
|
|
269
280
|
// @mixin hook-heading-xlarge(){}
|
|
270
281
|
// @mixin hook-heading-2xlarge(){}
|
|
282
|
+
// @mixin hook-heading-3xlarge(){}
|
|
271
283
|
// @mixin hook-heading-primary(){}
|
|
272
284
|
// @mixin hook-heading-hero(){}
|
|
273
285
|
// @mixin hook-heading-divider(){}
|
|
@@ -287,6 +299,7 @@ $heading-hero-font-size: $heading-hero-font-size-l * 0.5
|
|
|
287
299
|
// @mixin hook-inverse-heading-large(){}
|
|
288
300
|
// @mixin hook-inverse-heading-xlarge(){}
|
|
289
301
|
// @mixin hook-inverse-heading-2xlarge(){}
|
|
302
|
+
// @mixin hook-inverse-heading-3xlarge(){}
|
|
290
303
|
// @mixin hook-inverse-heading-primary(){}
|
|
291
304
|
// @mixin hook-inverse-heading-hero(){}
|
|
292
305
|
// @mixin hook-inverse-heading-divider(){}
|
|
@@ -49,22 +49,25 @@ $navbar-nav-gap: 0px !default; // Must have a un
|
|
|
49
49
|
|
|
50
50
|
|
|
51
51
|
|
|
52
|
+
|
|
52
53
|
/* ========================================================================
|
|
53
54
|
Component: Navbar
|
|
54
55
|
========================================================================== */
|
|
55
56
|
|
|
56
57
|
/*
|
|
57
58
|
* 1. Create position context to center navbar group
|
|
59
|
+
* 2. Pass dropbar behind color to JS
|
|
58
60
|
*/
|
|
59
61
|
|
|
60
62
|
.uk-navbar {
|
|
61
63
|
display: flex;
|
|
62
64
|
/* 1 */
|
|
63
65
|
position: relative;
|
|
66
|
+
/* 2 */
|
|
67
|
+
--uk-navbar-dropbar-behind-color: #{$navbar-dropbar-behind-color-mode};
|
|
64
68
|
@if(mixin-exists(hook-navbar)) {@include hook-navbar();}
|
|
65
69
|
}
|
|
66
70
|
|
|
67
|
-
|
|
68
71
|
/* Container
|
|
69
72
|
========================================================================== */
|
|
70
73
|
|
|
@@ -347,7 +350,7 @@ $navbar-nav-gap: 0px !default; // Must have a un
|
|
|
347
350
|
* Remove margin from the last-child
|
|
348
351
|
*/
|
|
349
352
|
|
|
350
|
-
|
|
353
|
+
.uk-navbar-dropdown > :last-child { margin-bottom: 0; }
|
|
351
354
|
|
|
352
355
|
// Color Mode
|
|
353
356
|
@if ( $navbar-dropdown-color-mode == light ) { .uk-navbar-dropdown { @extend .uk-light !optional;} }
|
|
@@ -510,16 +513,6 @@ $navbar-nav-gap: 0px !default; // Must have a un
|
|
|
510
513
|
@if(mixin-exists(hook-navbar-dropbar)) {@include hook-navbar-dropbar();}
|
|
511
514
|
}
|
|
512
515
|
|
|
513
|
-
/*
|
|
514
|
-
* Create navbar placeholder space if dropbar is behind navbar
|
|
515
|
-
*/
|
|
516
|
-
|
|
517
|
-
.uk-navbar-dropbar-behind::before {
|
|
518
|
-
content: "";
|
|
519
|
-
display: block;
|
|
520
|
-
height: $navbar-nav-item-height;
|
|
521
|
-
}
|
|
522
|
-
|
|
523
516
|
|
|
524
517
|
// Hooks
|
|
525
518
|
// ========================================================================
|
|
@@ -24,8 +24,9 @@
|
|
|
24
24
|
|
|
25
25
|
/*
|
|
26
26
|
* 1. Allow items to wrap into the next line
|
|
27
|
-
* 2.
|
|
28
|
-
* 3.
|
|
27
|
+
* 2. Center items vertically if they have a different height
|
|
28
|
+
* 3. Gutter
|
|
29
|
+
* 4. Reset list
|
|
29
30
|
*/
|
|
30
31
|
|
|
31
32
|
.uk-pagination {
|
|
@@ -33,8 +34,10 @@
|
|
|
33
34
|
/* 1 */
|
|
34
35
|
flex-wrap: wrap;
|
|
35
36
|
/* 2 */
|
|
36
|
-
|
|
37
|
+
align-items: center;
|
|
37
38
|
/* 3 */
|
|
39
|
+
margin-left: (-$pagination-margin-horizontal);
|
|
40
|
+
/* 4 */
|
|
38
41
|
padding: 0;
|
|
39
42
|
list-style: none;
|
|
40
43
|
@if(mixin-exists(hook-pagination)) {@include hook-pagination();}
|
|
@@ -60,14 +63,18 @@
|
|
|
60
63
|
========================================================================== */
|
|
61
64
|
|
|
62
65
|
/*
|
|
63
|
-
* 1.
|
|
64
|
-
* 2.
|
|
66
|
+
* 1. Center content vertically, e.g. an icon
|
|
67
|
+
* 2. Imitate white space gap when using flexbox
|
|
68
|
+
* 3. Style
|
|
65
69
|
*/
|
|
66
70
|
|
|
67
71
|
.uk-pagination > * > * {
|
|
68
72
|
/* 1 */
|
|
69
|
-
display:
|
|
73
|
+
display: flex;
|
|
74
|
+
align-items: center;
|
|
70
75
|
/* 2 */
|
|
76
|
+
column-gap: 0.25em;
|
|
77
|
+
/* 3 */
|
|
71
78
|
padding: $pagination-item-padding-vertical $pagination-item-padding-horizontal;
|
|
72
79
|
color: $pagination-item-color;
|
|
73
80
|
@if(mixin-exists(hook-pagination-item)) {@include hook-pagination-item();}
|
|
@@ -134,6 +134,7 @@
|
|
|
134
134
|
|
|
135
135
|
.uk-section-default {
|
|
136
136
|
background: $section-default-background;
|
|
137
|
+
--uk-navbar-color: #{$section-default-color-mode};
|
|
137
138
|
@if(mixin-exists(hook-section-default)) {@include hook-section-default();}
|
|
138
139
|
}
|
|
139
140
|
|
|
@@ -143,6 +144,7 @@
|
|
|
143
144
|
|
|
144
145
|
.uk-section-muted {
|
|
145
146
|
background: $section-muted-background;
|
|
147
|
+
--uk-navbar-color: #{$section-muted-color-mode};
|
|
146
148
|
@if(mixin-exists(hook-section-muted)) {@include hook-section-muted();}
|
|
147
149
|
}
|
|
148
150
|
|
|
@@ -152,6 +154,7 @@
|
|
|
152
154
|
|
|
153
155
|
.uk-section-primary {
|
|
154
156
|
background: $section-primary-background;
|
|
157
|
+
--uk-navbar-color: #{$section-primary-color-mode};
|
|
155
158
|
@if(mixin-exists(hook-section-primary)) {@include hook-section-primary();}
|
|
156
159
|
}
|
|
157
160
|
|
|
@@ -164,6 +167,7 @@
|
|
|
164
167
|
|
|
165
168
|
.uk-section-secondary {
|
|
166
169
|
background: $section-secondary-background;
|
|
170
|
+
--uk-navbar-color: #{$section-secondary-color-mode};
|
|
167
171
|
@if(mixin-exists(hook-section-secondary)) {@include hook-section-secondary();}
|
|
168
172
|
}
|
|
169
173
|
|
|
@@ -219,7 +219,8 @@
|
|
|
219
219
|
.uk-heading-medium,
|
|
220
220
|
.uk-heading-large,
|
|
221
221
|
.uk-heading-xlarge,
|
|
222
|
-
.uk-heading-2xlarge
|
|
222
|
+
.uk-heading-2xlarge,
|
|
223
|
+
.uk-heading-3xlarge {
|
|
223
224
|
color: $inverse-base-heading-color;
|
|
224
225
|
@if(mixin-exists(hook-inverse-base-heading)) {@include hook-inverse-base-heading();}
|
|
225
226
|
}
|
|
@@ -972,6 +973,7 @@
|
|
|
972
973
|
@mixin hook-heading-large(){}
|
|
973
974
|
@mixin hook-heading-xlarge(){}
|
|
974
975
|
@mixin hook-heading-2xlarge(){}
|
|
976
|
+
@mixin hook-heading-3xlarge(){}
|
|
975
977
|
@mixin hook-heading-primary(){}
|
|
976
978
|
@mixin hook-heading-hero(){}
|
|
977
979
|
@mixin hook-heading-divider(){}
|
|
@@ -983,6 +985,7 @@
|
|
|
983
985
|
@mixin hook-inverse-heading-large(){}
|
|
984
986
|
@mixin hook-inverse-heading-xlarge(){}
|
|
985
987
|
@mixin hook-inverse-heading-2xlarge(){}
|
|
988
|
+
@mixin hook-inverse-heading-3xlarge(){}
|
|
986
989
|
@mixin hook-inverse-heading-primary(){}
|
|
987
990
|
@mixin hook-inverse-heading-hero(){}
|
|
988
991
|
@mixin hook-inverse-heading-divider(){}
|
|
@@ -1010,6 +1013,10 @@
|
|
|
1010
1013
|
@if(mixin-exists(hook-inverse-heading-2xlarge)) {@include hook-inverse-heading-2xlarge();}
|
|
1011
1014
|
}
|
|
1012
1015
|
|
|
1016
|
+
.uk-heading-3xlarge {
|
|
1017
|
+
@if(mixin-exists(hook-inverse-heading-3xlarge)) {@include hook-inverse-heading-3xlarge();}
|
|
1018
|
+
}
|
|
1019
|
+
|
|
1013
1020
|
@if ($deprecated == true) { .uk-heading-primary { @if (mixin-exists(hook-inverse-heading-primary)) {@include hook-inverse-heading-primary();}}}
|
|
1014
1021
|
|
|
1015
1022
|
@if ($deprecated == true) { .uk-heading-hero { @if (mixin-exists(hook-inverse-heading-hero)) {@include hook-inverse-heading-hero();}}}
|
|
@@ -1512,6 +1519,11 @@
|
|
|
1512
1519
|
@mixin hook-navbar-dropbar(){}
|
|
1513
1520
|
@mixin hook-navbar-misc(){
|
|
1514
1521
|
|
|
1522
|
+
.uk-navbar-container {
|
|
1523
|
+
transition: 0.1s ease-in-out;
|
|
1524
|
+
transition-property: background-color;
|
|
1525
|
+
}
|
|
1526
|
+
|
|
1515
1527
|
/* Tablet landscape and bigger */
|
|
1516
1528
|
@media (min-width: $breakpoint-medium) {
|
|
1517
1529
|
|