uikit 3.11.2-dev.fb043abc2 → 3.12.2

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 (228) hide show
  1. package/.eslintrc.json +4 -49
  2. package/.prettierignore +14 -0
  3. package/.prettierrc.json +13 -0
  4. package/.webstorm.js +3 -3
  5. package/CHANGELOG.md +63 -20
  6. package/build/.eslintrc.json +1 -3
  7. package/build/build.js +26 -28
  8. package/build/icons.js +7 -11
  9. package/build/less.js +48 -36
  10. package/build/package.json +2 -2
  11. package/build/prefix.js +21 -18
  12. package/build/publishDev.js +6 -8
  13. package/build/release.js +20 -17
  14. package/build/scope.js +21 -11
  15. package/build/scss.js +72 -39
  16. package/build/util.js +71 -62
  17. package/build/wrapper/icons.js +0 -2
  18. package/dist/css/uikit-core-rtl.css +144 -202
  19. package/dist/css/uikit-core-rtl.min.css +1 -1
  20. package/dist/css/uikit-core.css +144 -202
  21. package/dist/css/uikit-core.min.css +1 -1
  22. package/dist/css/uikit-rtl.css +146 -208
  23. package/dist/css/uikit-rtl.min.css +1 -1
  24. package/dist/css/uikit.css +146 -208
  25. package/dist/css/uikit.min.css +1 -1
  26. package/dist/js/components/countdown.js +66 -138
  27. package/dist/js/components/countdown.min.js +1 -1
  28. package/dist/js/components/filter.js +408 -439
  29. package/dist/js/components/filter.min.js +1 -1
  30. package/dist/js/components/lightbox-panel.js +1091 -1319
  31. package/dist/js/components/lightbox-panel.min.js +1 -1
  32. package/dist/js/components/lightbox.js +1137 -1396
  33. package/dist/js/components/lightbox.min.js +1 -1
  34. package/dist/js/components/notification.js +94 -114
  35. package/dist/js/components/notification.min.js +1 -1
  36. package/dist/js/components/parallax.js +347 -361
  37. package/dist/js/components/parallax.min.js +1 -1
  38. package/dist/js/components/slider-parallax.js +345 -360
  39. package/dist/js/components/slider-parallax.min.js +1 -1
  40. package/dist/js/components/slider.js +749 -843
  41. package/dist/js/components/slider.min.js +1 -1
  42. package/dist/js/components/slideshow-parallax.js +345 -360
  43. package/dist/js/components/slideshow-parallax.min.js +1 -1
  44. package/dist/js/components/slideshow.js +628 -798
  45. package/dist/js/components/slideshow.min.js +1 -1
  46. package/dist/js/components/sortable.js +587 -620
  47. package/dist/js/components/sortable.min.js +1 -1
  48. package/dist/js/components/tooltip.js +324 -356
  49. package/dist/js/components/tooltip.min.js +1 -1
  50. package/dist/js/components/upload.js +156 -167
  51. package/dist/js/components/upload.min.js +1 -1
  52. package/dist/js/uikit-core.js +5317 -6554
  53. package/dist/js/uikit-core.min.js +1 -1
  54. package/dist/js/uikit-icons.js +7 -9
  55. package/dist/js/uikit-icons.min.js +1 -1
  56. package/dist/js/uikit.js +8018 -9698
  57. package/dist/js/uikit.min.js +1 -1
  58. package/jsconfig.json +1 -1
  59. package/package.json +64 -60
  60. package/src/js/api/boot.js +25 -32
  61. package/src/js/api/component.js +15 -28
  62. package/src/js/api/global.js +6 -12
  63. package/src/js/api/hooks.js +14 -33
  64. package/src/js/api/instance.js +7 -15
  65. package/src/js/api/state.js +199 -187
  66. package/src/js/components/countdown.js +32 -85
  67. package/src/js/components/filter.js +70 -66
  68. package/src/js/components/index.js +13 -13
  69. package/src/js/components/internal/lightbox-animations.js +14 -25
  70. package/src/js/components/internal/slider-preload.js +9 -0
  71. package/src/js/components/internal/slider-transitioner.js +66 -45
  72. package/src/js/components/internal/slideshow-animations.js +46 -64
  73. package/src/js/components/lightbox-panel.js +107 -105
  74. package/src/js/components/lightbox.js +17 -39
  75. package/src/js/components/notification.js +49 -43
  76. package/src/js/components/parallax.js +16 -30
  77. package/src/js/components/slider-parallax.js +13 -23
  78. package/src/js/components/slider.js +117 -89
  79. package/src/js/components/slideshow-parallax.js +1 -1
  80. package/src/js/components/slideshow.js +15 -13
  81. package/src/js/components/sortable.js +125 -106
  82. package/src/js/components/tooltip.js +41 -31
  83. package/src/js/components/upload.js +53 -63
  84. package/src/js/core/accordion.js +58 -48
  85. package/src/js/core/alert.js +9 -17
  86. package/src/js/core/core.js +17 -69
  87. package/src/js/core/cover.js +15 -15
  88. package/src/js/core/drop.js +110 -94
  89. package/src/js/core/form-custom.js +22 -27
  90. package/src/js/core/gif.js +3 -7
  91. package/src/js/core/grid.js +57 -58
  92. package/src/js/core/height-match.js +16 -29
  93. package/src/js/core/height-viewport.js +30 -34
  94. package/src/js/core/icon.js +47 -52
  95. package/src/js/core/img.js +153 -143
  96. package/src/js/core/index.js +39 -39
  97. package/src/js/core/leader.js +9 -18
  98. package/src/js/core/margin.js +21 -37
  99. package/src/js/core/modal.js +49 -36
  100. package/src/js/core/nav.js +2 -4
  101. package/src/js/core/navbar.js +113 -85
  102. package/src/js/core/offcanvas.js +51 -54
  103. package/src/js/core/overflow-auto.js +13 -17
  104. package/src/js/core/responsive.js +14 -12
  105. package/src/js/core/scroll.js +10 -20
  106. package/src/js/core/scrollspy-nav.js +34 -31
  107. package/src/js/core/scrollspy.js +37 -54
  108. package/src/js/core/sticky.js +161 -128
  109. package/src/js/core/svg.js +68 -83
  110. package/src/js/core/switcher.js +56 -47
  111. package/src/js/core/tab.js +7 -10
  112. package/src/js/core/toggle.js +69 -68
  113. package/src/js/core/video.js +22 -21
  114. package/src/js/mixin/animate.js +19 -20
  115. package/src/js/mixin/class.js +2 -4
  116. package/src/js/mixin/container.js +7 -11
  117. package/src/js/mixin/internal/animate-fade.js +73 -30
  118. package/src/js/mixin/internal/animate-slide.js +58 -41
  119. package/src/js/mixin/internal/slideshow-animations.js +7 -14
  120. package/src/js/mixin/internal/slideshow-transitioner.js +10 -17
  121. package/src/js/mixin/lazyload.js +20 -0
  122. package/src/js/mixin/media.js +5 -10
  123. package/src/js/mixin/modal.js +89 -66
  124. package/src/js/mixin/parallax.js +149 -107
  125. package/src/js/mixin/position.js +26 -20
  126. package/src/js/mixin/slider-autoplay.js +12 -21
  127. package/src/js/mixin/slider-drag.js +64 -65
  128. package/src/js/mixin/slider-nav.js +26 -35
  129. package/src/js/mixin/slider-reactive.js +2 -8
  130. package/src/js/mixin/slider.js +47 -60
  131. package/src/js/mixin/slideshow.js +12 -22
  132. package/src/js/mixin/swipe.js +72 -0
  133. package/src/js/mixin/togglable.js +89 -63
  134. package/src/js/uikit-core.js +2 -4
  135. package/src/js/uikit.js +2 -4
  136. package/src/js/util/ajax.js +25 -40
  137. package/src/js/util/animation.js +77 -75
  138. package/src/js/util/attr.js +17 -21
  139. package/src/js/util/class.js +14 -52
  140. package/src/js/util/dimensions.js +58 -45
  141. package/src/js/util/dom.js +37 -66
  142. package/src/js/util/env.js +7 -12
  143. package/src/js/util/event.js +60 -59
  144. package/src/js/util/fastdom.js +1 -6
  145. package/src/js/util/filter.js +18 -36
  146. package/src/js/util/index.js +1 -1
  147. package/src/js/util/lang.js +82 -121
  148. package/src/js/util/mouse.js +19 -17
  149. package/src/js/util/observer.js +36 -0
  150. package/src/js/util/options.js +35 -49
  151. package/src/js/util/player.js +41 -36
  152. package/src/js/util/position.js +54 -46
  153. package/src/js/util/selector.js +43 -58
  154. package/src/js/util/style.js +39 -49
  155. package/src/js/util/viewport.js +75 -64
  156. package/src/less/components/base.less +10 -33
  157. package/src/less/components/flex.less +0 -9
  158. package/src/less/components/form-range.less +48 -95
  159. package/src/less/components/form.less +0 -1
  160. package/src/less/components/height.less +3 -0
  161. package/src/less/components/leader.less +0 -1
  162. package/src/less/components/lightbox.less +0 -1
  163. package/src/less/components/list.less +5 -1
  164. package/src/less/components/modal.less +3 -7
  165. package/src/less/components/navbar.less +0 -7
  166. package/src/less/components/progress.less +14 -36
  167. package/src/less/components/slider.less +3 -3
  168. package/src/less/components/slideshow.less +3 -3
  169. package/src/less/components/text.less +16 -32
  170. package/src/less/components/utility.less +25 -0
  171. package/src/scss/components/base.scss +10 -33
  172. package/src/scss/components/flex.scss +0 -9
  173. package/src/scss/components/form-range.scss +48 -95
  174. package/src/scss/components/form.scss +3 -4
  175. package/src/scss/components/height.scss +3 -0
  176. package/src/scss/components/icon.scss +2 -2
  177. package/src/scss/components/leader.scss +0 -1
  178. package/src/scss/components/lightbox.scss +0 -1
  179. package/src/scss/components/list.scss +5 -1
  180. package/src/scss/components/modal.scss +3 -7
  181. package/src/scss/components/navbar.scss +0 -7
  182. package/src/scss/components/progress.scss +14 -36
  183. package/src/scss/components/search.scss +1 -1
  184. package/src/scss/components/slider.scss +3 -3
  185. package/src/scss/components/slideshow.scss +3 -3
  186. package/src/scss/components/text.scss +16 -32
  187. package/src/scss/components/utility.scss +25 -0
  188. package/src/scss/mixins-theme.scss +1 -1
  189. package/src/scss/mixins.scss +1 -1
  190. package/src/scss/variables-theme.scss +9 -9
  191. package/src/scss/variables.scss +9 -9
  192. package/tests/align.html +10 -10
  193. package/tests/animation.html +2 -2
  194. package/tests/article.html +2 -2
  195. package/tests/base.html +3 -3
  196. package/tests/card.html +10 -10
  197. package/tests/column.html +3 -3
  198. package/tests/comment.html +9 -9
  199. package/tests/countdown.html +10 -8
  200. package/tests/dotnav.html +3 -3
  201. package/tests/image.html +296 -64
  202. package/tests/images/image-type.avif +0 -0
  203. package/tests/images/image-type.jpeg +0 -0
  204. package/tests/images/image-type.webp +0 -0
  205. package/tests/index.html +8 -8
  206. package/tests/js/index.js +114 -85
  207. package/tests/lightbox.html +10 -10
  208. package/tests/marker.html +2 -2
  209. package/tests/modal.html +8 -9
  210. package/tests/navbar.html +2 -2
  211. package/tests/overlay.html +7 -7
  212. package/tests/parallax.html +16 -7
  213. package/tests/position.html +12 -12
  214. package/tests/slidenav.html +12 -12
  215. package/tests/slider.html +20 -20
  216. package/tests/sortable.html +1 -1
  217. package/tests/sticky-parallax.html +57 -72
  218. package/tests/sticky.html +14 -3
  219. package/tests/svg.html +6 -6
  220. package/tests/table.html +11 -11
  221. package/tests/thumbnav.html +12 -12
  222. package/tests/transition.html +30 -30
  223. package/tests/utility.html +50 -33
  224. package/tests/video.html +1 -1
  225. package/tests/width.html +1 -1
  226. package/src/js/mixin/flex-bug.js +0 -56
  227. package/src/js/util/promise.js +0 -191
  228. package/tests/images/animated.gif +0 -0
