uikit 3.14.4-dev.f2e3be255 → 3.14.4-dev.fab1c7b7c

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 (135) hide show
  1. package/CHANGELOG.md +37 -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 +369 -113
  8. package/dist/css/uikit-rtl.min.css +1 -1
  9. package/dist/css/uikit.css +369 -113
  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 +509 -483
  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 +518 -488
  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/state.js +2 -2
  49. package/src/js/components/filter.js +5 -3
  50. package/src/js/components/notification.js +3 -1
  51. package/src/js/core/accordion.js +9 -17
  52. package/src/js/core/alert.js +35 -14
  53. package/src/js/core/drop.js +110 -82
  54. package/src/js/core/height-viewport.js +6 -2
  55. package/src/js/core/icon.js +16 -0
  56. package/src/js/core/index.js +2 -0
  57. package/src/js/core/leader.js +2 -2
  58. package/src/js/core/navbar.js +30 -45
  59. package/src/js/core/scroll.js +37 -10
  60. package/src/js/core/toggle.js +3 -5
  61. package/src/js/mixin/media.js +4 -5
  62. package/src/js/mixin/modal.js +15 -12
  63. package/src/js/mixin/position.js +24 -26
  64. package/src/js/mixin/style.js +11 -0
  65. package/src/js/mixin/togglable.js +88 -133
  66. package/src/js/util/animation.js +9 -7
  67. package/src/js/util/class.js +3 -1
  68. package/src/js/util/filter.js +3 -7
  69. package/src/js/util/position.js +107 -107
  70. package/src/js/util/style.js +4 -13
  71. package/src/js/util/viewport.js +3 -5
  72. package/src/less/components/_import.less +1 -0
  73. package/src/less/components/drop.less +1 -18
  74. package/src/less/components/dropbar.less +126 -0
  75. package/src/less/components/dropdown.less +11 -19
  76. package/src/less/components/leader.less +1 -1
  77. package/src/less/components/nav.less +218 -59
  78. package/src/less/components/navbar.less +62 -47
  79. package/src/less/components/utility.less +10 -2
  80. package/src/less/theme/_import.less +1 -0
  81. package/src/less/theme/dropbar.less +44 -0
  82. package/src/less/theme/dropdown.less +0 -11
  83. package/src/less/theme/nav.less +45 -7
  84. package/src/less/theme/navbar.less +1 -5
  85. package/src/scss/components/_import.scss +1 -0
  86. package/src/scss/components/drop.scss +1 -18
  87. package/src/scss/components/dropbar.scss +126 -0
  88. package/src/scss/components/dropdown.scss +11 -19
  89. package/src/scss/components/leader.scss +1 -1
  90. package/src/scss/components/nav.scss +167 -47
  91. package/src/scss/components/navbar.scss +50 -47
  92. package/src/scss/components/utility.scss +8 -1
  93. package/src/scss/mixins-theme.scss +92 -21
  94. package/src/scss/mixins.scss +89 -17
  95. package/src/scss/theme/_import.scss +1 -0
  96. package/src/scss/theme/dropbar.scss +44 -0
  97. package/src/scss/theme/dropdown.scss +0 -8
  98. package/src/scss/theme/nav.scss +43 -7
  99. package/src/scss/theme/navbar.scss +1 -5
  100. package/src/scss/variables-theme.scss +60 -19
  101. package/src/scss/variables.scss +49 -17
  102. package/tests/accordion.html +2 -2
  103. package/tests/alert.html +2 -2
  104. package/tests/countdown.html +1 -1
  105. package/tests/drop.html +446 -416
  106. package/tests/dropbar.html +458 -0
  107. package/tests/dropdown.html +8 -470
  108. package/tests/filter.html +9 -12
  109. package/tests/form.html +1 -1
  110. package/tests/index.html +126 -107
  111. package/tests/js/index.js +1 -4
  112. package/tests/lightbox.html +5 -5
  113. package/tests/list.html +8 -8
  114. package/tests/modal.html +13 -13
  115. package/tests/nav.html +117 -75
  116. package/tests/navbar.html +126 -246
  117. package/tests/offcanvas.html +17 -21
  118. package/tests/parallax.html +1 -1
  119. package/tests/position.html +18 -16
  120. package/tests/progress.html +9 -9
  121. package/tests/scroll.html +7 -10
  122. package/tests/search.html +6 -6
  123. package/tests/slider.html +6 -5
  124. package/tests/slideshow.html +8 -8
  125. package/tests/sortable.html +6 -8
  126. package/tests/sticky-navbar.html +15 -15
  127. package/tests/sticky.html +8 -8
  128. package/tests/switcher.html +1 -1
  129. package/tests/tab.html +1 -1
  130. package/tests/table.html +7 -7
  131. package/tests/toggle.html +2 -2
  132. package/tests/tooltip.html +1 -1
  133. package/tests/upload.html +11 -11
  134. package/tests/utility.html +19 -0
  135. package/src/images/backgrounds/nav-parent-open.svg +0 -3
