uikit 3.14.4-dev.f2e3be255 → 3.14.4-dev.fef7412a0

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.
Files changed (137) hide show
  1. package/CHANGELOG.md +39 -18
  2. package/build/util.js +1 -0
  3. package/dist/css/uikit-core-rtl.css +349 -109
  4. package/dist/css/uikit-core-rtl.min.css +1 -1
  5. package/dist/css/uikit-core.css +349 -109
  6. package/dist/css/uikit-core.min.css +1 -1
  7. package/dist/css/uikit-rtl.css +372 -139
  8. package/dist/css/uikit-rtl.min.css +1 -1
  9. package/dist/css/uikit.css +372 -139
  10. package/dist/css/uikit.min.css +1 -1
  11. package/dist/js/components/countdown.js +1 -1
  12. package/dist/js/components/countdown.min.js +1 -1
  13. package/dist/js/components/filter.js +7 -5
  14. package/dist/js/components/filter.min.js +1 -1
  15. package/dist/js/components/lightbox-panel.js +96 -139
  16. package/dist/js/components/lightbox-panel.min.js +1 -1
  17. package/dist/js/components/lightbox.js +96 -139
  18. package/dist/js/components/lightbox.min.js +1 -1
  19. package/dist/js/components/notification.js +4 -2
  20. package/dist/js/components/notification.min.js +1 -1
  21. package/dist/js/components/parallax.js +4 -5
  22. package/dist/js/components/parallax.min.js +1 -1
  23. package/dist/js/components/slider-parallax.js +4 -5
  24. package/dist/js/components/slider-parallax.min.js +1 -1
  25. package/dist/js/components/slider.js +1 -1
  26. package/dist/js/components/slider.min.js +1 -1
  27. package/dist/js/components/slideshow-parallax.js +4 -5
  28. package/dist/js/components/slideshow-parallax.min.js +1 -1
  29. package/dist/js/components/slideshow.js +1 -1
  30. package/dist/js/components/slideshow.min.js +1 -1
  31. package/dist/js/components/sortable.js +1 -1
  32. package/dist/js/components/sortable.min.js +1 -1
  33. package/dist/js/components/tooltip.js +102 -147
  34. package/dist/js/components/tooltip.min.js +1 -1
  35. package/dist/js/components/upload.js +1 -1
  36. package/dist/js/components/upload.min.js +1 -1
  37. package/dist/js/uikit-core.js +522 -488
  38. package/dist/js/uikit-core.min.js +17 -1
  39. package/dist/js/uikit-icons.js +1 -1
  40. package/dist/js/uikit-icons.min.js +1 -1
  41. package/dist/js/uikit.js +531 -493
  42. package/dist/js/uikit.min.js +17 -1
  43. package/package.json +11 -11
  44. package/src/images/{backgrounds/nav-parent-close.svg → components/nav-parent-icon-large.svg} +0 -0
  45. package/src/images/{backgrounds/navbar-parent-close.svg → components/nav-parent-icon.svg} +0 -0
  46. package/src/images/{backgrounds/navbar-parent-open.svg → components/navbar-parent-icon.svg} +1 -1
  47. package/src/images/components/navbar-toggle-icon.svg +25 -3
  48. package/src/js/api/hooks.js +5 -1
  49. package/src/js/api/state.js +2 -2
  50. package/src/js/components/filter.js +5 -3
  51. package/src/js/components/notification.js +3 -1
  52. package/src/js/core/accordion.js +9 -17
  53. package/src/js/core/alert.js +35 -14
  54. package/src/js/core/drop.js +110 -82
  55. package/src/js/core/height-viewport.js +6 -2
  56. package/src/js/core/icon.js +16 -0
  57. package/src/js/core/index.js +2 -0
  58. package/src/js/core/leader.js +2 -2
  59. package/src/js/core/navbar.js +30 -45
  60. package/src/js/core/offcanvas.js +8 -4
  61. package/src/js/core/scroll.js +37 -10
  62. package/src/js/core/toggle.js +3 -5
  63. package/src/js/mixin/media.js +4 -5
  64. package/src/js/mixin/modal.js +15 -12
  65. package/src/js/mixin/position.js +24 -26
  66. package/src/js/mixin/style.js +11 -0
  67. package/src/js/mixin/togglable.js +88 -133
  68. package/src/js/util/animation.js +9 -7
  69. package/src/js/util/class.js +3 -1
  70. package/src/js/util/filter.js +3 -7
  71. package/src/js/util/position.js +107 -107
  72. package/src/js/util/style.js +4 -13
  73. package/src/js/util/viewport.js +3 -5
  74. package/src/less/components/_import.less +1 -0
  75. package/src/less/components/drop.less +1 -18
  76. package/src/less/components/dropbar.less +126 -0
  77. package/src/less/components/dropdown.less +11 -19
  78. package/src/less/components/leader.less +1 -1
  79. package/src/less/components/nav.less +218 -59
  80. package/src/less/components/navbar.less +62 -47
  81. package/src/less/components/utility.less +10 -2
  82. package/src/less/theme/_import.less +1 -0
  83. package/src/less/theme/dropbar.less +44 -0
  84. package/src/less/theme/dropdown.less +0 -11
  85. package/src/less/theme/nav.less +45 -7
  86. package/src/less/theme/navbar.less +2 -37
  87. package/src/scss/components/_import.scss +1 -0
  88. package/src/scss/components/drop.scss +1 -18
  89. package/src/scss/components/dropbar.scss +126 -0
  90. package/src/scss/components/dropdown.scss +11 -19
  91. package/src/scss/components/leader.scss +1 -1
  92. package/src/scss/components/nav.scss +167 -47
  93. package/src/scss/components/navbar.scss +50 -47
  94. package/src/scss/components/utility.scss +8 -1
  95. package/src/scss/mixins-theme.scss +93 -49
  96. package/src/scss/mixins.scss +89 -17
  97. package/src/scss/theme/_import.scss +1 -0
  98. package/src/scss/theme/dropbar.scss +44 -0
  99. package/src/scss/theme/dropdown.scss +0 -8
  100. package/src/scss/theme/nav.scss +43 -7
  101. package/src/scss/theme/navbar.scss +2 -10
  102. package/src/scss/variables-theme.scss +61 -22
  103. package/src/scss/variables.scss +49 -17
  104. package/tests/accordion.html +2 -2
  105. package/tests/alert.html +2 -2
  106. package/tests/countdown.html +1 -1
  107. package/tests/drop.html +446 -416
  108. package/tests/dropbar.html +458 -0
  109. package/tests/dropdown.html +8 -470
  110. package/tests/filter.html +9 -12
  111. package/tests/form.html +1 -1
  112. package/tests/index.html +126 -107
  113. package/tests/js/index.js +1 -4
  114. package/tests/lightbox.html +5 -5
  115. package/tests/list.html +8 -8
  116. package/tests/modal.html +13 -13
  117. package/tests/nav.html +117 -75
  118. package/tests/navbar.html +125 -245
  119. package/tests/offcanvas.html +17 -21
  120. package/tests/parallax.html +1 -1
  121. package/tests/position.html +18 -16
  122. package/tests/progress.html +9 -9
  123. package/tests/scroll.html +7 -10
  124. package/tests/search.html +6 -6
  125. package/tests/slider.html +6 -5
  126. package/tests/slideshow.html +8 -8
  127. package/tests/sortable.html +6 -8
  128. package/tests/sticky-navbar.html +15 -15
  129. package/tests/sticky.html +8 -8
  130. package/tests/switcher.html +1 -1
  131. package/tests/tab.html +1 -1
  132. package/tests/table.html +7 -7
  133. package/tests/toggle.html +2 -2
  134. package/tests/tooltip.html +1 -1
  135. package/tests/upload.html +11 -11
  136. package/tests/utility.html +19 -0
  137. package/src/images/backgrounds/nav-parent-open.svg +0 -3
