uikit 3.14.4-dev.310965bc8 → 3.14.4-dev.4bd89c5ca

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 (69) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/css/uikit-core-rtl.css +93 -14
  3. package/dist/css/uikit-core-rtl.min.css +1 -1
  4. package/dist/css/uikit-core.css +93 -14
  5. package/dist/css/uikit-core.min.css +1 -1
  6. package/dist/css/uikit-rtl.css +93 -15
  7. package/dist/css/uikit-rtl.min.css +1 -1
  8. package/dist/css/uikit.css +93 -15
  9. package/dist/css/uikit.min.css +1 -1
  10. package/dist/js/components/countdown.js +1 -1
  11. package/dist/js/components/countdown.min.js +1 -1
  12. package/dist/js/components/filter.js +7 -5
  13. package/dist/js/components/filter.min.js +1 -1
  14. package/dist/js/components/lightbox-panel.js +6 -14
  15. package/dist/js/components/lightbox-panel.min.js +1 -1
  16. package/dist/js/components/lightbox.js +6 -14
  17. package/dist/js/components/lightbox.min.js +1 -1
  18. package/dist/js/components/notification.js +1 -1
  19. package/dist/js/components/notification.min.js +1 -1
  20. package/dist/js/components/parallax.js +1 -1
  21. package/dist/js/components/parallax.min.js +1 -1
  22. package/dist/js/components/slider-parallax.js +1 -1
  23. package/dist/js/components/slider-parallax.min.js +1 -1
  24. package/dist/js/components/slider.js +1 -1
  25. package/dist/js/components/slider.min.js +1 -1
  26. package/dist/js/components/slideshow-parallax.js +1 -1
  27. package/dist/js/components/slideshow-parallax.min.js +1 -1
  28. package/dist/js/components/slideshow.js +1 -1
  29. package/dist/js/components/slideshow.min.js +1 -1
  30. package/dist/js/components/sortable.js +3 -3
  31. package/dist/js/components/sortable.min.js +1 -1
  32. package/dist/js/components/tooltip.js +16 -16
  33. package/dist/js/components/tooltip.min.js +1 -1
  34. package/dist/js/components/upload.js +1 -1
  35. package/dist/js/components/upload.min.js +1 -1
  36. package/dist/js/uikit-core.js +73 -58
  37. package/dist/js/uikit-core.min.js +1 -1
  38. package/dist/js/uikit-icons.js +1 -1
  39. package/dist/js/uikit-icons.min.js +1 -1
  40. package/dist/js/uikit.js +81 -64
  41. package/dist/js/uikit.min.js +1 -1
  42. package/package.json +1 -1
  43. package/src/images/backgrounds/nav-parent-close.svg +1 -1
  44. package/src/images/backgrounds/nav-parent-open.svg +1 -1
  45. package/src/images/backgrounds/navbar-parent-close.svg +3 -0
  46. package/src/images/backgrounds/navbar-parent-open.svg +3 -0
  47. package/src/js/components/filter.js +5 -3
  48. package/src/js/components/sortable.js +2 -3
  49. package/src/js/core/height-viewport.js +3 -1
  50. package/src/js/core/navbar.js +44 -15
  51. package/src/js/core/sticky.js +8 -9
  52. package/src/js/mixin/position.js +16 -7
  53. package/src/js/mixin/togglable.js +8 -17
  54. package/src/js/util/position.js +1 -2
  55. package/src/js/util/viewport.js +2 -27
  56. package/src/less/components/dropdown.less +8 -0
  57. package/src/less/components/navbar.less +106 -14
  58. package/src/less/theme/navbar.less +12 -6
  59. package/src/scss/components/dropdown.scss +8 -0
  60. package/src/scss/components/nav.scss +2 -2
  61. package/src/scss/components/navbar.scss +82 -14
  62. package/src/scss/mixins-theme.scss +25 -4
  63. package/src/scss/mixins.scss +24 -0
  64. package/src/scss/theme/navbar.scss +11 -2
  65. package/src/scss/variables-theme.scss +21 -6
  66. package/src/scss/variables.scss +21 -5
  67. package/tests/drop.html +66 -16
  68. package/tests/dropdown.html +103 -16
  69. package/tests/navbar.html +285 -53
@@ -51,7 +51,12 @@
51
51
  @navbar-nav-item-onclick-color: @global-emphasis-color;
52
52
  @navbar-nav-item-active-color: @global-emphasis-color;
53
53
 
54
- @navbar-item-padding-horizontal: @navbar-nav-item-padding-horizontal;
54
+ @navbar-parent-icon-width: 12px;
55
+ @navbar-parent-icon-height: 12px;
56
+ @navbar-parent-icon-margin-left: 4px;
57
+ @navbar-parent-icon-color: @navbar-nav-item-color;
58
+
59
+ @navbar-item-padding-horizontal: 15px;
55
60
  @navbar-item-color: @global-color;
