uikit 3.16.14-dev.f95b7902a → 3.16.15-dev.223b81aee

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 (55) hide show
  1. package/CHANGELOG.md +11 -1
  2. package/build/build.js +1 -1
  3. package/build/icons.js +1 -1
  4. package/build/less.js +1 -1
  5. package/build/prefix.js +1 -1
  6. package/build/release.js +1 -1
  7. package/build/scope.js +1 -1
  8. package/build/scss.js +1 -1
  9. package/build/util.js +1 -1
  10. package/dist/css/uikit-core-rtl.css +1 -1
  11. package/dist/css/uikit-core-rtl.min.css +1 -1
  12. package/dist/css/uikit-core.css +1 -1
  13. package/dist/css/uikit-core.min.css +1 -1
  14. package/dist/css/uikit-rtl.css +1 -1
  15. package/dist/css/uikit-rtl.min.css +1 -1
  16. package/dist/css/uikit.css +1 -1
  17. package/dist/css/uikit.min.css +1 -1
  18. package/dist/js/components/countdown.js +1 -1
  19. package/dist/js/components/countdown.min.js +1 -1
  20. package/dist/js/components/filter.js +1 -1
  21. package/dist/js/components/filter.min.js +1 -1
  22. package/dist/js/components/lightbox-panel.js +1 -1
  23. package/dist/js/components/lightbox-panel.min.js +1 -1
  24. package/dist/js/components/lightbox.js +1 -1
  25. package/dist/js/components/lightbox.min.js +1 -1
  26. package/dist/js/components/notification.js +1 -1
  27. package/dist/js/components/notification.min.js +1 -1
  28. package/dist/js/components/parallax.js +1 -1
  29. package/dist/js/components/parallax.min.js +1 -1
  30. package/dist/js/components/slider-parallax.js +1 -1
  31. package/dist/js/components/slider-parallax.min.js +1 -1
  32. package/dist/js/components/slider.js +7 -2
  33. package/dist/js/components/slider.min.js +1 -1
  34. package/dist/js/components/slideshow-parallax.js +1 -1
  35. package/dist/js/components/slideshow-parallax.min.js +1 -1
  36. package/dist/js/components/slideshow.js +1 -1
  37. package/dist/js/components/slideshow.min.js +1 -1
  38. package/dist/js/components/sortable.js +1 -1
  39. package/dist/js/components/sortable.min.js +1 -1
  40. package/dist/js/components/tooltip.js +1 -1
  41. package/dist/js/components/tooltip.min.js +1 -1
  42. package/dist/js/components/upload.js +1 -1
  43. package/dist/js/components/upload.min.js +1 -1
  44. package/dist/js/uikit-core.js +22 -18
  45. package/dist/js/uikit-core.min.js +1 -1
  46. package/dist/js/uikit-icons.js +1 -1
  47. package/dist/js/uikit-icons.min.js +1 -1
  48. package/dist/js/uikit.js +28 -19
  49. package/dist/js/uikit.min.js +1 -1
  50. package/package.json +3 -3
  51. package/src/js/components/slider.js +7 -1
  52. package/src/js/core/drop.js +2 -2
  53. package/src/js/core/sticky.js +17 -11
  54. package/src/js/core/svg.js +2 -3
  55. package/src/js/util/viewport.js +4 -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.16.14-dev.f95b7902a",
5
+ "version": "3.16.15-dev.223b81aee",
6
6
  "main": "dist/js/uikit.js",
7
7
  "style": "dist/css/uikit.css",
