uikit 3.16.4-dev.067bed046 → 3.16.4-dev.144c329c9

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 (52) hide show
  1. package/CHANGELOG.md +2 -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 +3 -6
  13. package/dist/js/components/filter.min.js +1 -1
  14. package/dist/js/components/lightbox-panel.js +1 -1
  15. package/dist/js/components/lightbox-panel.min.js +1 -1
  16. package/dist/js/components/lightbox.js +1 -1
  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 +26 -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 +20 -21
  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 +47 -26
  41. package/dist/js/uikit.min.js +1 -1
  42. package/package.json +1 -1
  43. package/src/js/api/hooks.js +2 -6
  44. package/src/js/components/filter.js +2 -6
  45. package/src/js/components/slider.js +33 -0
  46. package/src/js/core/cover.js +4 -4
  47. package/src/js/core/drop.js +2 -1
  48. package/src/js/core/height-match.js +5 -10
  49. package/src/js/core/scrollspy.js +1 -2
  50. package/src/js/util/lang.js +4 -0
  51. package/src/js/util/observer.js +3 -1
  52. package/src/js/util/viewport.js +1 -1
package/dist/js/uikit.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! UIkit 3.16.4-dev.067bed046 | https://www.getuikit.com | (c) 2014 - 2023 YOOtheme | MIT License */
1
+ /*! UIkit 3.16.4-dev.144c329c9 | https://www.getuikit.com | (c) 2014 - 2023 YOOtheme | MIT License */
2
2
 