@@ -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 @@
51
52
  @navbar-nav-item-onclick-color: @global-emphasis-color;
52
53
  @navbar-nav-item-active-color: @global-emphasis-color;
53
54
 
54
- @navbar-parent-icon-width: 12px;
55
- @navbar-parent-icon-height: 12px;
56
- @navbar-parent-icon-color: @navbar-nav-item-color;
55
+ @navbar-parent-icon-margin-left: 4px;
57
56
 
58
57
  @navbar-item-padding-horizontal: 15px;
59
58
  @navbar-item-color: @global-color;
@@ -75,16 +74,18 @@
75
74
  @navbar-dropdown-grid-gutter-horizontal: @global-gutter;
76
75
  @navbar-dropdown-grid-gutter-vertical: @navbar-dropdown-grid-gutter-horizontal;
77
76
 
77
+ @navbar-dropdown-large-shift-margin: 0;
78
78
  @navbar-dropdown-large-padding: 40px;
79
79
 
80
- @navbar-dropdown-stretch-padding-top: 15px;
81
- @navbar-dropdown-stretch-padding-bottom: @navbar-dropdown-stretch-padding-top;
82
- @navbar-dropdown-stretch-padding-horizontal: 15px;
83
- @navbar-dropdown-stretch-background: @global-background;
84
-
85
80
  @navbar-dropdown-dropbar-padding-top: @navbar-dropdown-padding;
86
81
  @navbar-dropdown-dropbar-padding-bottom: @navbar-dropdown-dropbar-padding-top;
87
82
  @navbar-dropdown-dropbar-padding-horizontal: @navbar-nav-item-padding-horizontal;
83
+ @navbar-dropdown-dropbar-viewport-margin: 15px;
84
+ @navbar-dropdown-dropbar-viewport-margin-s: @global-gutter;
85
+ @navbar-dropdown-dropbar-viewport-margin-m: @global-medium-gutter;
86
+
87
+ @navbar-dropdown-dropbar-large-padding-top: @navbar-dropdown-large-padding;
88
+ @navbar-dropdown-dropbar-large-padding-bottom: @navbar-dropdown-dropbar-large-padding-top;
88
89
 
89
90
  @navbar-dropdown-nav-item-color: @global-muted-color;
90
91
  @navbar-dropdown-nav-item-hover-color: @global-color;
@@ -97,12 +98,8 @@
97
98
  @navbar-dropdown-nav-sublist-item-hover-color: @global-color;
98
99
  @navbar-dropdown-nav-sublist-item-active-color: @global-emphasis-color;
99
100
 
100
- @navbar-dropbar-background: @navbar-dropdown-background;
101
101
  @navbar-dropbar-z-index: @global-z-index - 20;
102
102
 
103
- @internal-navbar-parent-close-image: "../../images/backgrounds/navbar-parent-close.svg";
104
- @internal-navbar-parent-open-image: "../../images/backgrounds/navbar-parent-open.svg";
105
-
106
103
 
