uikit 3.14.3 → 3.14.4-dev.07daf8fb8

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 (145) hide show
  1. package/CHANGELOG.md +54 -3
  2. package/build/util.js +1 -0
  3. package/dist/css/uikit-core-rtl.css +428 -95
  4. package/dist/css/uikit-core-rtl.min.css +1 -1
  5. package/dist/css/uikit-core.css +428 -95
  6. package/dist/css/uikit-core.min.css +1 -1
  7. package/dist/css/uikit-rtl.css +444 -108
  8. package/dist/css/uikit-rtl.min.css +1 -1
  9. package/dist/css/uikit.css +444 -108
  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 +203 -76
  16. package/dist/js/components/lightbox-panel.min.js +1 -1
  17. package/dist/js/components/lightbox.js +203 -76
  18. package/dist/js/components/lightbox.min.js +1 -1
  19. package/dist/js/components/notification.js +1 -1
  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 +22 -7
  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 +22 -7
  30. package/dist/js/components/slideshow.min.js +1 -1
  31. package/dist/js/components/sortable.js +3 -3
  32. package/dist/js/components/sortable.min.js +1 -1
  33. package/dist/js/components/tooltip.js +138 -76
  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 +1801 -1573
  38. package/dist/js/uikit-core.min.js +14 -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 +1081 -836
  42. package/dist/js/uikit.min.js +14 -1
  43. package/package.json +1 -1
  44. package/src/images/{backgrounds/nav-parent-open.svg → components/nav-parent-icon-large.svg} +0 -0
  45. package/src/images/components/nav-parent-icon.svg +3 -0
  46. package/src/images/components/navbar-parent-icon.svg +3 -0
  47. package/src/images/components/navbar-toggle-icon.svg +22 -3
  48. package/src/js/api/state.js +2 -2
  49. package/src/js/components/filter.js +5 -3
  50. package/src/js/components/sortable.js +2 -3
  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 +102 -48
  54. package/src/js/core/height-viewport.js +22 -9
  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 +47 -33
  59. package/src/js/core/offcanvas.js +1 -47
  60. package/src/js/core/scroll.js +37 -10
  61. package/src/js/core/sticky.js +8 -9
  62. package/src/js/core/switcher.js +1 -1
  63. package/src/js/mixin/media.js +4 -5
  64. package/src/js/mixin/modal.js +97 -8
  65. package/src/js/mixin/position.js +59 -14
  66. package/src/js/mixin/slider-drag.js +20 -8
  67. package/src/js/mixin/style.js +11 -0
  68. package/src/js/mixin/togglable.js +100 -72
  69. package/src/js/util/animation.js +5 -3
  70. package/src/js/util/dimensions.js +6 -6
  71. package/src/js/util/filter.js +3 -7
  72. package/src/js/util/position.js +43 -47
  73. package/src/js/util/style.js +4 -13
  74. package/src/js/util/viewport.js +21 -37
  75. package/src/less/components/_import.less +1 -0
  76. package/src/less/components/drop.less +3 -6
  77. package/src/less/components/dropbar.less +115 -0
  78. package/src/less/components/dropdown.less +22 -6
  79. package/src/less/components/leader.less +1 -1
  80. package/src/less/components/margin.less +13 -14
  81. package/src/less/components/modal.less +19 -4
  82. package/src/less/components/nav.less +241 -64
  83. package/src/less/components/navbar.less +111 -35
  84. package/src/less/components/offcanvas.less +21 -21
  85. package/src/less/components/position.less +1 -1
  86. package/src/less/components/utility.less +21 -5
  87. package/src/less/theme/_import.less +1 -0
  88. package/src/less/theme/dropbar.less +44 -0
  89. package/src/less/theme/nav.less +43 -9
  90. package/src/less/theme/navbar.less +9 -15
  91. package/src/scss/components/_import.scss +1 -0
  92. package/src/scss/components/drop.scss +3 -6
  93. package/src/scss/components/dropbar.scss +115 -0
  94. package/src/scss/components/dropdown.scss +22 -6
  95. package/src/scss/components/leader.scss +1 -1
  96. package/src/scss/components/margin.scss +13 -14
  97. package/src/scss/components/modal.scss +19 -4
  98. package/src/scss/components/nav.scss +190 -52
  99. package/src/scss/components/navbar.scss +88 -24
  100. package/src/scss/components/offcanvas.scss +21 -21
  101. package/src/scss/components/position.scss +1 -1
  102. package/src/scss/components/utility.scss +19 -4
  103. package/src/scss/mixins-theme.scss +93 -29
  104. package/src/scss/mixins.scss +89 -15
  105. package/src/scss/theme/_import.scss +1 -0
  106. package/src/scss/theme/dropbar.scss +44 -0
  107. package/src/scss/theme/nav.scss +41 -9
  108. package/src/scss/theme/navbar.scss +9 -3
  109. package/src/scss/variables-theme.scss +93 -25
  110. package/src/scss/variables.scss +82 -23
  111. package/tests/accordion.html +2 -2
  112. package/tests/alert.html +2 -2
  113. package/tests/countdown.html +1 -1
  114. package/tests/drop.html +484 -255
  115. package/tests/dropbar.html +456 -0
  116. package/tests/dropdown.html +29 -189
  117. package/tests/filter.html +9 -12
  118. package/tests/form.html +1 -1
  119. package/tests/height-viewport.html +62 -0
  120. package/tests/index.html +126 -107
  121. package/tests/js/index.js +1 -4
  122. package/tests/lightbox.html +5 -5
  123. package/tests/list.html +8 -8
  124. package/tests/modal.html +13 -13
  125. package/tests/nav.html +117 -75
  126. package/tests/navbar.html +2270 -1104
  127. package/tests/offcanvas.html +25 -29
  128. package/tests/parallax.html +1 -1
  129. package/tests/position.html +13 -24
  130. package/tests/progress.html +9 -9
  131. package/tests/scroll.html +7 -10
  132. package/tests/search.html +5 -5
  133. package/tests/slider.html +6 -5
  134. package/tests/slideshow.html +8 -8
  135. package/tests/sortable.html +6 -8
  136. package/tests/sticky-navbar.html +132 -0
  137. package/tests/sticky.html +8 -8
  138. package/tests/switcher.html +1 -1
  139. package/tests/tab.html +1 -1
  140. package/tests/table.html +7 -7
  141. package/tests/toggle.html +2 -2
  142. package/tests/tooltip.html +1 -1
  143. package/tests/upload.html +11 -11
  144. package/tests/utility.html +19 -0
  145. package/src/images/backgrounds/nav-parent-close.svg +0 -3
