uikit 3.14.4-dev.871ba3c05 → 3.14.4-dev.a014fa609

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 (139) hide show
  1. package/CHANGELOG.md +47 -12
  2. package/build/util.js +1 -0
  3. package/dist/css/uikit-core-rtl.css +385 -110
  4. package/dist/css/uikit-core-rtl.min.css +1 -1
  5. package/dist/css/uikit-core.css +385 -110
  6. package/dist/css/uikit-core.min.css +1 -1
  7. package/dist/css/uikit-rtl.css +402 -115
  8. package/dist/css/uikit-rtl.min.css +1 -1
  9. package/dist/css/uikit.css +402 -115
  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 +7 -5
  14. package/dist/js/components/filter.min.js +1 -1
  15. package/dist/js/components/lightbox-panel.js +196 -140
  16. package/dist/js/components/lightbox-panel.min.js +1 -1
  17. package/dist/js/components/lightbox.js +196 -140
  18. package/dist/js/components/lightbox.min.js +1 -1
  19. package/dist/js/components/notification.js +1 -1
  20. package/dist/js/components/notification.min.js +1 -1
  21. package/dist/js/components/parallax.js +4 -5
  22. package/dist/js/components/parallax.min.js +1 -1
  23. package/dist/js/components/slider-parallax.js +4 -5
  24. package/dist/js/components/slider-parallax.min.js +1 -1
  25. package/dist/js/components/slider.js +22 -7
  26. package/dist/js/components/slider.min.js +1 -1
  27. package/dist/js/components/slideshow-parallax.js +4 -5
  28. package/dist/js/components/slideshow-parallax.min.js +1 -1
  29. package/dist/js/components/slideshow.js +22 -7
  30. package/dist/js/components/slideshow.min.js +1 -1
  31. package/dist/js/components/sortable.js +3 -3
  32. package/dist/js/components/sortable.min.js +1 -1
  33. package/dist/js/components/tooltip.js +107 -137
  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 +1819 -1714
  38. package/dist/js/uikit-core.min.js +14 -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 +1081 -959
  42. package/dist/js/uikit.min.js +14 -1
  43. package/package.json +1 -1
  44. package/src/images/{backgrounds/nav-parent-open.svg → components/nav-parent-icon-large.svg} +0 -0
  45. package/src/images/components/nav-parent-icon.svg +3 -0
  46. package/src/images/components/navbar-parent-icon.svg +3 -0
  47. package/src/images/components/navbar-toggle-icon.svg +22 -3
  48. package/src/js/api/state.js +2 -2
  49. package/src/js/components/filter.js +5 -3
  50. package/src/js/components/sortable.js +2 -3
  51. package/src/js/core/accordion.js +9 -17
  52. package/src/js/core/alert.js +35 -14
  53. package/src/js/core/drop.js +115 -80
  54. package/src/js/core/height-viewport.js +14 -6
  55. package/src/js/core/icon.js +16 -0
  56. package/src/js/core/index.js +2 -0
  57. package/src/js/core/leader.js +2 -2
  58. package/src/js/core/navbar.js +44 -30
  59. package/src/js/core/offcanvas.js +1 -47
  60. package/src/js/core/scroll.js +37 -10
  61. package/src/js/core/sticky.js +8 -9
  62. package/src/js/core/toggle.js +3 -5
  63. package/src/js/mixin/media.js +4 -5
  64. package/src/js/mixin/modal.js +97 -8
  65. package/src/js/mixin/position.js +26 -11
  66. package/src/js/mixin/slider-drag.js +20 -8
  67. package/src/js/mixin/style.js +11 -0
  68. package/src/js/mixin/togglable.js +88 -133
  69. package/src/js/util/animation.js +4 -3
  70. package/src/js/util/class.js +3 -1
  71. package/src/js/util/dimensions.js +6 -6
  72. package/src/js/util/filter.js +3 -7
  73. package/src/js/util/position.js +108 -107
  74. package/src/js/util/style.js +4 -13
  75. package/src/js/util/viewport.js +5 -32
  76. package/src/less/components/_import.less +1 -0
  77. package/src/less/components/drop.less +1 -18
  78. package/src/less/components/dropbar.less +115 -0
  79. package/src/less/components/dropdown.less +16 -16
  80. package/src/less/components/leader.less +1 -1
  81. package/src/less/components/nav.less +240 -63
  82. package/src/less/components/navbar.less +81 -38
  83. package/src/less/components/utility.less +21 -4
  84. package/src/less/theme/_import.less +1 -0
  85. package/src/less/theme/dropbar.less +44 -0
  86. package/src/less/theme/dropdown.less +0 -11
  87. package/src/less/theme/nav.less +43 -9
  88. package/src/less/theme/navbar.less +7 -11
  89. package/src/scss/components/_import.scss +1 -0
  90. package/src/scss/components/drop.scss +1 -18
  91. package/src/scss/components/dropbar.scss +115 -0
  92. package/src/scss/components/dropdown.scss +16 -16
  93. package/src/scss/components/leader.scss +1 -1
  94. package/src/scss/components/nav.scss +189 -51
  95. package/src/scss/components/navbar.scss +69 -38
  96. package/src/scss/components/utility.scss +19 -3
  97. package/src/scss/mixins-theme.scss +93 -25
  98. package/src/scss/mixins.scss +89 -17
  99. package/src/scss/theme/_import.scss +1 -0
  100. package/src/scss/theme/dropbar.scss +44 -0
  101. package/src/scss/theme/dropdown.scss +0 -8
  102. package/src/scss/theme/nav.scss +41 -9
  103. package/src/scss/theme/navbar.scss +7 -8
  104. package/src/scss/variables-theme.scss +71 -18
  105. package/src/scss/variables.scss +60 -14
  106. package/tests/accordion.html +2 -2
  107. package/tests/alert.html +2 -2
  108. package/tests/countdown.html +1 -1
  109. package/tests/drop.html +461 -375
  110. package/tests/dropbar.html +458 -0
  111. package/tests/dropdown.html +26 -401
  112. package/tests/filter.html +9 -12
  113. package/tests/form.html +1 -1
  114. package/tests/index.html +126 -107
  115. package/tests/js/index.js +1 -4
  116. package/tests/lightbox.html +5 -5
  117. package/tests/list.html +8 -8
  118. package/tests/modal.html +13 -13
  119. package/tests/nav.html +117 -75
  120. package/tests/navbar.html +2002 -1131
  121. package/tests/offcanvas.html +17 -21
  122. package/tests/parallax.html +1 -1
  123. package/tests/position.html +18 -16
  124. package/tests/progress.html +9 -9
  125. package/tests/scroll.html +7 -10
  126. package/tests/search.html +6 -6
  127. package/tests/slider.html +6 -5
  128. package/tests/slideshow.html +8 -8
  129. package/tests/sortable.html +6 -8
  130. package/tests/sticky-navbar.html +9 -9
  131. package/tests/sticky.html +8 -8
  132. package/tests/switcher.html +1 -1
  133. package/tests/tab.html +1 -1
  134. package/tests/table.html +7 -7
  135. package/tests/toggle.html +2 -2
  136. package/tests/tooltip.html +1 -1
  137. package/tests/upload.html +11 -11
  138. package/tests/utility.html +19 -0
  139. package/src/images/backgrounds/nav-parent-close.svg +0 -3
@@ -1,4 +1,4 @@
1
- /*! UIkit 3.14.4-dev.871ba3c05 | https://www.getuikit.com | (c) 2014 - 2022 YOOtheme | MIT License */
1
+ /*! UIkit 3.14.4-dev.a014fa609 | https://www.getuikit.com | (c) 2014 - 2022 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.14.4-dev.871ba3c05 | https://www.getuikit.com | (c) 2014 - 2022 YOOtheme | MIT License */(function(e,i){typeof exports=="object"&&typeof module<"u"?module.exports=i(require("uikit-util")):typeof define=="function"&&define.amd?define("uikitcountdown",["uikit-util"],i):(e=typeof globalThis<"u"?globalThis:e||self,e.UIkitCountdown=i(e.UIkit.util))})(this,function(e){"use strict";var i={connected(){!e.hasClass(this.$el,this.$name)&&e.addClass(this.$el,this.$name)}};const a=["days","hours","minutes","seconds"];var d={mixins:[i],props:{date:String,clsWrapper:String},data:{date:"",clsWrapper:".uk-countdown-%unit%"},connected(){this.date=Date.parse(this.$props.date),this.start()},disconnected(){this.stop()},events:[{name:"visibilitychange",el(){return document},handler(){document.hidden?this.stop():this.start()}}],methods:{start(){this.stop(),this.update(),this.timer=setInterval(this.update,1e3)},stop(){clearInterval(this.timer)},update(){const n=r(this.date);(!this.date||n.total<=0)&&(this.stop(),n.days=n.hours=n.minutes=n.seconds=0);for(const s of a){const o=e.$(this.clsWrapper.replace("%unit%",s),this.$el);if(!o)continue;let t=String(Math.trunc(n[s]));t=t.length<2?"0"+t:t,o.textContent!==t&&(t=t.split(""),t.length!==o.children.length&&e.html(o,t.map(()=>"<span></span>").join("")),t.forEach((h,u)=>o.children[u].textContent=h))}}}};function r(n){const s=n-Date.now();return{total:s,seconds:s/1e3%60,minutes:s/1e3/60%60,hours:s/1e3/60/60%24,days:s/1e3/60/60/24}}return typeof window<"u"&&window.UIkit&&window.UIkit.component("countdown",d),d});
1
+ /*! UIkit 3.14.4-dev.a014fa609 | https://www.getuikit.com | (c) 2014 - 2022 YOOtheme | MIT License */(function(e,i){typeof exports=="object"&&typeof module<"u"?module.exports=i(require("uikit-util")):typeof define=="function"&&define.amd?define("uikitcountdown",["uikit-util"],i):(e=typeof globalThis<"u"?globalThis:e||self,e.UIkitCountdown=i(e.UIkit.util))})(this,function(e){"use strict";var i={connected(){!e.hasClass(this.$el,this.$name)&&e.addClass(this.$el,this.$name)}};const a=["days","hours","minutes","seconds"];var d={mixins:[i],props:{date:String,clsWrapper:String},data:{date:"",clsWrapper:".uk-countdown-%unit%"},connected(){this.date=Date.parse(this.$props.date),this.start()},disconnected(){this.stop()},events:[{name:"visibilitychange",el(){return document},handler(){document.hidden?this.stop():this.start()}}],methods:{start(){this.stop(),this.update(),this.timer=setInterval(this.update,1e3)},stop(){clearInterval(this.timer)},update(){const n=r(this.date);(!this.date||n.total<=0)&&(this.stop(),n.days=n.hours=n.minutes=n.seconds=0);for(const s of a){const o=e.$(this.clsWrapper.replace("%unit%",s),this.$el);if(!o)continue;let t=String(Math.trunc(n[s]));t=t.length<2?"0"+t:t,o.textContent!==t&&(t=t.split(""),t.length!==o.children.length&&e.html(o,t.map(()=>"<span></span>").join("")),t.forEach((h,u)=>o.children[u].textContent=h))}}}};function r(n){const s=n-Date.now();return{total:s,seconds:s/1e3%60,minutes:s/1e3/60%60,hours:s/1e3/60/60%24,days:s/1e3/60/60/24}}return typeof window<"u"&&window.UIkit&&window.UIkit.component("countdown",d),d});
@@ -1,4 +1,4 @@
1
- /*! UIkit 3.14.4-dev.871ba3c05 | https://www.getuikit.com | (c) 2014 - 2022 YOOtheme | MIT License */
1
+ /*! UIkit 3.14.4-dev.a014fa609 | https://www.getuikit.com | (c) 2014 - 2022 YOOtheme | MIT License */
2
2
 
3
3
  (function (global, factory) {
4
4
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('uikit-util')) :
@@ -449,7 +449,7 @@
449
449
 
450
450
  },
451
451
 
452
- setState(state, animate) {if (animate === void 0) {animate = true;}
452
+ async setState(state, animate) {if (animate === void 0) {animate = true;}
453
453
  state = { filter: { '': '' }, sort: [], ...state };
454
454
 
455
455
  uikitUtil.trigger(this.$el, 'beforeFilter', [this, state]);
@@ -458,15 +458,17 @@
458
458
  uikitUtil.toggleClass(el, this.cls, !!matchFilter(el, this.attrItem, state)));
459
459
 
460
460
 
461
- Promise.all(
461
+ await Promise.all(
462
462
  uikitUtil.$$(this.target, this.$el).map((target) => {
463
463
  const filterFn = () => {
464
464
  applyState(state, target, uikitUtil.children(target));
465
465
  this.$update(this.$el);
466
466
  };
467
467
  return animate ? this.animate(filterFn, target) : filterFn();
468
- })).
469
- then(() => uikitUtil.trigger(this.$el, 'afterFilter', [this]));
468
+ }));
469
+
470
+
471
+ uikitUtil.trigger(this.$el, 'afterFilter', [this]);
470
472
  },