56
61
 
57
62
  @navbar-toggle-color: @global-muted-color;
@@ -71,8 +76,18 @@
71
76
  @navbar-dropdown-grid-gutter-horizontal: @global-gutter;
72
77
  @navbar-dropdown-grid-gutter-vertical: @navbar-dropdown-grid-gutter-horizontal;
73
78
 
74
- @navbar-dropdown-dropbar-margin-top: 0px;
75
- @navbar-dropdown-dropbar-margin-bottom: @navbar-dropdown-dropbar-margin-top;
79
+ @navbar-dropdown-large-shift-margin: 0;
80
+ @navbar-dropdown-large-padding: 40px;
81
+
82
+ @navbar-dropdown-stretch-padding-top: 15px;
83
+ @navbar-dropdown-stretch-padding-bottom: @navbar-dropdown-stretch-padding-top;
84
+ @navbar-dropdown-stretch-padding-horizontal: 15px;
85
+ @navbar-dropdown-stretch-padding-horizontal-s: @global-gutter;
86
+ @navbar-dropdown-stretch-padding-horizontal-m: @global-medium-gutter;
87
+ @navbar-dropdown-stretch-background: @navbar-dropdown-background;
88
+
89
+ @navbar-dropdown-dropbar-padding-top: @navbar-dropdown-padding;
90
+ @navbar-dropdown-dropbar-padding-bottom: @navbar-dropdown-dropbar-padding-top;
76
91
  @navbar-dropdown-dropbar-padding-horizontal: @navbar-nav-item-padding-horizontal;
77
92
 
78
93
  @navbar-dropdown-nav-item-color: @global-muted-color;
@@ -89,6 +104,9 @@
89
104
  @navbar-dropbar-background: @navbar-dropdown-background;
90
105
  @navbar-dropbar-z-index: @global-z-index - 20;
91
106
 
107
+ @internal-navbar-parent-close-image: "../../images/backgrounds/navbar-parent-close.svg";
108
+ @internal-navbar-parent-open-image: "../../images/backgrounds/navbar-parent-open.svg";
109
+
92
110
 
93
111
  /* ========================================================================
94
112
  Component: Navbar
@@ -227,7 +245,6 @@
227
245
  /* 3 */
228
246
  box-sizing: border-box;
229
247
  min-height: @navbar-nav-item-height;
230
- padding: 0 @navbar-nav-item-padding-horizontal;
231
248
  /* 4 */
232
249
  font-size: @navbar-nav-item-font-size;
233
250
  font-family: @navbar-nav-item-font-family;
@@ -240,6 +257,7 @@
240
257
  */
241
258
 
242
259
  .uk-navbar-nav > li > a {
260
+ padding: 0 @navbar-nav-item-padding-horizontal;
243
261
  color: @navbar-nav-item-color;
244
262
  .hook-navbar-nav-item();
245
263
  }
@@ -268,6 +286,24 @@
268
286
  }
269
287
 
270
288
 
289
+ /* Parent icon modifier
290
+ ========================================================================== */
291
+
292
+ .uk-navbar-parent-icon .uk-navbar-nav > .uk-parent > a::after {
293
+ content: "";
294
+ width: @navbar-parent-icon-width;
295
+ height: @navbar-parent-icon-height;
296
+ margin-left: @navbar-parent-icon-margin-left;
297
+ .svg-fill(@internal-navbar-parent-close-image, "#000", @navbar-parent-icon-color);
298
+ background-repeat: no-repeat;
299
+ background-position: 50% 50%;
300
+ .hook-nav-parent-icon();
301
+ }
302
+
303
+ .uk-navbar-parent-icon .uk-navbar-nav > .uk-parent:hover > a::after,
304
+ .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); }
305
+
306
+
271
307
  /* Item
272
308
  ========================================================================== */
273
309
 
@@ -288,6 +324,7 @@
288
324
  ========================================================================== */
289
325
 
290
326
  .uk-navbar-toggle {
327
+ padding: 0 @navbar-item-padding-horizontal;
291
328
  color: @navbar-toggle-color;
292
329
  .hook-navbar-toggle();
293
330
  }
@@ -384,7 +421,7 @@
384
421
  /* Show */
385
422
  .uk-navbar-dropdown.uk-open { display: block; }
386
423
 
387
-
424
+ // Color Mode
388
425
  .uk-navbar-dropdown:extend(.uk-light all) when (@navbar-dropdown-color-mode = light) {}
389
426
  .uk-navbar-dropdown:extend(.uk-dark all) when (@navbar-dropdown-color-mode = dark) {}
390
427
 
@@ -412,39 +449,68 @@
412
449
  .uk-navbar-dropdown-width-4:not(.uk-navbar-dropdown-stack) { width: (@navbar-dropdown-width * 4); }
