uikit 3.20.9-dev.2cb573699 → 3.20.9-dev.2d9611923

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 (63) hide show
  1. package/dist/css/uikit-core-rtl.css +1 -1
  2. package/dist/css/uikit-core-rtl.min.css +1 -1
  3. package/dist/css/uikit-core.css +1 -1
  4. package/dist/css/uikit-core.min.css +1 -1
  5. package/dist/css/uikit-rtl.css +1 -1
  6. package/dist/css/uikit-rtl.min.css +1 -1
  7. package/dist/css/uikit.css +1 -1
  8. package/dist/css/uikit.min.css +1 -1
  9. package/dist/js/components/countdown.js +1 -1
  10. package/dist/js/components/countdown.min.js +1 -1
  11. package/dist/js/components/filter.js +4 -2
  12. package/dist/js/components/filter.min.js +1 -1
  13. package/dist/js/components/lightbox-panel.js +28 -10
  14. package/dist/js/components/lightbox-panel.min.js +1 -1
  15. package/dist/js/components/lightbox.js +31 -11
  16. package/dist/js/components/lightbox.min.js +1 -1
  17. package/dist/js/components/notification.js +1 -1
  18. package/dist/js/components/notification.min.js +1 -1
  19. package/dist/js/components/parallax.js +1 -1
  20. package/dist/js/components/parallax.min.js +1 -1
  21. package/dist/js/components/slider-parallax.js +10 -4
  22. package/dist/js/components/slider-parallax.min.js +1 -1
  23. package/dist/js/components/slider.js +22 -8
  24. package/dist/js/components/slider.min.js +1 -1
  25. package/dist/js/components/slideshow-parallax.js +10 -4
  26. package/dist/js/components/slideshow-parallax.min.js +1 -1
  27. package/dist/js/components/slideshow.js +22 -8
  28. package/dist/js/components/slideshow.min.js +1 -1
  29. package/dist/js/components/sortable.js +1 -1
  30. package/dist/js/components/sortable.min.js +1 -1
  31. package/dist/js/components/tooltip.js +1 -1
  32. package/dist/js/components/tooltip.min.js +1 -1
  33. package/dist/js/components/upload.js +1 -1
  34. package/dist/js/components/upload.min.js +1 -1
  35. package/dist/js/uikit-core.js +143 -52
  36. package/dist/js/uikit-core.min.js +1 -1
  37. package/dist/js/uikit-icons.js +1 -1
  38. package/dist/js/uikit-icons.min.js +1 -1
  39. package/dist/js/uikit.js +182 -65
  40. package/dist/js/uikit.min.js +1 -1
  41. package/package.json +1 -1
  42. package/src/js/api/events.js +1 -1
  43. package/src/js/components/filter.js +3 -1
  44. package/src/js/components/lightbox-panel.js +3 -1
  45. package/src/js/components/lightbox.js +3 -1
  46. package/src/js/components/slider-parallax.js +9 -3
  47. package/src/js/core/accordion.js +6 -2
  48. package/src/js/core/alert.js +3 -1
  49. package/src/js/core/cover.js +11 -5
  50. package/src/js/core/drop.js +13 -5
  51. package/src/js/core/dropnav.js +42 -14
  52. package/src/js/core/form-custom.js +3 -1
  53. package/src/js/core/height-match.js +3 -1
  54. package/src/js/core/navbar.js +6 -2
  55. package/src/js/core/offcanvas.js +3 -1
  56. package/src/js/core/sticky.js +6 -2
  57. package/src/js/core/switcher.js +18 -7
  58. package/src/js/core/toggle.js +18 -6
  59. package/src/js/core/video.js +6 -6
  60. package/src/js/mixin/modal.js +3 -1
  61. package/src/js/mixin/slider-autoplay.js +3 -1
  62. package/src/js/mixin/slider-drag.js +6 -2
  63. package/src/js/mixin/slider-nav.js +12 -4
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "uikit",
3
3
  "title": "UIkit",
4
4
  "description": "UIkit is a lightweight and modular front-end framework for developing fast and powerful web interfaces.",
