@frankenstyle/uikit 0.0.1 → 0.0.3

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 (90) hide show
  1. package/.prettierignore +0 -1
  2. package/CHANGELOG.md +62 -0
  3. package/README.md +0 -1
  4. package/build/publishDev.js +2 -3
  5. package/build/release.js +12 -7
  6. package/build/util.js +6 -6
  7. package/dist/css/uikit-rtl.css +105 -92
  8. package/dist/css/uikit-rtl.min.css +1 -1
  9. package/dist/css/uikit.css +105 -92
  10. package/dist/css/uikit.min.css +1 -1
  11. package/dist/js/components/countdown.js +1 -1
  12. package/dist/js/components/countdown.min.js +1 -1
  13. package/dist/js/components/filter.js +1 -1
  14. package/dist/js/components/filter.min.js +1 -1
  15. package/dist/js/components/lightbox-panel.js +35 -30
  16. package/dist/js/components/lightbox-panel.min.js +1 -1
  17. package/dist/js/components/lightbox.js +35 -30
  18. package/dist/js/components/lightbox.min.js +1 -1
  19. package/dist/js/components/notification.js +2 -2
  20. package/dist/js/components/notification.min.js +1 -1
  21. package/dist/js/components/parallax.js +1 -7
  22. package/dist/js/components/parallax.min.js +1 -1
  23. package/dist/js/components/slider-parallax.js +1 -7
  24. package/dist/js/components/slider-parallax.min.js +1 -1
  25. package/dist/js/components/slider.js +41 -42
  26. package/dist/js/components/slider.min.js +1 -1
  27. package/dist/js/components/slideshow-parallax.js +1 -7
  28. package/dist/js/components/slideshow-parallax.min.js +1 -1
  29. package/dist/js/components/slideshow.js +34 -35
  30. package/dist/js/components/slideshow.min.js +1 -1
  31. package/dist/js/components/sortable.js +5 -6
  32. package/dist/js/components/sortable.min.js +1 -1
  33. package/dist/js/components/tooltip.js +2 -2
  34. package/dist/js/components/tooltip.min.js +1 -1
  35. package/dist/js/components/upload.js +1 -1
  36. package/dist/js/components/upload.min.js +1 -1
  37. package/dist/js/uikit-core.js +123 -70
  38. package/dist/js/uikit-core.min.js +1 -1
  39. package/dist/js/uikit-icons.js +1 -1
  40. package/dist/js/uikit-icons.min.js +1 -1
  41. package/dist/js/uikit.js +131 -74
  42. package/dist/js/uikit.min.js +1 -1
  43. package/package.json +23 -24
  44. package/src/images/components/accordion-icon.svg +20 -0
  45. package/src/js/components/internal/slider-transitioner.js +1 -1
  46. package/src/js/components/slider.js +6 -7
  47. package/src/js/components/sortable.js +5 -6
  48. package/src/js/core/accordion.js +14 -10
  49. package/src/js/core/drop.js +8 -1
  50. package/src/js/core/height-viewport.js +12 -1
  51. package/src/js/core/icon.js +4 -2
  52. package/src/js/core/index.js +1 -0
  53. package/src/js/core/modal.js +5 -5
  54. package/src/js/core/overflow-fade.js +83 -8
  55. package/src/js/mixin/slider-drag.js +21 -14
  56. package/src/js/mixin/slider-nav.js +16 -18
  57. package/src/js/util/attr.js +1 -5
  58. package/src/less/components/accordion.less +110 -46
  59. package/src/less/components/card.less +1 -1
  60. package/src/less/components/form.less +10 -7
  61. package/src/less/components/lightbox.less +0 -5
  62. package/src/less/components/nav.less +1 -1
  63. package/src/less/components/overlay.less +2 -2
  64. package/src/less/components/utility.less +7 -4
  65. package/src/less/theme/accordion.less +31 -38
  66. package/src/scss/components/accordion.scss +77 -30
  67. package/src/scss/components/form.scss +4 -4
  68. package/src/scss/components/lightbox.scss +0 -5
  69. package/src/scss/components/nav.scss +1 -1
  70. package/src/scss/components/utility.scss +7 -4
  71. package/src/scss/mixins-theme.scss +39 -23
  72. package/src/scss/mixins.scss +38 -15
  73. package/src/scss/variables-theme.scss +20 -18
  74. package/src/scss/variables.scss +18 -14
  75. package/tests/accordion.html +76 -17
  76. package/tests/card.html +87 -1
  77. package/tests/height-viewport.html +12 -3
  78. package/tests/index.html +7 -7
  79. package/tests/navbar.html +1 -1
  80. package/tests/overlay.html +181 -13
  81. package/tests/parallax.html +1 -1
  82. package/tests/position.html +16 -16
  83. package/tests/sticky.html +2 -2
  84. package/tests/tab.html +1 -1
  85. package/tests/thumbnav.html +2 -2
  86. package/tests/toggle.html +2 -2
  87. package/tests/transition.html +19 -19
  88. package/tests/upload.html +2 -2
  89. package/src/images/backgrounds/accordion-close.svg +0 -4
  90. package/src/images/backgrounds/accordion-open.svg +0 -3
