uikit 3.16.18 → 3.16.19-dev.5c9b3efc7

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 (53) 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 +2 -2
  15. package/dist/js/components/lightbox-panel.min.js +1 -1
  16. package/dist/js/components/lightbox.js +2 -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 +16 -16
  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 +2 -2
  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 +42 -66
  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 -72
  41. package/dist/js/uikit.min.js +1 -1
  42. package/package.json +1 -1
  43. package/src/js/api/observables.js +12 -9
  44. package/src/js/components/parallax.js +4 -5
  45. package/src/js/core/accordion.js +3 -3
  46. package/src/js/core/drop.js +6 -6
  47. package/src/js/core/height-viewport.js +2 -1
  48. package/src/js/core/scrollspy-nav.js +2 -2
  49. package/src/js/core/sticky.js +6 -13
  50. package/src/js/mixin/internal/scroll.js +2 -2
  51. package/src/js/mixin/position.js +2 -2
  52. package/src/js/util/observer.js +5 -34
  53. package/src/js/util/viewport.js +5 -1
package/dist/js/uikit.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! UIkit 3.16.18 | https://www.getuikit.com | (c) 2014 - 2023 YOOtheme | MIT License */
1
+ /*! UIkit 3.16.19-dev.5c9b3efc7 | 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() :
@@ -1084,35 +1084,11 @@
1084
1084
  if (hasResizeObserver) {
1085
1085
  return observe$1(ResizeObserver, targets, cb, options);
1086
1086
  }
1087
- initResizeListener();
1088
- listeners.add(cb);
1089
- return {
1090
- observe: noop,
1091
- unobserve: noop,
1092
- disconnect() {
1093
- listeners.delete(cb);
1094
- }
1095
- };
1087
+ const off = [on(window, "load resize", cb), on(document, "loadedmetadata load", cb, true)];
1088
+ return { disconnect: () => off.map((cb2) => cb2()) };
1096
1089
  }
1097
- let listeners;
1098
- function initResizeListener() {
1099
- if (listeners) {
1100
- return;
1101
- }
1102
- listeners = /* @__PURE__ */ new Set();
1103
- let pendingResize;
1104
- const handleResize = () => {
1105
- if (pendingResize) {
1106
- return;
1107
- }
1108
- pendingResize = true;
1109
- requestAnimationFrame(() => pendingResize = false);
1110
- for (const listener of listeners) {
1111
- listener();
1112
- }
1113
- };
1114
- on(window, "load resize", handleResize);
1115
- on(document, "loadedmetadata load", handleResize, true);
1090
+ function observeViewportResize(cb) {
1091
+ return { disconnect: on([window, window.visualViewport], "resize", cb) };
1116
1092
  }
1117
1093
  function observeMutation(targets, cb, options) {
1118
1094
  return observe$1(MutationObserver, targets, cb, options);
@@ -1274,7 +1250,7 @@
1274
1250
  if (!isVisible(element)) {
1275
1251
  return 0;
1276
1252
  }
1277
- const [scrollElement] = scrollParents(element, true);
1253
+ const scrollElement = scrollParent(element, true);
1278
1254
  const { scrollHeight, scrollTop } = scrollElement;
1279
1255
  const { height: viewportHeight } = offsetViewport(scrollElement);
1280
1256
  const maxScroll = scrollHeight - viewportHeight;
@@ -1297,6 +1273,9 @@
1297
1273
  )
1298
1274
  ).reverse();
1299
1275
  }
1276
+ function scrollParent(...args) {
1277
+ return scrollParents(...args)[0];
1278
+ }
1300
1279
  function overflowParents(element) {
1301
1280
  return scrollParents(element, false, ["hidden", "clip"]);
1302
1281
  }
@@ -1598,6 +1577,7 @@
1598
1577
  observeIntersection: observeIntersection,
1599
1578
  observeMutation: observeMutation,
1600
1579
  observeResize: observeResize,
1580
+ observeViewportResize: observeViewportResize,
1601
1581
  off: off,
1602
1582
  offset: offset,
1603
1583
  offsetPosition: offsetPosition,
@@ -1630,6 +1610,7 @@
1630
1610
  removeClasses: removeClasses,