@@ -1,4 +1,4 @@
1
- /*! UIkit 3.11.2-dev.fb043abc2 | https://www.getuikit.com | (c) 2014 - 2022 YOOtheme | MIT License */
1
+ /*! UIkit 3.12.2 | https://www.getuikit.com | (c) 2014 - 2022 YOOtheme | MIT License */
2
2
 
3
3
  (function (global, factory) {
4
4
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('uikit-util')) :
@@ -7,589 +7,558 @@
7
7
  })(this, (function (uikitUtil) { 'use strict';
8
8
 
9
9
  function getRows(items) {
10
- return sortBy(items, 'top', 'bottom');
10
+ return sortBy(items, 'top', 'bottom');
11
11
  }
12
12
 
13
13
  function sortBy(items, startProp, endProp) {
14
+ const sorted = [[]];
14
15
 
15
- var sorted = [[]];
16
-
17
- for (var i = 0; i < items.length; i++) {
18
-
19
- var el = items[i];
20
-
21
- if (!uikitUtil.isVisible(el)) {
22
- continue;
23
- }
24
-
25
- var dim = getOffset(el);
26
-
27
- for (var j = sorted.length - 1; j >= 0; j--) {
28
-
29
- var current = sorted[j];
30
-
31
- if (!current[0]) {
32
- current.push(el);
33
- break;
34
- }
16
+ for (const el of items) {
17
+ if (!uikitUtil.isVisible(el)) {
18
+ continue;
19
+ }
35
20
 
36
- var startDim = (void 0);
37
- if (current[0].offsetParent === el.offsetParent) {
38
- startDim = getOffset(current[0]);
39
- } else {
40
- dim = getOffset(el, true);
41
- startDim = getOffset(current[0], true);
42
- }
21
+ let dim = getOffset(el);
22
+
23
+ for (let i = sorted.length - 1; i >= 0; i--) {
24
+ const current = sorted[i];
25
+
26
+ if (!current[0]) {
27
+ current.push(el);
28
+ break;
29
+ }
30
+
31
+ let startDim;
32
+ if (current[0].offsetParent === el.offsetParent) {
33
+ startDim = getOffset(current[0]);
34
+ } else {
35
+ dim = getOffset(el, true);
36
+ startDim = getOffset(current[0], true);
37
+ }
38
+
39
+ if (dim[startProp] >= startDim[endProp] - 1 && dim[startProp] !== startDim[startProp]) {
40
+ sorted.push([el]);
41
+ break;
42
+ }
43
+
44
+ if (dim[endProp] - 1 > startDim[startProp] || dim[startProp] === startDim[startProp]) {
45
+ current.push(el);
46
+ break;
47
+ }
48
+
49
+ if (i === 0) {
50
+ sorted.unshift([el]);
51
+ break;
52
+ }
53
+ }
54
+ }
43
55
 
44
- if (dim[startProp] >= startDim[endProp] - 1 && dim[startProp] !== startDim[startProp]) {
45
- sorted.push([el]);
46
- break;
47
- }
56
+ return sorted;
57
+ }
48
58
 
49
- if (dim[endProp] - 1 > startDim[startProp] || dim[startProp] === startDim[startProp]) {
50
- current.push(el);
51
- break;
52
- }
59
+ function getOffset(element, offset) {if (offset === void 0) {offset = false;}
60
+ let { offsetTop, offsetLeft, offsetHeight, offsetWidth } = element;
53
61
 
54
- if (j === 0) {
55
- sorted.unshift([el]);
56
- break;
57
- }
62
+ if (offset) {
63
+ [offsetTop, offsetLeft] = uikitUtil.offsetPosition(element);
64
+ }
58
65
 
59
- }
66
+ return {
67
+ top: offsetTop,
68
+ left: offsetLeft,
69
+ bottom: offsetTop + offsetHeight,
70
+ right: offsetLeft + offsetWidth };
60
71
 
61
- }
62
-
63
- return sorted;
64
72
  }
65
73
 
66
- function getOffset(element, offset) {
67
- var assign;
74
+ const clsLeave = 'uk-transition-leave';
75
+ const clsEnter = 'uk-transition-enter';
68
76
 
69
- if ( offset === void 0 ) offset = false;
77
+ function fade(action, target, duration, stagger) {if (stagger === void 0) {stagger = 0;}
78
+ const index = transitionIndex(target, true);
79
+ const propsIn = { opacity: 1 };
80
+ const propsOut = { opacity: 0 };
70
81
 
71
- var offsetTop = element.offsetTop;
72
- var offsetLeft = element.offsetLeft;
73
- var offsetHeight = element.offsetHeight;
74
- var offsetWidth = element.offsetWidth;
82
+ const wrapIndexFn = (fn) => () => index === transitionIndex(target) ? fn() : Promise.reject();
75
83
 
76
- if (offset) {
77
- (assign = uikitUtil.offsetPosition(element), offsetTop = assign[0], offsetLeft = assign[1]);
78
- }
84
+ const leaveFn = wrapIndexFn(() => {
85
+ uikitUtil.addClass(target, clsLeave);
79
86
 
80
- return {
81
- top: offsetTop,
82
- left: offsetLeft,
83
- bottom: offsetTop + offsetHeight,
84
- right: offsetLeft + offsetWidth
85
- };
86
- }
87
+ return Promise.all(
88
+ getTransitionNodes(target).map(
89
+ (child, i) =>
90
+ new Promise((resolve) =>
91
+ setTimeout(
92
+ () =>
93
+ uikitUtil.Transition.start(child, propsOut, duration / 2, 'ease').then(
94
+ resolve),
87
95
 
88
- var clsLeave = 'uk-transition-leave';
89
- var clsEnter = 'uk-transition-enter';
96
+ i * stagger)))).
90
97
 
91
- function fade(action, target, duration, stagger) {
92
- if ( stagger === void 0 ) stagger = 0;
93
98
 
94
99
 
95
- var index = transitionIndex(target, true);
96
- var propsIn = {opacity: 1};
97
- var propsOut = {opacity: 0};
100
+ then(() => uikitUtil.removeClass(target, clsLeave));
101
+ });
98
102
 
99
- var wrapIndexFn = function (fn) { return function () { return index === transitionIndex(target) ? fn() : uikitUtil.Promise.reject(); }; };
103
+ const enterFn = wrapIndexFn(() => {
104
+ const oldHeight = uikitUtil.height(target);
100
105
 
101
- var leaveFn = wrapIndexFn(function () {
106
+ uikitUtil.addClass(target, clsEnter);
107
+ action();
102
108
 
103
- uikitUtil.addClass(target, clsLeave);
109
+ uikitUtil.css(uikitUtil.children(target), { opacity: 0 });
104
110
 
105
- return uikitUtil.Promise.all(getTransitionNodes(target).map(function (child, i) { return new uikitUtil.Promise(function (resolve) { return setTimeout(function () { return uikitUtil.Transition.start(child, propsOut, duration / 2, 'ease').then(resolve); }, i * stagger); }
106
- ); }
107
- )).then(function () { return uikitUtil.removeClass(target, clsLeave); });
111
+ // Ensure UIkit updates have propagated
112
+ return new Promise((resolve) =>
113
+ requestAnimationFrame(() => {
114
+ const nodes = uikitUtil.children(target);
115
+ const newHeight = uikitUtil.height(target);
108
116
 
109
- });
117
+ // Ensure Grid cells do not stretch when height is applied
118
+ uikitUtil.css(target, 'alignContent', 'flex-start');
119
+ uikitUtil.height(target, oldHeight);
110
120
 
111
- var enterFn = wrapIndexFn(function () {
121
+ const transitionNodes = getTransitionNodes(target);
122
+ uikitUtil.css(nodes, propsOut);
112
123
 
113
- var oldHeight = uikitUtil.height(target);
124
+ const transitions = transitionNodes.map(
125
+ (child, i) =>
126
+ new Promise((resolve) =>
127
+ setTimeout(
128
+ () =>
129
+ uikitUtil.Transition.start(child, propsIn, duration / 2, 'ease').then(
130
+ resolve),
114
131
 
115
- uikitUtil.addClass(target, clsEnter);
116
- action();
132
+ i * stagger)));
117
133
 
118
- uikitUtil.css(uikitUtil.children(target), {opacity: 0});
119
134
 
120
- // Ensure UIkit updates have propagated
121
- return new uikitUtil.Promise(function (resolve) { return requestAnimationFrame(function () {
122
135
 
123
- var nodes = uikitUtil.children(target);
124
- var newHeight = uikitUtil.height(target);
125
136
 
126
- // Ensure Grid cells do not stretch when height is applied
127
- uikitUtil.css(target, 'alignContent', 'flex-start');
128
- uikitUtil.height(target, oldHeight);
137
+ if (oldHeight !== newHeight) {
138
+ transitions.push(
139
+ uikitUtil.Transition.start(
140
+ target,
141
+ { height: newHeight },
142
+ duration / 2 + transitionNodes.length * stagger,
143
+ 'ease'));
129
144
 
130
- var transitionNodes = getTransitionNodes(target);
131
- uikitUtil.css(nodes, propsOut);
132
145
 
133
- var transitions = transitionNodes.map(function (child, i) { return new uikitUtil.Promise(function (resolve) { return setTimeout(function () { return uikitUtil.Transition.start(child, propsIn, duration / 2, 'ease').then(resolve); }, i * stagger); }
134
- ); }
135
- );
146
+ }
136
147
 
137
- if (oldHeight !== newHeight) {
138
- transitions.push(uikitUtil.Transition.start(target, {height: newHeight}, duration / 2 + transitionNodes.length * stagger, 'ease'));
139
- }
148
+ Promise.all(transitions).then(() => {
149
+ uikitUtil.removeClass(target, clsEnter);
150
+ if (index === transitionIndex(target)) {
151
+ uikitUtil.css(target, { height: '', alignContent: '' });
152
+ uikitUtil.css(nodes, { opacity: '' });
153
+ delete target.dataset.transition;
154
+ }
155
+ resolve();
156
+ });
157
+ }));
140
158
 
141
- uikitUtil.Promise.all(transitions).then(function () {
142
- uikitUtil.removeClass(target, clsEnter);
143
- if (index === transitionIndex(target)) {
144
- uikitUtil.css(target, {height: '', alignContent: ''});
145
- uikitUtil.css(nodes, {opacity: ''});
146
- delete target.dataset.transition;
147
- }
148
- resolve();
149
- });
150
- }); }
151
- );
152
- });
159
+ });
153
160
 
154
- return uikitUtil.hasClass(target, clsLeave)
155
- ? waitTransitionend(target).then(enterFn)
156
- : uikitUtil.hasClass(target, clsEnter)
157
- ? waitTransitionend(target).then(leaveFn).then(enterFn)
158
- : leaveFn().then(enterFn);
161
+ return uikitUtil.hasClass(target, clsLeave) ?
162
+ waitTransitionend(target).then(enterFn) :
163
+ uikitUtil.hasClass(target, clsEnter) ?
164
+ waitTransitionend(target).then(leaveFn).then(enterFn) :
165
+ leaveFn().then(enterFn);
159
166
  }
160
167
 
161
168
  function transitionIndex(target, next) {
162
- if (next) {
163
- target.dataset.transition = 1 + transitionIndex(target);
164
- }
169
+ if (next) {
170
+ target.dataset.transition = 1 + transitionIndex(target);
171
+ }
165
172
 
166
- return uikitUtil.toNumber(target.dataset.transition) || 0;
173
+ return uikitUtil.toNumber(target.dataset.transition) || 0;
167
174
  }
168
175
 
169
176
  function waitTransitionend(target) {
170
- return uikitUtil.Promise.all(uikitUtil.children(target).filter(uikitUtil.Transition.inProgress).map(function (el) { return new uikitUtil.Promise(function (resolve) { return uikitUtil.once(el, 'transitionend transitioncanceled', resolve); }); }
171
- ));
172
- }
177
+ return Promise.all(
178
+ uikitUtil.children(target).
179
+ filter(uikitUtil.Transition.inProgress).
180
+ map(
181
+ (el) =>
182
+ new Promise((resolve) => uikitUtil.once(el, 'transitionend transitioncanceled', resolve))));
173
183
 
174
- function getTransitionNodes(target) {
175
- return getRows(uikitUtil.children(target)).reduce(function (nodes, row) { return nodes.concat(uikitUtil.sortBy(row.filter(function (el) { return uikitUtil.isInView(el); }), 'offsetLeft')); }, []);
176
- }
177
184
 
178
- function slide (action, target, duration) {
179
-
180
- return new uikitUtil.Promise(function (resolve) { return requestAnimationFrame(function () {
181
-
182
- var nodes = uikitUtil.children(target);
183
-
184
- // Get current state
185
- var currentProps = nodes.map(function (el) { return getProps(el, true); });
186
- var targetProps = uikitUtil.css(target, ['height', 'padding']);
187
-
188
- // Cancel previous animations
189
- uikitUtil.Transition.cancel(target);
190
- nodes.forEach(uikitUtil.Transition.cancel);
191
- reset(target);
192
-
193
- // Adding, sorting, removing nodes
194
- action();
195
-
196
- // Find new nodes
197
- nodes = nodes.concat(uikitUtil.children(target).filter(function (el) { return !uikitUtil.includes(nodes, el); }));
198
-
199
- // Wait for update to propagate
200
- uikitUtil.Promise.resolve().then(function () {
201
-
202
- // Force update
203
- uikitUtil.fastdom.flush();
185
+ }
204
186
 
205
- // Get new state
206
- var targetPropsTo = uikitUtil.css(target, ['height', 'padding']);
207
- var ref = getTransitionProps(target, nodes, currentProps);
208
- var propsTo = ref[0];
209
- var propsFrom = ref[1];
187
+ function getTransitionNodes(target) {
188
+ return getRows(uikitUtil.children(target)).reduce(
189
+ (nodes, row) =>
190
+ nodes.concat(
191
+ uikitUtil.sortBy(
192
+ row.filter((el) => uikitUtil.isInView(el)),
193
+ 'offsetLeft')),
210
194
 
211
- // Reset to previous state
212
- nodes.forEach(function (el, i) { return propsFrom[i] && uikitUtil.css(el, propsFrom[i]); });
213
- uikitUtil.css(target, uikitUtil.assign({display: 'block'}, targetProps));
214
195
 
215
- // Start transitions on next frame
216
- requestAnimationFrame(function () {
196
+ []);
217
197
 
218
- var transitions = nodes.map(function (el, i) { return uikitUtil.parent(el) === target && uikitUtil.Transition.start(el, propsTo[i], duration, 'ease'); }
219
- ).concat(uikitUtil.Transition.start(target, targetPropsTo, duration, 'ease'));
198
+ }
220
199
 
221
- uikitUtil.Promise.all(transitions).then(function () {
222
- nodes.forEach(function (el, i) { return uikitUtil.parent(el) === target && uikitUtil.css(el, 'display', propsTo[i].opacity === 0 ? 'none' : ''); });
223
- reset(target);
224
- }, uikitUtil.noop).then(resolve);
200
+ function slide (action, target, duration) {
201
+ return new Promise((resolve) =>
202
+ requestAnimationFrame(() => {
203
+ let nodes = uikitUtil.children(target);
204
+
205
+ // Get current state
206
+ const currentProps = nodes.map((el) => getProps(el, true));
207
+ const targetProps = uikitUtil.css(target, ['height', 'padding']);
208
+
209
+ // Cancel previous animations
210
+ uikitUtil.Transition.cancel(target);
211
+ nodes.forEach(uikitUtil.Transition.cancel);
212
+ reset(target);
213
+
214
+ // Adding, sorting, removing nodes
215
+ action();
216
+
217
+ // Find new nodes
218
+ nodes = nodes.concat(uikitUtil.children(target).filter((el) => !uikitUtil.includes(nodes, el)));
219
+
220
+ // Wait for update to propagate
221
+ Promise.resolve().then(() => {
222
+ // Force update
223
+ uikitUtil.fastdom.flush();
224
+
225
+ // Get new state
226
+ const targetPropsTo = uikitUtil.css(target, ['height', 'padding']);
227
+ const [propsTo, propsFrom] = getTransitionProps(target, nodes, currentProps);
228
+
229
+ // Reset to previous state
230
+ nodes.forEach((el, i) => propsFrom[i] && uikitUtil.css(el, propsFrom[i]));
231
+ uikitUtil.css(target, { display: 'block', ...targetProps });
232
+
233
+ // Start transitions on next frame
234
+ requestAnimationFrame(() => {
235
+ const transitions = nodes.
236
+ map(
237
+ (el, i) =>
238
+ uikitUtil.parent(el) === target &&
239
+ uikitUtil.Transition.start(el, propsTo[i], duration, 'ease')).
240
+
241
+ concat(uikitUtil.Transition.start(target, targetPropsTo, duration, 'ease'));
242
+
243
+ Promise.all(transitions).
244
+ then(() => {
245
+ nodes.forEach(
246
+ (el, i) =>
247
+ uikitUtil.parent(el) === target &&
248
+ uikitUtil.css(el, 'display', propsTo[i].opacity === 0 ? 'none' : ''));
249
+
250
+ reset(target);
251
+ }, uikitUtil.noop).
252
+ then(resolve);
253
+ });
254
+ });
255
+ }));
225
256
 
226
- });
227
- });
228
- }); });
229
257
  }
230
258
 
231
259
  function getProps(el, opacity) {
232
-
233
- var zIndex = uikitUtil.css(el, 'zIndex');
234
-
235
- return uikitUtil.isVisible(el)
236
- ? uikitUtil.assign({
237
- display: '',
238
- opacity: opacity ? uikitUtil.css(el, 'opacity') : '0',
239
- pointerEvents: 'none',
240
- position: 'absolute',
241
- zIndex: zIndex === 'auto' ? uikitUtil.index(el) : zIndex
242
- }, getPositionWithMargin(el))
243
- : false;
260
+ const zIndex = uikitUtil.css(el, 'zIndex');
261
+
262
+ return uikitUtil.isVisible(el) ?
263
+ {
264
+ display: '',
265
+ opacity: opacity ? uikitUtil.css(el, 'opacity') : '0',
266
+ pointerEvents: 'none',
267
+ position: 'absolute',
268
+ zIndex: zIndex === 'auto' ? uikitUtil.index(el) : zIndex,
269
+ ...getPositionWithMargin(el) } :
270
+
271
+ false;
244
272
  }
245
273
 
246
274
  function getTransitionProps(target, nodes, currentProps) {
275
+ const propsTo = nodes.map((el, i) =>
276
+ uikitUtil.parent(el) && i in currentProps ?
277
+ currentProps[i] ?
278
+ uikitUtil.isVisible(el) ?
279
+ getPositionWithMargin(el) :
280
+ { opacity: 0 } :
281
+ { opacity: uikitUtil.isVisible(el) ? 1 : 0 } :
282
+ false);
247
283
 
248
- var propsTo = nodes.map(function (el, i) { return uikitUtil.parent(el) && i in currentProps
249
- ? currentProps[i]
250
- ? uikitUtil.isVisible(el)
251
- ? getPositionWithMargin(el)
252
- : {opacity: 0}
253
- : {opacity: uikitUtil.isVisible(el) ? 1 : 0}
254
- : false; });
255
-
256
- var propsFrom = propsTo.map(function (props, i) {
257
284
 
258
- var from = uikitUtil.parent(nodes[i]) === target && (currentProps[i] || getProps(nodes[i]));
285
+ const propsFrom = propsTo.map((props, i) => {
286
+ const from = uikitUtil.parent(nodes[i]) === target && (currentProps[i] || getProps(nodes[i]));
259
287
 
260
- if (!from) {
261
- return false;
262
- }
288
+ if (!from) {
289
+ return false;
290
+ }
263
291
 
264
- if (!props) {
265
- delete from.opacity;
266
- } else if (!('opacity' in props)) {
267
- var opacity = from.opacity;
292
+ if (!props) {
293
+ delete from.opacity;
294
+ } else if (!('opacity' in props)) {
295
+ const { opacity } = from;
268
296
 
269
- if (opacity % 1) {
270
- props.opacity = 1;
271
- } else {
272
- delete from.opacity;
273
- }
274
- }
297
+ if (opacity % 1) {
298
+ props.opacity = 1;
299
+ } else {
300
+ delete from.opacity;
301
+ }
302
+ }
275
303
 
276
- return from;
277
- });
304
+ return from;
305
+ });
278
306
 
279
- return [propsTo, propsFrom];
307
+ return [propsTo, propsFrom];
280
308
  }
281
309
 
282
310
  function reset(el) {
283
- uikitUtil.css(el.children, {
284
- height: '',
285
- left: '',
286
- opacity: '',
287
- pointerEvents: '',
288
- position: '',
289
- top: '',
290
- marginTop: '',
291
- marginLeft: '',
292
- transform: '',
293
- width: '',
294
- zIndex: ''
295
- });
296
- uikitUtil.css(el, {height: '', display: '', padding: ''});
311
+ uikitUtil.css(el.children, {
312
+ height: '',
313
+ left: '',
314
+ opacity: '',
315
+ pointerEvents: '',
316
+ position: '',
317
+ top: '',
318
+ marginTop: '',
319
+ marginLeft: '',
320
+ transform: '',
321
+ width: '',
322
+ zIndex: '' });
323
+
324
+ uikitUtil.css(el, { height: '', display: '', padding: '' });
297
325
  }
298
326
 
299
327
  function getPositionWithMargin(el) {
300
- var ref = uikitUtil.offset(el);
301
- var height = ref.height;
302
- var width = ref.width;
303
- var ref$1 = uikitUtil.position(el);
304
- var top = ref$1.top;
305
- var left = ref$1.left;
306
- var ref$2 = uikitUtil.css(el, ['marginTop', 'marginLeft']);
307
- var marginLeft = ref$2.marginLeft;
308
- var marginTop = ref$2.marginTop;
309
-
310
- return {top: top, left: left, height: height, width: width, marginLeft: marginLeft, marginTop: marginTop, transform: ''};
328
+ const { height, width } = uikitUtil.offset(el);
329
+ const { top, left } = uikitUtil.position(el);
330
+ const { marginLeft, marginTop } = uikitUtil.css(el, ['marginTop', 'marginLeft']);
331
+
332
+ return { top, left, height, width, marginLeft, marginTop, transform: '' };
311
333
  }
312
334
 
313
335
  var Animate = {
336
+ props: {
337
+ duration: Number,
338
+ animation: Boolean },
339
+
340
+
341
+ data: {
342
+ duration: 150,
343
+ animation: 'slide' },
344
+
345
+
346
+ methods: {
347
+ animate(action, target) {if (target === void 0) {target = this.$el;}
348
+ const name = this.animation;
349
+ const animationFn =
350
+ name === 'fade' ?
351
+ fade :
352
+ name === 'delayed-fade' ?
353
+ function () {for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}return fade(...args, 40);} :
354
+ name ?
355
+ slide :
356
+ () => {
357
+ action();
358
+ return Promise.resolve();
359
+ };
314
360
 
315
- props: {
316
- duration: Number,
317
- animation: Boolean
318
- },
319
-
320
- data: {
321
- duration: 150,
322
- animation: 'slide'
323
- },
324
-
325
- methods: {
326
-
327
- animate: function(action, target) {
328
- var this$1$1 = this;
329
- if ( target === void 0 ) target = this.$el;
330
-
331
-
332
- var name = this.animation;
333
- var animationFn = name === 'fade'
334
- ? fade
335
- : name === 'delayed-fade'
336
- ? function () {
337
- var args = [], len = arguments.length;
338
- while ( len-- ) args[ len ] = arguments[ len ];
339
-
340
- return fade.apply(void 0, args.concat( [40] ));
341
- }
342
- : name
343
- ? slide
344
- : function () {
345
- action();
346
- return uikitUtil.Promise.resolve();
347
- };
348
-
349
- return animationFn(action, target, this.duration)
350
- .then(function () { return this$1$1.$update(target, 'resize'); }, uikitUtil.noop);
351
- }
361
+ return animationFn(action, target, this.duration).then(
362
+ () => this.$update(target, 'resize'),
363
+ uikitUtil.noop);
352
364
 
353
- }
354
- };
365
+ } } };
355
366
 
356
367
  var Component = {
368
+ mixins: [Animate],
357
369
 
358
- mixins: [Animate],
359
-
360
- args: 'target',
361
-
362
- props: {
363
- target: Boolean,
364
- selActive: Boolean
365
- },
366
-
367
- data: {
368
- target: null,
369
- selActive: false,
370
- attrItem: 'uk-filter-control',
371
- cls: 'uk-active',
372
- duration: 250
373
- },
374
-
375
- computed: {
376
-
377
- toggles: {
378
-
379
- get: function(ref, $el) {
380
- var attrItem = ref.attrItem;
381
-
382
- return uikitUtil.$$(("[" + attrItem + "],[data-" + attrItem + "]"), $el);
383
- },
384
-
385
- watch: function() {
386
- var this$1$1 = this;
387
-
388
-
389
- this.updateState();
390
-
391
- if (this.selActive !== false) {
392
- var actives = uikitUtil.$$(this.selActive, this.$el);
393
- this.toggles.forEach(function (el) { return uikitUtil.toggleClass(el, this$1$1.cls, uikitUtil.includes(actives, el)); });
394
- }
395
-
396
- },
397
-
398
- immediate: true
370
+ args: 'target',
399
371
 
400
- },
372
+ props: {
373
+ target: Boolean,
374
+ selActive: Boolean },
401
375
 
402
- children: {
403
376
 
404
- get: function(ref, $el) {
405
- var target = ref.target;
377
+ data: {
378
+ target: null,
379
+ selActive: false,
380
+ attrItem: 'uk-filter-control',
381
+ cls: 'uk-active',
382
+ duration: 250 },
406
383
 
407
- return uikitUtil.$$((target + " > *"), $el);
408
- },
409
384
 
410
- watch: function(list, old) {
411
- if (old && !isEqualList(list, old)) {
412
- this.updateState();
413
- }
414
- },
385
+ computed: {
386
+ toggles: {
387
+ get(_ref, $el) {let { attrItem } = _ref;
388
+ return uikitUtil.$$("[" + attrItem + "],[data-" + attrItem + "]", $el);
389
+ },
415
390
 
416
- immediate: true
391
+ watch() {
392
+ this.updateState();
417
393
 
394
+ if (this.selActive !== false) {
395
+ const actives = uikitUtil.$$(this.selActive, this.$el);
396
+ this.toggles.forEach((el) => uikitUtil.toggleClass(el, this.cls, uikitUtil.includes(actives, el)));
418
397
  }
398
+ },
419
399
 
420
- },
421
-
422
- events: [
423
-
424
- {
400
+ immediate: true },
425
401
 
426
- name: 'click',
427
402
 
428
- delegate: function() {
429
- return ("[" + (this.attrItem) + "],[data-" + (this.attrItem) + "]");
430
- },
403
+ children: {
404
+ get(_ref2, $el) {let { target } = _ref2;
405
+ return uikitUtil.$$(target + " > *", $el);
406
+ },
431
407
 
432
- handler: function(e) {
408
+ watch(list, old) {
409
+ if (old && !isEqualList(list, old)) {
410
+ this.updateState();
411
+ }
412
+ },
433
413
 
434
- e.preventDefault();
435
- this.apply(e.current);
414
+ immediate: true } },
436
415
 
437
- }
438
416
 
439
- }
440
417
 
441
- ],
418
+ events: [
419
+ {
420
+ name: 'click',
442
421
 
443
- methods: {
422
+ delegate() {
423
+ return "[" + this.attrItem + "],[data-" + this.attrItem + "]";
424
+ },
444
425
 
445
- apply: function(el) {
446
- var prevState = this.getState();
447
- var newState = mergeState(el, this.attrItem, this.getState());
426
+ handler(e) {
427
+ e.preventDefault();
428
+ this.apply(e.current);
429
+ } }],
448
430
 
449
- if (!isEqualState(prevState, newState)) {
450
- this.setState(newState);
451
- }
452
- },
453
431
 
454
- getState: function() {
455
- var this$1$1 = this;
456
432
 
457
- return this.toggles
458
- .filter(function (item) { return uikitUtil.hasClass(item, this$1$1.cls); })
459
- .reduce(function (state, el) { return mergeState(el, this$1$1.attrItem, state); }, {filter: {'': ''}, sort: []});
460
- },
433
+ methods: {
434
+ apply(el) {
435
+ const prevState = this.getState();
436
+ const newState = mergeState(el, this.attrItem, this.getState());
461
437
 
462
- setState: function(state, animate) {
463
- var this$1$1 = this;
464
- if ( animate === void 0 ) animate = true;
438
+ if (!isEqualState(prevState, newState)) {
439
+ this.setState(newState);
440
+ }
441
+ },
465
442
 
443
+ getState() {
444
+ return this.toggles.
445
+ filter((item) => uikitUtil.hasClass(item, this.cls)).
446
+ reduce((state, el) => mergeState(el, this.attrItem, state), {
447
+ filter: { '': '' },
448
+ sort: [] });
466
449
 
467
- state = uikitUtil.assign({filter: {'': ''}, sort: []}, state);
450
+ },
468
451
 
469
- uikitUtil.trigger(this.$el, 'beforeFilter', [this, state]);
452
+ setState(state, animate) {if (animate === void 0) {animate = true;}
453
+ state = { filter: { '': '' }, sort: [], ...state };
470
454
 
471
- this.toggles.forEach(function (el) { return uikitUtil.toggleClass(el, this$1$1.cls, !!matchFilter(el, this$1$1.attrItem, state)); });
455
+ uikitUtil.trigger(this.$el, 'beforeFilter', [this, state]);
472
456
 
473
- uikitUtil.Promise.all(uikitUtil.$$(this.target, this.$el).map(function (target) {
474
- var filterFn = function () {
475
- applyState(state, target, uikitUtil.children(target));
476
- this$1$1.$update(this$1$1.$el);
477
- };
478
- return animate ? this$1$1.animate(filterFn, target) : filterFn();
479
- })).then(function () { return uikitUtil.trigger(this$1$1.$el, 'afterFilter', [this$1$1]); });
457
+ this.toggles.forEach((el) =>
458
+ uikitUtil.toggleClass(el, this.cls, !!matchFilter(el, this.attrItem, state)));
480
459
 
481
- },
482
460
 
483
- updateState: function() {
484
- var this$1$1 = this;
461
+ Promise.all(
462
+ uikitUtil.$$(this.target, this.$el).map((target) => {
463
+ const filterFn = () => {
464
+ applyState(state, target, uikitUtil.children(target));
465
+ this.$update(this.$el);
466
+ };
467
+ return animate ? this.animate(filterFn, target) : filterFn();
468
+ })).
469
+ then(() => uikitUtil.trigger(this.$el, 'afterFilter', [this]));
470
+ },
485
471
 
486
- uikitUtil.fastdom.write(function () { return this$1$1.setState(this$1$1.getState(), false); });
487
- }
472
+ updateState() {
473
+ uikitUtil.fastdom.write(() => this.setState(this.getState(), false));
474
+ } } };
488
475
 
489
- }
490
476
 
491
- };
492
477
 
493
478
  function getFilter(el, attr) {
494
- return uikitUtil.parseOptions(uikitUtil.data(el, attr), ['filter']);
479
+ return uikitUtil.parseOptions(uikitUtil.data(el, attr), ['filter']);
495
480
  }
496
481
 
497
482
  function isEqualState(stateA, stateB) {
498
- return ['filter', 'sort'].every(function (prop) { return uikitUtil.isEqual(stateA[prop], stateB[prop]); });
483
+ return ['filter', 'sort'].every((prop) => uikitUtil.isEqual(stateA[prop], stateB[prop]));
499
484
  }
500
485
 
501
486
  function applyState(state, target, children) {
502
- var selector = getSelector(state);
487
+ const selector = getSelector(state);
503
488
 
504
- children.forEach(function (el) { return uikitUtil.css(el, 'display', selector && !uikitUtil.matches(el, selector) ? 'none' : ''); });
489
+ children.forEach((el) => uikitUtil.css(el, 'display', selector && !uikitUtil.matches(el, selector) ? 'none' : ''));
505
490
 
506
- var ref = state.sort;
507
- var sort = ref[0];
508
- var order = ref[1];
491
+ const [sort, order] = state.sort;
509
492
 
510
- if (sort) {
511
- var sorted = sortItems(children, sort, order);
512
- if (!uikitUtil.isEqual(sorted, children)) {
513
- uikitUtil.append(target, sorted);
514
- }
493
+ if (sort) {
494
+ const sorted = sortItems(children, sort, order);
495
+ if (!uikitUtil.isEqual(sorted, children)) {
496
+ uikitUtil.append(target, sorted);
515
497
  }
498
+ }
516
499
  }
517
500
 
518
501
  function mergeState(el, attr, state) {
519
-
520
- var filterBy = getFilter(el, attr);
521
- var filter = filterBy.filter;
522
- var group = filterBy.group;
523
- var sort = filterBy.sort;
524
- var order = filterBy.order; if ( order === void 0 ) order = 'asc';
525
-
526
- if (filter || uikitUtil.isUndefined(sort)) {
527
-
528
- if (group) {
529
-
530
- if (filter) {
531
- delete state.filter[''];
532
- state.filter[group] = filter;
533
- } else {
534
- delete state.filter[group];
535
-
536
- if (uikitUtil.isEmpty(state.filter) || '' in state.filter) {
537
- state.filter = {'': filter || ''};
538
- }
539
-
540
- }
541
-
542
- } else {
543
- state.filter = {'': filter || ''};
502
+ const filterBy = getFilter(el, attr);
503
+ const { filter, group, sort, order = 'asc' } = filterBy;
504
+
505
+ if (filter || uikitUtil.isUndefined(sort)) {
506
+ if (group) {
507
+ if (filter) {
508
+ delete state.filter[''];
509
+ state.filter[group] = filter;
510
+ } else {
511
+ delete state.filter[group];
512
+
513
+ if (uikitUtil.isEmpty(state.filter) || '' in state.filter) {
514
+ state.filter = { '': filter || '' };
544
515
  }
545
-
516
+ }
517
+ } else {
518
+ state.filter = { '': filter || '' };
546
519
  }
520
+ }
547
521
 
548
- if (!uikitUtil.isUndefined(sort)) {
549
- state.sort = [sort, order];
550
- }
522
+ if (!uikitUtil.isUndefined(sort)) {
523
+ state.sort = [sort, order];
524
+ }
551
525
 
552
- return state;
526
+ return state;
553
527
  }
554
528
 
555
- function matchFilter(el, attr, ref) {
556
- var stateFilter = ref.filter; if ( stateFilter === void 0 ) stateFilter = {'': ''};
557
- var ref_sort = ref.sort;
558
- var stateSort = ref_sort[0];
559
- var stateOrder = ref_sort[1];
529
+ function matchFilter(
530
+ el,
531
+ attr, _ref3)
560
532
 
533
+ {let { filter: stateFilter = { '': '' }, sort: [stateSort, stateOrder] } = _ref3;
534
+ const { filter = '', group = '', sort, order = 'asc' } = getFilter(el, attr);
561
535
 
562
- var ref$1 = getFilter(el, attr);
563
- var filter = ref$1.filter; if ( filter === void 0 ) filter = '';
564
- var group = ref$1.group; if ( group === void 0 ) group = '';
565
- var sort = ref$1.sort;
566
- var order = ref$1.order; if ( order === void 0 ) order = 'asc';
567
-
568
- return uikitUtil.isUndefined(sort)
569
- ? group in stateFilter && filter === stateFilter[group]
570
- || !filter && group && !(group in stateFilter) && !stateFilter['']
571
- : stateSort === sort && stateOrder === order;
536
+ return uikitUtil.isUndefined(sort) ?
537
+ group in stateFilter && filter === stateFilter[group] ||
538
+ !filter && group && !(group in stateFilter) && !stateFilter[''] :
539
+ stateSort === sort && stateOrder === order;
572
540
  }
573
541
 
574
542
  function isEqualList(listA, listB) {
575
- return listA.length === listB.length
576
- && listA.every(function (el) { return ~listB.indexOf(el); });
543
+ return listA.length === listB.length && listA.every((el) => ~listB.indexOf(el));
577
544
  }
578
545
 
579
- function getSelector(ref) {
580
- var filter = ref.filter;
581
-
582
- var selector = '';
583
- uikitUtil.each(filter, function (value) { return selector += value || ''; });
584
- return selector;
546
+ function getSelector(_ref4) {let { filter } = _ref4;
547
+ let selector = '';
548
+ uikitUtil.each(filter, (value) => selector += value || '');
549
+ return selector;
585
550
  }
586
551
 
587
552
  function sortItems(nodes, sort, order) {
588
- return uikitUtil.assign([], nodes).sort(function (a, b) { return uikitUtil.data(a, sort).localeCompare(uikitUtil.data(b, sort), undefined, {numeric: true}) * (order === 'asc' || -1); });
553
+ return [...nodes].sort(
554
+ (a, b) =>
555
+ uikitUtil.data(a, sort).localeCompare(uikitUtil.data(b, sort), undefined, { numeric: true }) * (
556
+ order === 'asc' || -1));
557
+
589
558
  }
590
559
 
591
560
  if (typeof window !== 'undefined' && window.UIkit) {
592
- window.UIkit.component('filter', Component);
561
+ window.UIkit.component('filter', Component);
593
562
  }
594
563
 
595
564
  return Component;