107
104
  /* ========================================================================
108
105
  Component: Navbar
@@ -285,19 +282,9 @@
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
- .svg-fill(@internal-navbar-parent-close-image, "#000", @navbar-parent-icon-color);
294
- background-repeat: no-repeat;
295
- background-position: 50% 50%;
296
- .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 { .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 @@
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 @@
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
  .uk-navbar-dropdown:extend(.uk-light all) when (@navbar-dropdown-color-mode = light) {}
422
414
  .uk-navbar-dropdown:extend(.uk-dark all) when (@navbar-dropdown-color-mode = dark) {}
@@ -449,25 +441,9 @@
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
- .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 @@
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
  .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 @@
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
  .hook-navbar-dropbar();
569
573
  }
570
574
 
@@ -590,7 +594,6 @@
590
594
  .hook-navbar-transparent() {}
591
595
  .hook-navbar-sticky() {}
592
596
  .hook-navbar-dropdown() {}
593
- .hook-navbar-dropdown-stretch() {}
594
597
  .hook-navbar-dropdown-dropbar() {}
595
598
  .hook-navbar-dropdown-nav() {}
596
599
  .hook-navbar-dropdown-nav-item() {}
@@ -616,6 +619,10 @@
616
619
 
617
620
  .hook-inverse() {
618
621
 
622
+ //
623
+ // Nav Item
624
+ //
625
+
619
626
  .uk-navbar-nav > li > a {
620
627
  color: @inverse-navbar-nav-item-color;
621
628
  .hook-inverse-navbar-nav-item();
@@ -637,11 +644,19 @@
637
644
  .hook-inverse-navbar-nav-item-active();
638
645
  }
639
646
 
647
+ //
648
+ // Item
649
+ //
650
+
640
651
  .uk-navbar-item {
641
652
  color: @inverse-navbar-item-color;
642
653
  .hook-inverse-navbar-item();
643
654
  }
644
655
 
656
+ //
657
+ // Toggle
658
+ //
659
+
645
660
  .uk-navbar-toggle {
646
661
  color: @inverse-navbar-toggle-color;
647
662
  .hook-inverse-navbar-toggle();
@@ -147,6 +147,13 @@
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 @@
413
420
  .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
 
@@ -525,7 +532,8 @@
525
532
  .hook-inverse-logo-hover();
526
533
  }
527
534
 
528
- .uk-logo > :not(.uk-logo-inverse):not(:only-of-type) { display: none; }
535
+ .uk-logo > picture:not(:only-of-type) > :not(.uk-logo-inverse),
536
+ .uk-logo > :not(picture):not(.uk-logo-inverse):not(:only-of-type) { display: none; }
529
537
  .uk-logo-inverse { display: block; }
530
538
 
531
539
  }
@@ -39,6 +39,7 @@
39
39
  @import "accordion.less";
40
40
  @import "drop.less";
41
41
  @import "dropdown.less";
42
+ @import "dropbar.less";
42
43
  @import "modal.less";
43
44
  @import "slider.less";
44
45
  @import "sticky.less";
@@ -0,0 +1,44 @@
1
+ //
2
+ // Component: Dropbar
3
+ //
4
+ // ========================================================================
5
+
6
+
7
+ // Variables
8
+ // ========================================================================
9
+
10
+ @dropbar-padding-top: 25px;
11
+ @dropbar-background: @global-background;
12
+
13
+ //
14
+ // New
15
+ //
16
+
17
+ @dropbar-top-box-shadow: 0 12px 7px -6px rgba(0, 0, 0, 0.05);
18
+ @dropbar-bottom-box-shadow: 0 -12px 7px -6px rgba(0, 0, 0, 0.05);
19
+ @dropbar-left-box-shadow: 12px 0 7px -6px rgba(0, 0, 0, 0.05);
20
+ @dropbar-right-box-shadow: -12px 0 7px -6px rgba(0, 0, 0, 0.05);
21
+
22
+
23
+ // Component
24
+ // ========================================================================
25
+
26
+ .hook-dropbar() {}
27
+
28
+
29
+ // Direction modifier
30
+ // ========================================================================
31
+
32
+ .hook-dropbar-top() { box-shadow: @dropbar-top-box-shadow; }
33
+
34
+ .hook-dropbar-bottom() { box-shadow: @dropbar-bottom-box-shadow; }
35
+
36
+ .hook-dropbar-left() { box-shadow: @dropbar-left-box-shadow; }
37
+
38
+ .hook-dropbar-right() { box-shadow: @dropbar-right-box-shadow; }
39
+
40
+
41
+ // Miscellaneous
42
+ // ========================================================================
43
+
44
+ .hook-dropbar-misc() {}
@@ -20,8 +20,6 @@
20
20
 
21
21
  @dropdown-box-shadow: 0 5px 12px rgba(0,0,0,0.15);
22
22
 
23
- @dropdown-stretch-background: @global-muted-background;
24
-
25
23
 
26
24
  // Component
27
25
  // ========================================================================
@@ -29,15 +27,6 @@
29
27
  .hook-dropdown() { box-shadow: @dropdown-box-shadow; }
30
28
 
31
29
 
32
- // Stretch modifier
33
- // ========================================================================
34
-
35
- .hook-dropdown-stretch() {
36
- box-shadow: none;
37
- background: @dropdown-stretch-background;
38
- }
39
-
40
-
41
30
  // Nav
42
31
  // ========================================================================
43
32
 
@@ -11,17 +11,21 @@
11
11
 
12
12
  @nav-default-subtitle-font-size: 12px;
13
13
 
14
+ //
15
+ // New
16
+ //
14
17
 
15
- // Sublists
16
- // ========================================================================
17
-
18
- .hook-nav-sub() {}
18
+ @nav-background-margin-top: 0;
19
+ @nav-background-item-padding-horizontal: 10px;
20
+ @nav-background-item-padding-vertical: 10px;
21
+ @nav-background-item-hover-background: @global-muted-background;
22
+ @nav-background-item-active-background: @global-muted-background;
19
23
 
20
24
 
21
- // Parent icon modifier
25
+ // Sublists
22
26
  // ========================================================================
23
27
 
24
- .hook-nav-parent-icon() {}
28
+ .hook-nav-sub() {}
25
29
 
26
30
 
27
31
  // Header
@@ -72,6 +76,30 @@
72
76
  .hook-nav-primary-divider() {}
73
77
 
74
78
 
79
+ // Secondary style modifier
80
+ // ========================================================================
81
+
82
+ .hook-nav-secondary() {
83
+ > :not(.uk-nav-divider) + :not(.uk-nav-header, .uk-nav-divider) { margin-top: @nav-background-margin-top; }
84
+ }
85
+
86
+ .hook-nav-secondary-item() { padding: @nav-background-item-padding-vertical @nav-background-item-padding-horizontal; }
87
+
88
+ .hook-nav-secondary-item-hover() { background-color: @nav-background-item-hover-background; }
89
+
90
+ .hook-nav-secondary-item-active() { background-color: @nav-background-item-active-background; }
91
+
92
+ .hook-nav-secondary-subtitle() {}
93
+
94
+ .hook-nav-secondary-subtitle-hover() {}
95
+
96
+ .hook-nav-secondary-subtitle-active() {}
97
+
98
+ .hook-nav-secondary-header() {}
99
+
100
+ .hook-nav-secondary-divider() {}
101
+
102
+
75
103
  // Style modifier
76
104
  // ========================================================================
77
105
 
@@ -87,7 +115,8 @@
87
115
  // Inverse
88
116
  // ========================================================================
89
117
 
90
- .hook-inverse-nav-parent-icon() {}
118
+ @inverse-nav-background-item-hover-background: @inverse-global-muted-background;
119
+ @inverse-nav-background-item-active-background: @inverse-global-muted-background;
91
120
 
92
121
  .hook-inverse-nav-default-item() {}
93
122
  .hook-inverse-nav-default-item-hover() {}
@@ -101,4 +130,13 @@
101
130
  .hook-inverse-nav-primary-header() {}
102
131
  .hook-inverse-nav-primary-divider() {}
103
132
 
133
+ .hook-inverse-nav-secondary-item() {}
134
+ .hook-inverse-nav-secondary-item-hover() { background-color: @inverse-nav-background-item-hover-background; }
135
+ .hook-inverse-nav-secondary-item-active() { background-color: @inverse-nav-background-item-active-background; }
136
+ .hook-inverse-nav-secondary-subtitle() {}
137
+ .hook-inverse-nav-secondary-subtitle-hover() {}
138
+ .hook-inverse-nav-secondary-subtitle-active() {}
139
+ .hook-inverse-nav-secondary-header() {}
140
+ .hook-inverse-nav-secondary-divider() {}
141
+
104
142
  .hook-inverse-nav-dividers() {}
@@ -34,8 +34,6 @@
34
34
 
35
35
  @navbar-dropdown-box-shadow: 0 5px 12px rgba(0,0,0,0.15);
36
36
 
37
- @navbar-dropbar-box-shadow: 0 5px 7px rgba(0, 0, 0, 0.05);
38
-
39
37
  @navbar-dropdown-grid-divider-border-width: @global-border-width;
40
38
  @navbar-dropdown-grid-divider-border: @navbar-dropdown-nav-divider-border;
41
39
 
@@ -107,8 +105,6 @@
107
105
 
108
106
  .hook-navbar-dropdown() { box-shadow: @navbar-dropdown-box-shadow; }
109
107
 
110
- .hook-navbar-dropdown-stretch() { box-shadow: none; }
111
-
112
108
  .hook-navbar-dropdown-dropbar() { box-shadow: none; }
113
109
 
114
110
 
@@ -131,7 +127,7 @@
131
127
  // Dropbar
132
128
  // ========================================================================
133
129
 
134
- .hook-navbar-dropbar() { box-shadow: @navbar-dropbar-box-shadow; }
130
+ .hook-navbar-dropbar() {}
135
131
 
136
132
 
137
133
  // Miscellaneous
@@ -40,6 +40,7 @@
40
40
  @import "accordion.scss";
41
41
  @import "drop.scss"; // After: Card
42
42
  @import "dropdown.scss"; // After: Card
43
+ @import "dropbar.scss";
43
44
  @import "modal.scss"; // After: Close
44
45
  @import "slideshow.scss";
45
46
  @import "slider.scss";
@@ -3,8 +3,7 @@
3
3
  //
4
4
  // Component: `uk-drop`
5
5
  //
6
- // Modifiers: `uk-drop-stretch`
7
- // `uk-drop-stack`
6
+ // Modifiers: `uk-drop-stack`
8
7
  // `uk-drop-grid`
9
8
  //
10
9
  // States: `uk-open`
@@ -50,22 +49,6 @@ $drop-width: 300px !default;
50
49
  .uk-drop.uk-open { display: block; }
51
50
 
52
51
 
53
- /* Stretch modifier
54
- ========================================================================== */
55
-
56
- /*
57
- * 1. Allow scrolling
58
- */
59
-
60
- .uk-drop-stretch {
61
- --uk-position-offset: 0;
62
- --uk-position-viewport-offset: 0;
63
- /* 1 */
64
- overflow-y: auto;
65
- -webkit-overflow-scrolling: touch;
66
- }
67
-
68
-
69
52
  /* Grid modifiers
70
53
  ========================================================================== */
