uikit 3.19.5-dev.8210c3e08 → 3.19.5-dev.92ee0f0d9

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 (68) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/dist/css/uikit-core-rtl.css +2 -2
  3. package/dist/css/uikit-core-rtl.min.css +1 -1
  4. package/dist/css/uikit-core.css +2 -2
  5. package/dist/css/uikit-core.min.css +1 -1
  6. package/dist/css/uikit-rtl.css +2 -2
  7. package/dist/css/uikit-rtl.min.css +1 -1
  8. package/dist/css/uikit.css +2 -2
  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 +2 -2
  13. package/dist/js/components/filter.min.js +1 -1
  14. package/dist/js/components/lightbox-panel.js +55 -55
  15. package/dist/js/components/lightbox-panel.min.js +1 -1
  16. package/dist/js/components/lightbox.js +55 -55
  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 +36 -24
  21. package/dist/js/components/parallax.min.js +1 -1
  22. package/dist/js/components/slider-parallax.js +37 -25
  23. package/dist/js/components/slider-parallax.min.js +1 -1
  24. package/dist/js/components/slider.js +37 -26
  25. package/dist/js/components/slider.min.js +1 -1
  26. package/dist/js/components/slideshow-parallax.js +37 -25
  27. package/dist/js/components/slideshow-parallax.min.js +1 -1
  28. package/dist/js/components/slideshow.js +37 -25
  29. package/dist/js/components/slideshow.min.js +1 -1
  30. package/dist/js/components/sortable.js +2 -2
  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 +101 -85
  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 +110 -92
  41. package/dist/js/uikit.min.js +1 -1
  42. package/package.json +1 -1
  43. package/src/js/api/boot.js +6 -7
  44. package/src/js/api/component.js +4 -4
  45. package/src/js/api/computed.js +20 -26
  46. package/src/js/api/observer.js +1 -1
  47. package/src/js/components/slider-parallax.js +2 -2
  48. package/src/js/components/slider.js +1 -1
  49. package/src/js/core/drop.js +1 -2
  50. package/src/js/core/height-placeholder.js +4 -1
  51. package/src/js/core/height-viewport.js +1 -1
  52. package/src/js/core/icon.js +2 -3
  53. package/src/js/core/img.js +1 -1
  54. package/src/js/core/inverse.js +13 -6
  55. package/src/js/core/modal.js +5 -6
  56. package/src/js/core/sticky.js +1 -1
  57. package/src/js/core/switcher.js +4 -1
  58. package/src/js/core/toggle.js +6 -3
  59. package/src/js/mixin/internal/animate-fade.js +1 -3
  60. package/src/js/mixin/parallax.js +7 -3
  61. package/src/js/mixin/slider.js +0 -3
  62. package/src/js/mixin/slideshow.js +3 -0
  63. package/src/js/util/filter.js +7 -14
  64. package/src/js/util/lang.js +1 -1
  65. package/src/js/util/selector.js +33 -20
  66. package/src/less/components/utility.less +1 -1
  67. package/src/scss/components/utility.scss +1 -1
  68. package/tests/js/index.js +12 -10
@@ -1,4 +1,4 @@
1
- /*! UIkit 3.19.5-dev.8210c3e08 | https://www.getuikit.com | (c) 2014 - 2024 YOOtheme | MIT License */
1
+ /*! UIkit 3.19.5-dev.92ee0f0d9 | https://www.getuikit.com | (c) 2014 - 2024 YOOtheme | MIT License */
2
2
 
3
3
  (function (global, factory) {
4
4
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('uikit-util')) :
@@ -227,7 +227,7 @@
227
227
  );
228
228
  }
229
229
  function getTransitionNodes(target) {
230
- return getRows(uikitUtil.children(target)).flat().filter((node) => uikitUtil.isVisible(node));
230
+ return getRows(uikitUtil.children(target)).flat().filter(uikitUtil.isVisible);
231
231
  }