@@ -7,8 +7,16 @@
7
7
  // Variables
8
8
  // ========================================================================
9
9
 
10
+ @navbar-gap: 30px;
11
+
12
+ @navbar-nav-gap: 30px;
13
+
14
+ @navbar-nav-item-padding-horizontal: 0;
15
+
10
16
  @navbar-nav-item-font-size: @global-small-font-size;
11
17
 
18
+ @navbar-item-padding-horizontal: 0;
19
+
12
20
  @navbar-dropdown-margin: 15px;
13
21
  @navbar-dropdown-padding: 25px;
14
22
  @navbar-dropdown-background: @global-background;
@@ -26,8 +34,6 @@
26
34
 
27
35
  @navbar-dropdown-box-shadow: 0 5px 12px rgba(0,0,0,0.15);
28
36
 
29
- @navbar-dropbar-box-shadow: 0 5px 7px rgba(0, 0, 0, 0.05);
30
-
31
37
  @navbar-dropdown-grid-divider-border-width: @global-border-width;
32
38
  @navbar-dropdown-grid-divider-border: @navbar-dropdown-nav-divider-border;
33
39
 
@@ -121,7 +127,7 @@
121
127
  // Dropbar
122
128
  // ========================================================================
123
129
 
124
- .hook-navbar-dropbar() { box-shadow: @navbar-dropbar-box-shadow; }
130
+ .hook-navbar-dropbar() {}
125
131
 
126
132
 
127
133
  // Miscellaneous
@@ -129,18 +135,6 @@
129
135
 
