uikit 3.15.1-dev.a99898921 → 3.15.2-dev.c376993b7

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 (49) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/css/uikit-core-rtl.css +1 -1
  3. package/dist/css/uikit-core-rtl.min.css +1 -1
  4. package/dist/css/uikit-core.css +1 -1
  5. package/dist/css/uikit-core.min.css +1 -1
  6. package/dist/css/uikit-rtl.css +1 -1
  7. package/dist/css/uikit-rtl.min.css +1 -1
  8. package/dist/css/uikit.css +1 -1
  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 +1 -1
  13. package/dist/js/components/filter.min.js +1 -1
  14. package/dist/js/components/lightbox-panel.js +1 -2
  15. package/dist/js/components/lightbox-panel.min.js +1 -1
  16. package/dist/js/components/lightbox.js +1 -2
  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 +1 -1
  31. package/dist/js/components/sortable.min.js +1 -1
  32. package/dist/js/components/tooltip.js +1 -1
  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 +39 -43
  37. package/dist/js/uikit-core.min.js +2 -2
  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 +39 -44
  41. package/dist/js/uikit.min.js +2 -2
  42. package/package.json +4 -4
  43. package/src/js/components/lightbox-panel.js +0 -1
  44. package/src/js/core/drop.js +5 -1
  45. package/src/js/core/navbar.js +16 -28
  46. package/src/js/core/scroll.js +1 -1
  47. package/src/js/core/video.js +5 -0
  48. package/tests/navbar.html +49 -31
  49. package/tests/position.html +1 -1
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.15.1-dev.a99898921",
5
+ "version": "3.15.2-dev.c376993b7",
6
6
  "main": "dist/js/uikit.js",
7
7
  "style": "dist/css/uikit.css",