3
3
  (function (global, factory) {
4
4
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
@@ -136,6 +136,9 @@
136
136
  const seen = /* @__PURE__ */ new Set();
137
137
  return array.filter(({ [prop]: check }) => seen.has(check) ? false : seen.add(check));
138
138
  }
139
+ function pick(obj, props) {
140
+ return props.reduce((res, prop) => ({ ...res, [prop]: obj[prop] }), {});
141
+ }
139
142
  function clamp(number, min = 0, max = 1) {
140
143
  return Math.min(Math.max(toNumber(number) || 0, min), max);
141
144
  }
@@ -1084,6 +1087,8 @@
1084
1087
  initResizeListener();
1085
1088
  listeners.add(cb);
1086
1089
  return {
1090
+ observe: noop,
1091
+ unobserve: noop,
1087
1092
  disconnect() {
1088
1093
  listeners.delete(cb);
1089
1094
  }
@@ -1389,10 +1394,10 @@
1389
1394
  function offsetViewport(scrollElement) {
1390
1395
  const window = toWindow(scrollElement);
1391
1396
  const {
1397
+ visualViewport,
1392
1398
  document: { documentElement }
1393
1399
  } = window;
1394
1400
  let viewportElement = scrollElement === scrollingElement(scrollElement) ? window : scrollElement;
1395
- const { visualViewport } = window;
1396
1401
  if (isWindow(viewportElement) && visualViewport) {
1397
1402
  let { height, width, scale, pageTop: top, pageLeft: left } = visualViewport;
1398
1403
  height = Math.round(height * scale);
@@ -1694,6 +1699,7 @@
1694
1699
  parents: parents,
1695
1700
  parseOptions: parseOptions,
1696
1701
  pause: pause,
1702
+ pick: pick,
1697
1703
  play: play,
1698
1704
  pointInRect: pointInRect,
1699
1705
  pointerCancel: pointerCancel,
@@ -1883,15 +1889,11 @@
1883
1889
  }
1884
1890
  }
1885
1891
  function runWatches(initial) {
1886
- const {
1887
- $options: { computed }
1888
- } = this;
1889
1892
  const values = { ...this._computed };
1890
1893
  this._computed = {};
1891
- for (const key in computed) {
1892
- const { watch, immediate } = computed[key];
1894
+ for (const [key, { watch, immediate }] of Object.entries(this.$options.computed || {})) {
1893
1895
  if (watch && (initial && immediate || hasOwn(values, key) && !isEqual(values[key], this[key]))) {
1894
- watch.call(this, this[key], values[key]);
1896
+ watch.call(this, this[key], initial ? void 0 : values[key]);
1895
1897
  }
1896
1898
  }
1897
1899
  }
@@ -2252,7 +2254,7 @@
2252
2254
  UIkit.data = "__uikit__";
2253
2255
  UIkit.prefix = "uk-";
2254
2256
  UIkit.options = {};
2255
- UIkit.version = "3.16.4-dev.067bed046";
2257
+ UIkit.version = "3.16.4-dev.144c329c9";
2256
2258
  globalAPI(UIkit);
2257
2259
  hooksAPI(UIkit);
2258
2260
  stateAPI(UIkit);
@@ -2907,15 +2909,15 @@
2907
2909
  const { ratio, cover } = Dimensions;
2908
2910
  const { $el, width, height } = this;
2909
2911
  let dim = { width, height };
2910
- if (!dim.width || !dim.height) {
2912
+ if (!width || !height) {
2911
2913
  const intrinsic = {
2912
2914
  width: $el.naturalWidth || $el.videoWidth || $el.clientWidth,
2913
2915
  height: $el.naturalHeight || $el.videoHeight || $el.clientHeight
2914
2916
  };
2915
- if (dim.width) {
2916
- dim = ratio(intrinsic, "width", dim.width);
2917
+ if (width) {
2918
+ dim = ratio(intrinsic, "width", width);
2917
2919
  } else if (height) {
2918
- dim = ratio(intrinsic, "height", dim.height);
2920
+ dim = ratio(intrinsic, "height", height);
2919
2921
  } else {
2920
2922
  dim = intrinsic;
2921
2923
  }
@@ -3102,7 +3104,7 @@
3102
3104
  if (this.toggle && !this.targetEl) {
3103
3105
  this.targetEl = createToggleComponent(this);
3104
3106
  }
3105
- this._style = (({ width, height }) => ({ width, height }))(this.$el.style);
3107
+ this._style = pick(this.$el.style, ["width", "height"]);
3106
3108
  },
3107
3109
  disconnected() {
3108
3110
  if (this.isActive()) {
@@ -4079,7 +4081,6 @@
4079
4081
  if (elements.length < 2) {
4080
4082
  return { heights: [""], elements };
4081
4083
  }
4082
- css(elements, "minHeight", "");
4083
4084
  let heights = elements.map(getHeight);
4084
4085
  const max = Math.max(...heights);
4085
4086
  return {
@@ -4088,15 +4089,13 @@
4088
4089
  };
4089
4090
  }
4090
4091
  function getHeight(element) {
4091
- let style = false;
4092
+ const style = pick(element.style, ["display", "minHeight"]);
4092
4093
  if (!isVisible(element)) {
4093
- style = element.style.display;
4094
4094
  css(element, "display", "block", "important");
4095
4095
  }
4096
+ css(element, "minHeight", "");
4096
4097
  const height = dimensions$1(element).height - boxModelAdjust(element, "height", "content-box");
4097
- if (style !== false) {
4098
- css(element, "display", style);
4099
- }
4098
+ css(element, style);
4100
4099
  return height;
4101
4100
  }
4102
4101
 
@@ -5414,7 +5413,7 @@
5414
5413
  if (this.hidden) {
5415
5414
  css(filter$1(elements, `:not(.${this.inViewClass})`), "opacity", 0);
5416
5415
  }
5417
- if (!isEqual(elements, prev)) {
5416
+ if (prev) {
5418
5417
  this.$reset();
5419
5418
  }
5420
5419
  },
@@ -6651,8 +6650,8 @@
6651
6650
  get({ target }, $el) {
6652
6651
  return $$(`${target} > *`, $el);
6653
6652
  },
6654
- watch(list, old) {
6655
- if (old && !isEqualList(list, old)) {
6653
+ watch(list, prev) {
6654
+ if (prev) {
6656
6655
  this.updateState();
6657
6656
  }
6658
6657
  },
@@ -6755,9 +6754,6 @@
6755
6754
  const { filter = "", group = "", sort, order = "asc" } = getFilter(el, attr2);
6756
6755
  return isUndefined(sort) ? group in stateFilter && filter === stateFilter[group] || !filter && group && !(group in stateFilter) && !stateFilter[""] : stateSort === sort && stateOrder === order;
6757
6756
  }
6758
- function isEqualList(listA, listB) {
6759
- return listA.length === listB.length && listA.every((el) => listB.includes(el));
6760
- }
6761
6757
  function getSelector({ filter }) {
6762
6758
  let selector = "";
6763
6759
  each(filter, (value) => selector += value || "");
@@ -8441,6 +8437,31 @@
8441
8437
  center: this.center,
8442
8438
  list: this.list
8443
8439
  };
8440
+ },
8441
+ children: {
8442
+ get() {
8443
+ return children(this.list);
8444
+ },
8445
+ watch(slides, prev) {
8446
+ if (!prev) {
8447
+ this.registerObserver(
8448
+ this._resizeObserver = observeResize(slides, () => this.$emit("resize"))
8449
+ );
8450
+ }
8451
+ if (prev) {
8452
+ slides.forEach(
8453
+ (slide) => !includes(prev, slide) && this._resizeObserver.observe(slide)
8454
+ );
8455
+ prev.forEach(
8456
+ (slide) => !includes(slides, slide) && this._resizeObserver.unobserve(slide)
8457
+ );
8458
+ this.$emit();
8459
+ }
8460
+ },
8461
+ immediate: true
8462
+ },
8463
+ slides() {
8464
+ return this.children.filter(isVisible);
8444
8465
  }
8445
8466
  },
8446
8467
  connected() {