413
450
  .uk-navbar-dropdown-width-5:not(.uk-navbar-dropdown-stack) { width: (@navbar-dropdown-width * 5); }
414
451
 
452
+ /*
453
+ * Size modifier
454
+ */
455
+
456
+ .uk-navbar-dropdown-large {
457
+ --uk-position-shift-offset: @navbar-dropdown-large-shift-margin;
458
+ padding: @navbar-dropdown-large-padding;
459
+ }
460
+
415
461
  /*
416
462
  * Stretch modifier
417
463
  * 1. Allow scrolling
464
+ * 2. Style
418
465
  */
419
466
 
420
- .uk-navbar-dropdown-stretch {
467
+ .uk-navbar-dropdown-stretch {
421
468
  --uk-position-offset: 0;
422
469
  --uk-position-shift-offset: 0;
423
470
  --uk-position-viewport-offset: 0;
424
471
  /* 1 */
425
472
  overflow-y: auto;
426
473
  -webkit-overflow-scrolling: touch;
474
+ /* 2 */
475
+ padding: @navbar-dropdown-stretch-padding-top @navbar-dropdown-stretch-padding-horizontal @navbar-dropdown-stretch-padding-bottom @navbar-dropdown-stretch-padding-horizontal;
476
+ background: @navbar-dropdown-stretch-background;
427
477
  .hook-navbar-dropdown-stretch();
428
478
  }
429
479
 
480
+ /* Phone landscape and bigger */
481
+ @media (min-width: @breakpoint-small) {
482
+
483
+ .uk-navbar-dropdown-stretch {
484
+ padding-left: @navbar-dropdown-stretch-padding-horizontal-s;
485
+ padding-right: @navbar-dropdown-stretch-padding-horizontal-s;
486
+ }
487
+
488
+ }
489
+
490
+ /* Tablet landscape and bigger */
491
+ @media (min-width: @breakpoint-medium) {
492
+
493
+ .uk-navbar-dropdown-stretch {
494
+ padding-left: @navbar-dropdown-stretch-padding-horizontal-m;
495
+ padding-right: @navbar-dropdown-stretch-padding-horizontal-m;
496
+ }
497
+
498
+ }
499
+
430
500
  /*
431
501
  * Dropbar modifier
432
502
  * 1. Reset dropdown width to prevent to early shifting
433
- * 2. Set position
434
- * 3. Bottom padding for dropbar
435
- * 4. Horizontal padding
503
+ * 2. Reset style
504
+ * 3. Padding
436
505
  */
437
506
 
438
507
  .uk-navbar-dropdown-dropbar {
439
508
  /* 1 */
440
509
  width: auto;
441
510
  /* 2 */
442
- --uk-position-offset: @navbar-dropdown-dropbar-margin-top;
511
+ background: transparent;
443
512
  /* 3 */
444
- margin-bottom: @navbar-dropdown-dropbar-margin-bottom;
445
- /* 4 */
446
- padding-left: @navbar-dropdown-dropbar-padding-horizontal;
447
- padding-right: @navbar-dropdown-dropbar-padding-horizontal;
513
+ padding: @navbar-dropdown-dropbar-padding-top @navbar-dropdown-dropbar-padding-horizontal @navbar-dropdown-dropbar-padding-bottom @navbar-dropdown-dropbar-padding-horizontal;
448
514
  --uk-position-shift-offset: 0;
449
515
  .hook-navbar-dropdown-dropbar();
450
516
  }
@@ -571,12 +637,17 @@
571
637
  @inverse-navbar-nav-item-hover-color: @inverse-global-color;
572
638
  @inverse-navbar-nav-item-onclick-color: @inverse-global-emphasis-color;
573
639
  @inverse-navbar-nav-item-active-color: @inverse-global-emphasis-color;
640
+ @inverse-navbar-parent-icon-color: @inverse-navbar-nav-item-color;
574
641
  @inverse-navbar-item-color: @inverse-global-color;
575
642
  @inverse-navbar-toggle-color: @inverse-global-muted-color;
576
643
  @inverse-navbar-toggle-hover-color: @inverse-global-color;
577
644
 
578
645
  .hook-inverse() {
579
646
 
647
+ //
648
+ // Nav Item
649
+ //
650
+
580
651
  .uk-navbar-nav > li > a {
581
652
  color: @inverse-navbar-nav-item-color;
582
653
  .hook-inverse-navbar-nav-item();
@@ -598,11 +669,31 @@
598
669
  .hook-inverse-navbar-nav-item-active();
599
670
  }
600
671
 
672
+ //
673
+ // Parent icon modifier
674
+ //
675
+
676
+ .uk-navbar-parent-icon .uk-navbar-nav > .uk-parent > a::after {
677
+ .svg-fill(@internal-navbar-parent-close-image, "#000", @inverse-navbar-parent-icon-color);
678
+ .hook-inverse-nav-parent-icon();
679
+ }
680
+
681
+ .uk-navbar-parent-icon .uk-navbar-nav > .uk-parent:hover > a::after,
682
+ .uk-navbar-parent-icon .uk-navbar-nav > .uk-parent > a[aria-expanded="true"]::after { .svg-fill(@internal-navbar-parent-open-image, "#000", @inverse-navbar-parent-icon-color); }
683
+
684
+ //
685
+ // Item
686
+ //
687
+
601
688
  .uk-navbar-item {
602
689
  color: @inverse-navbar-item-color;
603
690
  .hook-inverse-navbar-item();
604
691
  }
605
692
 
693
+ //
694
+ // Toggle
695
+ //
696
+
606
697
  .uk-navbar-toggle {
607
698
  color: @inverse-navbar-toggle-color;
608
699
  .hook-inverse-navbar-toggle();
@@ -620,6 +711,7 @@
620
711
  .hook-inverse-navbar-nav-item-hover() {}
621
712
  .hook-inverse-navbar-nav-item-onclick() {}
622
713
  .hook-inverse-navbar-nav-item-active() {}
714
+ .hook-inverse-nav-parent-icon() {}
623
715
  .hook-inverse-navbar-item() {}
624
716
  .hook-inverse-navbar-toggle() {}
625
717
  .hook-inverse-navbar-toggle-hover() {}
@@ -10,10 +10,13 @@
10
10
  @navbar-gap: 30px;
11
11
 
12
12
  @navbar-nav-gap: 30px;
13
+
13
14
  @navbar-nav-item-padding-horizontal: 0;
14
15
 
15
16
  @navbar-nav-item-font-size: @global-small-font-size;
16
17
 
18
+ @navbar-item-padding-horizontal: 0;
19
+
17
20
  @navbar-dropdown-margin: 15px;
18
21
  @navbar-dropdown-padding: 25px;
19
22
  @navbar-dropdown-background: @global-background;
@@ -31,8 +34,6 @@
31
34
 
32
35
  @navbar-dropdown-box-shadow: 0 5px 12px rgba(0,0,0,0.15);
33
36
 
34
- @navbar-dropdown-stretch-background: @global-muted-background;
35
-
36
37
  @navbar-dropbar-box-shadow: 0 5px 7px rgba(0, 0, 0, 0.05);
37
38
 
38
39
  @navbar-dropdown-grid-divider-border-width: @global-border-width;
@@ -67,6 +68,12 @@
67
68
  .hook-navbar-nav-item-active() {}
68
69
 
69
70
 
71
+ // Parent icon modifier
72
+ // ========================================================================
73
+
74
+ .hook-nav-parent-icon() {}
75
+
76
+
70
77
  // Item
71
78
  // ========================================================================
72
79
 
@@ -106,10 +113,7 @@
106
113
 
107
114
  .hook-navbar-dropdown() { box-shadow: @navbar-dropdown-box-shadow; }
108
115
 
109
- .hook-navbar-dropdown-stretch() {
110
- box-shadow: none;
111
- background: @navbar-dropdown-stretch-background;
112
- }
116
+ .hook-navbar-dropdown-stretch() { box-shadow: none; }
113
117
 
114
118
  .hook-navbar-dropdown-dropbar() { box-shadow: none; }
115
119
 
@@ -177,6 +181,8 @@
177
181
  .hook-inverse-navbar-nav-item-onclick() {}
178
182
  .hook-inverse-navbar-nav-item-active() {}
179
183
 
184
+ .hook-inverse-nav-parent-icon() {}
185
+
180
186
  .hook-inverse-navbar-item() {}
181
187
 
182
188
  .hook-inverse-navbar-toggle() {}
@@ -25,6 +25,8 @@ $dropdown-padding: 15px !default;
25
25
  $dropdown-background: $global-muted-background !default;
26
26
  $dropdown-color: $global-color !default;
27
27
 
28
+ $dropdown-large-padding: 40px !default;
29
+
28
30
  $dropdown-nav-item-color: $global-muted-color !default;
29
31
  $dropdown-nav-item-hover-color: $global-color !default;
30
32
  $dropdown-nav-subtitle-font-size: $global-small-font-size !default;
@@ -69,6 +71,12 @@ $dropdown-nav-sublist-item-hover-color: $global-color !default;
69
71
  .uk-dropdown.uk-open { display: block; }
70
72
 
71
73
 
74
+ /* Size modifier
75
+ ========================================================================== */
76
+
77
+ .uk-dropdown-large { padding: $dropdown-large-padding; }
78
+
79
+
72
80
  /* Stretch modifier
73
81
  ========================================================================== */
74
82
 
@@ -80,8 +80,8 @@ $nav-dividers-margin-top: 0 !default;
80
80
  $nav-dividers-border-width: $global-border-width !default;
81
81
  $nav-dividers-border: $global-border !default;
82
82
 
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%2210%201%204%207%2010%2013%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%221%204%207%2010%2013%204%22%20%2F%3E%0A%3C%2Fsvg%3E" !default;
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
85
 
86
86
 
87
87
  /* ========================================================================
@@ -51,7 +51,12 @@ $navbar-nav-item-hover-color: $global-color !default;
51
51
  $navbar-nav-item-onclick-color: $global-emphasis-color !default;
52
52
  $navbar-nav-item-active-color: $global-emphasis-color !default;
53
53
 
54
- $navbar-item-padding-horizontal: $navbar-nav-item-padding-horizontal !default;
54
+ $navbar-parent-icon-width: 12px !default;
55
+ $navbar-parent-icon-height: 12px !default;
56
+ $navbar-parent-icon-margin-left: 4px !default;
57
+ $navbar-parent-icon-color: $navbar-nav-item-color !default;
58
+
59
+ $navbar-item-padding-horizontal: 15px !default;
55
60
  $navbar-item-color: $global-color !default;
56
61
 
57
62
  $navbar-toggle-color: $global-muted-color !default;
@@ -71,8 +76,18 @@ $navbar-dropdown-color-mode: none !default;
71
76
  $navbar-dropdown-grid-gutter-horizontal: $global-gutter !default;
72
77
  $navbar-dropdown-grid-gutter-vertical: $navbar-dropdown-grid-gutter-horizontal !default;
73
78
 
74
- $navbar-dropdown-dropbar-margin-top: 0px !default;
75
- $navbar-dropdown-dropbar-margin-bottom: $navbar-dropdown-dropbar-margin-top !default;
79
+ $navbar-dropdown-large-shift-margin: 0 !default;
80
+ $navbar-dropdown-large-padding: 40px !default;
81
+
82
+ $navbar-dropdown-stretch-padding-top: 15px !default;
83
+ $navbar-dropdown-stretch-padding-bottom: $navbar-dropdown-stretch-padding-top !default;
84
+ $navbar-dropdown-stretch-padding-horizontal: 15px !default;
85
+ $navbar-dropdown-stretch-padding-horizontal-s: $global-gutter !default;
86
+ $navbar-dropdown-stretch-padding-horizontal-m: $global-medium-gutter !default;
87
+ $navbar-dropdown-stretch-background: $navbar-dropdown-background !default;
88
+
89
+ $navbar-dropdown-dropbar-padding-top: $navbar-dropdown-padding !default;
90
+ $navbar-dropdown-dropbar-padding-bottom: $navbar-dropdown-dropbar-padding-top !default;
76
91
  $navbar-dropdown-dropbar-padding-horizontal: $navbar-nav-item-padding-horizontal !default;
77
92
 
78
93
  $navbar-dropdown-nav-item-color: $global-muted-color !default;
@@ -89,6 +104,9 @@ $navbar-dropdown-nav-sublist-item-active-color: $global-emphasis-color !default
89
104
  $navbar-dropbar-background: $navbar-dropdown-background !default;
90
105
  $navbar-dropbar-z-index: $global-z-index - 20 !default;
91
106
 
107
+ $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;
108
+ $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;
109
+
92
110
 
93
111
  /* ========================================================================
94
112
  Component: Navbar
@@ -227,7 +245,6 @@ $navbar-dropbar-z-index: $global-z-index - 20 !default;
227
245
  /* 3 */
228
246
  box-sizing: border-box;
229
247
  min-height: $navbar-nav-item-height;
230
- padding: 0 $navbar-nav-item-padding-horizontal;
231
248
  /* 4 */
232
249
  font-size: $navbar-nav-item-font-size;
233
250
  font-family: $navbar-nav-item-font-family;
@@ -240,6 +257,7 @@ $navbar-dropbar-z-index: $global-z-index - 20 !default;
240
257
  */
241
258
 
242
259
  .uk-navbar-nav > li > a {
260
+ padding: 0 $navbar-nav-item-padding-horizontal;
243
261
  color: $navbar-nav-item-color;
244
262
  @if(mixin-exists(hook-navbar-nav-item)) {@include hook-navbar-nav-item();}
245
263
  }
@@ -268,6 +286,24 @@ $navbar-dropbar-z-index: $global-z-index - 20 !default;
268
286
  }
269
287
 
270
288
 
289
+ /* Parent icon modifier
290
+ ========================================================================== */
291
+
292
+ .uk-navbar-parent-icon .uk-navbar-nav > .uk-parent > a::after {
293
+ content: "";
294
+ width: $navbar-parent-icon-width;
295
+ height: $navbar-parent-icon-height;
296
+ margin-left: $navbar-parent-icon-margin-left;
297
+ @include svg-fill($internal-navbar-parent-close-image, "#000", $navbar-parent-icon-color);
298
+ background-repeat: no-repeat;
299
+ background-position: 50% 50%;
300
+ @if(mixin-exists(hook-nav-parent-icon)) {@include hook-nav-parent-icon();}
301
+ }
302
+
303
+ .uk-navbar-parent-icon .uk-navbar-nav > .uk-parent:hover > a::after,
304
+ .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); }
305
+
306
+
271
307
  /* Item
272
308
  ========================================================================== */
