uikit 3.25.24-dev.66bb413 → 3.25.24

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 (47) hide show
  1. package/dist/css/uikit-core-rtl.css +1 -1
  2. package/dist/css/uikit-core-rtl.min.css +1 -1
  3. package/dist/css/uikit-core.css +1 -1
  4. package/dist/css/uikit-core.min.css +1 -1
  5. package/dist/css/uikit-rtl.css +1 -1
  6. package/dist/css/uikit-rtl.min.css +1 -1
  7. package/dist/css/uikit.css +1 -1
  8. package/dist/css/uikit.min.css +1 -1
  9. package/dist/js/components/countdown.js +1 -1
  10. package/dist/js/components/countdown.min.js +1 -1
  11. package/dist/js/components/filter.js +18 -16
  12. package/dist/js/components/filter.min.js +1 -1
  13. package/dist/js/components/lightbox-panel.js +8 -27
  14. package/dist/js/components/lightbox-panel.min.js +1 -1
  15. package/dist/js/components/lightbox.js +8 -27
  16. package/dist/js/components/lightbox.min.js +1 -1
  17. package/dist/js/components/notification.js +1 -1
  18. package/dist/js/components/notification.min.js +1 -1
  19. package/dist/js/components/parallax.js +1 -1
  20. package/dist/js/components/parallax.min.js +1 -1
  21. package/dist/js/components/slider-parallax.js +1 -1
  22. package/dist/js/components/slider-parallax.min.js +1 -1
  23. package/dist/js/components/slider.js +15 -16
  24. package/dist/js/components/slider.min.js +1 -1
  25. package/dist/js/components/slideshow-parallax.js +1 -1
  26. package/dist/js/components/slideshow-parallax.min.js +1 -1
  27. package/dist/js/components/slideshow.js +1 -1
  28. package/dist/js/components/slideshow.min.js +1 -1
  29. package/dist/js/components/sortable.js +18 -16
  30. package/dist/js/components/sortable.min.js +1 -1
  31. package/dist/js/components/tooltip.js +4 -5
  32. package/dist/js/components/tooltip.min.js +1 -1
  33. package/dist/js/components/upload.js +1 -1
  34. package/dist/js/components/upload.min.js +1 -1
  35. package/dist/js/uikit-core.js +64 -75
  36. package/dist/js/uikit-core.min.js +1 -1
  37. package/dist/js/uikit-icons.js +1 -1
  38. package/dist/js/uikit-icons.min.js +1 -1
  39. package/dist/js/uikit.js +95 -105
  40. package/dist/js/uikit.min.js +1 -1
  41. package/package.json +1 -1
  42. package/src/js/components/internal/slider-transitioner.js +15 -17
  43. package/src/js/core/scrollspy.js +10 -20
  44. package/src/js/mixin/internal/animate-fade.js +20 -18
  45. package/src/js/mixin/modal.js +3 -24
  46. package/src/js/mixin/togglable.js +4 -4
  47. package/src/js/util/animation.js +58 -41