471
473
 
472
474
  updateState() {
@@ -1 +1 @@
1
- /*! UIkit 3.14.4-dev.871ba3c05 | https://www.getuikit.com | (c) 2014 - 2022 YOOtheme | MIT License */(function(n,l){typeof exports=="object"&&typeof module<"u"?module.exports=l(require("uikit-util")):typeof define=="function"&&define.amd?define("uikitfilter",["uikit-util"],l):(n=typeof globalThis<"u"?globalThis:n||self,n.UIkitFilter=l(n.UIkit.util))})(this,function(n){"use strict";function l(s){return A(s,"top","bottom")}function A(s,e,o){const r=[[]];for(const t of s){if(!n.isVisible(t))continue;let c=u(t);for(let a=r.length-1;a>=0;a--){const f=r[a];if(!f[0]){f.push(t);break}let d;if(f[0].offsetParent===t.offsetParent?d=u(f[0]):(c=u(t,!0),d=u(f[0],!0)),c[e]>=d[o]-1&&c[e]!==d[e]){r.push([t]);break}if(c[o]-1>d[e]||c[e]===d[e]){f.push(t);break}if(a===0){r.unshift([t]);break}}}return r}function u(s,e){e===void 0&&(e=!1);let{offsetTop:o,offsetLeft:r,offsetHeight:t,offsetWidth:c}=s;return e&&([o,r]=n.offsetPosition(s)),{top:o,left:r,bottom:o+t,right:r+c}}const g="uk-transition-leave",v="uk-transition-enter";function w(s,e,o,r){r===void 0&&(r=0);const t=y(e,!0),c={opacity:1},a={opacity:0},f=i=>()=>t===y(e)?i():Promise.reject(),d=f(()=>(n.addClass(e,g),Promise.all(I(e).map((i,h)=>new Promise(m=>setTimeout(()=>n.Transition.start(i,a,o/2,"ease").then(m),h*r)))).then(()=>n.removeClass(e,g)))),p=f(()=>{const i=n.height(e);return n.addClass(e,v),s(),n.css(n.children(e),{opacity:0}),new Promise(h=>requestAnimationFrame(()=>{const m=n.children(e),C=n.height(e);n.css(e,"alignContent","flex-start"),n.height(e,i);const x=I(e);n.css(m,a);const q=x.map((W,M)=>new Promise(R=>setTimeout(()=>n.Transition.start(W,c,o/2,"ease").then(R),M*r)));i!==C&&q.push(n.Transition.start(e,{height:C},o/2+x.length*r,"ease")),Promise.all(q).then(()=>{n.removeClass(e,v),t===y(e)&&(n.css(e,{height:"",alignContent:""}),n.css(m,{opacity:""}),delete e.dataset.transition),h()})}))});return n.hasClass(e,g)?T(e).then(p):n.hasClass(e,v)?T(e).then(d).then(p):d().then(p)}function y(s,e){return e&&(s.dataset.transition=1+y(s)),n.toNumber(s.dataset.transition)||0}function T(s){return Promise.all(n.children(s).filter(n.Transition.inProgress).map(e=>new Promise(o=>n.once(e,"transitionend transitioncanceled",o))))}function I(s){return l(n.children(s)).reduce((e,o)=>e.concat(n.sortBy(o.filter(r=>n.isInView(r)),"offsetLeft")),[])}function L(s,e,o){return new Promise(r=>requestAnimationFrame(()=>{let t=n.children(e);const c=t.map(f=>F(f,!0)),a=n.css(e,["height","padding"]);n.Transition.cancel(e),t.forEach(n.Transition.cancel),S(e),s(),t=t.concat(n.children(e).filter(f=>!n.includes(t,f))),Promise.resolve().then(()=>{n.fastdom.flush();const f=n.css(e,["height","padding"]),[d,p]=z(e,t,c);t.forEach((i,h)=>p[h]&&n.css(i,p[h])),n.css(e,{display:"block",...a}),requestAnimationFrame(()=>{const i=t.map((h,m)=>n.parent(h)===e&&n.Transition.start(h,d[m],o,"ease")).concat(n.Transition.start(e,f,o,"ease"));Promise.all(i).then(()=>{t.forEach((h,m)=>n.parent(h)===e&&n.css(h,"display",d[m].opacity===0?"none":"")),S(e)},n.noop).then(r)})})}))}function F(s,e){const o=n.css(s,"zIndex");return n.isVisible(s)?{display:"",opacity:e?n.css(s,"opacity"):"0",pointerEvents:"none",position:"absolute",zIndex:o==="auto"?n.index(s):o,...$(s)}:!1}function z(s,e,o){const r=e.map((c,a)=>n.parent(c)&&a in o?o[a]?n.isVisible(c)?$(c):{opacity:0}:{opacity:n.isVisible(c)?1:0}:!1),t=r.map((c,a)=>{const f=n.parent(e[a])===s&&(o[a]||F(e[a]));if(!f)return!1;if(!c)delete f.opacity;else if(!("opacity"in c)){const{opacity:d}=f;d%1?c.opacity=1:delete f.opacity}return f});return[r,t]}function S(s){n.css(s.children,{height:"",left:"",opacity:"",pointerEvents:"",position:"",top:"",marginTop:"",marginLeft:"",transform:"",width:"",zIndex:""}),n.css(s,{height:"",display:"",padding:""})}function $(s){const{height:e,width:o}=n.offset(s),{top:r,left:t}=n.position(s),{marginLeft:c,marginTop:a}=n.css(s,["marginTop","marginLeft"]);return{top:r,left:t,height:e,width:o,marginLeft:c,marginTop:a,transform:""}}var B={props:{duration:Number,animation:Boolean},data:{duration:150,animation:"slide"},methods:{animate(s,e){e===void 0&&(e=this.$el);const o=this.animation;return(o==="fade"?w:o==="delayed-fade"?function(){for(var t=arguments.length,c=new Array(t),a=0;a<t;a++)c[a]=arguments[a];return w(...c,40)}:o?L:()=>(s(),Promise.resolve()))(s,e,this.duration).then(()=>this.$update(e,"resize"),n.noop)}}},b={mixins:[B],args:"target",props:{target:Boolean,selActive:Boolean},data:{target:null,selActive:!1,attrItem:"uk-filter-control",cls:"uk-active",duration:250},computed:{toggles:{get(s,e){let{attrItem:o}=s;return n.$$("["+o+"],[data-"+o+"]",e)},watch(){if(this.updateState(),this.selActive!==!1){const s=n.$$(this.selActive,this.$el);this.toggles.forEach(e=>n.toggleClass(e,this.cls,n.includes(s,e)))}},immediate:!0},children:{get(s,e){let{target:o}=s;return n.$$(o+" > *",e)},watch(s,e){e&&!H(s,e)&&this.updateState()},immediate:!0}},events:[{name:"click",delegate(){return"["+this.attrItem+"],[data-"+this.attrItem+"]"},handler(s){s.preventDefault(),this.apply(s.current)}}],methods:{apply(s){const e=this.getState(),o=E(s,this.attrItem,this.getState());V(e,o)||this.setState(o)},getState(){return this.toggles.filter(s=>n.hasClass(s,this.cls)).reduce((s,e)=>E(e,this.attrItem,s),{filter:{"":""},sort:[]})},setState(s,e){e===void 0&&(e=!0),s={filter:{"":""},sort:[],...s},n.trigger(this.$el,"beforeFilter",[this,s]),this.toggles.forEach(o=>n.toggleClass(o,this.cls,!!O(o,this.attrItem,s))),Promise.all(n.$$(this.target,this.$el).map(o=>{const r=()=>{N(s,o,n.children(o)),this.$update(this.$el)};return e?this.animate(r,o):r()})).then(()=>n.trigger(this.$el,"afterFilter",[this]))},updateState(){n.fastdom.write(()=>this.setState(this.getState(),!1))}}};function P(s,e){return n.parseOptions(n.data(s,e),["filter"])}function V(s,e){return["filter","sort"].every(o=>n.isEqual(s[o],e[o]))}function N(s,e,o){const r=j(s);o.forEach(a=>n.css(a,"display",r&&!n.matches(a,r)?"none":""));const[t,c]=s.sort;if(t){const a=D(o,t,c);n.isEqual(a,o)||n.append(e,a)}}function E(s,e,o){const r=P(s,e),{filter:t,group:c,sort:a,order:f="asc"}=r;return(t||n.isUndefined(a))&&(c?t?(delete o.filter[""],o.filter[c]=t):(delete o.filter[c],(n.isEmpty(o.filter)||""in o.filter)&&(o.filter={"":t||""})):o.filter={"":t||""}),n.isUndefined(a)||(o.sort=[a,f]),o}function O(s,e,o){let{filter:r={"":""},sort:[t,c]}=o;const{filter:a="",group:f="",sort:d,order:p="asc"}=P(s,e);return n.isUndefined(d)?f in r&&a===r[f]||!a&&f&&!(f in r)&&!r[""]:t===d&&c===p}function H(s,e){return s.length===e.length&&s.every(o=>e.includes(o))}function j(s){let{filter:e}=s,o="";return n.each(e,r=>o+=r||""),o}function D(s,e,o){return[...s].sort((r,t)=>n.data(r,e).localeCompare(n.data(t,e),void 0,{numeric:!0})*(o==="asc"||-1))}return typeof window<"u"&&window.UIkit&&window.UIkit.component("filter",b),b});
1
+ /*! UIkit 3.14.4-dev.a014fa609 | https://www.getuikit.com | (c) 2014 - 2022 YOOtheme | MIT License */(function(n,l){typeof exports=="object"&&typeof module<"u"?module.exports=l(require("uikit-util")):typeof define=="function"&&define.amd?define("uikitfilter",["uikit-util"],l):(n=typeof globalThis<"u"?globalThis:n||self,n.UIkitFilter=l(n.UIkit.util))})(this,function(n){"use strict";function l(s){return A(s,"top","bottom")}function A(s,e,o){const r=[[]];for(const t of s){if(!n.isVisible(t))continue;let c=u(t);for(let a=r.length-1;a>=0;a--){const f=r[a];if(!f[0]){f.push(t);break}let d;if(f[0].offsetParent===t.offsetParent?d=u(f[0]):(c=u(t,!0),d=u(f[0],!0)),c[e]>=d[o]-1&&c[e]!==d[e]){r.push([t]);break}if(c[o]-1>d[e]||c[e]===d[e]){f.push(t);break}if(a===0){r.unshift([t]);break}}}return r}function u(s,e){e===void 0&&(e=!1);let{offsetTop:o,offsetLeft:r,offsetHeight:t,offsetWidth:c}=s;return e&&([o,r]=n.offsetPosition(s)),{top:o,left:r,bottom:o+t,right:r+c}}const g="uk-transition-leave",v="uk-transition-enter";function w(s,e,o,r){r===void 0&&(r=0);const t=y(e,!0),c={opacity:1},a={opacity:0},f=i=>()=>t===y(e)?i():Promise.reject(),d=f(()=>(n.addClass(e,g),Promise.all(I(e).map((i,h)=>new Promise(m=>setTimeout(()=>n.Transition.start(i,a,o/2,"ease").then(m),h*r)))).then(()=>n.removeClass(e,g)))),p=f(()=>{const i=n.height(e);return n.addClass(e,v),s(),n.css(n.children(e),{opacity:0}),new Promise(h=>requestAnimationFrame(()=>{const m=n.children(e),C=n.height(e);n.css(e,"alignContent","flex-start"),n.height(e,i);const x=I(e);n.css(m,a);const q=x.map((W,M)=>new Promise(R=>setTimeout(()=>n.Transition.start(W,c,o/2,"ease").then(R),M*r)));i!==C&&q.push(n.Transition.start(e,{height:C},o/2+x.length*r,"ease")),Promise.all(q).then(()=>{n.removeClass(e,v),t===y(e)&&(n.css(e,{height:"",alignContent:""}),n.css(m,{opacity:""}),delete e.dataset.transition),h()})}))});return n.hasClass(e,g)?T(e).then(p):n.hasClass(e,v)?T(e).then(d).then(p):d().then(p)}function y(s,e){return e&&(s.dataset.transition=1+y(s)),n.toNumber(s.dataset.transition)||0}function T(s){return Promise.all(n.children(s).filter(n.Transition.inProgress).map(e=>new Promise(o=>n.once(e,"transitionend transitioncanceled",o))))}function I(s){return l(n.children(s)).reduce((e,o)=>e.concat(n.sortBy(o.filter(r=>n.isInView(r)),"offsetLeft")),[])}function L(s,e,o){return new Promise(r=>requestAnimationFrame(()=>{let t=n.children(e);const c=t.map(f=>F(f,!0)),a=n.css(e,["height","padding"]);n.Transition.cancel(e),t.forEach(n.Transition.cancel),S(e),s(),t=t.concat(n.children(e).filter(f=>!n.includes(t,f))),Promise.resolve().then(()=>{n.fastdom.flush();const f=n.css(e,["height","padding"]),[d,p]=z(e,t,c);t.forEach((i,h)=>p[h]&&n.css(i,p[h])),n.css(e,{display:"block",...a}),requestAnimationFrame(()=>{const i=t.map((h,m)=>n.parent(h)===e&&n.Transition.start(h,d[m],o,"ease")).concat(n.Transition.start(e,f,o,"ease"));Promise.all(i).then(()=>{t.forEach((h,m)=>n.parent(h)===e&&n.css(h,"display",d[m].opacity===0?"none":"")),S(e)},n.noop).then(r)})})}))}function F(s,e){const o=n.css(s,"zIndex");return n.isVisible(s)?{display:"",opacity:e?n.css(s,"opacity"):"0",pointerEvents:"none",position:"absolute",zIndex:o==="auto"?n.index(s):o,...$(s)}:!1}function z(s,e,o){const r=e.map((c,a)=>n.parent(c)&&a in o?o[a]?n.isVisible(c)?$(c):{opacity:0}:{opacity:n.isVisible(c)?1:0}:!1),t=r.map((c,a)=>{const f=n.parent(e[a])===s&&(o[a]||F(e[a]));if(!f)return!1;if(!c)delete f.opacity;else if(!("opacity"in c)){const{opacity:d}=f;d%1?c.opacity=1:delete f.opacity}return f});return[r,t]}function S(s){n.css(s.children,{height:"",left:"",opacity:"",pointerEvents:"",position:"",top:"",marginTop:"",marginLeft:"",transform:"",width:"",zIndex:""}),n.css(s,{height:"",display:"",padding:""})}function $(s){const{height:e,width:o}=n.offset(s),{top:r,left:t}=n.position(s),{marginLeft:c,marginTop:a}=n.css(s,["marginTop","marginLeft"]);return{top:r,left:t,height:e,width:o,marginLeft:c,marginTop:a,transform:""}}var B={props:{duration:Number,animation:Boolean},data:{duration:150,animation:"slide"},methods:{animate(s,e){e===void 0&&(e=this.$el);const o=this.animation;return(o==="fade"?w:o==="delayed-fade"?function(){for(var t=arguments.length,c=new Array(t),a=0;a<t;a++)c[a]=arguments[a];return w(...c,40)}:o?L:()=>(s(),Promise.resolve()))(s,e,this.duration).then(()=>this.$update(e,"resize"),n.noop)}}},b={mixins:[B],args:"target",props:{target:Boolean,selActive:Boolean},data:{target:null,selActive:!1,attrItem:"uk-filter-control",cls:"uk-active",duration:250},computed:{toggles:{get(s,e){let{attrItem:o}=s;return n.$$("["+o+"],[data-"+o+"]",e)},watch(){if(this.updateState(),this.selActive!==!1){const s=n.$$(this.selActive,this.$el);this.toggles.forEach(e=>n.toggleClass(e,this.cls,n.includes(s,e)))}},immediate:!0},children:{get(s,e){let{target:o}=s;return n.$$(o+" > *",e)},watch(s,e){e&&!H(s,e)&&this.updateState()},immediate:!0}},events:[{name:"click",delegate(){return"["+this.attrItem+"],[data-"+this.attrItem+"]"},handler(s){s.preventDefault(),this.apply(s.current)}}],methods:{apply(s){const e=this.getState(),o=E(s,this.attrItem,this.getState());V(e,o)||this.setState(o)},getState(){return this.toggles.filter(s=>n.hasClass(s,this.cls)).reduce((s,e)=>E(e,this.attrItem,s),{filter:{"":""},sort:[]})},async setState(s,e){e===void 0&&(e=!0),s={filter:{"":""},sort:[],...s},n.trigger(this.$el,"beforeFilter",[this,s]),this.toggles.forEach(o=>n.toggleClass(o,this.cls,!!O(o,this.attrItem,s))),await Promise.all(n.$$(this.target,this.$el).map(o=>{const r=()=>{N(s,o,n.children(o)),this.$update(this.$el)};return e?this.animate(r,o):r()})),n.trigger(this.$el,"afterFilter",[this])},updateState(){n.fastdom.write(()=>this.setState(this.getState(),!1))}}};function P(s,e){return n.parseOptions(n.data(s,e),["filter"])}function V(s,e){return["filter","sort"].every(o=>n.isEqual(s[o],e[o]))}function N(s,e,o){const r=j(s);o.forEach(a=>n.css(a,"display",r&&!n.matches(a,r)?"none":""));const[t,c]=s.sort;if(t){const a=D(o,t,c);n.isEqual(a,o)||n.append(e,a)}}function E(s,e,o){const r=P(s,e),{filter:t,group:c,sort:a,order:f="asc"}=r;return(t||n.isUndefined(a))&&(c?t?(delete o.filter[""],o.filter[c]=t):(delete o.filter[c],(n.isEmpty(o.filter)||""in o.filter)&&(o.filter={"":t||""})):o.filter={"":t||""}),n.isUndefined(a)||(o.sort=[a,f]),o}function O(s,e,o){let{filter:r={"":""},sort:[t,c]}=o;const{filter:a="",group:f="",sort:d,order:p="asc"}=P(s,e);return n.isUndefined(d)?f in r&&a===r[f]||!a&&f&&!(f in r)&&!r[""]:t===d&&c===p}function H(s,e){return s.length===e.length&&s.every(o=>e.includes(o))}function j(s){let{filter:e}=s,o="";return n.each(e,r=>o+=r||""),o}function D(s,e,o){return[...s].sort((r,t)=>n.data(r,e).localeCompare(n.data(t,e),void 0,{numeric:!0})*(o==="asc"||-1))}return typeof window<"u"&&window.UIkit&&window.UIkit.component("filter",b),b});
@@ -1,4 +1,4 @@
1
- /*! UIkit 3.14.4-dev.871ba3c05 | https://www.getuikit.com | (c) 2014 - 2022 YOOtheme | MIT License */
1
+ /*! UIkit 3.14.4-dev.a014fa609 | https://www.getuikit.com | (c) 2014 - 2022 YOOtheme | MIT License */
2
2
 
3
3
  (function (global, factory) {
4
4
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('uikit-util')) :
@@ -110,27 +110,7 @@
110
110
  origin: false,
111
111
  transition: 'ease',
112
112
  clsEnter: 'uk-togglabe-enter',
113
- clsLeave: 'uk-togglabe-leave',
114
-
115
- initProps: {
116
- overflow: '',
117
- maxHeight: '',
118
- paddingTop: '',
119
- paddingBottom: '',
120
- marginTop: '',
121
- marginBottom: '',
122
- boxShadow: '' },
123
-
124
-
125
- hideProps: {
126
- overflow: 'hidden',
127
- maxHeight: 0,
128
- paddingTop: 0,
129
- paddingBottom: 0,
130
- marginTop: 0,
131
- marginBottom: 0,
132
- boxShadow: 'none' } },
133
-
113
+ clsLeave: 'uk-togglabe-leave' },
134
114
 