273
309
 
@@ -288,6 +324,7 @@ $navbar-dropbar-z-index: $global-z-index - 20 !default;
288
324
  ========================================================================== */
289
325
 
290
326
  .uk-navbar-toggle {
327
+ padding: 0 $navbar-item-padding-horizontal;
291
328
  color: $navbar-toggle-color;
292
329
  @if(mixin-exists(hook-navbar-toggle)) {@include hook-navbar-toggle();}
293
330
  }
@@ -384,7 +421,7 @@ $navbar-dropbar-z-index: $global-z-index - 20 !default;
384
421
  /* Show */
385
422
  .uk-navbar-dropdown.uk-open { display: block; }
386
423
 
387
-
424
+ // Color Mode
388
425
  @if ( $navbar-dropdown-color-mode == light ) { .uk-navbar-dropdown { @extend .uk-light !optional;} }
389
426
  @if ( $navbar-dropdown-color-mode == dark ) { .uk-navbar-dropdown { @extend .uk-dark !optional;} }
390
427
 
@@ -412,39 +449,68 @@ $navbar-dropbar-z-index: $global-z-index - 20 !default;
412
449
  .uk-navbar-dropdown-width-4:not(.uk-navbar-dropdown-stack) { width: ($navbar-dropdown-width * 4); }