@@ -1 +1 @@
1
- /*! UIkit 3.25.24-dev.66bb413 | https://www.getuikit.com | (c) 2014 - 2026 YOOtheme | MIT License */(function(e,v){typeof exports=="object"&&typeof module<"u"?module.exports=v(require("uikit-util")):typeof define=="function"&&define.amd?define("uikitsortable",["uikit-util"],v):(e=typeof globalThis<"u"?globalThis:e||self,e.UIkitSortable=v(e.UIkit.util))})(this,(function(e){"use strict";function v(o,s="update"){o._connected&&o._updates.length&&(o._updateCount||(o._updateCount=0,requestAnimationFrame(()=>o._updateCount=0)),o._queued||(o._queued=new Set,e.fastdom.read(()=>{o._connected&&A(o,o._queued),o._queued=null})),o._updateCount++<20&&o._queued.add(s.type||s))}function A(o,s){for(const{read:n,write:t,events:c=[]}of o._updates){if(!s.has("update")&&!c.some(a=>s.has(a)))continue;let r;n&&(r=n.call(o,o._data,s),r&&e.isPlainObject(r)&&e.assign(o._data,r)),t&&r!==!1&&e.fastdom.write(()=>{o._connected&&t.call(o,o._data,s)})}}function H(o){return I(e.observeResize,o,"resize")}function x(o){return I(e.observeMutation,o)}function I(o,s,n){return{observe:o,handler(){v(this,n)},...s}}x({options:{childList:!0}}),x({options:{attributes:!0,attributeFilter:["style"]}}),H({handler(o){for(const{target:s,borderBoxSize:[{inlineSize:n,blockSize:t}]}of o)if(s===this.$el&&!n&&!t)return;this.$emit("resize")},target:({$el:o})=>[o,...e.children(o)]});function L(o){const s=[[]],n=o.some((t,c)=>c&&o[c-1].offsetParent!==t.offsetParent);for(const t of o){if(!e.isVisible(t))continue;const c=y(t,n);for(let r=s.length-1;r>=0;r--){const a=s[r];if(!a[0]){a.push(t);break}const h=y(a[0],n);if(c.top>=h.bottom-1&&c.top!==h.top){s.push([t]);break}if(c.bottom-1>h.top||c.top===h.top){let f=a.length-1;for(;f>=0;f--){const p=y(a[f],n);if(c.left>=p.left)break}a.splice(f+1,0,t);break}if(r===0){s.unshift([t]);break}}}return s}function y(o,s=!1){let{offsetTop:n,offsetLeft:t,offsetHeight:c,offsetWidth:r}=o;return s&&([n,t]=e.offsetPosition(o)),{top:n,left:t,bottom:n+c,right:t+r}}function _(){return new Promise(o=>requestAnimationFrame(o))}function P(o){return new Promise(s=>setTimeout(s,o))}const C="uk-transition-leave",S="uk-transition-enter";function $(o,s,n,t=0){const c=T(s,!0),r={opacity:1},a={opacity:0},h=()=>c===T(s),f=l=>()=>h()?l():Promise.reject(),p=f(async()=>{e.addClass(s,C),await(t?D(s).reduce(async(l,m,u,b)=>{if(await l,!e.isInView(m)||!h()){e.css(m,a);return}await P(t);const d=e.Transition.start(m,a,n/2,"ease");b.length-1===u&&await d},Promise.resolve()):e.Transition.start(s,a,n/2,"ease")),e.removeClass(s,C)}),i=f(async()=>{const l=e.height(s);e.addClass(s,S),o(),e.css(t?e.children(s):s,a),e.height(s,l),await P(),e.height(s,"");const m=e.height(s);e.css(s,"alignContent","flex-start"),e.height(s,l);let u=[],b=n/2;if(t){const d=D(s);e.css(e.children(s),a),u=d.reduce(async(g,w,Z,k)=>{if(await g,!e.isInView(w)||!h()){e.resetProps(w,r);return}await P(t);const U=e.Transition.start(w,r,n/2,"ease").then(()=>h()&&e.resetProps(w,r));k.length-1===Z&&await U},Promise.resolve()),b+=d.length*t}if(!t||l!==m){const d={height:m,...t?{}:r};u.push(e.Transition.start(s,d,b,"ease"))}await Promise.all(u),e.removeClass(s,S),h()&&(e.resetProps(s,{height:"",alignContent:"",...r}),delete s.dataset.transition)});return e.hasClass(s,C)?E(s).then(i):e.hasClass(s,S)?E(s).then(p).then(i):p().then(i)}function T(o,s){return s&&(o.dataset.transition=1+T(o)),e.toNumber(o.dataset.transition)||0}function E(o){return Promise.all(e.children(o).filter(e.Transition.inProgress).map(s=>new Promise(n=>e.once(s,"transitionend transitioncanceled",n))))}function D(o){return L(e.children(o)).flat().filter(e.isVisible)}async function M(o,s,n){await _();let t=e.children(s);const c=t.map(d=>F(d,!0)),r={...e.css(s,["height","padding"]),display:"block"},a=t.filter(d=>e.isInView(d)),h=t.concat(s);await Promise.all(h.map(e.Transition.cancel)),e.css(h,"transitionProperty","none"),await o();const f=e.children(s).filter(d=>!e.includes(t,d));t=t.concat(f),await Promise.resolve(),e.css(h,"transitionProperty","");const p=e.attr(s,"style"),i=e.css(s,["height","padding"]),[l,m]=B(s,t,c),u=t.map(d=>({style:e.attr(d,"style")}));a.push(...t.filter(d=>e.isInView(d))),t.forEach((d,g)=>m[g]&&e.css(d,m[g])),e.css(s,r),e.trigger(s,"scroll"),await _();const b=t.map((d,g)=>{if(e.parent(d)===s&&a.includes(d))return e.Transition.start(d,l[g],n,"ease",!f.includes(d))}).concat(e.Transition.start(s,i,n,"ease",!0));try{await Promise.all(b),t.forEach((d,g)=>{e.attr(d,u[g]),e.parent(d)===s&&e.css(d,"display",l[g].opacity===0?"none":"")}),e.attr(s,"style",p)}catch{e.attr(t,"style",""),e.resetProps(s,r)}}function F(o,s){const n=e.css(o,"zIndex");return e.isVisible(o)?{display:"",opacity:s?e.css(o,"opacity"):"0",pointerEvents:"none",position:"absolute",zIndex:n==="auto"?e.index(o):n,...z(o)}:!1}function B(o,s,n){const t=s.map((r,a)=>e.parent(r)&&a in n?n[a]?e.isVisible(r)?z(r):{opacity:0}:{opacity:e.isVisible(r)?1:0}:!1),c=t.map((r,a)=>{const h=e.parent(s[a])===o&&(n[a]||F(s[a]));if(!h)return!1;if(!r)delete h.opacity;else if(!("opacity"in r)){const{opacity:f}=h;f%1?r.opacity=1:delete h.opacity}return h});return[t,c]}function z(o){const{height:s,width:n}=e.dimensions(o);return{height:s,width:n,transform:"",...e.position(o),...e.css(o,["marginTop","marginLeft"])}}var R={props:{duration:Number,animation:Boolean},data:{duration:150,animation:"slide"},methods:{animate(o,s=this.$el){const n=this.animation;return(n==="fade"?$:n==="delayed-fade"?(...c)=>$(...c,40):n?M:()=>(o(),Promise.resolve()))(o,s,this.duration).catch(e.noop)}}},j={connected(){this._cmpCls=e.hasClass(this.$el,this.$options.id),e.addClass(this.$el,this.$options.id)},disconnected(){this._cmpCls||e.removeClass(this.$el,this.$options.id)}},N={mixins:[j,R],props:{group:String,threshold:Number,clsItem:String,clsPlaceholder:String,clsDrag:String,clsDragState:String,clsBase:String,clsNoDrag:String,clsEmpty:String,clsCustom:String,handle:String},data:{group:!1,threshold:5,clsItem:"uk-sortable-item",clsPlaceholder:"uk-sortable-placeholder",clsDrag:"uk-sortable-drag",clsDragState:"uk-drag",clsBase:"uk-sortable",clsNoDrag:"uk-sortable-nodrag",clsEmpty:"uk-sortable-empty",clsCustom:"",handle:!1,pos:{}},events:{name:e.pointerDown,passive:!1,handler(o){this.init(o)}},computed:{target:(o,s)=>(s.tBodies||[s])[0],items(){return e.children(this.target)},isEmpty(){return!this.items.length},handles({handle:o},s){return o?e.$$(o,s):this.items}},watch:{isEmpty(o){e.toggleClass(this.target,this.clsEmpty,o)},handles(o,s){const n={touchAction:"none",userSelect:"none"};e.resetProps(s,n),e.css(o,n)}},update:{write(o){if(!this.drag||!e.parent(this.placeholder))return;const{pos:{x:s,y:n},origin:{offsetTop:t,offsetLeft:c},placeholder:r}=this;e.css(this.drag,{top:n-t,left:s-c});const a=this.getSortable(document.elementFromPoint(s,n));if(!a)return;const{items:h}=a;if(h.some(e.Transition.inProgress))return;const f=J(h,{x:s,y:n});if(h.length&&(!f||f===r))return;const p=this.getSortable(r),i=K(a.target,f,r,{x:s,y:n},a===p&&o.moved!==f);i!==!1&&(i&&r===i||(a!==p?(p.remove(r),o.moved=f):delete o.moved,a.insert(r,i),this.touched.add(a)))},events:["move"]},methods:{init(o){const{target:s,button:n,defaultPrevented:t}=o,[c]=this.items.filter(r=>r.contains(s));!c||t||n>0||e.isInput(s)||s.closest(`.${this.clsNoDrag}`)||this.handle&&!s.closest(this.handle)||(o.preventDefault(),this.pos=e.getEventPos(o),this.touched=new Set([this]),this.placeholder=c,this.origin={target:s,index:e.index(c),...this.pos},e.on(document,e.pointerMove,this.move),e.on(document,e.pointerUp,this.end),this.threshold||this.start(o))},start(o){this.drag=G(this.$container,this.placeholder);const{left:s,top:n}=e.dimensions(this.placeholder);e.assign(this.origin,{offsetLeft:this.pos.x-s,offsetTop:this.pos.y-n}),e.addClass(this.drag,this.clsDrag,this.clsCustom),e.addClass(this.placeholder,this.clsPlaceholder),e.addClass(this.items,this.clsItem),e.addClass(document.documentElement,this.clsDragState),e.trigger(this.$el,"start",[this,this.placeholder]),O(this.pos),this.move(o)},move:X(function(o){e.assign(this.pos,e.getEventPos(o)),!this.drag&&(Math.abs(this.pos.x-this.origin.x)>this.threshold||Math.abs(this.pos.y-this.origin.y)>this.threshold)&&this.start(o),this.$emit("move")}),end(){if(e.off(document,e.pointerMove,this.move),e.off(document,e.pointerUp,this.end),!this.drag)return;W();const o=this.getSortable(this.placeholder);this===o?this.origin.index!==e.index(this.placeholder)&&e.trigger(this.$el,"moved",[this,this.placeholder]):(e.trigger(o.$el,"added",[o,this.placeholder]),e.trigger(this.$el,"removed",[this,this.placeholder])),e.trigger(this.$el,"stop",[this,this.placeholder]),e.remove(this.drag),this.drag=null;for(const{clsPlaceholder:s,clsItem:n}of this.touched)for(const t of this.touched)e.removeClass(t.items,s,n);this.touched=null,e.removeClass(document.documentElement,this.clsDragState)},insert(o,s){e.addClass(this.items,this.clsItem),s&&s.previousElementSibling!==o?this.animate(()=>e.before(s,o)):!s&&this.target.lastElementChild!==o&&this.animate(()=>e.append(this.target,o))},remove(o){this.target.contains(o)&&this.animate(()=>e.remove(o))},getSortable(o){do{const s=this.$getComponent(o,"sortable");if(s&&(s===this||this.group!==!1&&s.group===this.group))return s}while(o=e.parent(o))}}};let V;function O(o){let s=Date.now();V=setInterval(()=>{let{x:n,y:t}=o;t+=document.scrollingElement.scrollTop;const c=(Date.now()-s)*.3;s=Date.now(),e.scrollParents(document.elementFromPoint(n,o.y)).reverse().some(r=>{let{scrollTop:a,scrollHeight:h}=r;const{top:f,bottom:p,height:i}=e.offsetViewport(r);if(f<t&&f+35>t)a-=c;else if(p>t&&p-35<t)a+=c;else return;if(a>0&&a<h-i)return r.scrollTop=a,!0})},15)}function W(){clearInterval(V)}function G(o,s){let n;if(e.isTag(s,"li","tr")){n=e.$("<div>"),e.append(n,s.cloneNode(!0).children);for(const t of s.getAttributeNames())e.attr(n,t,s.getAttribute(t))}else n=s.cloneNode(!0);return e.append(o,n),e.css(n,"margin","0","important"),e.css(n,{boxSizing:"border-box",width:s.offsetWidth,height:s.offsetHeight,padding:e.css(s,"padding")}),e.height(n.firstElementChild,e.height(s.firstElementChild)),n}function J(o,s){return o[e.findIndex(o,n=>e.pointInRect(s,e.dimensions(n)))]}function K(o,s,n,t,c){if(!e.children(o).length)return;const r=e.dimensions(s);if(!c)return Q(o,n)||t.y<r.top+r.height/2?s:s.nextElementSibling;const a=e.dimensions(n),h=q([r.top,r.bottom],[a.top,a.bottom]),[f,p,i,l]=h?[t.x,"width","left","right"]:[t.y,"height","top","bottom"],m=a[p]<r[p]?r[p]-a[p]:0;return a[i]<r[i]?m&&f<r[i]+m?!1:s.nextElementSibling:m&&f>r[l]-m?!1:s}function Q(o,s){const n=e.children(o).length===1;n&&e.append(o,s);const t=e.children(o),c=t.some((r,a)=>{const h=e.dimensions(r);return t.slice(a+1).some(f=>{const p=e.dimensions(f);return!q([h.left,h.right],[p.left,p.right])})});return n&&e.remove(s),c}function q(o,s){return o[1]>s[0]&&s[1]>o[0]}function X(o){let s;return function(...n){s||(s=!0,o.call(this,...n),requestAnimationFrame(()=>s=!1))}}var Y="sortable";return typeof window<"u"&&window.UIkit&&window.UIkit.component(Y,N),N}));
1
+ /*! UIkit 3.25.24 | https://www.getuikit.com | (c) 2014 - 2026 YOOtheme | MIT License */(function(e,v){typeof exports=="object"&&typeof module<"u"?module.exports=v(require("uikit-util")):typeof define=="function"&&define.amd?define("uikitsortable",["uikit-util"],v):(e=typeof globalThis<"u"?globalThis:e||self,e.UIkitSortable=v(e.UIkit.util))})(this,(function(e){"use strict";function v(o,s="update"){o._connected&&o._updates.length&&(o._updateCount||(o._updateCount=0,requestAnimationFrame(()=>o._updateCount=0)),o._queued||(o._queued=new Set,e.fastdom.read(()=>{o._connected&&A(o,o._queued),o._queued=null})),o._updateCount++<20&&o._queued.add(s.type||s))}function A(o,s){for(const{read:n,write:t,events:c=[]}of o._updates){if(!s.has("update")&&!c.some(a=>s.has(a)))continue;let r;n&&(r=n.call(o,o._data,s),r&&e.isPlainObject(r)&&e.assign(o._data,r)),t&&r!==!1&&e.fastdom.write(()=>{o._connected&&t.call(o,o._data,s)})}}function H(o){return I(e.observeResize,o,"resize")}function x(o){return I(e.observeMutation,o)}function I(o,s,n){return{observe:o,handler(){v(this,n)},...s}}x({options:{childList:!0}}),x({options:{attributes:!0,attributeFilter:["style"]}}),H({handler(o){for(const{target:s,borderBoxSize:[{inlineSize:n,blockSize:t}]}of o)if(s===this.$el&&!n&&!t)return;this.$emit("resize")},target:({$el:o})=>[o,...e.children(o)]});function L(o){const s=[[]],n=o.some((t,c)=>c&&o[c-1].offsetParent!==t.offsetParent);for(const t of o){if(!e.isVisible(t))continue;const c=y(t,n);for(let r=s.length-1;r>=0;r--){const a=s[r];if(!a[0]){a.push(t);break}const h=y(a[0],n);if(c.top>=h.bottom-1&&c.top!==h.top){s.push([t]);break}if(c.bottom-1>h.top||c.top===h.top){let f=a.length-1;for(;f>=0;f--){const p=y(a[f],n);if(c.left>=p.left)break}a.splice(f+1,0,t);break}if(r===0){s.unshift([t]);break}}}return s}function y(o,s=!1){let{offsetTop:n,offsetLeft:t,offsetHeight:c,offsetWidth:r}=o;return s&&([n,t]=e.offsetPosition(o)),{top:n,left:t,bottom:n+c,right:t+r}}function _(){return new Promise(o=>requestAnimationFrame(o))}function P(o){return new Promise(s=>setTimeout(s,o))}const C="uk-transition-leave",S="uk-transition-enter";function $(o,s,n,t=0){const c=T(s,!0),r={opacity:1},a={opacity:0},h=()=>c===T(s),f=l=>()=>h()?l():Promise.reject(),p=f(async()=>{e.addClass(s,C),await(t?D(s).reduce(async(l,m,u,b)=>{if(await l,!e.isInView(m)||!h()){e.css(m,a);return}await P(t);const d=e.Transition.start(m,a,n/2,"ease");b.length-1===u&&await d},Promise.resolve()):e.Transition.start(s,a,n/2,"ease")),e.removeClass(s,C)}),i=f(async()=>{const l=e.height(s);e.addClass(s,S),o(),e.css(t?e.children(s):s,a),e.height(s,l),await P(),e.height(s,"");const m=e.height(s);e.css(s,"alignContent","flex-start"),e.height(s,l);const u=[];let b=n/2;if(t){const d=D(s);e.css(e.children(s),a),u.push(d.reduce(async(g,w,Z,k)=>{if(await g,!e.isInView(w)||!h()){e.resetProps(w,r);return}await P(t);const U=e.Transition.start(w,r,n/2,"ease").then(()=>h()&&e.resetProps(w,r));k.length-1===Z&&await U},Promise.resolve())),b+=d.length*t}if(!t||l!==m){const d={height:m,...t?{}:r};u.push(e.Transition.start(s,d,b,"ease"))}await Promise.all(u),e.removeClass(s,S),h()&&(e.resetProps(s,{height:"",alignContent:"",...r}),delete s.dataset.transition)});return e.hasClass(s,C)?E(s).then(i):e.hasClass(s,S)?E(s).then(p).then(i):p().then(i)}function T(o,s){return s&&(o.dataset.transition=1+T(o)),e.toNumber(o.dataset.transition)||0}function E(o){return Promise.all(e.children(o).filter(e.Transition.inProgress).map(s=>new Promise(n=>e.once(s,"transitionend transitioncanceled",n))))}function D(o){return L(e.children(o)).flat().filter(e.isVisible)}async function M(o,s,n){await _();let t=e.children(s);const c=t.map(d=>F(d,!0)),r={...e.css(s,["height","padding"]),display:"block"},a=t.filter(d=>e.isInView(d)),h=t.concat(s);await Promise.all(h.map(e.Transition.cancel)),e.css(h,"transitionProperty","none"),await o();const f=e.children(s).filter(d=>!e.includes(t,d));t=t.concat(f),await Promise.resolve(),e.css(h,"transitionProperty","");const p=e.attr(s,"style"),i=e.css(s,["height","padding"]),[l,m]=B(s,t,c),u=t.map(d=>({style:e.attr(d,"style")}));a.push(...t.filter(d=>e.isInView(d))),t.forEach((d,g)=>m[g]&&e.css(d,m[g])),e.css(s,r),e.trigger(s,"scroll"),await _();const b=t.map((d,g)=>{if(e.parent(d)===s&&a.includes(d))return e.Transition.start(d,l[g],n,"ease",!f.includes(d))}).concat(e.Transition.start(s,i,n,"ease",!0));try{await Promise.all(b),t.forEach((d,g)=>{e.attr(d,u[g]),e.parent(d)===s&&e.css(d,"display",l[g].opacity===0?"none":"")}),e.attr(s,"style",p)}catch{e.attr(t,"style",""),e.resetProps(s,r)}}function F(o,s){const n=e.css(o,"zIndex");return e.isVisible(o)?{display:"",opacity:s?e.css(o,"opacity"):"0",pointerEvents:"none",position:"absolute",zIndex:n==="auto"?e.index(o):n,...z(o)}:!1}function B(o,s,n){const t=s.map((r,a)=>e.parent(r)&&a in n?n[a]?e.isVisible(r)?z(r):{opacity:0}:{opacity:e.isVisible(r)?1:0}:!1),c=t.map((r,a)=>{const h=e.parent(s[a])===o&&(n[a]||F(s[a]));if(!h)return!1;if(!r)delete h.opacity;else if(!("opacity"in r)){const{opacity:f}=h;f%1?r.opacity=1:delete h.opacity}return h});return[t,c]}function z(o){const{height:s,width:n}=e.dimensions(o);return{height:s,width:n,transform:"",...e.position(o),...e.css(o,["marginTop","marginLeft"])}}var R={props:{duration:Number,animation:Boolean},data:{duration:150,animation:"slide"},methods:{animate(o,s=this.$el){const n=this.animation;return(n==="fade"?$:n==="delayed-fade"?(...c)=>$(...c,40):n?M:()=>(o(),Promise.resolve()))(o,s,this.duration).catch(e.noop)}}},j={connected(){this._cmpCls=e.hasClass(this.$el,this.$options.id),e.addClass(this.$el,this.$options.id)},disconnected(){this._cmpCls||e.removeClass(this.$el,this.$options.id)}},N={mixins:[j,R],props:{group:String,threshold:Number,clsItem:String,clsPlaceholder:String,clsDrag:String,clsDragState:String,clsBase:String,clsNoDrag:String,clsEmpty:String,clsCustom:String,handle:String},data:{group:!1,threshold:5,clsItem:"uk-sortable-item",clsPlaceholder:"uk-sortable-placeholder",clsDrag:"uk-sortable-drag",clsDragState:"uk-drag",clsBase:"uk-sortable",clsNoDrag:"uk-sortable-nodrag",clsEmpty:"uk-sortable-empty",clsCustom:"",handle:!1,pos:{}},events:{name:e.pointerDown,passive:!1,handler(o){this.init(o)}},computed:{target:(o,s)=>(s.tBodies||[s])[0],items(){return e.children(this.target)},isEmpty(){return!this.items.length},handles({handle:o},s){return o?e.$$(o,s):this.items}},watch:{isEmpty(o){e.toggleClass(this.target,this.clsEmpty,o)},handles(o,s){const n={touchAction:"none",userSelect:"none"};e.resetProps(s,n),e.css(o,n)}},update:{write(o){if(!this.drag||!e.parent(this.placeholder))return;const{pos:{x:s,y:n},origin:{offsetTop:t,offsetLeft:c},placeholder:r}=this;e.css(this.drag,{top:n-t,left:s-c});const a=this.getSortable(document.elementFromPoint(s,n));if(!a)return;const{items:h}=a;if(h.some(e.Transition.inProgress))return;const f=J(h,{x:s,y:n});if(h.length&&(!f||f===r))return;const p=this.getSortable(r),i=K(a.target,f,r,{x:s,y:n},a===p&&o.moved!==f);i!==!1&&(i&&r===i||(a!==p?(p.remove(r),o.moved=f):delete o.moved,a.insert(r,i),this.touched.add(a)))},events:["move"]},methods:{init(o){const{target:s,button:n,defaultPrevented:t}=o,[c]=this.items.filter(r=>r.contains(s));!c||t||n>0||e.isInput(s)||s.closest(`.${this.clsNoDrag}`)||this.handle&&!s.closest(this.handle)||(o.preventDefault(),this.pos=e.getEventPos(o),this.touched=new Set([this]),this.placeholder=c,this.origin={target:s,index:e.index(c),...this.pos},e.on(document,e.pointerMove,this.move),e.on(document,e.pointerUp,this.end),this.threshold||this.start(o))},start(o){this.drag=G(this.$container,this.placeholder);const{left:s,top:n}=e.dimensions(this.placeholder);e.assign(this.origin,{offsetLeft:this.pos.x-s,offsetTop:this.pos.y-n}),e.addClass(this.drag,this.clsDrag,this.clsCustom),e.addClass(this.placeholder,this.clsPlaceholder),e.addClass(this.items,this.clsItem),e.addClass(document.documentElement,this.clsDragState),e.trigger(this.$el,"start",[this,this.placeholder]),O(this.pos),this.move(o)},move:X(function(o){e.assign(this.pos,e.getEventPos(o)),!this.drag&&(Math.abs(this.pos.x-this.origin.x)>this.threshold||Math.abs(this.pos.y-this.origin.y)>this.threshold)&&this.start(o),this.$emit("move")}),end(){if(e.off(document,e.pointerMove,this.move),e.off(document,e.pointerUp,this.end),!this.drag)return;W();const o=this.getSortable(this.placeholder);this===o?this.origin.index!==e.index(this.placeholder)&&e.trigger(this.$el,"moved",[this,this.placeholder]):(e.trigger(o.$el,"added",[o,this.placeholder]),e.trigger(this.$el,"removed",[this,this.placeholder])),e.trigger(this.$el,"stop",[this,this.placeholder]),e.remove(this.drag),this.drag=null;for(const{clsPlaceholder:s,clsItem:n}of this.touched)for(const t of this.touched)e.removeClass(t.items,s,n);this.touched=null,e.removeClass(document.documentElement,this.clsDragState)},insert(o,s){e.addClass(this.items,this.clsItem),s&&s.previousElementSibling!==o?this.animate(()=>e.before(s,o)):!s&&this.target.lastElementChild!==o&&this.animate(()=>e.append(this.target,o))},remove(o){this.target.contains(o)&&this.animate(()=>e.remove(o))},getSortable(o){do{const s=this.$getComponent(o,"sortable");if(s&&(s===this||this.group!==!1&&s.group===this.group))return s}while(o=e.parent(o))}}};let V;function O(o){let s=Date.now();V=setInterval(()=>{let{x:n,y:t}=o;t+=document.scrollingElement.scrollTop;const c=(Date.now()-s)*.3;s=Date.now(),e.scrollParents(document.elementFromPoint(n,o.y)).reverse().some(r=>{let{scrollTop:a,scrollHeight:h}=r;const{top:f,bottom:p,height:i}=e.offsetViewport(r);if(f<t&&f+35>t)a-=c;else if(p>t&&p-35<t)a+=c;else return;if(a>0&&a<h-i)return r.scrollTop=a,!0})},15)}function W(){clearInterval(V)}function G(o,s){let n;if(e.isTag(s,"li","tr")){n=e.$("<div>"),e.append(n,s.cloneNode(!0).children);for(const t of s.getAttributeNames())e.attr(n,t,s.getAttribute(t))}else n=s.cloneNode(!0);return e.append(o,n),e.css(n,"margin","0","important"),e.css(n,{boxSizing:"border-box",width:s.offsetWidth,height:s.offsetHeight,padding:e.css(s,"padding")}),e.height(n.firstElementChild,e.height(s.firstElementChild)),n}function J(o,s){return o[e.findIndex(o,n=>e.pointInRect(s,e.dimensions(n)))]}function K(o,s,n,t,c){if(!e.children(o).length)return;const r=e.dimensions(s);if(!c)return Q(o,n)||t.y<r.top+r.height/2?s:s.nextElementSibling;const a=e.dimensions(n),h=q([r.top,r.bottom],[a.top,a.bottom]),[f,p,i,l]=h?[t.x,"width","left","right"]:[t.y,"height","top","bottom"],m=a[p]<r[p]?r[p]-a[p]:0;return a[i]<r[i]?m&&f<r[i]+m?!1:s.nextElementSibling:m&&f>r[l]-m?!1:s}function Q(o,s){const n=e.children(o).length===1;n&&e.append(o,s);const t=e.children(o),c=t.some((r,a)=>{const h=e.dimensions(r);return t.slice(a+1).some(f=>{const p=e.dimensions(f);return!q([h.left,h.right],[p.left,p.right])})});return n&&e.remove(s),c}function q(o,s){return o[1]>s[0]&&s[1]>o[0]}function X(o){let s;return function(...n){s||(s=!0,o.call(this,...n),requestAnimationFrame(()=>s=!1))}}var Y="sortable";return typeof window<"u"&&window.UIkit&&window.UIkit.component(Y,N),N}));
@@ -1,4 +1,4 @@
1
- /*! UIkit 3.25.24-dev.66bb413 | https://www.getuikit.com | (c) 2014 - 2026 YOOtheme | MIT License */
1
+ /*! UIkit 3.25.24 | https://www.getuikit.com | (c) 2014 - 2026 YOOtheme | MIT License */
2
2
 
