uikit 3.25.29 → 3.25.30-dev.5de718d

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 (48) hide show
  1. package/CHANGELOG.md +6 -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 +5 -10
  15. package/dist/js/components/lightbox-panel.min.js +1 -1
  16. package/dist/js/components/lightbox.js +6 -11
  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 +5 -10
  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 +5 -10
  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 +14 -10
  37. package/dist/js/uikit-core.min.js +1 -1
  38. package/dist/js/uikit-icons.js +1 -1
  39. package/dist/js/uikit-icons.min.js +1 -1
  40. package/dist/js/uikit.js +19 -20
  41. package/dist/js/uikit.min.js +1 -1
  42. package/package.json +2 -2
  43. package/src/js/components/lightbox.js +1 -1
  44. package/src/js/core/grid.js +1 -3
  45. package/src/js/core/icon.js +2 -6
  46. package/src/js/core/svg.js +22 -2
  47. package/src/js/mixin/slider-nav.js +6 -11
  48. package/src/js/util/viewport.js +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.25.29",
5
+ "version": "3.25.30-dev.5de718d",
6
6
  "main": "dist/js/uikit.js",
7
7
  "style": "dist/css/uikit.css",
8
8
  "sideEffects": [
@@ -30,7 +30,7 @@
30
30
  "url": "https://github.com/uikit/uikit/issues"
31
31
  },
32
32
  "homepage": "https://getuikit.com",
33
- "packageManager": "pnpm@12.9.1",
33
+ "packageManager": "pnpm@12.16.1",
34
34
  "devDependencies": {
35
35
  "@eslint/js": "^10.0.1",
36
36
  "@rollup/plugin-alias": "^6.0.0",
@@ -71,7 +71,7 @@ export default {
71
71
  index = findIndex(items, ({ source: src }) => source === src);
72
72
  }
73
73
 
74
- this.panel = this.panel || this.$create('lightboxPanel', { ...this.$props, items });
74
+ this.panel ||= this.$create('lightboxPanel', { ...this.$props, items });
75
75
 
76
76
  on(this.panel.$el, 'hidden', () => (this.panel = null));
77
77
 
@@ -201,8 +201,6 @@ function transpose(rows) {
201
201
  }
202
202
 
203
203
  function push(array, index, value) {
204
- if (!array[index]) {
205
- array[index] = [];
206
- }
204
+ array[index] ||= [];
207
205
  array[index].push(value);
208
206
  }
@@ -251,9 +251,7 @@ function install(UIkit) {
251
251
  if (UIkit._initialized) {
252
252
  apply(document.body, (el) =>
253
253
  each(UIkit.getComponents(el), (cmp) => {
254
- cmp.$options.isIcon &&
255
- (aliases[cmp.icon] || cmp.icon) in added &&
256
- cmp.$reset();
254
+ cmp.$options.isIcon && (aliases[cmp.icon] || cmp.icon) in added && cmp.$reset();
257
255
  }),
258
256
  );
259
257
  }
@@ -269,9 +267,7 @@ function getIcon(icon) {
269
267
  return null;
270
268
  }
271
269
 
272
- if (!parsed[icon]) {
273
- parsed[icon] = parseSVG(icons[applyRtl(icon)] || icons[icon]);
274
- }
270
+ parsed[icon] ||= parseSVG(icons[applyRtl(icon)] || icons[icon]);
275
271
 
276
272
  return parsed[icon].cloneNode(true);
277
273
  }
@@ -1,4 +1,14 @@
1
- import { addClass, attr, css, includes, isTag, memoize, once, removeAttr } from 'uikit-util';
1
+ import {
2
+ addClass,
3
+ attr,
4
+ css,
5
+ hasAttr,
6
+ includes,
7
+ isTag,
8
+ memoize,
9
+ once,
10
+ removeAttr,
11
+ } from 'uikit-util';
2
12
  import { mutation } from '../api/observables';
3
13
  import Svg, { parseSVG } from '../mixin/svg';
4
14
  import { getMaxPathLength } from '../util/svg';
@@ -78,7 +88,17 @@ function applyAttributes(el) {
78
88
  attr(el, prop, value);
79
89
  }
80
90
 
81
- el.ariaHidden = this.$el.ariaHidden;
91
+ el.ariaHidden ||= $el.ariaHidden;
92
+
93
+ if (!el.ariaHidden) {
94
+ el.ariaLabel ||= $el.ariaLabel || $el.alt || null;
95
+
96
+ if (el.ariaLabel) {
97
+ el.role ||= 'img';
98
+ } else if (hasAttr($el, 'alt')) {
99
+ el.ariaHidden = true;
100
+ }
101
+ }
82
102
 
83
103
  if (!this.$el.id) {
84
104
  removeAttr(el, 'id');
@@ -79,10 +79,7 @@ export default {
79
79
  const slide = this.slides[item];
80
80
 
81
81
  if (slide) {
82
- if (!slide.id) {
83
- slide.id = generateId(this, slide);
84
- }
85
- ariaControls = slide.id;
82
+ ariaControls = slide.id ||= generateId(this, slide);
86
83
  }
87
84
 
88
85
  ariaLabel = this.t('slideX', toFloat(cmd) + 1);
@@ -90,18 +87,14 @@ export default {
90
87
  button.role = 'tab';
91
88
  } else {
92
89
  if (this.list) {
93
- if (!this.list.id) {
94
- this.list.id = generateId(this, this.list);
95
- }
96
-
97
- ariaControls = this.list.id;
90
+ ariaControls = this.list.id ||= generateId(this, this.list);
98
91
  }
99
92
 
100
93
  ariaLabel = this.t(cmd);
101
94
  }
102
95
 
103
96
  attr(button, 'aria-controls', ariaControls);
104
- button.ariaLabel = button.ariaLabel || ariaLabel;
97
+ button.ariaLabel ||= ariaLabel;
105
98
  }
106
99
  },
107
100
 
@@ -126,7 +119,9 @@ export default {
126
119
  update: [
127
120
  {
128
121
  write() {
129
- this.navItems.concat(this.nav).forEach((el) => el && (el.hidden = this.maxIndex < 1));
122
+ this.navItems
123
+ .concat(this.nav)
124
+ .forEach((el) => el && (el.hidden = this.maxIndex < 1));
130
125
  this.updateNav();
131
126
  },
132
127
 
@@ -209,7 +209,7 @@ export function offsetViewport(scrollElement) {
209
209
 
210
210
  export function getCoveringElement(target) {
211
211
  const { document } = toWindow(target);
212
- target = target || document.body;
212
+ target ||= document.body;
213
213
  const { left, width, top } = dimensions(target);
214
214
  for (const position of top ? [0, top] : [0]) {
215
215
  let coverEl;