@@ -1,4 +1,4 @@
1
- /*! UIkit 3.24.2 | https://www.getuikit.com | (c) 2014 - 2025 YOOtheme | MIT License */
1
+ /*! UIkit 0.0.3 | 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.24.2 | https://www.getuikit.com | (c) 2014 - 2025 YOOtheme | MIT License */(function(t,i){typeof exports=="object"&&typeof module<"u"?module.exports=i(require("uikit-util")):typeof define=="function"&&define.amd?define("uikitcountdown",["uikit-util"],i):(t=typeof globalThis<"u"?globalThis:t||self,t.UIkitCountdown=i(t.UIkit.util))})(this,function(t){"use strict";var i={connected(){t.addClass(this.$el,this.$options.id)}};const r=["days","hours","minutes","seconds"];var d={mixins:[i],props:{date:String,clsWrapper:String,role:String,reload:Boolean},data:{date:"",clsWrapper:".uk-countdown-%unit%",role:"timer",reload:!1},connected(){this.$el.role=this.role,this.date=t.toFloat(Date.parse(this.$props.date)),this.started=this.end=!1,this.start()},disconnected(){this.stop()},events:{name:"visibilitychange",el:()=>document,handler(){document.hidden?this.stop():this.start()}},methods:{start(){this.stop(),this.update()},stop(){this.timer&&(clearInterval(this.timer),t.trigger(this.$el,"countdownstop"),this.timer=null)},update(){const o=a(this.date);o.total?this.timer||(this.started=!0,this.timer=setInterval(this.update,1e3),t.trigger(this.$el,"countdownstart")):(this.stop(),this.end||(t.trigger(this.$el,"countdownend"),this.end=!0,this.reload&&this.started&&window.location.reload()));for(const e of r){const s=t.$(this.clsWrapper.replace("%unit%",e),this.$el);if(!s)continue;let n=Math.trunc(o[e]).toString().padStart(2,"0");s.textContent!==n&&(n=n.split(""),n.length!==s.children.length&&t.html(s,n.map(()=>"<span></span>").join("")),n.forEach((h,l)=>s.children[l].textContent=h))}}}};function a(o){const e=Math.max(0,o-Date.now())/1e3;return{total:e,seconds:e%60,minutes:e/60%60,hours:e/60/60%24,days:e/60/60/24}}return typeof window<"u"&&window.UIkit&&window.UIkit.component("countdown",d),d});
1
+ /*! UIkit 0.0.3 | https://www.getuikit.com | (c) 2014 - 2026 YOOtheme | MIT License */(function(t,i){typeof exports=="object"&&typeof module<"u"?module.exports=i(require("uikit-util")):typeof define=="function"&&define.amd?define("uikitcountdown",["uikit-util"],i):(t=typeof globalThis<"u"?globalThis:t||self,t.UIkitCountdown=i(t.UIkit.util))})(this,function(t){"use strict";var i={connected(){t.addClass(this.$el,this.$options.id)}};const r=["days","hours","minutes","seconds"];var d={mixins:[i],props:{date:String,clsWrapper:String,role:String,reload:Boolean},data:{date:"",clsWrapper:".uk-countdown-%unit%",role:"timer",reload:!1},connected(){this.$el.role=this.role,this.date=t.toFloat(Date.parse(this.$props.date)),this.started=this.end=!1,this.start()},disconnected(){this.stop()},events:{name:"visibilitychange",el:()=>document,handler(){document.hidden?this.stop():this.start()}},methods:{start(){this.stop(),this.update()},stop(){this.timer&&(clearInterval(this.timer),t.trigger(this.$el,"countdownstop"),this.timer=null)},update(){const o=a(this.date);o.total?this.timer||(this.started=!0,this.timer=setInterval(this.update,1e3),t.trigger(this.$el,"countdownstart")):(this.stop(),this.end||(t.trigger(this.$el,"countdownend"),this.end=!0,this.reload&&this.started&&window.location.reload()));for(const e of r){const s=t.$(this.clsWrapper.replace("%unit%",e),this.$el);if(!s)continue;let n=Math.trunc(o[e]).toString().padStart(2,"0");s.textContent!==n&&(n=n.split(""),n.length!==s.children.length&&t.html(s,n.map(()=>"<span></span>").join("")),n.forEach((h,l)=>s.children[l].textContent=h))}}}};function a(o){const e=Math.max(0,o-Date.now())/1e3;return{total:e,seconds:e%60,minutes:e/60%60,hours:e/60/60%24,days:e/60/60/24}}return typeof window<"u"&&window.UIkit&&window.UIkit.component("countdown",d),d});
@@ -1,4 +1,4 @@
1
- /*! UIkit 3.24.2 | https://www.getuikit.com | (c) 2014 - 2025 YOOtheme | MIT License */
1
+ /*! UIkit 0.0.3 | 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.24.2 | https://www.getuikit.com | (c) 2014 - 2025 YOOtheme | MIT License */(function(n,y){typeof exports=="object"&&typeof module<"u"?module.exports=y(require("uikit-util")):typeof define=="function"&&define.amd?define("uikitfilter",["uikit-util"],y):(n=typeof globalThis<"u"?globalThis:n||self,n.UIkitFilter=y(n.UIkit.util))})(this,function(n){"use strict";function y(e,s=[]){try{return e?n.startsWith(e,"{")?JSON.parse(e):s.length&&!n.includes(e,":")?{[s[0]]:e}:e.split(";").reduce((o,t)=>{const[a,r]=t.split(/:(.*)/);return a&&!n.isUndefined(r)&&(o[a.trim()]=r.trim()),o},{}):{}}catch{return{}}}function N(e,s="update"){e._connected&&e._updates.length&&(e._updateCount||(e._updateCount=0,requestAnimationFrame(()=>e._updateCount=0)),e._queued||(e._queued=new Set,n.fastdom.read(()=>{e._connected&&j(e,e._queued),e._queued=null})),e._updateCount++<20&&e._queued.add(s.type||s))}function j(e,s){for(const{read:o,write:t,events:a=[]}of e._updates){if(!s.has("update")&&!a.some(f=>s.has(f)))continue;let r;o&&(r=o.call(e,e._data,s),r&&n.isPlainObject(r)&&n.assign(e._data,r)),t&&r!==!1&&n.fastdom.write(()=>{e._connected&&t.call(e,e._data,s)})}}function B(e){return I(n.observeResize,e,"resize")}function $(e){return I(n.observeMutation,e)}function I(e,s,o){return{observe:e,handler(){N(this,o)},...s}}$({options:{childList:!0}}),$({options:{attributes:!0,attributeFilter:["style"]}}),B({handler(e){for(const{borderBoxSize:[{inlineSize:s,blockSize:o}]}of e)if(s||o){this.$emit("resize");return}},target:({$el:e})=>[e,...n.children(e)]});function D(e){const s=[[]],o=e.some((t,a)=>a&&e[a-1].offsetParent!==t.offsetParent);for(const t of e){if(!n.isVisible(t))continue;const a=P(t,o);for(let r=s.length-1;r>=0;r--){const f=s[r];if(!f[0]){f.push(t);break}const d=P(f[0],o);if(a.top>=d.bottom-1&&a.top!==d.top){s.push([t]);break}if(a.bottom-1>d.top||a.top===d.top){let p=f.length-1;for(;p>=0;p--){const u=P(f[p],o);if(a.left>=u.left)break}f.splice(p+1,0,t);break}if(r===0){s.unshift([t]);break}}}return s}function P(e,s=!1){let{offsetTop:o,offsetLeft:t,offsetHeight:a,offsetWidth:r}=e;return s&&([o,t]=n.offsetPosition(e)),{top:o,left:t,bottom:o+a,right:t+r}}function _(){return new Promise(e=>requestAnimationFrame(e))}function g(e){return new Promise(s=>setTimeout(s,e))}const C="uk-transition-leave",S="uk-transition-enter";function F(e,s,o,t=0){const a=T(s,!0),r={opacity:1},f={opacity:0},d=()=>a===T(s),p=h=>()=>d()?h():Promise.reject(),u=p(async()=>{n.addClass(s,C),await(t?q(s).reduce(async(h,m,l,w)=>{if(await h,!n.isInView(m)||!d()){n.css(m,f);return}await g(t);const c=n.Transition.start(m,f,o/2,"ease");w.length-1===l&&await c},Promise.resolve()):n.Transition.start(s,f,o/2,"ease")),n.removeClass(s,C)}),b=p(async()=>{const h=n.height(s);n.addClass(s,S),e(),n.css(t?n.children(s):s,f),n.height(s,h),await g(),n.height(s,"");const m=n.height(s);n.css(s,"alignContent","flex-start"),n.height(s,h);let l=[],w=o/2;if(t){const c=q(s);n.css(n.children(s),f),l=c.reduce(async(i,v,Y,Z)=>{if(await i,!n.isInView(v)||!d()){n.resetProps(v,r);return}await g(t);const k=n.Transition.start(v,r,o/2,"ease").then(()=>d()&&n.resetProps(v,r));Z.length-1===Y&&await k},Promise.resolve()),w+=c.length*t}if(!t||h!==m){const c={height:m,...t?{}:r};l.push(n.Transition.start(s,c,w,"ease"))}await Promise.all(l),n.removeClass(s,S),d()&&(n.resetProps(s,{height:"",alignContent:"",...r}),delete s.dataset.transition)});return n.hasClass(s,C)?x(s).then(b):n.hasClass(s,S)?x(s).then(u).then(b):u().then(b)}function T(e,s){return s&&(e.dataset.transition=1+T(e)),n.toNumber(e.dataset.transition)||0}function x(e){return Promise.all(n.children(e).filter(n.Transition.inProgress).map(s=>new Promise(o=>n.once(s,"transitionend transitioncanceled",o))))}function q(e){return D(n.children(e)).flat().filter(n.isVisible)}async function L(e,s,o){await _();let t=n.children(s);const a=t.map(c=>z(c,!0)),r={...n.css(s,["height","padding"]),display:"block"},f=t.filter(c=>n.isInView(c)),d=t.concat(s);await Promise.all(d.map(n.Transition.cancel)),n.css(d,"transitionProperty","none"),await e();const p=n.children(s).filter(c=>!n.includes(t,c));t=t.concat(p),await Promise.resolve(),n.css(d,"transitionProperty","");const u=n.attr(s,"style"),b=n.css(s,["height","padding"]),[h,m]=H(s,t,a),l=t.map(c=>({style:n.attr(c,"style")}));f.push(...t.filter(c=>n.isInView(c))),t.forEach((c,i)=>m[i]&&n.css(c,m[i])),n.css(s,r),n.trigger(s,"scroll"),await _();const w=t.map((c,i)=>{if(n.parent(c)===s&&f.includes(c))return n.Transition.start(c,h[i],o,"ease",!p.includes(c))}).concat(n.Transition.start(s,b,o,"ease",!0));try{await Promise.all(w),t.forEach((c,i)=>{n.attr(c,l[i]),n.parent(c)===s&&n.css(c,"display",h[i].opacity===0?"none":"")}),n.attr(s,"style",u)}catch{n.attr(t,"style",""),n.resetProps(s,r)}}function z(e,s){const o=n.css(e,"zIndex");return n.isVisible(e)?{display:"",opacity:s?n.css(e,"opacity"):"0",pointerEvents:"none",position:"absolute",zIndex:o==="auto"?n.index(e):o,...E(e)}:!1}function H(e,s,o){const t=s.map((r,f)=>n.parent(r)&&f in o?o[f]?n.isVisible(r)?E(r):{opacity:0}:{opacity:n.isVisible(r)?1:0}:!1),a=t.map((r,f)=>{const d=n.parent(s[f])===e&&(o[f]||z(s[f]));if(!d)return!1;if(!r)delete d.opacity;else if(!("opacity"in r)){const{opacity:p}=d;p%1?r.opacity=1:delete d.opacity}return d});return[t,a]}function E(e){const{height:s,width:o}=n.dimensions(e);let{top:t,left:a}=n.position(e);const r=n.offsetViewport(e.ownerDocument);return t=n.clamp(t,r.top-s-r.height,r.bottom+r.height),a=n.clamp(a,r.left-o-r.width,r.right+r.width),{height:s,width:o,top:t,left:a,transform:"",...n.css(e,["marginTop","marginLeft"])}}var M={props:{duration:Number,animation:Boolean},data:{duration:150,animation:"slide"},methods:{animate(e,s=this.$el){const o=this.animation;return(o==="fade"?F:o==="delayed-fade"?(...a)=>F(...a,40):o?L:()=>(e(),Promise.resolve()))(e,s,this.duration).catch(n.noop)}}};function W(e){e.target.closest('a[href="#"],a[href=""]')&&e.preventDefault()}const R={SPACE:32};var V={mixins:[M],args:"target",props:{target:String,selActive:Boolean},data:{target:"",selActive:!1,attrItem:"uk-filter-control",cls:"uk-active",duration:250},computed:{children:({target:e},s)=>n.$$(`${e} > *`,s),toggles:({attrItem:e},s)=>n.$$(`[${e}],[data-${e}]`,s)},watch:{toggles(e){this.updateState();const s=n.$$(this.selActive,this.$el);for(const o of e){this.selActive!==!1&&n.toggleClass(o,this.cls,n.includes(s,o));const t=X(o);n.isTag(t,"a")&&(t.role="button")}},children(e,s){s&&this.updateState()}},events:{name:"click keydown",delegate:({attrItem:e})=>`[${e}],[data-${e}]`,handler(e){e.type==="keydown"&&e.keyCode!==R.SPACE||e.target.closest("a,button")&&(W(e),this.apply(e.current))}},methods:{apply(e){const s=this.getState(),o=O(e,this.attrItem,this.getState());J(s,o)||this.setState(o)},getState(){return this.toggles.filter(e=>n.hasClass(e,this.cls)).reduce((e,s)=>O(s,this.attrItem,e),{filter:{"":""},sort:[]})},async setState(e,s=!0){e={filter:{"":""},sort:[],...e},n.trigger(this.$el,"beforeFilter",[this,e]);for(const o of this.toggles)n.toggleClass(o,this.cls,K(o,this.attrItem,e));await Promise.all(n.$$(this.target,this.$el).map(o=>{const t=()=>G(e,o,n.children(o));return s?this.animate(t,o):t()})),n.trigger(this.$el,"afterFilter",[this])},updateState(){n.fastdom.write(()=>this.setState(this.getState(),!1))}}};function A(e,s){return y(n.data(e,s),["filter"])}function J(e,s){return["filter","sort"].every(o=>n.isEqual(e[o],s[o]))}function G(e,s,o){for(const r of o)n.css(r,"display",Object.values(e.filter).every(f=>!f||n.matches(r,f))?"":"none");const[t,a]=e.sort;if(t){const r=Q(o,t,a);n.isEqual(r,o)||n.append(s,r)}}function O(e,s,o){const{filter:t,group:a,sort:r,order:f="asc"}=A(e,s);return(t||n.isUndefined(r))&&(a?t?(delete o.filter[""],o.filter[a]=t):(delete o.filter[a],(n.isEmpty(o.filter)||""in o.filter)&&(o.filter={"":t||""})):o.filter={"":t||""}),n.isUndefined(r)||(o.sort=[r,f]),o}function K(e,s,{filter:o={"":""},sort:[t,a]}){const{filter:r="",group:f="",sort:d,order:p="asc"}=A(e,s);return n.isUndefined(d)?f in o&&r===o[f]||!r&&f&&!(f in o)&&!o[""]:t===d&&a===p}function Q(e,s,o){return[...e].sort((t,a)=>n.data(t,s).localeCompare(n.data(a,s),void 0,{numeric:!0})*(o==="asc"||-1))}function X(e){return n.$("a,button",e)||e}return typeof window<"u"&&window.UIkit&&window.UIkit.component("filter",V),V});
1
+ /*! UIkit 0.0.3 | https://www.getuikit.com | (c) 2014 - 2026 YOOtheme | MIT License */(function(n,y){typeof exports=="object"&&typeof module<"u"?module.exports=y(require("uikit-util")):typeof define=="function"&&define.amd?define("uikitfilter",["uikit-util"],y):(n=typeof globalThis<"u"?globalThis:n||self,n.UIkitFilter=y(n.UIkit.util))})(this,function(n){"use strict";function y(e,s=[]){try{return e?n.startsWith(e,"{")?JSON.parse(e):s.length&&!n.includes(e,":")?{[s[0]]:e}:e.split(";").reduce((o,t)=>{const[a,r]=t.split(/:(.*)/);return a&&!n.isUndefined(r)&&(o[a.trim()]=r.trim()),o},{}):{}}catch{return{}}}function N(e,s="update"){e._connected&&e._updates.length&&(e._updateCount||(e._updateCount=0,requestAnimationFrame(()=>e._updateCount=0)),e._queued||(e._queued=new Set,n.fastdom.read(()=>{e._connected&&j(e,e._queued),e._queued=null})),e._updateCount++<20&&e._queued.add(s.type||s))}function j(e,s){for(const{read:o,write:t,events:a=[]}of e._updates){if(!s.has("update")&&!a.some(f=>s.has(f)))continue;let r;o&&(r=o.call(e,e._data,s),r&&n.isPlainObject(r)&&n.assign(e._data,r)),t&&r!==!1&&n.fastdom.write(()=>{e._connected&&t.call(e,e._data,s)})}}function B(e){return I(n.observeResize,e,"resize")}function $(e){return I(n.observeMutation,e)}function I(e,s,o){return{observe:e,handler(){N(this,o)},...s}}$({options:{childList:!0}}),$({options:{attributes:!0,attributeFilter:["style"]}}),B({handler(e){for(const{borderBoxSize:[{inlineSize:s,blockSize:o}]}of e)if(s||o){this.$emit("resize");return}},target:({$el:e})=>[e,...n.children(e)]});function D(e){const s=[[]],o=e.some((t,a)=>a&&e[a-1].offsetParent!==t.offsetParent);for(const t of e){if(!n.isVisible(t))continue;const a=P(t,o);for(let r=s.length-1;r>=0;r--){const f=s[r];if(!f[0]){f.push(t);break}const d=P(f[0],o);if(a.top>=d.bottom-1&&a.top!==d.top){s.push([t]);break}if(a.bottom-1>d.top||a.top===d.top){let p=f.length-1;for(;p>=0;p--){const u=P(f[p],o);if(a.left>=u.left)break}f.splice(p+1,0,t);break}if(r===0){s.unshift([t]);break}}}return s}function P(e,s=!1){let{offsetTop:o,offsetLeft:t,offsetHeight:a,offsetWidth:r}=e;return s&&([o,t]=n.offsetPosition(e)),{top:o,left:t,bottom:o+a,right:t+r}}function _(){return new Promise(e=>requestAnimationFrame(e))}function g(e){return new Promise(s=>setTimeout(s,e))}const C="uk-transition-leave",S="uk-transition-enter";function F(e,s,o,t=0){const a=T(s,!0),r={opacity:1},f={opacity:0},d=()=>a===T(s),p=h=>()=>d()?h():Promise.reject(),u=p(async()=>{n.addClass(s,C),await(t?q(s).reduce(async(h,m,l,w)=>{if(await h,!n.isInView(m)||!d()){n.css(m,f);return}await g(t);const c=n.Transition.start(m,f,o/2,"ease");w.length-1===l&&await c},Promise.resolve()):n.Transition.start(s,f,o/2,"ease")),n.removeClass(s,C)}),b=p(async()=>{const h=n.height(s);n.addClass(s,S),e(),n.css(t?n.children(s):s,f),n.height(s,h),await g(),n.height(s,"");const m=n.height(s);n.css(s,"alignContent","flex-start"),n.height(s,h);let l=[],w=o/2;if(t){const c=q(s);n.css(n.children(s),f),l=c.reduce(async(i,v,Y,Z)=>{if(await i,!n.isInView(v)||!d()){n.resetProps(v,r);return}await g(t);const k=n.Transition.start(v,r,o/2,"ease").then(()=>d()&&n.resetProps(v,r));Z.length-1===Y&&await k},Promise.resolve()),w+=c.length*t}if(!t||h!==m){const c={height:m,...t?{}:r};l.push(n.Transition.start(s,c,w,"ease"))}await Promise.all(l),n.removeClass(s,S),d()&&(n.resetProps(s,{height:"",alignContent:"",...r}),delete s.dataset.transition)});return n.hasClass(s,C)?x(s).then(b):n.hasClass(s,S)?x(s).then(u).then(b):u().then(b)}function T(e,s){return s&&(e.dataset.transition=1+T(e)),n.toNumber(e.dataset.transition)||0}function x(e){return Promise.all(n.children(e).filter(n.Transition.inProgress).map(s=>new Promise(o=>n.once(s,"transitionend transitioncanceled",o))))}function q(e){return D(n.children(e)).flat().filter(n.isVisible)}async function L(e,s,o){await _();let t=n.children(s);const a=t.map(c=>z(c,!0)),r={...n.css(s,["height","padding"]),display:"block"},f=t.filter(c=>n.isInView(c)),d=t.concat(s);await Promise.all(d.map(n.Transition.cancel)),n.css(d,"transitionProperty","none"),await e();const p=n.children(s).filter(c=>!n.includes(t,c));t=t.concat(p),await Promise.resolve(),n.css(d,"transitionProperty","");const u=n.attr(s,"style"),b=n.css(s,["height","padding"]),[h,m]=H(s,t,a),l=t.map(c=>({style:n.attr(c,"style")}));f.push(...t.filter(c=>n.isInView(c))),t.forEach((c,i)=>m[i]&&n.css(c,m[i])),n.css(s,r),n.trigger(s,"scroll"),await _();const w=t.map((c,i)=>{if(n.parent(c)===s&&f.includes(c))return n.Transition.start(c,h[i],o,"ease",!p.includes(c))}).concat(n.Transition.start(s,b,o,"ease",!0));try{await Promise.all(w),t.forEach((c,i)=>{n.attr(c,l[i]),n.parent(c)===s&&n.css(c,"display",h[i].opacity===0?"none":"")}),n.attr(s,"style",u)}catch{n.attr(t,"style",""),n.resetProps(s,r)}}function z(e,s){const o=n.css(e,"zIndex");return n.isVisible(e)?{display:"",opacity:s?n.css(e,"opacity"):"0",pointerEvents:"none",position:"absolute",zIndex:o==="auto"?n.index(e):o,...E(e)}:!1}function H(e,s,o){const t=s.map((r,f)=>n.parent(r)&&f in o?o[f]?n.isVisible(r)?E(r):{opacity:0}:{opacity:n.isVisible(r)?1:0}:!1),a=t.map((r,f)=>{const d=n.parent(s[f])===e&&(o[f]||z(s[f]));if(!d)return!1;if(!r)delete d.opacity;else if(!("opacity"in r)){const{opacity:p}=d;p%1?r.opacity=1:delete d.opacity}return d});return[t,a]}function E(e){const{height:s,width:o}=n.dimensions(e);let{top:t,left:a}=n.position(e);const r=n.offsetViewport(e.ownerDocument);return t=n.clamp(t,r.top-s-r.height,r.bottom+r.height),a=n.clamp(a,r.left-o-r.width,r.right+r.width),{height:s,width:o,top:t,left:a,transform:"",...n.css(e,["marginTop","marginLeft"])}}var M={props:{duration:Number,animation:Boolean},data:{duration:150,animation:"slide"},methods:{animate(e,s=this.$el){const o=this.animation;return(o==="fade"?F:o==="delayed-fade"?(...a)=>F(...a,40):o?L:()=>(e(),Promise.resolve()))(e,s,this.duration).catch(n.noop)}}};function W(e){e.target.closest('a[href="#"],a[href=""]')&&e.preventDefault()}const R={SPACE:32};var V={mixins:[M],args:"target",props:{target:String,selActive:Boolean},data:{target:"",selActive:!1,attrItem:"uk-filter-control",cls:"uk-active",duration:250},computed:{children:({target:e},s)=>n.$$(`${e} > *`,s),toggles:({attrItem:e},s)=>n.$$(`[${e}],[data-${e}]`,s)},watch:{toggles(e){this.updateState();const s=n.$$(this.selActive,this.$el);for(const o of e){this.selActive!==!1&&n.toggleClass(o,this.cls,n.includes(s,o));const t=X(o);n.isTag(t,"a")&&(t.role="button")}},children(e,s){s&&this.updateState()}},events:{name:"click keydown",delegate:({attrItem:e})=>`[${e}],[data-${e}]`,handler(e){e.type==="keydown"&&e.keyCode!==R.SPACE||e.target.closest("a,button")&&(W(e),this.apply(e.current))}},methods:{apply(e){const s=this.getState(),o=O(e,this.attrItem,this.getState());J(s,o)||this.setState(o)},getState(){return this.toggles.filter(e=>n.hasClass(e,this.cls)).reduce((e,s)=>O(s,this.attrItem,e),{filter:{"":""},sort:[]})},async setState(e,s=!0){e={filter:{"":""},sort:[],...e},n.trigger(this.$el,"beforeFilter",[this,e]);for(const o of this.toggles)n.toggleClass(o,this.cls,K(o,this.attrItem,e));await Promise.all(n.$$(this.target,this.$el).map(o=>{const t=()=>G(e,o,n.children(o));return s?this.animate(t,o):t()})),n.trigger(this.$el,"afterFilter",[this])},updateState(){n.fastdom.write(()=>this.setState(this.getState(),!1))}}};function A(e,s){return y(n.data(e,s),["filter"])}function J(e,s){return["filter","sort"].every(o=>n.isEqual(e[o],s[o]))}function G(e,s,o){for(const r of o)n.css(r,"display",Object.values(e.filter).every(f=>!f||n.matches(r,f))?"":"none");const[t,a]=e.sort;if(t){const r=Q(o,t,a);n.isEqual(r,o)||n.append(s,r)}}function O(e,s,o){const{filter:t,group:a,sort:r,order:f="asc"}=A(e,s);return(t||n.isUndefined(r))&&(a?t?(delete o.filter[""],o.filter[a]=t):(delete o.filter[a],(n.isEmpty(o.filter)||""in o.filter)&&(o.filter={"":t||""})):o.filter={"":t||""}),n.isUndefined(r)||(o.sort=[r,f]),o}function K(e,s,{filter:o={"":""},sort:[t,a]}){const{filter:r="",group:f="",sort:d,order:p="asc"}=A(e,s);return n.isUndefined(d)?f in o&&r===o[f]||!r&&f&&!(f in o)&&!o[""]:t===d&&a===p}function Q(e,s,o){return[...e].sort((t,a)=>n.data(t,s).localeCompare(n.data(a,s),void 0,{numeric:!0})*(o==="asc"||-1))}function X(e){return n.$("a,button",e)||e}return typeof window<"u"&&window.UIkit&&window.UIkit.component("filter",V),V});
@@ -1,4 +1,4 @@
1
- /*! UIkit 3.24.2 | https://www.getuikit.com | (c) 2014 - 2025 YOOtheme | MIT License */
1
+ /*! UIkit 0.0.3 | 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')) :
@@ -776,7 +776,6 @@
776
776
  };
777
777
 
778
778
  const pointerOptions = { passive: false, capture: true };
779
- const pointerUpOptions = { passive: true, capture: true };
780
779
  const pointerDown = "touchstart mousedown";
781
780
  const pointerMove = "touchmove mousemove";
782
781
  const pointerUp = "touchend touchcancel mouseup click input scroll";
@@ -786,14 +785,18 @@
786
785
  },
787
786
  data: {
788
787
  draggable: true,
789
- threshold: 10
788
+ threshold: 10,
789
+ angleThreshold: 45
790
790
  },
791
791
  created() {
792
792
  for (const key of ["start", "move", "end"]) {
793
793
  const fn = this[key];
794
794
  this[key] = (e) => {
795
- const pos = util.getEventPos(e).x * (util.isRtl ? -1 : 1);
796
- this.prevPos = pos === this.pos ? this.prevPos : this.pos;
795
+ const pos = util.getEventPos(e);
796
+ if (util.isRtl) {
797
+ pos.x = -pos.x;
798
+ }
799
+ this.prevPos = util.isEqual(pos, this.pos) ? this.prevPos : this.pos;
797
800
  this.pos = pos;
798
801
  fn(e);
799
802
  };
@@ -830,7 +833,7 @@
830
833
  this.drag = this.pos;
831
834
  if (this._transitioner) {
832
835
  this.percent = this._transitioner.percent();
833
- this.drag += this._transitioner.getDistance() * this.percent * this.dir;
836
+ this.drag.x += this._transitioner.getDistance() * this.percent * this.dir;
834
837
  this._transitioner.cancel();
835
838
  this._transitioner.translate(this.percent);
836
839
  this.dragging = true;
@@ -839,12 +842,12 @@
839
842
  this.prevIndex = this.index;
840
843
  }
841
844
  util.on(document, pointerMove, this.move, pointerOptions);
842
- util.on(document, pointerUp, this.end, pointerUpOptions);
845
+ util.on(document, pointerUp, this.end, { passive: true, capture: true, once: true });
843
846
  util.css(this.list, "userSelect", "none");
844
847
  },
845
848
  move(e) {
846
- const distance = this.pos - this.drag;
847
- if (distance === 0 || this.prevPos === this.pos || !this.dragging && Math.abs(distance) < this.threshold) {
849
+ const distance = this.pos.x - this.drag.x;
850
+ if (distance === 0 || !this.dragging && getAngle(this.pos, this.drag) > this.angleThreshold || this.prevPos.x === this.pos.x || !this.dragging && Math.abs(distance) < this.threshold) {
848
851
  return;
849
852
  }
850
853
  e.cancelable && e.preventDefault();
@@ -855,7 +858,7 @@
855
858
  let nextIndex = this.getIndex(prevIndex + this.dir);
856
859
  let width = getDistance.call(this, prevIndex, nextIndex);
857
860
  while (nextIndex !== prevIndex && dis > width) {
858
- this.drag -= width * this.dir;
861
+ this.drag.x -= width * this.dir;
859
862
  prevIndex = nextIndex;
860
863
  dis -= width;
861
864
  nextIndex = this.getIndex(prevIndex + this.dir);
@@ -893,7 +896,6 @@
893
896
  },
894
897
  end() {
895
898
  util.off(document, pointerMove, this.move, pointerOptions);
896
- util.off(document, pointerUp, this.end, pointerUpOptions);
897
899
  if (this.dragging) {
898
900
  setTimeout(util.on(this.list, "click", (e) => e.preventDefault(), pointerOptions));
899
901
  this.dragging = null;
@@ -903,12 +905,13 @@
903
905
  this._show(false, this.index, true);
904
906
  this._transitioner = null;
905
907
  } else {
906
- const dirChange = (util.isRtl ? this.dir * (util.isRtl ? 1 : -1) : this.dir) < 0 === this.prevPos > this.pos;
907
- this.index = dirChange ? this.index : this.prevIndex;
908
+ const dirChange = this.dir < 0 === this.prevPos.x > this.pos.x;
908
909
  if (dirChange) {
909
910
  util.trigger(this.slides[this.prevIndex], "itemhidden", [this]);
910
911
  util.trigger(this.slides[this.index], "itemshown", [this]);
911
912
  this.percent = 1 - this.percent;
913
+ } else {
914
+ this.index = this.prevIndex;
912
915
  }
913
916
  this.show(
914
917
  this.dir > 0 && !dirChange || this.dir < 0 && dirChange ? "next" : "previous",
@@ -927,6 +930,9 @@
927
930
  function hasSelectableText(el) {
928
931
  return util.css(el, "userSelect") !== "none" && util.toArray(el.childNodes).some((el2) => el2.nodeType === 3 && el2.textContent.trim());
929
932
  }
933
+ function getAngle(pos1, pos2) {
934
+ return Math.atan2(Math.abs(pos2.y - pos1.y), Math.abs(pos2.x - pos1.x)) * 180 / Math.PI;
935
+ }
930
936
 
931
937
  util.memoize((id, props) => {
932
938
  const attributes = Object.keys(props);
@@ -951,17 +957,16 @@
951
957
  next: "Next slide",
952
958
  previous: "Previous slide",
953
959
  slideX: "Slide %s",
954
- slideLabel: "%s of %s",
955
- role: "String"
960
+ slideLabel: "%s of %s"
956
961
  },
957
962
  data: {
958
963
  selNav: false,
959
964
  role: "region"
960
965
  },
961
966
  computed: {
962
- nav: ({ selNav }, $el) => util.$(selNav, $el),
967
+ nav: ({ selNav }, $el) => util.$$(selNav, $el),
963
968
  navChildren() {
964
- return util.children(this.nav);
969
+ return this.nav.map((nav) => util.children(nav)).flat();
965
970
  },
966
971
  selNavItem: ({ attrItem }) => `[${attrItem}],[data-${attrItem}]`,
967
972
  navItems(_, $el) {
@@ -1019,9 +1024,9 @@
1019
1024
  slides(slides) {
1020
1025
  slides.forEach(
1021
1026
  (slide, i) => util.attr(slide, {
1022
- role: this.nav ? "tabpanel" : "group",
1027
+ role: this.nav.length ? "tabpanel" : "group",
1023
1028
  "aria-label": this.t("slideLabel", i + 1, this.length),
1024
- "aria-roledescription": this.nav ? null : "slide"
1029
+ "aria-roledescription": this.nav.length ? null : "slide"
1025
1030
  })
1026
1031
  );
1027
1032
  this.padNavitems();
@@ -1102,16 +1107,16 @@
1102
1107
  }
1103
1108
  },
1104
1109
  padNavitems() {
1105
- if (!this.nav) {
1106
- return;
1107
- }
1108
- const children2 = [];
1109
- for (let i = 0; i < this.length; i++) {
1110
- const attr2 = `${this.attrItem}="${i}"`;
1111
- children2[i] = this.navChildren.findLast((el) => el.matches(`[${attr2}]`)) || util.$(`<li ${attr2}><a href></a></li>`);
1112
- }
1113
- if (!util.isEqual(children2, this.navChildren)) {
1114
- util.html(this.nav, children2);
1110
+ for (const nav of this.nav) {
1111
+ const navChildren = util.children(nav);
1112
+ const navItems = [];
1113
+ for (let i = 0; i < this.length; i++) {
1114
+ const attr2 = `${this.attrItem}="${i}"`;
1115
+ navItems[i] = navChildren.findLast((el) => el.matches(`[${attr2}]`)) || util.$(`<li ${attr2}><a href></a></li>`);
1116
+ }
1117
+ if (!util.isEqual(navItems, navChildren)) {
1118
+ util.html(this.nav, navItems);
1119
+ }
1115
1120
  }
1116
1121
  }
1117
1122
  }
@@ -1389,7 +1394,7 @@
1389
1394
  pauseOnHover: false,
1390
1395
  velocity: 2,
1391
1396
  Animations,
1392
- template: `<div class="uk-lightbox uk-overflow-hidden"> <div class="uk-lightbox-items"></div> <div class="uk-position-top-right uk-position-small uk-transition-fade" uk-inverse> <button class="uk-lightbox-close uk-close-large" type="button" uk-close></button> </div> <div class="uk-lightbox-slidenav uk-position-center-left uk-position-medium uk-transition-fade" uk-inverse> <a href uk-slidenav-previous uk-lightbox-item="previous"></a> </div> <div class="uk-lightbox-slidenav uk-position-center-right uk-position-medium uk-transition-fade" uk-inverse> <a href uk-slidenav-next uk-lightbox-item="next"></a> </div> <div class="uk-position-center-right uk-position-medium uk-transition-fade" uk-inverse style="max-height: 90vh; overflow: auto;"> <ul class="uk-lightbox-thumbnav uk-lightbox-thumbnav-vertical uk-thumbnav uk-thumbnav-vertical"></ul> <ul class="uk-lightbox-dotnav uk-dotnav uk-dotnav-vertical"></ul> </div> <div class="uk-lightbox-counter uk-text-large uk-position-top-left uk-position-small uk-transition-fade" uk-inverse></div> <div class="uk-lightbox-caption uk-position-bottom uk-text-center uk-transition-slide-bottom uk-transition-opaque"></div> </div>`
1397
+ template: `<div class="uk-lightbox uk-overflow-hidden"> <div class="uk-lightbox-items"></div> <div class="uk-position-top-right uk-position-small uk-transition-fade" uk-inverse> <button class="uk-lightbox-close uk-close-large" type="button" uk-close></button> </div> <div class="uk-lightbox-slidenav uk-position-center-left uk-position-medium uk-transition-fade" uk-inverse> <a href uk-slidenav-previous uk-lightbox-item="previous"></a> </div> <div class="uk-lightbox-slidenav uk-position-center-right uk-position-medium uk-transition-fade" uk-inverse> <a href uk-slidenav-next uk-lightbox-item="next"></a> </div> <div class="uk-position-center-right uk-position-medium uk-transition-fade" uk-inverse style="max-height: 90vh; overflow: auto;"> <ul class="uk-lightbox-thumbnav uk-lightbox-thumbnav-vertical uk-thumbnav uk-thumbnav-vertical"></ul> <ul class="uk-lightbox-dotnav uk-dotnav uk-dotnav-vertical"></ul> </div> <div class="uk-lightbox-counter uk-text-large uk-position-top-left uk-position-small uk-transition-fade" uk-inverse></div> <div class="uk-lightbox-caption uk-position-bottom uk-text-center uk-transition-slide-bottom uk-transition-opaque"></div> </div>`
1393
1398
  }),
1394
1399
  created() {
1395
1400
  let $el = util.$(this.template);
@@ -1 +1 @@
1
- /*! UIkit 3.24.2 | https://www.getuikit.com | (c) 2014 - 2025 YOOtheme | MIT License */(function(t,k){typeof exports=="object"&&typeof module<"u"?module.exports=k(require("uikit-util")):typeof define=="function"&&define.amd?define("uikitlightbox_panel",["uikit-util"],k):(t=typeof globalThis<"u"?globalThis:t||self,t.UIkitLightbox_panel=k(t.UIkit.util))})(this,function(t){"use strict";function k(e,s="update"){e._connected&&e._updates.length&&(e._updateCount||(e._updateCount=0,requestAnimationFrame(()=>e._updateCount=0)),e._queued||(e._queued=new Set,t.fastdom.read(()=>{e._connected&&Z(e,e._queued),e._queued=null})),e._updateCount++<20&&e._queued.add(s.type||s))}function Z(e,s){for(const{read:i,write:n,events:o=[]}of e._updates){if(!s.has("update")&&!o.some(h=>s.has(h)))continue;let r;i&&(r=i.call(e,e._data,s),r&&t.isPlainObject(r)&&t.assign(e._data,r)),n&&r!==!1&&t.fastdom.write(()=>{e._connected&&n.call(e,e._data,s)})}}function K(e){return D(t.observeResize,e,"resize")}function ee(e){return D(t.observeIntersection,e)}function D(e,s,i){return{observe:e,handler(){k(this,i)},...s}}function te(e,s=[]){try{return e?t.startsWith(e,"{")?JSON.parse(e):s.length&&!t.includes(e,":")?{[s[0]]:e}:e.split(";").reduce((i,n)=>{const[o,r]=n.split(/:(.*)/);return o&&!t.isUndefined(r)&&(i[o.trim()]=r.trim()),i},{}):{}}catch{return{}}}ee({handler(e,s){this.load(),s.disconnect()},options:({margin:e})=>({rootMargin:e}),filter:({loading:e})=>e==="lazy",target:({$el:e,$props:s})=>s.target?[e,...t.queryAll(s.target,e)]:e});function se(e,s){if(s=ie(s),s.length){const i=t.fragment("<picture>");for(const n of s){const o=t.fragment("<source>");t.attr(o,n),t.append(i,o)}t.append(i,e)}}function ie(e){if(!e)return[];if(t.startsWith(e,"["))try{e=JSON.parse(e)}catch{e=[]}else e=te(e);return t.isArray(e)||(e=[e]),e.filter(s=>!t.isEmpty(s))}function O(){return new Promise(e=>requestAnimationFrame(e))}let P;function ne(e){const s=t.on(e,"touchstart",o=>{if(o.targetTouches.length!==1||t.matches(o.target,'input[type="range"'))return;let r=t.getEventPos(o).y;const h=t.on(e,"touchmove",a=>{const d=t.getEventPos(a).y;d!==r&&(r=d,t.scrollParents(a.target).some(c=>{if(!e.contains(c))return!1;let{scrollHeight:m,clientHeight:l}=c;return l<m})||a.preventDefault())},{passive:!1});t.once(e,"scroll touchend touchcanel",h,{capture:!0})},{passive:!0});if(P)return s;P=!0;const{scrollingElement:i}=document,n={overflowY:CSS.supports("overflow","clip")?"clip":"hidden",touchAction:"none",scrollbarGutter:t.width(window)-i.clientWidth?"stable":""};return t.css(i,n),()=>{P=!1,s(),t.resetProps(i,n)}}var re={connected(){t.addClass(this.$el,this.$options.id)}},oe={props:{container:Boolean},data:{container:!0},computed:{container({container:e}){return e===!0&&this.$container||e&&t.$(e)}}};function M(e){e.target.closest('a[href="#"],a[href=""]')&&e.preventDefault()}function B(e){const s=t.scrollParent(e),{scrollTop:i}=s,n=()=>{i!==s.scrollTop&&(s.scrollTop=i)};return()=>{n(),setTimeout(n)}}var ae={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:e})=>!!e[0],hasTransition:({animation:e})=>["slide","reveal"].some(s=>t.startsWith(e[0],s))},methods:{async toggleElement(e,s,i){try{return await Promise.all(t.toNodes(e).map(n=>{const o=t.isBoolean(s)?s:!this.isToggled(n);if(!t.trigger(n,`before${o?"show":"hide"}`,[this]))return Promise.reject();const r=(t.isFunction(i)?i:i===!1||!this.hasAnimation?he:this.hasTransition?de:le)(n,o,this),h=o?this.clsEnter:this.clsLeave;t.addClass(n,h),t.trigger(n,o?"show":"hide",[this]);const a=()=>{var d;if(t.removeClass(n,h),t.trigger(n,o?"shown":"hidden",[this]),o){const c=B(n);(d=t.$$("[autofocus]",n).find(t.isVisible))==null||d.focus(),c()}};return r?r.then(a,()=>(t.removeClass(n,h),Promise.reject())):a()})),!0}catch{return!1}},isToggled(e=this.$el){return e=t.toNode(e),t.hasClass(e,this.clsEnter)?!0:t.hasClass(e,this.clsLeave)?!1:this.cls?t.hasClass(e,this.cls.split(" ")[0]):t.isVisible(e)},_toggle(e,s){if(!e)return;s=!!s;let i;this.cls?(i=t.includes(this.cls," ")||s!==t.hasClass(e,this.cls),i&&t.toggleClass(e,this.cls,t.includes(this.cls," ")?void 0:s)):(i=s===e.hidden,i&&(e.hidden=!s)),i&&t.trigger(e,"toggled",[s,this])}}};function he(e,s,{_toggle:i}){return t.Animation.cancel(e),t.Transition.cancel(e),i(e,s)}async function de(e,s,{animation:i,duration:n,velocity:o,transition:r,_toggle:h}){var a;const[d="reveal",c="top"]=((a=i[0])==null?void 0:a.split("-"))||[],m=[["left","right"],["top","bottom"]],l=m[t.includes(m[0],c)?0:1],f=l[1]===c,u=["width","height"][m.indexOf(l)],x=`margin-${l[0]}`,_=`margin-${c}`;let w=t.dimensions(e)[u];const De=t.Transition.inProgress(e);await t.Transition.cancel(e),s&&h(e,!0);const Oe=Object.fromEntries(["padding","border","width","height","minWidth","minHeight","overflowY","overflowX",x,_].map(Y=>[Y,e.style[Y]])),$=t.dimensions(e),N=t.toFloat(t.css(e,x)),J=t.toFloat(t.css(e,_)),b=$[u]+J;!De&&!s&&(w+=J);const[A]=t.wrapInner(e,"<div>");t.css(A,{boxSizing:"border-box",height:$.height,width:$.width,...t.css(e,["overflow","padding","borderTop","borderRight","borderBottom","borderLeft","borderImage",_])}),t.css(e,{padding:0,border:0,minWidth:0,minHeight:0,[_]:0,width:$.width,height:$.height,overflow:"hidden",[u]:w});const X=w/b;n=(o*b+n)*(s?1-X:X);const Q={[u]:s?b:0};f&&(t.css(e,x,b-w+N),Q[x]=s?N:b+N),!f^d==="reveal"&&(t.css(A,x,-b+w),t.Transition.start(A,{[x]:s?0:-b},n,r));try{await t.Transition.start(e,Q,n,r)}finally{t.css(e,Oe),t.unwrap(A.firstChild),s||h(e,!1)}}function le(e,s,i){const{animation:n,duration:o,_toggle:r}=i;return s?(r(e,!0),t.Animation.in(e,n[0],o,i.origin)):t.Animation.out(e,n[1]||n[0],o,i.origin).then(()=>r(e,!1))}const p=[];var ce={mixins:[re,oe,ae],props:{selPanel:String,selClose:String,escClose:Boolean,bgClose:Boolean,stack:Boolean,role:String},data:{cls:"uk-open",escClose:!0,bgClose:!0,overlay:!0,stack:!1,role:"dialog"},computed:{panel:({selPanel:e},s)=>t.$(e,s),transitionElement(){return this.panel}},connected(){const e=this.panel||this.$el;e.role=this.role,this.overlay&&(e.ariaModal=!0)},beforeDisconnect(){t.includes(p,this)&&this.toggleElement(this.$el,!1,!1)},events:[{name:"click",delegate:({selClose:e})=>`${e},a[href*="#"]`,handler(e){const{current:s,defaultPrevented:i}=e,{hash:n}=s;!i&&n&&t.isSameSiteAnchor(s)&&!this.$el.contains(t.$(n))?this.hide():t.matches(s,this.selClose)&&(M(e),this.hide())}},{name:"toggle",self:!0,handler(e,s){e.defaultPrevented||(e.preventDefault(),this.target=s==null?void 0:s.$el,this.isToggled()===t.includes(p,this)&&this.toggle())}},{name:"beforeshow",self:!0,handler(e){if(t.includes(p,this))return!1;!this.stack&&p.length?(Promise.all(p.map(s=>s.hide())).then(this.show),e.preventDefault()):p.push(this)}},{name:"show",self:!0,handler(){this.stack&&t.css(this.$el,"zIndex",t.toFloat(t.css(this.$el,"zIndex"))+p.length);const e=[this.overlay&&pe(this),this.overlay&&ne(this.$el),this.bgClose&&me(this),this.escClose&&ge(this)];t.once(this.$el,"hidden",()=>e.forEach(s=>s&&s()),{self:!0}),t.addClass(document.documentElement,this.clsPage),L(this.target,!0)}},{name:"shown",self:!0,handler(){t.isFocusable(this.$el)||(this.$el.tabIndex=-1),t.matches(this.$el,":focus-within")||this.$el.focus()}},{name:"hidden",self:!0,handler(){t.includes(p,this)&&p.splice(p.indexOf(this),1),t.css(this.$el,"zIndex","");const{target:e}=this;p.some(s=>s.clsPage===this.clsPage)||(t.removeClass(document.documentElement,this.clsPage),queueMicrotask(()=>{if(t.isFocusable(e)){const s=B(e);e.focus(),s()}})),L(e,!1),this.target=null}}],methods:{toggle(){return this.isToggled()?this.hide():this.show()},async show(){return this.container&&t.parent(this.$el)!==this.container&&(t.append(this.container,this.$el),await O()),this.toggleElement(this.$el,!0,F)},hide(){return this.toggleElement(this.$el,!1,F)}}};function F(e,s,{transitionElement:i,_toggle:n}){return new Promise((o,r)=>t.once(e,"show hide",()=>{var h;(h=e._reject)==null||h.call(e),e._reject=r,n(e,s);const a=t.once(i,"transitionstart",()=>{t.once(i,"transitionend transitioncancel",o,{self:!0}),clearTimeout(d)},{self:!0}),d=setTimeout(()=>{a(),o()},fe(t.css(i,"transitionDuration")))})).then(()=>delete e._reject)}function fe(e){return e?t.endsWith(e,"ms")?t.toFloat(e):t.toFloat(e)*1e3:0}function pe(e){return t.on(document,"focusin",s=>{t.last(p)===e&&!e.$el.contains(s.target)&&e.$el.focus()})}function me(e){return t.on(document,t.pointerDown,({target:s})=>{t.last(p)!==e||e.overlay&&!e.$el.contains(s)||!e.panel||e.panel.contains(s)||t.once(document,`${t.pointerUp} ${t.pointerCancel} scroll`,({defaultPrevented:i,type:n,target:o})=>{!i&&n===t.pointerUp&&s===o&&e.hide()},!0)})}function ge(e){return t.on(document,"keydown",s=>{s.keyCode===27&&t.last(p)===e&&e.hide()})}function L(e,s){e!=null&&e.ariaExpanded&&(e.ariaExpanded=s)}var S={slide:{show(e){return[{transform:y(e*-100)},{transform:y()}]},percent(e){return ue(e)},translate(e,s){return[{transform:y(s*-100*e)},{transform:y(s*100*(1-e))}]}}};function ue(e){return Math.abs(new DOMMatrix(t.css(e,"transform")).m41/e.offsetWidth)}function y(e=0,s="%"){return e?`translate3d(${e+s}, 0, 0)`:""}function ve(e,s,i,{animation:n,easing:o}){const{percent:r,translate:h,show:a=t.noop}=n,d=a(i),{promise:c,resolve:m}=be();return{dir:i,show(l,f=0,G){const u=G?"linear":o;return l-=Math.round(l*t.clamp(f,-1,1)),this.translate(f),I(s,"itemin",{percent:f,duration:l,timing:u,dir:i}),I(e,"itemout",{percent:1-f,duration:l,timing:u,dir:i}),Promise.all([t.Transition.start(s,d[1],l,u),t.Transition.start(e,d[0],l,u)]).then(()=>{this.reset(),m()},t.noop),c},cancel(){return t.Transition.cancel([s,e])},reset(){t.resetProps([s,e],d[0])},async forward(l,f=this.percent()){return await this.cancel(),this.show(l,f,!0)},translate(l){this.reset();const f=h(l,i);t.css(s,f[1]),t.css(e,f[0]),I(s,"itemtranslatein",{percent:l,dir:i}),I(e,"itemtranslateout",{percent:1-l,dir:i})},percent(){return r(e||s,s,i)},getDistance(){return e==null?void 0:e.offsetWidth}}}function I(e,s,i){t.trigger(e,t.createEvent(s,!1,!1,i))}function be(){let e;return{promise:new Promise(s=>e=s),resolve:e}}var xe={props:{i18n:Object},data:{i18n:null},methods:{t(e,...s){var i,n,o;let r=0;return((o=((i=this.i18n)==null?void 0:i[e])||((n=this.$options.i18n)==null?void 0:n[e]))==null?void 0:o.replace(/%s/g,()=>s[r++]||""))||""}}},ke={props:{autoplay:Boolean,autoplayInterval:Number,pauseOnHover:Boolean},data:{autoplay:!1,autoplayInterval:7e3,pauseOnHover:!0},connected(){t.attr(this.list,"aria-live",this.autoplay?"off":"polite"),this.autoplay&&this.startAutoplay()},disconnected(){this.stopAutoplay()},update(){t.attr(this.slides,"tabindex","-1")},events:[{name:"visibilitychange",el:()=>document,filter:({autoplay:e})=>e,handler(){document.hidden?this.stopAutoplay():this.startAutoplay()}}],methods:{startAutoplay(){this.stopAutoplay(),this.interval=setInterval(()=>{this.stack.length||!t.isVisible(this.$el)||this.draggable&&t.matches(this.$el,":focus-within")&&!t.matches(this.$el,":focus")||this.pauseOnHover&&t.matches(this.$el,":hover")||this.show("next")},this.autoplayInterval)},stopAutoplay(){clearInterval(this.interval)}}};const C={passive:!1,capture:!0},z={passive:!0,capture:!0},we="touchstart mousedown",E="touchmove mousemove",H="touchend touchcancel mouseup click input scroll";var $e={props:{draggable:Boolean},data:{draggable:!0,threshold:10},created(){for(const e of["start","move","end"]){const s=this[e];this[e]=i=>{const n=t.getEventPos(i).x*(t.isRtl?-1:1);this.prevPos=n===this.pos?this.prevPos:this.pos,this.pos=n,s(i)}}},events:[{name:we,passive:!0,delegate:({selList:e})=>`${e} > *`,handler(e){!this.draggable||this.parallax||!t.isTouch(e)&&ye(e.target)||e.target.closest(t.selInput)||e.button>0||this.length<2||this.start(e)}},{name:"dragstart",handler(e){e.preventDefault()}},{name:E,el:({list:e})=>e,handler:t.noop,...C}],methods:{start(){this.drag=this.pos,this._transitioner?(this.percent=this._transitioner.percent(),this.drag+=this._transitioner.getDistance()*this.percent*this.dir,this._transitioner.cancel(),this._transitioner.translate(this.percent),this.dragging=!0,this.stack=[]):this.prevIndex=this.index,t.on(document,E,this.move,C),t.on(document,H,this.end,z),t.css(this.list,"userSelect","none")},move(e){const s=this.pos-this.drag;if(s===0||this.prevPos===this.pos||!this.dragging&&Math.abs(s)<this.threshold)return;e.cancelable&&e.preventDefault(),this.dragging=!0,this.dir=s<0?1:-1;let{slides:i,prevIndex:n}=this,o=Math.abs(s),r=this.getIndex(n+this.dir),h=j.call(this,n,r);for(;r!==n&&o>h;)this.drag-=h*this.dir,n=r,o-=h,r=this.getIndex(n+this.dir),h=j.call(this,n,r);this.percent=o/h;const a=i[n],d=i[r],c=this.index!==r,m=n===r;let l;for(const f of[this.index,this.prevIndex])t.includes([r,n],f)||(t.trigger(i[f],"itemhidden",[this]),m&&(l=!0,this.prevIndex=n));(this.index===n&&this.prevIndex!==n||l)&&t.trigger(i[this.index],"itemshown",[this]),c&&(this.prevIndex=n,this.index=r,m||(t.trigger(a,"beforeitemhide",[this]),t.trigger(a,"itemhide",[this])),t.trigger(d,"beforeitemshow",[this]),t.trigger(d,"itemshow",[this])),this._transitioner=this._translate(Math.abs(this.percent),a,!m&&d)},end(){if(t.off(document,E,this.move,C),t.off(document,H,this.end,z),this.dragging)if(setTimeout(t.on(this.list,"click",e=>e.preventDefault(),C)),this.dragging=null,this.index===this.prevIndex)this.percent=1-this.percent,this.dir*=-1,this._show(!1,this.index,!0),this._transitioner=null;else{const e=(t.isRtl?this.dir*(t.isRtl?1:-1):this.dir)<0==this.prevPos>this.pos;this.index=e?this.index:this.prevIndex,e&&(t.trigger(this.slides[this.prevIndex],"itemhidden",[this]),t.trigger(this.slides[this.index],"itemshown",[this]),this.percent=1-this.percent),this.show(this.dir>0&&!e||this.dir<0&&e?"next":"previous",!0)}t.css(this.list,{userSelect:""}),this.drag=this.percent=null}}};function j(e,s){return this._getTransitioner(e,e!==s&&s).getDistance()||this.slides[e].offsetWidth}function ye(e){return t.css(e,"userSelect")!=="none"&&t.toArray(e.childNodes).some(s=>s.nodeType===3&&s.textContent.trim())}t.memoize((e,s)=>{const i=Object.keys(s),n=i.concat(e).map(o=>[t.hyphenate(o),`data-${t.hyphenate(o)}`]).flat();return{attributes:i,filter:n}});let Ie=1;function R(e,s=null){return(s==null?void 0:s.id)||`${e.$options.id}-${Ie++}`}const g={SPACE:32,END:35,HOME:36,LEFT:37,RIGHT:39};var Ce={i18n:{next:"Next slide",previous:"Previous slide",slideX:"Slide %s",slideLabel:"%s of %s",role:"String"},data:{selNav:!1,role:"region"},computed:{nav:({selNav:e},s)=>t.$(e,s),navChildren(){return t.children(this.nav)},selNavItem:({attrItem:e})=>`[${e}],[data-${e}]`,navItems(e,s){return t.$$(this.selNavItem,s)}},watch:{nav(e,s){t.attr(e,"role","tablist"),this.padNavitems(),s&&this.$emit()},list(e){t.isTag(e,"ul")&&t.attr(e,"role","presentation")},navChildren(e){t.attr(e,"role","presentation"),this.padNavitems(),this.updateNav()},navItems(e){for(const s of e){const i=t.data(s,this.attrItem),n=t.$("a,button",s)||s;let o,r=null;if(t.isNumeric(i)){const h=t.toNumber(i),a=this.slides[h];a&&(a.id||(a.id=R(this,a)),r=a.id),o=this.t("slideX",t.toFloat(i)+1),n.role="tab"}else this.list&&(this.list.id||(this.list.id=R(this,this.list)),r=this.list.id),o=this.t(i);n.ariaControls=r,n.ariaLabel=n.ariaLabel||o}},slides(e){e.forEach((s,i)=>t.attr(s,{role:this.nav?"tabpanel":"group","aria-label":this.t("slideLabel",i+1,this.length),"aria-roledescription":this.nav?null:"slide"})),this.padNavitems()}},connected(){this.$el.role=this.role,this.$el.ariaRoleDescription="carousel"},update:[{write(){this.navItems.concat(this.nav).forEach(e=>e&&(e.hidden=!this.maxIndex)),this.updateNav()},events:["resize"]}],events:[{name:"click keydown",delegate:({selNavItem:e})=>e,filter:({parallax:e})=>!e,handler(e){e.target.closest("a,button")&&(e.type==="click"||e.keyCode===g.SPACE)&&(M(e),this.show(t.data(e.current,this.attrItem)))}},{name:"itemshow",handler(){this.updateNav()}},{name:"keydown",delegate:({selNavItem:e})=>e,filter:({parallax:e})=>!e,handler(e){const{current:s,keyCode:i}=e,n=t.data(s,this.attrItem);if(!t.isNumeric(n))return;let o=i===g.HOME?0:i===g.END?"last":i===g.LEFT?"previous":i===g.RIGHT?"next":-1;~o&&(e.preventDefault(),this.show(o))}}],methods:{updateNav(){const e=this.getValidIndex();for(const s of this.navItems){const i=t.data(s,this.attrItem),n=t.$("a,button",s)||s;if(t.isNumeric(i)){const r=t.toNumber(i)===e;t.toggleClass(s,this.clsActive,r),t.toggleClass(n,"uk-disabled",!!this.parallax),n.ariaSelected=r,n.tabIndex=r&&!this.parallax?null:-1,r&&n&&t.matches(t.parent(s),":focus-within")&&n.focus()}else t.toggleClass(s,"uk-invisible",this.finite&&(i==="previous"&&e===0||i==="next"&&e>=this.maxIndex))}},padNavitems(){if(!this.nav)return;const e=[];for(let s=0;s<this.length;s++){const i=`${this.attrItem}="${s}"`;e[s]=this.navChildren.findLast(n=>n.matches(`[${i}]`))||t.$(`<li ${i}><a href></a></li>`)}t.isEqual(e,this.navChildren)||t.html(this.nav,e)}}};const Te="cubic-bezier(0.25, 0.46, 0.45, 0.94)",_e="cubic-bezier(0.165, 0.84, 0.44, 1)";var Ae={mixins:[ke,$e,Ce,xe],props:{clsActivated:String,easing:String,index:Number,finite:Boolean,velocity:Number},data:()=>({easing:"ease",finite:!1,velocity:1,index:0,prevIndex:-1,stack:[],percent:0,clsActive:"uk-active",clsActivated:"",clsEnter:"uk-slide-enter",clsLeave:"uk-slide-leave",clsSlideActive:"uk-slide-active",Transitioner:!1,transitionOptions:{}}),connected(){this.prevIndex=-1,this.index=this.getValidIndex(this.$props.index),this.stack=[]},disconnected(){t.removeClass(this.slides,this.clsActive)},computed:{duration:({velocity:e},s)=>Se(s.offsetWidth/e),list:({selList:e},s)=>t.$(e,s),maxIndex(){return this.length-1},slides(){return t.children(this.list)},length(){return this.slides.length}},watch:{slides(e,s){s&&this.$emit()}},events:{itemshow({target:e}){t.addClass(e,this.clsEnter,this.clsSlideActive)},itemshown({target:e}){t.removeClass(e,this.clsEnter)},itemhide({target:e}){t.addClass(e,this.clsLeave)},itemhidden({target:e}){t.removeClass(e,this.clsLeave,this.clsSlideActive)}},methods:{async show(e,s=!1){var i;if(this.dragging||!this.length||this.parallax)return;const{stack:n}=this,o=s?0:n.length,r=()=>{n.splice(o,1),n.length&&this.show(n.shift(),!0)};if(n[s?"unshift":"push"](e),!s&&n.length>1){n.length===2&&((i=this._transitioner)==null||i.forward(Math.min(this.duration,200)));return}const h=this.getIndex(this.index),a=t.hasClass(this.slides,this.clsActive)&&this.slides[h],d=this.getIndex(e,this.index),c=this.slides[d];if(a===c){r();return}if(this.dir=Pe(e,h),this.prevIndex=h,this.index=d,a&&!t.trigger(a,"beforeitemhide",[this])||!t.trigger(c,"beforeitemshow",[this,a])){this.index=this.prevIndex,r();return}a&&t.trigger(a,"itemhide",[this]),t.trigger(c,"itemshow",[this]),await this._show(a,c,s),a&&t.trigger(a,"itemhidden",[this]),t.trigger(c,"itemshown",[this]),n.shift(),this._transitioner=null,await O(),n.length&&this.show(n.shift(),!0)},getIndex(e=this.index,s=this.index){return t.clamp(t.getIndex(e,this.slides,s,this.finite),0,Math.max(0,this.maxIndex))},getValidIndex(e=this.index,s=this.prevIndex){return this.getIndex(e,s)},async _show(e,s,i){if(this._transitioner=this._getTransitioner(e,s,this.dir,{easing:i?s.offsetWidth<600?Te:_e:this.easing,...this.transitionOptions}),!i&&!e){this._translate(1);return}const{length:n}=this.stack;return this._transitioner[n>1?"forward":"show"](n>1?Math.min(this.duration,75+75/(n-1)):this.duration,this.percent)},_translate(e,s=this.prevIndex,i=this.index){const n=this._getTransitioner(s===i?!1:s,i);return n.translate(e),n},_getTransitioner(e=this.prevIndex,s=this.index,i=this.dir||1,n=this.transitionOptions){return new this.Transitioner(t.isNumber(e)?this.slides[e]:e,t.isNumber(s)?this.slides[s]:s,i*(t.isRtl?-1:1),n)}}};function Pe(e,s){return e==="next"?1:e==="previous"||e<s?-1:1}function Se(e){return .5*e+300}var Ee={mixins:[Ae],props:{animation:String},data:{animation:"slide",clsActivated:"uk-transition-active",Animations:S,Transitioner:ve},computed:{animation({animation:e,Animations:s}){return{...s[e]||s.slide,name:e}},transitionOptions(){return{animation:this.animation}}},observe:K(),events:{itemshow({target:e}){t.addClass(e,this.clsActive)},itemshown({target:e}){t.addClass(e,this.clsActivated)},itemhidden({target:e}){t.removeClass(e,this.clsActive,this.clsActivated)}}};({...S});function T(e){return`scale3d(${e}, ${e}, 1)`}var W={...S,fade:{show(){return[{opacity:0},{opacity:1}]},percent(e){return 1-t.css(e,"opacity")},translate(e){return[{opacity:1-e},{opacity:e}]}},scale:{show(){return[{opacity:0,transform:T(1-.2)},{opacity:1,transform:T(1)}]},percent(e){return 1-t.css(e,"opacity")},translate(e){return[{opacity:1-e,transform:T(1-.2*e)},{opacity:e,transform:T(1-.2+.2*e)}]}}},U={i18n:{counter:"%s / %s"},mixins:[ce,Ee],functional:!0,props:{counter:Boolean,preload:Number,nav:Boolean,slidenav:Boolean,delayControls:Number,videoAutoplay:Boolean,template:String},data:()=>({counter:!1,preload:1,nav:!1,slidenav:!0,delayControls:3e3,videoAutoplay:!1,items:[],cls:"uk-open",clsPage:"uk-lightbox-page",clsFit:"uk-lightbox-items-fit",clsZoom:"uk-lightbox-zoom",attrItem:"uk-lightbox-item",selList:".uk-lightbox-items",selClose:".uk-close-large",selNav:".uk-lightbox-thumbnav, .uk-lightbox-dotnav",selCaption:".uk-lightbox-caption",selCounter:".uk-lightbox-counter",pauseOnHover:!1,velocity:2,Animations:W,template:'<div class="uk-lightbox uk-overflow-hidden"> <div class="uk-lightbox-items"></div> <div class="uk-position-top-right uk-position-small uk-transition-fade" uk-inverse> <button class="uk-lightbox-close uk-close-large" type="button" uk-close></button> </div> <div class="uk-lightbox-slidenav uk-position-center-left uk-position-medium uk-transition-fade" uk-inverse> <a href uk-slidenav-previous uk-lightbox-item="previous"></a> </div> <div class="uk-lightbox-slidenav uk-position-center-right uk-position-medium uk-transition-fade" uk-inverse> <a href uk-slidenav-next uk-lightbox-item="next"></a> </div> <div class="uk-position-center-right uk-position-medium uk-transition-fade" uk-inverse style="max-height: 90vh; overflow: auto;"> <ul class="uk-lightbox-thumbnav uk-lightbox-thumbnav-vertical uk-thumbnav uk-thumbnav-vertical"></ul> <ul class="uk-lightbox-dotnav uk-dotnav uk-dotnav-vertical"></ul> </div> <div class="uk-lightbox-counter uk-text-large uk-position-top-left uk-position-small uk-transition-fade" uk-inverse></div> <div class="uk-lightbox-caption uk-position-bottom uk-text-center uk-transition-slide-bottom uk-transition-opaque"></div> </div>'}),created(){let e=t.$(this.template);t.isTag(e,"template")&&(e=t.fragment(t.html(e)));const s=t.$(this.selList,e),i=this.$props.nav;t.remove(t.$$(this.selNav,e).filter(r=>!t.matches(r,`.uk-${i}`)));for(const[r,h]of this.items.entries())t.append(s,"<div>"),i==="thumbnav"&&t.wrapAll(Ne(h,this.videoAutoplay),t.append(t.$(this.selNav,e),`<li uk-lightbox-item="${r}"><a href></a></li>`));this.slidenav||t.remove(t.$$(".uk-lightbox-slidenav",e)),this.counter||t.remove(t.$(this.selCounter,e)),t.addClass(s,this.clsFit);const n=t.$("[uk-close]",e),o=this.t("close");n&&o&&(n.dataset.i18n=JSON.stringify({label:o})),this.$mount(t.append(this.container,e))},events:[{name:"click",self:!0,filter:({bgClose:e})=>e,delegate:({selList:e})=>`${e} > *`,handler(e){e.defaultPrevented||this.hide()}},{name:"click",self:!0,delegate:({clsZoom:e})=>`.${e}`,handler(e){e.defaultPrevented||t.toggleClass(this.list,this.clsFit)}},{name:`${t.pointerMove} ${t.pointerDown} keydown`,filter:({delayControls:e})=>e,handler(){this.showControls()}},{name:"shown",self:!0,handler(){this.showControls()}},{name:"hide",self:!0,handler(){this.hideControls(),t.removeClass(this.slides,this.clsActive),t.Transition.stop(this.slides)}},{name:"hidden",self:!0,handler(){this.$destroy(!0)}},{name:"keyup",el:()=>document,handler({keyCode:e}){if(!this.isToggled()||!this.draggable)return;let s=-1;e===g.LEFT?s="previous":e===g.RIGHT?s="next":e===g.HOME?s=0:e===g.END&&(s="last"),~s&&this.show(s)}},{name:"beforeitemshow",handler(e){t.html(t.$(this.selCaption,this.$el),this.getItem().caption||""),t.html(t.$(this.selCounter,this.$el),this.t("counter",this.index+1,this.slides.length));for(let s=-this.preload;s<=this.preload;s++)this.loadItem(this.index+s);this.isToggled()||(this.draggable=!1,e.preventDefault(),this.toggleElement(this.$el,!0,!1),this.animation=W.scale,t.removeClass(e.target,this.clsActive),this.stack.splice(1,0,this.index))}},{name:"itemshown",handler(){this.draggable=this.$props.draggable}},{name:"itemload",async handler(e,s){const{source:i,type:n,attrs:o={}}=s;if(this.setItem(s,"<span uk-spinner uk-inverse></span>"),!i)return;let r;const h={allowfullscreen:"",style:"max-width: 100%; box-sizing: border-box;","uk-responsive":"","uk-video":!!this.videoAutoplay};if(n==="image"||q(i)){const a=v("img");se(a,s.sources),t.attr(a,{src:i,...t.pick(s,["alt","srcset","sizes"]),...o}),t.on(a,"load",()=>this.setItem(s,t.parent(a)||a)),t.on(a,"error",()=>this.setError(s))}else if(n==="video"||V(i)){const a=this.videoAutoplay==="inline",d=v("video",{src:i,playsinline:"",controls:a?null:"",loop:a?"":null,muted:a?"":null,poster:this.videoAutoplay?null:s.poster,"uk-video":!!this.videoAutoplay,...o});t.on(d,"loadedmetadata",()=>this.setItem(s,d)),t.on(d,"error",()=>this.setError(s))}else if(n==="iframe"||i.match(/\.(html|php)($|\?)/i))this.setItem(s,v("iframe",{src:i,allowfullscreen:"",class:"uk-lightbox-iframe",...o}));else if(r=i.match(/\/\/(?:.*?youtube(-nocookie)?\..*?(?:[?&]v=|\/shorts\/)|youtu\.be\/)([\w-]{11})[&?]?(.*)?/))this.setItem(s,v("iframe",{src:`https://www.youtube${r[1]||""}.com/embed/${r[2]}${r[3]?`?${r[3]}`:""}`,width:1920,height:1080,...h,...o}));else if(r=i.match(/\/\/.*?vimeo\.[a-z]+\/(\d+)[&?]?(.*)?/))try{const{height:a,width:d}=await(await fetch(`https://vimeo.com/api/oembed.json?maxwidth=1920&url=${encodeURI(i)}`,{credentials:"omit"})).json();this.setItem(s,v("iframe",{src:`https://player.vimeo.com/video/${r[1]}${r[2]?`?${r[2]}`:""}`,width:d,height:a,...h,...o}))}catch{this.setError(s)}}},{name:"itemloaded",handler(){this.$emit("resize")}}],update:{read(){for(const e of t.$$(`${this.selList} :not([controls]):is(img,video)`,this.$el))t.toggleClass(e,this.clsZoom,(e.naturalHeight||e.videoHeight)-this.$el.offsetHeight>Math.max(0,(e.naturalWidth||e.videoWidth)-this.$el.offsetWidth))},events:["resize"]},methods:{loadItem(e=this.index){const s=this.getItem(e);this.getSlide(s).childElementCount||t.trigger(this.$el,"itemload",[s])},getItem(e=this.index){return this.items[t.getIndex(e,this.slides)]},setItem(e,s){t.trigger(this.$el,"itemloaded",[this,t.html(this.getSlide(e),s)])},getSlide(e){return this.slides[this.items.indexOf(e)]},setError(e){this.setItem(e,'<span uk-icon="icon: bolt; ratio: 2" uk-inverse></span>')},showControls(){clearTimeout(this.controlsTimer),this.controlsTimer=this.delayControls&&setTimeout(this.hideControls,this.delayControls),t.addClass(this.$el,"uk-active","uk-transition-active")},hideControls(){t.removeClass(this.$el,"uk-active","uk-transition-active")}}};function v(e,s){const i=t.fragment(`<${e}>`);return t.attr(i,s),i}function Ne(e,s){const i=e.poster||e.thumb&&(e.type==="image"||q(e.thumb))?v("img",{src:e.poster||e.thumb,alt:""}):e.thumb&&(e.type==="video"||V(e.thumb))?v("video",{src:e.thumb,loop:"",playsinline:"",muted:"","uk-video":s==="inline"}):v("canvas");return e.thumbRatio&&(i.style.aspectRatio=e.thumbRatio),i}function q(e){return e==null?void 0:e.match(/\.(avif|jpe?g|jfif|a?png|gif|svg|webp)($|\?)/i)}function V(e){return e==null?void 0:e.match(/\.(mp4|webm|ogv)($|\?)/i)}return typeof window<"u"&&window.UIkit&&window.UIkit.component("lightboxPanel",U),U});
1
+ /*! UIkit 0.0.3 | https://www.getuikit.com | (c) 2014 - 2026 YOOtheme | MIT License */(function(t,k){typeof exports=="object"&&typeof module<"u"?module.exports=k(require("uikit-util")):typeof define=="function"&&define.amd?define("uikitlightbox_panel",["uikit-util"],k):(t=typeof globalThis<"u"?globalThis:t||self,t.UIkitLightbox_panel=k(t.UIkit.util))})(this,function(t){"use strict";function k(e,s="update"){e._connected&&e._updates.length&&(e._updateCount||(e._updateCount=0,requestAnimationFrame(()=>e._updateCount=0)),e._queued||(e._queued=new Set,t.fastdom.read(()=>{e._connected&&Q(e,e._queued),e._queued=null})),e._updateCount++<20&&e._queued.add(s.type||s))}function Q(e,s){for(const{read:i,write:n,events:o=[]}of e._updates){if(!s.has("update")&&!o.some(h=>s.has(h)))continue;let r;i&&(r=i.call(e,e._data,s),r&&t.isPlainObject(r)&&t.assign(e._data,r)),n&&r!==!1&&t.fastdom.write(()=>{e._connected&&n.call(e,e._data,s)})}}function Y(e){return D(t.observeResize,e,"resize")}function Z(e){return D(t.observeIntersection,e)}function D(e,s,i){return{observe:e,handler(){k(this,i)},...s}}function K(e,s=[]){try{return e?t.startsWith(e,"{")?JSON.parse(e):s.length&&!t.includes(e,":")?{[s[0]]:e}:e.split(";").reduce((i,n)=>{const[o,r]=n.split(/:(.*)/);return o&&!t.isUndefined(r)&&(i[o.trim()]=r.trim()),i},{}):{}}catch{return{}}}Z({handler(e,s){this.load(),s.disconnect()},options:({margin:e})=>({rootMargin:e}),filter:({loading:e})=>e==="lazy",target:({$el:e,$props:s})=>s.target?[e,...t.queryAll(s.target,e)]:e});function ee(e,s){if(s=te(s),s.length){const i=t.fragment("<picture>");for(const n of s){const o=t.fragment("<source>");t.attr(o,n),t.append(i,o)}t.append(i,e)}}function te(e){if(!e)return[];if(t.startsWith(e,"["))try{e=JSON.parse(e)}catch{e=[]}else e=K(e);return t.isArray(e)||(e=[e]),e.filter(s=>!t.isEmpty(s))}function M(){return new Promise(e=>requestAnimationFrame(e))}let P;function se(e){const s=t.on(e,"touchstart",o=>{if(o.targetTouches.length!==1||t.matches(o.target,'input[type="range"'))return;let r=t.getEventPos(o).y;const h=t.on(e,"touchmove",a=>{const l=t.getEventPos(a).y;l!==r&&(r=l,t.scrollParents(a.target).some(c=>{if(!e.contains(c))return!1;let{scrollHeight:m,clientHeight:d}=c;return d<m})||a.preventDefault())},{passive:!1});t.once(e,"scroll touchend touchcanel",h,{capture:!0})},{passive:!0});if(P)return s;P=!0;const{scrollingElement:i}=document,n={overflowY:CSS.supports("overflow","clip")?"clip":"hidden",touchAction:"none",scrollbarGutter:t.width(window)-i.clientWidth?"stable":""};return t.css(i,n),()=>{P=!1,s(),t.resetProps(i,n)}}var ie={connected(){t.addClass(this.$el,this.$options.id)}},ne={props:{container:Boolean},data:{container:!0},computed:{container({container:e}){return e===!0&&this.$container||e&&t.$(e)}}};function O(e){e.target.closest('a[href="#"],a[href=""]')&&e.preventDefault()}function B(e){const s=t.scrollParent(e),{scrollTop:i}=s,n=()=>{i!==s.scrollTop&&(s.scrollTop=i)};return()=>{n(),setTimeout(n)}}var re={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:e})=>!!e[0],hasTransition:({animation:e})=>["slide","reveal"].some(s=>t.startsWith(e[0],s))},methods:{async toggleElement(e,s,i){try{return await Promise.all(t.toNodes(e).map(n=>{const o=t.isBoolean(s)?s:!this.isToggled(n);if(!t.trigger(n,`before${o?"show":"hide"}`,[this]))return Promise.reject();const r=(t.isFunction(i)?i:i===!1||!this.hasAnimation?oe:this.hasTransition?ae:he)(n,o,this),h=o?this.clsEnter:this.clsLeave;t.addClass(n,h),t.trigger(n,o?"show":"hide",[this]);const a=()=>{var l;if(t.removeClass(n,h),t.trigger(n,o?"shown":"hidden",[this]),o){const c=B(n);(l=t.$$("[autofocus]",n).find(t.isVisible))==null||l.focus(),c()}};return r?r.then(a,()=>(t.removeClass(n,h),Promise.reject())):a()})),!0}catch{return!1}},isToggled(e=this.$el){return e=t.toNode(e),t.hasClass(e,this.clsEnter)?!0:t.hasClass(e,this.clsLeave)?!1:this.cls?t.hasClass(e,this.cls.split(" ")[0]):t.isVisible(e)},_toggle(e,s){if(!e)return;s=!!s;let i;this.cls?(i=t.includes(this.cls," ")||s!==t.hasClass(e,this.cls),i&&t.toggleClass(e,this.cls,t.includes(this.cls," ")?void 0:s)):(i=s===e.hidden,i&&(e.hidden=!s)),i&&t.trigger(e,"toggled",[s,this])}}};function oe(e,s,{_toggle:i}){return t.Animation.cancel(e),t.Transition.cancel(e),i(e,s)}async function ae(e,s,{animation:i,duration:n,velocity:o,transition:r,_toggle:h}){var a;const[l="reveal",c="top"]=((a=i[0])==null?void 0:a.split("-"))||[],m=[["left","right"],["top","bottom"]],d=m[t.includes(m[0],c)?0:1],f=d[1]===c,u=["width","height"][m.indexOf(d)],x=`margin-${d[0]}`,A=`margin-${c}`;let w=t.dimensions(e)[u];const De=t.Transition.inProgress(e);await t.Transition.cancel(e),s&&h(e,!0);const Me=Object.fromEntries(["padding","border","width","height","minWidth","minHeight","overflowY","overflowX",x,A].map(X=>[X,e.style[X]])),$=t.dimensions(e),N=t.toFloat(t.css(e,x)),V=t.toFloat(t.css(e,A)),b=$[u]+V;!De&&!s&&(w+=V);const[_]=t.wrapInner(e,"<div>");t.css(_,{boxSizing:"border-box",height:$.height,width:$.width,...t.css(e,["overflow","padding","borderTop","borderRight","borderBottom","borderLeft","borderImage",A])}),t.css(e,{padding:0,border:0,minWidth:0,minHeight:0,[A]:0,width:$.width,height:$.height,overflow:"hidden",[u]:w});const G=w/b;n=(o*b+n)*(s?1-G:G);const J={[u]:s?b:0};f&&(t.css(e,x,b-w+N),J[x]=s?N:b+N),!f^l==="reveal"&&(t.css(_,x,-b+w),t.Transition.start(_,{[x]:s?0:-b},n,r));try{await t.Transition.start(e,J,n,r)}finally{t.css(e,Me),t.unwrap(_.firstChild),s||h(e,!1)}}function he(e,s,i){const{animation:n,duration:o,_toggle:r}=i;return s?(r(e,!0),t.Animation.in(e,n[0],o,i.origin)):t.Animation.out(e,n[1]||n[0],o,i.origin).then(()=>r(e,!1))}const p=[];var le={mixins:[ie,ne,re],props:{selPanel:String,selClose:String,escClose:Boolean,bgClose:Boolean,stack:Boolean,role:String},data:{cls:"uk-open",escClose:!0,bgClose:!0,overlay:!0,stack:!1,role:"dialog"},computed:{panel:({selPanel:e},s)=>t.$(e,s),transitionElement(){return this.panel}},connected(){const e=this.panel||this.$el;e.role=this.role,this.overlay&&(e.ariaModal=!0)},beforeDisconnect(){t.includes(p,this)&&this.toggleElement(this.$el,!1,!1)},events:[{name:"click",delegate:({selClose:e})=>`${e},a[href*="#"]`,handler(e){const{current:s,defaultPrevented:i}=e,{hash:n}=s;!i&&n&&t.isSameSiteAnchor(s)&&!this.$el.contains(t.$(n))?this.hide():t.matches(s,this.selClose)&&(O(e),this.hide())}},{name:"toggle",self:!0,handler(e,s){e.defaultPrevented||(e.preventDefault(),this.target=s==null?void 0:s.$el,this.isToggled()===t.includes(p,this)&&this.toggle())}},{name:"beforeshow",self:!0,handler(e){if(t.includes(p,this))return!1;!this.stack&&p.length?(Promise.all(p.map(s=>s.hide())).then(this.show),e.preventDefault()):p.push(this)}},{name:"show",self:!0,handler(){this.stack&&t.css(this.$el,"zIndex",t.toFloat(t.css(this.$el,"zIndex"))+p.length);const e=[this.overlay&&ce(this),this.overlay&&se(this.$el),this.bgClose&&fe(this),this.escClose&&pe(this)];t.once(this.$el,"hidden",()=>e.forEach(s=>s&&s()),{self:!0}),t.addClass(document.documentElement,this.clsPage),L(this.target,!0)}},{name:"shown",self:!0,handler(){t.isFocusable(this.$el)||(this.$el.tabIndex=-1),t.matches(this.$el,":focus-within")||this.$el.focus()}},{name:"hidden",self:!0,handler(){t.includes(p,this)&&p.splice(p.indexOf(this),1),t.css(this.$el,"zIndex","");const{target:e}=this;p.some(s=>s.clsPage===this.clsPage)||(t.removeClass(document.documentElement,this.clsPage),queueMicrotask(()=>{if(t.isFocusable(e)){const s=B(e);e.focus(),s()}})),L(e,!1),this.target=null}}],methods:{toggle(){return this.isToggled()?this.hide():this.show()},async show(){return this.container&&t.parent(this.$el)!==this.container&&(t.append(this.container,this.$el),await M()),this.toggleElement(this.$el,!0,F)},hide(){return this.toggleElement(this.$el,!1,F)}}};function F(e,s,{transitionElement:i,_toggle:n}){return new Promise((o,r)=>t.once(e,"show hide",()=>{var h;(h=e._reject)==null||h.call(e),e._reject=r,n(e,s);const a=t.once(i,"transitionstart",()=>{t.once(i,"transitionend transitioncancel",o,{self:!0}),clearTimeout(l)},{self:!0}),l=setTimeout(()=>{a(),o()},de(t.css(i,"transitionDuration")))})).then(()=>delete e._reject)}function de(e){return e?t.endsWith(e,"ms")?t.toFloat(e):t.toFloat(e)*1e3:0}function ce(e){return t.on(document,"focusin",s=>{t.last(p)===e&&!e.$el.contains(s.target)&&e.$el.focus()})}function fe(e){return t.on(document,t.pointerDown,({target:s})=>{t.last(p)!==e||e.overlay&&!e.$el.contains(s)||!e.panel||e.panel.contains(s)||t.once(document,`${t.pointerUp} ${t.pointerCancel} scroll`,({defaultPrevented:i,type:n,target:o})=>{!i&&n===t.pointerUp&&s===o&&e.hide()},!0)})}function pe(e){return t.on(document,"keydown",s=>{s.keyCode===27&&t.last(p)===e&&e.hide()})}function L(e,s){e!=null&&e.ariaExpanded&&(e.ariaExpanded=s)}var E={slide:{show(e){return[{transform:y(e*-100)},{transform:y()}]},percent(e){return me(e)},translate(e,s){return[{transform:y(s*-100*e)},{transform:y(s*100*(1-e))}]}}};function me(e){return Math.abs(new DOMMatrix(t.css(e,"transform")).m41/e.offsetWidth)}function y(e=0,s="%"){return e?`translate3d(${e+s}, 0, 0)`:""}function ge(e,s,i,{animation:n,easing:o}){const{percent:r,translate:h,show:a=t.noop}=n,l=a(i),{promise:c,resolve:m}=ue();return{dir:i,show(d,f=0,U){const u=U?"linear":o;return d-=Math.round(d*t.clamp(f,-1,1)),this.translate(f),I(s,"itemin",{percent:f,duration:d,timing:u,dir:i}),I(e,"itemout",{percent:1-f,duration:d,timing:u,dir:i}),Promise.all([t.Transition.start(s,l[1],d,u),t.Transition.start(e,l[0],d,u)]).then(()=>{this.reset(),m()},t.noop),c},cancel(){return t.Transition.cancel([s,e])},reset(){t.resetProps([s,e],l[0])},async forward(d,f=this.percent()){return await this.cancel(),this.show(d,f,!0)},translate(d){this.reset();const f=h(d,i);t.css(s,f[1]),t.css(e,f[0]),I(s,"itemtranslatein",{percent:d,dir:i}),I(e,"itemtranslateout",{percent:1-d,dir:i})},percent(){return r(e||s,s,i)},getDistance(){return e==null?void 0:e.offsetWidth}}}function I(e,s,i){t.trigger(e,t.createEvent(s,!1,!1,i))}function ue(){let e;return{promise:new Promise(s=>e=s),resolve:e}}var ve={props:{i18n:Object},data:{i18n:null},methods:{t(e,...s){var i,n,o;let r=0;return((o=((i=this.i18n)==null?void 0:i[e])||((n=this.$options.i18n)==null?void 0:n[e]))==null?void 0:o.replace(/%s/g,()=>s[r++]||""))||""}}},be={props:{autoplay:Boolean,autoplayInterval:Number,pauseOnHover:Boolean},data:{autoplay:!1,autoplayInterval:7e3,pauseOnHover:!0},connected(){t.attr(this.list,"aria-live",this.autoplay?"off":"polite"),this.autoplay&&this.startAutoplay()},disconnected(){this.stopAutoplay()},update(){t.attr(this.slides,"tabindex","-1")},events:[{name:"visibilitychange",el:()=>document,filter:({autoplay:e})=>e,handler(){document.hidden?this.stopAutoplay():this.startAutoplay()}}],methods:{startAutoplay(){this.stopAutoplay(),this.interval=setInterval(()=>{this.stack.length||!t.isVisible(this.$el)||this.draggable&&t.matches(this.$el,":focus-within")&&!t.matches(this.$el,":focus")||this.pauseOnHover&&t.matches(this.$el,":hover")||this.show("next")},this.autoplayInterval)},stopAutoplay(){clearInterval(this.interval)}}};const C={passive:!1,capture:!0},xe="touchstart mousedown",S="touchmove mousemove",ke="touchend touchcancel mouseup click input scroll";var we={props:{draggable:Boolean},data:{draggable:!0,threshold:10,angleThreshold:45},created(){for(const e of["start","move","end"]){const s=this[e];this[e]=i=>{const n=t.getEventPos(i);t.isRtl&&(n.x=-n.x),this.prevPos=t.isEqual(n,this.pos)?this.prevPos:this.pos,this.pos=n,s(i)}}},events:[{name:xe,passive:!0,delegate:({selList:e})=>`${e} > *`,handler(e){!this.draggable||this.parallax||!t.isTouch(e)&&$e(e.target)||e.target.closest(t.selInput)||e.button>0||this.length<2||this.start(e)}},{name:"dragstart",handler(e){e.preventDefault()}},{name:S,el:({list:e})=>e,handler:t.noop,...C}],methods:{start(){this.drag=this.pos,this._transitioner?(this.percent=this._transitioner.percent(),this.drag.x+=this._transitioner.getDistance()*this.percent*this.dir,this._transitioner.cancel(),this._transitioner.translate(this.percent),this.dragging=!0,this.stack=[]):this.prevIndex=this.index,t.on(document,S,this.move,C),t.on(document,ke,this.end,{passive:!0,capture:!0,once:!0}),t.css(this.list,"userSelect","none")},move(e){const s=this.pos.x-this.drag.x;if(s===0||!this.dragging&&ye(this.pos,this.drag)>this.angleThreshold||this.prevPos.x===this.pos.x||!this.dragging&&Math.abs(s)<this.threshold)return;e.cancelable&&e.preventDefault(),this.dragging=!0,this.dir=s<0?1:-1;let{slides:i,prevIndex:n}=this,o=Math.abs(s),r=this.getIndex(n+this.dir),h=z.call(this,n,r);for(;r!==n&&o>h;)this.drag.x-=h*this.dir,n=r,o-=h,r=this.getIndex(n+this.dir),h=z.call(this,n,r);this.percent=o/h;const a=i[n],l=i[r],c=this.index!==r,m=n===r;let d;for(const f of[this.index,this.prevIndex])t.includes([r,n],f)||(t.trigger(i[f],"itemhidden",[this]),m&&(d=!0,this.prevIndex=n));(this.index===n&&this.prevIndex!==n||d)&&t.trigger(i[this.index],"itemshown",[this]),c&&(this.prevIndex=n,this.index=r,m||(t.trigger(a,"beforeitemhide",[this]),t.trigger(a,"itemhide",[this])),t.trigger(l,"beforeitemshow",[this]),t.trigger(l,"itemshow",[this])),this._transitioner=this._translate(Math.abs(this.percent),a,!m&&l)},end(){if(t.off(document,S,this.move,C),this.dragging)if(setTimeout(t.on(this.list,"click",e=>e.preventDefault(),C)),this.dragging=null,this.index===this.prevIndex)this.percent=1-this.percent,this.dir*=-1,this._show(!1,this.index,!0),this._transitioner=null;else{const e=this.dir<0==this.prevPos.x>this.pos.x;e?(t.trigger(this.slides[this.prevIndex],"itemhidden",[this]),t.trigger(this.slides[this.index],"itemshown",[this]),this.percent=1-this.percent):this.index=this.prevIndex,this.show(this.dir>0&&!e||this.dir<0&&e?"next":"previous",!0)}t.css(this.list,{userSelect:""}),this.drag=this.percent=null}}};function z(e,s){return this._getTransitioner(e,e!==s&&s).getDistance()||this.slides[e].offsetWidth}function $e(e){return t.css(e,"userSelect")!=="none"&&t.toArray(e.childNodes).some(s=>s.nodeType===3&&s.textContent.trim())}function ye(e,s){return Math.atan2(Math.abs(s.y-e.y),Math.abs(s.x-e.x))*180/Math.PI}t.memoize((e,s)=>{const i=Object.keys(s),n=i.concat(e).map(o=>[t.hyphenate(o),`data-${t.hyphenate(o)}`]).flat();return{attributes:i,filter:n}});let Ie=1;function H(e,s=null){return(s==null?void 0:s.id)||`${e.$options.id}-${Ie++}`}const g={SPACE:32,END:35,HOME:36,LEFT:37,RIGHT:39};var Ce={i18n:{next:"Next slide",previous:"Previous slide",slideX:"Slide %s",slideLabel:"%s of %s"},data:{selNav:!1,role:"region"},computed:{nav:({selNav:e},s)=>t.$$(e,s),navChildren(){return this.nav.map(e=>t.children(e)).flat()},selNavItem:({attrItem:e})=>`[${e}],[data-${e}]`,navItems(e,s){return t.$$(this.selNavItem,s)}},watch:{nav(e,s){t.attr(e,"role","tablist"),this.padNavitems(),s&&this.$emit()},list(e){t.isTag(e,"ul")&&t.attr(e,"role","presentation")},navChildren(e){t.attr(e,"role","presentation"),this.padNavitems(),this.updateNav()},navItems(e){for(const s of e){const i=t.data(s,this.attrItem),n=t.$("a,button",s)||s;let o,r=null;if(t.isNumeric(i)){const h=t.toNumber(i),a=this.slides[h];a&&(a.id||(a.id=H(this,a)),r=a.id),o=this.t("slideX",t.toFloat(i)+1),n.role="tab"}else this.list&&(this.list.id||(this.list.id=H(this,this.list)),r=this.list.id),o=this.t(i);n.ariaControls=r,n.ariaLabel=n.ariaLabel||o}},slides(e){e.forEach((s,i)=>t.attr(s,{role:this.nav.length?"tabpanel":"group","aria-label":this.t("slideLabel",i+1,this.length),"aria-roledescription":this.nav.length?null:"slide"})),this.padNavitems()}},connected(){this.$el.role=this.role,this.$el.ariaRoleDescription="carousel"},update:[{write(){this.navItems.concat(this.nav).forEach(e=>e&&(e.hidden=!this.maxIndex)),this.updateNav()},events:["resize"]}],events:[{name:"click keydown",delegate:({selNavItem:e})=>e,filter:({parallax:e})=>!e,handler(e){e.target.closest("a,button")&&(e.type==="click"||e.keyCode===g.SPACE)&&(O(e),this.show(t.data(e.current,this.attrItem)))}},{name:"itemshow",handler(){this.updateNav()}},{name:"keydown",delegate:({selNavItem:e})=>e,filter:({parallax:e})=>!e,handler(e){const{current:s,keyCode:i}=e,n=t.data(s,this.attrItem);if(!t.isNumeric(n))return;let o=i===g.HOME?0:i===g.END?"last":i===g.LEFT?"previous":i===g.RIGHT?"next":-1;~o&&(e.preventDefault(),this.show(o))}}],methods:{updateNav(){const e=this.getValidIndex();for(const s of this.navItems){const i=t.data(s,this.attrItem),n=t.$("a,button",s)||s;if(t.isNumeric(i)){const r=t.toNumber(i)===e;t.toggleClass(s,this.clsActive,r),t.toggleClass(n,"uk-disabled",!!this.parallax),n.ariaSelected=r,n.tabIndex=r&&!this.parallax?null:-1,r&&n&&t.matches(t.parent(s),":focus-within")&&n.focus()}else t.toggleClass(s,"uk-invisible",this.finite&&(i==="previous"&&e===0||i==="next"&&e>=this.maxIndex))}},padNavitems(){for(const e of this.nav){const s=t.children(e),i=[];for(let n=0;n<this.length;n++){const o=`${this.attrItem}="${n}"`;i[n]=s.findLast(r=>r.matches(`[${o}]`))||t.$(`<li ${o}><a href></a></li>`)}t.isEqual(i,s)||t.html(this.nav,i)}}}};const Te="cubic-bezier(0.25, 0.46, 0.45, 0.94)",Ae="cubic-bezier(0.165, 0.84, 0.44, 1)";var _e={mixins:[be,we,Ce,ve],props:{clsActivated:String,easing:String,index:Number,finite:Boolean,velocity:Number},data:()=>({easing:"ease",finite:!1,velocity:1,index:0,prevIndex:-1,stack:[],percent:0,clsActive:"uk-active",clsActivated:"",clsEnter:"uk-slide-enter",clsLeave:"uk-slide-leave",clsSlideActive:"uk-slide-active",Transitioner:!1,transitionOptions:{}}),connected(){this.prevIndex=-1,this.index=this.getValidIndex(this.$props.index),this.stack=[]},disconnected(){t.removeClass(this.slides,this.clsActive)},computed:{duration:({velocity:e},s)=>Ee(s.offsetWidth/e),list:({selList:e},s)=>t.$(e,s),maxIndex(){return this.length-1},slides(){return t.children(this.list)},length(){return this.slides.length}},watch:{slides(e,s){s&&this.$emit()}},events:{itemshow({target:e}){t.addClass(e,this.clsEnter,this.clsSlideActive)},itemshown({target:e}){t.removeClass(e,this.clsEnter)},itemhide({target:e}){t.addClass(e,this.clsLeave)},itemhidden({target:e}){t.removeClass(e,this.clsLeave,this.clsSlideActive)}},methods:{async show(e,s=!1){var i;if(this.dragging||!this.length||this.parallax)return;const{stack:n}=this,o=s?0:n.length,r=()=>{n.splice(o,1),n.length&&this.show(n.shift(),!0)};if(n[s?"unshift":"push"](e),!s&&n.length>1){n.length===2&&((i=this._transitioner)==null||i.forward(Math.min(this.duration,200)));return}const h=this.getIndex(this.index),a=t.hasClass(this.slides,this.clsActive)&&this.slides[h],l=this.getIndex(e,this.index),c=this.slides[l];if(a===c){r();return}if(this.dir=Pe(e,h),this.prevIndex=h,this.index=l,a&&!t.trigger(a,"beforeitemhide",[this])||!t.trigger(c,"beforeitemshow",[this,a])){this.index=this.prevIndex,r();return}a&&t.trigger(a,"itemhide",[this]),t.trigger(c,"itemshow",[this]),await this._show(a,c,s),a&&t.trigger(a,"itemhidden",[this]),t.trigger(c,"itemshown",[this]),n.shift(),this._transitioner=null,await M(),n.length&&this.show(n.shift(),!0)},getIndex(e=this.index,s=this.index){return t.clamp(t.getIndex(e,this.slides,s,this.finite),0,Math.max(0,this.maxIndex))},getValidIndex(e=this.index,s=this.prevIndex){return this.getIndex(e,s)},async _show(e,s,i){if(this._transitioner=this._getTransitioner(e,s,this.dir,{easing:i?s.offsetWidth<600?Te:Ae:this.easing,...this.transitionOptions}),!i&&!e){this._translate(1);return}const{length:n}=this.stack;return this._transitioner[n>1?"forward":"show"](n>1?Math.min(this.duration,75+75/(n-1)):this.duration,this.percent)},_translate(e,s=this.prevIndex,i=this.index){const n=this._getTransitioner(s===i?!1:s,i);return n.translate(e),n},_getTransitioner(e=this.prevIndex,s=this.index,i=this.dir||1,n=this.transitionOptions){return new this.Transitioner(t.isNumber(e)?this.slides[e]:e,t.isNumber(s)?this.slides[s]:s,i*(t.isRtl?-1:1),n)}}};function Pe(e,s){return e==="next"?1:e==="previous"||e<s?-1:1}function Ee(e){return .5*e+300}var Se={mixins:[_e],props:{animation:String},data:{animation:"slide",clsActivated:"uk-transition-active",Animations:E,Transitioner:ge},computed:{animation({animation:e,Animations:s}){return{...s[e]||s.slide,name:e}},transitionOptions(){return{animation:this.animation}}},observe:Y(),events:{itemshow({target:e}){t.addClass(e,this.clsActive)},itemshown({target:e}){t.addClass(e,this.clsActivated)},itemhidden({target:e}){t.removeClass(e,this.clsActive,this.clsActivated)}}};({...E});function T(e){return`scale3d(${e}, ${e}, 1)`}var j={...E,fade:{show(){return[{opacity:0},{opacity:1}]},percent(e){return 1-t.css(e,"opacity")},translate(e){return[{opacity:1-e},{opacity:e}]}},scale:{show(){return[{opacity:0,transform:T(1-.2)},{opacity:1,transform:T(1)}]},percent(e){return 1-t.css(e,"opacity")},translate(e){return[{opacity:1-e,transform:T(1-.2*e)},{opacity:e,transform:T(1-.2+.2*e)}]}}},W={i18n:{counter:"%s / %s"},mixins:[le,Se],functional:!0,props:{counter:Boolean,preload:Number,nav:Boolean,slidenav:Boolean,delayControls:Number,videoAutoplay:Boolean,template:String},data:()=>({counter:!1,preload:1,nav:!1,slidenav:!0,delayControls:3e3,videoAutoplay:!1,items:[],cls:"uk-open",clsPage:"uk-lightbox-page",clsFit:"uk-lightbox-items-fit",clsZoom:"uk-lightbox-zoom",attrItem:"uk-lightbox-item",selList:".uk-lightbox-items",selClose:".uk-close-large",selNav:".uk-lightbox-thumbnav, .uk-lightbox-dotnav",selCaption:".uk-lightbox-caption",selCounter:".uk-lightbox-counter",pauseOnHover:!1,velocity:2,Animations:j,template:'<div class="uk-lightbox uk-overflow-hidden"> <div class="uk-lightbox-items"></div> <div class="uk-position-top-right uk-position-small uk-transition-fade" uk-inverse> <button class="uk-lightbox-close uk-close-large" type="button" uk-close></button> </div> <div class="uk-lightbox-slidenav uk-position-center-left uk-position-medium uk-transition-fade" uk-inverse> <a href uk-slidenav-previous uk-lightbox-item="previous"></a> </div> <div class="uk-lightbox-slidenav uk-position-center-right uk-position-medium uk-transition-fade" uk-inverse> <a href uk-slidenav-next uk-lightbox-item="next"></a> </div> <div class="uk-position-center-right uk-position-medium uk-transition-fade" uk-inverse style="max-height: 90vh; overflow: auto;"> <ul class="uk-lightbox-thumbnav uk-lightbox-thumbnav-vertical uk-thumbnav uk-thumbnav-vertical"></ul> <ul class="uk-lightbox-dotnav uk-dotnav uk-dotnav-vertical"></ul> </div> <div class="uk-lightbox-counter uk-text-large uk-position-top-left uk-position-small uk-transition-fade" uk-inverse></div> <div class="uk-lightbox-caption uk-position-bottom uk-text-center uk-transition-slide-bottom uk-transition-opaque"></div> </div>'}),created(){let e=t.$(this.template);t.isTag(e,"template")&&(e=t.fragment(t.html(e)));const s=t.$(this.selList,e),i=this.$props.nav;t.remove(t.$$(this.selNav,e).filter(r=>!t.matches(r,`.uk-${i}`)));for(const[r,h]of this.items.entries())t.append(s,"<div>"),i==="thumbnav"&&t.wrapAll(Ne(h,this.videoAutoplay),t.append(t.$(this.selNav,e),`<li uk-lightbox-item="${r}"><a href></a></li>`));this.slidenav||t.remove(t.$$(".uk-lightbox-slidenav",e)),this.counter||t.remove(t.$(this.selCounter,e)),t.addClass(s,this.clsFit);const n=t.$("[uk-close]",e),o=this.t("close");n&&o&&(n.dataset.i18n=JSON.stringify({label:o})),this.$mount(t.append(this.container,e))},events:[{name:"click",self:!0,filter:({bgClose:e})=>e,delegate:({selList:e})=>`${e} > *`,handler(e){e.defaultPrevented||this.hide()}},{name:"click",self:!0,delegate:({clsZoom:e})=>`.${e}`,handler(e){e.defaultPrevented||t.toggleClass(this.list,this.clsFit)}},{name:`${t.pointerMove} ${t.pointerDown} keydown`,filter:({delayControls:e})=>e,handler(){this.showControls()}},{name:"shown",self:!0,handler(){this.showControls()}},{name:"hide",self:!0,handler(){this.hideControls(),t.removeClass(this.slides,this.clsActive),t.Transition.stop(this.slides)}},{name:"hidden",self:!0,handler(){this.$destroy(!0)}},{name:"keyup",el:()=>document,handler({keyCode:e}){if(!this.isToggled()||!this.draggable)return;let s=-1;e===g.LEFT?s="previous":e===g.RIGHT?s="next":e===g.HOME?s=0:e===g.END&&(s="last"),~s&&this.show(s)}},{name:"beforeitemshow",handler(e){t.html(t.$(this.selCaption,this.$el),this.getItem().caption||""),t.html(t.$(this.selCounter,this.$el),this.t("counter",this.index+1,this.slides.length));for(let s=-this.preload;s<=this.preload;s++)this.loadItem(this.index+s);this.isToggled()||(this.draggable=!1,e.preventDefault(),this.toggleElement(this.$el,!0,!1),this.animation=j.scale,t.removeClass(e.target,this.clsActive),this.stack.splice(1,0,this.index))}},{name:"itemshown",handler(){this.draggable=this.$props.draggable}},{name:"itemload",async handler(e,s){const{source:i,type:n,attrs:o={}}=s;if(this.setItem(s,"<span uk-spinner uk-inverse></span>"),!i)return;let r;const h={allowfullscreen:"",style:"max-width: 100%; box-sizing: border-box;","uk-responsive":"","uk-video":!!this.videoAutoplay};if(n==="image"||q(i)){const a=v("img");ee(a,s.sources),t.attr(a,{src:i,...t.pick(s,["alt","srcset","sizes"]),...o}),t.on(a,"load",()=>this.setItem(s,t.parent(a)||a)),t.on(a,"error",()=>this.setError(s))}else if(n==="video"||R(i)){const a=this.videoAutoplay==="inline",l=v("video",{src:i,playsinline:"",controls:a?null:"",loop:a?"":null,muted:a?"":null,poster:this.videoAutoplay?null:s.poster,"uk-video":!!this.videoAutoplay,...o});t.on(l,"loadedmetadata",()=>this.setItem(s,l)),t.on(l,"error",()=>this.setError(s))}else if(n==="iframe"||i.match(/\.(html|php)($|\?)/i))this.setItem(s,v("iframe",{src:i,allowfullscreen:"",class:"uk-lightbox-iframe",...o}));else if(r=i.match(/\/\/(?:.*?youtube(-nocookie)?\..*?(?:[?&]v=|\/shorts\/)|youtu\.be\/)([\w-]{11})[&?]?(.*)?/))this.setItem(s,v("iframe",{src:`https://www.youtube${r[1]||""}.com/embed/${r[2]}${r[3]?`?${r[3]}`:""}`,width:1920,height:1080,...h,...o}));else if(r=i.match(/\/\/.*?vimeo\.[a-z]+\/(\d+)[&?]?(.*)?/))try{const{height:a,width:l}=await(await fetch(`https://vimeo.com/api/oembed.json?maxwidth=1920&url=${encodeURI(i)}`,{credentials:"omit"})).json();this.setItem(s,v("iframe",{src:`https://player.vimeo.com/video/${r[1]}${r[2]?`?${r[2]}`:""}`,width:l,height:a,...h,...o}))}catch{this.setError(s)}}},{name:"itemloaded",handler(){this.$emit("resize")}}],update:{read(){for(const e of t.$$(`${this.selList} :not([controls]):is(img,video)`,this.$el))t.toggleClass(e,this.clsZoom,(e.naturalHeight||e.videoHeight)-this.$el.offsetHeight>Math.max(0,(e.naturalWidth||e.videoWidth)-this.$el.offsetWidth))},events:["resize"]},methods:{loadItem(e=this.index){const s=this.getItem(e);this.getSlide(s).childElementCount||t.trigger(this.$el,"itemload",[s])},getItem(e=this.index){return this.items[t.getIndex(e,this.slides)]},setItem(e,s){t.trigger(this.$el,"itemloaded",[this,t.html(this.getSlide(e),s)])},getSlide(e){return this.slides[this.items.indexOf(e)]},setError(e){this.setItem(e,'<span uk-icon="icon: bolt; ratio: 2" uk-inverse></span>')},showControls(){clearTimeout(this.controlsTimer),this.controlsTimer=this.delayControls&&setTimeout(this.hideControls,this.delayControls),t.addClass(this.$el,"uk-active","uk-transition-active")},hideControls(){t.removeClass(this.$el,"uk-active","uk-transition-active")}}};function v(e,s){const i=t.fragment(`<${e}>`);return t.attr(i,s),i}function Ne(e,s){const i=e.poster||e.thumb&&(e.type==="image"||q(e.thumb))?v("img",{src:e.poster||e.thumb,alt:""}):e.thumb&&(e.type==="video"||R(e.thumb))?v("video",{src:e.thumb,loop:"",playsinline:"",muted:"","uk-video":s==="inline"}):v("canvas");return e.thumbRatio&&(i.style.aspectRatio=e.thumbRatio),i}function q(e){return e==null?void 0:e.match(/\.(avif|jpe?g|jfif|a?png|gif|svg|webp)($|\?)/i)}function R(e){return e==null?void 0:e.match(/\.(mp4|webm|ogv)($|\?)/i)}return typeof window<"u"&&window.UIkit&&window.UIkit.component("lightboxPanel",W),W});
@@ -1,4 +1,4 @@
1
- /*! UIkit 3.24.2 | https://www.getuikit.com | (c) 2014 - 2025 YOOtheme | MIT License */
1
+ /*! UIkit 0.0.3 | 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')) :
@@ -776,7 +776,6 @@
776
776
  };
777
777
 
778
778
  const pointerOptions = { passive: false, capture: true };
779
- const pointerUpOptions = { passive: true, capture: true };
780
779
  const pointerDown = "touchstart mousedown";
781
780
  const pointerMove = "touchmove mousemove";
782
781
  const pointerUp = "touchend touchcancel mouseup click input scroll";
@@ -786,14 +785,18 @@
786
785
  },
787
786
  data: {
788
787
  draggable: true,
789
- threshold: 10
788
+ threshold: 10,
789
+ angleThreshold: 45
790
790
  },
791
791
  created() {
792
792
  for (const key of ["start", "move", "end"]) {
793
793
  const fn = this[key];
794
794
  this[key] = (e) => {
795
- const pos = util.getEventPos(e).x * (util.isRtl ? -1 : 1);
796
- this.prevPos = pos === this.pos ? this.prevPos : this.pos;
795
+ const pos = util.getEventPos(e);
796
+ if (util.isRtl) {
797
+ pos.x = -pos.x;
798
+ }
799
+ this.prevPos = util.isEqual(pos, this.pos) ? this.prevPos : this.pos;
797
800
  this.pos = pos;
798
801
  fn(e);
799
802
  };
@@ -830,7 +833,7 @@
830
833
  this.drag = this.pos;
831
834
  if (this._transitioner) {
832
835
  this.percent = this._transitioner.percent();
833
- this.drag += this._transitioner.getDistance() * this.percent * this.dir;
836
+ this.drag.x += this._transitioner.getDistance() * this.percent * this.dir;
834
837
  this._transitioner.cancel();
835
838
  this._transitioner.translate(this.percent);
836
839
  this.dragging = true;
@@ -839,12 +842,12 @@
839
842
  this.prevIndex = this.index;
840
843
  }
841
844
  util.on(document, pointerMove, this.move, pointerOptions);
842
- util.on(document, pointerUp, this.end, pointerUpOptions);
845
+ util.on(document, pointerUp, this.end, { passive: true, capture: true, once: true });
843
846
  util.css(this.list, "userSelect", "none");
844
847
  },
845
848
  move(e) {
846
- const distance = this.pos - this.drag;
847
- if (distance === 0 || this.prevPos === this.pos || !this.dragging && Math.abs(distance) < this.threshold) {
849
+ const distance = this.pos.x - this.drag.x;
850
+ if (distance === 0 || !this.dragging && getAngle(this.pos, this.drag) > this.angleThreshold || this.prevPos.x === this.pos.x || !this.dragging && Math.abs(distance) < this.threshold) {
848
851
  return;
849
852
  }
850
853
  e.cancelable && e.preventDefault();
@@ -855,7 +858,7 @@
855
858
  let nextIndex = this.getIndex(prevIndex + this.dir);
856
859
  let width = getDistance.call(this, prevIndex, nextIndex);
857
860
  while (nextIndex !== prevIndex && dis > width) {
858
- this.drag -= width * this.dir;
861
+ this.drag.x -= width * this.dir;
859
862
  prevIndex = nextIndex;
860
863
  dis -= width;
861
864
  nextIndex = this.getIndex(prevIndex + this.dir);
@@ -893,7 +896,6 @@
893
896
  },
894
897
  end() {
895
898
  util.off(document, pointerMove, this.move, pointerOptions);
896
- util.off(document, pointerUp, this.end, pointerUpOptions);
897
899
  if (this.dragging) {
898
900
  setTimeout(util.on(this.list, "click", (e) => e.preventDefault(), pointerOptions));
899
901
  this.dragging = null;
@@ -903,12 +905,13 @@
903
905
  this._show(false, this.index, true);
904
906
  this._transitioner = null;
905
907
  } else {
906
- const dirChange = (util.isRtl ? this.dir * (util.isRtl ? 1 : -1) : this.dir) < 0 === this.prevPos > this.pos;
907
- this.index = dirChange ? this.index : this.prevIndex;
908
+ const dirChange = this.dir < 0 === this.prevPos.x > this.pos.x;
908
909
  if (dirChange) {
909
910
  util.trigger(this.slides[this.prevIndex], "itemhidden", [this]);
910
911
  util.trigger(this.slides[this.index], "itemshown", [this]);
911
912
  this.percent = 1 - this.percent;
913
+ } else {
914
+ this.index = this.prevIndex;
912
915
  }
913
916
  this.show(
914
917
  this.dir > 0 && !dirChange || this.dir < 0 && dirChange ? "next" : "previous",
@@ -927,6 +930,9 @@
927
930
  function hasSelectableText(el) {
928
931
  return util.css(el, "userSelect") !== "none" && util.toArray(el.childNodes).some((el2) => el2.nodeType === 3 && el2.textContent.trim());
929
932
  }
933
+ function getAngle(pos1, pos2) {
934
+ return Math.atan2(Math.abs(pos2.y - pos1.y), Math.abs(pos2.x - pos1.x)) * 180 / Math.PI;
935
+ }
930
936
 
931
937
  util.memoize((id, props) => {
932
938
  const attributes = Object.keys(props);
@@ -951,17 +957,16 @@
951
957
  next: "Next slide",
952
958
  previous: "Previous slide",
953
959
  slideX: "Slide %s",
954
- slideLabel: "%s of %s",
955
- role: "String"
960
+ slideLabel: "%s of %s"
956
961
  },
957
962
  data: {
958
963
  selNav: false,
959
964
  role: "region"
960
965
  },
961
966
  computed: {
962
- nav: ({ selNav }, $el) => util.$(selNav, $el),
967
+ nav: ({ selNav }, $el) => util.$$(selNav, $el),
963
968
  navChildren() {
964
- return util.children(this.nav);
969
+ return this.nav.map((nav) => util.children(nav)).flat();
965
970
  },
966
971
  selNavItem: ({ attrItem }) => `[${attrItem}],[data-${attrItem}]`,
967
972
  navItems(_, $el) {
@@ -1019,9 +1024,9 @@
1019
1024
  slides(slides) {
1020
1025
  slides.forEach(
1021
1026
  (slide, i) => util.attr(slide, {
1022
- role: this.nav ? "tabpanel" : "group",
1027
+ role: this.nav.length ? "tabpanel" : "group",
1023
1028
  "aria-label": this.t("slideLabel", i + 1, this.length),
1024
- "aria-roledescription": this.nav ? null : "slide"
1029
+ "aria-roledescription": this.nav.length ? null : "slide"
1025
1030
  })
1026
1031
  );
1027
1032
  this.padNavitems();
@@ -1102,16 +1107,16 @@
1102
1107
  }
1103
1108
  },
1104
1109
  padNavitems() {
1105
- if (!this.nav) {
1106
- return;
1107
- }
1108
- const children2 = [];
1109
- for (let i = 0; i < this.length; i++) {
1110
- const attr2 = `${this.attrItem}="${i}"`;
1111
- children2[i] = this.navChildren.findLast((el) => el.matches(`[${attr2}]`)) || util.$(`<li ${attr2}><a href></a></li>`);
1112
- }
1113
- if (!util.isEqual(children2, this.navChildren)) {
1114
- util.html(this.nav, children2);
1110
+ for (const nav of this.nav) {
1111
+ const navChildren = util.children(nav);
1112
+ const navItems = [];
1113
+ for (let i = 0; i < this.length; i++) {
1114
+ const attr2 = `${this.attrItem}="${i}"`;
1115
+ navItems[i] = navChildren.findLast((el) => el.matches(`[${attr2}]`)) || util.$(`<li ${attr2}><a href></a></li>`);
1116
+ }
1117
+ if (!util.isEqual(navItems, navChildren)) {
1118
+ util.html(this.nav, navItems);
1119
+ }
1115
1120
  }
1116
1121
  }
1117
1122
  }
@@ -1389,7 +1394,7 @@
1389
1394
  pauseOnHover: false,
1390
1395
  velocity: 2,
1391
1396
  Animations,
1392
- template: `<div class="uk-lightbox uk-overflow-hidden"> <div class="uk-lightbox-items"></div> <div class="uk-position-top-right uk-position-small uk-transition-fade" uk-inverse> <button class="uk-lightbox-close uk-close-large" type="button" uk-close></button> </div> <div class="uk-lightbox-slidenav uk-position-center-left uk-position-medium uk-transition-fade" uk-inverse> <a href uk-slidenav-previous uk-lightbox-item="previous"></a> </div> <div class="uk-lightbox-slidenav uk-position-center-right uk-position-medium uk-transition-fade" uk-inverse> <a href uk-slidenav-next uk-lightbox-item="next"></a> </div> <div class="uk-position-center-right uk-position-medium uk-transition-fade" uk-inverse style="max-height: 90vh; overflow: auto;"> <ul class="uk-lightbox-thumbnav uk-lightbox-thumbnav-vertical uk-thumbnav uk-thumbnav-vertical"></ul> <ul class="uk-lightbox-dotnav uk-dotnav uk-dotnav-vertical"></ul> </div> <div class="uk-lightbox-counter uk-text-large uk-position-top-left uk-position-small uk-transition-fade" uk-inverse></div> <div class="uk-lightbox-caption uk-position-bottom uk-text-center uk-transition-slide-bottom uk-transition-opaque"></div> </div>`
1397
+ template: `<div class="uk-lightbox uk-overflow-hidden"> <div class="uk-lightbox-items"></div> <div class="uk-position-top-right uk-position-small uk-transition-fade" uk-inverse> <button class="uk-lightbox-close uk-close-large" type="button" uk-close></button> </div> <div class="uk-lightbox-slidenav uk-position-center-left uk-position-medium uk-transition-fade" uk-inverse> <a href uk-slidenav-previous uk-lightbox-item="previous"></a> </div> <div class="uk-lightbox-slidenav uk-position-center-right uk-position-medium uk-transition-fade" uk-inverse> <a href uk-slidenav-next uk-lightbox-item="next"></a> </div> <div class="uk-position-center-right uk-position-medium uk-transition-fade" uk-inverse style="max-height: 90vh; overflow: auto;"> <ul class="uk-lightbox-thumbnav uk-lightbox-thumbnav-vertical uk-thumbnav uk-thumbnav-vertical"></ul> <ul class="uk-lightbox-dotnav uk-dotnav uk-dotnav-vertical"></ul> </div> <div class="uk-lightbox-counter uk-text-large uk-position-top-left uk-position-small uk-transition-fade" uk-inverse></div> <div class="uk-lightbox-caption uk-position-bottom uk-text-center uk-transition-slide-bottom uk-transition-opaque"></div> </div>`
1393
1398
  }),
1394
1399
  created() {
1395
1400
  let $el = util.$(this.template);