3
3
  (function (global, factory) {
4
4
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('uikit-util')) :
@@ -288,15 +288,14 @@
288
288
  }
289
289
  }
290
290
  }
291
- function toggleAnimation(el, show, cmp) {
291
+ async function toggleAnimation(el, show, cmp) {
292
292
  const { animation, duration, _toggle } = cmp;
293
293
  if (show) {
294
294
  _toggle(el, true);
295
295
  return util.Animation.in(el, animation[0], duration, cmp.origin);
296
296
  }
297
- return util.Animation.out(el, animation[1] || animation[0], duration, cmp.origin).then(
298
- () => _toggle(el, false)
299
- );
297
+ await util.Animation.out(el, animation[1] || animation[0], duration, cmp.origin);
298
+ _toggle(el, false);
300
299
  }
301
300
 
302
301
  const keyMap = {
@@ -1 +1 @@
1
- /*! UIkit 3.25.24-dev.66bb413 | https://www.getuikit.com | (c) 2014 - 2026 YOOtheme | MIT License */(function(t,l){typeof exports=="object"&&typeof module<"u"?module.exports=l(require("uikit-util")):typeof define=="function"&&define.amd?define("uikittooltip",["uikit-util"],l):(t=typeof globalThis<"u"?globalThis:t||self,t.UIkitTooltip=l(t.UIkit.util))})(this,(function(t){"use strict";function l(s,i=[]){try{return s?t.startsWith(s,"{")?JSON.parse(s):i.length&&!t.includes(s,":")?{[i[0]]:s}:s.split(";").reduce((o,n)=>{const[e,r]=n.split(/:(.*)/);return e&&!t.isUndefined(r)&&(o[e.trim()]=r.trim()),o},{}):{}}catch{return{}}}t.memoize((s,i)=>{const o=Object.keys(i),n=o.concat(s).flatMap(e=>[t.hyphenate(e),`data-${t.hyphenate(e)}`]);return{attributes:o,filter:n}});let E=1;function O(s,i=null){return(i==null?void 0:i.id)||`${s.$options.id}-${E++}`}var A={props:{container:Boolean},data:{container:!0},computed:{container({container:s}){return s===!0&&this.$container||s&&t.$(s)}}},B={props:{pos:String,offset:Boolean,flip:Boolean,shift:Boolean,inset:Boolean},data:{pos:`bottom-${t.isRtl?"right":"left"}`,offset:!1,flip:!0,shift:!0,inset:!1},connected(){this.pos=this.$props.pos.split("-").concat("center").slice(0,2),[this.dir,this.align]=this.pos,this.axis=t.includes(["top","bottom"],this.dir)?"y":"x"},methods:{positionAt(s,i,o){let n=[this.getPositionOffset(s),this.getShiftOffset(s)];const e=[this.flip&&"flip",this.shift&&"shift"],r={element:[this.inset?this.dir:t.flipPosition(this.dir),this.align],target:[this.dir,this.align]};if(this.axis==="y"){for(const a in r)r[a].reverse();n.reverse(),e.reverse()}const h=I(s),c=t.dimensions(s);t.css(s,{top:-c.height,left:-c.width}),t.positionAt(s,i,{attach:r,offset:n,boundary:o,placement:e,viewportOffset:this.getViewportOffset(s)}),h()},getPositionOffset(s=this.$el){return t.toPx(this.offset===!1?t.css(s,"--uk-position-offset"):this.offset,this.axis==="x"?"width":"height",s)*(t.includes(["left","top"],this.dir)?-1:1)*(this.inset?-1:1)},getShiftOffset(s=this.$el){return this.align==="center"?0:t.toPx(t.css(s,"--uk-position-shift-offset"),this.axis==="y"?"width":"height",s)*(t.includes(["left","top"],this.align)?1:-1)},getViewportOffset(s){return t.toPx(t.css(s,"--uk-position-viewport-offset"))}}};function I(s){const i=t.scrollParent(s),{scrollTop:o}=i;return()=>{o!==i.scrollTop&&(i.scrollTop=o)}}var D={props:{cls:Boolean,animation:"list",duration:Number,velocity:Number,origin:String,transition:String},data:{cls:!1,animation:[!1],duration:200,velocity:.2,origin:!1,transition:"ease",clsEnter:"uk-togglable-enter",clsLeave:"uk-togglable-leave"},computed:{hasAnimation:({animation:s})=>!!s[0],hasTransition:({animation:s})=>["slide","reveal"].some(i=>t.startsWith(s[0],i))},methods:{async toggleElement(s,i,o){const n={};return(await Promise.all(t.toNodes(s).map(e=>{const r=t.isBoolean(i)?i:!this.isToggled(e);if(!t.trigger(e,`before${r?"show":"hide"}`,[this]))return n;const h=(t.isFunction(o)?o:o===!1||!this.hasAnimation?L:this.hasTransition?N:_)(e,r,this),c=r?this.clsEnter:this.clsLeave;t.addClass(e,c),t.trigger(e,r?"show":"hide",[this]);const a=()=>{var f;t.removeClass(e,c),t.trigger(e,r?"shown":"hidden",[this]),r&&((f=t.$$("[autofocus]",e).find(t.isVisible))==null||f.focus({preventScroll:!0}))};return h?h.then(a,()=>(t.removeClass(e,c),n)):a()}))).every(e=>e!==n)},isToggled(s=this.$el){return s=t.toNode(s),t.hasClass(s,this.clsEnter)?!0:t.hasClass(s,this.clsLeave)?!1:this.cls?t.hasClass(s,this.cls.split(" ")[0]):t.isVisible(s)},_toggle(s,i){if(!s)return;i=!!i;let o;this.cls?(o=t.includes(this.cls," ")||i!==t.hasClass(s,this.cls),o&&t.toggleClass(s,this.cls,t.includes(this.cls," ")?void 0:i)):(o=i===s.hidden,o&&(s.hidden=!i)),o&&t.trigger(s,"toggled",[i,this])}}};function L(s,i,{_toggle:o}){return t.Animation.cancel(s),t.Transition.cancel(s),o(s,i)}async function N(s,i,{animation:o,duration:n,velocity:e,transition:r,_toggle:h}){var c;const[a="reveal",f="top"]=((c=o[0])==null?void 0:c.split("-"))||[],b=[["left","right"],["top","bottom"]],y=b[t.includes(b[0],f)?0:1],k=y[1]===f,v=["width","height"][b.indexOf(y)],p=`margin-${y[0]}`,w=`margin-${f}`;let g=t.dimensions(s)[v];const M=t.Transition.inProgress(s);await t.Transition.cancel(s),i&&h(s,!0);const z=Object.fromEntries(["padding","border","width","height","minWidth","minHeight","overflowY","overflowX",p,w].map(S=>[S,s.style[S]])),m=t.dimensions(s),T=t.toFloat(t.css(s,p)),P=t.toFloat(t.css(s,w)),d=m[v]+P;!M&&!i&&(g+=P);const[$]=t.wrapInner(s,"<div>");t.css($,{boxSizing:"border-box",height:m.height,width:m.width,...t.css(s,["overflow","padding","borderTop","borderRight","borderBottom","borderLeft","borderImage",w])}),t.css(s,{padding:0,border:0,minWidth:0,minHeight:0,[w]:0,width:m.width,height:m.height,overflow:"hidden",[v]:g});const x=g/d;n=(e*d+n)*(i?1-x:x);const C={[v]:i?d:0};k&&(t.css(s,p,d-g+T),C[p]=i?T:d+T),!k^a==="reveal"&&(t.css($,p,-d+g),t.Transition.start($,{[p]:i?0:-d},n,r));try{await t.Transition.start(s,C,n,r)}finally{t.css(s,z),t.unwrap($.firstChild),i||h(s,!1)}}function _(s,i,o){const{animation:n,duration:e,_toggle:r}=o;return i?(r(s,!0),t.Animation.in(s,n[0],e,o.origin)):t.Animation.out(s,n[1]||n[0],e,o.origin).then(()=>r(s,!1))}const F={ESC:27};var u={mixins:[A,D,B],data:{pos:"top",animation:["uk-animation-scale-up"],duration:100,cls:"uk-active"},connected(){U(this.$el)},disconnected(){this.hide()},methods:{show(){if(this.isToggled(this.tooltip||null))return;const{delay:s=0,title:i}=W(this.$options);if(!i)return;const o=t.attr(this.$el,"title"),n=t.on(this.$el,["blur",t.pointerLeave],r=>!t.isTouch(r)&&this.hide());this.reset=()=>{t.attr(this.$el,{title:o,"aria-describedby":null}),n()};const e=O(this);t.attr(this.$el,{title:null,"aria-describedby":e}),clearTimeout(this.showTimer),this.showTimer=setTimeout(()=>this._show(i,e),s)},async hide(){var s;t.matches(this.$el,"input:focus")||(clearTimeout(this.showTimer),this.isToggled(this.tooltip||null)&&await this.toggleElement(this.tooltip,!1,!1),(s=this.reset)==null||s.call(this),t.remove(this.tooltip),this.tooltip=null)},async _show(s,i){this.tooltip=t.append(this.container,`<div id="${i}" class="uk-${this.$options.name}" role="tooltip"> <div class="uk-${this.$options.name}-inner">${s}</div> </div>`),t.on(this.tooltip,"toggled",(o,n)=>{if(!n)return;const e=()=>this.positionAt(this.tooltip,this.$el);e();const[r,h]=V(this.tooltip,this.$el,this.pos);this.origin=this.axis==="y"?`${t.flipPosition(r)}-${h}`:`${h}-${t.flipPosition(r)}`;const c=[t.once(document,`keydown ${t.pointerDown}`,this.hide,!1,a=>a.type===t.pointerDown&&!this.$el.contains(a.target)||a.type==="keydown"&&a.keyCode===F.ESC),t.on([document,...t.overflowParents(this.$el)],"scroll",e,{passive:!0})];t.once(this.tooltip,"hide",()=>c.forEach(a=>a()),{self:!0})}),await this.toggleElement(this.tooltip,!0)||this.hide()}},events:{[`focus ${t.pointerEnter} ${t.pointerDown}`](s){(!t.isTouch(s)||s.type===t.pointerDown)&&document.readyState!=="loading"&&this.show()}}};function U(s){t.isFocusable(s)||(s.tabIndex=0)}function V(s,i,[o,n]){const e=t.offset(s),r=t.offset(i),h=[["left","right"],["top","bottom"]];for(const a of h){if(e[a[0]]>=r[a[1]]){o=a[1];break}if(e[a[1]]<=r[a[0]]){o=a[0];break}}return n=(t.includes(h[0],o)?h[1]:h[0]).find(a=>e[a]===r[a])||"center",[o,n]}function W(s){const{el:i,id:o,data:n}=s;return{title:t.data(i,"title"),delay:t.data(i,"delay"),...l(t.data(i,o),["title"]),...n}}var j="tooltip";return typeof window<"u"&&window.UIkit&&window.UIkit.component(j,u),u}));
1
+ /*! UIkit 3.25.24 | https://www.getuikit.com | (c) 2014 - 2026 YOOtheme | MIT License */(function(t,l){typeof exports=="object"&&typeof module<"u"?module.exports=l(require("uikit-util")):typeof define=="function"&&define.amd?define("uikittooltip",["uikit-util"],l):(t=typeof globalThis<"u"?globalThis:t||self,t.UIkitTooltip=l(t.UIkit.util))})(this,(function(t){"use strict";function l(s,i=[]){try{return s?t.startsWith(s,"{")?JSON.parse(s):i.length&&!t.includes(s,":")?{[i[0]]:s}:s.split(";").reduce((o,n)=>{const[e,r]=n.split(/:(.*)/);return e&&!t.isUndefined(r)&&(o[e.trim()]=r.trim()),o},{}):{}}catch{return{}}}t.memoize((s,i)=>{const o=Object.keys(i),n=o.concat(s).flatMap(e=>[t.hyphenate(e),`data-${t.hyphenate(e)}`]);return{attributes:o,filter:n}});let E=1;function O(s,i=null){return(i==null?void 0:i.id)||`${s.$options.id}-${E++}`}var A={props:{container:Boolean},data:{container:!0},computed:{container({container:s}){return s===!0&&this.$container||s&&t.$(s)}}},B={props:{pos:String,offset:Boolean,flip:Boolean,shift:Boolean,inset:Boolean},data:{pos:`bottom-${t.isRtl?"right":"left"}`,offset:!1,flip:!0,shift:!0,inset:!1},connected(){this.pos=this.$props.pos.split("-").concat("center").slice(0,2),[this.dir,this.align]=this.pos,this.axis=t.includes(["top","bottom"],this.dir)?"y":"x"},methods:{positionAt(s,i,o){let n=[this.getPositionOffset(s),this.getShiftOffset(s)];const e=[this.flip&&"flip",this.shift&&"shift"],r={element:[this.inset?this.dir:t.flipPosition(this.dir),this.align],target:[this.dir,this.align]};if(this.axis==="y"){for(const a in r)r[a].reverse();n.reverse(),e.reverse()}const h=I(s),c=t.dimensions(s);t.css(s,{top:-c.height,left:-c.width}),t.positionAt(s,i,{attach:r,offset:n,boundary:o,placement:e,viewportOffset:this.getViewportOffset(s)}),h()},getPositionOffset(s=this.$el){return t.toPx(this.offset===!1?t.css(s,"--uk-position-offset"):this.offset,this.axis==="x"?"width":"height",s)*(t.includes(["left","top"],this.dir)?-1:1)*(this.inset?-1:1)},getShiftOffset(s=this.$el){return this.align==="center"?0:t.toPx(t.css(s,"--uk-position-shift-offset"),this.axis==="y"?"width":"height",s)*(t.includes(["left","top"],this.align)?1:-1)},getViewportOffset(s){return t.toPx(t.css(s,"--uk-position-viewport-offset"))}}};function I(s){const i=t.scrollParent(s),{scrollTop:o}=i;return()=>{o!==i.scrollTop&&(i.scrollTop=o)}}var D={props:{cls:Boolean,animation:"list",duration:Number,velocity:Number,origin:String,transition:String},data:{cls:!1,animation:[!1],duration:200,velocity:.2,origin:!1,transition:"ease",clsEnter:"uk-togglable-enter",clsLeave:"uk-togglable-leave"},computed:{hasAnimation:({animation:s})=>!!s[0],hasTransition:({animation:s})=>["slide","reveal"].some(i=>t.startsWith(s[0],i))},methods:{async toggleElement(s,i,o){const n={};return(await Promise.all(t.toNodes(s).map(e=>{const r=t.isBoolean(i)?i:!this.isToggled(e);if(!t.trigger(e,`before${r?"show":"hide"}`,[this]))return n;const h=(t.isFunction(o)?o:o===!1||!this.hasAnimation?L:this.hasTransition?N:_)(e,r,this),c=r?this.clsEnter:this.clsLeave;t.addClass(e,c),t.trigger(e,r?"show":"hide",[this]);const a=()=>{var f;t.removeClass(e,c),t.trigger(e,r?"shown":"hidden",[this]),r&&((f=t.$$("[autofocus]",e).find(t.isVisible))==null||f.focus({preventScroll:!0}))};return h?h.then(a,()=>(t.removeClass(e,c),n)):a()}))).every(e=>e!==n)},isToggled(s=this.$el){return s=t.toNode(s),t.hasClass(s,this.clsEnter)?!0:t.hasClass(s,this.clsLeave)?!1:this.cls?t.hasClass(s,this.cls.split(" ")[0]):t.isVisible(s)},_toggle(s,i){if(!s)return;i=!!i;let o;this.cls?(o=t.includes(this.cls," ")||i!==t.hasClass(s,this.cls),o&&t.toggleClass(s,this.cls,t.includes(this.cls," ")?void 0:i)):(o=i===s.hidden,o&&(s.hidden=!i)),o&&t.trigger(s,"toggled",[i,this])}}};function L(s,i,{_toggle:o}){return t.Animation.cancel(s),t.Transition.cancel(s),o(s,i)}async function N(s,i,{animation:o,duration:n,velocity:e,transition:r,_toggle:h}){var c;const[a="reveal",f="top"]=((c=o[0])==null?void 0:c.split("-"))||[],b=[["left","right"],["top","bottom"]],y=b[t.includes(b[0],f)?0:1],k=y[1]===f,v=["width","height"][b.indexOf(y)],p=`margin-${y[0]}`,w=`margin-${f}`;let g=t.dimensions(s)[v];const M=t.Transition.inProgress(s);await t.Transition.cancel(s),i&&h(s,!0);const z=Object.fromEntries(["padding","border","width","height","minWidth","minHeight","overflowY","overflowX",p,w].map(S=>[S,s.style[S]])),m=t.dimensions(s),T=t.toFloat(t.css(s,p)),P=t.toFloat(t.css(s,w)),d=m[v]+P;!M&&!i&&(g+=P);const[$]=t.wrapInner(s,"<div>");t.css($,{boxSizing:"border-box",height:m.height,width:m.width,...t.css(s,["overflow","padding","borderTop","borderRight","borderBottom","borderLeft","borderImage",w])}),t.css(s,{padding:0,border:0,minWidth:0,minHeight:0,[w]:0,width:m.width,height:m.height,overflow:"hidden",[v]:g});const x=g/d;n=(e*d+n)*(i?1-x:x);const C={[v]:i?d:0};k&&(t.css(s,p,d-g+T),C[p]=i?T:d+T),!k^a==="reveal"&&(t.css($,p,-d+g),t.Transition.start($,{[p]:i?0:-d},n,r));try{await t.Transition.start(s,C,n,r)}finally{t.css(s,z),t.unwrap($.firstChild),i||h(s,!1)}}async function _(s,i,o){const{animation:n,duration:e,_toggle:r}=o;if(i)return r(s,!0),t.Animation.in(s,n[0],e,o.origin);await t.Animation.out(s,n[1]||n[0],e,o.origin),r(s,!1)}const F={ESC:27};var u={mixins:[A,D,B],data:{pos:"top",animation:["uk-animation-scale-up"],duration:100,cls:"uk-active"},connected(){U(this.$el)},disconnected(){this.hide()},methods:{show(){if(this.isToggled(this.tooltip||null))return;const{delay:s=0,title:i}=W(this.$options);if(!i)return;const o=t.attr(this.$el,"title"),n=t.on(this.$el,["blur",t.pointerLeave],r=>!t.isTouch(r)&&this.hide());this.reset=()=>{t.attr(this.$el,{title:o,"aria-describedby":null}),n()};const e=O(this);t.attr(this.$el,{title:null,"aria-describedby":e}),clearTimeout(this.showTimer),this.showTimer=setTimeout(()=>this._show(i,e),s)},async hide(){var s;t.matches(this.$el,"input:focus")||(clearTimeout(this.showTimer),this.isToggled(this.tooltip||null)&&await this.toggleElement(this.tooltip,!1,!1),(s=this.reset)==null||s.call(this),t.remove(this.tooltip),this.tooltip=null)},async _show(s,i){this.tooltip=t.append(this.container,`<div id="${i}" class="uk-${this.$options.name}" role="tooltip"> <div class="uk-${this.$options.name}-inner">${s}</div> </div>`),t.on(this.tooltip,"toggled",(o,n)=>{if(!n)return;const e=()=>this.positionAt(this.tooltip,this.$el);e();const[r,h]=V(this.tooltip,this.$el,this.pos);this.origin=this.axis==="y"?`${t.flipPosition(r)}-${h}`:`${h}-${t.flipPosition(r)}`;const c=[t.once(document,`keydown ${t.pointerDown}`,this.hide,!1,a=>a.type===t.pointerDown&&!this.$el.contains(a.target)||a.type==="keydown"&&a.keyCode===F.ESC),t.on([document,...t.overflowParents(this.$el)],"scroll",e,{passive:!0})];t.once(this.tooltip,"hide",()=>c.forEach(a=>a()),{self:!0})}),await this.toggleElement(this.tooltip,!0)||this.hide()}},events:{[`focus ${t.pointerEnter} ${t.pointerDown}`](s){(!t.isTouch(s)||s.type===t.pointerDown)&&document.readyState!=="loading"&&this.show()}}};function U(s){t.isFocusable(s)||(s.tabIndex=0)}function V(s,i,[o,n]){const e=t.offset(s),r=t.offset(i),h=[["left","right"],["top","bottom"]];for(const a of h){if(e[a[0]]>=r[a[1]]){o=a[1];break}if(e[a[1]]<=r[a[0]]){o=a[0];break}}return n=(t.includes(h[0],o)?h[1]:h[0]).find(a=>e[a]===r[a])||"center",[o,n]}function W(s){const{el:i,id:o,data:n}=s;return{title:t.data(i,"title"),delay:t.data(i,"delay"),...l(t.data(i,o),["title"]),...n}}var j="tooltip";return typeof window<"u"&&window.UIkit&&window.UIkit.component(j,u),u}));
@@ -1,4 +1,4 @@
1
- /*! UIkit 3.25.24-dev.66bb413 | https://www.getuikit.com | (c) 2014 - 2026 YOOtheme | MIT License */
1
+ /*! UIkit 3.25.24 | https://www.getuikit.com | (c) 2014 - 2026 YOOtheme | MIT License */
2
2
 
3
3
  (function (global, factory) {
4
4
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('uikit-util')) :
@@ -1 +1 @@
1
- /*! UIkit 3.25.24-dev.66bb413 | https://www.getuikit.com | (c) 2014 - 2026 YOOtheme | MIT License */(function(r,i){typeof exports=="object"&&typeof module<"u"?module.exports=i(require("uikit-util")):typeof define=="function"&&define.amd?define("uikitupload",["uikit-util"],i):(r=typeof globalThis<"u"?globalThis:r||self,r.UIkitUpload=i(r.UIkit.util))})(this,(function(r){"use strict";var i={props:{i18n:Object},data:{i18n:null},methods:{t(e,...t){var s,a,o;let n=0;return((o=((s=this.i18n)==null?void 0:s[e])||((a=this.$options.i18n)==null?void 0:a[e]))==null?void 0:o.replace(/%s/g,()=>t[n++]||""))||""}}},p={mixins:[i],i18n:{invalidMime:"Invalid File Type: %s",invalidName:"Invalid File Name: %s",invalidSize:"Invalid File Size: %s Kilobytes Max"},props:{allow:String,clsDragover:String,concurrent:Number,maxSize:Number,method:String,mime:String,multiple:Boolean,name:String,params:Object,type:String,url:String},data:{allow:!1,clsDragover:"uk-dragover",concurrent:1,maxSize:0,method:"POST",mime:!1,multiple:!1,name:"files[]",params:{},type:"",url:"",abort:r.noop,beforeAll:r.noop,beforeSend:r.noop,complete:r.noop,completeAll:r.noop,error:r.noop,fail:r.noop,load:r.noop,loadEnd:r.noop,loadStart:r.noop,progress:r.noop},events:{change(e){r.matches(e.target,'input[type="file"]')&&(e.preventDefault(),e.target.files&&this.upload(e.target.files),e.target.value="")},drop(e){l(e);const t=e.dataTransfer;t!=null&&t.files&&(r.removeClass(this.$el,this.clsDragover),this.upload(t.files))},dragenter(e){l(e)},dragover(e){l(e),r.addClass(this.$el,this.clsDragover)},dragleave(e){l(e),r.removeClass(this.$el,this.clsDragover)}},methods:{async upload(e){if(e=r.toArray(e),!e.length)return;this.multiple||(e=e.slice(0,1)),r.trigger(this.$el,"upload",[e]);for(const a of e){if(this.maxSize&&this.maxSize*1e3<a.size){this.fail(this.t("invalidSize",this.maxSize));return}if(this.allow&&!d(this.allow,a.name)){this.fail(this.t("invalidName",this.allow));return}if(this.mime&&!d(this.mime,a.type)){this.fail(this.t("invalidMime",this.mime));return}}this.beforeAll(this,e);const t=u(e,this.concurrent),s=async a=>{const o=new FormData;a.forEach(n=>o.append(this.name,n));for(const n in this.params)o.append(n,this.params[n]);try{const n=await g(this.url,{data:o,method:this.method,responseType:this.type,beforeSend:m=>{const{xhr:c}=m;r.on(c.upload,"progress",this.progress);for(const f of["loadStart","load","loadEnd","abort"])r.on(c,f.toLowerCase(),this[f]);return this.beforeSend(m)}});this.complete(n),t.length?await s(t.shift()):this.completeAll(n)}catch(n){n.name!=="AbortError"&&this.error(n)}};await s(t.shift())}}};function d(e,t){return t.match(new RegExp(`^${e.replace(/\//g,"\\/").replace(/\*\*/g,"(\\/[^\\/]+)*").replace(/\*/g,"[^\\/]+").replace(/((?!\\))\?/g,"$1.")}$`,"i"))}function u(e,t){const s=[];for(let a=0;a<e.length;a+=t)s.push(e.slice(a,a+t));return s}function l(e){e.preventDefault(),e.stopPropagation()}async function g(e,t){const s={url:e,data:null,method:"GET",headers:{},xhr:new XMLHttpRequest,beforeSend:r.noop,responseType:"",...t};if(await s.beforeSend(s)===!1)throw h(s.xhr);return v(s.url,s)}function v(e,t){return new Promise((s,a)=>{const{xhr:o}=t;for(const n in t)if(n in o)try{o[n]=t[n]}catch{}o.open(t.method.toUpperCase(),e);for(const n in t.headers)o.setRequestHeader(n,t.headers[n]);r.on(o,"load",()=>{o.status===0||o.status>=200&&o.status<300||o.status===304?s(o):a(r.assign(Error(o.statusText),{xhr:o,status:o.status}))}),r.on(o,"error",()=>a(r.assign(Error("Network Error"),{xhr:o}))),r.on(o,"timeout",()=>a(r.assign(Error("Network Timeout"),{xhr:o}))),r.on(o,"abort",()=>a(h(o))),o.send(t.data)})}function h(e){return r.assign(Error("Network Abort"),{xhr:e,name:"AbortError"})}var w="upload";return typeof window<"u"&&window.UIkit&&window.UIkit.component(w,p),p}));
1
+ /*! UIkit 3.25.24 | https://www.getuikit.com | (c) 2014 - 2026 YOOtheme | MIT License */(function(r,i){typeof exports=="object"&&typeof module<"u"?module.exports=i(require("uikit-util")):typeof define=="function"&&define.amd?define("uikitupload",["uikit-util"],i):(r=typeof globalThis<"u"?globalThis:r||self,r.UIkitUpload=i(r.UIkit.util))})(this,(function(r){"use strict";var i={props:{i18n:Object},data:{i18n:null},methods:{t(e,...t){var s,a,o;let n=0;return((o=((s=this.i18n)==null?void 0:s[e])||((a=this.$options.i18n)==null?void 0:a[e]))==null?void 0:o.replace(/%s/g,()=>t[n++]||""))||""}}},p={mixins:[i],i18n:{invalidMime:"Invalid File Type: %s",invalidName:"Invalid File Name: %s",invalidSize:"Invalid File Size: %s Kilobytes Max"},props:{allow:String,clsDragover:String,concurrent:Number,maxSize:Number,method:String,mime:String,multiple:Boolean,name:String,params:Object,type:String,url:String},data:{allow:!1,clsDragover:"uk-dragover",concurrent:1,maxSize:0,method:"POST",mime:!1,multiple:!1,name:"files[]",params:{},type:"",url:"",abort:r.noop,beforeAll:r.noop,beforeSend:r.noop,complete:r.noop,completeAll:r.noop,error:r.noop,fail:r.noop,load:r.noop,loadEnd:r.noop,loadStart:r.noop,progress:r.noop},events:{change(e){r.matches(e.target,'input[type="file"]')&&(e.preventDefault(),e.target.files&&this.upload(e.target.files),e.target.value="")},drop(e){l(e);const t=e.dataTransfer;t!=null&&t.files&&(r.removeClass(this.$el,this.clsDragover),this.upload(t.files))},dragenter(e){l(e)},dragover(e){l(e),r.addClass(this.$el,this.clsDragover)},dragleave(e){l(e),r.removeClass(this.$el,this.clsDragover)}},methods:{async upload(e){if(e=r.toArray(e),!e.length)return;this.multiple||(e=e.slice(0,1)),r.trigger(this.$el,"upload",[e]);for(const a of e){if(this.maxSize&&this.maxSize*1e3<a.size){this.fail(this.t("invalidSize",this.maxSize));return}if(this.allow&&!d(this.allow,a.name)){this.fail(this.t("invalidName",this.allow));return}if(this.mime&&!d(this.mime,a.type)){this.fail(this.t("invalidMime",this.mime));return}}this.beforeAll(this,e);const t=u(e,this.concurrent),s=async a=>{const o=new FormData;a.forEach(n=>o.append(this.name,n));for(const n in this.params)o.append(n,this.params[n]);try{const n=await g(this.url,{data:o,method:this.method,responseType:this.type,beforeSend:m=>{const{xhr:c}=m;r.on(c.upload,"progress",this.progress);for(const f of["loadStart","load","loadEnd","abort"])r.on(c,f.toLowerCase(),this[f]);return this.beforeSend(m)}});this.complete(n),t.length?await s(t.shift()):this.completeAll(n)}catch(n){n.name!=="AbortError"&&this.error(n)}};await s(t.shift())}}};function d(e,t){return t.match(new RegExp(`^${e.replace(/\//g,"\\/").replace(/\*\*/g,"(\\/[^\\/]+)*").replace(/\*/g,"[^\\/]+").replace(/((?!\\))\?/g,"$1.")}$`,"i"))}function u(e,t){const s=[];for(let a=0;a<e.length;a+=t)s.push(e.slice(a,a+t));return s}function l(e){e.preventDefault(),e.stopPropagation()}async function g(e,t){const s={url:e,data:null,method:"GET",headers:{},xhr:new XMLHttpRequest,beforeSend:r.noop,responseType:"",...t};if(await s.beforeSend(s)===!1)throw h(s.xhr);return v(s.url,s)}function v(e,t){return new Promise((s,a)=>{const{xhr:o}=t;for(const n in t)if(n in o)try{o[n]=t[n]}catch{}o.open(t.method.toUpperCase(),e);for(const n in t.headers)o.setRequestHeader(n,t.headers[n]);r.on(o,"load",()=>{o.status===0||o.status>=200&&o.status<300||o.status===304?s(o):a(r.assign(Error(o.statusText),{xhr:o,status:o.status}))}),r.on(o,"error",()=>a(r.assign(Error("Network Error"),{xhr:o}))),r.on(o,"timeout",()=>a(r.assign(Error("Network Timeout"),{xhr:o}))),r.on(o,"abort",()=>a(h(o))),o.send(t.data)})}function h(e){return r.assign(Error("Network Abort"),{xhr:e,name:"AbortError"})}var w="upload";return typeof window<"u"&&window.UIkit&&window.UIkit.component(w,p),p}));
@@ -1,4 +1,4 @@
1
- /*! UIkit 3.25.24-dev.66bb413 | https://www.getuikit.com | (c) 2014 - 2026 YOOtheme | MIT License */
1
+ /*! UIkit 3.25.24 | https://www.getuikit.com | (c) 2014 - 2026 YOOtheme | MIT License */
2
2
 
3
3
  (function (global, factory) {
4
4
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
@@ -685,39 +685,52 @@
685
685
  }
686
686
  };
687
687
  const clsAnimation = "uk-animation";
688
- const animationEnd = "animationend";
689
- const animationCanceled = "animationcanceled";
688
+ const activeAnimations = /* @__PURE__ */ new WeakMap();
690
689
  function animate$2(element, animation, duration = 200, origin, out) {
691
- return Promise.all(
692
- toNodes(element).map(
693
- (element2) => new Promise((resolve, reject) => {
694
- if (hasClass(element2, clsAnimation)) {
695
- trigger(element2, animationCanceled);
696
- }
697
- const classes = [
698
- animation,
699
- clsAnimation,
700
- `${clsAnimation}-${out ? "leave" : "enter"}`,
701
- origin && `uk-transform-origin-${origin}`,
702
- out && `${clsAnimation}-reverse`
703
- ];
704
- const timer = setTimeout(() => trigger(element2, animationEnd), duration);
705
- once(
706
- element2,
707
- [animationEnd, animationCanceled],
708
- ({ type }) => {
709
- clearTimeout(timer);
710
- type === animationCanceled ? reject() : resolve(element2);
711
- css(element2, "animationDuration", "");
712
- removeClass(element2, classes);
713
- },
714
- { self: true }
715
- );
716
- css(element2, "animationDuration", `${duration}ms`);
717
- addClass(element2, classes);
718
- })
719
- )
720
- );
690
+ const animateFn = async (element2) => {
691
+ if (!Element.prototype.getAnimations) {
692
+ return element2;
693
+ }
694
+ cancel(element2);
695
+ const existingAnimations = element2.getAnimations();
696
+ const classes = [
697
+ animation,
698
+ clsAnimation,
699
+ `${clsAnimation}-${out ? "leave" : "enter"}`,
700
+ origin && `uk-transform-origin-${origin}`,
701
+ out && `${clsAnimation}-reverse`
702
+ ];
703
+ css(element2, "animationDuration", `${duration}ms`);
704
+ addClass(element2, classes);
705
+ const animations = element2.getAnimations().filter((animation2) => !existingAnimations.includes(animation2));
706
+ const data = { animations, classes };
707
+ activeAnimations.set(element2, data);
708
+ try {
709
+ await Promise.all(animations.map(({ finished }) => finished));
710
+ return element2;
711
+ } finally {
712
+ cleanup(element2, data);
713
+ }
714
+ };
715
+ return Promise.all(toNodes(element).map(animateFn));
716
+ }
717
+ function cleanup(element, data) {
718
+ if (activeAnimations.get(element) === data) {
719
+ activeAnimations.delete(element);
720
+ css(element, "animationDuration", "");
721
+ removeClass(element, data.classes);
722
+ }
723
+ }
724
+ function cancel(elements) {
725
+ for (const element of toNodes(elements)) {
726
+ const data = activeAnimations.get(element);
727
+ if (data) {
728
+ for (const animation of data.animations) {
729
+ animation.cancel();
730
+ }
731
+ cleanup(element, data);
732
+ }
733
+ }
721
734
  }
722
735
  const Animation = {
723
736
  in: animate$2,
@@ -725,11 +738,9 @@
725
738
  return animate$2(element, animation, duration, origin, true);
726
739
  },
727
740
  inProgress(element) {
728
- return hasClass(element, clsAnimation);
741
+ return activeAnimations.has(element);
729
742
  },
730
- cancel(element) {
731
- trigger(element, animationCanceled);
732
- }
743
+ cancel
733
744
  };
734
745
 
735
746
  function ready(fn) {
@@ -1678,7 +1689,7 @@
1678
1689
  wrapInner: wrapInner
1679
1690
  });
1680
1691
 
1681
- var VERSION = '3.25.24-dev.66bb413';
1692
+ var VERSION = '3.25.24';
1682
1693
 
1683
1694
  function initUpdates(instance) {
1684
1695
  instance._data = {};
@@ -2701,15 +2712,14 @@
2701
2712
  }
2702
2713
  }