@@ -5,7 +5,7 @@
5
5
  //
6
6
  // Adopted: `uk-dropdown-nav`
7
7
  //
8
- // Modifiers: `uk-dropdown-stretch`
8
+ // Modifiers: `uk-dropdown-large`
9
9
  // `uk-dropdown-stack`
10
10
  // `uk-dropdown-grid`
11
11
  //
@@ -24,6 +24,7 @@ $dropdown-min-width: 200px !default;
24
24
  $dropdown-padding: 15px !default;
25
25
  $dropdown-background: $global-muted-background !default;
26
26
  $dropdown-color: $global-color !default;
27
+ $dropdown-color-mode: none !default;
27
28
 
28
29
  $dropdown-large-padding: 40px !default;
29
30
 
@@ -59,7 +60,6 @@ $dropdown-nav-sublist-item-hover-color: $global-color !default;
59
60
  /* 3 */
60
61
  box-sizing: border-box;
61
62
  min-width: $dropdown-min-width;
62
- max-width: 100vw;
63
63
  /* 4 */
64
64
  padding: $dropdown-padding;
65
65
  background: $dropdown-background;
@@ -70,28 +70,21 @@ $dropdown-nav-sublist-item-hover-color: $global-color !default;
70
70
  /* Show */
71
71
  .uk-dropdown.uk-open { display: block; }
72
72
 
73
+ /*
74
+ * Remove margin from the last-child
75
+ */
73
76
 
74
- /* Size modifier
75
- ========================================================================== */
77
+ .uk-dropdown > :last-child { margin-bottom: 0; }
76
78
 
77
- .uk-dropdown-large { padding: $dropdown-large-padding; }
79
+ // Color Mode
80
+ @if ( $dropdown-color-mode == light ) { .uk-dropdown { @extend .uk-light !optional;} }
81
+ @if ( $dropdown-color-mode == dark ) { .uk-dropdown { @extend .uk-dark !optional;} }
78
82
 
79
83
 
80
- /* Stretch modifier
84
+ /* Size modifier
81
85
  ========================================================================== */
82
86
 
83
- /*
84
- * 1. Allow scrolling
85
- */
86
-
87
- .uk-dropdown-stretch {
88
- --uk-position-offset: 0;
89
- --uk-position-viewport-offset: 0;
90
- /* 1 */
91
- overflow-y: auto;
92
- -webkit-overflow-scrolling: touch;
93
- @if(mixin-exists(hook-dropdown-stretch)) {@include hook-dropdown-stretch();}
94
- }
87
+ .uk-dropdown-large { padding: $dropdown-large-padding; }
95
88
 