1631
1611
  replaceClass: replaceClass,
1632
1612
  scrollIntoView: scrollIntoView,
1613
+ scrollParent: scrollParent,
1633
1614
  scrollParents: scrollParents,
1634
1615
  scrolledOver: scrolledOver,
1635
1616
  selFocusable: selFocusable,
@@ -2150,7 +2131,7 @@
2150
2131
  };
2151
2132
  App.util = util;
2152
2133
  App.options = {};
2153
- App.version = "3.16.18";
2134
+ App.version = "3.16.19-dev.5c9b3efc7";
2154
2135
 
2155
2136
  const PREFIX = "uk-";
2156
2137
  const DATA = "__uikit__";
@@ -2617,18 +2598,19 @@
2617
2598
  ...options
2618
2599
  });
2619
2600
  }
2601
+ function viewport() {
2602
+ return observe((target, handler) => observeViewportResize(handler));
2603
+ }
2620
2604
  function scroll$1(options) {
2621
2605
  return observe(
2622
- function(target, handler) {
2623
- return {
2624
- disconnect: on(target, "scroll", handler, {
2625
- passive: true,
2626
- capture: true
2627
- })
2628
- };
2629
- },
2606
+ (target, handler) => ({
2607
+ disconnect: on(target, "scroll", handler, {
2608
+ passive: true,
2609
+ capture: true
2610
+ })
2611
+ }),
2630
2612
  {
2631
- target: () => window,
2613
+ target: () => document,
2632
2614
  ...options
2633
2615
  },
2634
2616
  "scroll"
@@ -2841,13 +2823,13 @@
2841
2823
  }
2842
2824
  }