2703
2714
  }
2704
- function toggleAnimation(el, show, cmp) {
2715
+ async function toggleAnimation(el, show, cmp) {
2705
2716
  const { animation, duration, _toggle } = cmp;
2706
2717
  if (show) {
2707
2718
  _toggle(el, true);
2708
2719
  return Animation.in(el, animation[0], duration, cmp.origin);
2709
2720
  }
2710
- return Animation.out(el, animation[1] || animation[0], duration, cmp.origin).then(
2711
- () => _toggle(el, false)
2712
- );
2721
+ await Animation.out(el, animation[1] || animation[0], duration, cmp.origin);
2722
+ _toggle(el, false);
2713
2723
  }
2714
2724
 
2715
2725
  const wrappers = /* @__PURE__ */ new WeakMap();
@@ -5202,29 +5212,14 @@
5202
5212
  let rejectAnimation;
5203
5213
  return new Promise(
5204
5214
  (resolve, reject) => once(el, "show hide", () => {
5205
- var _a;
5215
+ var _a, _b, _c;
5206
5216
  (_a = pendingReject.get(el)) == null ? void 0 : _a();
5207
5217
  rejectAnimation = reject;
5208
5218
  pendingReject.set(el, reject);
5209
5219
  _toggle(el, show);
5210
- const off = once(
5211
- transitionElement,
5212
- "transitionstart",
5213
- () => {
5214
- once(transitionElement, "transitionend transitioncancel", resolve, {
5215
- self: true
5216
- });
5217
- clearTimeout(timer);
5218
- },
5219
- { self: true }
5220
- );
5221
- const timer = setTimeout(
5222
- () => {
5223
- off();
5224
- resolve();
5225
- },
5226
- toMs(css(transitionElement, "transitionDuration"))
5227
- );
5220
+ Promise.all(
5221
+ ((_c = (_b = transitionElement.getAnimations) == null ? void 0 : _b.call(transitionElement)) != null ? _c : []).map(({ finished }) => finished)
5222
+ ).then(resolve, reject);
5228
5223
  })
5229
5224
  ).then(() => {
5230
5225
  if (pendingReject.get(el) === rejectAnimation) {
@@ -5232,9 +5227,6 @@
5232
5227
  }
5233
5228
  });
5234
5229
  }