232
232
  function awaitFrame$1() {
233
233
  return new Promise((resolve) => requestAnimationFrame(resolve));
@@ -1 +1 @@
1
- /*! UIkit 3.19.5-dev.8210c3e08 | https://www.getuikit.com | (c) 2014 - 2024 YOOtheme | MIT License */(function(e,g){typeof exports=="object"&&typeof module<"u"?module.exports=g(require("uikit-util")):typeof define=="function"&&define.amd?define("uikitsortable",["uikit-util"],g):(e=typeof globalThis<"u"?globalThis:e||self,e.UIkitSortable=g(e.UIkit.util))})(this,function(e){"use strict";function g(o,s="update"){o._connected&&o._updates.length&&(o._queued||(o._queued=new Set,e.fastdom.read(()=>{o._connected&&N(o,o._queued),delete o._queued})),o._queued.add(s.type||s))}function N(o,s){for(const{read:n,write:t,events:c=[]}of o._updates){if(!s.has("update")&&!c.some(r=>s.has(r)))continue;let a;n&&(a=n.call(o,o._data,s),a&&e.isPlainObject(a)&&e.assign(o._data,a)),t&&a!==!1&&e.fastdom.write(()=>{o._connected&&t.call(o,o._data,s)})}}function z(o){return y(e.observeResize,o,"resize")}function q(o){return y(e.observeMutation,o)}function y(o,s,n){return{observe:o,handler(){g(this,n)},...s}}q({options:{attributes:!0,attributeFilter:["style"]},target:({$el:o})=>[o,...e.children(o)]}),z({target:({$el:o})=>[o,...e.children(o)]});function P(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=u(t,n);for(let a=s.length-1;a>=0;a--){const r=s[a];if(!r[0]){r.push(t);break}const h=u(r[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 d=r.length-1;for(;d>=0;d--){const p=u(r[d],n);if(c.left>=p.left)break}r.splice(d+1,0,t);break}if(a===0){s.unshift([t]);break}}}return s}function u(o,s=!1){let{offsetTop:n,offsetLeft:t,offsetHeight:c,offsetWidth:a}=o;return s&&([n,t]=e.offsetPosition(o)),{top:n,left:t,bottom:n+c,right:t+a}}const v="uk-transition-leave",w="uk-transition-enter";function C(o,s,n,t=0){const c=b(s,!0),a={opacity:1},r={opacity:0},h=m=>()=>c===b(s)?m():Promise.reject(),d=h(async()=>{e.addClass(s,v),await Promise.all(S(s).map((m,i)=>new Promise(f=>setTimeout(()=>e.Transition.start(m,r,n/2,"ease").then(f),i*t)))),e.removeClass(s,v)}),p=h(async()=>{const m=e.height(s);e.addClass(s,w),o(),e.css(e.children(s),{opacity:0}),await A();const i=e.children(s),f=e.height(s);e.css(s,"alignContent","flex-start"),e.height(s,m);const l=S(s);e.css(i,r);const $=l.map(async(Q,X)=>{await H(X*t),await e.Transition.start(Q,a,n/2,"ease")});m!==f&&$.push(e.Transition.start(s,{height:f},n/2+l.length*t,"ease")),await Promise.all($).then(()=>{e.removeClass(s,w),c===b(s)&&(e.css(s,{height:"",alignContent:""}),e.css(i,{opacity:""}),delete s.dataset.transition)})});return e.hasClass(s,v)?T(s).then(p):e.hasClass(s,w)?T(s).then(d).then(p):d().then(p)}function b(o,s){return s&&(o.dataset.transition=1+b(o)),e.toNumber(o.dataset.transition)||0}function T(o){return Promise.all(e.children(o).filter(e.Transition.inProgress).map(s=>new Promise(n=>e.once(s,"transitionend transitioncanceled",n))))}function S(o){return P(e.children(o)).flat().filter(s=>e.isVisible(s))}function A(){return new Promise(o=>requestAnimationFrame(o))}function H(o){return new Promise(s=>setTimeout(s,o))}async function M(o,s,n){await D();let t=e.children(s);const c=t.map(f=>x(f,!0)),a={...e.css(s,["height","padding"]),display:"block"};await Promise.all(t.concat(s).map(e.Transition.cancel)),o(),t=t.concat(e.children(s).filter(f=>!e.includes(t,f))),await Promise.resolve(),e.fastdom.flush();const r=e.attr(s,"style"),h=e.css(s,["height","padding"]),[d,p]=R(s,t,c),m=t.map(f=>({style:e.attr(f,"style")}));t.forEach((f,l)=>p[l]&&e.css(f,p[l])),e.css(s,a),e.trigger(s,"scroll"),e.fastdom.flush(),await D();const i=t.map((f,l)=>e.parent(f)===s&&e.Transition.start(f,d[l],n,"ease")).concat(e.Transition.start(s,h,n,"ease"));try{await Promise.all(i),t.forEach((f,l)=>{e.attr(f,m[l]),e.parent(f)===s&&e.css(f,"display",d[l].opacity===0?"none":"")}),e.attr(s,"style",r)}catch{e.attr(t,"style",""),V(s,a)}}function x(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,...I(o)}:!1}function R(o,s,n){const t=s.map((a,r)=>e.parent(a)&&r in n?n[r]?e.isVisible(a)?I(a):{opacity:0}:{opacity:e.isVisible(a)?1:0}:!1),c=t.map((a,r)=>{const h=e.parent(s[r])===o&&(n[r]||x(s[r]));if(!h)return!1;if(!a)delete h.opacity;else if(!("opacity"in a)){const{opacity:d}=h;d%1?a.opacity=1:delete h.opacity}return h});return[t,c]}function V(o,s){for(const n in s)e.css(o,n,"")}function I(o){const{height:s,width:n}=e.offset(o);return{height:s,width:n,transform:"",...e.position(o),...e.css(o,["marginTop","marginLeft"])}}function D(){return new Promise(o=>requestAnimationFrame(o))}var B={props:{duration:Number,animation:Boolean},data:{duration:150,animation:"slide"},methods:{animate(o,s=this.$el){const n=this.animation;return(n==="fade"?C:n==="delayed-fade"?(...c)=>C(...c,40):n?M:()=>(o(),Promise.resolve()))(o,s,this.duration).catch(e.noop)}}},L={connected(){e.addClass(this.$el,this.$options.id)}},E={mixins:[L,B],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:{}},created(){for(const o of["init","start","move","end"]){const s=this[o];this[o]=n=>{e.assign(this.pos,e.getEventPos(n)),s(n)}}},events:{name:e.pointerDown,passive:!1,handler:"init"},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){e.css(s,{touchAction:"",userSelect:""}),e.css(o,{touchAction:"none",userSelect:"none"})}},update:{write(o){if(!this.drag||!e.parent(this.placeholder))return;const{pos:{x:s,y:n},origin:{offsetTop:t,offsetLeft:c},placeholder:a}=this;e.css(this.drag,{top:n-t,left:s-c});const r=this.getSortable(document.elementFromPoint(s,n));if(!r)return;const{items:h}=r;if(h.some(e.Transition.inProgress))return;const d=G(h,{x:s,y:n});if(h.length&&(!d||d===a))return;const p=this.getSortable(a),m=J(r.target,d,a,s,n,r===p&&o.moved!==d);m!==!1&&(m&&a===m||(r!==p?(p.remove(a),o.moved=d):delete o.moved,r.insert(a,m),this.touched.add(r)))},events:["move"]},methods:{init(o){const{target:s,button:n,defaultPrevented:t}=o,[c]=this.items.filter(a=>a.contains(s));!c||t||n>0||e.isInput(s)||s.closest(`.${this.clsNoDrag}`)||this.handle&&!s.closest(this.handle)||(o.preventDefault(),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=W(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]),j(this.pos),this.move(o)},move(o){this.drag?this.$emit("move"):(Math.abs(this.pos.x-this.origin.x)>this.threshold||Math.abs(this.pos.y-this.origin.y)>this.threshold)&&this.start(o)},end(){if(e.off(document,e.pointerMove,this.move),e.off(document,e.pointerUp,this.end),!this.drag)return;O();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);const n=()=>s?e.before(s,o):e.append(this.target,o);this.animate(n)},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 F;function j(o){let s=Date.now();F=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(a=>{let{scrollTop:r,scrollHeight:h}=a;const{top:d,bottom:p,height:m}=e.offsetViewport(a);if(d<t&&d+35>t)r-=c;else if(p>t&&p-35<t)r+=c;else return;if(r>0&&r<h-m)return a.scrollTop=r,!0})},15)}function O(){clearInterval(F)}function W(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 G(o,s){return o[e.findIndex(o,n=>e.pointInRect(s,e.dimensions(n)))]}function J(o,s,n,t,c,a){if(!e.children(o).length)return;const r=e.dimensions(s);if(!a)return K(o,n)||c<r.top+r.height/2?s:s.nextElementSibling;const h=e.dimensions(n),d=_([r.top,r.bottom],[h.top,h.bottom]),[p,m,i,f]=d?[t,"width","left","right"]:[c,"height","top","bottom"],l=h[m]<r[m]?r[m]-h[m]:0;return h[i]<r[i]?l&&p<r[i]+l?!1:s.nextElementSibling:l&&p>r[f]-l?!1:s}function K(o,s){const n=e.children(o).length===1;n&&e.append(o,s);const t=e.children(o),c=t.some((a,r)=>{const h=e.dimensions(a);return t.slice(r+1).some(d=>{const p=e.dimensions(d);return!_([h.left,h.right],[p.left,p.right])})});return n&&e.remove(s),c}function _(o,s){return o[1]>s[0]&&s[1]>o[0]}return typeof window<"u"&&window.UIkit&&window.UIkit.component("sortable",E),E});
1
+ /*! UIkit 3.19.5-dev.92ee0f0d9 | https://www.getuikit.com | (c) 2014 - 2024 YOOtheme | MIT License */(function(e,g){typeof exports=="object"&&typeof module<"u"?module.exports=g(require("uikit-util")):typeof define=="function"&&define.amd?define("uikitsortable",["uikit-util"],g):(e=typeof globalThis<"u"?globalThis:e||self,e.UIkitSortable=g(e.UIkit.util))})(this,function(e){"use strict";function g(o,s="update"){o._connected&&o._updates.length&&(o._queued||(o._queued=new Set,e.fastdom.read(()=>{o._connected&&N(o,o._queued),delete o._queued})),o._queued.add(s.type||s))}function N(o,s){for(const{read:n,write:t,events:c=[]}of o._updates){if(!s.has("update")&&!c.some(r=>s.has(r)))continue;let a;n&&(a=n.call(o,o._data,s),a&&e.isPlainObject(a)&&e.assign(o._data,a)),t&&a!==!1&&e.fastdom.write(()=>{o._connected&&t.call(o,o._data,s)})}}function z(o){return y(e.observeResize,o,"resize")}function q(o){return y(e.observeMutation,o)}function y(o,s,n){return{observe:o,handler(){g(this,n)},...s}}q({options:{attributes:!0,attributeFilter:["style"]},target:({$el:o})=>[o,...e.children(o)]}),z({target:({$el:o})=>[o,...e.children(o)]});function P(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=u(t,n);for(let a=s.length-1;a>=0;a--){const r=s[a];if(!r[0]){r.push(t);break}const h=u(r[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 d=r.length-1;for(;d>=0;d--){const p=u(r[d],n);if(c.left>=p.left)break}r.splice(d+1,0,t);break}if(a===0){s.unshift([t]);break}}}return s}function u(o,s=!1){let{offsetTop:n,offsetLeft:t,offsetHeight:c,offsetWidth:a}=o;return s&&([n,t]=e.offsetPosition(o)),{top:n,left:t,bottom:n+c,right:t+a}}const v="uk-transition-leave",w="uk-transition-enter";function C(o,s,n,t=0){const c=b(s,!0),a={opacity:1},r={opacity:0},h=m=>()=>c===b(s)?m():Promise.reject(),d=h(async()=>{e.addClass(s,v),await Promise.all(S(s).map((m,i)=>new Promise(f=>setTimeout(()=>e.Transition.start(m,r,n/2,"ease").then(f),i*t)))),e.removeClass(s,v)}),p=h(async()=>{const m=e.height(s);e.addClass(s,w),o(),e.css(e.children(s),{opacity:0}),await A();const i=e.children(s),f=e.height(s);e.css(s,"alignContent","flex-start"),e.height(s,m);const l=S(s);e.css(i,r);const $=l.map(async(Q,X)=>{await H(X*t),await e.Transition.start(Q,a,n/2,"ease")});m!==f&&$.push(e.Transition.start(s,{height:f},n/2+l.length*t,"ease")),await Promise.all($).then(()=>{e.removeClass(s,w),c===b(s)&&(e.css(s,{height:"",alignContent:""}),e.css(i,{opacity:""}),delete s.dataset.transition)})});return e.hasClass(s,v)?T(s).then(p):e.hasClass(s,w)?T(s).then(d).then(p):d().then(p)}function b(o,s){return s&&(o.dataset.transition=1+b(o)),e.toNumber(o.dataset.transition)||0}function T(o){return Promise.all(e.children(o).filter(e.Transition.inProgress).map(s=>new Promise(n=>e.once(s,"transitionend transitioncanceled",n))))}function S(o){return P(e.children(o)).flat().filter(e.isVisible)}function A(){return new Promise(o=>requestAnimationFrame(o))}function H(o){return new Promise(s=>setTimeout(s,o))}async function M(o,s,n){await D();let t=e.children(s);const c=t.map(f=>x(f,!0)),a={...e.css(s,["height","padding"]),display:"block"};await Promise.all(t.concat(s).map(e.Transition.cancel)),o(),t=t.concat(e.children(s).filter(f=>!e.includes(t,f))),await Promise.resolve(),e.fastdom.flush();const r=e.attr(s,"style"),h=e.css(s,["height","padding"]),[d,p]=R(s,t,c),m=t.map(f=>({style:e.attr(f,"style")}));t.forEach((f,l)=>p[l]&&e.css(f,p[l])),e.css(s,a),e.trigger(s,"scroll"),e.fastdom.flush(),await D();const i=t.map((f,l)=>e.parent(f)===s&&e.Transition.start(f,d[l],n,"ease")).concat(e.Transition.start(s,h,n,"ease"));try{await Promise.all(i),t.forEach((f,l)=>{e.attr(f,m[l]),e.parent(f)===s&&e.css(f,"display",d[l].opacity===0?"none":"")}),e.attr(s,"style",r)}catch{e.attr(t,"style",""),V(s,a)}}function x(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,...I(o)}:!1}function R(o,s,n){const t=s.map((a,r)=>e.parent(a)&&r in n?n[r]?e.isVisible(a)?I(a):{opacity:0}:{opacity:e.isVisible(a)?1:0}:!1),c=t.map((a,r)=>{const h=e.parent(s[r])===o&&(n[r]||x(s[r]));if(!h)return!1;if(!a)delete h.opacity;else if(!("opacity"in a)){const{opacity:d}=h;d%1?a.opacity=1:delete h.opacity}return h});return[t,c]}function V(o,s){for(const n in s)e.css(o,n,"")}function I(o){const{height:s,width:n}=e.offset(o);return{height:s,width:n,transform:"",...e.position(o),...e.css(o,["marginTop","marginLeft"])}}function D(){return new Promise(o=>requestAnimationFrame(o))}var B={props:{duration:Number,animation:Boolean},data:{duration:150,animation:"slide"},methods:{animate(o,s=this.$el){const n=this.animation;return(n==="fade"?C:n==="delayed-fade"?(...c)=>C(...c,40):n?M:()=>(o(),Promise.resolve()))(o,s,this.duration).catch(e.noop)}}},L={connected(){e.addClass(this.$el,this.$options.id)}},E={mixins:[L,B],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:{}},created(){for(const o of["init","start","move","end"]){const s=this[o];this[o]=n=>{e.assign(this.pos,e.getEventPos(n)),s(n)}}},events:{name:e.pointerDown,passive:!1,handler:"init"},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){e.css(s,{touchAction:"",userSelect:""}),e.css(o,{touchAction:"none",userSelect:"none"})}},update:{write(o){if(!this.drag||!e.parent(this.placeholder))return;const{pos:{x:s,y:n},origin:{offsetTop:t,offsetLeft:c},placeholder:a}=this;e.css(this.drag,{top:n-t,left:s-c});const r=this.getSortable(document.elementFromPoint(s,n));if(!r)return;const{items:h}=r;if(h.some(e.Transition.inProgress))return;const d=G(h,{x:s,y:n});if(h.length&&(!d||d===a))return;const p=this.getSortable(a),m=J(r.target,d,a,s,n,r===p&&o.moved!==d);m!==!1&&(m&&a===m||(r!==p?(p.remove(a),o.moved=d):delete o.moved,r.insert(a,m),this.touched.add(r)))},events:["move"]},methods:{init(o){const{target:s,button:n,defaultPrevented:t}=o,[c]=this.items.filter(a=>a.contains(s));!c||t||n>0||e.isInput(s)||s.closest(`.${this.clsNoDrag}`)||this.handle&&!s.closest(this.handle)||(o.preventDefault(),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=W(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]),j(this.pos),this.move(o)},move(o){this.drag?this.$emit("move"):(Math.abs(this.pos.x-this.origin.x)>this.threshold||Math.abs(this.pos.y-this.origin.y)>this.threshold)&&this.start(o)},end(){if(e.off(document,e.pointerMove,this.move),e.off(document,e.pointerUp,this.end),!this.drag)return;O();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);const n=()=>s?e.before(s,o):e.append(this.target,o);this.animate(n)},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 F;function j(o){let s=Date.now();F=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(a=>{let{scrollTop:r,scrollHeight:h}=a;const{top:d,bottom:p,height:m}=e.offsetViewport(a);if(d<t&&d+35>t)r-=c;else if(p>t&&p-35<t)r+=c;else return;if(r>0&&r<h-m)return a.scrollTop=r,!0})},15)}function O(){clearInterval(F)}function W(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 G(o,s){return o[e.findIndex(o,n=>e.pointInRect(s,e.dimensions(n)))]}function J(o,s,n,t,c,a){if(!e.children(o).length)return;const r=e.dimensions(s);if(!a)return K(o,n)||c<r.top+r.height/2?s:s.nextElementSibling;const h=e.dimensions(n),d=_([r.top,r.bottom],[h.top,h.bottom]),[p,m,i,f]=d?[t,"width","left","right"]:[c,"height","top","bottom"],l=h[m]<r[m]?r[m]-h[m]:0;return h[i]<r[i]?l&&p<r[i]+l?!1:s.nextElementSibling:l&&p>r[f]-l?!1:s}function K(o,s){const n=e.children(o).length===1;n&&e.append(o,s);const t=e.children(o),c=t.some((a,r)=>{const h=e.dimensions(a);return t.slice(r+1).some(d=>{const p=e.dimensions(d);return!_([h.left,h.right],[p.left,p.right])})});return n&&e.remove(s),c}function _(o,s){return o[1]>s[0]&&s[1]>o[0]}return typeof window<"u"&&window.UIkit&&window.UIkit.component("sortable",E),E});
@@ -1,4 +1,4 @@
1
- /*! UIkit 3.19.5-dev.8210c3e08 | https://www.getuikit.com | (c) 2014 - 2024 YOOtheme | MIT License */
1
+ /*! UIkit 3.19.5-dev.92ee0f0d9 | https://www.getuikit.com | (c) 2014 - 2024 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.19.5-dev.8210c3e08 | https://www.getuikit.com | (c) 2014 - 2024 YOOtheme | MIT License */(function(t,p){typeof exports=="object"&&typeof module<"u"?module.exports=p(require("uikit-util")):typeof define=="function"&&define.amd?define("uikittooltip",["uikit-util"],p):(t=typeof globalThis<"u"?globalThis:t||self,t.UIkitTooltip=p(t.UIkit.util))})(this,function(t){"use strict";function p(s,i=[]){try{return s?t.startsWith(s,"{")?JSON.parse(s):i.length&&!t.includes(s,":")?{[i[0]]:s}:s.split(";").reduce((o,e)=>{const[n,r]=e.split(/:(.*)/);return n&&!t.isUndefined(r)&&(o[n.trim()]=r.trim()),o},{}):{}}catch{return{}}}t.memoize((s,i)=>{const o=Object.keys(i),e=o.concat(s).map(n=>[t.hyphenate(n),`data-${t.hyphenate(n)}`]).flat();return{attributes:o,filter:e}});let C=1;function S(s,i=null){return(i==null?void 0:i.id)||`${s.$options.id}-${C++}`}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:null,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 e=[this.getPositionOffset(s),this.getShiftOffset(s)];const n=[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();e.reverse(),n.reverse()}const h=D(s),c=t.dimensions(s);t.css(s,{top:-c.height,left:-c.width}),t.positionAt(s,i,{attach:r,offset:e,boundary:o,placement:n,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 D(s){const i=t.scrollParent(s),{scrollTop:o}=i;return()=>{o!==i.scrollTop&&(i.scrollTop=o)}}var I={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){try{return await Promise.all(t.toNodes(s).map(e=>{const n=t.isBoolean(i)?i:!this.isToggled(e);if(!t.trigger(e,`before${n?"show":"hide"}`,[this]))return Promise.reject();const r=(t.isFunction(o)?o:o===!1||!this.hasAnimation?N:this.hasTransition?F:L)(e,n,this),h=n?this.clsEnter:this.clsLeave;t.addClass(e,h),t.trigger(e,n?"show":"hide",[this]);const c=()=>{t.removeClass(e,h),t.trigger(e,n?"shown":"hidden",[this])};return r?r.then(c,()=>(t.removeClass(e,h),Promise.reject())):c()})),!0}catch{return!1}},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)),t.$$("[autofocus]",s).some(e=>t.isVisible(e)?e.focus()||!0:e.blur()),o&&t.trigger(s,"toggled",[i,this])}}};function N(s,i,{_toggle:o}){return t.Animation.cancel(s),t.Transition.cancel(s),o(s,i)}async function F(s,i,{animation:o,duration:e,velocity:n,transition:r,_toggle:h}){var c;const[a="reveal",$="top"]=((c=o[0])==null?void 0:c.split("-"))||[],b=[["left","right"],["top","bottom"]],T=b[t.includes(b[0],$)?0:1],P=T[1]===$,m=["width","height"][b.indexOf(T)],d=`margin-${T[0]}`,v=`margin-${$}`;let l=t.dimensions(s)[m];const H=t.Transition.inProgress(s);await t.Transition.cancel(s),i&&h(s,!0);const V=Object.fromEntries(["padding","border","width","height","minWidth","minHeight","overflowY","overflowX",d,v].map(O=>[O,s.style[O]])),g=t.dimensions(s),y=t.toFloat(t.css(s,d)),k=t.toFloat(t.css(s,v)),f=g[m]+k;!H&&!i&&(l+=k);const[w]=t.wrapInner(s,"<div>");t.css(w,{boxSizing:"border-box",height:g.height,width:g.width,...t.css(s,["overflow","padding","borderTop","borderRight","borderBottom","borderLeft","borderImage",v])}),t.css(s,{padding:0,border:0,minWidth:0,minHeight:0,[v]:0,width:g.width,height:g.height,overflow:"hidden",[m]:l});const x=l/f;e=(n*f+e)*(i?1-x:x);const E={[m]:i?f:0};P&&(t.css(s,d,f-l+y),E[d]=i?y:f+y),!P^a==="reveal"&&(t.css(w,d,-f+l),t.Transition.start(w,{[d]:i?0:-f},e,r));try{await t.Transition.start(s,E,e,r)}finally{t.css(s,V),t.unwrap(w.firstChild),i||h(s,!1)}}function L(s,i,o){const{animation:e,duration:n,_toggle:r}=o;return i?(r(s,!0),t.Animation.in(s,e[0],n,o.origin)):t.Animation.out(s,e[1]||e[0],n,o.origin).then(()=>r(s,!1))}const U={TAB:9,ESC:27,SPACE:32,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40};var u={mixins:[A,I,B],data:{pos:"top",animation:["uk-animation-scale-up"],duration:100,cls:"uk-active"},connected(){j(this.$el)},disconnected(){this.hide()},methods:{show(){if(this.isToggled(this.tooltip||null))return;const{delay:s=0,title:i}=_(this.$options);if(!i)return;const o=t.attr(this.$el,"title"),e=t.on(this.$el,["blur",t.pointerLeave],r=>!t.isTouch(r)&&this.hide());this.reset=()=>{t.attr(this.$el,{title:o,"aria-describedby":null}),e()};const n=S(this);t.attr(this.$el,{title:null,"aria-describedby":n}),clearTimeout(this.showTimer),this.showTimer=setTimeout(()=>this._show(i,n),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,e)=>{if(!e)return;const n=()=>this.positionAt(this.tooltip,this.$el);n();const[r,h]=W(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===U.ESC),t.on([document,...t.overflowParents(this.$el)],"scroll",n,{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)&&this.show()}}};function j(s){t.isFocusable(s)||t.attr(s,"tabindex","0")}function W(s,i,[o,e]){const n=t.offset(s),r=t.offset(i),h=[["left","right"],["top","bottom"]];for(const a of h){if(n[a[0]]>=r[a[1]]){o=a[1];break}if(n[a[1]]<=r[a[0]]){o=a[0];break}}return e=(t.includes(h[0],o)?h[1]:h[0]).find(a=>n[a]===r[a])||"center",[o,e]}function _(s){const{el:i,id:o,data:e}=s;return["delay","title"].reduce((n,r)=>({[r]:t.data(i,r),...n}),{...p(t.data(i,o),["title"]),...e})}return typeof window<"u"&&window.UIkit&&window.UIkit.component("tooltip",u),u});
1
+ /*! UIkit 3.19.5-dev.92ee0f0d9 | https://www.getuikit.com | (c) 2014 - 2024 YOOtheme | MIT License */(function(t,p){typeof exports=="object"&&typeof module<"u"?module.exports=p(require("uikit-util")):typeof define=="function"&&define.amd?define("uikittooltip",["uikit-util"],p):(t=typeof globalThis<"u"?globalThis:t||self,t.UIkitTooltip=p(t.UIkit.util))})(this,function(t){"use strict";function p(s,i=[]){try{return s?t.startsWith(s,"{")?JSON.parse(s):i.length&&!t.includes(s,":")?{[i[0]]:s}:s.split(";").reduce((o,e)=>{const[n,r]=e.split(/:(.*)/);return n&&!t.isUndefined(r)&&(o[n.trim()]=r.trim()),o},{}):{}}catch{return{}}}t.memoize((s,i)=>{const o=Object.keys(i),e=o.concat(s).map(n=>[t.hyphenate(n),`data-${t.hyphenate(n)}`]).flat();return{attributes:o,filter:e}});let C=1;function S(s,i=null){return(i==null?void 0:i.id)||`${s.$options.id}-${C++}`}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:null,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 e=[this.getPositionOffset(s),this.getShiftOffset(s)];const n=[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();e.reverse(),n.reverse()}const h=D(s),c=t.dimensions(s);t.css(s,{top:-c.height,left:-c.width}),t.positionAt(s,i,{attach:r,offset:e,boundary:o,placement:n,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 D(s){const i=t.scrollParent(s),{scrollTop:o}=i;return()=>{o!==i.scrollTop&&(i.scrollTop=o)}}var I={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){try{return await Promise.all(t.toNodes(s).map(e=>{const n=t.isBoolean(i)?i:!this.isToggled(e);if(!t.trigger(e,`before${n?"show":"hide"}`,[this]))return Promise.reject();const r=(t.isFunction(o)?o:o===!1||!this.hasAnimation?N:this.hasTransition?F:L)(e,n,this),h=n?this.clsEnter:this.clsLeave;t.addClass(e,h),t.trigger(e,n?"show":"hide",[this]);const c=()=>{t.removeClass(e,h),t.trigger(e,n?"shown":"hidden",[this])};return r?r.then(c,()=>(t.removeClass(e,h),Promise.reject())):c()})),!0}catch{return!1}},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)),t.$$("[autofocus]",s).some(e=>t.isVisible(e)?e.focus()||!0:e.blur()),o&&t.trigger(s,"toggled",[i,this])}}};function N(s,i,{_toggle:o}){return t.Animation.cancel(s),t.Transition.cancel(s),o(s,i)}async function F(s,i,{animation:o,duration:e,velocity:n,transition:r,_toggle:h}){var c;const[a="reveal",$="top"]=((c=o[0])==null?void 0:c.split("-"))||[],b=[["left","right"],["top","bottom"]],T=b[t.includes(b[0],$)?0:1],P=T[1]===$,m=["width","height"][b.indexOf(T)],d=`margin-${T[0]}`,v=`margin-${$}`;let l=t.dimensions(s)[m];const H=t.Transition.inProgress(s);await t.Transition.cancel(s),i&&h(s,!0);const V=Object.fromEntries(["padding","border","width","height","minWidth","minHeight","overflowY","overflowX",d,v].map(O=>[O,s.style[O]])),g=t.dimensions(s),y=t.toFloat(t.css(s,d)),k=t.toFloat(t.css(s,v)),f=g[m]+k;!H&&!i&&(l+=k);const[w]=t.wrapInner(s,"<div>");t.css(w,{boxSizing:"border-box",height:g.height,width:g.width,...t.css(s,["overflow","padding","borderTop","borderRight","borderBottom","borderLeft","borderImage",v])}),t.css(s,{padding:0,border:0,minWidth:0,minHeight:0,[v]:0,width:g.width,height:g.height,overflow:"hidden",[m]:l});const x=l/f;e=(n*f+e)*(i?1-x:x);const E={[m]:i?f:0};P&&(t.css(s,d,f-l+y),E[d]=i?y:f+y),!P^a==="reveal"&&(t.css(w,d,-f+l),t.Transition.start(w,{[d]:i?0:-f},e,r));try{await t.Transition.start(s,E,e,r)}finally{t.css(s,V),t.unwrap(w.firstChild),i||h(s,!1)}}function L(s,i,o){const{animation:e,duration:n,_toggle:r}=o;return i?(r(s,!0),t.Animation.in(s,e[0],n,o.origin)):t.Animation.out(s,e[1]||e[0],n,o.origin).then(()=>r(s,!1))}const U={TAB:9,ESC:27,SPACE:32,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40};var u={mixins:[A,I,B],data:{pos:"top",animation:["uk-animation-scale-up"],duration:100,cls:"uk-active"},connected(){j(this.$el)},disconnected(){this.hide()},methods:{show(){if(this.isToggled(this.tooltip||null))return;const{delay:s=0,title:i}=_(this.$options);if(!i)return;const o=t.attr(this.$el,"title"),e=t.on(this.$el,["blur",t.pointerLeave],r=>!t.isTouch(r)&&this.hide());this.reset=()=>{t.attr(this.$el,{title:o,"aria-describedby":null}),e()};const n=S(this);t.attr(this.$el,{title:null,"aria-describedby":n}),clearTimeout(this.showTimer),this.showTimer=setTimeout(()=>this._show(i,n),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,e)=>{if(!e)return;const n=()=>this.positionAt(this.tooltip,this.$el);n();const[r,h]=W(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===U.ESC),t.on([document,...t.overflowParents(this.$el)],"scroll",n,{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)&&this.show()}}};function j(s){t.isFocusable(s)||t.attr(s,"tabindex","0")}function W(s,i,[o,e]){const n=t.offset(s),r=t.offset(i),h=[["left","right"],["top","bottom"]];for(const a of h){if(n[a[0]]>=r[a[1]]){o=a[1];break}if(n[a[1]]<=r[a[0]]){o=a[0];break}}return e=(t.includes(h[0],o)?h[1]:h[0]).find(a=>n[a]===r[a])||"center",[o,e]}function _(s){const{el:i,id:o,data:e}=s;return["delay","title"].reduce((n,r)=>({[r]:t.data(i,r),...n}),{...p(t.data(i,o),["title"]),...e})}return typeof window<"u"&&window.UIkit&&window.UIkit.component("tooltip",u),u});
@@ -1,4 +1,4 @@
1
- /*! UIkit 3.19.5-dev.8210c3e08 | https://www.getuikit.com | (c) 2014 - 2024 YOOtheme | MIT License */
1
+ /*! UIkit 3.19.5-dev.92ee0f0d9 | https://www.getuikit.com | (c) 2014 - 2024 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.19.5-dev.8210c3e08 | https://www.getuikit.com | (c) 2014 - 2024 YOOtheme | MIT License */(function(o,i){typeof exports=="object"&&typeof module<"u"?module.exports=i(require("uikit-util")):typeof define=="function"&&define.amd?define("uikitupload",["uikit-util"],i):(o=typeof globalThis<"u"?globalThis:o||self,o.UIkitUpload=i(o.UIkit.util))})(this,function(o){"use strict";var i={props:{i18n:Object},data:{i18n:null},methods:{t(e,...r){var a,s,t;let n=0;return((t=((a=this.i18n)==null?void 0:a[e])||((s=this.$options.i18n)==null?void 0:s[e]))==null?void 0:t.replace(/%s/g,()=>r[n++]||""))||""}}},d={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:o.noop,beforeAll:o.noop,beforeSend:o.noop,complete:o.noop,completeAll:o.noop,error:o.noop,fail:o.noop,load:o.noop,loadEnd:o.noop,loadStart:o.noop,progress:o.noop},events:{change(e){o.matches(e.target,'input[type="file"]')&&(e.preventDefault(),e.target.files&&this.upload(e.target.files),e.target.value="")},drop(e){l(e);const r=e.dataTransfer;r!=null&&r.files&&(o.removeClass(this.$el,this.clsDragover),this.upload(r.files))},dragenter(e){l(e)},dragover(e){l(e),o.addClass(this.$el,this.clsDragover)},dragleave(e){l(e),o.removeClass(this.$el,this.clsDragover)}},methods:{async upload(e){if(e=o.toArray(e),!e.length)return;o.trigger(this.$el,"upload",[e]);for(const s of e){if(this.maxSize&&this.maxSize*1e3<s.size){this.fail(this.t("invalidSize",this.maxSize));return}if(this.allow&&!h(this.allow,s.name)){this.fail(this.t("invalidName",this.allow));return}if(this.mime&&!h(this.mime,s.type)){this.fail(this.t("invalidMime",this.mime));return}}this.multiple||(e=e.slice(0,1)),this.beforeAll(this,e);const r=f(e,this.concurrent),a=async s=>{const t=new FormData;s.forEach(n=>t.append(this.name,n));for(const n in this.params)t.append(n,this.params[n]);try{const n=await u(this.url,{data:t,method:this.method,responseType:this.type,beforeSend:p=>{const{xhr:m}=p;o.on(m.upload,"progress",this.progress);for(const c of["loadStart","load","loadEnd","abort"])o.on(m,c.toLowerCase(),this[c]);return this.beforeSend(p)}});this.complete(n),r.length?await a(r.shift()):this.completeAll(n)}catch(n){this.error(n)}};await a(r.shift())}}};function h(e,r){return r.match(new RegExp(`^${e.replace(/\//g,"\\/").replace(/\*\*/g,"(\\/[^\\/]+)*").replace(/\*/g,"[^\\/]+").replace(/((?!\\))\?/g,"$1.")}$`,"i"))}function f(e,r){const a=[];for(let s=0;s<e.length;s+=r)a.push(e.slice(s,s+r));return a}function l(e){e.preventDefault(),e.stopPropagation()}function u(e,r){const a={data:null,method:"GET",headers:{},xhr:new XMLHttpRequest,beforeSend:o.noop,responseType:"",...r};return Promise.resolve().then(()=>a.beforeSend(a)).then(()=>g(e,a))}function g(e,r){return new Promise((a,s)=>{const{xhr:t}=r;for(const n in r)if(n in t)try{t[n]=r[n]}catch{}t.open(r.method.toUpperCase(),e);for(const n in r.headers)t.setRequestHeader(n,r.headers[n]);o.on(t,"load",()=>{t.status===0||t.status>=200&&t.status<300||t.status===304?a(t):s(o.assign(Error(t.statusText),{xhr:t,status:t.status}))}),o.on(t,"error",()=>s(o.assign(Error("Network Error"),{xhr:t}))),o.on(t,"timeout",()=>s(o.assign(Error("Network Timeout"),{xhr:t}))),t.send(r.data)})}return typeof window<"u"&&window.UIkit&&window.UIkit.component("upload",d),d});
1
+ /*! UIkit 3.19.5-dev.92ee0f0d9 | https://www.getuikit.com | (c) 2014 - 2024 YOOtheme | MIT License */(function(o,i){typeof exports=="object"&&typeof module<"u"?module.exports=i(require("uikit-util")):typeof define=="function"&&define.amd?define("uikitupload",["uikit-util"],i):(o=typeof globalThis<"u"?globalThis:o||self,o.UIkitUpload=i(o.UIkit.util))})(this,function(o){"use strict";var i={props:{i18n:Object},data:{i18n:null},methods:{t(e,...r){var a,s,t;let n=0;return((t=((a=this.i18n)==null?void 0:a[e])||((s=this.$options.i18n)==null?void 0:s[e]))==null?void 0:t.replace(/%s/g,()=>r[n++]||""))||""}}},d={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:o.noop,beforeAll:o.noop,beforeSend:o.noop,complete:o.noop,completeAll:o.noop,error:o.noop,fail:o.noop,load:o.noop,loadEnd:o.noop,loadStart:o.noop,progress:o.noop},events:{change(e){o.matches(e.target,'input[type="file"]')&&(e.preventDefault(),e.target.files&&this.upload(e.target.files),e.target.value="")},drop(e){l(e);const r=e.dataTransfer;r!=null&&r.files&&(o.removeClass(this.$el,this.clsDragover),this.upload(r.files))},dragenter(e){l(e)},dragover(e){l(e),o.addClass(this.$el,this.clsDragover)},dragleave(e){l(e),o.removeClass(this.$el,this.clsDragover)}},methods:{async upload(e){if(e=o.toArray(e),!e.length)return;o.trigger(this.$el,"upload",[e]);for(const s of e){if(this.maxSize&&this.maxSize*1e3<s.size){this.fail(this.t("invalidSize",this.maxSize));return}if(this.allow&&!h(this.allow,s.name)){this.fail(this.t("invalidName",this.allow));return}if(this.mime&&!h(this.mime,s.type)){this.fail(this.t("invalidMime",this.mime));return}}this.multiple||(e=e.slice(0,1)),this.beforeAll(this,e);const r=f(e,this.concurrent),a=async s=>{const t=new FormData;s.forEach(n=>t.append(this.name,n));for(const n in this.params)t.append(n,this.params[n]);try{const n=await u(this.url,{data:t,method:this.method,responseType:this.type,beforeSend:p=>{const{xhr:m}=p;o.on(m.upload,"progress",this.progress);for(const c of["loadStart","load","loadEnd","abort"])o.on(m,c.toLowerCase(),this[c]);return this.beforeSend(p)}});this.complete(n),r.length?await a(r.shift()):this.completeAll(n)}catch(n){this.error(n)}};await a(r.shift())}}};function h(e,r){return r.match(new RegExp(`^${e.replace(/\//g,"\\/").replace(/\*\*/g,"(\\/[^\\/]+)*").replace(/\*/g,"[^\\/]+").replace(/((?!\\))\?/g,"$1.")}$`,"i"))}function f(e,r){const a=[];for(let s=0;s<e.length;s+=r)a.push(e.slice(s,s+r));return a}function l(e){e.preventDefault(),e.stopPropagation()}function u(e,r){const a={data:null,method:"GET",headers:{},xhr:new XMLHttpRequest,beforeSend:o.noop,responseType:"",...r};return Promise.resolve().then(()=>a.beforeSend(a)).then(()=>g(e,a))}function g(e,r){return new Promise((a,s)=>{const{xhr:t}=r;for(const n in r)if(n in t)try{t[n]=r[n]}catch{}t.open(r.method.toUpperCase(),e);for(const n in r.headers)t.setRequestHeader(n,r.headers[n]);o.on(t,"load",()=>{t.status===0||t.status>=200&&t.status<300||t.status===304?a(t):s(o.assign(Error(t.statusText),{xhr:t,status:t.status}))}),o.on(t,"error",()=>s(o.assign(Error("Network Error"),{xhr:t}))),o.on(t,"timeout",()=>s(o.assign(Error("Network Timeout"),{xhr:t}))),t.send(r.data)})}return typeof window<"u"&&window.UIkit&&window.UIkit.component("upload",d),d});
@@ -1,4 +1,4 @@
1
- /*! UIkit 3.19.5-dev.8210c3e08 | https://www.getuikit.com | (c) 2014 - 2024 YOOtheme | MIT License */
1
+ /*! UIkit 3.19.5-dev.92ee0f0d9 | https://www.getuikit.com | (c) 2014 - 2024 YOOtheme | MIT License */
2
2
 