413
450
  .uk-navbar-dropdown-width-5:not(.uk-navbar-dropdown-stack) { width: ($navbar-dropdown-width * 5); }
414
451
 
452
+ /*
453
+ * Size modifier
454
+ */
455
+
456
+ .uk-navbar-dropdown-large {
457
+ --uk-position-shift-offset: #{$navbar-dropdown-large-shift-margin};
458
+ padding: $navbar-dropdown-large-padding;
459
+ }
460
+
415
461
  /*
416
462
  * Stretch modifier
417
463
  * 1. Allow scrolling
464
+ * 2. Style
418
465
  */
419
466
 
420
- .uk-navbar-dropdown-stretch {
467
+ .uk-navbar-dropdown-stretch {
421
468
  --uk-position-offset: 0;
422
469
  --uk-position-shift-offset: 0;
423
470
  --uk-position-viewport-offset: 0;
424
471
  /* 1 */
425
472
  overflow-y: auto;
426
473
  -webkit-overflow-scrolling: touch;
474
+ /* 2 */
475
+ padding: $navbar-dropdown-stretch-padding-top $navbar-dropdown-stretch-padding-horizontal $navbar-dropdown-stretch-padding-bottom $navbar-dropdown-stretch-padding-horizontal;
476
+ background: $navbar-dropdown-stretch-background;
427
477
  @if(mixin-exists(hook-navbar-dropdown-stretch)) {@include hook-navbar-dropdown-stretch();}
428
478
  }
429
479
 
480
+ /* Phone landscape and bigger */
481
+ @media (min-width: $breakpoint-small) {
482
+
483
+ .uk-navbar-dropdown-stretch {
484
+ padding-left: $navbar-dropdown-stretch-padding-horizontal-s;
485
+ padding-right: $navbar-dropdown-stretch-padding-horizontal-s;
486
+ }
487
+
488
+ }
489
+
490
+ /* Tablet landscape and bigger */
491
+ @media (min-width: $breakpoint-medium) {
492
+
493
+ .uk-navbar-dropdown-stretch {
494
+ padding-left: $navbar-dropdown-stretch-padding-horizontal-m;
495
+ padding-right: $navbar-dropdown-stretch-padding-horizontal-m;
496
+ }
497
+
498
+ }
499
+
430
500
  /*
431
501
  * Dropbar modifier
432
502
  * 1. Reset dropdown width to prevent to early shifting
433
- * 2. Set position
434
- * 3. Bottom padding for dropbar
435
- * 4. Horizontal padding
503
+ * 2. Reset style
504
+ * 3. Padding
436
505
  */
437
506
 
438
507
  .uk-navbar-dropdown-dropbar {
439
508
  /* 1 */
440
509
  width: auto;
441
510
  /* 2 */
442
- --uk-position-offset: #{$navbar-dropdown-dropbar-margin-top};
511
+ background: transparent;
443
512
  /* 3 */
444
- margin-bottom: $navbar-dropdown-dropbar-margin-bottom;
445
- /* 4 */
446
- padding-left: $navbar-dropdown-dropbar-padding-horizontal;
447
- padding-right: $navbar-dropdown-dropbar-padding-horizontal;
513
+ padding: $navbar-dropdown-dropbar-padding-top $navbar-dropdown-dropbar-padding-horizontal $navbar-dropdown-dropbar-padding-bottom $navbar-dropdown-dropbar-padding-horizontal;
448
514
  --uk-position-shift-offset: 0;
449
515
  @if(mixin-exists(hook-navbar-dropdown-dropbar)) {@include hook-navbar-dropdown-dropbar();}
450
516
  }
@@ -571,6 +637,7 @@ $inverse-navbar-nav-item-color: $inverse-global-muted-color !def
571
637
  $inverse-navbar-nav-item-hover-color: $inverse-global-color !default;
572
638
  $inverse-navbar-nav-item-onclick-color: $inverse-global-emphasis-color !default;
573
639
  $inverse-navbar-nav-item-active-color: $inverse-global-emphasis-color !default;
640
+ $inverse-navbar-parent-icon-color: $inverse-navbar-nav-item-color !default;
574
641
  $inverse-navbar-item-color: $inverse-global-color !default;
575
642
  $inverse-navbar-toggle-color: $inverse-global-muted-color !default;
576
643
  $inverse-navbar-toggle-hover-color: $inverse-global-color !default;
@@ -581,6 +648,7 @@ $inverse-navbar-toggle-hover-color: $inverse-global-color !default;
581
648
  // @mixin hook-inverse-navbar-nav-item-hover(){}
582
649
  // @mixin hook-inverse-navbar-nav-item-onclick(){}
583
650
  // @mixin hook-inverse-navbar-nav-item-active(){}
651
+ // @mixin hook-inverse-nav-parent-icon(){}
584
652
  // @mixin hook-inverse-navbar-item(){}
585
653
  // @mixin hook-inverse-navbar-toggle(){}
586
654
  // @mixin hook-inverse-navbar-toggle-hover(){}
@@ -1362,6 +1362,10 @@
1362
1362
  }