2843
2825
  function keepScrollPosition(el) {
2844
- const [scrollParent] = scrollParents(el, true);
2826
+ const scrollElement = scrollParent(el, true);
2845
2827
  let frame;
2846
2828
  (function scroll() {
2847
2829
  frame = requestAnimationFrame(() => {
2848
2830
  const { top } = el.getBoundingClientRect();
2849
2831
  if (top < 0) {
2850
- scrollParent.scrollTop += top;
2832
+ scrollElement.scrollTop += top;
2851
2833
  }
2852
2834
  scroll();
2853
2835
  });
@@ -3075,7 +3057,7 @@
3075
3057
  }
3076
3058
  };
3077
3059
  function storeScrollPosition(element) {
3078
- const [scrollElement] = scrollParents(element);
3060
+ const scrollElement = scrollParent(element);
3079
3061
  const { scrollTop } = scrollElement;
3080
3062
  return () => {
3081
3063
  if (scrollTop !== scrollElement.scrollTop) {
@@ -3107,7 +3089,7 @@
3107
3089
  if (e.targetTouches.length !== 1 || matches(e.target, 'input[type="range"')) {
3108
3090
  return;
3109
3091
  }
3110
- let [{ scrollHeight, clientHeight }] = scrollParents(e.target);
3092
+ let { scrollHeight, clientHeight } = scrollParent(e.target);
3111
3093
  if (clientHeight >= scrollHeight && e.cancelable) {
3112
3094
  e.preventDefault();
3113
3095
  }
@@ -3470,12 +3452,11 @@
3470
3452
  }
3471
3453
  function listenForResize(drop) {
3472
3454
  const update = () => drop.$emit();
3473
- const off = on(window, "resize", update);
3474
- const observer = observeResize(overflowParents(drop.$el).concat(drop.target), update);
3475
- return () => {
3476
- observer.disconnect();
3477
- off();
3478
- };
3455
+ const off = [
3456
+ observeViewportResize(update),
3457
+ observeResize(overflowParents(drop.$el).concat(drop.target), update)
3458
+ ];
3459
+ return () => off.map((observer) => observer.disconnect());
3479
3460
  }
3480
3461
  function listenForScroll(drop) {
3481
3462
  return on([document, ...overflowParents(drop.$el)], "scroll", () => drop.$emit(), {
@@ -4153,7 +4134,7 @@
4153
4134
  let minHeight = "";
4154
4135
  const box = boxModelAdjust(this.$el, "height", "content-box");
4155
4136
  const { body, scrollingElement } = document;
4156
- const [scrollElement] = scrollParents(this.$el);
4137
+ const scrollElement = scrollParent(this.$el);
4157
4138
  const { height: viewportHeight } = offsetViewport(
4158
4139
  scrollElement === body ? scrollingElement : scrollElement
4159
4140
  );
@@ -5450,7 +5431,7 @@
5450
5431
  if (!length || !isVisible(this.$el)) {
5451
5432
  return false;
5452
5433
  }
5453
- const [scrollElement] = scrollParents(targets, true);
5434
+ const scrollElement = scrollParent(targets, true);
5454
5435
  const { scrollTop, scrollHeight } = scrollElement;
5455
5436
  const viewport = offsetViewport(scrollElement);
5456
5437
  const max = scrollHeight - viewport.height;
@@ -5542,17 +5523,12 @@
5542
5523
  remove$1(this.placeholder);
5543
5524
  this.placeholder = null;
5544
5525
  },
5545
- observe: [resize({ target: ({ $el }) => [$el, document.documentElement] }), scroll$1()],
5526
+ observe: [
5527
+ resize({ target: ({ $el }) => [$el, document.scrollingElement] }),
5528
+ viewport(),
5529
+ scroll$1()
5530
+ ],
5546
5531
  events: [
5547
- {
5548
- name: "resize",
5549
- el() {
5550
- return [window, window.visualViewport];
5551
- },
5552
- handler() {
5553
- this.$emit("resize");
5554
- }
5555
- },
5556
5532
  {
5557
5533
  name: "load hashchange popstate",
5558
5534
  el() {
@@ -5606,11 +5582,11 @@
5606
5582
  if (hide) {
5607
5583
  this.show();
5608
5584
  }
5609
- const viewport = toPx("100vh", "height");
5585
+ const viewport2 = toPx("100vh", "height");
5610
5586
  const dynamicViewport = height(window);
5611
- const maxScrollHeight = document.scrollingElement.scrollHeight - viewport;
5587
+ const maxScrollHeight = document.scrollingElement.scrollHeight - viewport2;
5612
5588
  let position = this.position;
5613
- if (this.overflowFlip && height$1 > viewport) {
5589
+ if (this.overflowFlip && height$1 > viewport2) {
5614
5590
  position = position === "top" ? "bottom" : "top";
5615
5591
  }
5616
5592
  const referenceElement = this.isFixed ? this.placeholder : this.$el;
@@ -5618,7 +5594,7 @@
5618
5594
  if (position === "bottom" && (height$1 < dynamicViewport || this.overflowFlip)) {
5619
5595
  offset$1 += dynamicViewport - height$1;
5620
5596
  }
5621
- const overflow = this.overflowFlip ? 0 : Math.max(0, height$1 + offset$1 - viewport);
5597
+ const overflow = this.overflowFlip ? 0 : Math.max(0, height$1 + offset$1 - viewport2);
5622
5598
  const topOffset = offset(referenceElement).top;
5623
5599
  const elHeight = offset(this.$el).height;
5624
5600
  const start = (this.start === false ? topOffset : parseProp(this.start, this.$el, topOffset)) - offset$1;
@@ -8197,9 +8173,9 @@
8197
8173
  start({ start }) {
8198
8174
  return toPx(start, "height", this.target, true);
8199
8175
  },
8200
- end({ end, viewport }) {
8176
+ end({ end, viewport: viewport2 }) {
8201
8177
  return toPx(
8202
- end || (viewport = (1 - viewport) * 100) && `${viewport}vh+${viewport}%`,
8178
+ end || (viewport2 = (1 - viewport2) * 100) && `${viewport2}vh+${viewport2}%`,
8203
8179
  "height",
8204
8180
  this.target,
8205
8181
  true
@@ -8207,10 +8183,9 @@
8207
8183
  }
8208
8184
  },
8209
8185
  observe: [
8210
- resize({
8211
- target: ({ $el, target }) => [$el, target]
8212
- }),
8213
- scroll$1()
8186
+ resize({ target: ({ $el, target }) => [$el, target, scrollParent(target, true)] }),
8187
+ scroll$1(),
8188
+ viewport()
8214
8189
  ],
8215
8190
  update: {
8216
8191
  read({ percent }, types) {