130
136
  .hook-navbar-misc() {
131
137
 
132
- /*
133
- * Navbar
134
- */
135
-
136
- .uk-container > :not(.uk-navbar-justified) > .uk-navbar-left .uk-navbar-nav:first-child,
137
- .uk-container > :not(.uk-navbar-justified) > .uk-navbar-left .uk-navbar-item:first-child,
138
- .uk-container > :not(.uk-navbar-justified) > .uk-navbar-left .uk-navbar-toggle:first-child { margin-left: -@navbar-nav-item-padding-horizontal; }
139
-
140
- .uk-container > :not(.uk-navbar-justified) > .uk-navbar-right .uk-navbar-nav:last-child,
141
- .uk-container > :not(.uk-navbar-justified) > .uk-navbar-right .uk-navbar-item:last-child,
142
- .uk-container > :not(.uk-navbar-justified) > .uk-navbar-right .uk-navbar-toggle:last-child { margin-right: -@navbar-nav-item-padding-horizontal; }
143
-
144
138
  /*
145
139
  * Grid Divider
146
140
  */
@@ -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,11 +3,7 @@
3
3
  //
4
4
  // Component: `uk-drop`
5
5
  //
6
- // Modifiers: `uk-drop-top-*`
7
- // `uk-drop-bottom-*`
8
- // `uk-drop-left-*`
9
- // `uk-drop-right-*`
10
- // `uk-drop-stack`
6
+ // Modifiers: `uk-drop-stack`
11
7
  // `uk-drop-grid`
12
8
  //
13
9
  // States: `uk-open`
@@ -22,6 +18,7 @@
22
18
 
23
19
  $drop-z-index: $global-z-index + 20 !default;
24
20
  $drop-margin: $global-margin !default;
21
+ $drop-viewport-margin: 15px !default;
25
22
  $drop-width: 300px !default;
26
23
 
27
24
 
@@ -42,7 +39,7 @@ $drop-width: 300px !default;
42
39
  position: absolute;
43
40
  z-index: $drop-z-index;
44
41
  --uk-position-offset: #{$drop-margin};
45
- --uk-position-viewport-offset: 10;
42
+ --uk-position-viewport-offset: #{$drop-viewport-margin};
46
43
  /* 3 */
47
44
  box-sizing: border-box;
48
45
  width: $drop-width;
@@ -0,0 +1,115 @@
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
+
24
+ /* ========================================================================
25
+ Component: Dropbar
26
+ ========================================================================== */
27
+
28
+ /*
29
+ * 1. Hide by default
30
+ * 2. Set position
31
+ * 3. Style
32
+ */
33
+
34
+ .uk-dropbar {
35
+ --uk-position-offset: #{$dropbar-margin};
36
+ --uk-position-shift-offset: 0;
37
+ --uk-position-viewport-offset: 0;
38
+ /* 1 */
39
+ display: none;
40
+ /* 2 */
41
+ position: absolute;
42
+ z-index: $dropbar-z-index;
43
+ /* 3 */
44
+ box-sizing: border-box;
45
+ padding: $dropbar-padding-top $dropbar-padding-horizontal $dropbar-padding-bottom $dropbar-padding-horizontal;
46
+ background: $dropbar-background;
47
+ color: $dropbar-color;
48
+ @if(mixin-exists(hook-dropbar)) {@include hook-dropbar();}
49
+ }
50
+
51
+ /* Show */
52
+ .uk-dropbar.uk-open { display: block; }
53
+
54
+ /*
55
+ * Remove margin from the last-child
56
+ */
57
+
58
+ .uk-dropbar > :last-child { margin-bottom: 0; }
59
+
60
+ /* Phone landscape and bigger */
61
+ @media (min-width: $breakpoint-small) {
62
+
63
+ .uk-dropbar {
64
+ padding-left: $dropbar-padding-horizontal-s;
65
+ padding-right: $dropbar-padding-horizontal-s;
66
+ }
67
+
68
+ }
69
+
70
+ /* Tablet landscape and bigger */
71
+ @media (min-width: $breakpoint-medium) {
72
+
73
+ .uk-dropbar {
74
+ padding-left: $dropbar-padding-horizontal-m;
75
+ padding-right: $dropbar-padding-horizontal-m;
76
+ }
77
+
78
+ }
79
+
80
+ // Color Mode
81
+ @if ( $dropbar-color-mode == light ) { .uk-dropbar { @extend .uk-light !optional;} }
82
+ @if ( $dropbar-color-mode == dark ) { .uk-dropbar { @extend .uk-dark !optional;} }
83
+
84
+
85
+ /* Direction modifier
86
+ ========================================================================== */
87
+
88
+ .uk-dropbar-top {
89
+ @if(mixin-exists(hook-dropbar-top)) {@include hook-dropbar-top();}
90
+ }
91
+
92
+ .uk-dropbar-bottom {
93
+ @if(mixin-exists(hook-dropbar-bottom)) {@include hook-dropbar-bottom();}
94
+ }
95
+
96
+ .uk-dropbar-left {
97
+ @if(mixin-exists(hook-dropbar-left)) {@include hook-dropbar-left();}
98
+ }
99
+
100
+ .uk-dropbar-right {
101
+ @if(mixin-exists(hook-dropbar-right)) {@include hook-dropbar-right();}
102
+ }
103
+
104
+
105
+ // Hooks
106
+ // ========================================================================
107
+
108
+ @if(mixin-exists(hook-dropbar-misc)) {@include hook-dropbar-misc();}
109
+
110
+ // @mixin hook-dropbar(){}
111
+ // @mixin hook-dropbar-top(){}
112
+ // @mixin hook-dropbar-bottom(){}
113
+ // @mixin hook-dropbar-left(){}
114
+ // @mixin hook-dropbar-right(){}
115
+ // @mixin hook-dropbar-misc(){}
@@ -5,10 +5,7 @@
5
5
  //
6
6
  // Adopted: `uk-dropdown-nav`
7
7
  //
8
- // Modifiers: `uk-dropdown-top-*`
9
- // `uk-dropdown-bottom-*`
10
- // `uk-dropdown-left-*`
11
- // `uk-dropdown-right-*`
8
+ // Modifiers: `uk-dropdown-large`
12
9
  // `uk-dropdown-stack`
13
10
  // `uk-dropdown-grid`
14
11
  //
@@ -22,10 +19,14 @@
22
19
 
23
20
  $dropdown-z-index: $global-z-index + 20 !default;
24
21
  $dropdown-margin: $global-small-margin !default;
22
+ $dropdown-viewport-margin: 15px !default;
25
23
  $dropdown-min-width: 200px !default;
26
24
  $dropdown-padding: 15px !default;
27
25
  $dropdown-background: $global-muted-background !default;
28
26
  $dropdown-color: $global-color !default;
27
+ $dropdown-color-mode: none !default;
28
+
29
+ $dropdown-large-padding: 40px !default;
29
30
 
30
31
  $dropdown-nav-item-color: $global-muted-color !default;
31
32
  $dropdown-nav-item-hover-color: $global-color !default;
@@ -55,11 +56,10 @@ $dropdown-nav-sublist-item-hover-color: $global-color !default;
55
56
  position: absolute;
56
57
  z-index: $dropdown-z-index;
57
58
  --uk-position-offset: #{$dropdown-margin};
58
- --uk-position-viewport-offset: 10;
59
+ --uk-position-viewport-offset: #{$dropdown-viewport-margin};
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,6 +70,22 @@ $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
+ */
76
+
77
+ .uk-dropdown > :last-child { margin-bottom: 0; }
78
+
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;} }
82
+
83
+
84
+ /* Size modifier
85
+ ========================================================================== */
86
+
87
+ .uk-dropdown-large { padding: $dropdown-large-padding; }
88
+
73
89
 