71
54
 
@@ -0,0 +1,126 @@
1
+ // Name: Dropbar
2
+ // Description: Component to create dropbar menus
3
+ //
4
+ // Component: `uk-dropbar`
5
+ //
6
+ // ========================================================================
7
+
8
+
9
+ // Variables
10
+ // ========================================================================
11
+
12
+ $dropbar-margin: 0 !default;
13
+ $dropbar-z-index: $global-z-index + 20 !default;
14
+ $dropbar-padding-top: 15px !default;
15
+ $dropbar-padding-bottom: $dropbar-padding-top !default;
16
+ $dropbar-padding-horizontal: 15px !default;
17
+ $dropbar-padding-horizontal-s: $global-gutter !default;
18
+ $dropbar-padding-horizontal-m: $global-medium-gutter !default;
19
+ $dropbar-background: $global-muted-background !default;
20
+ $dropbar-color: $global-color !default;
21
+ $dropbar-color-mode: none !default;
22
+
23
+ $dropbar-large-padding-top: 40px !default;
24
+ $dropbar-large-padding-bottom: $dropbar-large-padding-top !default;
25
+
26
+
27
+ /* ========================================================================
28
+ Component: Dropbar
29
+ ========================================================================== */
30
+
31
+ /*
32
+ * 1. Hide by default
33
+ * 2. Set position
34
+ * 3. Style
35
+ */
36
+
37
+ .uk-dropbar {
38
+ --uk-position-offset: #{$dropbar-margin};
39
+ --uk-position-shift-offset: 0;
40
+ --uk-position-viewport-offset: 0;
41
+ /* 1 */
42
+ display: none;
43
+ /* 2 */
44
+ position: absolute;
45
+ z-index: $dropbar-z-index;
46
+ /* 3 */
47
+ box-sizing: border-box;
48
+ padding: $dropbar-padding-top $dropbar-padding-horizontal $dropbar-padding-bottom $dropbar-padding-horizontal;
49
+ background: $dropbar-background;
50
+ color: $dropbar-color;
51
+ @if(mixin-exists(hook-dropbar)) {@include hook-dropbar();}
52
+ }
53
+
54
+ /* Show */
55
+ .uk-dropbar.uk-open { display: block; }
56
+
57
+ /*
58
+ * Remove margin from the last-child
59
+ */
60
+
61
+ .uk-dropbar > :last-child { margin-bottom: 0; }
62
+
63
+ /* Phone landscape and bigger */
64
+ @media (min-width: $breakpoint-small) {
65
+
66
+ .uk-dropbar {
67
+ padding-left: $dropbar-padding-horizontal-s;
68
+ padding-right: $dropbar-padding-horizontal-s;
69
+ }
70
+
71
+ }
72
+
73
+ /* Tablet landscape and bigger */
74
+ @media (min-width: $breakpoint-medium) {
75
+
76
+ .uk-dropbar {
77
+ padding-left: $dropbar-padding-horizontal-m;
78
+ padding-right: $dropbar-padding-horizontal-m;
79
+ }
80
+
81
+ }
82
+
83
+ // Color Mode
84
+ @if ( $dropbar-color-mode == light ) { .uk-dropbar { @extend .uk-light !optional;} }
85
+ @if ( $dropbar-color-mode == dark ) { .uk-dropbar { @extend .uk-dark !optional;} }
86
+
87
+ /* Size modifier
88
+ ========================================================================== */
89
+
90
+ .uk-dropbar-large {
91
+ padding-top: $dropbar-large-padding-top;
92
+ padding-bottom: $dropbar-large-padding-bottom;
93
+ }
94
+
95
+
96
+ /* Direction modifier
97
+ ========================================================================== */
98
+
99
+ .uk-dropbar-top {
100
+ @if(mixin-exists(hook-dropbar-top)) {@include hook-dropbar-top();}
101
+ }
102
+
103
+ .uk-dropbar-bottom {
104
+ @if(mixin-exists(hook-dropbar-bottom)) {@include hook-dropbar-bottom();}
105
+ }
106
+
107
+ .uk-dropbar-left {
108
+ @if(mixin-exists(hook-dropbar-left)) {@include hook-dropbar-left();}
109
+ }
110
+
111
+ .uk-dropbar-right {
112
+ @if(mixin-exists(hook-dropbar-right)) {@include hook-dropbar-right();}
113
+ }
114
+
115
+
116
+ // Hooks
117
+ // ========================================================================
118
+
119
+ @if(mixin-exists(hook-dropbar-misc)) {@include hook-dropbar-misc();}
120
+
121
+ // @mixin hook-dropbar(){}
122
+ // @mixin hook-dropbar-top(){}
123
+ // @mixin hook-dropbar-bottom(){}
124
+ // @mixin hook-dropbar-left(){}
125
+ // @mixin hook-dropbar-right(){}
126
+ // @mixin hook-dropbar-misc(){}
@@ -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