8
8
  "sideEffects": [
@@ -21,7 +21,7 @@
21
21
  "homepage": "https://getuikit.com",
22
22
  "packageManager": "pnpm@7.29.1",
23
23
  "devDependencies": {
24
- "@rollup/plugin-alias": "^4.0.3",
24
+ "@rollup/plugin-alias": "^5.0.0",
25
25
  "@rollup/plugin-replace": "^5.0.2",
26
26
  "archiver": "^5.3.1",
27
27
  "camelcase": "^7.0.1",
@@ -31,7 +31,7 @@
31
31
  "eslint": "^8.36.0",
32
32
  "eslint-config-prettier": "^8.8.0",
33
33
  "fs-extra": "^11.1.1",
34
- "glob": "^9.3.2",
34
+ "glob": "^10.0.0",
35
35
  "inquirer": "^9.1.5",
36
36
  "less": "^4.1.3",
37
37
  "minimist": "^1.2.8",
@@ -15,6 +15,7 @@ import {
15
15
  dimensions,
16
16
  findIndex,
17
17
  getIndex,
18
+ hasOwn,
18
19
  includes,
19
20
  isVisible,
20
21
  last,
@@ -246,7 +247,12 @@ export default {
246
247
  const active = includes(actives, slide);
247
248
  toggleClass(slide, activeClasses, active);
248
249
  attr(slide, 'aria-hidden', !active);
249
- attr($$(selFocusable, slide), 'tabindex', active ? null : -1);
250
+ for (const focusable of $$(selFocusable, slide)) {
251
+ if (!hasOwn(focusable, '_tabindex')) {
252
+ focusable._tabindex = attr(focusable, 'tabindex');
253
+ }
254
+ attr(focusable, 'tabindex', active ? focusable._tabindex : -1);
255
+ }
250
256
  }
251
257
  },
252
258
 
@@ -434,7 +434,7 @@ export default {
434
434
  css(this.$el, {
435
435
  [prop]:
436
436
  (targetOffset[start] > elOffset[start]
437
- ? targetOffset[start] -
437
+ ? targetOffset[this.inset ? end : start] -
438
438
  Math.max(
439
439
  offset(this.boundary[i])[start],
440
440
  viewports[i][start] + viewportOffset
@@ -442,7 +442,7 @@ export default {
442
442
  : Math.min(
443
443
  offset(this.boundary[i])[end],
444
444
  viewports[i][end] - viewportOffset
445
- ) - targetOffset[end]) - positionOffset,
445
+ ) - targetOffset[this.inset ? start : end]) - positionOffset,
446
446
  [`overflow-${axis}`]: 'auto',
447
447
  });
448
448
 
@@ -17,6 +17,7 @@ import {
17
17
  isVisible,
18
18
  noop,
19
19
  offsetPosition,
20
+ once,
20
21
  parent,
21
22
  query,
22
23
  remove,
@@ -96,15 +97,7 @@ export default {
96
97
  this.placeholder = null;
97
98
  },
98
99
 
99
- observe: [
100
- resize({
101
- handler() {
102
- !this.isFixed && this.$emit('resize');
103
- },
104
- }),
105
- resize({ target: () => [document.documentElement] }),
106
- scroll(),
107
- ],
100
+ observe: [resize({ target: ({ $el }) => [$el, document.documentElement] }), scroll()],
108
101
 
109
102
  events: [
110
103
  {
@@ -150,18 +143,31 @@ export default {
150
143
  });
151
144
  },
152
145
  },
146
+ {
147
+ name: 'transitionstart',
148
+
149
+ capture: true,
150
+
151
+ handler() {
152
+ this.transitionInProgress = once(
153
+ this.$el,
154
+ 'transitionend transitioncancel',
155
+ () => (this.transitionInProgress = null)
156
+ );
157
+ },
158
+ },
153
159
  ],
154
160
 
155
161
  update: [
156
162
  {
157
- read({ height, width, margin, sticky }, types) {
163
+ read({ height, width, margin, sticky }) {
158
164
  this.inactive = !this.matchMedia || !isVisible(this.$el);
159
165
 
160
166
  if (this.inactive) {
161
167
  return;
162
168
  }
163
169
 
164
- const hide = this.isFixed && types.has('resize') && !sticky;
170
+ const hide = this.isFixed && !this.transitionInProgress;
165
171
  if (hide) {
166
172
  preventTransition(this.selTarget);
167
173
  this.hide();
@@ -1,5 +1,4 @@
1
1
  import Svg from '../mixin/svg';
2
- import Class from '../mixin/class';
3
2
  import { getMaxPathLength } from '../util/svg';
4
3
  import { mutation } from '../api/observables';
5
4
  import {
@@ -16,7 +15,7 @@ import {
16
15
  } from 'uikit-util';
17
16
 
18
17
  export default {
19
- mixins: [Class, Svg],
18
+ mixins: [Svg],
20
19
 
21
20
  args: 'src',
22
21
 
@@ -76,7 +75,7 @@ export default {
76
75
  function applyAttributes(el) {
77
76
  const { $el } = this;
78
77
 
79
- addClass(el, attr($el, 'class'));
78
+ addClass(el, attr($el, 'class'), 'uk-svg');
80
79
 
81
80
  for (let i = 0; i < $el.style.length; i++) {
82
81
  const prop = $el.style[i];
@@ -171,7 +171,10 @@ export function offsetViewport(scrollElement) {
171
171
  } else {
172
172
  rect[start] += toFloat(css(viewportElement, `border-${start}-width`));
173
173
  }
174
- rect[prop] = rect[dir] = viewportElement[`client${ucfirst(prop)}`];
174
+ const subpixel = rect[prop] % 1;
175
+ rect[prop] = rect[dir] =
176
+ viewportElement[`client${ucfirst(prop)}`] -
177
+ (subpixel ? (subpixel < 0.5 ? -subpixel : 1 - subpixel) : 0);
175
178
  rect[end] = rect[prop] + rect[start];
176
179
  }
177
180
  return rect;