1363
1363
  @mixin hook-inverse-component-navbar(){
1364
1364
 
1365
+ //
1366
+ // Nav Item
1367
+ //
1368
+
1365
1369
  .uk-navbar-nav > li > a {
1366
1370
  color: $inverse-navbar-nav-item-color;
1367
1371
  @if(mixin-exists(hook-inverse-navbar-nav-item)) {@include hook-inverse-navbar-nav-item();}
@@ -1383,11 +1387,31 @@
1383
1387
  @if(mixin-exists(hook-inverse-navbar-nav-item-active)) {@include hook-inverse-navbar-nav-item-active();}
1384
1388
  }
1385
1389
 
1390
+ //
1391
+ // Parent icon modifier
1392
+ //
1393
+
1394
+ .uk-navbar-parent-icon .uk-navbar-nav > .uk-parent > a::after {
1395
+ @include svg-fill($internal-navbar-parent-close-image, "#000", $inverse-navbar-parent-icon-color);
1396
+ @if(mixin-exists(hook-inverse-nav-parent-icon)) {@include hook-inverse-nav-parent-icon();}
1397
+ }
1398
+
1399
+ .uk-navbar-parent-icon .uk-navbar-nav > .uk-parent:hover > a::after,
1400
+ .uk-navbar-parent-icon .uk-navbar-nav > .uk-parent > a[aria-expanded="true"]::after { @include svg-fill($internal-navbar-parent-open-image, "#000", $inverse-navbar-parent-icon-color); }
1401
+
1402
+ //
1403
+ // Item
1404
+ //
1405
+
1386
1406
  .uk-navbar-item {
1387
1407
  color: $inverse-navbar-item-color;
1388
1408
  @if(mixin-exists(hook-inverse-navbar-item)) {@include hook-inverse-navbar-item();}
1389
1409
  }
1390
1410
 
1411
+ //
1412
+ // Toggle
1413
+ //
1414
+
1391
1415
  .uk-navbar-toggle {
1392
1416
  color: $inverse-navbar-toggle-color;
1393
1417
  @if(mixin-exists(hook-inverse-navbar-toggle)) {@include hook-inverse-navbar-toggle();}
@@ -1754,10 +1778,7 @@
1754
1778
  @mixin hook-navbar-transparent(){}
1755
1779
  @mixin hook-navbar-sticky(){}
1756
1780
  @mixin hook-navbar-dropdown(){ box-shadow: $navbar-dropdown-box-shadow; }
1757
- @mixin hook-navbar-dropdown-stretch(){
1758
- box-shadow: none;
1759
- background: $navbar-dropdown-stretch-background;
1760
- }
1781
+ @mixin hook-navbar-dropdown-stretch(){ box-shadow: none; }
1761
1782
  @mixin hook-navbar-dropdown-dropbar(){ box-shadow: none; }
1762
1783
  @mixin hook-navbar-dropdown-nav(){ font-size: $navbar-dropdown-nav-font-size; }
1763
1784
  @mixin hook-navbar-dropdown-nav-item(){}
@@ -1113,6 +1113,10 @@
1113
1113
  }
1114
1114
  @mixin hook-inverse-component-navbar(){
1115
1115
 
1116
+ //
1117
+ // Nav Item
1118
+ //
1119
+
1116
1120
  .uk-navbar-nav > li > a {
1117
1121
  color: $inverse-navbar-nav-item-color;
1118
1122
  @if(mixin-exists(hook-inverse-navbar-nav-item)) {@include hook-inverse-navbar-nav-item();}
@@ -1134,11 +1138,31 @@
1134
1138
  @if(mixin-exists(hook-inverse-navbar-nav-item-active)) {@include hook-inverse-navbar-nav-item-active();}
1135
1139
  }
1136
1140
 
1141
+ //
1142
+ // Parent icon modifier
1143
+ //
1144
+
1145
+ .uk-navbar-parent-icon .uk-navbar-nav > .uk-parent > a::after {
1146
+ @include svg-fill($internal-navbar-parent-close-image, "#000", $inverse-navbar-parent-icon-color);
1147
+ @if(mixin-exists(hook-inverse-nav-parent-icon)) {@include hook-inverse-nav-parent-icon();}
1148
+ }
1149
+
1150
+ .uk-navbar-parent-icon .uk-navbar-nav > .uk-parent:hover > a::after,
1151
+ .uk-navbar-parent-icon .uk-navbar-nav > .uk-parent > a[aria-expanded="true"]::after { @include svg-fill($internal-navbar-parent-open-image, "#000", $inverse-navbar-parent-icon-color); }
1152
+
1153
+ //
1154
+ // Item
1155
+ //
1156
+
1137
1157
  .uk-navbar-item {
1138
1158
  color: $inverse-navbar-item-color;
1139
1159
  @if(mixin-exists(hook-inverse-navbar-item)) {@include hook-inverse-navbar-item();}
1140
1160
  }
1141
1161
 
1162
+ //
1163
+ // Toggle
1164
+ //
1165
+
1142
1166
  .uk-navbar-toggle {
1143
1167
  color: $inverse-navbar-toggle-color;
1144
1168
  @if(mixin-exists(hook-inverse-navbar-toggle)) {@include hook-inverse-navbar-toggle();}
@@ -10,10 +10,13 @@
10
10
  $navbar-gap: 30px !default;
11
11
 
12
12
  $navbar-nav-gap: 30px !default;
13
+
13
14
  $navbar-nav-item-padding-horizontal: 0 !default;
14
15
 
15
16
  $navbar-nav-item-font-size: $global-small-font-size !default;
16
17
 
18
+ $navbar-item-padding-horizontal: 0 !default;
19
+
17
20
  $navbar-dropdown-margin: 15px !default;
18
21
  $navbar-dropdown-padding: 25px !default;
19
22
  $navbar-dropdown-background: $global-background !default;
@@ -31,8 +34,6 @@ $navbar-dropdown-nav-font-size: $global-small-font-size !defaul
31
34
 
32
35
  $navbar-dropdown-box-shadow: 0 5px 12px rgba(0,0,0,0.15) !default;
33
36
 
34
- $navbar-dropdown-stretch-background: $global-muted-background !default;
35
-
36
37
  $navbar-dropbar-box-shadow: 0 5px 7px rgba(0, 0, 0, 0.05) !default;
37
38
 
38
39
  $navbar-dropdown-grid-divider-border-width: $global-border-width !default;
@@ -63,6 +64,12 @@ $navbar-dropdown-grid-divider-border: $navbar-dropdown-nav-divider-bo
63
64
  // @mixin hook-navbar-nav-item-active(){}
64
65
 
65
66
 
67
+ // Parent icon modifier
68
+ // ========================================================================
69
+
70
+ // @mixin hook-nav-parent-icon(){}
71
+
72
+
66
73
  // Item
67
74
  // ========================================================================
68
75
 
@@ -143,6 +150,8 @@ $navbar-dropdown-grid-divider-border: $navbar-dropdown-nav-divider-bo
143
150
  // @mixin hook-inverse-navbar-nav-item-onclick(){}
144
151
  // @mixin hook-inverse-navbar-nav-item-active(){}
145
152
 
153
+ // @mixin hook-inverse-nav-parent-icon(){}
154
+
146
155
  // @mixin hook-inverse-navbar-item(){}
147
156
 
148
157
  // @mixin hook-inverse-navbar-toggle(){}