5235
- function toMs(time) {
5236
- return toFloat(time) * (endsWith(time, "ms") ? 1 : 1e3);
5237
- }
5238
5230
  function preventBackgroundFocus(modal) {
5239
5231
  return on(document, "focusin", (e) => {
5240
5232
  if (last(active) !== modal || modal.$el.contains(e.target)) {
@@ -5854,7 +5846,7 @@
5854
5846
  ],
5855
5847
  methods: {
5856
5848
  toggle(el, inview) {
5857
- var _a, _b;
5849
+ var _a, _b, _c;
5858
5850
  const state = (_a = this.elementData) == null ? void 0 : _a.get(el);
5859
5851
  if (!state) {
5860
5852
  return;
@@ -5863,16 +5855,13 @@
5863
5855
  css(el, "opacity", !inview && this.hidden ? 0 : "");
5864
5856
  toggleClass(el, clsInView, inview);
5865
5857
  toggleClass(el, state.cls);
5866
- let match;
5867
- if (match = state.cls.match(/\buk-animation-[\w-]+/g)) {
5868
- const removeAnimationClasses = () => removeClass(el, match);
5869
- if (inview) {
5870
- state.off = once(el, "animationcancel animationend", removeAnimationClasses, {
5871
- self: true
5872
- });
5873
- } else {
5874
- removeAnimationClasses();
5875
- }
5858
+ const match = state.cls.match(/\buk-animation-[\w-]+/g);
5859
+ if (match) {
5860
+ const animations = inview && ((_c = el.getAnimations) == null ? void 0 : _c.call(el)) || [];
5861
+ let active = true;
5862
+ state.off = () => active = false;
5863
+ const cleanup = () => active && removeClass(el, match);
5864
+ Promise.all(animations.map(({ finished }) => finished)).then(cleanup, cleanup);
5876
5865
  }
5877
5866
  trigger(el, inview ? "inview" : "outview");
5878
5867
  state.inview = inview;