96
89
 
97
90
  /* Nav
@@ -168,7 +161,6 @@ $dropdown-nav-sublist-item-hover-color: $global-color !default;
168
161
  @if(mixin-exists(hook-dropdown-misc)) {@include hook-dropdown-misc();}
169
162
 
170
163
  // @mixin hook-dropdown(){}
171
- // @mixin hook-dropdown-stretch(){}
172
164
  // @mixin hook-dropdown-nav(){}
173
165
  // @mixin hook-dropdown-nav-item(){}
174
166
  // @mixin hook-dropdown-nav-item-hover(){}
@@ -49,7 +49,7 @@ $leader-fill-margin-left: $global-small-gutter !default;
49
49
  * Pass fill character to JS
50
50
  */
51
51
 
52
- :root { --uk-leader-fill-content: '#{$leader-fill-content}'; }
52
+ :root { --uk-leader-fill-content: #{$leader-fill-content}; }
53
53
 
54
54
 
55
55
  // Hooks
@@ -3,13 +3,13 @@
3
3
  //
4
4
  // Component: `uk-nav`
5
5
  //
6
- // Sub-objects: `uk-nav-header`
6
+ // Sub-objects: `uk-nav-parent-icon`
7
+ // `uk-nav-header`
7
8
  // `uk-nav-divider`
8
9
  // `uk-nav-subtitle`
9
10
  // `uk-nav-sub`
10
11
  //
11
- // Modifiers: `uk-nav-parent-icon`
12
- // `uk-nav-default`
12
+ // Modifiers: `uk-nav-default`
13
13
  // `uk-nav-primary`
14
14
  // `uk-nav-center`,
15
15
  // `uk-nav-divider`
@@ -33,10 +33,6 @@ $nav-sublist-padding-left: 15px !default;
33
33
  $nav-sublist-deeper-padding-left: 15px !default;
34
34
  $nav-sublist-item-padding-vertical: 2px !default;
35
35
 
36
- $nav-parent-icon-width: ($global-line-height * 1em) !default;
37
- $nav-parent-icon-height: $nav-parent-icon-width !default;
38
- $nav-parent-icon-color: $global-color !default;
39
-
40
36
  $nav-header-padding-vertical: $nav-item-padding-vertical !default;
41
37
  $nav-header-padding-horizontal: $nav-item-padding-horizontal !default;
42
38
  $nav-header-font-size: $global-small-font-size !default;
@@ -76,13 +72,28 @@ $nav-primary-sublist-item-color: $global-muted-color !default;
76
72
  $nav-primary-sublist-item-hover-color: $global-color !default;
77
73
  $nav-primary-sublist-item-active-color: $global-emphasis-color !default;
78
74
 
79
- $nav-dividers-margin-top: 0 !default;
75
+ $nav-secondary-font-size: $global-font-size !default;
76
+ $nav-secondary-line-height: $global-line-height !default;
77
+ $nav-secondary-item-color: $global-emphasis-color !default;
78
+ $nav-secondary-item-hover-color: $global-emphasis-color !default;
79
+ $nav-secondary-item-active-color: $global-emphasis-color !default;
80
+ $nav-secondary-subtitle-font-size: $global-small-font-size !default;
81
+ $nav-secondary-subtitle-color: $global-muted-color !default;
82
+ $nav-secondary-subtitle-hover-color: $global-color !default;
83
+ $nav-secondary-subtitle-active-color: $global-emphasis-color !default;
84
+ $nav-secondary-header-color: $global-emphasis-color !default;
85
+ $nav-secondary-divider-border-width: $global-border-width !default;
86
+ $nav-secondary-divider-border: $global-border !default;
87
+ $nav-secondary-sublist-font-size: $global-small-font-size !default;
88
+ $nav-secondary-sublist-line-height: $global-line-height !default;
89
+ $nav-secondary-sublist-item-color: $global-muted-color !default;
90
+ $nav-secondary-sublist-item-hover-color: $global-color !default;
91
+ $nav-secondary-sublist-item-active-color: $global-emphasis-color !default;
92
+
93
+ $nav-dividers-margin-top: 5px !default;
80
94
  $nav-dividers-border-width: $global-border-width !default;
81
95
  $nav-dividers-border: $global-border !default;
82
96
 
83
- $internal-nav-parent-close-image: "data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolyline%20fill%3D%22none%22%20stroke%3D%22#000%22%20stroke-width%3D%221.1%22%20points%3D%221%204%207%2010%2013%204%22%20%2F%3E%0A%3C%2Fsvg%3E" !default;
84
- $internal-nav-parent-open-image: "data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolyline%20fill%3D%22none%22%20stroke%3D%22#000%22%20stroke-width%3D%221.1%22%20points%3D%2213%2010%207%204%201%2010%22%20%2F%3E%0A%3C%2Fsvg%3E" !default;
85
-
86
97
 
87
98
  /* ========================================================================
88
99
  Component: Nav
@@ -149,21 +160,12 @@ ul.uk-nav-sub {
149
160
  .uk-nav-sub a { padding: $nav-sublist-item-padding-vertical 0; }
150
161
 
151
162
 
152
- /* Parent icon modifier
163
+ /* Parent icon
153
164
  ========================================================================== */
154
165
 
155
- .uk-nav-parent-icon > .uk-parent > a::after {
156
- content: "";
157
- width: $nav-parent-icon-width;
158
- height: $nav-parent-icon-height;
159
- margin-left: auto;
160
- @include svg-fill($internal-nav-parent-close-image, "#000", $nav-parent-icon-color);
161
- background-repeat: no-repeat;
162
- background-position: 50% 50%;
163
- @if(mixin-exists(hook-nav-parent-icon)) {@include hook-nav-parent-icon();}
164
- }
166
+ .uk-nav-parent-icon { margin-left: auto; }
165
167
 
166
- .uk-nav-parent-icon > .uk-parent.uk-open > a::after { @include svg-fill($internal-nav-parent-open-image, "#000", $nav-parent-icon-color); }
168
+ .uk-nav > li > a[aria-expanded="true"] .uk-nav-parent-icon { transform: rotate(180deg); }
167
169
 
168
170
 
169
171
  /* Header
@@ -334,6 +336,93 @@ ul.uk-nav-sub {
334
336
  .uk-nav-primary .uk-nav-sub li.uk-active > a { color: $nav-primary-sublist-item-active-color; }
335
337
 
336
338
 
339
+ /* Secondary modifier
340
+ ========================================================================== */
341
+
342
+ .uk-nav-secondary {
343
+ font-size: $nav-secondary-font-size;
344
+ line-height: $nav-secondary-line-height;
345
+ @if(mixin-exists(hook-nav-secondary)) {@include hook-nav-secondary();}
346
+ }
347
+
348
+ /*
349
+ * Items
350
+ */
351
+
352
+ .uk-nav-secondary > li > a {
353
+
354
+ color: $nav-secondary-item-color;
355
+ @if(mixin-exists(hook-nav-secondary-item)) {@include hook-nav-secondary-item();}
356
+ }
357
+
358
+ /* Hover */
359
+ .uk-nav-secondary > li > a:hover {
360
+ color: $nav-secondary-item-hover-color;
361
+ @if(mixin-exists(hook-nav-secondary-item-hover)) {@include hook-nav-secondary-item-hover();}
362
+ }
363
+
364
+ /* Active */
365
+ .uk-nav-secondary > li.uk-active > a {
366
+ color: $nav-secondary-item-active-color;
367
+ @if(mixin-exists(hook-nav-secondary-item-active)) {@include hook-nav-secondary-item-active();}
368
+ }
369
+
370
+ /*
371
+ * Subtitle
372
+ */
373
+
374
+ .uk-nav-secondary .uk-nav-subtitle {
375
+ font-size: $nav-secondary-subtitle-font-size;
376
+ color: $nav-secondary-subtitle-color;
377
+ @if(mixin-exists(hook-nav-secondary-subtitle)) {@include hook-nav-secondary-subtitle();}
378
+ }
379
+
380
+ /* Hover */
381
+ .uk-nav-secondary > li > a:hover .uk-nav-subtitle {
382
+ color: $nav-secondary-subtitle-hover-color;
383
+ @if(mixin-exists(hook-nav-secondary-subtitle-hover)) {@include hook-nav-secondary-subtitle-hover();}
384
+ }
385
+
386
+ /* Active */
387
+ .uk-nav-secondary > li.uk-active > a .uk-nav-subtitle {
388
+ color: $nav-secondary-subtitle-active-color;
389
+ @if(mixin-exists(hook-nav-secondary-subtitle-active)) {@include hook-nav-secondary-subtitle-active();}
390
+ }
391
+
392
+ /*
393
+ * Header
394
+ */
395
+
396
+ .uk-nav-secondary .uk-nav-header {
397
+ color: $nav-secondary-header-color;
398
+ @if(mixin-exists(hook-nav-secondary-header)) {@include hook-nav-secondary-header();}
399
+ }
400
+
401
+ /*
402
+ * Divider
403
+ */
404
+
405
+ .uk-nav-secondary .uk-nav-divider {
406
+ border-top: $nav-secondary-divider-border-width solid $nav-secondary-divider-border;
407
+ @if(mixin-exists(hook-nav-secondary-divider)) {@include hook-nav-secondary-divider();}
408
+ }
409
+
410
+ /*
411
+ * Sublists
412
+ */
413
+
414
+ .uk-nav-secondary .uk-nav-sub {
415
+ font-size: $nav-secondary-sublist-font-size;
416
+ line-height: $nav-secondary-sublist-line-height;
417
+ }
418
+
419
+ .uk-nav-secondary .uk-nav-sub a { color: $nav-secondary-sublist-item-color; }
420
+
421
+ .uk-nav-secondary .uk-nav-sub a:hover { color: $nav-secondary-sublist-item-hover-color; }
422
+
423
+ .uk-nav-secondary .uk-nav-sub li.uk-active > a { color: $nav-secondary-sublist-item-active-color; }
424
+
425
+
337
426
  /* Alignment modifier
338
427
  ========================================================================== */
339
428
 
@@ -351,13 +440,18 @@ ul.uk-nav-sub {
351
440
  .uk-nav-center .uk-nav-sub,
352
441
  .uk-nav-center .uk-nav-sub ul { padding-left: 0; }
353
442
 
354
- /* Parent icon modifier */
355
- .uk-nav-center.uk-nav-parent-icon > .uk-parent > a::after { margin-left: 0; }
443
+ /* Parent icon */
444
+ .uk-nav-center .uk-nav-parent-icon { margin-left: 0; }
356
445
 
357
446
 
358
447
  /* Style modifier
359
448
  ========================================================================== */
360
449
 
450
+ /*
451
+ * Divider
452
+ * Naming is in plural to prevent conflicts with divider sub object.
453
+ */
454
+
361
455
  .uk-nav.uk-nav-divider > :not(.uk-nav-divider) + :not(.uk-nav-header, .uk-nav-divider) {
362
456
  margin-top: $nav-dividers-margin-top;
363
457
  padding-top: $nav-dividers-margin-top;
@@ -372,7 +466,6 @@ ul.uk-nav-sub {
372
466
  @if(mixin-exists(hook-nav-misc)) {@include hook-nav-misc();}
373
467
 
374
468
  // @mixin hook-nav-sub(){}
375
- // @mixin hook-nav-parent-icon(){}
376
469
  // @mixin hook-nav-header(){}
377
470
  // @mixin hook-nav-divider(){}
378
471
  // @mixin hook-nav-default(){}
@@ -389,6 +482,15 @@ ul.uk-nav-sub {
389
482
  // @mixin hook-nav-primary-subtitle(){}
390
483
  // @mixin hook-nav-primary-header(){}
391
484
  // @mixin hook-nav-primary-divider(){}
485
+ // @mixin hook-nav-secondary(){}
486
+ // @mixin hook-nav-secondary-item(){}
487
+ // @mixin hook-nav-secondary-item-hover(){}
488
+ // @mixin hook-nav-secondary-item-active(){}
489
+ // @mixin hook-nav-secondary-subtitle(){}
490
+ // @mixin hook-nav-secondary-subtitle-hover(){}
491
+ // @mixin hook-nav-secondary-subtitle-active(){}
492
+ // @mixin hook-nav-secondary-header(){}
493
+ // @mixin hook-nav-secondary-divider(){}
392
494
  // @mixin hook-nav-dividers(){}
393
495
  // @mixin hook-nav-misc(){}
394
496
 
@@ -396,30 +498,40 @@ ul.uk-nav-sub {
396
498
  // Inverse
397
499
  // ========================================================================
398
500
 
399
- $inverse-nav-parent-icon-color: $inverse-global-color !default;
400
- $inverse-nav-default-item-color: $inverse-global-muted-color !default;
401
- $inverse-nav-default-item-hover-color: $inverse-global-color !default;
402
- $inverse-nav-default-item-active-color: $inverse-global-emphasis-color !default;
403
- $inverse-nav-default-header-color: $inverse-global-emphasis-color !default;
404
- $inverse-nav-default-divider-border: $inverse-global-border !default;
405
- $inverse-nav-default-sublist-item-color: $inverse-global-muted-color !default;
406
- $inverse-nav-default-sublist-item-hover-color: $inverse-global-color !default;
407
- $inverse-nav-default-sublist-item-active-color: $inverse-global-emphasis-color !default;
408
-
409
- $inverse-nav-primary-item-color: $inverse-global-muted-color !default;
410
- $inverse-nav-primary-item-hover-color: $inverse-global-color !default;
411
- $inverse-nav-primary-item-active-color: $inverse-global-emphasis-color !default;
412
- $inverse-nav-primary-header-color: $inverse-global-emphasis-color !default;
413
- $inverse-nav-primary-divider-border: $inverse-global-border !default;
414
- $inverse-nav-primary-sublist-item-color: $inverse-global-muted-color !default;
415
- $inverse-nav-primary-sublist-item-hover-color: $inverse-global-color !default;
416
- $inverse-nav-primary-sublist-item-active-color: $inverse-global-emphasis-color !default;
417
-
418
- $inverse-nav-dividers-border: $inverse-global-border !default;
501
+ $inverse-nav-default-item-color: $inverse-global-muted-color !default;
502
+ $inverse-nav-default-item-hover-color: $inverse-global-color !default;
503
+ $inverse-nav-default-item-active-color: $inverse-global-emphasis-color !default;
504
+ $inverse-nav-default-header-color: $inverse-global-emphasis-color !default;
505
+ $inverse-nav-default-divider-border: $inverse-global-border !default;
506
+ $inverse-nav-default-sublist-item-color: $inverse-global-muted-color !default;
507
+ $inverse-nav-default-sublist-item-hover-color: $inverse-global-color !default;
508
+ $inverse-nav-default-sublist-item-active-color: $inverse-global-emphasis-color !default;
509
+
510
+ $inverse-nav-primary-item-color: $inverse-global-muted-color !default;
511
+ $inverse-nav-primary-item-hover-color: $inverse-global-color !default;
512
+ $inverse-nav-primary-item-active-color: $inverse-global-emphasis-color !default;
513
+ $inverse-nav-primary-header-color: $inverse-global-emphasis-color !default;
514
+ $inverse-nav-primary-divider-border: $inverse-global-border !default;
515
+ $inverse-nav-primary-sublist-item-color: $inverse-global-muted-color !default;
516
+ $inverse-nav-primary-sublist-item-hover-color: $inverse-global-color !default;
517
+ $inverse-nav-primary-sublist-item-active-color: $inverse-global-emphasis-color !default;
518
+
519
+ $inverse-nav-secondary-item-color: $inverse-global-emphasis-color !default;
520
+ $inverse-nav-secondary-item-hover-color: $inverse-global-emphasis-color !default;
521
+ $inverse-nav-secondary-item-active-color: $inverse-global-emphasis-color !default;
522
+ $inverse-nav-secondary-subtitle-color: $inverse-global-muted-color !default;
523
+ $inverse-nav-secondary-subtitle-hover-color: $inverse-global-color !default;
524
+ $inverse-nav-secondary-subtitle-active-color: $inverse-global-emphasis-color !default;
525
+ $inverse-nav-secondary-header-color: $inverse-global-emphasis-color !default;
526
+ $inverse-nav-secondary-divider-border: $inverse-global-border !default;
527
+ $inverse-nav-secondary-sublist-item-color: $inverse-global-muted-color !default;
528
+ $inverse-nav-secondary-sublist-item-hover-color: $inverse-global-color !default;
529
+ $inverse-nav-secondary-sublist-item-active-color: $inverse-global-emphasis-color !default;
530
+
531
+ $inverse-nav-dividers-border: $inverse-global-border !default;
419
532
 
420
533
 
421
534
 
422
- // @mixin hook-inverse-nav-parent-icon(){}
423
535
  // @mixin hook-inverse-nav-default-item(){}
424
536
  // @mixin hook-inverse-nav-default-item-hover(){}
425
537
  // @mixin hook-inverse-nav-default-item-active(){}
@@ -430,4 +542,12 @@ $inverse-nav-dividers-border: $inverse-global-border !default
430
542
  // @mixin hook-inverse-nav-primary-item-active(){}
431
543
  // @mixin hook-inverse-nav-primary-header(){}
432
544
  // @mixin hook-inverse-nav-primary-divider(){}
545
+ // @mixin hook-inverse-nav-secondary-item(){}
546
+ // @mixin hook-inverse-nav-secondary-item-hover(){}
547
+ // @mixin hook-inverse-nav-secondary-item-active(){}
548
+ // @mixin hook-inverse-nav-secondary-subtitle(){}
549
+ // @mixin hook-inverse-nav-secondary-subtitle-hover(){}
550
+ // @mixin hook-inverse-nav-secondary-subtitle-active(){}
551
+ // @mixin hook-inverse-nav-secondary-header(){}
552
+ // @mixin hook-inverse-nav-secondary-divider(){}
433
553
  // @mixin hook-inverse-nav-dividers(){}
@@ -10,6 +10,7 @@
10
10
  // `uk-navbar-center-left`
11
11
  // `uk-navbar-center-right`
12
12
  // `uk-navbar-nav`
13
+ // `uk-navbar-parent-icon`
13
14
  // `uk-navbar-item`
14
15
  // `uk-navbar-toggle`
15
16
  // `uk-navbar-subtitle`
@@ -51,9 +52,7 @@ $navbar-nav-item-hover-color: $global-color !default;
51
52
  $navbar-nav-item-onclick-color: $global-emphasis-color !default;
52
53
  $navbar-nav-item-active-color: $global-emphasis-color !default;
53
54
 
54
- $navbar-parent-icon-width: 12px !default;
55
- $navbar-parent-icon-height: 12px !default;
56
- $navbar-parent-icon-color: $navbar-nav-item-color !default;
55
+ $navbar-parent-icon-margin-left: 4px !default;
57
56
 
58
57
  $navbar-item-padding-horizontal: 15px !default;
59
58
  $navbar-item-color: $global-color !default;
@@ -75,16 +74,18 @@ $navbar-dropdown-color-mode: none !default;
75
74
  $navbar-dropdown-grid-gutter-horizontal: $global-gutter !default;
76
75
  $navbar-dropdown-grid-gutter-vertical: $navbar-dropdown-grid-gutter-horizontal !default;
77
76
 
77
+ $navbar-dropdown-large-shift-margin: 0 !default;
78
78
  $navbar-dropdown-large-padding: 40px !default;
79
79
 
80
- $navbar-dropdown-stretch-padding-top: 15px !default;
81
- $navbar-dropdown-stretch-padding-bottom: $navbar-dropdown-stretch-padding-top !default;
82
- $navbar-dropdown-stretch-padding-horizontal: 15px !default;
83
- $navbar-dropdown-stretch-background: $global-background !default;
84
-
85
80
  $navbar-dropdown-dropbar-padding-top: $navbar-dropdown-padding !default;
86
81
  $navbar-dropdown-dropbar-padding-bottom: $navbar-dropdown-dropbar-padding-top !default;
87
82
  $navbar-dropdown-dropbar-padding-horizontal: $navbar-nav-item-padding-horizontal !default;
83
+ $navbar-dropdown-dropbar-viewport-margin: 15px !default;
84
+ $navbar-dropdown-dropbar-viewport-margin-s: $global-gutter !default;
85
+ $navbar-dropdown-dropbar-viewport-margin-m: $global-medium-gutter !default;
86
+
87
+ $navbar-dropdown-dropbar-large-padding-top: $navbar-dropdown-large-padding !default;
88
+ $navbar-dropdown-dropbar-large-padding-bottom: $navbar-dropdown-dropbar-large-padding-top !default;
88
89
 
89
90
  $navbar-dropdown-nav-item-color: $global-muted-color !default;
90
91
  $navbar-dropdown-nav-item-hover-color: $global-color !default;
@@ -97,12 +98,8 @@ $navbar-dropdown-nav-sublist-item-color: $global-muted-color !default;
97
98
  $navbar-dropdown-nav-sublist-item-hover-color: $global-color !default;
98
99
  $navbar-dropdown-nav-sublist-item-active-color: $global-emphasis-color !default;
99
100
 
100
- $navbar-dropbar-background: $navbar-dropdown-background !default;
101
101
  $navbar-dropbar-z-index: $global-z-index - 20 !default;
102
102
 
103
- $internal-navbar-parent-close-image: "data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2212%22%20viewBox%3D%220%200%2012%2012%22%3E%0A%20%20%20%20%3Cpolyline%20fill%3D%22none%22%20stroke%3D%22#000%22%20stroke-width%3D%221.1%22%20points%3D%221%203.5%206%208.5%2011%203.5%22%2F%3E%0A%3C%2Fsvg%3E" !default;
104
- $internal-navbar-parent-open-image: "data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2212%22%20viewBox%3D%220%200%2012%2012%22%3E%0A%20%20%20%20%3Cpolyline%20fill%3D%22none%22%20stroke%3D%22#000%22%20stroke-width%3D%221.1%22%20points%3D%2211%208.5%206%203.5%201%208.5%22%20%2F%3E%0A%3C%2Fsvg%3E" !default;
105
-
106
103
 
107
104
  /* ========================================================================
108
105
  Component: Navbar
@@ -285,19 +282,9 @@ $internal-navbar-parent-open-image: "data:image/svg+xml;charset=UTF-8,%3Csvg%20x
285
282
  /* Parent icon modifier
286
283
  ========================================================================== */
287
284
 
288
- .uk-navbar-parent-icon .uk-navbar-nav > .uk-parent > a::after {
289
- content: "";
290
- width: $navbar-parent-icon-width;
291
- height: $navbar-parent-icon-height;
292
- margin-left: auto;
293
- @include svg-fill($internal-navbar-parent-close-image, "#000", $navbar-parent-icon-color);
294
- background-repeat: no-repeat;
295
- background-position: 50% 50%;
296
- @if(mixin-exists(hook-nav-parent-icon)) {@include hook-nav-parent-icon();}
297
- }
285
+ .uk-navbar-parent-icon { margin-left: $navbar-parent-icon-margin-left; }
298
286
 
299
- .uk-navbar-parent-icon .uk-navbar-nav > .uk-parent:hover > a::after,
300
- .uk-navbar-parent-icon .uk-navbar-nav > .uk-parent > a[aria-expanded="true"]::after { @include svg-fill($internal-navbar-parent-open-image, "#000", $navbar-parent-icon-color); }
287
+ .uk-navbar-nav > li > a[aria-expanded="true"] .uk-navbar-parent-icon { transform: rotate(180deg); }
301
288
 
302
289
 
303
290
  /* Item
@@ -406,7 +393,6 @@ $internal-navbar-parent-open-image: "data:image/svg+xml;charset=UTF-8,%3Csvg%20x
406
393
  /* 3 */
407
394
  box-sizing: border-box;
408
395
  width: $navbar-dropdown-width;
409
- max-width: 100vw;
410
396
  /* 4 */
411
397
  padding: $navbar-dropdown-padding;
412
398
  background: $navbar-dropdown-background;
@@ -417,6 +403,12 @@ $internal-navbar-parent-open-image: "data:image/svg+xml;charset=UTF-8,%3Csvg%20x
417
403
  /* Show */
418
404
  .uk-navbar-dropdown.uk-open { display: block; }
419
405
 
406
+ /*
407
+ * Remove margin from the last-child
408
+ */
409
+
410
+ .uk-navbar-dropdown > :last-child { margin-bottom: 0; }
411
+
420
412
  // Color Mode
421
413
  @if ( $navbar-dropdown-color-mode == light ) { .uk-navbar-dropdown { @extend .uk-light !optional;} }
422
414
  @if ( $navbar-dropdown-color-mode == dark ) { .uk-navbar-dropdown { @extend .uk-dark !optional;} }
@@ -449,25 +441,9 @@ $internal-navbar-parent-open-image: "data:image/svg+xml;charset=UTF-8,%3Csvg%20x
449
441
  * Size modifier
450
442
  */
451
443
 
452
- .uk-navbar-dropdown-large { padding: $navbar-dropdown-large-padding; }
453
-
454
- /*
455
- * Stretch modifier
456
- * 1. Allow scrolling
457
- * 2. Style
458
- */
459
-
460
- .uk-navbar-dropdown-stretch {
461
- --uk-position-offset: 0;
462
- --uk-position-shift-offset: 0;
463
- --uk-position-viewport-offset: 0;
464
- /* 1 */
465
- overflow-y: auto;
466
- -webkit-overflow-scrolling: touch;
467
- /* 2 */
468
- padding: $navbar-dropdown-stretch-padding-top $navbar-dropdown-stretch-padding-horizontal $navbar-dropdown-stretch-padding-bottom $navbar-dropdown-stretch-padding-horizontal;
469
- background: $navbar-dropdown-stretch-background;
470
- @if(mixin-exists(hook-navbar-dropdown-stretch)) {@include hook-navbar-dropdown-stretch();}
444
+ .uk-navbar-dropdown-large {
445
+ --uk-position-shift-offset: #{$navbar-dropdown-large-shift-margin};
446
+ padding: $navbar-dropdown-large-padding;
471
447
  }
472
448
 
473
449
  /*
@@ -484,10 +460,31 @@ $internal-navbar-parent-open-image: "data:image/svg+xml;charset=UTF-8,%3Csvg%20x
484
460
  background: transparent;
485
461
  /* 3 */
486
462
  padding: $navbar-dropdown-dropbar-padding-top $navbar-dropdown-dropbar-padding-horizontal $navbar-dropdown-dropbar-padding-bottom $navbar-dropdown-dropbar-padding-horizontal;
463
+ --uk-position-offset: 0;
487
464
  --uk-position-shift-offset: 0;
465
+ --uk-position-viewport-offset: #{$navbar-dropdown-dropbar-viewport-margin};
488
466
  @if(mixin-exists(hook-navbar-dropdown-dropbar)) {@include hook-navbar-dropdown-dropbar();}
489
467
  }
490
468
 
469
+ /* Phone landscape and bigger */
470
+ @media (min-width: $breakpoint-small) {
471
+
472
+ .uk-navbar-dropdown-dropbar { --uk-position-viewport-offset: #{$navbar-dropdown-dropbar-viewport-margin-s}; }
473
+
474
+ }
475
+
476
+ /* Tablet landscape and bigger */
477
+ @media (min-width: $breakpoint-medium) {
478
+
479
+ .uk-navbar-dropdown-dropbar { --uk-position-viewport-offset: #{$navbar-dropdown-dropbar-viewport-margin-m}; }
480
+
481
+ }
482
+
483
+ .uk-navbar-dropdown-dropbar-large {
484
+ padding-top: $navbar-dropdown-dropbar-large-padding-top;
485
+ padding-bottom: $navbar-dropdown-dropbar-large-padding-bottom;
486
+ }
487
+
491
488
 
492
489
  /* Dropdown Nav
493
490
  * Adopts `uk-nav`
@@ -559,12 +556,19 @@ $internal-navbar-parent-open-image: "data:image/svg+xml;charset=UTF-8,%3Csvg%20x
559
556
  /* Dropbar
560
557
  ========================================================================== */
561
558
 
559
+ /*
560
+ * 1. Reset dropbar
561
+ * 2. Width
562
+ */
563
+
562
564
  .uk-navbar-dropbar {
563
- position: absolute;
565
+ /* 1 */
566
+ display: block !important;
564
567
  z-index: $navbar-dropbar-z-index;
568
+ padding: 0;
569
+ /* 2 */
565
570
  left: 0;
566
571
  right: 0;
567
- background: $navbar-dropbar-background;
568
572
  @if(mixin-exists(hook-navbar-dropbar)) {@include hook-navbar-dropbar();}
569
573
  }
570
574
 
@@ -590,7 +594,6 @@ $internal-navbar-parent-open-image: "data:image/svg+xml;charset=UTF-8,%3Csvg%20x
590
594
  // @mixin hook-navbar-transparent(){}
591
595
  // @mixin hook-navbar-sticky(){}
592
596
  // @mixin hook-navbar-dropdown(){}
593
- // @mixin hook-navbar-dropdown-stretch(){}
594
597
  // @mixin hook-navbar-dropdown-dropbar(){}
595
598
  // @mixin hook-navbar-dropdown-nav(){}
596
599
  // @mixin hook-navbar-dropdown-nav-item(){}
@@ -147,6 +147,13 @@ $dragover-box-shadow: 0 0 20px rgba(100,100,100,0.3)
147
147
  .uk-overflow-auto > :last-child { margin-bottom: 0; }
148
148
 
149
149
 
150
+ /* Box Sizing
151
+ ========================================================================== */
152
+
153
+ .uk-box-sizing-content { box-sizing: content-box; }
154
+ .uk-box-sizing-border { box-sizing: border-box; }
155
+
156
+
150
157
  /* Resize
151
158
  ========================================================================== */
152
159
 
@@ -413,7 +420,7 @@ $dragover-box-shadow: 0 0 20px rgba(100,100,100,0.3)
413
420
  @if(mixin-exists(hook-logo-hover)) {@include hook-logo-hover();}
414
421
  }
415
422
 
416
- .uk-logo > :where(img, svg, video) { display: block; }
423
+ .uk-logo :where(img, svg, video) { display: block; }
417
424
 
418
425
  .uk-logo-inverse { display: none; }
419
426