5
- "version": "3.20.9-dev.2cb573699",
5
+ "version": "3.20.9-dev.2d9611923",
6
6
  "main": "dist/js/uikit.js",
7
7
  "style": "dist/css/uikit.css",
8
8
  "sideEffects": [
@@ -24,7 +24,7 @@ export function registerEvent(instance, event, key) {
24
24
  : { name: key, handler: event };
25
25
  el = isFunction(el) ? el.call(instance, instance) : el || instance.$el;
26
26
 
27
- if (!el || (isArray(el) && !el.length) || (filter && !filter.call(instance, instance))) {
27
+ if (!el || (isArray(el) && !el.length) || (filter && !filter.call(instance))) {
28
28
  return;
29
29
  }
30
30
 
@@ -72,7 +72,9 @@ export default {
72
72
  events: {
73
73
  name: 'click keydown',
74
74
 
75
- delegate: ({ attrItem }) => `[${attrItem}],[data-${attrItem}]`,
75
+ delegate() {
76
+ return `[${this.attrItem}],[data-${this.attrItem}]`;
77
+ },
76
78
 
77
79
  handler(e) {
78
80
  if (e.type === 'keydown' && e.keyCode !== keyMap.SPACE) {
@@ -85,7 +85,9 @@ export default {
85
85
 
86
86
  self: true,
87
87
 
88
- delegate: ({ selList }) => `${selList} > *`,
88
+ delegate() {
89
+ return `${this.selList} > *`;
90
+ },
89
91
 
90
92
  handler(e) {
91
93
  if (!e.defaultPrevented) {
@@ -31,7 +31,9 @@ export default {
31
31
  events: {
32
32
  name: 'click',
33
33
 
34
- delegate: ({ toggle }) => `${toggle}:not(.uk-disabled)`,
34
+ delegate() {
35
+ return `${this.toggle}:not(.uk-disabled)`;
36
+ },
35
37
 
36
38
  handler(e) {
37
39
  e.preventDefault();
@@ -18,7 +18,9 @@ export default {
18
18
 
19
19
  self: true,
20
20
 
21
- el: ({ item }) => item,
21
+ el() {
22
+ return this.item;
23
+ },
22
24
 
23
25
  handler({ type, detail: { percent, duration, timing, dir } }) {
24
26
  fastdom.read(() => {
@@ -41,7 +43,9 @@ export default {
41
43
 
42
44
  self: true,
43
45
 
44
- el: ({ item }) => item,
46
+ el() {
47
+ return this.item;
48
+ },
45
49
 
46
50
  handler() {
47
51
  Transition.cancel(this.$el);
@@ -53,7 +57,9 @@ export default {
53
57
 
54
58
  self: true,
55
59
 
56
- el: ({ item }) => item,
60
+ el() {
61
+ return this.item;
62
+ },
57
63
 
58
64
  handler({ type, detail: { percent, dir } }) {
59
65
  fastdom.read(() => {
@@ -101,7 +101,9 @@ export default {
101
101
  {
102
102
  name: 'click keydown',
103
103
 
104
- delegate: ({ targets, $props }) => `${targets} ${$props.toggle}`,
104
+ delegate() {
105
+ return `${this.targets} ${this.$props.toggle}`;
106
+ },
105
107
 
106
108
  async handler(e) {
107
109
  if (e.type === 'keydown' && e.keyCode !== keyMap.SPACE) {
@@ -121,7 +123,9 @@ export default {
121
123
 
122
124
  self: true,
123
125
 
124
- delegate: ({ targets }) => targets,
126
+ delegate() {
127
+ return this.targets;
128
+ },
125
129
 
126
130
  handler() {
127
131
  this.$emit();
@@ -21,7 +21,9 @@ export default {
21
21
  events: {
22
22
  name: 'click',
23
23
 
24
- delegate: ({ selClose }) => selClose,
24
+ delegate() {
25
+ return this.selClose;
26
+ },
25
27
 
26
28
  handler(e) {
27
29
  e.preventDefault();
@@ -14,18 +14,20 @@ export default {
14
14
  automute: true,
15
15
  },
16
16
 
17
- created() {
18
- this.useObjectFit = isTag(this.$el, 'img', 'video');
17
+ events: {
18
+ 'load loadedmetadata'() {
19
+ this.$emit('resize');
20
+ },
19
21
  },
20
22
 
21
23
  observe: resize({
22
- target: ({ $el }) => getPositionedParent($el) || parent($el),
23
- filter: ({ useObjectFit }) => !useObjectFit,
24
+ target: ({ $el }) => [getPositionedParent($el) || parent($el)],
25
+ filter: ({ $el }) => !useObjectFit($el),
24
26
  }),
25
27
 
26
28
  update: {
27
29
  read() {
28
- if (this.useObjectFit) {
30
+ if (useObjectFit(this.$el)) {
29
31
  return false;
30
32
  }
31
33
 
@@ -78,3 +80,7 @@ function getPositionedParent(el) {
78
80
  }
79
81
  }
80
82
  }
83
+
84
+ function useObjectFit(el) {
85
+ return isTag(el, 'img', 'video');
86
+ }
@@ -106,7 +106,7 @@ export default {
106
106
  },
107
107
 
108
108
  beforeConnect() {
109
- this.clsDrop = this.$props.clsDrop || this.$options.id;
109
+ this.clsDrop = this.$props.clsDrop || `uk-${this.$options.name}`;
110
110
  },
111
111
 
112
112
  connected() {
@@ -131,7 +131,9 @@ export default {
131
131
  {
132
132
  name: 'click',
133
133
 
134
- delegate: () => '.uk-drop-close',
134
+ delegate() {
135
+ return '.uk-drop-close';
136
+ },
135
137
 
136
138
  handler(e) {
137
139
  e.preventDefault();
@@ -142,7 +144,9 @@ export default {
142
144
  {
143
145
  name: 'click',
144
146
 
145
- delegate: () => 'a[href*="#"]',
147
+ delegate() {
148
+ return 'a[href*="#"]';
149
+ },
146
150
 
147
151
  handler({ defaultPrevented, current }) {
148
152
  const { hash } = current;
@@ -208,7 +212,9 @@ export default {
208
212
  {
209
213
  name: `${pointerEnter} focusin`,
210
214
 
211
- filter: ({ mode }) => includes(mode, 'hover'),
215
+ filter() {
216
+ return includes(this.mode, 'hover');
217
+ },
212
218
 
213
219
  handler(e) {
214
220
  if (!isTouch(e)) {
@@ -220,7 +226,9 @@ export default {
220
226
  {
221
227
  name: `${pointerLeave} focusout`,
222
228
 
223
- filter: ({ mode }) => includes(mode, 'hover'),
229
+ filter() {
230
+ return includes(this.mode, 'hover');
231
+ },
224
232
 
225
233
  handler(e) {
226
234
  if (!isTouch(e) && e.relatedTarget) {
@@ -128,7 +128,9 @@ export default {
128
128
  {
129
129
  name: 'mouseover focusin',
130
130
 
131
- delegate: ({ selNavItem }) => selNavItem,
131
+ delegate() {
132
+ return this.selNavItem;
133
+ },
132
134
 
133
135
  handler({ current }) {
134
136
  const active = this.getActive();
@@ -149,7 +151,9 @@ export default {
149
151
 
150
152
  self: true,
151
153
 
152
- delegate: ({ selNavItem }) => selNavItem,
154
+ delegate() {
155
+ return this.selNavItem;
156
+ },
153
157
 
154
158
  handler(e) {
155
159
  const { current, keyCode } = e;
@@ -167,9 +171,13 @@ export default {
167
171
  {
168
172
  name: 'keydown',
169
173
 
170
- el: ({ dropContainer }) => dropContainer,
174
+ el() {
175
+ return this.dropContainer;
176
+ },
171
177
 
172
- delegate: ({ clsDrop }) => `.${clsDrop}`,
178
+ delegate() {
179
+ return `.${this.clsDrop}`;
180
+ },
173
181
 
174
182
  handler(e) {
175
183
  const { current, keyCode } = e;
@@ -212,9 +220,13 @@ export default {
212
220
  {
213
221
  name: 'mouseleave',
214
222
 
215
- el: ({ dropbar }) => dropbar,
223
+ el() {
224
+ return this.dropbar;
225
+ },
216
226
 
217
- filter: ({ dropbar }) => dropbar,
227
+ filter() {
228
+ return this.dropbar;
229
+ },
218
230
 
219
231
  handler() {
220
232
  const active = this.getActive();
@@ -232,9 +244,13 @@ export default {
232
244
  {
233
245
  name: 'beforeshow',
234
246
 
235
- el: ({ dropContainer }) => dropContainer,
247
+ el() {
248
+ return this.dropContainer;
249
+ },
236
250
 
237
- filter: ({ dropbar }) => dropbar,
251
+ filter() {
252
+ return this.dropbar;
253
+ },
238
254
 
239
255
  handler({ target }) {
240
256
  if (!this.isDropbarDrop(target)) {
@@ -252,9 +268,13 @@ export default {
252
268
  {
253
269
  name: 'show',
254
270
 
255
- el: ({ dropContainer }) => dropContainer,
271
+ el() {
272
+ return this.dropContainer;
273
+ },
256
274
 
257
- filter: ({ dropbar }) => dropbar,
275
+ filter() {
276
+ return this.dropbar;
277
+ },
258
278
 
259
279
  handler({ target }) {
260
280
  if (!this.isDropbarDrop(target)) {
@@ -286,9 +306,13 @@ export default {
286
306
  {
287
307
  name: 'beforehide',
288
308
 
289
- el: ({ dropContainer }) => dropContainer,
309
+ el() {
310
+ return this.dropContainer;
311
+ },
290
312
 
291
- filter: ({ dropbar }) => dropbar,
313
+ filter() {
314
+ return this.dropbar;
315
+ },
292
316
 
293
317
  handler(e) {
294
318
  const active = this.getActive();
@@ -309,9 +333,13 @@ export default {
309
333
  {
310
334
  name: 'hide',
311
335
 
312
- el: ({ dropContainer }) => dropContainer,
336
+ el() {
337
+ return this.dropContainer;
338
+ },
313
339
 
314
- filter: ({ dropbar }) => dropbar,
340
+ filter() {
341
+ return this.dropbar;
342
+ },
315
343
 
316
344
  handler({ target }) {
317
345
  if (!this.isDropbarDrop(target)) {
@@ -64,7 +64,9 @@ export default {
64
64
  {
65
65
  name: 'reset',
66
66
 
67
- el: ({ $el }) => $el.closest('form'),
67
+ el() {
68
+ return this.$el.closest('form');
69
+ },
68
70
 
69
71
  handler() {
70
72
  this.$emit();
@@ -28,7 +28,9 @@ export default {
28
28
  // Hidden elements may change height when fonts load
29
29
  name: 'loadingdone',
30
30
 
31
- el: () => document.fonts,
31
+ el() {
32
+ return document.fonts;
33
+ },
32
34
 
33
35
  handler() {
34
36
  this.$emit('resize');
@@ -39,7 +39,9 @@ export default {
39
39
  {
40
40
  name: 'show',
41
41
 
42
- el: ({ dropContainer }) => dropContainer,
42
+ el() {
43
+ return this.dropContainer;
44
+ },
43
45
 
44
46
  handler({ target }) {
45
47
  if (
@@ -54,7 +56,9 @@ export default {
54
56
  {
55
57
  name: 'hide',
56
58
 
57
- el: ({ dropContainer }) => dropContainer,
59
+ el() {
60
+ return this.dropContainer;
61
+ },
58
62
 
59
63
  async handler() {
60
64
  await awaitMacroTask();
@@ -81,7 +81,9 @@ export default {
81
81
  self: true,
82
82
  passive: false,
83
83
 
84
- filter: ({ overlay }) => overlay,
84
+ filter() {
85
+ return this.overlay;
86
+ },
85
87
 
86
88
  handler(e) {
87
89
  e.cancelable && e.preventDefault();
@@ -115,9 +115,13 @@ export default {
115
115
  {
116
116
  name: 'load hashchange popstate',
117
117
 
118
- el: () => window,
118
+ el() {
119
+ return window;
120
+ },
119
121
 
120
- filter: ({ targetOffset }) => targetOffset !== false,
122
+ filter() {
123
+ return this.targetOffset !== false;
124
+ },
121
125
 
122
126
  handler() {
123
127
  const { scrollingElement } = document;
@@ -104,7 +104,9 @@ export default {
104
104
  {
105
105
  name: 'click keydown',
106
106
 
107
- delegate: ({ toggle }) => toggle,
107
+ delegate() {
108
+ return this.toggle;
109
+ },
108
110
 
109
111
  handler(e) {
110
112
  if (
@@ -120,7 +122,9 @@ export default {
120
122
  {
121
123
  name: 'keydown',
122
124
 
123
- delegate: ({ toggle }) => toggle,
125
+ delegate() {
126
+ return this.toggle;
127
+ },
124
128
 
125
129
  handler(e) {
126
130
  const { current, keyCode } = e;
@@ -154,10 +158,13 @@ export default {
154
158
  {
155
159
  name: 'click',
156
160
 
157
- el: ({ $el, connects, itemNav }) =>
158
- connects.concat(itemNav ? queryAll(itemNav, $el) : []),
161
+ el() {
162
+ return this.connects.concat(this.itemNav ? queryAll(this.itemNav, this.$el) : []);
163
+ },
159
164
 
160
- delegate: ({ attrItem }) => `[${attrItem}],[data-${attrItem}]`,
165
+ delegate() {
166
+ return `[${this.attrItem}],[data-${this.attrItem}]`;
167
+ },
161
168
 
162
169
  handler(e) {
163
170
  if (e.target.closest('a,button')) {
@@ -170,9 +177,13 @@ export default {
170
177
  {
171
178
  name: 'swipeRight swipeLeft',
172
179
 
173
- filter: ({ swiping }) => swiping,
180
+ filter() {
181
+ return this.swiping;
182
+ },
174
183
 
175
- el: ({ connects }) => connects,
184
+ el() {
185
+ return this.connects;
186
+ },
176
187
 
177
188
  handler({ type }) {
178
189
  this.show(endsWith(type, 'Left') ? 'next' : 'previous');
@@ -67,7 +67,9 @@ export default {
67
67
  {
68
68
  name: pointerDown,
69
69
 
70
- filter: ({ mode }) => includes(mode, 'hover'),
70
+ filter() {
71
+ return includes(this.mode, 'hover');
72
+ },
71
73
 
72
74
  handler(e) {
73
75
  this._preventClick = null;
@@ -99,7 +101,9 @@ export default {
99
101
  // where pointerleave is triggered immediately after pointerenter on scroll
100
102
  name: `mouseenter mouseleave ${pointerEnter} ${pointerLeave} focus blur`,
101
103
 
102
- filter: ({ mode }) => includes(mode, 'hover'),
104
+ filter() {
105
+ return includes(this.mode, 'hover');
106
+ },
103
107
 
104
108
  handler(e) {
105
109
  if (isTouch(e) || this.$el.disabled) {
@@ -137,7 +141,9 @@ export default {
137
141
  {
138
142
  name: 'keydown',
139
143
 
140
- filter: ({ $el, mode }) => includes(mode, 'click') && !isTag($el, 'input'),
144
+ filter() {
145
+ return includes(this.mode, 'click') && !isTag(this.$el, 'input');
146
+ },
141
147
 
142
148
  handler(e) {
143
149
  if (e.keyCode === KEY_SPACE) {
@@ -150,7 +156,9 @@ export default {
150
156
  {
151
157
  name: 'click',
152
158
 
153
- filter: ({ mode }) => ['click', 'hover'].some((m) => includes(mode, m)),
159
+ filter() {
160
+ return ['click', 'hover'].some((mode) => includes(this.mode, mode));
161
+ },
154
162
 
155
163
  handler(e) {
156
164
  let link;
@@ -173,9 +181,13 @@ export default {
173
181
  {
174
182
  name: 'mediachange',
175
183
 
176
- filter: ({ mode }) => includes(mode, 'media'),
184
+ filter() {
185
+ return includes(this.mode, 'media');
186
+ },
177
187
 
178
- el: ({ target }) => target,
188
+ el() {
189
+ return this.target;
190
+ },
179
191
 
180
192
  handler(e, mediaObj) {
181
193
  if (mediaObj.matches ^ this.isToggled(this.target)) {
@@ -51,9 +51,9 @@ export default {
51
51
  events: [
52
52
  {
53
53
  name: `${pointerEnter} focusin`,
54
-
55
- filter: ({ autoplay }) => includes(autoplay, 'hover'),
56
-
54
+ filter() {
55
+ return includes(this.autoplay, 'hover');
56
+ },
57
57
  handler(e) {
58
58
  if (!isTouch(e) || !isPlaying(this.$el)) {
59
59
  play(this.$el);
@@ -65,9 +65,9 @@ export default {
65
65
 
66
66
  {
67
67
  name: `${pointerLeave} focusout`,
68
-
69
- filter: ({ autoplay }) => includes(autoplay, 'hover'),
70
-
68
+ filter() {
69
+ return includes(this.autoplay, 'hover');
70
+ },
71
71
  handler(e) {
72
72
  if (!isTouch(e)) {
73
73
  pause(this.$el);
@@ -77,7 +77,9 @@ export default {
77
77
  {
78
78
  name: 'click',
79
79
 
80
- delegate: ({ selClose }) => `${selClose},a[href*="#"]`,
80
+ delegate() {
81
+ return `${this.selClose},a[href*="#"]`;
82
+ },
81
83
 
82
84
  handler(e) {
83
85
  const { current, defaultPrevented } = e;
@@ -32,7 +32,9 @@ export default {
32
32
 
33
33
  el: () => document,
34
34
 
35
- filter: ({ autoplay }) => autoplay,
35
+ filter() {
36
+ return this.autoplay;
37
+ },
36
38
 
37
39
  handler() {
38
40
  if (document.hidden) {
@@ -48,7 +48,9 @@ export default {
48
48
 
49
49
  passive: true,
50
50
 
51
- delegate: ({ selList }) => `${selList} > *`,
51
+ delegate() {
52
+ return `${this.selList} > *`;
53
+ },
52
54
 
53
55
  handler(e) {
54
56
  if (
@@ -77,7 +79,9 @@ export default {
77
79
  {
78
80
  // iOS workaround for slider stopping if swiping fast
79
81
  name: pointerMove,
80
- el: ({ list }) => list,
82
+ el() {
83
+ return this.list;
84
+ },
81
85
  handler: noop,
82
86
  ...pointerOptions,
83
87
  },
@@ -147,9 +147,13 @@ export default {
147
147
  {
148
148
  name: 'click keydown',
149
149
 
150
- delegate: ({ selNavItem }) => selNavItem,
150
+ delegate() {
151
+ return this.selNavItem;
152
+ },
151
153
 
152
- filter: ({ parallax }) => !parallax,
154
+ filter() {
155
+ return !this.parallax;
156
+ },
153
157
 
154
158
  handler(e) {
155
159
  if (
@@ -170,9 +174,13 @@ export default {
170
174
  {
171
175
  name: 'keydown',
172
176
 
173
- delegate: ({ selNavItem }) => selNavItem,
177
+ delegate() {
178
+ return this.selNavItem;
179
+ },
174
180
 
175
- filter: ({ parallax }) => !parallax,
181
+ filter() {
182
+ return !this.parallax;
183
+ },
176
184
 
177
185
  handler(e) {
178
186
  const { current, keyCode } = e;