135
115
 
136
116
  computed: {
@@ -139,7 +119,7 @@
139
119
  },
140
120
 
141
121
  hasTransition(_ref2) {let { animation } = _ref2;
142
- return uikitUtil.startsWith(animation[0], 'slide');
122
+ return ['slide', 'reveal'].some((transition) => uikitUtil.startsWith(animation[0], transition));
143
123
  } },
144
124
 
145
125
 
@@ -232,130 +212,105 @@
232
212
  };
233
213
  }
234
214
 
235
- function toggleTransition(cmp) {
236
- switch (cmp.animation[0]) {
237
- case 'slide-left':
238
- return slideHorizontal(cmp);
239
- case 'slide-right':
240
- return slideHorizontal(cmp, true);}
241
-
242
- return slide(cmp);
243
- }
244
-
245
- function slide(_ref4)
246
-
215
+ function toggleTransition(cmp) {var _cmp$animation$;
216
+ const [mode = 'reveal', startProp = 'top'] = ((_cmp$animation$ = cmp.animation[0]) == null ? void 0 : _cmp$animation$.split('-')) || [];
247
217
 
218
+ const dirs = [
219
+ ['left', 'right'],
220
+ ['top', 'bottom']];
248
221
 
222
+ const dir = dirs[uikitUtil.includes(dirs[0], startProp) ? 0 : 1];
223
+ const end = dir[1] === startProp;
224
+ const props = ['width', 'height'];
225
+ const dimProp = props[dirs.indexOf(dir)];
226
+ const marginProp = "margin-" + dir[0];
227
+ const marginStartProp = "margin-" + startProp;
249
228
 
229
+ return async (el, show) => {
230
+ let { duration, velocity, transition, _toggle } = cmp;
250
231
 
232
+ let currentDim = uikitUtil.dimensions(el)[dimProp];
251
233
 
252
-
253
- {let { isToggled, duration, velocity, initProps, hideProps, transition, _toggle } = _ref4;
254
- return (el, show) => {
255
234
  const inProgress = uikitUtil.Transition.inProgress(el);
256
- const inner =
257
- !inProgress && el.hasChildNodes() ?
258
- uikitUtil.toFloat(uikitUtil.css(el.firstElementChild, 'marginTop')) +
259
- uikitUtil.toFloat(uikitUtil.css(el.lastElementChild, 'marginBottom')) :
260
- 0;
261
- const currentHeight = uikitUtil.isVisible(el) ? uikitUtil.toFloat(uikitUtil.css(el, 'height')) + inner : 0;
262
-
263
- const props = inProgress ? uikitUtil.css(el, Object.keys(initProps)) : show ? hideProps : initProps;
264
-
265
- uikitUtil.Transition.cancel(el);
235
+ await uikitUtil.Transition.cancel(el);
266
236
 
267
- if (!isToggled(el)) {
237
+ if (show) {
268
238
  _toggle(el, true);
269
239
  }
270
240
 
271
- uikitUtil.css(el, 'maxHeight', '');
272
-
273
- // Update child components first
274
- uikitUtil.fastdom.flush();
275
-
276
- const endHeight = uikitUtil.toFloat(uikitUtil.css(el, 'height')) + inner;
277
- duration = velocity * endHeight + duration;
241
+ const prevProps = Object.fromEntries(
242
+ [
243
+ 'padding',
244
+ 'border',
245
+ 'width',
246
+ 'height',
247
+ 'overflowY',
248
+ 'overflowX',
249
+ marginProp,
250
+ marginStartProp].
251
+ map((key) => [key, el.style[key]]));
252
+
253
+
254
+ const dim = uikitUtil.dimensions(el);
255
+ const currentMargin = uikitUtil.toFloat(uikitUtil.css(el, marginProp));
256
+ const marginStart = uikitUtil.toFloat(uikitUtil.css(el, marginStartProp));
257
+ const endDim = dim[dimProp] + marginStart;
258
+
259
+ if (!inProgress && !show) {
260
+ currentDim += marginStart;
261
+ }
278
262
 
279
- uikitUtil.css(el, { ...props, maxHeight: currentHeight });
263
+ const [wrapper] = uikitUtil.wrapInner(el, '<div>');
264
+ uikitUtil.css(wrapper, {
265
+ boxSizing: 'border-box',
266
+ height: dim.height,
267
+ width: dim.width,
268
+ ...uikitUtil.css(el, [
269
+ 'overflow',
270
+ 'padding',
271
+ 'borderTop',
272
+ 'borderRight',
273
+ 'borderBottom',
274
+ 'borderLeft',
275
+ 'borderImage',
276
+ marginStartProp]) });
280
277
 
281
- return (
282
- show ?
283
- uikitUtil.Transition.start(
284
- el,
285
- { ...initProps, overflow: 'hidden', maxHeight: endHeight },
286
- duration * (1 - currentHeight / endHeight),
287
- transition) :
288
278
 
289
- uikitUtil.Transition.start(
290
- el,
291
- hideProps,
292
- duration * (currentHeight / endHeight),
293
- transition).
294
- then(() => _toggle(el, false))).
295
- then(() => uikitUtil.css(el, initProps));
296
- };
297
- }
298
279
 
299
- function slideHorizontal(_ref5, right) {let { isToggled, duration, velocity, transition, _toggle } = _ref5;
300
- return (el, show) => {
301
- const visible = uikitUtil.isVisible(el);
302
- const marginLeft = uikitUtil.toFloat(uikitUtil.css(el, 'marginLeft'));
280
+ uikitUtil.css(el, {
281
+ padding: 0,
282
+ border: 0,
283
+ [marginStartProp]: 0,
284
+ width: dim.width,
285
+ height: dim.height,
286
+ overflow: 'hidden',
287
+ [dimProp]: currentDim });
303
288
 
304
- uikitUtil.Transition.cancel(el);
305
289
 
306
- const [scrollElement] = uikitUtil.scrollParents(el);
307
- uikitUtil.css(scrollElement, 'overflowX', 'hidden');
290
+ const percent = currentDim / endDim;
291
+ duration = (velocity * endDim + duration) * (show ? 1 - percent : percent);
292
+ const endProps = { [dimProp]: show ? endDim : 0 };
308
293
 
309
- if (!isToggled(el)) {
310
- _toggle(el, true);
294
+ if (end) {
295
+ uikitUtil.css(el, marginProp, endDim - currentDim + currentMargin);
296
+ endProps[marginProp] = show ? currentMargin : endDim + currentMargin;
311
297
  }
312
298
 
313
- const width = uikitUtil.toFloat(uikitUtil.css(el, 'width'));
314
- duration = velocity * width + duration;
315
-
316
- const percent = visible ? (width + marginLeft * (right ? -1 : 1)) / width * 100 : 0;
317
- const offsetEl = uikitUtil.offset(el);
318
- const useClipPath = right ?
319
- offsetEl.right < scrollElement.clientWidth :
320
- Math.round(offsetEl.left) > 0;
321
-
322
- uikitUtil.css(el, {
323
- clipPath: useClipPath ?
324
- right ? "polygon(0 0," +
325
- percent + "% 0," + percent + "% 100%,0 100%)" : "polygon(" + (
326
- 100 - percent) + "% 0,100% 0,100% 100%," + (100 - percent) + "% 100%)" :
327
- '',
328
- marginLeft: (100 - percent) * (right ? 1 : -1) / 100 * width });
329
-
330
-
331
- return (
332
- show ?
333
- uikitUtil.Transition.start(
334
- el,
335
- {
336
- clipPath: useClipPath ? "polygon(0 0,100% 0,100% 100%,0 100%)" : '',
337
- marginLeft: 0 },
338
-
339
- duration * (1 - percent / 100),
340
- transition) :
341
-
342
- uikitUtil.Transition.start(
343
- el,
344
- {
345
- clipPath: useClipPath ?
346
- right ? "polygon(0 0,0 0,0 100%,0 100%)" : "polygon(100% 0,100% 0,100% 100%,100% 100%)" :
347
-
299
+ if (!end ^ mode === 'reveal') {
300
+ uikitUtil.css(wrapper, marginProp, -endDim + currentDim);
301
+ uikitUtil.Transition.start(wrapper, { [marginProp]: show ? 0 : -endDim }, duration, transition);
302
+ }
348
303
 
349
- '',
350
- marginLeft: (right ? 1 : -1) * width },
304
+ try {
305
+ await uikitUtil.Transition.start(el, endProps, duration, transition);
306
+ } finally {
307
+ uikitUtil.css(el, prevProps);
308
+ uikitUtil.unwrap(wrapper.firstChild);
351
309
 
352
- duration * (percent / 100),
353
- transition).
354
- then(() => _toggle(el, false))).
355
- then(() => {
356
- uikitUtil.css(scrollElement, 'overflowX', '');
357
- uikitUtil.css(el, { clipPath: '', marginLeft: '' });
358
- });
310
+ if (!show) {
311
+ _toggle(el, false);
312
+ }
313
+ }
359
314
  };
360
315
  }
361
316
 
@@ -474,17 +429,26 @@
474
429
  self: true,
475
430
 
476
431
  handler() {
477
- const docEl = document.documentElement;
432
+ uikitUtil.once(
433
+ this.$el,
434
+ 'hide',
435
+ uikitUtil.on(document, 'focusin', (e) => {
436
+ if (uikitUtil.last(active) === this && !uikitUtil.within(e.target, this.$el)) {
437
+ this.$el.focus();
438
+ }
439
+ }));
440
+
478
441
 
479
- if (uikitUtil.width(window) > docEl.clientWidth && this.overlay) {
480
- uikitUtil.css(document.body, 'overflowY', 'scroll');
442
+ if (this.overlay) {
443
+ uikitUtil.once(this.$el, 'hidden', preventOverscroll(this.$el), { self: true });
444
+ uikitUtil.once(this.$el, 'hidden', preventBackgroundScroll(), { self: true });
481
445
  }
482
446
 
483
447
  if (this.stack) {
484
448
  uikitUtil.css(this.$el, 'zIndex', uikitUtil.toFloat(uikitUtil.css(this.$el, 'zIndex')) + active.length);
485
449
  }
486
450
 
487
- uikitUtil.addClass(docEl, this.clsPage);
451
+ uikitUtil.addClass(document.documentElement, this.clsPage);
488
452
 
489
453
  if (this.bgClose) {
490
454
  uikitUtil.once(
@@ -559,10 +523,6 @@
559
523
  active.splice(active.indexOf(this), 1);
560
524
  }
561
525
 
562
- if (!active.length) {
563
- uikitUtil.css(document.body, 'overflowY', '');
564
- }
565
-
566
526
  uikitUtil.css(this.$el, 'zIndex', '');
567
527
 
568
528
  if (!active.some((modal) => modal.clsPage === this.clsPage)) {
@@ -627,6 +587,87 @@
627
587
  return time ? uikitUtil.endsWith(time, 'ms') ? uikitUtil.toFloat(time) : uikitUtil.toFloat(time) * 1000 : 0;
628
588
  }
629
589
 
590
+ function preventOverscroll(el) {
591
+ if (CSS.supports('overscroll-behavior', 'contain')) {
592
+ const elements = filterChildren(el, (child) => /auto|scroll/.test(uikitUtil.css(child, 'overflow')));
593
+ uikitUtil.css(elements, 'overscrollBehavior', 'contain');
594
+ return () => uikitUtil.css(elements, 'overscrollBehavior', '');
595
+ }
596
+
597
+ let startClientY;
598
+
599
+ const events = [
600
+ uikitUtil.on(
601
+ el,
602
+ 'touchstart',
603
+ (_ref6) => {let { targetTouches } = _ref6;
604
+ if (targetTouches.length === 1) {
605
+ startClientY = targetTouches[0].clientY;
606
+ }
607
+ },
608
+ { passive: true }),
609
+
610
+
611
+ uikitUtil.on(
612
+ el,
613
+ 'touchmove',
614
+ (e) => {
615
+ if (e.targetTouches.length !== 1) {
616
+ return;
617
+ }
618
+
619
+ let [scrollParent] = uikitUtil.scrollParents(e.target, /auto|scroll/);
620
+ if (!uikitUtil.within(scrollParent, el)) {
621
+ scrollParent = el;
622
+ }
623
+
624
+ const clientY = e.targetTouches[0].clientY - startClientY;
625
+ const { scrollTop, scrollHeight, clientHeight } = scrollParent;
626
+
627
+ if (
628
+ clientHeight >= scrollHeight ||
629
+ scrollTop === 0 && clientY > 0 ||
630
+ scrollHeight - scrollTop <= clientHeight && clientY < 0)
631
+ {
632
+ e.cancelable && e.preventDefault();
633
+ }
634
+ },
635
+ { passive: false })];
636
+
637
+
638
+
639
+ return () => events.forEach((fn) => fn());
640
+ }
641
+
642
+ let prevented;
643
+ function preventBackgroundScroll() {
644
+ if (prevented) {
645
+ return uikitUtil.noop;
646
+ }
647
+ prevented = true;
648
+ const { body, documentElement } = document;
649
+ uikitUtil.css(body, {
650
+ overflowY: uikitUtil.width(window) > documentElement.clientWidth ? 'scroll' : '',
651
+ touchAction: 'none' });
652
+
653
+ uikitUtil.css(documentElement, 'overflowY', 'hidden');
654
+ return () => {
655
+ prevented = false;
656
+ uikitUtil.css(documentElement, 'overflowY', '');
657
+ uikitUtil.css(body, { overflowY: '', touchAction: '' });
658
+ };
659
+ }
660
+
661
+ function filterChildren(el, fn) {
662
+ const children = [];
663
+ uikitUtil.apply(el, (node) => {
664
+ if (fn(node)) {
665
+ children.push(node);
666
+ }
667
+ });
668
+ return children;
669
+ }
670
+
630
671
  function Transitioner(prev, next, dir, _ref) {let { animation, easing } = _ref;
631
672
  const { percent, translate, show = uikitUtil.noop } = animation;
632
673
  const props = show(dir);
@@ -768,6 +809,11 @@
768
809
  this.interval && clearInterval(this.interval);
769
810
  } } };
770
811
 
812
+ const pointerOptions = { passive: false, capture: true };
813
+ const pointerDown = 'touchstart mousedown';
814
+ const pointerMove = 'touchmove mousemove';
815
+ const pointerUp = 'touchend touchcancel mouseup click input';
816
+
771
817
  var SliderDrag = {
772
818
  props: {
773
819
  draggable: Boolean },
@@ -794,7 +840,7 @@
794
840
 
795
841
  events: [
796
842
  {
797
- name: uikitUtil.pointerDown,
843
+ name: pointerDown,
798
844
 
799
845
  delegate() {
800
846
  return this.selSlides;
@@ -820,7 +866,17 @@
820
866
 
821
867
  handler(e) {
822
868
  e.preventDefault();
823
- } }],
869
+ } },
870
+
871
+
872
+ {
873
+ // iOS workaround for slider stopping if swiping fast
874
+ name: pointerMove + " " + pointerUp,
875
+ el() {
876
+ return this.list;
877
+ },
878
+ handler: uikitUtil.noop,
879
+ ...pointerOptions }],
824
880
 
825
881
 
826
882
 
@@ -842,10 +898,10 @@
842
898
  this.prevIndex = this.index;
843
899
  }
844
900
 
845
- uikitUtil.on(document, uikitUtil.pointerMove, this.move, { passive: false });
901
+ uikitUtil.on(document, pointerMove, this.move, pointerOptions);
846
902
 
847
903
  // 'input' event is triggered by video controls
848
- uikitUtil.on(document, uikitUtil.pointerUp + " " + uikitUtil.pointerCancel + " input", this.end, true);
904
+ uikitUtil.on(document, pointerUp, this.end, pointerOptions);
849
905
 
850
906
  uikitUtil.css(this.list, 'userSelect', 'none');
851
907
  },
@@ -925,8 +981,8 @@
925
981
  },
926
982
 
927
983
  end() {
928
- uikitUtil.off(document, uikitUtil.pointerMove, this.move, { passive: false });
929
- uikitUtil.off(document, uikitUtil.pointerUp + " " + uikitUtil.pointerCancel + " input", this.end, true);
984
+ uikitUtil.off(document, pointerMove, this.move, pointerOptions);
985
+ uikitUtil.off(document, pointerUp, this.end, pointerOptions);
930
986
 
931
987
  if (this.dragging) {
932
988
  this.dragging = null;
@@ -1 +1 @@
1
- /*! UIkit 3.14.4-dev.871ba3c05 | https://www.getuikit.com | (c) 2014 - 2022 YOOtheme | MIT License */(function(s,u){typeof exports=="object"&&typeof module<"u"?module.exports=u(require("uikit-util")):typeof define=="function"&&define.amd?define("uikitlightbox_panel",["uikit-util"],u):(s=typeof globalThis<"u"?globalThis:s||self,s.UIkitLightbox_panel=u(s.UIkit.util))})(this,function(s){"use strict";var u={slide:{show(e){return[{transform:b(e*-100)},{transform:b()}]},percent(e){return E(e)},translate(e,t){return[{transform:b(t*-100*e)},{transform:b(t*100*(1-e))}]}}};function E(e){return Math.abs(s.css(e,"transform").split(",")[4]/e.offsetWidth)||0}function b(e,t){return e===void 0&&(e=0),t===void 0&&(t="%"),e+=e?t:"","translate3d("+e+", 0, 0)"}function x(e){return"scale3d("+e+", "+e+", 1)"}var $={...u,fade:{show(){return[{opacity:0},{opacity:1}]},percent(e){return 1-s.css(e,"opacity")},translate(e){return[{opacity:1-e},{opacity:e}]}},scale:{show(){return[{opacity:0,transform:x(1-.2)},{opacity:1,transform:x(1)}]},percent(e){return 1-s.css(e,"opacity")},translate(e){return[{opacity:1-e,transform:x(1-.2*e)},{opacity:e,transform:x(1-.2+.2*e)}]}}},C={props:{container:Boolean},data:{container:!0},computed:{container(e){let{container:t}=e;return t===!0&&this.$container||t&&s.$(t)}}},S={connected(){!s.hasClass(this.$el,this.$name)&&s.addClass(this.$el,this.$name)}},T={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-togglabe-enter",clsLeave:"uk-togglabe-leave",initProps:{overflow:"",maxHeight:"",paddingTop:"",paddingBottom:"",marginTop:"",marginBottom:"",boxShadow:""},hideProps:{overflow:"hidden",maxHeight:0,paddingTop:0,paddingBottom:0,marginTop:0,marginBottom:0,boxShadow:"none"}},computed:{hasAnimation(e){let{animation:t}=e;return!!t[0]},hasTransition(e){let{animation:t}=e;return s.startsWith(t[0],"slide")}},methods:{toggleElement(e,t,n){return new Promise(o=>Promise.all(s.toNodes(e).map(d=>{const i=s.isBoolean(t)?t:!this.isToggled(d);if(!s.trigger(d,"before"+(i?"show":"hide"),[this]))return Promise.reject();const h=(s.isFunction(n)?n:n===!1||!this.hasAnimation?N(this):this.hasTransition?D(this):z(this))(d,i),r=i?this.clsEnter:this.clsLeave;s.addClass(d,r),s.trigger(d,i?"show":"hide",[this]);const a=()=>{s.removeClass(d,r),s.trigger(d,i?"shown":"hidden",[this]),this.$update(d)};return h?h.then(a,()=>(s.removeClass(d,r),Promise.reject())):a()})).then(o,s.noop))},isToggled(e){return e===void 0&&(e=this.$el),[e]=s.toNodes(e),s.hasClass(e,this.clsEnter)?!0:s.hasClass(e,this.clsLeave)?!1:this.cls?s.hasClass(e,this.cls.split(" ")[0]):s.isVisible(e)},_toggle(e,t){if(!e)return;t=Boolean(t);let n;this.cls?(n=s.includes(this.cls," ")||t!==s.hasClass(e,this.cls),n&&s.toggleClass(e,this.cls,s.includes(this.cls," ")?void 0:t)):(n=t===e.hidden,n&&(e.hidden=!t)),s.$$("[autofocus]",e).some(o=>s.isVisible(o)?o.focus()||!0:o.blur()),n&&(s.trigger(e,"toggled",[t,this]),this.$update(e))}}};function N(e){let{_toggle:t}=e;return(n,o)=>(s.Animation.cancel(n),s.Transition.cancel(n),t(n,o))}function D(e){switch(e.animation[0]){case"slide-left":return _(e);case"slide-right":return _(e,!0)}return B(e)}function B(e){let{isToggled:t,duration:n,velocity:o,initProps:d,hideProps:i,transition:h,_toggle:r}=e;return(a,l)=>{const m=s.Transition.inProgress(a),g=!m&&a.hasChildNodes()?s.toFloat(s.css(a.firstElementChild,"marginTop"))+s.toFloat(s.css(a.lastElementChild,"marginBottom")):0,c=s.isVisible(a)?s.toFloat(s.css(a,"height"))+g:0,v=m?s.css(a,Object.keys(d)):l?i:d;s.Transition.cancel(a),t(a)||r(a,!0),s.css(a,"maxHeight",""),s.fastdom.flush();const p=s.toFloat(s.css(a,"height"))+g;return n=o*p+n,s.css(a,{...v,maxHeight:c}),(l?s.Transition.start(a,{...d,overflow:"hidden",maxHeight:p},n*(1-c/p),h):s.Transition.start(a,i,n*(c/p),h).then(()=>r(a,!1))).then(()=>s.css(a,d))}}function _(e,t){let{isToggled:n,duration:o,velocity:d,transition:i,_toggle:h}=e;return(r,a)=>{const l=s.isVisible(r),m=s.toFloat(s.css(r,"marginLeft"));s.Transition.cancel(r);const[g]=s.scrollParents(r);s.css(g,"overflowX","hidden"),n(r)||h(r,!0);const c=s.toFloat(s.css(r,"width"));o=d*c+o;const v=l?(c+m*(t?-1:1))/c*100:0,p=s.offset(r),I=t?p.right<g.clientWidth:Math.round(p.left)>0;return s.css(r,{clipPath:I?t?"polygon(0 0,"+v+"% 0,"+v+"% 100%,0 100%)":"polygon("+(100-v)+"% 0,100% 0,100% 100%,"+(100-v)+"% 100%)":"",marginLeft:(100-v)*(t?1:-1)/100*c}),(a?s.Transition.start(r,{clipPath:I?"polygon(0 0,100% 0,100% 100%,0 100%)":"",marginLeft:0},o*(1-v/100),i):s.Transition.start(r,{clipPath:I?t?"polygon(0 0,0 0,0 100%,0 100%)":"polygon(100% 0,100% 0,100% 100%,100% 100%)":"",marginLeft:(t?1:-1)*c},o*(v/100),i).then(()=>h(r,!1))).then(()=>{s.css(g,"overflowX",""),s.css(r,{clipPath:"",marginLeft:""})})}}function z(e){return(t,n)=>{s.Animation.cancel(t);const{animation:o,duration:d,_toggle:i}=e;return n?(i(t,!0),s.Animation.in(t,o[0],d,e.origin)):s.Animation.out(t,o[1]||o[0],d,e.origin).then(()=>i(t,!1))}}const f=[];var j={mixins:[S,C,T],props:{selPanel:String,selClose:String,escClose:Boolean,bgClose:Boolean,stack:Boolean},data:{cls:"uk-open",escClose:!0,bgClose:!0,overlay:!0,stack:!1},computed:{panel(e,t){let{selPanel:n}=e;return s.$(n,t)},transitionElement(){return this.panel},bgClose(e){let{bgClose:t}=e;return t&&this.panel}},beforeDisconnect(){s.includes(f,this)&&this.toggleElement(this.$el,!1,!1)},events:[{name:"click",delegate(){return this.selClose},handler(e){e.preventDefault(),this.hide()}},{name:"toggle",self:!0,handler(e){e.defaultPrevented||(e.preventDefault(),this.isToggled()===s.includes(f,this)&&this.toggle())}},{name:"beforeshow",self:!0,handler(e){if(s.includes(f,this))return!1;!this.stack&&f.length?(Promise.all(f.map(t=>t.hide())).then(this.show),e.preventDefault()):f.push(this)}},{name:"show",self:!0,handler(){const e=document.documentElement;s.width(window)>e.clientWidth&&this.overlay&&s.css(document.body,"overflowY","scroll"),this.stack&&s.css(this.$el,"zIndex",s.toFloat(s.css(this.$el,"zIndex"))+f.length),s.addClass(e,this.clsPage),this.bgClose&&s.once(this.$el,"hide",s.on(document,s.pointerDown,t=>{let{target:n}=t;s.last(f)!==this||this.overlay&&!s.within(n,this.$el)||s.within(n,this.panel)||s.once(document,s.pointerUp+" "+s.pointerCancel+" scroll",o=>{let{defaultPrevented:d,type:i,target:h}=o;!d&&i===s.pointerUp&&n===h&&this.hide()},!0)}),{self:!0}),this.escClose&&s.once(this.$el,"hide",s.on(document,"keydown",t=>{t.keyCode===27&&s.last(f)===this&&this.hide()}),{self:!0})}},{name:"shown",self:!0,handler(){s.isFocusable(this.$el)||s.attr(this.$el,"tabindex","-1"),s.$(":focus",this.$el)||this.$el.focus()}},{name:"hidden",self:!0,handler(){s.includes(f,this)&&f.splice(f.indexOf(this),1),f.length||s.css(document.body,"overflowY",""),s.css(this.$el,"zIndex",""),f.some(e=>e.clsPage===this.clsPage)||s.removeClass(document.documentElement,this.clsPage)}}],methods:{toggle(){return this.isToggled()?this.hide():this.show()},show(){return this.container&&s.parent(this.$el)!==this.container?(s.append(this.container,this.$el),new Promise(e=>requestAnimationFrame(()=>this.show().then(e)))):this.toggleElement(this.$el,!0,A(this))},hide(){return this.toggleElement(this.$el,!1,A(this))}}};function A(e){let{transitionElement:t,_toggle:n}=e;return(o,d)=>new Promise((i,h)=>s.once(o,"show hide",()=>{o._reject==null||o._reject(),o._reject=h,n(o,d);const r=s.once(t,"transitionstart",()=>{s.once(t,"transitionend transitioncancel",i,{self:!0}),clearTimeout(a)},{self:!0}),a=setTimeout(()=>{r(),i()},L(s.css(t,"transitionDuration")))})).then(()=>delete o._reject)}function L(e){return e?s.endsWith(e,"ms")?s.toFloat(e):s.toFloat(e)*1e3:0}function H(e,t,n,o){let{animation:d,easing:i}=o;const{percent:h,translate:r,show:a=s.noop}=d,l=a(n),m=new s.Deferred;return{dir:n,show(g,c,v){c===void 0&&(c=0);const p=v?"linear":i;return g-=Math.round(g*s.clamp(c,-1,1)),this.translate(c),y(t,"itemin",{percent:c,duration:g,timing:p,dir:n}),y(e,"itemout",{percent:1-c,duration:g,timing:p,dir:n}),Promise.all([s.Transition.start(t,l[1],g,p),s.Transition.start(e,l[0],g,p)]).then(()=>{this.reset(),m.resolve()},s.noop),m.promise},cancel(){s.Transition.cancel([t,e])},reset(){for(const g in l[0])s.css([t,e],g,"")},forward(g,c){return c===void 0&&(c=this.percent()),s.Transition.cancel([t,e]),this.show(g,c,!0)},translate(g){this.reset();const c=r(g,n);s.css(t,c[1]),s.css(e,c[0]),y(t,"itemtranslatein",{percent:g,dir:n}),y(e,"itemtranslateout",{percent:1-g,dir:n})},percent(){return h(e||t,t,n)},getDistance(){return e==null?void 0:e.offsetWidth}}}function y(e,t,n){s.trigger(e,s.createEvent(t,!1,!1,n))}var M={connected(){var e;this.registerObserver(s.observeResize(((e=this.$options.resizeTargets)==null?void 0:e.call(this))||this.$el,()=>this.$emit("resize")))}},O={props:{autoplay:Boolean,autoplayInterval:Number,pauseOnHover:Boolean},data:{autoplay:!1,autoplayInterval:7e3,pauseOnHover:!0},connected(){this.autoplay&&this.startAutoplay()},disconnected(){this.stopAutoplay()},update(){s.attr(this.slides,"tabindex","-1")},events:[{name:"visibilitychange",el(){return document},filter(){return this.autoplay},handler(){document.hidden?this.stopAutoplay():this.startAutoplay()}}],methods:{startAutoplay(){this.stopAutoplay(),this.interval=setInterval(()=>(!this.draggable||!s.$(":focus",this.$el))&&(!this.pauseOnHover||!s.matches(this.$el,":hover"))&&!this.stack.length&&this.show("next"),this.autoplayInterval)},stopAutoplay(){this.interval&&clearInterval(this.interval)}}},F={props:{draggable:Boolean},data:{draggable:!0,threshold:10},created(){for(const e of["start","move","end"]){const t=this[e];this[e]=n=>{const o=s.getEventPos(n).x*(s.isRtl?-1:1);this.prevPos=o===this.pos?this.prevPos:this.pos,this.pos=o,t(n)}}},events:[{name:s.pointerDown,delegate(){return this.selSlides},handler(e){!this.draggable||!s.isTouch(e)&&W(e.target)||s.closest(e.target,s.selInput)||e.button>0||this.length<2||this.start(e)}},{name:"dragstart",handler(e){e.preventDefault()}}],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,s.on(document,s.pointerMove,this.move,{passive:!1}),s.on(document,s.pointerUp+" "+s.pointerCancel+" input",this.end,!0),s.css(this.list,"userSelect","none")},move(e){const t=this.pos-this.drag;if(t===0||this.prevPos===this.pos||!this.dragging&&Math.abs(t)<this.threshold)return;s.css(this.list,"pointerEvents","none"),e.cancelable&&e.preventDefault(),this.dragging=!0,this.dir=t<0?1:-1;const{slides:n}=this;let{prevIndex:o}=this,d=Math.abs(t),i=this.getIndex(o+this.dir,o),h=this._getDistance(o,i)||n[o].offsetWidth;for(;i!==o&&d>h;)this.drag-=h*this.dir,o=i,d-=h,i=this.getIndex(o+this.dir,o),h=this._getDistance(o,i)||n[o].offsetWidth;this.percent=d/h;const r=n[o],a=n[i],l=this.index!==i,m=o===i;let g;[this.index,this.prevIndex].filter(c=>!s.includes([i,o],c)).forEach(c=>{s.trigger(n[c],"itemhidden",[this]),m&&(g=!0,this.prevIndex=o)}),(this.index===o&&this.prevIndex!==o||g)&&s.trigger(n[this.index],"itemshown",[this]),l&&(this.prevIndex=o,this.index=i,!m&&s.trigger(r,"beforeitemhide",[this]),s.trigger(a,"beforeitemshow",[this])),this._transitioner=this._translate(Math.abs(this.percent),r,!m&&a),l&&(!m&&s.trigger(r,"itemhide",[this]),s.trigger(a,"itemshow",[this]))},end(){if(s.off(document,s.pointerMove,this.move,{passive:!1}),s.off(document,s.pointerUp+" "+s.pointerCancel+" input",this.end,!0),this.dragging)if(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=(s.isRtl?this.dir*(s.isRtl?1:-1):this.dir)<0==this.prevPos>this.pos;this.index=e?this.index:this.prevIndex,e&&(this.percent=1-this.percent),this.show(this.dir>0&&!e||this.dir<0&&e?"next":"previous",!0)}s.css(this.list,{userSelect:"",pointerEvents:""}),this.drag=this.percent=null}}};function W(e){return!e.children.length&&e.childNodes.length}var R={data:{selNav:!1},computed:{nav(e,t){let{selNav:n}=e;return s.$(n,t)},selNavItem(e){let{attrItem:t}=e;return"["+t+"],[data-"+t+"]"},navItems(e,t){return s.$$(this.selNavItem,t)}},update:{write(){this.nav&&this.length!==this.nav.children.length&&s.html(this.nav,this.slides.map((e,t)=>"<li "+this.attrItem+'="'+t+'"><a href></a></li>').join("")),this.navItems.concat(this.nav).forEach(e=>e&&(e.hidden=!this.maxIndex)),this.updateNav()},events:["resize"]},events:[{name:"click",delegate(){return this.selNavItem},handler(e){e.preventDefault(),this.show(s.data(e.current,this.attrItem))}},{name:"itemshow",handler:"updateNav"}],methods:{updateNav(){const e=this.getValidIndex();for(const t of this.navItems){const n=s.data(t,this.attrItem);s.toggleClass(t,this.clsActive,s.toNumber(n)===e),s.toggleClass(t,"uk-invisible",this.finite&&(n==="previous"&&e===0||n==="next"&&e>=this.maxIndex))}}}},V={mixins:[O,F,R,M],props:{clsActivated:Boolean,easing:String,index:Number,finite:Boolean,velocity:Number,selSlides:String},data:()=>({easing:"ease",finite:!1,velocity:1,index:0,prevIndex:-1,stack:[],percent:0,clsActive:"uk-active",clsActivated:!1,Transitioner:!1,transitionOptions:{}}),connected(){this.prevIndex=-1,this.index=this.getValidIndex(this.$props.index),this.stack=[]},disconnected(){s.removeClass(this.slides,this.clsActive)},computed:{duration(e,t){let{velocity:n}=e;return X(t.offsetWidth/n)},list(e,t){let{selList:n}=e;return s.$(n,t)},maxIndex(){return this.length-1},selSlides(e){let{selList:t,selSlides:n}=e;return t+" "+(n||"> *")},slides:{get(){return s.$$(this.selSlides,this.$el)},watch(){this.$reset()}},length(){return this.slides.length}},methods:{show(e,t){if(t===void 0&&(t=!1),this.dragging||!this.length)return;const{stack:n}=this,o=t?0:n.length,d=()=>{n.splice(o,1),n.length&&this.show(n.shift(),!0)};if(n[t?"unshift":"push"](e),!t&&n.length>1){n.length===2&&this._transitioner.forward(Math.min(this.duration,200));return}const i=this.getIndex(this.index),h=s.hasClass(this.slides,this.clsActive)&&this.slides[i],r=this.getIndex(e,this.index),a=this.slides[r];if(h===a){d();return}if(this.dir=q(e,i),this.prevIndex=i,this.index=r,h&&!s.trigger(h,"beforeitemhide",[this])||!s.trigger(a,"beforeitemshow",[this,h])){this.index=this.prevIndex,d();return}const l=this._show(h,a,t).then(()=>(h&&s.trigger(h,"itemhidden",[this]),s.trigger(a,"itemshown",[this]),new Promise(m=>{s.fastdom.write(()=>{n.shift(),n.length?this.show(n.shift(),!0):this._transitioner=null,m()})})));return h&&s.trigger(h,"itemhide",[this]),s.trigger(a,"itemshow",[this]),l},getIndex(e,t){return e===void 0&&(e=this.index),t===void 0&&(t=this.index),s.clamp(s.getIndex(e,this.slides,t,this.finite),0,this.maxIndex)},getValidIndex(e,t){return e===void 0&&(e=this.index),t===void 0&&(t=this.prevIndex),this.getIndex(e,t)},_show(e,t,n){if(this._transitioner=this._getTransitioner(e,t,this.dir,{easing:n?t.offsetWidth<600?"cubic-bezier(0.25, 0.46, 0.45, 0.94)":"cubic-bezier(0.165, 0.84, 0.44, 1)":this.easing,...this.transitionOptions}),!n&&!e)return this._translate(1),Promise.resolve();const{length:o}=this.stack;return this._transitioner[o>1?"forward":"show"](o>1?Math.min(this.duration,75+75/(o-1)):this.duration,this.percent)},_getDistance(e,t){return this._getTransitioner(e,e!==t&&t).getDistance()},_translate(e,t,n){t===void 0&&(t=this.prevIndex),n===void 0&&(n=this.index);const o=this._getTransitioner(t!==n?t:!1,n);return o.translate(e),o},_getTransitioner(e,t,n,o){return e===void 0&&(e=this.prevIndex),t===void 0&&(t=this.index),n===void 0&&(n=this.dir||1),o===void 0&&(o=this.transitionOptions),new this.Transitioner(s.isNumber(e)?this.slides[e]:e,s.isNumber(t)?this.slides[t]:t,n*(s.isRtl?-1:1),o)}}};function q(e,t){return e==="next"?1:e==="previous"||e<t?-1:1}function X(e){return .5*e+300}var Y={mixins:[V],props:{animation:String},data:{animation:"slide",clsActivated:"uk-transition-active",Animations:u,Transitioner:H},computed:{animation(e){let{animation:t,Animations:n}=e;return{...n[t]||n.slide,name:t}},transitionOptions(){return{animation:this.animation}}},events:{beforeitemshow(e){let{target:t}=e;s.addClass(t,this.clsActive)},itemshown(e){let{target:t}=e;s.addClass(t,this.clsActivated)},itemhidden(e){let{target:t}=e;s.removeClass(t,this.clsActive,this.clsActivated)}}},P={mixins:[C,j,T,Y],functional:!0,props:{delayControls:Number,preload:Number,videoAutoplay:Boolean,template:String},data:()=>({preload:1,videoAutoplay:!1,delayControls:3e3,items:[],cls:"uk-open",clsPage:"uk-lightbox-page",selList:".uk-lightbox-items",attrItem:"uk-lightbox-item",selClose:".uk-close-large",selCaption:".uk-lightbox-caption",pauseOnHover:!1,velocity:2,Animations:$,template:'<div class="uk-lightbox uk-overflow-hidden"> <ul class="uk-lightbox-items"></ul> <div class="uk-lightbox-toolbar uk-position-top uk-text-right uk-transition-slide-top uk-transition-opaque"> <button class="uk-lightbox-toolbar-icon uk-close-large" type="button" uk-close></button> </div> <a class="uk-lightbox-button uk-position-center-left uk-position-medium uk-transition-fade" href uk-slidenav-previous uk-lightbox-item="previous"></a> <a class="uk-lightbox-button uk-position-center-right uk-position-medium uk-transition-fade" href uk-slidenav-next uk-lightbox-item="next"></a> <div class="uk-lightbox-toolbar uk-lightbox-caption uk-position-bottom uk-text-center uk-transition-slide-bottom uk-transition-opaque"></div> </div>'}),created(){const e=s.$(this.template),t=s.$(this.selList,e);this.items.forEach(()=>s.append(t,"<li>")),this.$mount(s.append(this.container,e))},computed:{caption(e,t){let{selCaption:n}=e;return s.$(n,t)}},events:[{name:s.pointerMove+" "+s.pointerDown+" keydown",handler:"showControls"},{name:"click",self:!0,delegate(){return this.selSlides},handler(e){e.defaultPrevented||this.hide()}},{name:"shown",self:!0,handler(){this.showControls()}},{name:"hide",self:!0,handler(){this.hideControls(),s.removeClass(this.slides,this.clsActive),s.Transition.stop(this.slides)}},{name:"hidden",self:!0,handler(){this.$destroy(!0)}},{name:"keyup",el(){return document},handler(e){if(!(!this.isToggled(this.$el)||!this.draggable))switch(e.keyCode){case 37:this.show("previous");break;case 39:this.show("next");break}}},{name:"beforeitemshow",handler(e){this.isToggled()||(this.draggable=!1,e.preventDefault(),this.toggleElement(this.$el,!0,!1),this.animation=$.scale,s.removeClass(e.target,this.clsActive),this.stack.splice(1,0,this.index))}},{name:"itemshow",handler(){s.html(this.caption,this.getItem().caption||"");for(let e=-this.preload;e<=this.preload;e++)this.loadItem(this.index+e)}},{name:"itemshown",handler(){this.draggable=this.$props.draggable}},{name:"itemload",async handler(e,t){const{source:n,type:o,alt:d="",poster:i,attrs:h={}}=t;if(this.setItem(t,"<span uk-spinner></span>"),!n)return;let r;const a={frameborder:"0",allow:"autoplay",allowfullscreen:"",style:"max-width: 100%; box-sizing: border-box;","uk-responsive":"","uk-video":""+this.videoAutoplay};if(o==="image"||n.match(/\.(avif|jpe?g|jfif|a?png|gif|svg|webp)($|\?)/i))try{const{width:l,height:m}=await s.getImage(n,h.srcset,h.size);this.setItem(t,w("img",{src:n,width:l,height:m,alt:d,...h}))}catch{this.setError(t)}else if(o==="video"||n.match(/\.(mp4|webm|ogv)($|\?)/i)){const l=w("video",{src:n,poster:i,controls:"",playsinline:"","uk-video":""+this.videoAutoplay,...h});s.on(l,"loadedmetadata",()=>{s.attr(l,{width:l.videoWidth,height:l.videoHeight}),this.setItem(t,l)}),s.on(l,"error",()=>this.setError(t))}else if(o==="iframe"||n.match(/\.(html|php)($|\?)/i))this.setItem(t,w("iframe",{src:n,frameborder:"0",allowfullscreen:"",class:"uk-lightbox-iframe",...h}));else if(r=n.match(/\/\/(?:.*?youtube(-nocookie)?\..*?[?&]v=|youtu\.be\/)([\w-]{11})[&?]?(.*)?/))this.setItem(t,w("iframe",{src:"https://www.youtube"+(r[1]||"")+".com/embed/"+r[2]+(r[3]?"?"+r[3]:""),width:1920,height:1080,...a,...h}));else if(r=n.match(/\/\/.*?vimeo\.[a-z]+\/(\d+)[&?]?(.*)?/))try{const{height:l,width:m}=await(await fetch("https://vimeo.com/api/oembed.json?maxwidth=1920&url="+encodeURI(n),{credentials:"omit"})).json();this.setItem(t,w("iframe",{src:"https://player.vimeo.com/video/"+r[1]+(r[2]?"?"+r[2]:""),width:m,height:l,...a,...h}))}catch{this.setError(t)}}}],methods:{loadItem(e){e===void 0&&(e=this.index);const t=this.getItem(e);this.getSlide(t).childElementCount||s.trigger(this.$el,"itemload",[t])},getItem(e){return e===void 0&&(e=this.index),this.items[s.getIndex(e,this.slides)]},setItem(e,t){s.trigger(this.$el,"itemloaded",[this,s.html(this.getSlide(e),t)])},getSlide(e){return this.slides[this.items.indexOf(e)]},setError(e){this.setItem(e,'<span uk-icon="icon: bolt; ratio: 2"></span>')},showControls(){clearTimeout(this.controlsTimer),this.controlsTimer=setTimeout(this.hideControls,this.delayControls),s.addClass(this.$el,"uk-active","uk-transition-active")},hideControls(){s.removeClass(this.$el,"uk-active","uk-transition-active")}}};function w(e,t){const n=s.fragment("<"+e+">");return s.attr(n,t),n}return typeof window<"u"&&window.UIkit&&window.UIkit.component("lightboxPanel",P),P});
1
+ /*! UIkit 3.14.4-dev.a014fa609 | https://www.getuikit.com | (c) 2014 - 2022 YOOtheme | MIT License */(function(s,u){typeof exports=="object"&&typeof module<"u"?module.exports=u(require("uikit-util")):typeof define=="function"&&define.amd?define("uikitlightbox_panel",["uikit-util"],u):(s=typeof globalThis<"u"?globalThis:s||self,s.UIkitLightbox_panel=u(s.UIkit.util))})(this,function(s){"use strict";var u={slide:{show(e){return[{transform:$(e*-100)},{transform:$()}]},percent(e){return R(e)},translate(e,t){return[{transform:$(t*-100*e)},{transform:$(t*100*(1-e))}]}}};function R(e){return Math.abs(s.css(e,"transform").split(",")[4]/e.offsetWidth)||0}function $(e,t){return e===void 0&&(e=0),t===void 0&&(t="%"),e+=e?t:"","translate3d("+e+", 0, 0)"}function C(e){return"scale3d("+e+", "+e+", 1)"}var D={...u,fade:{show(){return[{opacity:0},{opacity:1}]},percent(e){return 1-s.css(e,"opacity")},translate(e){return[{opacity:1-e},{opacity:e}]}},scale:{show(){return[{opacity:0,transform:C(1-.2)},{opacity:1,transform:C(1)}]},percent(e){return 1-s.css(e,"opacity")},translate(e){return[{opacity:1-e,transform:C(1-.2*e)},{opacity:e,transform:C(1-.2+.2*e)}]}}},N={props:{container:Boolean},data:{container:!0},computed:{container(e){let{container:t}=e;return t===!0&&this.$container||t&&s.$(t)}}},H={connected(){!s.hasClass(this.$el,this.$name)&&s.addClass(this.$el,this.$name)}},B={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-togglabe-enter",clsLeave:"uk-togglabe-leave"},computed:{hasAnimation(e){let{animation:t}=e;return!!t[0]},hasTransition(e){let{animation:t}=e;return["slide","reveal"].some(n=>s.startsWith(t[0],n))}},methods:{toggleElement(e,t,n){return new Promise(r=>Promise.all(s.toNodes(e).map(o=>{const a=s.isBoolean(t)?t:!this.isToggled(o);if(!s.trigger(o,"before"+(a?"show":"hide"),[this]))return Promise.reject();const i=(s.isFunction(n)?n:n===!1||!this.hasAnimation?q(this):this.hasTransition?V(this):X(this))(o,a),d=a?this.clsEnter:this.clsLeave;s.addClass(o,d),s.trigger(o,a?"show":"hide",[this]);const l=()=>{s.removeClass(o,d),s.trigger(o,a?"shown":"hidden",[this]),this.$update(o)};return i?i.then(l,()=>(s.removeClass(o,d),Promise.reject())):l()})).then(r,s.noop))},isToggled(e){return e===void 0&&(e=this.$el),[e]=s.toNodes(e),s.hasClass(e,this.clsEnter)?!0:s.hasClass(e,this.clsLeave)?!1:this.cls?s.hasClass(e,this.cls.split(" ")[0]):s.isVisible(e)},_toggle(e,t){if(!e)return;t=Boolean(t);let n;this.cls?(n=s.includes(this.cls," ")||t!==s.hasClass(e,this.cls),n&&s.toggleClass(e,this.cls,s.includes(this.cls," ")?void 0:t)):(n=t===e.hidden,n&&(e.hidden=!t)),s.$$("[autofocus]",e).some(r=>s.isVisible(r)?r.focus()||!0:r.blur()),n&&(s.trigger(e,"toggled",[t,this]),this.$update(e))}}};function q(e){let{_toggle:t}=e;return(n,r)=>(s.Animation.cancel(n),s.Transition.cancel(n),t(n,r))}function V(e){var t;const[n="reveal",r="top"]=((t=e.animation[0])==null?void 0:t.split("-"))||[],o=[["left","right"],["top","bottom"]],a=o[s.includes(o[0],r)?0:1],i=a[1]===r,l=["width","height"][o.indexOf(a)],c="margin-"+a[0],g="margin-"+r;return async(h,m)=>{let{duration:v,velocity:w,transition:j,_toggle:M}=e,I=s.dimensions(h)[l];const de=s.Transition.inProgress(h);await s.Transition.cancel(h),m&&M(h,!0);const ce=Object.fromEntries(["padding","border","width","height","overflowY","overflowX",c,g].map(F=>[F,h.style[F]])),y=s.dimensions(h),E=s.toFloat(s.css(h,c)),W=s.toFloat(s.css(h,g)),p=y[l]+W;!de&&!m&&(I+=W);const[A]=s.wrapInner(h,"<div>");s.css(A,{boxSizing:"border-box",height:y.height,width:y.width,...s.css(h,["overflow","padding","borderTop","borderRight","borderBottom","borderLeft","borderImage",g])}),s.css(h,{padding:0,border:0,[g]:0,width:y.width,height:y.height,overflow:"hidden",[l]:I});const L=I/p;v=(w*p+v)*(m?1-L:L);const Y={[l]:m?p:0};i&&(s.css(h,c,p-I+E),Y[c]=m?E:p+E),!i^n==="reveal"&&(s.css(A,c,-p+I),s.Transition.start(A,{[c]:m?0:-p},v,j));try{await s.Transition.start(h,Y,v,j)}finally{s.css(h,ce),s.unwrap(A.firstChild),m||M(h,!1)}}}function X(e){return(t,n)=>{s.Animation.cancel(t);const{animation:r,duration:o,_toggle:a}=e;return n?(a(t,!0),s.Animation.in(t,r[0],o,e.origin)):s.Animation.out(t,r[1]||r[0],o,e.origin).then(()=>a(t,!1))}}const f=[];var G={mixins:[H,N,B],props:{selPanel:String,selClose:String,escClose:Boolean,bgClose:Boolean,stack:Boolean},data:{cls:"uk-open",escClose:!0,bgClose:!0,overlay:!0,stack:!1},computed:{panel(e,t){let{selPanel:n}=e;return s.$(n,t)},transitionElement(){return this.panel},bgClose(e){let{bgClose:t}=e;return t&&this.panel}},beforeDisconnect(){s.includes(f,this)&&this.toggleElement(this.$el,!1,!1)},events:[{name:"click",delegate(){return this.selClose},handler(e){e.preventDefault(),this.hide()}},{name:"toggle",self:!0,handler(e){e.defaultPrevented||(e.preventDefault(),this.isToggled()===s.includes(f,this)&&this.toggle())}},{name:"beforeshow",self:!0,handler(e){if(s.includes(f,this))return!1;!this.stack&&f.length?(Promise.all(f.map(t=>t.hide())).then(this.show),e.preventDefault()):f.push(this)}},{name:"show",self:!0,handler(){s.once(this.$el,"hide",s.on(document,"focusin",e=>{s.last(f)===this&&!s.within(e.target,this.$el)&&this.$el.focus()})),this.overlay&&(s.once(this.$el,"hidden",K(this.$el),{self:!0}),s.once(this.$el,"hidden",Q(),{self:!0})),this.stack&&s.css(this.$el,"zIndex",s.toFloat(s.css(this.$el,"zIndex"))+f.length),s.addClass(document.documentElement,this.clsPage),this.bgClose&&s.once(this.$el,"hide",s.on(document,s.pointerDown,e=>{let{target:t}=e;s.last(f)!==this||this.overlay&&!s.within(t,this.$el)||s.within(t,this.panel)||s.once(document,s.pointerUp+" "+s.pointerCancel+" scroll",n=>{let{defaultPrevented:r,type:o,target:a}=n;!r&&o===s.pointerUp&&t===a&&this.hide()},!0)}),{self:!0}),this.escClose&&s.once(this.$el,"hide",s.on(document,"keydown",e=>{e.keyCode===27&&s.last(f)===this&&this.hide()}),{self:!0})}},{name:"shown",self:!0,handler(){s.isFocusable(this.$el)||s.attr(this.$el,"tabindex","-1"),s.$(":focus",this.$el)||this.$el.focus()}},{name:"hidden",self:!0,handler(){s.includes(f,this)&&f.splice(f.indexOf(this),1),s.css(this.$el,"zIndex",""),f.some(e=>e.clsPage===this.clsPage)||s.removeClass(document.documentElement,this.clsPage)}}],methods:{toggle(){return this.isToggled()?this.hide():this.show()},show(){return this.container&&s.parent(this.$el)!==this.container?(s.append(this.container,this.$el),new Promise(e=>requestAnimationFrame(()=>this.show().then(e)))):this.toggleElement(this.$el,!0,O(this))},hide(){return this.toggleElement(this.$el,!1,O(this))}}};function O(e){let{transitionElement:t,_toggle:n}=e;return(r,o)=>new Promise((a,i)=>s.once(r,"show hide",()=>{r._reject==null||r._reject(),r._reject=i,n(r,o);const d=s.once(t,"transitionstart",()=>{s.once(t,"transitionend transitioncancel",a,{self:!0}),clearTimeout(l)},{self:!0}),l=setTimeout(()=>{d(),a()},J(s.css(t,"transitionDuration")))})).then(()=>delete r._reject)}function J(e){return e?s.endsWith(e,"ms")?s.toFloat(e):s.toFloat(e)*1e3:0}function K(e){if(CSS.supports("overscroll-behavior","contain")){const r=Z(e,o=>/auto|scroll/.test(s.css(o,"overflow")));return s.css(r,"overscrollBehavior","contain"),()=>s.css(r,"overscrollBehavior","")}let t;const n=[s.on(e,"touchstart",r=>{let{targetTouches:o}=r;o.length===1&&(t=o[0].clientY)},{passive:!0}),s.on(e,"touchmove",r=>{if(r.targetTouches.length!==1)return;let[o]=s.scrollParents(r.target,/auto|scroll/);s.within(o,e)||(o=e);const a=r.targetTouches[0].clientY-t,{scrollTop:i,scrollHeight:d,clientHeight:l}=o;(l>=d||i===0&&a>0||d-i<=l&&a<0)&&r.cancelable&&r.preventDefault()},{passive:!1})];return()=>n.forEach(r=>r())}let _;function Q(){if(_)return s.noop;_=!0;const{body:e,documentElement:t}=document;return s.css(e,{overflowY:s.width(window)>t.clientWidth?"scroll":"",touchAction:"none"}),s.css(t,"overflowY","hidden"),()=>{_=!1,s.css(t,"overflowY",""),s.css(e,{overflowY:"",touchAction:""})}}function Z(e,t){const n=[];return s.apply(e,r=>{t(r)&&n.push(r)}),n}function k(e,t,n,r){let{animation:o,easing:a}=r;const{percent:i,translate:d,show:l=s.noop}=o,c=l(n),g=new s.Deferred;return{dir:n,show(h,m,v){m===void 0&&(m=0);const w=v?"linear":a;return h-=Math.round(h*s.clamp(m,-1,1)),this.translate(m),T(t,"itemin",{percent:m,duration:h,timing:w,dir:n}),T(e,"itemout",{percent:1-m,duration:h,timing:w,dir:n}),Promise.all([s.Transition.start(t,c[1],h,w),s.Transition.start(e,c[0],h,w)]).then(()=>{this.reset(),g.resolve()},s.noop),g.promise},cancel(){s.Transition.cancel([t,e])},reset(){for(const h in c[0])s.css([t,e],h,"")},forward(h,m){return m===void 0&&(m=this.percent()),s.Transition.cancel([t,e]),this.show(h,m,!0)},translate(h){this.reset();const m=d(h,n);s.css(t,m[1]),s.css(e,m[0]),T(t,"itemtranslatein",{percent:h,dir:n}),T(e,"itemtranslateout",{percent:1-h,dir:n})},percent(){return i(e||t,t,n)},getDistance(){return e==null?void 0:e.offsetWidth}}}function T(e,t,n){s.trigger(e,s.createEvent(t,!1,!1,n))}var U={connected(){var e;this.registerObserver(s.observeResize(((e=this.$options.resizeTargets)==null?void 0:e.call(this))||this.$el,()=>this.$emit("resize")))}},ee={props:{autoplay:Boolean,autoplayInterval:Number,pauseOnHover:Boolean},data:{autoplay:!1,autoplayInterval:7e3,pauseOnHover:!0},connected(){this.autoplay&&this.startAutoplay()},disconnected(){this.stopAutoplay()},update(){s.attr(this.slides,"tabindex","-1")},events:[{name:"visibilitychange",el(){return document},filter(){return this.autoplay},handler(){document.hidden?this.stopAutoplay():this.startAutoplay()}}],methods:{startAutoplay(){this.stopAutoplay(),this.interval=setInterval(()=>(!this.draggable||!s.$(":focus",this.$el))&&(!this.pauseOnHover||!s.matches(this.$el,":hover"))&&!this.stack.length&&this.show("next"),this.autoplayInterval)},stopAutoplay(){this.interval&&clearInterval(this.interval)}}};const b={passive:!1,capture:!0},se="touchstart mousedown",P="touchmove mousemove",S="touchend touchcancel mouseup click input";var te={props:{draggable:Boolean},data:{draggable:!0,threshold:10},created(){for(const e of["start","move","end"]){const t=this[e];this[e]=n=>{const r=s.getEventPos(n).x*(s.isRtl?-1:1);this.prevPos=r===this.pos?this.prevPos:this.pos,this.pos=r,t(n)}}},events:[{name:se,delegate(){return this.selSlides},handler(e){!this.draggable||!s.isTouch(e)&&ne(e.target)||s.closest(e.target,s.selInput)||e.button>0||this.length<2||this.start(e)}},{name:"dragstart",handler(e){e.preventDefault()}},{name:P+" "+S,el(){return this.list},handler:s.noop,...b}],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,s.on(document,P,this.move,b),s.on(document,S,this.end,b),s.css(this.list,"userSelect","none")},move(e){const t=this.pos-this.drag;if(t===0||this.prevPos===this.pos||!this.dragging&&Math.abs(t)<this.threshold)return;s.css(this.list,"pointerEvents","none"),e.cancelable&&e.preventDefault(),this.dragging=!0,this.dir=t<0?1:-1;const{slides:n}=this;let{prevIndex:r}=this,o=Math.abs(t),a=this.getIndex(r+this.dir,r),i=this._getDistance(r,a)||n[r].offsetWidth;for(;a!==r&&o>i;)this.drag-=i*this.dir,r=a,o-=i,a=this.getIndex(r+this.dir,r),i=this._getDistance(r,a)||n[r].offsetWidth;this.percent=o/i;const d=n[r],l=n[a],c=this.index!==a,g=r===a;let h;[this.index,this.prevIndex].filter(m=>!s.includes([a,r],m)).forEach(m=>{s.trigger(n[m],"itemhidden",[this]),g&&(h=!0,this.prevIndex=r)}),(this.index===r&&this.prevIndex!==r||h)&&s.trigger(n[this.index],"itemshown",[this]),c&&(this.prevIndex=r,this.index=a,!g&&s.trigger(d,"beforeitemhide",[this]),s.trigger(l,"beforeitemshow",[this])),this._transitioner=this._translate(Math.abs(this.percent),d,!g&&l),c&&(!g&&s.trigger(d,"itemhide",[this]),s.trigger(l,"itemshow",[this]))},end(){if(s.off(document,P,this.move,b),s.off(document,S,this.end,b),this.dragging)if(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=(s.isRtl?this.dir*(s.isRtl?1:-1):this.dir)<0==this.prevPos>this.pos;this.index=e?this.index:this.prevIndex,e&&(this.percent=1-this.percent),this.show(this.dir>0&&!e||this.dir<0&&e?"next":"previous",!0)}s.css(this.list,{userSelect:"",pointerEvents:""}),this.drag=this.percent=null}}};function ne(e){return!e.children.length&&e.childNodes.length}var re={data:{selNav:!1},computed:{nav(e,t){let{selNav:n}=e;return s.$(n,t)},selNavItem(e){let{attrItem:t}=e;return"["+t+"],[data-"+t+"]"},navItems(e,t){return s.$$(this.selNavItem,t)}},update:{write(){this.nav&&this.length!==this.nav.children.length&&s.html(this.nav,this.slides.map((e,t)=>"<li "+this.attrItem+'="'+t+'"><a href></a></li>').join("")),this.navItems.concat(this.nav).forEach(e=>e&&(e.hidden=!this.maxIndex)),this.updateNav()},events:["resize"]},events:[{name:"click",delegate(){return this.selNavItem},handler(e){e.preventDefault(),this.show(s.data(e.current,this.attrItem))}},{name:"itemshow",handler:"updateNav"}],methods:{updateNav(){const e=this.getValidIndex();for(const t of this.navItems){const n=s.data(t,this.attrItem);s.toggleClass(t,this.clsActive,s.toNumber(n)===e),s.toggleClass(t,"uk-invisible",this.finite&&(n==="previous"&&e===0||n==="next"&&e>=this.maxIndex))}}}},oe={mixins:[ee,te,re,U],props:{clsActivated:Boolean,easing:String,index:Number,finite:Boolean,velocity:Number,selSlides:String},data:()=>({easing:"ease",finite:!1,velocity:1,index:0,prevIndex:-1,stack:[],percent:0,clsActive:"uk-active",clsActivated:!1,Transitioner:!1,transitionOptions:{}}),connected(){this.prevIndex=-1,this.index=this.getValidIndex(this.$props.index),this.stack=[]},disconnected(){s.removeClass(this.slides,this.clsActive)},computed:{duration(e,t){let{velocity:n}=e;return ie(t.offsetWidth/n)},list(e,t){let{selList:n}=e;return s.$(n,t)},maxIndex(){return this.length-1},selSlides(e){let{selList:t,selSlides:n}=e;return t+" "+(n||"> *")},slides:{get(){return s.$$(this.selSlides,this.$el)},watch(){this.$reset()}},length(){return this.slides.length}},methods:{show(e,t){if(t===void 0&&(t=!1),this.dragging||!this.length)return;const{stack:n}=this,r=t?0:n.length,o=()=>{n.splice(r,1),n.length&&this.show(n.shift(),!0)};if(n[t?"unshift":"push"](e),!t&&n.length>1){n.length===2&&this._transitioner.forward(Math.min(this.duration,200));return}const a=this.getIndex(this.index),i=s.hasClass(this.slides,this.clsActive)&&this.slides[a],d=this.getIndex(e,this.index),l=this.slides[d];if(i===l){o();return}if(this.dir=ae(e,a),this.prevIndex=a,this.index=d,i&&!s.trigger(i,"beforeitemhide",[this])||!s.trigger(l,"beforeitemshow",[this,i])){this.index=this.prevIndex,o();return}const c=this._show(i,l,t).then(()=>(i&&s.trigger(i,"itemhidden",[this]),s.trigger(l,"itemshown",[this]),new Promise(g=>{s.fastdom.write(()=>{n.shift(),n.length?this.show(n.shift(),!0):this._transitioner=null,g()})})));return i&&s.trigger(i,"itemhide",[this]),s.trigger(l,"itemshow",[this]),c},getIndex(e,t){return e===void 0&&(e=this.index),t===void 0&&(t=this.index),s.clamp(s.getIndex(e,this.slides,t,this.finite),0,this.maxIndex)},getValidIndex(e,t){return e===void 0&&(e=this.index),t===void 0&&(t=this.prevIndex),this.getIndex(e,t)},_show(e,t,n){if(this._transitioner=this._getTransitioner(e,t,this.dir,{easing:n?t.offsetWidth<600?"cubic-bezier(0.25, 0.46, 0.45, 0.94)":"cubic-bezier(0.165, 0.84, 0.44, 1)":this.easing,...this.transitionOptions}),!n&&!e)return this._translate(1),Promise.resolve();const{length:r}=this.stack;return this._transitioner[r>1?"forward":"show"](r>1?Math.min(this.duration,75+75/(r-1)):this.duration,this.percent)},_getDistance(e,t){return this._getTransitioner(e,e!==t&&t).getDistance()},_translate(e,t,n){t===void 0&&(t=this.prevIndex),n===void 0&&(n=this.index);const r=this._getTransitioner(t!==n?t:!1,n);return r.translate(e),r},_getTransitioner(e,t,n,r){return e===void 0&&(e=this.prevIndex),t===void 0&&(t=this.index),n===void 0&&(n=this.dir||1),r===void 0&&(r=this.transitionOptions),new this.Transitioner(s.isNumber(e)?this.slides[e]:e,s.isNumber(t)?this.slides[t]:t,n*(s.isRtl?-1:1),r)}}};function ae(e,t){return e==="next"?1:e==="previous"||e<t?-1:1}function ie(e){return .5*e+300}var he={mixins:[oe],props:{animation:String},data:{animation:"slide",clsActivated:"uk-transition-active",Animations:u,Transitioner:k},computed:{animation(e){let{animation:t,Animations:n}=e;return{...n[t]||n.slide,name:t}},transitionOptions(){return{animation:this.animation}}},events:{beforeitemshow(e){let{target:t}=e;s.addClass(t,this.clsActive)},itemshown(e){let{target:t}=e;s.addClass(t,this.clsActivated)},itemhidden(e){let{target:t}=e;s.removeClass(t,this.clsActive,this.clsActivated)}}},z={mixins:[N,G,B,he],functional:!0,props:{delayControls:Number,preload:Number,videoAutoplay:Boolean,template:String},data:()=>({preload:1,videoAutoplay:!1,delayControls:3e3,items:[],cls:"uk-open",clsPage:"uk-lightbox-page",selList:".uk-lightbox-items",attrItem:"uk-lightbox-item",selClose:".uk-close-large",selCaption:".uk-lightbox-caption",pauseOnHover:!1,velocity:2,Animations:D,template:'<div class="uk-lightbox uk-overflow-hidden"> <ul class="uk-lightbox-items"></ul> <div class="uk-lightbox-toolbar uk-position-top uk-text-right uk-transition-slide-top uk-transition-opaque"> <button class="uk-lightbox-toolbar-icon uk-close-large" type="button" uk-close></button> </div> <a class="uk-lightbox-button uk-position-center-left uk-position-medium uk-transition-fade" href uk-slidenav-previous uk-lightbox-item="previous"></a> <a class="uk-lightbox-button uk-position-center-right uk-position-medium uk-transition-fade" href uk-slidenav-next uk-lightbox-item="next"></a> <div class="uk-lightbox-toolbar uk-lightbox-caption uk-position-bottom uk-text-center uk-transition-slide-bottom uk-transition-opaque"></div> </div>'}),created(){const e=s.$(this.template),t=s.$(this.selList,e);this.items.forEach(()=>s.append(t,"<li>")),this.$mount(s.append(this.container,e))},computed:{caption(e,t){let{selCaption:n}=e;return s.$(n,t)}},events:[{name:s.pointerMove+" "+s.pointerDown+" keydown",handler:"showControls"},{name:"click",self:!0,delegate(){return this.selSlides},handler(e){e.defaultPrevented||this.hide()}},{name:"shown",self:!0,handler(){this.showControls()}},{name:"hide",self:!0,handler(){this.hideControls(),s.removeClass(this.slides,this.clsActive),s.Transition.stop(this.slides)}},{name:"hidden",self:!0,handler(){this.$destroy(!0)}},{name:"keyup",el(){return document},handler(e){if(!(!this.isToggled(this.$el)||!this.draggable))switch(e.keyCode){case 37:this.show("previous");break;case 39:this.show("next");break}}},{name:"beforeitemshow",handler(e){this.isToggled()||(this.draggable=!1,e.preventDefault(),this.toggleElement(this.$el,!0,!1),this.animation=D.scale,s.removeClass(e.target,this.clsActive),this.stack.splice(1,0,this.index))}},{name:"itemshow",handler(){s.html(this.caption,this.getItem().caption||"");for(let e=-this.preload;e<=this.preload;e++)this.loadItem(this.index+e)}},{name:"itemshown",handler(){this.draggable=this.$props.draggable}},{name:"itemload",async handler(e,t){const{source:n,type:r,alt:o="",poster:a,attrs:i={}}=t;if(this.setItem(t,"<span uk-spinner></span>"),!n)return;let d;const l={frameborder:"0",allow:"autoplay",allowfullscreen:"",style:"max-width: 100%; box-sizing: border-box;","uk-responsive":"","uk-video":""+this.videoAutoplay};if(r==="image"||n.match(/\.(avif|jpe?g|jfif|a?png|gif|svg|webp)($|\?)/i))try{const{width:c,height:g}=await s.getImage(n,i.srcset,i.size);this.setItem(t,x("img",{src:n,width:c,height:g,alt:o,...i}))}catch{this.setError(t)}else if(r==="video"||n.match(/\.(mp4|webm|ogv)($|\?)/i)){const c=x("video",{src:n,poster:a,controls:"",playsinline:"","uk-video":""+this.videoAutoplay,...i});s.on(c,"loadedmetadata",()=>{s.attr(c,{width:c.videoWidth,height:c.videoHeight}),this.setItem(t,c)}),s.on(c,"error",()=>this.setError(t))}else if(r==="iframe"||n.match(/\.(html|php)($|\?)/i))this.setItem(t,x("iframe",{src:n,frameborder:"0",allowfullscreen:"",class:"uk-lightbox-iframe",...i}));else if(d=n.match(/\/\/(?:.*?youtube(-nocookie)?\..*?[?&]v=|youtu\.be\/)([\w-]{11})[&?]?(.*)?/))this.setItem(t,x("iframe",{src:"https://www.youtube"+(d[1]||"")+".com/embed/"+d[2]+(d[3]?"?"+d[3]:""),width:1920,height:1080,...l,...i}));else if(d=n.match(/\/\/.*?vimeo\.[a-z]+\/(\d+)[&?]?(.*)?/))try{const{height:c,width:g}=await(await fetch("https://vimeo.com/api/oembed.json?maxwidth=1920&url="+encodeURI(n),{credentials:"omit"})).json();this.setItem(t,x("iframe",{src:"https://player.vimeo.com/video/"+d[1]+(d[2]?"?"+d[2]:""),width:g,height:c,...l,...i}))}catch{this.setError(t)}}}],methods:{loadItem(e){e===void 0&&(e=this.index);const t=this.getItem(e);this.getSlide(t).childElementCount||s.trigger(this.$el,"itemload",[t])},getItem(e){return e===void 0&&(e=this.index),this.items[s.getIndex(e,this.slides)]},setItem(e,t){s.trigger(this.$el,"itemloaded",[this,s.html(this.getSlide(e),t)])},getSlide(e){return this.slides[this.items.indexOf(e)]},setError(e){this.setItem(e,'<span uk-icon="icon: bolt; ratio: 2"></span>')},showControls(){clearTimeout(this.controlsTimer),this.controlsTimer=setTimeout(this.hideControls,this.delayControls),s.addClass(this.$el,"uk-active","uk-transition-active")},hideControls(){s.removeClass(this.$el,"uk-active","uk-transition-active")}}};function x(e,t){const n=s.fragment("<"+e+">");return s.attr(n,t),n}return typeof window<"u"&&window.UIkit&&window.UIkit.component("lightboxPanel",z),z});