74
90
  /* Nav
75
91
  * Adopts `uk-nav`
@@ -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
@@ -193,20 +193,20 @@ $margin-xlarge-margin-l: $global-xlarge-margin !d
193
193
  /* Remove
194
194
  ========================================================================== */
195
195
 
196
- .uk-margin-remove { margin: 0 !important; }
197
- .uk-margin-remove-top { margin-top: 0 !important; }
198
- .uk-margin-remove-bottom { margin-bottom: 0 !important; }
199
- .uk-margin-remove-left { margin-left: 0 !important; }
200
- .uk-margin-remove-right { margin-right: 0 !important; }
201
-
202
- .uk-margin-remove-vertical {
203
- margin-top: 0 !important;
204
- margin-bottom: 0 !important;
205
- }
196
+ .uk-margin-remove { margin: 0 !important; }
197
+ .uk-margin-remove-top { margin-top: 0 !important; }
198
+ .uk-margin-remove-bottom { margin-bottom: 0 !important; }
199
+ .uk-margin-remove-left { margin-left: 0 !important; }
200
+ .uk-margin-remove-right { margin-right: 0 !important; }
201
+
202
+ .uk-margin-remove-vertical {
203
+ margin-top: 0 !important;
204
+ margin-bottom: 0 !important;
205
+ }
206
206
 
