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.
- package/CHANGELOG.md +47 -12
- package/build/util.js +1 -0
- package/dist/css/uikit-core-rtl.css +385 -110
- package/dist/css/uikit-core-rtl.min.css +1 -1
- package/dist/css/uikit-core.css +385 -110
- package/dist/css/uikit-core.min.css +1 -1
- package/dist/css/uikit-rtl.css +402 -115
- package/dist/css/uikit-rtl.min.css +1 -1
- package/dist/css/uikit.css +402 -115
- package/dist/css/uikit.min.css +1 -1
- package/dist/js/components/countdown.js +1 -1
- package/dist/js/components/countdown.min.js +1 -1
- package/dist/js/components/filter.js +7 -5
- package/dist/js/components/filter.min.js +1 -1
- package/dist/js/components/lightbox-panel.js +196 -140
- package/dist/js/components/lightbox-panel.min.js +1 -1
- package/dist/js/components/lightbox.js +196 -140
- package/dist/js/components/lightbox.min.js +1 -1
- package/dist/js/components/notification.js +1 -1
- package/dist/js/components/notification.min.js +1 -1
- package/dist/js/components/parallax.js +4 -5
- package/dist/js/components/parallax.min.js +1 -1
- package/dist/js/components/slider-parallax.js +4 -5
- package/dist/js/components/slider-parallax.min.js +1 -1
- package/dist/js/components/slider.js +22 -7
- package/dist/js/components/slider.min.js +1 -1
- package/dist/js/components/slideshow-parallax.js +4 -5
- package/dist/js/components/slideshow-parallax.min.js +1 -1
- package/dist/js/components/slideshow.js +22 -7
- package/dist/js/components/slideshow.min.js +1 -1
- package/dist/js/components/sortable.js +3 -3
- package/dist/js/components/sortable.min.js +1 -1
- package/dist/js/components/tooltip.js +107 -137
- package/dist/js/components/tooltip.min.js +1 -1
- package/dist/js/components/upload.js +1 -1
- package/dist/js/components/upload.min.js +1 -1
- package/dist/js/uikit-core.js +1819 -1714
- package/dist/js/uikit-core.min.js +14 -1
- package/dist/js/uikit-icons.js +1 -1
- package/dist/js/uikit-icons.min.js +1 -1
- package/dist/js/uikit.js +1081 -959
- package/dist/js/uikit.min.js +14 -1
- package/package.json +1 -1
- package/src/images/{backgrounds/nav-parent-open.svg → components/nav-parent-icon-large.svg} +0 -0
- package/src/images/components/nav-parent-icon.svg +3 -0
- package/src/images/components/navbar-parent-icon.svg +3 -0
- package/src/images/components/navbar-toggle-icon.svg +22 -3
- package/src/js/api/state.js +2 -2
- package/src/js/components/filter.js +5 -3
- package/src/js/components/sortable.js +2 -3
- package/src/js/core/accordion.js +9 -17
- package/src/js/core/alert.js +35 -14
- package/src/js/core/drop.js +115 -80
- package/src/js/core/height-viewport.js +14 -6
- package/src/js/core/icon.js +16 -0
- package/src/js/core/index.js +2 -0
- package/src/js/core/leader.js +2 -2
- package/src/js/core/navbar.js +44 -30
- package/src/js/core/offcanvas.js +1 -47
- package/src/js/core/scroll.js +37 -10
- package/src/js/core/sticky.js +8 -9
- package/src/js/core/toggle.js +3 -5
- package/src/js/mixin/media.js +4 -5
- package/src/js/mixin/modal.js +97 -8
- package/src/js/mixin/position.js +26 -11
- package/src/js/mixin/slider-drag.js +20 -8
- package/src/js/mixin/style.js +11 -0
- package/src/js/mixin/togglable.js +88 -133
- package/src/js/util/animation.js +4 -3
- package/src/js/util/class.js +3 -1
- package/src/js/util/dimensions.js +6 -6
- package/src/js/util/filter.js +3 -7
- package/src/js/util/position.js +108 -107
- package/src/js/util/style.js +4 -13
- package/src/js/util/viewport.js +5 -32
- package/src/less/components/_import.less +1 -0
- package/src/less/components/drop.less +1 -18
- package/src/less/components/dropbar.less +115 -0
- package/src/less/components/dropdown.less +16 -16
- package/src/less/components/leader.less +1 -1
- package/src/less/components/nav.less +240 -63
- package/src/less/components/navbar.less +81 -38
- package/src/less/components/utility.less +21 -4
- package/src/less/theme/_import.less +1 -0
- package/src/less/theme/dropbar.less +44 -0
- package/src/less/theme/dropdown.less +0 -11
- package/src/less/theme/nav.less +43 -9
- package/src/less/theme/navbar.less +7 -11
- package/src/scss/components/_import.scss +1 -0
- package/src/scss/components/drop.scss +1 -18
- package/src/scss/components/dropbar.scss +115 -0
- package/src/scss/components/dropdown.scss +16 -16
- package/src/scss/components/leader.scss +1 -1
- package/src/scss/components/nav.scss +189 -51
- package/src/scss/components/navbar.scss +69 -38
- package/src/scss/components/utility.scss +19 -3
- package/src/scss/mixins-theme.scss +93 -25
- package/src/scss/mixins.scss +89 -17
- package/src/scss/theme/_import.scss +1 -0
- package/src/scss/theme/dropbar.scss +44 -0
- package/src/scss/theme/dropdown.scss +0 -8
- package/src/scss/theme/nav.scss +41 -9
- package/src/scss/theme/navbar.scss +7 -8
- package/src/scss/variables-theme.scss +71 -18
- package/src/scss/variables.scss +60 -14
- package/tests/accordion.html +2 -2
- package/tests/alert.html +2 -2
- package/tests/countdown.html +1 -1
- package/tests/drop.html +461 -375
- package/tests/dropbar.html +458 -0
- package/tests/dropdown.html +26 -401
- package/tests/filter.html +9 -12
- package/tests/form.html +1 -1
- package/tests/index.html +126 -107
- package/tests/js/index.js +1 -4
- package/tests/lightbox.html +5 -5
- package/tests/list.html +8 -8
- package/tests/modal.html +13 -13
- package/tests/nav.html +117 -75
- package/tests/navbar.html +2002 -1131
- package/tests/offcanvas.html +17 -21
- package/tests/parallax.html +1 -1
- package/tests/position.html +18 -16
- package/tests/progress.html +9 -9
- package/tests/scroll.html +7 -10
- package/tests/search.html +6 -6
- package/tests/slider.html +6 -5
- package/tests/slideshow.html +8 -8
- package/tests/sortable.html +6 -8
- package/tests/sticky-navbar.html +9 -9
- package/tests/sticky.html +8 -8
- package/tests/switcher.html +1 -1
- package/tests/tab.html +1 -1
- package/tests/table.html +7 -7
- package/tests/toggle.html +2 -2
- package/tests/tooltip.html +1 -1
- package/tests/upload.html +11 -11
- package/tests/utility.html +19 -0
- package/src/images/backgrounds/nav-parent-close.svg +0 -3
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! UIkit 3.14.4-dev.
|
|
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.
|
|
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.
|
|
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
|
-
|
|
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.
|
|
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.
|
|
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],
|
|
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
|
-
|
|
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
|
-
|
|
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 (
|
|
237
|
+
if (show) {
|
|
268
238
|
_toggle(el, true);
|
|
269
239
|
}
|
|
270
240
|
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
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.
|
|
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
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
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
|
|
307
|
-
|
|
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 (
|
|
310
|
-
|
|
294
|
+
if (end) {
|
|
295
|
+
uikitUtil.css(el, marginProp, endDim - currentDim + currentMargin);
|
|
296
|
+
endProps[marginProp] = show ? currentMargin : endDim + currentMargin;
|
|
311
297
|
}
|
|
312
298
|
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
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
|
-
|
|
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
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
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
|
-
|
|
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 (
|
|
480
|
-
uikitUtil.
|
|
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(
|
|
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:
|
|
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,
|
|
901
|
+
uikitUtil.on(document, pointerMove, this.move, pointerOptions);
|
|
846
902
|
|
|
847
903
|
// 'input' event is triggered by video controls
|
|
848
|
-
uikitUtil.on(document,
|
|
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,
|
|
929
|
-
uikitUtil.off(document,
|
|
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});
|