uikit 3.23.5 → 3.23.6-dev.4d3af55fc

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 (46) 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 +33 -39
  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 +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 +33 -39
  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 +12 -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 +44 -59
  41. package/dist/js/uikit.min.js +1 -1
  42. package/package.json +1 -1
  43. package/src/js/core/modal.js +1 -1
  44. package/src/js/core/sticky.js +1 -6
  45. package/src/js/mixin/internal/animate-fade.js +38 -42
  46. package/src/js/util/animation.js +10 -13
package/dist/js/uikit.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! UIkit 3.23.5 | https://www.getuikit.com | (c) 2014 - 2025 YOOtheme | MIT License */
1
+ /*! UIkit 3.23.6-dev.4d3af55fc | https://www.getuikit.com | (c) 2014 - 2025 YOOtheme | MIT License */
2
2
 
3
3
  (function (global, factory) {
4
4
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
@@ -639,15 +639,14 @@
639
639
  return Promise.all(
640
640
  toNodes(element).map(
641
641
  (element2) => new Promise((resolve, reject) => {
642
+ for (const name in props) {
643
+ css(element2, name);
644
+ }
642
645
  const timer = setTimeout(() => trigger(element2, transitionEnd), duration);
643
646
  once(
644
647
  element2,
645
648
  [transitionEnd, transitionCanceled],
646
649
  ({ type }) => {
647
- if (frame !== true) {
648
- css(element2, props);
649
- cancelAnimationFrame(frame);
650
- }
651
650
  clearTimeout(timer);
652
651
  removeClass(element2, clsTransition);
653
652
  css(element2, {
@@ -660,14 +659,11 @@
660
659
  { self: true }
661
660
  );
662
661
  addClass(element2, clsTransition);
663
- let frame = requestAnimationFrame(() => {
664
- frame = true;
665
- return css(element2, {
666
- transitionProperty: Object.keys(props).map(propName).join(","),
667
- transitionDuration: `${duration}ms`,
668
- transitionTimingFunction: timing,
669
- ...props
670
- });
662
+ css(element2, {
663
+ transitionProperty: Object.keys(props).map(propName).join(","),
664
+ transitionDuration: `${duration}ms`,
665
+ transitionTimingFunction: timing,
666
+ ...props
671
667
  });
672
668
  })
673
669
  )
@@ -2126,59 +2122,53 @@
2126
2122
  const index = transitionIndex(target, true);
2127
2123
  const propsIn = { opacity: 1 };
2128
2124
  const propsOut = { opacity: 0 };
2129
- const wrapIndexFn = (fn) => () => index === transitionIndex(target) ? fn() : Promise.reject();
2125
+ const isCurrentIndex = () => index === transitionIndex(target);
2126
+ const wrapIndexFn = (fn) => () => isCurrentIndex() ? fn() : Promise.reject();
2130
2127
  const leaveFn = wrapIndexFn(async () => {
2131
2128
  addClass(target, clsLeave);
2132
- await Promise.all(
2133
- getTransitionNodes(target).map(
2134
- (child, i) => new Promise(
2135
- (resolve) => setTimeout(
2136
- () => Transition.start(child, propsOut, duration / 2, "ease").then(
2137
- resolve
2138
- ),
2139
- i * stagger
2140
- )
2141
- )
2142
- )
2143
- );
2129
+ await (stagger ? Promise.all(
2130
+ getTransitionNodes(target).map(async (child, i) => {
2131
+ await awaitTimeout(i * stagger);
2132
+ return Transition.start(child, propsOut, duration / 2, "ease");
2133
+ })
2134
+ ) : Transition.start(target, propsOut, duration / 2, "ease"));
2144
2135
  removeClass(target, clsLeave);
2145
2136
  });
2146
2137
  const enterFn = wrapIndexFn(async () => {
2147
2138
  const oldHeight = height(target);
2148
2139
  addClass(target, clsEnter);
2149
2140
  action();
2150
- css(children(target), { opacity: 0 });
2141
+ css(stagger ? children(target) : target, propsOut);
2151
2142
  height(target, oldHeight);
2152
2143
  await awaitTimeout();
2153
2144
  height(target, "");
2154
- const nodes = children(target);
2155
2145
  const newHeight = height(target);
2156
2146
  css(target, "alignContent", "flex-start");
2157
2147
  height(target, oldHeight);
2158
- const transitionNodes = getTransitionNodes(target);
2159
- css(nodes, propsOut);
2160
- const transitions = transitionNodes.map(async (child, i) => {
2161
- await awaitTimeout(i * stagger);
2162
- await Transition.start(child, propsIn, duration / 2, "ease");
2163
- });
2164
- if (oldHeight !== newHeight) {
2165
- transitions.push(
2166
- Transition.start(
2167
- target,
2168
- { height: newHeight },
2169
- duration / 2 + transitionNodes.length * stagger,
2170
- "ease"
2171
- )
2172
- );
2148
+ let transitions = [];
2149
+ let targetDuration = duration / 2;
2150
+ if (stagger) {
2151
+ const nodes = getTransitionNodes(target);
2152
+ css(children(target), propsOut);
2153
+ transitions = nodes.map(async (child, i) => {
2154
+ await awaitTimeout(i * stagger);
2155
+ await Transition.start(child, propsIn, duration / 2, "ease");
2156
+ if (isCurrentIndex()) {
2157
+ css(child, { opacity: "" });
2158
+ }
2159
+ });
2160
+ targetDuration += nodes.length * stagger;
2161
+ }
2162
+ if (!stagger || oldHeight !== newHeight) {
2163
+ const targetProps = { height: newHeight, ...stagger ? {} : propsIn };
2164
+ transitions.push(Transition.start(target, targetProps, targetDuration, "ease"));
2165
+ }
2166
+ await Promise.all(transitions);
2167
+ removeClass(target, clsEnter);
2168
+ if (isCurrentIndex()) {
2169
+ css(target, { height: "", alignContent: "", opacity: "" });
2170
+ delete target.dataset.transition;
2173
2171
  }
2174
- await Promise.all(transitions).then(() => {
2175
- removeClass(target, clsEnter);
2176
- if (index === transitionIndex(target)) {
2177
- css(target, { height: "", alignContent: "" });
2178
- css(nodes, { opacity: "" });
2179
- delete target.dataset.transition;
2180
- }
2181
- });
2182
2172
  });
2183
2173
  return hasClass(target, clsLeave) ? waitTransitionend(target).then(enterFn) : hasClass(target, clsEnter) ? waitTransitionend(target).then(leaveFn).then(enterFn) : leaveFn().then(enterFn);
2184
2174
  }
@@ -3736,7 +3726,7 @@
3736
3726
  };
3737
3727
  App.util = util;
3738
3728
  App.options = {};
3739
- App.version = "3.23.5";
3729
+ App.version = "3.23.6-dev.4d3af55fc";
3740
3730
 
3741
3731
  const PREFIX = "uk-";
3742
3732
  const DATA = "__uikit__";
@@ -8572,7 +8562,7 @@
8572
8562
  };
8573
8563
  modal.alert = function(message, options) {
8574
8564
  return openDialog(
8575
- ({ i18n }) => `<div class="uk-modal-body">${isString(message) ? message : html(message)}</div> <div class="uk-modal-footer uk-text-right"> <button class="uk-button uk-button-primary uk-modal-close" autofocus>${i18n.ok}</button> </div>`,
8565
+ ({ i18n }) => `<div class="uk-modal-body">${isString(message) ? message : html(message)}</div> <div class="uk-modal-footer uk-text-right"> <button class="uk-button uk-button-primary uk-modal-close" type="button" autofocus>${i18n.ok}</button> </div>`,
8576
8566
  options
8577
8567
  );
8578
8568
  };
@@ -9374,12 +9364,7 @@
9374
9364
  if (sticky) {
9375
9365
  css(this.$el, "top", offset);
9376
9366
  } else {
9377
- css(this.$el, {
9378
- position: "",
9379
- top: "",
9380
- width: "",
9381
- marginTop: ""
9382
- });
9367
+ reset(this.$el);
9383
9368
  }
9384
9369
  this.placeholder.hidden = true;
9385
9370
  this.isFixed = false;