8
8
  "sideEffects": [
@@ -41,9 +41,9 @@
41
41
  "@rollup/plugin-replace": "^4.0.0",
42
42
  "archiver": "^5.3.1",
43
43
  "camelcase": "^7.0.0",
44
- "clean-css": "^5.3.0",
44
+ "clean-css": "^5.3.1",
45
45
  "dateformat": "^5.0.3",
46
- "esbuild": "^0.14.48",
46
+ "esbuild": "^0.14.49",
47
47
  "eslint": "^8.19.0",
48
48
  "eslint-config-prettier": "^8.5.0",
49
49
  "fs-extra": "^10.1.0",
@@ -54,7 +54,7 @@
54
54
  "number-precision": "^1.5.2",
55
55
  "p-limit": "^4.0.0",
56
56
  "prettier": "^2.7.1",
57
- "rollup": "^2.76.0",
57
+ "rollup": "^2.77.0",
58
58
  "rollup-plugin-esbuild": "^4.9.1",
59
59
  "rollup-plugin-html": "^0.2.1",
60
60
  "rollup-plugin-modify": "^3.0.0",
@@ -207,7 +207,6 @@ export default {
207
207
  let matches;
208
208
  const iframeAttrs = {
209
209
  frameborder: '0',
210
- allow: 'autoplay',
211
210
  allowfullscreen: '',
212
211
  style: 'max-width: 100%; box-sizing: border-box;',
213
212
  'uk-responsive': '',
@@ -284,7 +284,11 @@ export default {
284
284
  })(),
285
285
 
286
286
  ...(this.autoUpdate
287
- ? [on([document, scrollParents(this.$el)], 'scroll', update)]
287
+ ? [
288
+ on([document, scrollParents(this.$el)], 'scroll', update, {
289
+ passive: true,
290
+ }),
291
+ ]
288
292
  : []),
289
293
 
290
294
  ...(this.bgScroll
@@ -32,35 +32,29 @@ export default {
32
32
 
33
33
  props: {
34
34
  dropdown: String,
35
- mode: 'list',
36
35
  align: String,
37
- offset: Number,
38
- boundary: Boolean,
39
- target: Boolean,
40
- targetX: Boolean,
41
- targetY: Boolean,
42
36
  clsDrop: String,
43
- delayShow: Number,
44
- delayHide: Number,
37
+ boundary: Boolean,
45
38
  dropbar: Boolean,
46
39
  dropbarAnchor: Boolean,
47
40
  duration: Number,
41
+ mode: Boolean,
42
+ offset: Boolean,
43
+ stretch: Boolean,
44
+ delayShow: Boolean,
45
+ delayHide: Boolean,
46
+ target: Boolean,
47
+ targetX: Boolean,
48
+ targetY: Boolean,
49
+ animation: Boolean,
50
+ animateOut: Boolean,
48
51
  },
49
52
 
50
53
  data: {
51
54
  dropdown: '.uk-navbar-nav > li > a, .uk-navbar-item, .uk-navbar-toggle',
52
55
  align: isRtl ? 'right' : 'left',
53
56
  clsDrop: 'uk-navbar-dropdown',
54
- mode: undefined,
55
- offset: undefined,
56
- delayShow: undefined,
57
- delayHide: undefined,
58
- flip: false,
59
- shift: true,
60
57
  boundary: true,
61
- target: false,
62
- targetX: false,
63
- targetY: false,
64
58
  dropbar: false,
65
59
  dropbarAnchor: false,
66
60
  duration: 200,
@@ -68,18 +62,10 @@ export default {
68
62
  },
69
63
 
70
64
  computed: {
71
- boundary({ boundary }, $el) {
72
- return boundary === true ? $el : boundary;
73
- },
74
-
75
65
  dropbarAnchor({ dropbarAnchor }, $el) {
76
66
  return query(dropbarAnchor, $el) || $el;
77
67
  },
78
68
 
79
- pos({ align }) {
80
- return `bottom-${align}`;
81
- },
82
-
83
69
  dropbar: {
84
70
  get({ dropbar }) {
85
71
  if (!dropbar) {
@@ -127,8 +113,10 @@ export default {
127
113
  dropdowns.filter((el) => !this.getDropdown(el)),
128
114
  {
129
115
  ...this.$props,
130
- boundary: this.boundary,
131
- pos: this.pos,
116
+ flip: false,
117
+ shift: true,
118
+ pos: `bottom-${this.align}`,
119
+ boundary: this.boundary === true ? this.$el : this.boundary,
132
120
  }
133
121
  );
134
122
  },
@@ -375,7 +363,7 @@ export default {
375
363
  return;
376
364
  }
377
365
 
378
- this._observer.disconnect();
366
+ this._observer?.disconnect();
379
367
 
380
368
  const active = this.getActive();
381
369
 
@@ -41,7 +41,7 @@ function registerClick(cmp) {
41
41
  function unregisterClick(cmp) {
42
42
  components.delete(cmp);
43
43
 
44
- if (!components.length) {
44
+ if (!components.size) {
45
45
  off(document, 'click', clickHandler);
46
46
  }
47
47
  }
@@ -2,6 +2,7 @@ import {
2
2
  css,
3
3
  hasAttr,
4
4
  isInView,
5
+ isTag,
5
6
  isVideo,
6
7
  isVisible,
7
8
  mute,
@@ -30,6 +31,10 @@ export default {
30
31
  this.$el.preload = 'none';
31
32
  }
32
33
 
34
+ if (isTag(this.$el, 'iframe') && !hasAttr(this.$el, 'allow')) {
35
+ this.$el.allow = 'autoplay';
36
+ }
37
+
33
38
  if (this.automute) {
34
39
  mute(this.$el);
35
40
  }
package/tests/navbar.html CHANGED
@@ -3108,77 +3108,95 @@
3108
3108
  <td>left</td>
3109
3109
  <td>Drop alignment.</td>
3110
3110
  </tr>
3111
+ <tr>
3112
+ <td><code>boundary</code></td>
3113
+ <td>Boolean, CSS selector</td>
3114
+ <td>true</td>
3115
+ <td>Referenced element to keep Drop's visibility. By default, it's the navbar component's element.</td>
3116
+ </tr>
3117
+ <tr>
3118
+ <td><code>dropbar</code></td>
3119
+ <td>Boolean | CSS selector</td>
3120
+ <td>false</td>
3121
+ <td>The dropbar selector. If true the dropbar will be inserted automatically.</td>
3122
+ </tr>
3123
+ <tr>
3124
+ <td><code>dropbar-anchor</code></td>
3125
+ <td>Boolean | CSS selector</td>
3126
+ <td>false</td>
3127
+ <td>The dropbar anchor selector. If set, dropbar will be inserted after the anchor element.</td>
3128
+ </tr>
3129
+ <tr>
3130
+ <td><code>duration</code></td>
3131
+ <td>Number</td>
3132
+ <td>200</td>
3133
+ <td>The dropbar transition duration.</td>
3134
+ </tr>
3135
+ <tr>
3136
+ <td><code>container</code></td>
3137
+ <td>Boolean</td>
3138
+ <td>false</td>
3139
+ <td>Define a target container via a selector to specify where the drops should be appended in the DOM.</td>
3140
+ </tr>
3141
+ <tr>
3142
+ <td><code>stretch</code></td>
3143
+ <td>false|true|'x'|'y'</td>
3144
+ <td>true</td>
3145
+ <td>Stretch drop on both (true) or given axis.</td>
3146
+ </tr>
3111
3147
  <tr>
3112
3148
  <td><code>mode</code></td>
3113
3149
  <td>hover | click</td>
3114
3150
  <td>click,hover</td>
3115
- <td>Comma-separated list of dropdown trigger behavior modes.</td>
3151
+ <td>Comma-separated list of drop trigger behavior modes.</td>
3116
3152
  </tr>
3117
3153
  <tr>
3118
3154
  <td><code>delay-show</code></td>
3119
3155
  <td>Number</td>
3120
3156
  <td>0</td>
3121
- <td>Delay time in hover mode before a Drop is shown in ms.</td>
3157
+ <td>Delay time in hover mode before a drop is shown in ms.</td>
3122
3158
  </tr>
3123
3159
  <tr>
3124
3160
  <td><code>delay-hide</code></td>
3125
3161
  <td>Number</td>
3126
3162
  <td>800</td>
3127
- <td>Delay time in hover mode before a Drop is hidden in ms.</td>
3128
- </tr>
3129
- <tr>
3130
- <td><code>boundary</code></td>
3131
- <td>Boolean, CSS selector</td>
3132
- <td>true</td>
3133
- <td>Referenced element to keep Drop's visibility. By default, it's the navbar component's element.</td>
3163
+ <td>Delay time in hover mode before a drop is hidden in ms.</td>
3134
3164
  </tr>
3135
3165
  <tr>
3136
3166
  <td><code>target</code></td>
3137
3167
  <td>Boolean, CSS selector</td>
3138
3168
  <td>false</td>
3139
- <td>The element the drops are positioned to (`true` for window).</td>
3169
+ <td>The element the drop is positioned to (`true` for window).</td>
3140
3170
  </tr>
3141
3171
  <tr>
3142
3172
  <td><code>target-x</code></td>
3143
3173
  <td>Boolean, CSS selector</td>
3144
3174
  <td>false</td>
3145
- <td>The element's X axis the drops are positioned to (`true` for window).</td>
3175
+ <td>The element's X axis the drop is positioned to (`true` for window).</td>
3146
3176
  </tr>
3147
3177
  <tr>
3148
3178
  <td><code>target-y</code></td>
3149
3179
  <td>Boolean, CSS selector</td>
3150
3180
  <td>false</td>
3151
- <td>The element's Y axis the drop are positioned to (`true` for window).</td>
3152
- </tr>
3153
- <tr>
3154
- <td><code>cls-drop</code></td>
3155
- <td>String</td>
3156
- <td>'uk-navbar-dropdown'</td>
3157
- <td>The Drop container class.</td>
3181
+ <td>The element's Y axis the drop is positioned to (`true` for window).</td>
3158
3182
  </tr>
3159
3183
  <tr>
3160
3184
  <td><code>offset</code></td>
3161
3185
  <td>Number</td>
3162
3186
  <td>0</td>
3163
- <td>The offset of the Drop container.</td>
3187
+ <td>The drop offset.</td>
3164
3188
  </tr>
3165
3189
  <tr>
3166
- <td><code>dropbar</code></td>
3167
- <td>Boolean | CSS selector</td>
3168
- <td>false</td>
3169
- <td>The dropbar selector. If true the dropbar will be inserted automatically.</td>
3170
- </tr>
3171
- <tr>
3172
- <td><code>duration</code></td>
3173
- <td>Number</td>
3174
- <td>200</td>
3175
- <td>The dropbar transition duration.</td>
3190
+ <td><code>animation</code></td>
3191
+ <td>String</td>
3192
+ <td>'uk-animation-fade'</td>
3193
+ <td>Space-separated names of animations. Comma-separated for animation out.</td>
3176
3194
  </tr>
3177
3195
  <tr>
3178
- <td><code>container</code></td>
3196
+ <td><code>animate-out</code></td>
3179
3197
  <td>Boolean</td>
3180
3198
  <td>false</td>
3181
- <td>Define a target container via a selector to specify where the drops should be appended in the DOM.</td>
3199
+ <td>Use animation when closing the drop.</td>
3182
3200
  </tr>
3183
3201
  </tbody>
3184
3202
  </table>
@@ -385,7 +385,7 @@
385
385
  });
386
386
 
387
387
  on($$('select,input'), 'change', position);
388
- on(window, 'scroll', position);
388
+ on(window, 'scroll', position, { passive: true });
389
389
 
390
390
  position();
391
391