207
- .uk-margin-remove-adjacent + *,
208
- .uk-margin-remove-first-child > :first-child { margin-top: 0 !important; }
209
- .uk-margin-remove-last-child > :last-child { margin-bottom: 0 !important; }
207
+ .uk-margin-remove-adjacent + *,
208
+ .uk-margin-remove-first-child > :first-child { margin-top: 0 !important; }
209
+ .uk-margin-remove-last-child > :last-child { margin-bottom: 0 !important; }
210
210
 
211
211
  /* Phone landscape and bigger */
212
212
  @media (min-width: $breakpoint-small) {
@@ -241,7 +241,6 @@ $margin-xlarge-margin-l: $global-xlarge-margin !d
241
241
  }
242
242
 
243
243
 
244
-
245
244
  // Hooks
246
245
  // ========================================================================
247
246
 
@@ -40,15 +40,21 @@ $modal-dialog-background: $global-background !default;
40
40
 
41
41
  $modal-container-width: 1200px !default;
42
42
 
43
- $modal-body-padding-horizontal: $global-gutter !default;
44
- $modal-body-padding-vertical: $global-gutter !default;
43
+ $modal-body-padding-horizontal: 20px !default;
44
+ $modal-body-padding-vertical: 20px !default;
45
+ $modal-body-padding-horizontal-s: $global-gutter !default;
46
+ $modal-body-padding-vertical-s: $global-gutter !default;
45
47
 
46
- $modal-header-padding-horizontal: $global-gutter !default;
48
+ $modal-header-padding-horizontal: 20px !default;
47
49
  $modal-header-padding-vertical: ($modal-header-padding-horizontal * 0.5) !default;
50
+ $modal-header-padding-horizontal-s: $global-gutter !default;
51
+ $modal-header-padding-vertical-s: ($modal-header-padding-horizontal-s * 0.5) !default;
48
52
  $modal-header-background: $global-muted-background !default;
49
53
 
50
- $modal-footer-padding-horizontal: $global-gutter !default;
54
+ $modal-footer-padding-horizontal: 20px !default;
51
55
  $modal-footer-padding-vertical: ($modal-footer-padding-horizontal * 0.5) !default;
56
+ $modal-footer-padding-horizontal-s: $global-gutter !default;
57
+ $modal-footer-padding-vertical-s: ($modal-footer-padding-horizontal-s * 0.5) !default;
52
58
  $modal-footer-background: $global-muted-background !default;
53
59
 
54
60
  $modal-title-font-size: $global-xlarge-font-size !default;
@@ -228,6 +234,15 @@ $modal-close-outside-hover-color: $global-inverse-color !default;
228
234
  @if(mixin-exists(hook-modal-footer)) {@include hook-modal-footer();}
229
235
  }
230
236
 
237
+ /* Phone landscape and bigger */
238
+ @media (min-width: $breakpoint-small) {
239
+
240
+ .uk-modal-body { padding: $modal-body-padding-vertical-s $modal-body-padding-horizontal-s; }
241
+ .uk-modal-header { padding: $modal-header-padding-vertical-s $modal-header-padding-horizontal-s; }
242
+ .uk-modal-footer { padding: $modal-footer-padding-vertical-s $modal-footer-padding-horizontal-s; }
243
+
244
+ }
245
+
231
246
  /*
232
247
  * Remove margin from the last-child
233
248
  */