3
3
  (function (global, factory) {
4
4
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
@@ -88,7 +88,7 @@
88
88
  return parseFloat(value) || 0;
89
89
  }
90
90
  function toNode(element) {
91
- return toNodes(element)[0];
91
+ return element && toNodes(element)[0];
92
92
  }
93
93
  function toNodes(element) {
94
94
  return isNode(element) ? [element] : Array.from(element || []).filter(isNode);
@@ -296,10 +296,11 @@
296
296
  function isVoidElement(element) {
297
297
  return toNodes(element).some((element2) => voidElements[element2.tagName.toLowerCase()]);
298
298
  }
299
+ const isVisibleFn = Element.prototype.checkVisibility || function() {
300
+ return this.offsetWidth || this.offsetHeight || this.getClientRects().length;
301
+ };
299
302
  function isVisible(element) {
300
- return toNodes(element).some(
301
- (element2) => element2.offsetWidth || element2.offsetHeight || element2.getClientRects().length
302
- );
303
+ return toNodes(element).some((element2) => isVisibleFn.call(element2));
303
304
  }
304
305
  const selInput = "input,select,textarea,button";
305
306
  function isInput(element) {
@@ -319,13 +320,6 @@
319
320
  function matches(element, selector) {
320
321
  return toNodes(element).some((element2) => element2.matches(selector));
321
322
  }
322
- function closest(element, selector) {
323
- var _a;
324
- return (_a = toNode(element)) == null ? void 0 : _a.closest(startsWith(selector, ">") ? selector.slice(1) : selector);
325
- }
326
- function within(element, selector) {
327
- return isString(selector) ? !!closest(element, selector) : toNode(selector).contains(toNode(element));
328
- }
329
323
  function parents(element, selector) {
330
324
  const elements = [];
331
325
  while (element = parent(element)) {
@@ -374,15 +368,13 @@
374
368
  const splitSelectorRe = /.*?[^\\](?![^(]*\))(?:,|$)/g;
375
369
  const trailingCommaRe = /\s*,$/;
376
370
  const parseSelector = memoize((selector) => {
371
+ var _a;
377
372
  selector = selector.replace(addStarRe, "$1 *");
378
373
  let isContextSelector = false;
379
374
  const selectors = [];
380
- for (let sel of selector.match(splitSelectorRe)) {
375
+ for (let sel of (_a = selector.match(splitSelectorRe)) != null ? _a : []) {
381
376
  sel = sel.replace(trailingCommaRe, "").trim();
382
- if (sel[0] === ">") {
383
- sel = `:scope ${sel}`;
384
- }
385
- isContextSelector || (isContextSelector = ["!", "+", "~", "-"].includes(sel[0]));
377
+ isContextSelector || (isContextSelector = ["!", "+", "~", "-", ">"].includes(sel[0]));
386
378
  selectors.push(sel);
387
379
  }
388
380
  return {
@@ -391,6 +383,11 @@
391
383
  isContextSelector
392
384
  };
393
385
  });
386
+ const parsePositionSelector = memoize((selector) => {
387
+ selector = selector.substr(1).trim();
388
+ const index2 = selector.indexOf(" ");
389
+ return ~index2 ? [selector.substring(0, index2), selector.substring(index2 + 1)] : [selector, ""];
390
+ });
394
391
  function _query(selector, context = document, queryFn) {
395
392
  if (!selector || !isString(selector)) {
396
393
  return selector;
@@ -402,29 +399,36 @@
402
399
  selector = "";
403
400
  const isSingle = parsed.selectors.length === 1;
404
401
  for (let sel of parsed.selectors) {
402
+ let positionSel;
405
403
  let ctx = context;
406
404
  if (sel[0] === "!") {
407
- const selectors = sel.substr(1).trim().split(" ");
408
- ctx = parent(context).closest(selectors[0]);
409
- sel = selectors.slice(1).join(" ").trim();
410
- if (!sel.length && isSingle) {
405
+ [positionSel, sel] = parsePositionSelector(sel);
406
+ ctx = context.parentElement.closest(positionSel);
407
+ if (!sel && isSingle) {
411
408
  return ctx;
412
409
  }
413
410
  }
414
- if (sel[0] === "-") {
415
- const selectors = sel.substr(1).trim().split(" ");
416
- const prev = (ctx || context).previousElementSibling;
417
- ctx = matches(prev, sel.substr(1)) ? prev : null;
418
- sel = selectors.slice(1).join(" ");
419
- if (!sel.length && isSingle) {
411
+ if (ctx && sel[0] === "-") {
412
+ [positionSel, sel] = parsePositionSelector(sel);
413
+ ctx = ctx.previousElementSibling;
414
+ ctx = matches(ctx, positionSel) ? ctx : null;
415
+ if (!sel && isSingle) {
420
416
  return ctx;
421
417
  }
422
- } else if (sel[0] === "~" || sel[0] === "+" && isSingle) {
423
- return _doQuery(parent(ctx), queryFn, `:scope :nth-child(${index(ctx) + 1}) ${sel}`);
424
418
  }
425
- if (ctx) {
426
- selector += `${selector ? "," : ""}${domPath(ctx)} ${sel}`;
419
+ if (!ctx) {
420
+ continue;
421
+ }
422
+ if (isSingle) {
423
+ if (sel[0] === "~" || sel[0] === "+") {
424
+ sel = `:scope :nth-child(${index(ctx) + 1}) ${sel}`;
425
+ ctx = ctx.parentElement;
426
+ } else if (sel[0] === ">") {
427
+ sel = `:scope ${sel}`;
428
+ }
429
+ return _doQuery(ctx, queryFn, sel);
427
430
  }
431
+ selector += `${selector ? "," : ""}${domPath(ctx)} ${sel}`;
428
432
  }
429
433
  if (!isDocument(context)) {
430
434
  context = context.ownerDocument;
@@ -1562,7 +1566,6 @@
1562
1566
  camelize: camelize,
1563
1567
  children: children,
1564
1568
  clamp: clamp,
1565
- closest: closest,
1566
1569
  createEvent: createEvent,
1567
1570
  css: css,
1568
1571
  data: data,
@@ -1683,7 +1686,6 @@
1683
1686
  uniqueBy: uniqueBy,
1684
1687
  unwrap: unwrap,
1685
1688
  width: width,
1686
- within: within,
1687
1689
  wrapAll: wrapAll,
1688
1690
  wrapInner: wrapInner
1689
1691
  });
@@ -1771,6 +1773,7 @@
1771
1773
  }
1772
1774
  }
1773
1775
  }
1776
+ const mutationOptions = { subtree: true, childList: true };
1774
1777
  function registerComputed(instance, key, cb) {
1775
1778
  instance._hasComputed = true;
1776
1779
  Object.defineProperty(instance, key, {
@@ -1779,6 +1782,13 @@
1779
1782
  const { _computed, $props, $el } = instance;
1780
1783
  if (!hasOwn(_computed, key)) {
1781
1784
  _computed[key] = (cb.get || cb).call(instance, $props, $el);
1785
+ if (cb.observe && instance._computedObserver) {
1786
+ const selector = cb.observe.call(instance, $props);
1787
+ instance._computedObserver.observe(
1788
+ ["~", "+", "-"].includes(selector[0]) ? $el.parentElement : $el.getRootNode(),
1789
+ mutationOptions
1790
+ );
1791
+ }
1782
1792
  }
1783
1793
  return _computed[key];
1784
1794
  },
@@ -1799,11 +1809,16 @@
1799
1809
  read: () => runWatches(instance, resetComputed(instance)),
1800
1810
  events: ["resize", "computed"]
1801
1811
  });
1802
- registerComputedObserver();
1803
- instances$1.add(instance);
1812
+ instance._computedObserver = observeMutation(
1813
+ instance.$el,
1814
+ () => callUpdate(instance, "computed"),
1815
+ mutationOptions
1816
+ );
1804
1817
  }
1805
1818
  function disconnectComputedUpdates(instance) {
1806
- instances$1 == null ? void 0 : instances$1.delete(instance);
1819
+ var _a;
1820
+ (_a = instance._computedObserver) == null ? void 0 : _a.disconnect();
1821
+ delete instance._computedObserver;
1807
1822
  resetComputed(instance);
1808
1823
  }
1809
1824
  function resetComputed(instance) {
@@ -1811,23 +1826,6 @@
1811
1826
  instance._computed = {};
1812
1827
  return values;
1813
1828
  }
1814
- let observer;
1815
- let instances$1;
1816
- function registerComputedObserver() {
1817
- if (observer) {
1818
- return;
1819
- }
1820
- instances$1 = /* @__PURE__ */ new Set();
1821
- observer = new MutationObserver(() => {
1822
- for (const instance of instances$1) {
1823
- callUpdate(instance, "computed");
1824
- }
1825
- });
1826
- observer.observe(document, {
1827
- subtree: true,
1828
- childList: true
1829
- });
1830
- }
1831
1829
 
1832
1830
  function initEvents(instance) {
1833
1831
  instance._events = [];
@@ -1912,7 +1910,7 @@
1912
1910
  if (!includes(targets, target)) {
1913
1911
  if (observer.unobserve) {
1914
1912
  observer.unobserve(target);
1915
- } else {
1913
+ } else if (observer.observe) {
1916
1914
  observer.disconnect();
1917
1915
  }
1918
1916
  }
@@ -2187,26 +2185,26 @@
2187
2185
  };
2188
2186
  App.util = util;
2189
2187
  App.options = {};
2190
- App.version = "3.19.5-dev.8210c3e08";
2188
+ App.version = "3.19.5-dev.92ee0f0d9";
2191
2189
 
2192
2190
  const PREFIX = "uk-";
2193
2191
  const DATA = "__uikit__";
2194
2192
  const components$1 = {};
2195
2193
  function component(name, options) {
2196
- var _a;
2194
+ var _a, _b;
2197
2195
  const id = PREFIX + hyphenate(name);
2198
2196
  if (!options) {
2199
- if (isPlainObject(components$1[id])) {
2197
+ if (!components$1[id].options) {
2200
2198
  components$1[id] = App.extend(components$1[id]);
2201
2199
  }
2202
2200
  return components$1[id];
2203
2201
  }
2204
2202
  name = camelize(name);
2205
2203
  App[name] = (element, data) => createComponent(name, element, data);
2206
- const opt = isPlainObject(options) ? { ...options } : options.options;
2204
+ const opt = (_a = options.options) != null ? _a : { ...options };
2207
2205
  opt.id = id;
2208
2206
  opt.name = name;
2209
- (_a = opt.install) == null ? void 0 : _a.call(opt, App, opt, name);
2207
+ (_b = opt.install) == null ? void 0 : _b.call(opt, App, opt, name);
2210
2208
  if (App._initialized && !opt.functional) {
2211
2209
  requestAnimationFrame(() => createComponent(name, `[${id}],[data-${id}]`));
2212
2210
  }
@@ -2214,7 +2212,7 @@
2214
2212
  }
2215
2213
  function createComponent(name, element, data, ...args) {
2216
2214
  const Component = component(name);
2217
- return Component.options.functional ? new Component({ data: isPlainObject(element) ? element : [element, data, ...args] }) : element ? $$(element).map(init)[0] : init();
2215
+ return Component.options.functional ? new Component({ data: isPlainObject(element) ? element : [element, data, ...args] }) : element ? findAll(element).map(init)[0] : init();
2218
2216
  function init(element2) {
2219
2217
  const instance = getComponent(element2, name);
2220
2218
  if (instance) {
@@ -2290,14 +2288,14 @@
2290
2288
  if (name) {
2291
2289
  if (hasAttr(target, attributeName)) {
2292
2290
  createComponent(name, target);
2293
- return;
2291
+ } else {
2292
+ (_a = getComponent(target, name)) == null ? void 0 : _a.$destroy();
2294
2293
  }
2295
- (_a = getComponent(target, name)) == null ? void 0 : _a.$destroy();
2296
2294
  }
2297
2295
  }
2298
2296
  function connect(node) {
2299
2297
  const components2 = getComponents(node);
2300
- for (const name in getComponents(node)) {
2298
+ for (const name in components2) {
2301
2299
  callConnected(components2[name]);
2302
2300
  }
2303
2301
  for (const attributeName of node.getAttributeNames()) {
@@ -2307,7 +2305,7 @@
2307
2305
  }
2308
2306
  function disconnect(node) {
2309
2307
  const components2 = getComponents(node);
2310
- for (const name in getComponents(node)) {
2308
+ for (const name in components2) {
2311
2309
  callDisconnected(components2[name]);
2312
2310
  }
2313
2311
  }
@@ -2316,7 +2314,7 @@
2316
2314
  attribute = attribute.slice(5);
2317
2315
  }
2318
2316
  const cmp = components$1[attribute];
2319
- return cmp && (isPlainObject(cmp) ? cmp : cmp.options).name;
2317
+ return cmp && (cmp.options || cmp).name;
2320
2318
  }
2321
2319
 
2322
2320
  function globalApi(App) {
@@ -3577,7 +3575,8 @@
3577
3575
  document,
3578
3576
  `${pointerUp} ${pointerCancel} scroll`,
3579
3577
  ({ defaultPrevented, type, target: newTarget }) => {
3580
- if (!defaultPrevented && type === pointerUp && target === newTarget && !(drop.targetEl && within(target, drop.targetEl))) {
3578
+ var _a;
3579
+ if (!defaultPrevented && type === pointerUp && target === newTarget && !((_a = drop.targetEl) == null ? void 0 : _a.contains(target))) {
3581
3580
  drop.hide(false);
3582
3581
  }
3583
3582
  },
@@ -4284,7 +4283,10 @@
4284
4283
  target: ""
4285
4284
  },
4286
4285
  computed: {
4287
- target: ({ target }, $el) => query(target, $el)
4286
+ target: {
4287
+ get: ({ target }, $el) => query(target, $el),
4288
+ observe: ({ target }) => target
4289
+ }
4288
4290
  },
4289
4291
  observe: resize({ target: ({ target }) => target }),
4290
4292
  update: {
@@ -4340,7 +4342,7 @@
4340
4342
  const top = offsetPosition(offsetTopEl)[0] - offsetPosition(scrollElement)[0];
4341
4343
  minHeight += top > 0 && top < viewportHeight / 2 ? ` - ${top}px` : "";
4342
4344
  } else {
4343
- minHeight += ` - ${css(scrollElement, "paddingTop")}`;
4345
+ minHeight += ` - ${boxModelAdjust(scrollElement, "height", css(scrollElement, "boxSizing"))}px`;
4344
4346
  }
4345
4347
  }
4346
4348
  if (this.offsetBottom === true) {
@@ -4553,7 +4555,7 @@
4553
4555
  i18n: { toggle: "Open Search", submit: "Submit Search" },
4554
4556
  beforeConnect() {
4555
4557
  const isToggle = hasClass(this.$el, "uk-search-toggle") || hasClass(this.$el, "uk-navbar-toggle");
4556
- this.icon = isToggle ? "search-toggle-icon" : hasClass(this.$el, "uk-search-icon") && closest(this.$el, ".uk-search-large") ? "search-large" : closest(this.$el, ".uk-search-navbar") ? "search-navbar" : this.$props.icon;
4558
+ this.icon = isToggle ? "search-toggle-icon" : hasClass(this.$el, "uk-search-icon") && this.$el.closest(".uk-search-large") ? "search-large" : this.$el.closest(".uk-search-navbar") ? "search-navbar" : this.$props.icon;
4557
4559
  if (hasAttr(this.$el, "aria-label")) {
4558
4560
  return;
4559
4561
  }
@@ -4697,13 +4699,13 @@
4697
4699
  delete this.img;
4698
4700
  },
4699
4701
  observe: intersection({
4700
- target: ({ $el, $props }) => [$el, ...queryAll($props.target, $el)],
4701
4702
  handler(entries, observer) {
4702
4703
  this.load();
4703
4704
  observer.disconnect();
4704
4705
  },
4705
4706
  options: ({ margin }) => ({ rootMargin: margin }),
4706
- filter: ({ loading }) => loading === "lazy"
4707
+ filter: ({ loading }) => loading === "lazy",
4708
+ target: ({ $el, $props }) => $props.target ? [$el, ...queryAll($props.target, $el)] : $el
4707
4709
  }),
4708
4710
  methods: {
4709
4711
  load() {
@@ -4793,13 +4795,15 @@
4793
4795
  selActive: false
4794
4796
  },
4795
4797
  computed: {
4796
- target: ({ target }, $el) => target ? $$(target, $el) : [$el]
4798
+ target: ({ target }, $el) => target ? $$(target, $el) : $el
4797
4799
  },
4798
4800
  observe: [
4799
4801
  intersection({
4800
- handler([{ isIntersecting }]) {
4801
- this.isIntersecting = isIntersecting;
4802
+ handler(entries) {
4803
+ this.isIntersecting = entries.some(({ isIntersecting }) => isIntersecting);
4804
+ this.$emit();
4802
4805
  },
4806
+ target: ({ target }) => target,
4803
4807
  args: { intersecting: false }
4804
4808
  }),
4805
4809
  mutation({
@@ -4809,7 +4813,10 @@
4809
4813
  {
4810
4814
  target: ({ target }) => target,
4811
4815
  observe: (target, handler) => {
4812
- const observer = observeResize([...target, document.documentElement], handler);
4816
+ const observer = observeResize(
4817
+ [...toNodes(target), document.documentElement],
4818
+ handler
4819
+ );
4813
4820
  const listener = [
4814
4821
  on(document, "scroll itemshown itemhidden", handler, {
4815
4822
  passive: true,
@@ -4825,6 +4832,8 @@
4825
4832
  })
4826
4833
  ];
4827
4834
  return {
4835
+ observe: observer.observe.bind(observer),
4836
+ unobserve: observer.unobserve.bind(observer),
4828
4837
  disconnect() {
4829
4838
  observer.disconnect();
4830
4839
  listener.map((off) => off());
@@ -4841,7 +4850,7 @@
4841
4850
  if (!this.isIntersecting) {
4842
4851
  return false;
4843
4852
  }
4844
- for (const target of this.target) {
4853
+ for (const target of toNodes(this.target)) {
4845
4854
  replaceClass(
4846
4855
  target,
4847
4856
  "uk-light,uk-dark",
@@ -5208,10 +5217,11 @@
5208
5217
  };
5209
5218
  function install({ modal }) {
5210
5219
  modal.dialog = function(content, options) {
5211
- const dialog = modal(
5212
- `<div class="uk-modal"> <div class="uk-modal-dialog">${content}</div> </div>`,
5213
- { stack: true, role: "alertdialog", ...options }
5214
- );
5220
+ const dialog = modal($(`<div><div class="uk-modal-dialog">${content}</div></div>`), {
5221
+ stack: true,
5222
+ role: "alertdialog",
5223
+ ...options
5224
+ });
5215
5225
  dialog.show();
5216
5226
  on(
5217
5227
  dialog.$el,
@@ -5830,7 +5840,7 @@
5830
5840
  target: () => document.scrollingElement,
5831
5841
  options: { box: "content-box" }
5832
5842
  }),
5833
- resize({ target: ({ $el }) => $el })
5843
+ resize()
5834
5844
  ],
5835
5845
  events: [
5836
5846
  {
@@ -6250,7 +6260,10 @@
6250
6260
  swiping: true
6251
6261
  },
6252
6262
  computed: {
6253
- connects: ({ connect }, $el) => queryAll(connect, $el),
6263
+ connects: {
6264
+ get: ({ connect }, $el) => queryAll(connect, $el),
6265
+ observe: ({ connect }) => connect
6266
+ },
6254
6267
  connectChildren() {
6255
6268
  return this.connects.map((el) => children(el)).flat();
6256
6269
  },
@@ -6439,9 +6452,12 @@
6439
6452
  queued: true
6440
6453
  },
6441
6454
  computed: {
6442
- target({ target }, $el) {
6443
- target = queryAll(target || $el.hash, $el);
6444
- return target.length ? target : [$el];
6455
+ target: {
6456
+ get: ({ target }, $el) => {
6457
+ target = queryAll(target || $el.hash, $el);
6458
+ return target.length ? target : [$el];
6459
+ },
6460
+ observe: ({ target }) => target
6445
6461
  }
6446
6462
  },
6447
6463
  connected() {