├── .github └── ISSUE_TEMPLATE │ ├── bug_report.yml │ └── feature_request.yml ├── CHANGELOG.md ├── LICENSE.md ├── README.md ├── dist ├── carousel │ ├── carousel.autoplay.css │ ├── carousel.autoplay.esm.d.ts │ ├── carousel.autoplay.esm.js │ ├── carousel.autoplay.umd.js │ ├── carousel.css │ ├── carousel.esm.js │ ├── carousel.thumbs.css │ ├── carousel.thumbs.esm.d.ts │ ├── carousel.thumbs.esm.js │ ├── carousel.thumbs.umd.js │ ├── carousel.umd.js │ └── l10n │ │ ├── cs.esm.js │ │ ├── cs.umd.js │ │ ├── de.esm.js │ │ ├── de.umd.js │ │ ├── en.esm.js │ │ ├── en.umd.js │ │ ├── es.esm.js │ │ ├── es.umd.js │ │ ├── fr.esm.js │ │ ├── fr.umd.js │ │ ├── it.esm.js │ │ ├── it.umd.js │ │ ├── ja.esm.js │ │ ├── ja.umd.js │ │ ├── lv.esm.js │ │ ├── lv.umd.js │ │ ├── pl.esm.js │ │ ├── pl.umd.js │ │ ├── sk.esm.js │ │ ├── sk.umd.js │ │ ├── zh_CN.esm.js │ │ └── zh_CN.umd.js ├── fancybox │ ├── fancybox.css │ ├── fancybox.esm.js │ ├── fancybox.umd.js │ └── l10n │ │ ├── cs.esm.js │ │ ├── cs.umd.js │ │ ├── de.esm.js │ │ ├── de.umd.js │ │ ├── en.esm.js │ │ ├── en.umd.js │ │ ├── es.esm.js │ │ ├── es.umd.js │ │ ├── fr.esm.js │ │ ├── fr.umd.js │ │ ├── it.esm.js │ │ ├── it.umd.js │ │ ├── ja.esm.js │ │ ├── ja.umd.js │ │ ├── lv.esm.js │ │ ├── lv.umd.js │ │ ├── pl.esm.js │ │ ├── pl.umd.js │ │ ├── sk.esm.js │ │ ├── sk.umd.js │ │ ├── zh_CN.esm.js │ │ └── zh_CN.umd.js ├── index.esm.js ├── index.umd.js └── panzoom │ ├── l10n │ ├── cs.esm.js │ ├── cs.umd.js │ ├── de.esm.js │ ├── de.umd.js │ ├── en.esm.js │ ├── en.umd.js │ ├── es.esm.js │ ├── es.umd.js │ ├── fr.esm.js │ ├── fr.umd.js │ ├── it.esm.js │ ├── it.umd.js │ ├── ja.esm.js │ ├── ja.umd.js │ ├── lv.esm.js │ ├── lv.umd.js │ ├── pl.esm.js │ ├── pl.umd.js │ ├── sk.esm.js │ ├── sk.umd.js │ ├── zh_CN.esm.js │ └── zh_CN.umd.js │ ├── panzoom.css │ ├── panzoom.esm.js │ ├── panzoom.pins.css │ ├── panzoom.pins.esm.d.ts │ ├── panzoom.pins.esm.js │ ├── panzoom.pins.umd.js │ ├── panzoom.toolbar.css │ ├── panzoom.toolbar.esm.d.ts │ ├── panzoom.toolbar.esm.js │ ├── panzoom.toolbar.umd.js │ └── panzoom.umd.js ├── l10n ├── Carousel │ ├── cs.ts │ ├── de.ts │ ├── en.ts │ ├── es.ts │ ├── fr.ts │ ├── it.ts │ ├── ja.ts │ ├── lv.ts │ ├── pl.ts │ ├── sk.ts │ └── zh_CN.ts ├── Fancybox │ ├── cs.ts │ ├── de.ts │ ├── en.ts │ ├── es.ts │ ├── fr.ts │ ├── it.ts │ ├── ja.ts │ ├── lv.ts │ ├── pl.ts │ ├── sk.ts │ └── zh_CN.ts └── Panzoom │ ├── cs.ts │ ├── de.ts │ ├── en.ts │ ├── es.ts │ ├── fr.ts │ ├── it.ts │ ├── ja.ts │ ├── lv.ts │ ├── pl.ts │ ├── sk.ts │ └── zh_CN.ts ├── package.json └── types ├── Carousel ├── Carousel.d.ts ├── consts.d.ts ├── options.d.ts ├── plugins │ ├── Autoplay │ │ └── Autoplay.d.ts │ ├── Dots │ │ └── Dots.d.ts │ ├── Navigation │ │ └── Navigation.d.ts │ ├── Sync │ │ └── Sync.d.ts │ ├── Thumbs │ │ └── Thumbs.d.ts │ └── index.d.ts └── types.d.ts ├── Fancybox ├── Fancybox.d.ts ├── consts.d.ts ├── options.d.ts ├── plugins │ ├── Hash │ │ └── Hash.d.ts │ ├── Html │ │ └── Html.d.ts │ ├── Images │ │ └── Images.d.ts │ ├── Slideshow │ │ └── Slideshow.d.ts │ ├── Thumbs │ │ └── Thumbs.d.ts │ ├── Toolbar │ │ └── Toolbar.d.ts │ └── index.d.ts └── types.d.ts ├── Panzoom ├── Panzoom.d.ts ├── consts.d.ts ├── options.d.ts ├── plugins │ ├── Pins │ │ └── Pins.d.ts │ ├── Toolbar │ │ └── Toolbar.d.ts │ └── index.d.ts └── types.d.ts ├── index.d.ts └── shared ├── Base ├── Base.d.ts ├── Component.d.ts ├── Plugin.d.ts └── types.d.ts ├── buttons.d.ts ├── spinner.d.ts └── utils ├── PointerTracker.d.ts ├── addClass.d.ts ├── canUseDOM.d.ts ├── getDimensions.d.ts ├── getDirectChildren.d.ts ├── getFsAPI.d.ts ├── getScrollableParent.d.ts ├── isInViewport.d.ts ├── isNode.d.ts ├── isPlainObject.d.ts ├── merge.d.ts ├── removeClass.d.ts ├── resolve.d.ts ├── round.d.ts ├── setFocusOn.d.ts ├── splitClasses.d.ts ├── stringToHtml.d.ts ├── throttle.d.ts └── toggleClass.d.ts /.github/ISSUE_TEMPLATE/bug_report.yml: -------------------------------------------------------------------------------- 1 | name: "\U0001F41E Bug report" 2 | description: Create a report to help us improve 3 | labels: ["needs triage"] 4 | body: 5 | - type: markdown 6 | attributes: 7 | value: | 8 | ":warning: **Please provide a link to a live sample/demo to get a quick and accurate response!**" 9 | - type: textarea 10 | id: bug-description 11 | attributes: 12 | label: Describe the bug 13 | description: A clear and concise description of what the bug is. 14 | placeholder: Bug description 15 | validations: 16 | required: true 17 | - type: textarea 18 | id: reproduction 19 | attributes: 20 | label: Reproduction 21 | description: Steps to reproduce the behavior. 22 | placeholder: Reproduction 23 | validations: 24 | required: true 25 | - type: textarea 26 | id: additional-context 27 | attributes: 28 | label: Additional context 29 | description: Add any other context or screenshots about the bug report here. 30 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.yml: -------------------------------------------------------------------------------- 1 | name: "\U0001F680 New feature proposal" 2 | description: Suggest an idea for this project 3 | body: 4 | - type: markdown 5 | attributes: 6 | value: | 7 | Thanks for your interest in the project and taking the time to fill out this feature report! 8 | - type: textarea 9 | id: feature-description 10 | attributes: 11 | label: Is your feature request related to a problem? Please describe. 12 | description: "A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]" 13 | validations: 14 | required: true 15 | - type: textarea 16 | id: suggested-solution 17 | attributes: 18 | label: Describe the solution you'd like 19 | description: A clear and concise description of what you want to happen. 20 | validations: 21 | required: true 22 | - type: textarea 23 | id: alternative 24 | attributes: 25 | label: Describe alternatives you've considered 26 | description: A clear and concise description of any alternative solutions or features you've considered. 27 | - type: textarea 28 | id: additional-context 29 | attributes: 30 | label: Additional context 31 | description: Add any other context or screenshots about the feature request here. 32 | -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | Copyright (c)2008-present Jānis Skarnelis. 2 | 3 | Portions of this software are licensed as follows: 4 | 5 | - All content residing under the "docs/" directory of this repository is licensed under "Creative Commons: CC BY-SA 4.0 license". 6 | - Content outside of the above mentioned directory is licensed under the Fancyapps UI license. To use this software, you need to agree to the "License Agreement" for Fancyapps UI. 7 | 8 | All available Fancyapps licenses may be obtained at http://www.fancyapps.com/pricing. -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Fancyapps UI 2 | 3 | Collection of task-oriented components that will make you more productive. 4 | Packed full of features that you and your clients will love. 5 | 6 | Full docs with examples: https://fancyapps.com/ 7 | 8 | ## License 9 | 10 | This is commercial software. See [LICENSE.md](LICENSE.md) for more info. -------------------------------------------------------------------------------- /dist/carousel/carousel.autoplay.css: -------------------------------------------------------------------------------- 1 | .f-progress{position:absolute;top:0;left:0;right:0;height:3px;transform:scaleX(0);transform-origin:0;transition-property:transform;transition-timing-function:linear;background:var(--f-progress-color, var(--f-carousel-theme-color, #0091ff));z-index:30;user-select:none;pointer-events:none} -------------------------------------------------------------------------------- /dist/carousel/carousel.autoplay.esm.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../types/Carousel/plugins/Autoplay/Autoplay"; -------------------------------------------------------------------------------- /dist/carousel/carousel.autoplay.esm.js: -------------------------------------------------------------------------------- 1 | const e=(t,...s)=>{const n=s.length;for(let i=0;i{const i=Array.isArray(n)?[]:{};var o;t[s]||Object.assign(t,{[s]:i}),"object"==typeof(o=n)&&null!==o&&o.constructor===Object&&"[object Object]"===Object.prototype.toString.call(o)?Object.assign(t[s],e(i,n)):Array.isArray(n)?Object.assign(t,{[s]:[...n]}):Object.assign(t,{[s]:n})}))}return t},t=function(e,t){return e.split(".").reduce(((e,t)=>"object"==typeof e?e[t]:void 0),t)};class s{constructor(e={}){Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"events",{enumerable:!0,configurable:!0,writable:!0,value:new Map}),this.setOptions(e);for(const e of Object.getOwnPropertyNames(Object.getPrototypeOf(this)))e.startsWith("on")&&"function"==typeof this[e]&&(this[e]=this[e].bind(this))}setOptions(t){this.options=t?e({},this.constructor.defaults,t):{};for(const[e,t]of Object.entries(this.option("on")||{}))this.on(e,t)}option(e,...s){let n=t(e,this.options);return n&&"function"==typeof n&&(n=n.call(this,this,...s)),n}optionFor(e,s,n,...i){let o=t(s,e);var r;"string"!=typeof(r=o)||isNaN(r)||isNaN(parseFloat(r))||(o=parseFloat(o)),"true"===o&&(o=!0),"false"===o&&(o=!1),o&&"function"==typeof o&&(o=o.call(this,this,e,...i));let a=t(s,this.options);return a&&"function"==typeof a?o=a.call(this,this,e,...i,o):void 0===o&&(o=a),void 0===o?n:o}cn(e){const t=this.options.classes;return t&&t[e]||""}localize(e,t=[]){e=String(e).replace(/\{\{(\w+).?(\w+)?\}\}/g,((e,t,s)=>{let n="";return s?n=this.option(`${t[0]+t.toLowerCase().substring(1)}.l10n.${s}`):t&&(n=this.option(`l10n.${t}`)),n||(n=e),n}));for(let s=0;st))}on(e,t){let s=[];"string"==typeof e?s=e.split(" "):Array.isArray(e)&&(s=e),this.events||(this.events=new Map),s.forEach((e=>{let s=this.events.get(e);s||(this.events.set(e,[]),s=[]),s.includes(t)||s.push(t),this.events.set(e,s)}))}off(e,t){let s=[];"string"==typeof e?s=e.split(" "):Array.isArray(e)&&(s=e),s.forEach((e=>{const s=this.events.get(e);if(Array.isArray(s)){const e=s.indexOf(t);e>-1&&s.splice(e,1)}}))}emit(e,...t){[...this.events.get(e)||[]].forEach((e=>e(this,...t))),"*"!==e&&this.emit("*",e,...t)}}Object.defineProperty(s,"version",{enumerable:!0,configurable:!0,writable:!0,value:"5.0.36"}),Object.defineProperty(s,"defaults",{enumerable:!0,configurable:!0,writable:!0,value:{}});class n extends s{constructor(e,t){super(t),Object.defineProperty(this,"instance",{enumerable:!0,configurable:!0,writable:!0,value:e})}attach(){}detach(){}}const i=e=>`${e||""}`.split(" ").filter((e=>!!e)),o=(e,t)=>{e&&i(t).forEach((t=>{e.classList.add(t)}))},r="play",a="pause",l="ready";class c extends n{constructor(){super(...arguments),Object.defineProperty(this,"state",{enumerable:!0,configurable:!0,writable:!0,value:l}),Object.defineProperty(this,"inHover",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"timer",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,"progressBar",{enumerable:!0,configurable:!0,writable:!0,value:null})}get isActive(){return this.state!==l}onReady(e){this.option("autoStart")&&(e.isInfinite||e.page{e.timer=null,e.inHover||e.onTimerEnd()}),s),e.emit("set")}clear(){const e=this;e.timer&&(clearTimeout(e.timer),e.timer=null),e.removeProgressBar()}start(){const e=this;if(e.set(),e.state!==l){if(e.option("pauseOnHover")){const t=e.instance.container;t.addEventListener("mouseenter",e.onMouseEnter,!1),t.addEventListener("mouseleave",e.onMouseLeave,!1)}document.addEventListener("visibilitychange",e.onVisibilityChange,!1),e.emit("start")}}stop(){const e=this,t=e.state,s=e.instance.container;var n,o;e.clear(),e.state=l,s.removeEventListener("mouseenter",e.onMouseEnter,!1),s.removeEventListener("mouseleave",e.onMouseLeave,!1),document.removeEventListener("visibilitychange",e.onVisibilityChange,!1),o="has-autoplay",(n=s)&&i(o).forEach((e=>{n.classList.remove(e)})),t!==l&&e.emit("stop")}pause(){const e=this;e.state===r&&(e.state=a,e.clear(),e.emit(a))}resume(){const e=this,t=e.instance;if(t.isInfinite||t.page!==t.pages.length-1)if(e.state!==r){if(e.state===a&&!e.inHover){const t=new Event("resume",{bubbles:!0,cancelable:!0});e.emit("resume",t),t.defaultPrevented||e.set()}}else e.set();else e.stop()}toggle(){this.state===r||this.state===a?this.stop():this.start()}attach(){const e=this,t=e.instance;t.on("ready",e.onReady),t.on("Panzoom.startAnimation",e.onChange),t.on("Panzoom.endAnimation",e.onSettle),t.on("Panzoom.touchMove",e.onChange)}detach(){const e=this,t=e.instance;t.off("ready",e.onReady),t.off("Panzoom.startAnimation",e.onChange),t.off("Panzoom.endAnimation",e.onSettle),t.off("Panzoom.touchMove",e.onChange),e.stop()}}Object.defineProperty(c,"defaults",{enumerable:!0,configurable:!0,writable:!0,value:{autoStart:!0,pauseOnHover:!0,progressParentEl:null,showProgress:!0,timeout:3e3}});export{c as Autoplay}; 2 | -------------------------------------------------------------------------------- /dist/carousel/carousel.autoplay.umd.js: -------------------------------------------------------------------------------- 1 | !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).window=e.window||{})}(this,(function(e){"use strict";const t=(e,...s)=>{const n=s.length;for(let i=0;i{const i=Array.isArray(n)?[]:{};var o;e[s]||Object.assign(e,{[s]:i}),"object"==typeof(o=n)&&null!==o&&o.constructor===Object&&"[object Object]"===Object.prototype.toString.call(o)?Object.assign(e[s],t(i,n)):Array.isArray(n)?Object.assign(e,{[s]:[...n]}):Object.assign(e,{[s]:n})}))}return e},s=function(e,t){return e.split(".").reduce(((e,t)=>"object"==typeof e?e[t]:void 0),t)};class n{constructor(e={}){Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"events",{enumerable:!0,configurable:!0,writable:!0,value:new Map}),this.setOptions(e);for(const e of Object.getOwnPropertyNames(Object.getPrototypeOf(this)))e.startsWith("on")&&"function"==typeof this[e]&&(this[e]=this[e].bind(this))}setOptions(e){this.options=e?t({},this.constructor.defaults,e):{};for(const[e,t]of Object.entries(this.option("on")||{}))this.on(e,t)}option(e,...t){let n=s(e,this.options);return n&&"function"==typeof n&&(n=n.call(this,this,...t)),n}optionFor(e,t,n,...i){let o=s(t,e);var r;"string"!=typeof(r=o)||isNaN(r)||isNaN(parseFloat(r))||(o=parseFloat(o)),"true"===o&&(o=!0),"false"===o&&(o=!1),o&&"function"==typeof o&&(o=o.call(this,this,e,...i));let a=s(t,this.options);return a&&"function"==typeof a?o=a.call(this,this,e,...i,o):void 0===o&&(o=a),void 0===o?n:o}cn(e){const t=this.options.classes;return t&&t[e]||""}localize(e,t=[]){e=String(e).replace(/\{\{(\w+).?(\w+)?\}\}/g,((e,t,s)=>{let n="";return s?n=this.option(`${t[0]+t.toLowerCase().substring(1)}.l10n.${s}`):t&&(n=this.option(`l10n.${t}`)),n||(n=e),n}));for(let s=0;st))}on(e,t){let s=[];"string"==typeof e?s=e.split(" "):Array.isArray(e)&&(s=e),this.events||(this.events=new Map),s.forEach((e=>{let s=this.events.get(e);s||(this.events.set(e,[]),s=[]),s.includes(t)||s.push(t),this.events.set(e,s)}))}off(e,t){let s=[];"string"==typeof e?s=e.split(" "):Array.isArray(e)&&(s=e),s.forEach((e=>{const s=this.events.get(e);if(Array.isArray(s)){const e=s.indexOf(t);e>-1&&s.splice(e,1)}}))}emit(e,...t){[...this.events.get(e)||[]].forEach((e=>e(this,...t))),"*"!==e&&this.emit("*",e,...t)}}Object.defineProperty(n,"version",{enumerable:!0,configurable:!0,writable:!0,value:"5.0.36"}),Object.defineProperty(n,"defaults",{enumerable:!0,configurable:!0,writable:!0,value:{}});class i extends n{constructor(e,t){super(t),Object.defineProperty(this,"instance",{enumerable:!0,configurable:!0,writable:!0,value:e})}attach(){}detach(){}}const o=e=>`${e||""}`.split(" ").filter((e=>!!e)),r=(e,t)=>{e&&o(t).forEach((t=>{e.classList.add(t)}))},a="play",l="pause",c="ready";class u extends i{constructor(){super(...arguments),Object.defineProperty(this,"state",{enumerable:!0,configurable:!0,writable:!0,value:c}),Object.defineProperty(this,"inHover",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"timer",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,"progressBar",{enumerable:!0,configurable:!0,writable:!0,value:null})}get isActive(){return this.state!==c}onReady(e){this.option("autoStart")&&(e.isInfinite||e.page{e.timer=null,e.inHover||e.onTimerEnd()}),s),e.emit("set")}clear(){const e=this;e.timer&&(clearTimeout(e.timer),e.timer=null),e.removeProgressBar()}start(){const e=this;if(e.set(),e.state!==c){if(e.option("pauseOnHover")){const t=e.instance.container;t.addEventListener("mouseenter",e.onMouseEnter,!1),t.addEventListener("mouseleave",e.onMouseLeave,!1)}document.addEventListener("visibilitychange",e.onVisibilityChange,!1),e.emit("start")}}stop(){const e=this,t=e.state,s=e.instance.container;var n,i;e.clear(),e.state=c,s.removeEventListener("mouseenter",e.onMouseEnter,!1),s.removeEventListener("mouseleave",e.onMouseLeave,!1),document.removeEventListener("visibilitychange",e.onVisibilityChange,!1),i="has-autoplay",(n=s)&&o(i).forEach((e=>{n.classList.remove(e)})),t!==c&&e.emit("stop")}pause(){const e=this;e.state===a&&(e.state=l,e.clear(),e.emit(l))}resume(){const e=this,t=e.instance;if(t.isInfinite||t.page!==t.pages.length-1)if(e.state!==a){if(e.state===l&&!e.inHover){const t=new Event("resume",{bubbles:!0,cancelable:!0});e.emit("resume",t),t.defaultPrevented||e.set()}}else e.set();else e.stop()}toggle(){this.state===a||this.state===l?this.stop():this.start()}attach(){const e=this,t=e.instance;t.on("ready",e.onReady),t.on("Panzoom.startAnimation",e.onChange),t.on("Panzoom.endAnimation",e.onSettle),t.on("Panzoom.touchMove",e.onChange)}detach(){const e=this,t=e.instance;t.off("ready",e.onReady),t.off("Panzoom.startAnimation",e.onChange),t.off("Panzoom.endAnimation",e.onSettle),t.off("Panzoom.touchMove",e.onChange),e.stop()}}Object.defineProperty(u,"defaults",{enumerable:!0,configurable:!0,writable:!0,value:{autoStart:!0,pauseOnHover:!0,progressParentEl:null,showProgress:!0,timeout:3e3}}),e.Autoplay=u})); 2 | -------------------------------------------------------------------------------- /dist/carousel/carousel.thumbs.css: -------------------------------------------------------------------------------- 1 | .f-carousel__thumbs{--f-thumb-width: 96px;--f-thumb-height: 72px;--f-thumb-outline: 0;--f-thumb-outline-color: #5eb0ef;--f-thumb-opacity: 1;--f-thumb-hover-opacity: 1;--f-thumb-selected-opacity: 1;--f-thumb-border-radius: 2px;--f-thumb-offset: 0px;--f-button-next-pos: 0;--f-button-prev-pos: 0}.f-carousel__thumbs.is-classic{--f-thumb-gap: 8px;--f-thumb-opacity: 0.5;--f-thumb-hover-opacity: 1;--f-thumb-selected-opacity: 1}.f-carousel__thumbs.is-modern{--f-thumb-gap: 4px;--f-thumb-extra-gap: 16px;--f-thumb-clip-width: 46px}.f-thumbs{position:relative;flex:0 0 auto;margin:0;overflow:hidden;-webkit-tap-highlight-color:rgba(0,0,0,0);user-select:none;perspective:1000px;transform:translateZ(0)}.f-thumbs .f-spinner{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:2px;background-image:linear-gradient(#ebeff2, #e2e8f0);z-index:-1}.f-thumbs .f-spinner svg{display:none}.f-thumbs.is-vertical{height:100%}.f-thumbs__viewport{width:100%;height:auto;overflow:hidden;transform:translate3d(0, 0, 0)}.f-thumbs__track{display:flex}.f-thumbs__slide{position:relative;flex:0 0 auto;box-sizing:content-box;display:flex;align-items:center;justify-content:center;padding:0;margin:0;width:var(--f-thumb-width);height:var(--f-thumb-height);overflow:visible;cursor:pointer}.f-thumbs__slide.is-loading img{opacity:0}.is-classic .f-thumbs__viewport{height:100%}.is-modern .f-thumbs__track{width:max-content}.is-modern .f-thumbs__track::before{content:"";position:absolute;top:0;bottom:0;left:calc((var(--f-thumb-clip-width, 0))*-0.5);width:calc(var(--width, 0)*1px + var(--f-thumb-clip-width, 0));cursor:pointer}.is-modern .f-thumbs__slide{width:var(--f-thumb-clip-width);transform:translate3d(calc(var(--shift, 0) * -1px), 0, 0);transition:none;pointer-events:none}.is-modern.is-resting .f-thumbs__slide{transition:transform .33s ease}.is-modern.is-resting .f-thumbs__slide__button{transition:clip-path .33s ease}.is-using-tab .is-modern .f-thumbs__slide:focus-within{filter:drop-shadow(-1px 0px 0px var(--f-thumb-outline-color)) drop-shadow(2px 0px 0px var(--f-thumb-outline-color)) drop-shadow(0px -1px 0px var(--f-thumb-outline-color)) drop-shadow(0px 2px 0px var(--f-thumb-outline-color))}.f-thumbs__slide__button{appearance:none;width:var(--f-thumb-width);height:100%;margin:0 -100% 0 -100%;padding:0;border:0;position:relative;border-radius:var(--f-thumb-border-radius);overflow:hidden;background:rgba(0,0,0,0);outline:none;cursor:pointer;pointer-events:auto;touch-action:manipulation;opacity:var(--f-thumb-opacity);transition:opacity .2s ease}.f-thumbs__slide__button:hover{opacity:var(--f-thumb-hover-opacity)}.f-thumbs__slide__button:focus:not(:focus-visible){outline:none}.f-thumbs__slide__button:focus-visible{outline:none;opacity:var(--f-thumb-selected-opacity)}.is-modern .f-thumbs__slide__button{--clip-path: inset( 0 calc( ((var(--f-thumb-width, 0) - var(--f-thumb-clip-width, 0))) * (1 - var(--progress, 0)) * 0.5 ) round var(--f-thumb-border-radius, 0) );clip-path:var(--clip-path)}.is-classic .is-nav-selected .f-thumbs__slide__button{opacity:var(--f-thumb-selected-opacity)}.is-classic .is-nav-selected .f-thumbs__slide__button::after{content:"";position:absolute;top:0;left:0;right:0;height:auto;bottom:0;border:var(--f-thumb-outline, 0) solid var(--f-thumb-outline-color, transparent);border-radius:var(--f-thumb-border-radius);animation:f-fadeIn .2s ease-out;z-index:10}.f-thumbs__slide__img{overflow:hidden;position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;padding:var(--f-thumb-offset);box-sizing:border-box;pointer-events:none;object-fit:cover;border-radius:var(--f-thumb-border-radius)}.f-thumbs.is-horizontal .f-thumbs__track{padding:8px 0 12px 0}.f-thumbs.is-horizontal .f-thumbs__slide{margin:0 var(--f-thumb-gap) 0 0}.f-thumbs.is-vertical .f-thumbs__track{flex-wrap:wrap;padding:0 8px}.f-thumbs.is-vertical .f-thumbs__slide{margin:0 0 var(--f-thumb-gap) 0} -------------------------------------------------------------------------------- /dist/carousel/carousel.thumbs.esm.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../types/Carousel/plugins/Thumbs/Thumbs"; -------------------------------------------------------------------------------- /dist/carousel/carousel.thumbs.esm.js: -------------------------------------------------------------------------------- 1 | const t=(e,...i)=>{const s=i.length;for(let n=0;n{const n=Array.isArray(s)?[]:{};var r;e[i]||Object.assign(e,{[i]:n}),"object"==typeof(r=s)&&null!==r&&r.constructor===Object&&"[object Object]"===Object.prototype.toString.call(r)?Object.assign(e[i],t(n,s)):Array.isArray(s)?Object.assign(e,{[i]:[...s]}):Object.assign(e,{[i]:s})}))}return e},e=t=>`${t||""}`.split(" ").filter((t=>!!t)),i=(t,i)=>{t&&e(i).forEach((e=>{t.classList.add(e)}))},s=(t,i)=>{t&&e(i).forEach((e=>{t.classList.remove(e)}))},n=function(t,e){return t.split(".").reduce(((t,e)=>"object"==typeof t?t[e]:void 0),e)};class r{constructor(t={}){Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"events",{enumerable:!0,configurable:!0,writable:!0,value:new Map}),this.setOptions(t);for(const t of Object.getOwnPropertyNames(Object.getPrototypeOf(this)))t.startsWith("on")&&"function"==typeof this[t]&&(this[t]=this[t].bind(this))}setOptions(e){this.options=e?t({},this.constructor.defaults,e):{};for(const[t,e]of Object.entries(this.option("on")||{}))this.on(t,e)}option(t,...e){let i=n(t,this.options);return i&&"function"==typeof i&&(i=i.call(this,this,...e)),i}optionFor(t,e,i,...s){let r=n(e,t);var o;"string"!=typeof(o=r)||isNaN(o)||isNaN(parseFloat(o))||(r=parseFloat(r)),"true"===r&&(r=!0),"false"===r&&(r=!1),r&&"function"==typeof r&&(r=r.call(this,this,t,...s));let a=n(e,this.options);return a&&"function"==typeof a?r=a.call(this,this,t,...s,r):void 0===r&&(r=a),void 0===r?i:r}cn(t){const e=this.options.classes;return e&&e[t]||""}localize(t,e=[]){t=String(t).replace(/\{\{(\w+).?(\w+)?\}\}/g,((t,e,i)=>{let s="";return i?s=this.option(`${e[0]+e.toLowerCase().substring(1)}.l10n.${i}`):e&&(s=this.option(`l10n.${e}`)),s||(s=t),s}));for(let i=0;ie))}on(t,e){let i=[];"string"==typeof t?i=t.split(" "):Array.isArray(t)&&(i=t),this.events||(this.events=new Map),i.forEach((t=>{let i=this.events.get(t);i||(this.events.set(t,[]),i=[]),i.includes(e)||i.push(e),this.events.set(t,i)}))}off(t,e){let i=[];"string"==typeof t?i=t.split(" "):Array.isArray(t)&&(i=t),i.forEach((t=>{const i=this.events.get(t);if(Array.isArray(i)){const t=i.indexOf(e);t>-1&&i.splice(t,1)}}))}emit(t,...e){[...this.events.get(t)||[]].forEach((t=>t(this,...e))),"*"!==t&&this.emit("*",t,...e)}}Object.defineProperty(r,"version",{enumerable:!0,configurable:!0,writable:!0,value:"5.0.36"}),Object.defineProperty(r,"defaults",{enumerable:!0,configurable:!0,writable:!0,value:{}});class o extends r{constructor(t,e){super(e),Object.defineProperty(this,"instance",{enumerable:!0,configurable:!0,writable:!0,value:t})}attach(){}detach(){}}var a,l;!function(t){t[t.Init=0]="Init",t[t.Error=1]="Error",t[t.Ready=2]="Ready",t[t.Panning=3]="Panning",t[t.Mousemove=4]="Mousemove",t[t.Destroy=5]="Destroy"}(a||(a={})),function(t){t[t.Init=0]="Init",t[t.Ready=1]="Ready",t[t.Destroy=2]="Destroy"}(l||(l={}));const c=(t,e=1e4)=>(t=parseFloat(t+"")||0,Math.round((t+Number.EPSILON)*e)/e),h={classes:{container:"f-thumbs f-carousel__thumbs",viewport:"f-thumbs__viewport",track:"f-thumbs__track",slide:"f-thumbs__slide",isResting:"is-resting",isSelected:"is-selected",isLoading:"is-loading",hasThumbs:"has-thumbs"},minCount:2,parentEl:null,thumbTpl:'',type:"modern"};var u;!function(t){t[t.Init=0]="Init",t[t.Ready=1]="Ready",t[t.Hidden=2]="Hidden"}(u||(u={}));const d="isResting",f="thumbWidth",b="thumbHeight",p="thumbClipWidth";class g extends o{constructor(){super(...arguments),Object.defineProperty(this,"type",{enumerable:!0,configurable:!0,writable:!0,value:"modern"}),Object.defineProperty(this,"container",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,"track",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,"carousel",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,"thumbWidth",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"thumbClipWidth",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"thumbHeight",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"thumbGap",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"thumbExtraGap",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"state",{enumerable:!0,configurable:!0,writable:!0,value:u.Init})}get isModern(){return"modern"===this.type}onInitSlide(t,e){const i=e.el?e.el.dataset:void 0;i&&(e.thumbSrc=i.thumbSrc||e.thumbSrc||"",e[p]=parseFloat(i[p]||"")||e[p]||0,e[b]=parseFloat(i.thumbHeight||"")||e[b]||0),this.addSlide(e)}onInitSlides(){this.build()}onChange(){var t;if(!this.isModern)return;const i=this.container,n=this.instance,r=n.panzoom,o=this.carousel,a=o?o.panzoom:null,l=n.page;if(r&&o&&a){if(r.isDragging){s(i,this.cn(d));let e=(null===(t=o.pages[l])||void 0===t?void 0:t.pos)||0;e+=n.getProgress(l)*(this[p]+this.thumbGap);let r=a.getBounds();-1*e>r.x.min&&-1*e{c.classList.toggle(t,u||!1)}));var c,h,u;this.shiftModern()}}onRefresh(){this.updateProps();for(const t of this.instance.slides||[])this.resizeModernSlide(t);this.shiftModern()}isDisabled(){const t=this.option("minCount")||0;if(t){const e=this.instance;let i=0;for(const t of e.slides||[])t.thumbSrc&&i++;if(iparseFloat(getComputedStyle(t).getPropertyValue("--f-thumb-"+e))||0;this.thumbGap=e("gap"),this.thumbExtraGap=e("extra-gap"),this[f]=e("width")||40,this[p]=e("clip-width")||40,this[b]=e("height")||40}build(){const e=this;if(e.state!==u.Init)return;if(e.isDisabled())return void e.emit("disabled");const s=e.instance,n=s.container,r=e.getSlides(),o=e.option("type");e.type=o;const a=e.option("parentEl"),l=e.cn("container"),c=e.cn("track");let h=null==a?void 0:a.querySelector("."+l);h||(h=document.createElement("div"),i(h,l),a?a.appendChild(h):n.after(h)),i(h,`is-${o}`),i(n,e.cn("hasThumbs")),e.container=h,e.updateProps();let d=h.querySelector("."+c);d||(d=document.createElement("div"),i(d,e.cn("track")),h.appendChild(d)),e.track=d;const f=t({},{track:d,infinite:!1,center:!0,fill:"classic"===o,dragFree:!0,slidesPerPage:1,transition:!1,preload:.25,friction:.12,Panzoom:{maxVelocity:0},Dots:!1,Navigation:!1,classes:{container:"f-thumbs",viewport:"f-thumbs__viewport",track:"f-thumbs__track",slide:"f-thumbs__slide"}},e.option("Carousel")||{},{Sync:{target:s},slides:r}),b=new s.constructor(h,f);b.on("createSlide",((t,i)=>{e.setProps(i.index),e.emit("createSlide",i,i.el)})),b.on("ready",(()=>{e.shiftModern(),e.emit("ready")})),b.on("refresh",(()=>{e.shiftModern()})),b.on("Panzoom.click",((t,i,s)=>{e.onClick(s)})),e.carousel=b,e.state=u.Ready}onClick(t){t.preventDefault(),t.stopPropagation();const e=this.instance,{pages:i,page:s}=e,n=t=>{if(t){const e=t.closest("[data-carousel-index]");if(e)return[parseInt(e.dataset.carouselIndex||"",10)||0,e]}return[-1,void 0]},r=(t,e)=>{const i=document.elementFromPoint(t,e);return i?n(i):[-1,void 0]};let[o,a]=n(t.target);if(o>-1)return;const l=this[p],c=t.clientX,h=t.clientY;let[u,d]=r(c-l,h),[f,b]=r(c+l,h);d&&b?(o=Math.abs(c-d.getBoundingClientRect().right)-1&&i[o]&&e.slideTo(o)}getShift(t){var e;const i=this,{instance:s}=i,n=i.carousel;if(!s||!n)return 0;const r=i[f],o=i[p],a=i.thumbGap,l=i.thumbExtraGap;if(!(null===(e=n.slides[t])||void 0===e?void 0:e.el))return 0;const c=.5*(r-o),h=s.pages.length-1;let u=s.getProgress(0),d=s.getProgress(h),b=s.getProgress(t,!1,!0),g=0,m=c+l+a;const y=u<0&&u>-1,v=d>0&&d<1;return 0===t?(g=m*Math.abs(u),v&&1===u&&(g-=m*Math.abs(d))):t===h?(g=m*Math.abs(d)*-1,y&&-1===d&&(g+=m*Math.abs(u))):y||v?(g=-1*m,g+=m*Math.abs(u),g+=m*(1-Math.abs(d))):g=m*b,g}setProps(t){var e;const i=this;if(!i.isModern)return;const{instance:s}=i,n=i.carousel;if(s&&n){const r=null===(e=n.slides[t])||void 0===e?void 0:e.el;if(r&&r.childNodes.length){let e=c(1-Math.abs(s.getProgress(t))),n=c(i.getShift(t));r.style.setProperty("--progress",e?e+"":""),r.style.setProperty("--shift",n+"")}}}shiftModern(){const t=this;if(!t.isModern)return;const{instance:e,track:i}=t,s=e.panzoom,n=t.carousel;if(!(e&&i&&s&&n))return;if(s.state===a.Init||s.state===a.Destroy)return;for(const i of e.slides)t.setProps(i.index);let r=(t[p]+t.thumbGap)*(n.slides.length||0);i.style.setProperty("--width",r+"")}cleanup(){const t=this;t.carousel&&t.carousel.destroy(),t.carousel=null,t.container&&t.container.remove(),t.container=null,t.track&&t.track.remove(),t.track=null,t.state=u.Init,s(t.instance.container,t.cn("hasThumbs"))}attach(){const t=this,e=t.instance;e.on("initSlide",t.onInitSlide),e.state===l.Init?e.on("initSlides",t.onInitSlides):t.onInitSlides(),e.on(["change","Panzoom.afterTransform"],t.onChange),e.on("Panzoom.refresh",t.onRefresh)}detach(){const t=this,e=t.instance;e.off("initSlide",t.onInitSlide),e.off("initSlides",t.onInitSlides),e.off(["change","Panzoom.afterTransform"],t.onChange),e.off("Panzoom.refresh",t.onRefresh),t.cleanup()}}Object.defineProperty(g,"defaults",{enumerable:!0,configurable:!0,writable:!0,value:h});export{u as States,g as Thumbs,h as defaultOptions}; 2 | -------------------------------------------------------------------------------- /dist/carousel/carousel.thumbs.umd.js: -------------------------------------------------------------------------------- 1 | !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).window=t.window||{})}(this,(function(t){"use strict";const e=(t,...i)=>{const s=i.length;for(let n=0;n{const n=Array.isArray(s)?[]:{};var r;t[i]||Object.assign(t,{[i]:n}),"object"==typeof(r=s)&&null!==r&&r.constructor===Object&&"[object Object]"===Object.prototype.toString.call(r)?Object.assign(t[i],e(n,s)):Array.isArray(s)?Object.assign(t,{[i]:[...s]}):Object.assign(t,{[i]:s})}))}return t},i=t=>`${t||""}`.split(" ").filter((t=>!!t)),s=(t,e)=>{t&&i(e).forEach((e=>{t.classList.add(e)}))},n=(t,e)=>{t&&i(e).forEach((e=>{t.classList.remove(e)}))},r=function(t,e){return t.split(".").reduce(((t,e)=>"object"==typeof t?t[e]:void 0),e)};class o{constructor(t={}){Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"events",{enumerable:!0,configurable:!0,writable:!0,value:new Map}),this.setOptions(t);for(const t of Object.getOwnPropertyNames(Object.getPrototypeOf(this)))t.startsWith("on")&&"function"==typeof this[t]&&(this[t]=this[t].bind(this))}setOptions(t){this.options=t?e({},this.constructor.defaults,t):{};for(const[t,e]of Object.entries(this.option("on")||{}))this.on(t,e)}option(t,...e){let i=r(t,this.options);return i&&"function"==typeof i&&(i=i.call(this,this,...e)),i}optionFor(t,e,i,...s){let n=r(e,t);var o;"string"!=typeof(o=n)||isNaN(o)||isNaN(parseFloat(o))||(n=parseFloat(n)),"true"===n&&(n=!0),"false"===n&&(n=!1),n&&"function"==typeof n&&(n=n.call(this,this,t,...s));let a=r(e,this.options);return a&&"function"==typeof a?n=a.call(this,this,t,...s,n):void 0===n&&(n=a),void 0===n?i:n}cn(t){const e=this.options.classes;return e&&e[t]||""}localize(t,e=[]){t=String(t).replace(/\{\{(\w+).?(\w+)?\}\}/g,((t,e,i)=>{let s="";return i?s=this.option(`${e[0]+e.toLowerCase().substring(1)}.l10n.${i}`):e&&(s=this.option(`l10n.${e}`)),s||(s=t),s}));for(let i=0;ie))}on(t,e){let i=[];"string"==typeof t?i=t.split(" "):Array.isArray(t)&&(i=t),this.events||(this.events=new Map),i.forEach((t=>{let i=this.events.get(t);i||(this.events.set(t,[]),i=[]),i.includes(e)||i.push(e),this.events.set(t,i)}))}off(t,e){let i=[];"string"==typeof t?i=t.split(" "):Array.isArray(t)&&(i=t),i.forEach((t=>{const i=this.events.get(t);if(Array.isArray(i)){const t=i.indexOf(e);t>-1&&i.splice(t,1)}}))}emit(t,...e){[...this.events.get(t)||[]].forEach((t=>t(this,...e))),"*"!==t&&this.emit("*",t,...e)}}Object.defineProperty(o,"version",{enumerable:!0,configurable:!0,writable:!0,value:"5.0.36"}),Object.defineProperty(o,"defaults",{enumerable:!0,configurable:!0,writable:!0,value:{}});class a extends o{constructor(t,e){super(e),Object.defineProperty(this,"instance",{enumerable:!0,configurable:!0,writable:!0,value:t})}attach(){}detach(){}}var l,c;!function(t){t[t.Init=0]="Init",t[t.Error=1]="Error",t[t.Ready=2]="Ready",t[t.Panning=3]="Panning",t[t.Mousemove=4]="Mousemove",t[t.Destroy=5]="Destroy"}(l||(l={})),function(t){t[t.Init=0]="Init",t[t.Ready=1]="Ready",t[t.Destroy=2]="Destroy"}(c||(c={}));const u=(t,e=1e4)=>(t=parseFloat(t+"")||0,Math.round((t+Number.EPSILON)*e)/e),h={classes:{container:"f-thumbs f-carousel__thumbs",viewport:"f-thumbs__viewport",track:"f-thumbs__track",slide:"f-thumbs__slide",isResting:"is-resting",isSelected:"is-selected",isLoading:"is-loading",hasThumbs:"has-thumbs"},minCount:2,parentEl:null,thumbTpl:'',type:"modern"};t.States=void 0,function(t){t[t.Init=0]="Init",t[t.Ready=1]="Ready",t[t.Hidden=2]="Hidden"}(t.States||(t.States={}));const d="isResting",f="thumbWidth",b="thumbHeight",p="thumbClipWidth";class g extends a{constructor(){super(...arguments),Object.defineProperty(this,"type",{enumerable:!0,configurable:!0,writable:!0,value:"modern"}),Object.defineProperty(this,"container",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,"track",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,"carousel",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,"thumbWidth",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"thumbClipWidth",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"thumbHeight",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"thumbGap",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"thumbExtraGap",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"state",{enumerable:!0,configurable:!0,writable:!0,value:t.States.Init})}get isModern(){return"modern"===this.type}onInitSlide(t,e){const i=e.el?e.el.dataset:void 0;i&&(e.thumbSrc=i.thumbSrc||e.thumbSrc||"",e[p]=parseFloat(i[p]||"")||e[p]||0,e[b]=parseFloat(i.thumbHeight||"")||e[b]||0),this.addSlide(e)}onInitSlides(){this.build()}onChange(){var t;if(!this.isModern)return;const e=this.container,s=this.instance,r=s.panzoom,o=this.carousel,a=o?o.panzoom:null,l=s.page;if(r&&o&&a){if(r.isDragging){n(e,this.cn(d));let i=(null===(t=o.pages[l])||void 0===t?void 0:t.pos)||0;i+=s.getProgress(l)*(this[p]+this.thumbGap);let r=a.getBounds();-1*i>r.x.min&&-1*i{c.classList.toggle(t,h||!1)}));var c,u,h;this.shiftModern()}}onRefresh(){this.updateProps();for(const t of this.instance.slides||[])this.resizeModernSlide(t);this.shiftModern()}isDisabled(){const t=this.option("minCount")||0;if(t){const e=this.instance;let i=0;for(const t of e.slides||[])t.thumbSrc&&i++;if(iparseFloat(getComputedStyle(t).getPropertyValue("--f-thumb-"+e))||0;this.thumbGap=e("gap"),this.thumbExtraGap=e("extra-gap"),this[f]=e("width")||40,this[p]=e("clip-width")||40,this[b]=e("height")||40}build(){const i=this;if(i.state!==t.States.Init)return;if(i.isDisabled())return void i.emit("disabled");const n=i.instance,r=n.container,o=i.getSlides(),a=i.option("type");i.type=a;const l=i.option("parentEl"),c=i.cn("container"),u=i.cn("track");let h=null==l?void 0:l.querySelector("."+c);h||(h=document.createElement("div"),s(h,c),l?l.appendChild(h):r.after(h)),s(h,`is-${a}`),s(r,i.cn("hasThumbs")),i.container=h,i.updateProps();let d=h.querySelector("."+u);d||(d=document.createElement("div"),s(d,i.cn("track")),h.appendChild(d)),i.track=d;const f=e({},{track:d,infinite:!1,center:!0,fill:"classic"===a,dragFree:!0,slidesPerPage:1,transition:!1,preload:.25,friction:.12,Panzoom:{maxVelocity:0},Dots:!1,Navigation:!1,classes:{container:"f-thumbs",viewport:"f-thumbs__viewport",track:"f-thumbs__track",slide:"f-thumbs__slide"}},i.option("Carousel")||{},{Sync:{target:n},slides:o}),b=new n.constructor(h,f);b.on("createSlide",((t,e)=>{i.setProps(e.index),i.emit("createSlide",e,e.el)})),b.on("ready",(()=>{i.shiftModern(),i.emit("ready")})),b.on("refresh",(()=>{i.shiftModern()})),b.on("Panzoom.click",((t,e,s)=>{i.onClick(s)})),i.carousel=b,i.state=t.States.Ready}onClick(t){t.preventDefault(),t.stopPropagation();const e=this.instance,{pages:i,page:s}=e,n=t=>{if(t){const e=t.closest("[data-carousel-index]");if(e)return[parseInt(e.dataset.carouselIndex||"",10)||0,e]}return[-1,void 0]},r=(t,e)=>{const i=document.elementFromPoint(t,e);return i?n(i):[-1,void 0]};let[o,a]=n(t.target);if(o>-1)return;const l=this[p],c=t.clientX,u=t.clientY;let[h,d]=r(c-l,u),[f,b]=r(c+l,u);d&&b?(o=Math.abs(c-d.getBoundingClientRect().right)-1&&i[o]&&e.slideTo(o)}getShift(t){var e;const i=this,{instance:s}=i,n=i.carousel;if(!s||!n)return 0;const r=i[f],o=i[p],a=i.thumbGap,l=i.thumbExtraGap;if(!(null===(e=n.slides[t])||void 0===e?void 0:e.el))return 0;const c=.5*(r-o),u=s.pages.length-1;let h=s.getProgress(0),d=s.getProgress(u),b=s.getProgress(t,!1,!0),g=0,m=c+l+a;const y=h<0&&h>-1,v=d>0&&d<1;return 0===t?(g=m*Math.abs(h),v&&1===h&&(g-=m*Math.abs(d))):t===u?(g=m*Math.abs(d)*-1,y&&-1===d&&(g+=m*Math.abs(h))):y||v?(g=-1*m,g+=m*Math.abs(h),g+=m*(1-Math.abs(d))):g=m*b,g}setProps(t){var e;const i=this;if(!i.isModern)return;const{instance:s}=i,n=i.carousel;if(s&&n){const r=null===(e=n.slides[t])||void 0===e?void 0:e.el;if(r&&r.childNodes.length){let e=u(1-Math.abs(s.getProgress(t))),n=u(i.getShift(t));r.style.setProperty("--progress",e?e+"":""),r.style.setProperty("--shift",n+"")}}}shiftModern(){const t=this;if(!t.isModern)return;const{instance:e,track:i}=t,s=e.panzoom,n=t.carousel;if(!(e&&i&&s&&n))return;if(s.state===l.Init||s.state===l.Destroy)return;for(const i of e.slides)t.setProps(i.index);let r=(t[p]+t.thumbGap)*(n.slides.length||0);i.style.setProperty("--width",r+"")}cleanup(){const e=this;e.carousel&&e.carousel.destroy(),e.carousel=null,e.container&&e.container.remove(),e.container=null,e.track&&e.track.remove(),e.track=null,e.state=t.States.Init,n(e.instance.container,e.cn("hasThumbs"))}attach(){const t=this,e=t.instance;e.on("initSlide",t.onInitSlide),e.state===c.Init?e.on("initSlides",t.onInitSlides):t.onInitSlides(),e.on(["change","Panzoom.afterTransform"],t.onChange),e.on("Panzoom.refresh",t.onRefresh)}detach(){const t=this,e=t.instance;e.off("initSlide",t.onInitSlide),e.off("initSlides",t.onInitSlides),e.off(["change","Panzoom.afterTransform"],t.onChange),e.off("Panzoom.refresh",t.onRefresh),t.cleanup()}}Object.defineProperty(g,"defaults",{enumerable:!0,configurable:!0,writable:!0,value:h}),t.Thumbs=g,t.defaultOptions=h})); 2 | -------------------------------------------------------------------------------- /dist/carousel/l10n/cs.esm.js: -------------------------------------------------------------------------------- 1 | const e={NEXT:"Další",PREV:"Předchozí",GOTO:"Přejít na %d. snímek"};export{e as cs}; 2 | -------------------------------------------------------------------------------- /dist/carousel/l10n/cs.umd.js: -------------------------------------------------------------------------------- 1 | !function(e,o){"object"==typeof exports&&"undefined"!=typeof module?o(exports):"function"==typeof define&&define.amd?define(["exports"],o):o(((e="undefined"!=typeof globalThis?globalThis:e||self).Carousel=e.Carousel||{},e.Carousel.l10n=e.Carousel.l10n||{}))}(this,(function(e){"use strict";e.cs={NEXT:"Další",PREV:"Předchozí",GOTO:"Přejít na %d. snímek"}})); 2 | -------------------------------------------------------------------------------- /dist/carousel/l10n/de.esm.js: -------------------------------------------------------------------------------- 1 | const e={NEXT:"Nächste Folie",PREV:"Vorherige Folie",GOTO:"Zur #%d Folie gehen"};export{e as de}; 2 | -------------------------------------------------------------------------------- /dist/carousel/l10n/de.umd.js: -------------------------------------------------------------------------------- 1 | !function(e,o){"object"==typeof exports&&"undefined"!=typeof module?o(exports):"function"==typeof define&&define.amd?define(["exports"],o):o(((e="undefined"!=typeof globalThis?globalThis:e||self).Carousel=e.Carousel||{},e.Carousel.l10n=e.Carousel.l10n||{}))}(this,(function(e){"use strict";e.de={NEXT:"Nächste Folie",PREV:"Vorherige Folie",GOTO:"Zur #%d Folie gehen"}})); 2 | -------------------------------------------------------------------------------- /dist/carousel/l10n/en.esm.js: -------------------------------------------------------------------------------- 1 | const e={NEXT:"Next slide",PREV:"Previous slide",GOTO:"Go to slide #%d"};export{e as en}; 2 | -------------------------------------------------------------------------------- /dist/carousel/l10n/en.umd.js: -------------------------------------------------------------------------------- 1 | !function(e,o){"object"==typeof exports&&"undefined"!=typeof module?o(exports):"function"==typeof define&&define.amd?define(["exports"],o):o(((e="undefined"!=typeof globalThis?globalThis:e||self).Carousel=e.Carousel||{},e.Carousel.l10n=e.Carousel.l10n||{}))}(this,(function(e){"use strict";e.en={NEXT:"Next slide",PREV:"Previous slide",GOTO:"Go to slide #%d"}})); 2 | -------------------------------------------------------------------------------- /dist/carousel/l10n/es.esm.js: -------------------------------------------------------------------------------- 1 | const i={NEXT:"Siguiente diapositiva",PREV:"Diapositiva anterior",GOTO:"Ir a la diapositiva #%d"};export{i as es}; 2 | -------------------------------------------------------------------------------- /dist/carousel/l10n/es.umd.js: -------------------------------------------------------------------------------- 1 | !function(e,i){"object"==typeof exports&&"undefined"!=typeof module?i(exports):"function"==typeof define&&define.amd?define(["exports"],i):i(((e="undefined"!=typeof globalThis?globalThis:e||self).Carousel=e.Carousel||{},e.Carousel.l10n=e.Carousel.l10n||{}))}(this,(function(e){"use strict";e.es={NEXT:"Siguiente diapositiva",PREV:"Diapositiva anterior",GOTO:"Ir a la diapositiva #%d"}})); 2 | -------------------------------------------------------------------------------- /dist/carousel/l10n/fr.esm.js: -------------------------------------------------------------------------------- 1 | const i={NEXT:"Diapositive suivante",PREV:"Diapositive précédente",GOTO:"Aller à la diapositive #%d"};export{i as fr}; 2 | -------------------------------------------------------------------------------- /dist/carousel/l10n/fr.umd.js: -------------------------------------------------------------------------------- 1 | !function(e,i){"object"==typeof exports&&"undefined"!=typeof module?i(exports):"function"==typeof define&&define.amd?define(["exports"],i):i(((e="undefined"!=typeof globalThis?globalThis:e||self).Carousel=e.Carousel||{},e.Carousel.l10n=e.Carousel.l10n||{}))}(this,(function(e){"use strict";e.fr={NEXT:"Diapositive suivante",PREV:"Diapositive précédente",GOTO:"Aller à la diapositive #%d"}})); 2 | -------------------------------------------------------------------------------- /dist/carousel/l10n/it.esm.js: -------------------------------------------------------------------------------- 1 | const i={NEXT:"Diapositiva successiva",PREV:"Diapositiva precedente",GOTO:"Vai alla diapositiva #%d"};export{i as it}; 2 | -------------------------------------------------------------------------------- /dist/carousel/l10n/it.umd.js: -------------------------------------------------------------------------------- 1 | !function(e,i){"object"==typeof exports&&"undefined"!=typeof module?i(exports):"function"==typeof define&&define.amd?define(["exports"],i):i(((e="undefined"!=typeof globalThis?globalThis:e||self).Carousel=e.Carousel||{},e.Carousel.l10n=e.Carousel.l10n||{}))}(this,(function(e){"use strict";e.it={NEXT:"Diapositiva successiva",PREV:"Diapositiva precedente",GOTO:"Vai alla diapositiva #%d"}})); 2 | -------------------------------------------------------------------------------- /dist/carousel/l10n/ja.esm.js: -------------------------------------------------------------------------------- 1 | const o={NEXT:"次のスライド",PREV:"前のスライド",GOTO:"スライド #%d に移動"};export{o as ja}; 2 | -------------------------------------------------------------------------------- /dist/carousel/l10n/ja.umd.js: -------------------------------------------------------------------------------- 1 | !function(e,o){"object"==typeof exports&&"undefined"!=typeof module?o(exports):"function"==typeof define&&define.amd?define(["exports"],o):o(((e="undefined"!=typeof globalThis?globalThis:e||self).Carousel=e.Carousel||{},e.Carousel.l10n=e.Carousel.l10n||{}))}(this,(function(e){"use strict";e.ja={NEXT:"次のスライド",PREV:"前のスライド",GOTO:"スライド #%d に移動"}})); 2 | -------------------------------------------------------------------------------- /dist/carousel/l10n/lv.esm.js: -------------------------------------------------------------------------------- 1 | const s={NEXT:"Nākošais slaids",PREV:"Iepriekšējais slaids",GOTO:"Doties uz #%d slaidu"};export{s as lv}; 2 | -------------------------------------------------------------------------------- /dist/carousel/l10n/lv.umd.js: -------------------------------------------------------------------------------- 1 | !function(e,s){"object"==typeof exports&&"undefined"!=typeof module?s(exports):"function"==typeof define&&define.amd?define(["exports"],s):s(((e="undefined"!=typeof globalThis?globalThis:e||self).Carousel=e.Carousel||{},e.Carousel.l10n=e.Carousel.l10n||{}))}(this,(function(e){"use strict";e.lv={NEXT:"Nākošais slaids",PREV:"Iepriekšējais slaids",GOTO:"Doties uz #%d slaidu"}})); 2 | -------------------------------------------------------------------------------- /dist/carousel/l10n/pl.esm.js: -------------------------------------------------------------------------------- 1 | const d={NEXT:"Następny slajd",PREV:"Poprzedni slajd",GOTO:"Idź do slajdu nr #%d"};export{d as pl}; 2 | -------------------------------------------------------------------------------- /dist/carousel/l10n/pl.umd.js: -------------------------------------------------------------------------------- 1 | !function(e,o){"object"==typeof exports&&"undefined"!=typeof module?o(exports):"function"==typeof define&&define.amd?define(["exports"],o):o(((e="undefined"!=typeof globalThis?globalThis:e||self).Carousel=e.Carousel||{},e.Carousel.l10n=e.Carousel.l10n||{}))}(this,(function(e){"use strict";e.pl={NEXT:"Następny slajd",PREV:"Poprzedni slajd",GOTO:"Idź do slajdu nr #%d"}})); 2 | -------------------------------------------------------------------------------- /dist/carousel/l10n/sk.esm.js: -------------------------------------------------------------------------------- 1 | const a={NEXT:"Ďalší",PREV:"Predchádzajúci",GOTO:"Prejsť na %d. snímok"};export{a as sk}; 2 | -------------------------------------------------------------------------------- /dist/carousel/l10n/sk.umd.js: -------------------------------------------------------------------------------- 1 | !function(e,o){"object"==typeof exports&&"undefined"!=typeof module?o(exports):"function"==typeof define&&define.amd?define(["exports"],o):o(((e="undefined"!=typeof globalThis?globalThis:e||self).Carousel=e.Carousel||{},e.Carousel.l10n=e.Carousel.l10n||{}))}(this,(function(e){"use strict";e.sk={NEXT:"Ďalší",PREV:"Predchádzajúci",GOTO:"Prejsť na %d. snímok"}})); 2 | -------------------------------------------------------------------------------- /dist/carousel/l10n/zh_CN.esm.js: -------------------------------------------------------------------------------- 1 | const o={NEXT:"下一张",PREV:"上一张",GOTO:"转至幻灯片 #%d"};export{o as zh_CN}; 2 | -------------------------------------------------------------------------------- /dist/carousel/l10n/zh_CN.umd.js: -------------------------------------------------------------------------------- 1 | !function(e,o){"object"==typeof exports&&"undefined"!=typeof module?o(exports):"function"==typeof define&&define.amd?define(["exports"],o):o(((e="undefined"!=typeof globalThis?globalThis:e||self).Carousel=e.Carousel||{},e.Carousel.l10n=e.Carousel.l10n||{}))}(this,(function(e){"use strict";e.zh_CN={NEXT:"下一张",PREV:"上一张",GOTO:"转至幻灯片 #%d"}})); 2 | -------------------------------------------------------------------------------- /dist/fancybox/l10n/cs.esm.js: -------------------------------------------------------------------------------- 1 | const o={PANUP:"Posunout nahoru",PANDOWN:"Posunout dolů",PANLEFT:"Posunout vlevo",PANRIGHT:"Posunout vpravo",ZOOMIN:"Přiblížit",ZOOMOUT:"Oddálit",TOGGLEZOOM:"Přepnout úroveň přiblížení",TOGGLE1TO1:"Přepnout úroveň přiblížení",ITERATEZOOM:"Přepnout úroveň přiblížení",ROTATECCW:"Otočit směrem vlevo",ROTATECW:"Otočit směrem vpravo",FLIPX:"Převrátit vodorovně",FLIPY:"Převrátit svisle",FITX:"Přizpůsobit na šířku",FITY:"Přizpůsobit na výšku",RESET:"Resetovat",TOGGLEFS:"Režim celé obrazovky",CLOSE:"Zavřít",NEXT:"Další",PREV:"Předchozí",MODAL:"Toto okno lze zavřít klávesou ESC",ERROR:"Někde se stala chyba, zkuste to prosím znovu",IMAGE_ERROR:"Obrázek nenalezen",ELEMENT_NOT_FOUND:"HTML element nenalezen",AJAX_NOT_FOUND:"Chyba AJAX načítání: Nenalezeno",AJAX_FORBIDDEN:"Chyba AJAX načítání: Zamítnuto",IFRAME_ERROR:"Chyba načítání stránky",TOGGLE_ZOOM:"Přepnout úroveň přiblížení",TOGGLE_THUMBS:"Zobrazit/skrýt miniatury",TOGGLE_SLIDESHOW:"Spustit/zastavit automatické přehrávání",TOGGLE_FULLSCREEN:"Režim celé obrazovky",DOWNLOAD:"Stáhnout"};export{o as cs}; 2 | -------------------------------------------------------------------------------- /dist/fancybox/l10n/cs.umd.js: -------------------------------------------------------------------------------- 1 | !function(o,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e(((o="undefined"!=typeof globalThis?globalThis:o||self).Fancybox=o.Fancybox||{},o.Fancybox.l10n=o.Fancybox.l10n||{}))}(this,(function(o){"use strict";const e={PANUP:"Posunout nahoru",PANDOWN:"Posunout dolů",PANLEFT:"Posunout vlevo",PANRIGHT:"Posunout vpravo",ZOOMIN:"Přiblížit",ZOOMOUT:"Oddálit",TOGGLEZOOM:"Přepnout úroveň přiblížení",TOGGLE1TO1:"Přepnout úroveň přiblížení",ITERATEZOOM:"Přepnout úroveň přiblížení",ROTATECCW:"Otočit směrem vlevo",ROTATECW:"Otočit směrem vpravo",FLIPX:"Převrátit vodorovně",FLIPY:"Převrátit svisle",FITX:"Přizpůsobit na šířku",FITY:"Přizpůsobit na výšku",RESET:"Resetovat",TOGGLEFS:"Režim celé obrazovky",CLOSE:"Zavřít",NEXT:"Další",PREV:"Předchozí",MODAL:"Toto okno lze zavřít klávesou ESC",ERROR:"Někde se stala chyba, zkuste to prosím znovu",IMAGE_ERROR:"Obrázek nenalezen",ELEMENT_NOT_FOUND:"HTML element nenalezen",AJAX_NOT_FOUND:"Chyba AJAX načítání: Nenalezeno",AJAX_FORBIDDEN:"Chyba AJAX načítání: Zamítnuto",IFRAME_ERROR:"Chyba načítání stránky",TOGGLE_ZOOM:"Přepnout úroveň přiblížení",TOGGLE_THUMBS:"Zobrazit/skrýt miniatury",TOGGLE_SLIDESHOW:"Spustit/zastavit automatické přehrávání",TOGGLE_FULLSCREEN:"Režim celé obrazovky",DOWNLOAD:"Stáhnout"};o.cs=e})); 2 | -------------------------------------------------------------------------------- /dist/fancybox/l10n/de.esm.js: -------------------------------------------------------------------------------- 1 | const e={PANUP:"Aufwärts bewegen",PANDOWN:"Nach unten bewegen",PANLEFT:"Nach links bewegen",PANRIGHT:"Nach rechts bewegen",ZOOMIN:"Vergrößern",ZOOMOUT:"Verkleinern",TOGGLEZOOM:"Zoomstufe umschalten",TOGGLE1TO1:"Zoomstufe umschalten",ITERATEZOOM:"Zoomstufe umschalten",ROTATECCW:"Gegen den Uhrzeigersinn drehen",ROTATECW:"Im Uhrzeigersinn drehen",FLIPX:"Horizontal spiegeln",FLIPY:"Vertikal spiegeln",FITX:"Horizontal einpassen",FITY:"Vertikal anpassen",RESET:"Zurücksetzen",TOGGLEFS:"Vollbild umschalten",CLOSE:"Schließen",NEXT:"Weiter",PREV:"Zurück",MODAL:"Sie können diesen modalen Inhalt mit der ESC-Taste schließen",ERROR:"Etwas ist schief gelaufen, bitte versuchen Sie es später noch einmal",IMAGE_ERROR:"Bild nicht gefunden",ELEMENT_NOT_FOUND:"HTML-Element nicht gefunden",AJAX_NOT_FOUND:"Fehler beim Laden von AJAX: Nicht gefunden",AJAX_FORBIDDEN:"Fehler beim Laden von AJAX: Verboten",IFRAME_ERROR:"Fehler beim Laden der Seite",TOGGLE_ZOOM:"Zoomstufe umschalten",TOGGLE_THUMBS:"Miniaturansichten umschalten",TOGGLE_SLIDESHOW:"Diashow wechseln",TOGGLE_FULLSCREEN:"Vollbildmodus umschalten",DOWNLOAD:"Herunterladen"};export{e as de}; 2 | -------------------------------------------------------------------------------- /dist/fancybox/l10n/de.umd.js: -------------------------------------------------------------------------------- 1 | !function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n(((e="undefined"!=typeof globalThis?globalThis:e||self).Fancybox=e.Fancybox||{},e.Fancybox.l10n=e.Fancybox.l10n||{}))}(this,(function(e){"use strict";const n={PANUP:"Aufwärts bewegen",PANDOWN:"Nach unten bewegen",PANLEFT:"Nach links bewegen",PANRIGHT:"Nach rechts bewegen",ZOOMIN:"Vergrößern",ZOOMOUT:"Verkleinern",TOGGLEZOOM:"Zoomstufe umschalten",TOGGLE1TO1:"Zoomstufe umschalten",ITERATEZOOM:"Zoomstufe umschalten",ROTATECCW:"Gegen den Uhrzeigersinn drehen",ROTATECW:"Im Uhrzeigersinn drehen",FLIPX:"Horizontal spiegeln",FLIPY:"Vertikal spiegeln",FITX:"Horizontal einpassen",FITY:"Vertikal anpassen",RESET:"Zurücksetzen",TOGGLEFS:"Vollbild umschalten",CLOSE:"Schließen",NEXT:"Weiter",PREV:"Zurück",MODAL:"Sie können diesen modalen Inhalt mit der ESC-Taste schließen",ERROR:"Etwas ist schief gelaufen, bitte versuchen Sie es später noch einmal",IMAGE_ERROR:"Bild nicht gefunden",ELEMENT_NOT_FOUND:"HTML-Element nicht gefunden",AJAX_NOT_FOUND:"Fehler beim Laden von AJAX: Nicht gefunden",AJAX_FORBIDDEN:"Fehler beim Laden von AJAX: Verboten",IFRAME_ERROR:"Fehler beim Laden der Seite",TOGGLE_ZOOM:"Zoomstufe umschalten",TOGGLE_THUMBS:"Miniaturansichten umschalten",TOGGLE_SLIDESHOW:"Diashow wechseln",TOGGLE_FULLSCREEN:"Vollbildmodus umschalten",DOWNLOAD:"Herunterladen"};e.de=n})); 2 | -------------------------------------------------------------------------------- /dist/fancybox/l10n/en.esm.js: -------------------------------------------------------------------------------- 1 | const o=Object.assign(Object.assign({},{PANUP:"Move up",PANDOWN:"Move down",PANLEFT:"Move left",PANRIGHT:"Move right",ZOOMIN:"Zoom in",ZOOMOUT:"Zoom out",TOGGLEZOOM:"Toggle zoom level",TOGGLE1TO1:"Toggle zoom level",ITERATEZOOM:"Toggle zoom level",ROTATECCW:"Rotate counterclockwise",ROTATECW:"Rotate clockwise",FLIPX:"Flip horizontally",FLIPY:"Flip vertically",FITX:"Fit horizontally",FITY:"Fit vertically",RESET:"Reset",TOGGLEFS:"Toggle fullscreen"}),{CLOSE:"Close",NEXT:"Next",PREV:"Previous",MODAL:"You can close this modal content with the ESC key",ERROR:"Something Went Wrong, Please Try Again Later",IMAGE_ERROR:"Image Not Found",ELEMENT_NOT_FOUND:"HTML Element Not Found",AJAX_NOT_FOUND:"Error Loading AJAX : Not Found",AJAX_FORBIDDEN:"Error Loading AJAX : Forbidden",IFRAME_ERROR:"Error Loading Page",TOGGLE_ZOOM:"Toggle zoom level",TOGGLE_THUMBS:"Toggle thumbnails",TOGGLE_SLIDESHOW:"Toggle slideshow",TOGGLE_FULLSCREEN:"Toggle full-screen mode",DOWNLOAD:"Download"});export{o as en}; 2 | -------------------------------------------------------------------------------- /dist/fancybox/l10n/en.umd.js: -------------------------------------------------------------------------------- 1 | !function(o,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e(((o="undefined"!=typeof globalThis?globalThis:o||self).Fancybox=o.Fancybox||{},o.Fancybox.l10n=o.Fancybox.l10n||{}))}(this,(function(o){"use strict";const e=Object.assign(Object.assign({},{PANUP:"Move up",PANDOWN:"Move down",PANLEFT:"Move left",PANRIGHT:"Move right",ZOOMIN:"Zoom in",ZOOMOUT:"Zoom out",TOGGLEZOOM:"Toggle zoom level",TOGGLE1TO1:"Toggle zoom level",ITERATEZOOM:"Toggle zoom level",ROTATECCW:"Rotate counterclockwise",ROTATECW:"Rotate clockwise",FLIPX:"Flip horizontally",FLIPY:"Flip vertically",FITX:"Fit horizontally",FITY:"Fit vertically",RESET:"Reset",TOGGLEFS:"Toggle fullscreen"}),{CLOSE:"Close",NEXT:"Next",PREV:"Previous",MODAL:"You can close this modal content with the ESC key",ERROR:"Something Went Wrong, Please Try Again Later",IMAGE_ERROR:"Image Not Found",ELEMENT_NOT_FOUND:"HTML Element Not Found",AJAX_NOT_FOUND:"Error Loading AJAX : Not Found",AJAX_FORBIDDEN:"Error Loading AJAX : Forbidden",IFRAME_ERROR:"Error Loading Page",TOGGLE_ZOOM:"Toggle zoom level",TOGGLE_THUMBS:"Toggle thumbnails",TOGGLE_SLIDESHOW:"Toggle slideshow",TOGGLE_FULLSCREEN:"Toggle full-screen mode",DOWNLOAD:"Download"});o.en=e})); 2 | -------------------------------------------------------------------------------- /dist/fancybox/l10n/es.esm.js: -------------------------------------------------------------------------------- 1 | const a={PANUP:"Mover hacia arriba",PANDOWN:"Mover hacia abajo",PANLEFT:"Mover hacia la izquierda",PANRIGHT:"Mover hacia la derecha",ZOOMIN:"Mover a la derecha",ZOOMOUT:"Disminuir el zoom",TOGGLEZOOM:"Alternar nivel de zoom",TOGGLE1TO1:"Alternar nivel de zoom",ITERATEZOOM:"Alternar nivel de zoom",ROTATECCW:"Girar en sentido antihorario",ROTATECW:"Rotar las agujas del reloj",FLIPX:"Voltear horizontalmente",FLIPY:"Voltear verticalmente",FITX:"Ajustar horizontalmente",FITY:"Ajustar verticalmente",RESET:"Reiniciar",TOGGLEFS:"Alternar pantalla completa",CLOSE:"Cerrar",NEXT:"Siguiente",PREV:"Anterior",MODAL:"Puedes cerrar esta ventana con la tecla ESC",ERROR:"Algo salió mal, inténtalo de nuevo más tarde",IMAGE_ERROR:"Imagen no encontrada",ELEMENT_NOT_FOUND:"Elemento HTML no encontrado",AJAX_NOT_FOUND:"Error al cargar el AJAX : No encontrado",AJAX_FORBIDDEN:"Error al cargar el AJAX : Prohibido",IFRAME_ERROR:"Error al cargar la página",TOGGLE_ZOOM:"Cambiar el nivel de zoom",TOGGLE_THUMBS:"Cambiar a miniaturas",TOGGLE_SLIDESHOW:"Cambiar a modo presentación",TOGGLE_FULLSCREEN:"Cambiar a modo pantalla completa",DOWNLOAD:"Descargar"};export{a as es}; 2 | -------------------------------------------------------------------------------- /dist/fancybox/l10n/es.umd.js: -------------------------------------------------------------------------------- 1 | !function(a,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e(((a="undefined"!=typeof globalThis?globalThis:a||self).Fancybox=a.Fancybox||{},a.Fancybox.l10n=a.Fancybox.l10n||{}))}(this,(function(a){"use strict";const e={PANUP:"Mover hacia arriba",PANDOWN:"Mover hacia abajo",PANLEFT:"Mover hacia la izquierda",PANRIGHT:"Mover hacia la derecha",ZOOMIN:"Mover a la derecha",ZOOMOUT:"Disminuir el zoom",TOGGLEZOOM:"Alternar nivel de zoom",TOGGLE1TO1:"Alternar nivel de zoom",ITERATEZOOM:"Alternar nivel de zoom",ROTATECCW:"Girar en sentido antihorario",ROTATECW:"Rotar las agujas del reloj",FLIPX:"Voltear horizontalmente",FLIPY:"Voltear verticalmente",FITX:"Ajustar horizontalmente",FITY:"Ajustar verticalmente",RESET:"Reiniciar",TOGGLEFS:"Alternar pantalla completa",CLOSE:"Cerrar",NEXT:"Siguiente",PREV:"Anterior",MODAL:"Puedes cerrar esta ventana con la tecla ESC",ERROR:"Algo salió mal, inténtalo de nuevo más tarde",IMAGE_ERROR:"Imagen no encontrada",ELEMENT_NOT_FOUND:"Elemento HTML no encontrado",AJAX_NOT_FOUND:"Error al cargar el AJAX : No encontrado",AJAX_FORBIDDEN:"Error al cargar el AJAX : Prohibido",IFRAME_ERROR:"Error al cargar la página",TOGGLE_ZOOM:"Cambiar el nivel de zoom",TOGGLE_THUMBS:"Cambiar a miniaturas",TOGGLE_SLIDESHOW:"Cambiar a modo presentación",TOGGLE_FULLSCREEN:"Cambiar a modo pantalla completa",DOWNLOAD:"Descargar"};a.es=e})); 2 | -------------------------------------------------------------------------------- /dist/fancybox/l10n/fr.esm.js: -------------------------------------------------------------------------------- 1 | const e={PANUP:"Déplacer vers le haut",PANDOWN:"Déplacer vers le bas",PANLEFT:"Déplacer vers la gauche",PANRIGHT:"Déplacer vers la droite",ZOOMIN:"Zoom avant",ZOOMOUT:"Zoom arrière",TOGGLEZOOM:"Basculer le niveau de zoom",TOGGLE1TO1:"Basculer le niveau de zoom",ITERATEZOOM:"Basculer le niveau de zoom",ROTATECCW:"Tourner dans le sens antihoraire",ROTATECW:"Le sens des aiguilles d'une montre",FLIPX:"Retourner horizontalement",FLIPY:"Retourner verticalement",FITX:"Ajuster horizontalement",FITY:"Ajuster verticalement",RESET:"Réinitialiser",TOGGLEFS:"Basculer en plein écran",CLOSE:"Fermer",NEXT:"Suivant",PREV:"Précédent",MODAL:"Vous pouvez fermer ce contenu modal avec la touche ESC",ERROR:"Quelque chose s'est mal passé, veuillez réessayer plus tard",IMAGE_ERROR:"Image introuvable",ELEMENT_NOT_FOUND:"Élément HTML introuvable",AJAX_NOT_FOUND:"Erreur lors du chargement d'AJAX : introuvable",AJAX_FORBIDDEN:"Erreur lors du chargement d'AJAX : Interdit",IFRAME_ERROR:"Erreur lors du chargement de la page",TOGGLE_ZOOM:"Basculer le niveau de zoom",TOGGLE_THUMBS:"Basculer les vignettes",TOGGLE_SLIDESHOW:"Basculer le diaporama",TOGGLE_FULLSCREEN:"Basculer en mode plein écran",DOWNLOAD:"Télécharger"};export{e as fr}; 2 | -------------------------------------------------------------------------------- /dist/fancybox/l10n/fr.umd.js: -------------------------------------------------------------------------------- 1 | !function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports):"function"==typeof define&&define.amd?define(["exports"],r):r(((e="undefined"!=typeof globalThis?globalThis:e||self).Fancybox=e.Fancybox||{},e.Fancybox.l10n=e.Fancybox.l10n||{}))}(this,(function(e){"use strict";const r={PANUP:"Déplacer vers le haut",PANDOWN:"Déplacer vers le bas",PANLEFT:"Déplacer vers la gauche",PANRIGHT:"Déplacer vers la droite",ZOOMIN:"Zoom avant",ZOOMOUT:"Zoom arrière",TOGGLEZOOM:"Basculer le niveau de zoom",TOGGLE1TO1:"Basculer le niveau de zoom",ITERATEZOOM:"Basculer le niveau de zoom",ROTATECCW:"Tourner dans le sens antihoraire",ROTATECW:"Le sens des aiguilles d'une montre",FLIPX:"Retourner horizontalement",FLIPY:"Retourner verticalement",FITX:"Ajuster horizontalement",FITY:"Ajuster verticalement",RESET:"Réinitialiser",TOGGLEFS:"Basculer en plein écran",CLOSE:"Fermer",NEXT:"Suivant",PREV:"Précédent",MODAL:"Vous pouvez fermer ce contenu modal avec la touche ESC",ERROR:"Quelque chose s'est mal passé, veuillez réessayer plus tard",IMAGE_ERROR:"Image introuvable",ELEMENT_NOT_FOUND:"Élément HTML introuvable",AJAX_NOT_FOUND:"Erreur lors du chargement d'AJAX : introuvable",AJAX_FORBIDDEN:"Erreur lors du chargement d'AJAX : Interdit",IFRAME_ERROR:"Erreur lors du chargement de la page",TOGGLE_ZOOM:"Basculer le niveau de zoom",TOGGLE_THUMBS:"Basculer les vignettes",TOGGLE_SLIDESHOW:"Basculer le diaporama",TOGGLE_FULLSCREEN:"Basculer en mode plein écran",DOWNLOAD:"Télécharger"};e.fr=r})); 2 | -------------------------------------------------------------------------------- /dist/fancybox/l10n/it.esm.js: -------------------------------------------------------------------------------- 1 | const t={PANUP:"Sposta su",PANDOWN:"Sposta giù",PANLEFT:"Sposta a sinistra",PANRIGHT:"Sposta a destra",ZOOMIN:"Ingrandisci",ZOOMOUT:"Rimpicciolisci",TOGGLEZOOM:"Alterna il livello di zoom",TOGGLE1TO1:"Alterna il livello di zoom",ITERATEZOOM:"Attiva/disattiva livello di zoom",ROTATECCW:"Ruota in senso antiorario",ROTATECW:"Ruota in senso orario",FLIPX:"Capovolgi orizzontalmente",FLIPY:"Capovolgi verticalmente",FITX:"Adatta orizzontalmente",FITY:"Adatta verticalmente",RESET:"Reimposta",TOGGLEFS:"Attiva/disattiva schermo intero",CLOSE:"Chiudi",NEXT:"Successivo",PREV:"Precedente",MODAL:"Puoi chiudere questo contenuto modale con il tasto ESC",ERROR:"Qualcosa è andato storto, riprova più tardi",IMAGE_ERROR:"Immagine non trovata",ELEMENT_NOT_FOUND:"Elemento HTML non trovato",AJAX_NOT_FOUND:"Errore durante il caricamento di AJAX: Non trovato",AJAX_FORBIDDEN:"Errore durante il caricamento di AJAX: Vietato",IFRAME_ERROR:"Errore durante il caricamento della pagina",TOGGLE_ZOOM:"Attiva/disattiva livello di zoom",TOGGLE_THUMBS:"Attiva/disattiva miniature",TOGGLE_SLIDESHOW:"Attiva/disattiva presentazione",TOGGLE_FULLSCREEN:"Attiva/disattiva modalità a schermo intero",DOWNLOAD:"Scarica"};export{t as it}; 2 | -------------------------------------------------------------------------------- /dist/fancybox/l10n/it.umd.js: -------------------------------------------------------------------------------- 1 | !function(t,i){"object"==typeof exports&&"undefined"!=typeof module?i(exports):"function"==typeof define&&define.amd?define(["exports"],i):i(((t="undefined"!=typeof globalThis?globalThis:t||self).Fancybox=t.Fancybox||{},t.Fancybox.l10n=t.Fancybox.l10n||{}))}(this,(function(t){"use strict";const i={PANUP:"Sposta su",PANDOWN:"Sposta giù",PANLEFT:"Sposta a sinistra",PANRIGHT:"Sposta a destra",ZOOMIN:"Ingrandisci",ZOOMOUT:"Rimpicciolisci",TOGGLEZOOM:"Alterna il livello di zoom",TOGGLE1TO1:"Alterna il livello di zoom",ITERATEZOOM:"Attiva/disattiva livello di zoom",ROTATECCW:"Ruota in senso antiorario",ROTATECW:"Ruota in senso orario",FLIPX:"Capovolgi orizzontalmente",FLIPY:"Capovolgi verticalmente",FITX:"Adatta orizzontalmente",FITY:"Adatta verticalmente",RESET:"Reimposta",TOGGLEFS:"Attiva/disattiva schermo intero",CLOSE:"Chiudi",NEXT:"Successivo",PREV:"Precedente",MODAL:"Puoi chiudere questo contenuto modale con il tasto ESC",ERROR:"Qualcosa è andato storto, riprova più tardi",IMAGE_ERROR:"Immagine non trovata",ELEMENT_NOT_FOUND:"Elemento HTML non trovato",AJAX_NOT_FOUND:"Errore durante il caricamento di AJAX: Non trovato",AJAX_FORBIDDEN:"Errore durante il caricamento di AJAX: Vietato",IFRAME_ERROR:"Errore durante il caricamento della pagina",TOGGLE_ZOOM:"Attiva/disattiva livello di zoom",TOGGLE_THUMBS:"Attiva/disattiva miniature",TOGGLE_SLIDESHOW:"Attiva/disattiva presentazione",TOGGLE_FULLSCREEN:"Attiva/disattiva modalità a schermo intero",DOWNLOAD:"Scarica"};t.it=i})); 2 | -------------------------------------------------------------------------------- /dist/fancybox/l10n/ja.esm.js: -------------------------------------------------------------------------------- 1 | const O={PANUP:"上に移動",PANDOWN:"下に移動",PANLEFT:"左に移動",PANRIGHT:"右に動く",ZOOMIN:"ズームイン",ZOOMOUT:"ズームアウトする",TOGGLEZOOM:"ズーム レベルの切り替え",TOGGLE1TO1:"ズーム レベルの切り替え",ITERATEZOOM:"ズーム レベルの切り替え",ROTATECCW:"反時計回りに回転",ROTATECW:"時計回りに回転します",FLIPX:"左右反転",FLIPY:"上下反転",FITX:"水平に合わせる",FITY:"縦に合わせる",RESET:"リセット",TOGGLEFS:"フルスクリーン切り替え",CLOSE:"近い",NEXT:"次",PREV:"前",MODAL:"このモーダル コンテンツは ESC キーで閉じることができます",ERROR:"何かが間違っています。後でもう一度試してください",IMAGE_ERROR:"画像が見つかりません",ELEMENT_NOT_FOUND:"HTML 要素が見つかりません",AJAX_NOT_FOUND:"AJAX の読み込みエラー: 見つかりません",AJAX_FORBIDDEN:"AJAX のロード中にエラーが発生しました: 禁止されています",IFRAME_ERROR:"ページ読み込みエラー",TOGGLE_ZOOM:"ズーム レベルの切り替え",TOGGLE_THUMBS:"サムネイルの切り替え",TOGGLE_SLIDESHOW:"スライドショーの切り替え",TOGGLE_FULLSCREEN:"全画面モードの切り替え",DOWNLOAD:"ダウンロード"};export{O as ja}; 2 | -------------------------------------------------------------------------------- /dist/fancybox/l10n/ja.umd.js: -------------------------------------------------------------------------------- 1 | !function(O,E){"object"==typeof exports&&"undefined"!=typeof module?E(exports):"function"==typeof define&&define.amd?define(["exports"],E):E(((O="undefined"!=typeof globalThis?globalThis:O||self).Fancybox=O.Fancybox||{},O.Fancybox.l10n=O.Fancybox.l10n||{}))}(this,(function(O){"use strict";const E={PANUP:"上に移動",PANDOWN:"下に移動",PANLEFT:"左に移動",PANRIGHT:"右に動く",ZOOMIN:"ズームイン",ZOOMOUT:"ズームアウトする",TOGGLEZOOM:"ズーム レベルの切り替え",TOGGLE1TO1:"ズーム レベルの切り替え",ITERATEZOOM:"ズーム レベルの切り替え",ROTATECCW:"反時計回りに回転",ROTATECW:"時計回りに回転します",FLIPX:"左右反転",FLIPY:"上下反転",FITX:"水平に合わせる",FITY:"縦に合わせる",RESET:"リセット",TOGGLEFS:"フルスクリーン切り替え",CLOSE:"近い",NEXT:"次",PREV:"前",MODAL:"このモーダル コンテンツは ESC キーで閉じることができます",ERROR:"何かが間違っています。後でもう一度試してください",IMAGE_ERROR:"画像が見つかりません",ELEMENT_NOT_FOUND:"HTML 要素が見つかりません",AJAX_NOT_FOUND:"AJAX の読み込みエラー: 見つかりません",AJAX_FORBIDDEN:"AJAX のロード中にエラーが発生しました: 禁止されています",IFRAME_ERROR:"ページ読み込みエラー",TOGGLE_ZOOM:"ズーム レベルの切り替え",TOGGLE_THUMBS:"サムネイルの切り替え",TOGGLE_SLIDESHOW:"スライドショーの切り替え",TOGGLE_FULLSCREEN:"全画面モードの切り替え",DOWNLOAD:"ダウンロード"};O.ja=E})); 2 | -------------------------------------------------------------------------------- /dist/fancybox/l10n/lv.esm.js: -------------------------------------------------------------------------------- 1 | const t={PANUP:"Bīdīt uz augšu",PANDOWN:"Bīdīt uz leju",PANLEFT:"Bīdīt pa kreisi",PANRIGHT:"Bīdīt pa labi",ZOOMIN:"Pietuvināt",ZOOMOUT:"Attālināt",TOGGLEZOOM:"Pārslēgt tālummaiņas līmeni",TOGGLE1TO1:"Pārslēgt tālummaiņas līmeni",ITERATEZOOM:"Pārslēgt tālummaiņas līmeni",ROTATECCW:"Pagrieziet pretēji pulksteņrādītāja virzienam",ROTATECW:"Pagrieziet pulksteņrādītāja virzienā",FLIPX:"Apgriezt horizontāli",FLIPY:"Apgriezt vertikāli",FITX:"Ietilpināt horizontāli",FITY:"Ietilpināt vertikāli",RESET:"Atiestatīt",TOGGLEFS:"Pārslēgt pilnekrāna režīmu",CLOSE:"Aizvērt",NEXT:"Nākošais",PREV:"Iepriekšējais",MODAL:"Šo modālo saturu var aizvērt ar ESC taustiņu",ERROR:"Kaut kas nogāja greizi. Lūdzu, vēlāk mēģiniet vēlreiz",IMAGE_ERROR:"Attēls nav atrasts",ELEMENT_NOT_FOUND:"HTML elements nav atrasts",AJAX_NOT_FOUND:"Ielādējot AJAX, radās kļūda: Nav atrasts",AJAX_FORBIDDEN:"Ielādējot AJAX, radās kļūda: Aizliegts",IFRAME_ERROR:"Ielādējot lapu, radās kļūda",TOGGLE_ZOOM:"Pārslēgt tālummaiņas līmeni",TOGGLE_THUMBS:"Pārslēgt sīktēlus",TOGGLE_SLIDESHOW:"Pārslēgt slaidrādi",TOGGLE_FULLSCREEN:"Pārslēgt pilnekrāna režīmu",DOWNLOAD:"Lejupielādēt"};export{t as lv}; 2 | -------------------------------------------------------------------------------- /dist/fancybox/l10n/lv.umd.js: -------------------------------------------------------------------------------- 1 | !function(t,i){"object"==typeof exports&&"undefined"!=typeof module?i(exports):"function"==typeof define&&define.amd?define(["exports"],i):i(((t="undefined"!=typeof globalThis?globalThis:t||self).Fancybox=t.Fancybox||{},t.Fancybox.l10n=t.Fancybox.l10n||{}))}(this,(function(t){"use strict";const i={PANUP:"Bīdīt uz augšu",PANDOWN:"Bīdīt uz leju",PANLEFT:"Bīdīt pa kreisi",PANRIGHT:"Bīdīt pa labi",ZOOMIN:"Pietuvināt",ZOOMOUT:"Attālināt",TOGGLEZOOM:"Pārslēgt tālummaiņas līmeni",TOGGLE1TO1:"Pārslēgt tālummaiņas līmeni",ITERATEZOOM:"Pārslēgt tālummaiņas līmeni",ROTATECCW:"Pagrieziet pretēji pulksteņrādītāja virzienam",ROTATECW:"Pagrieziet pulksteņrādītāja virzienā",FLIPX:"Apgriezt horizontāli",FLIPY:"Apgriezt vertikāli",FITX:"Ietilpināt horizontāli",FITY:"Ietilpināt vertikāli",RESET:"Atiestatīt",TOGGLEFS:"Pārslēgt pilnekrāna režīmu",CLOSE:"Aizvērt",NEXT:"Nākošais",PREV:"Iepriekšējais",MODAL:"Šo modālo saturu var aizvērt ar ESC taustiņu",ERROR:"Kaut kas nogāja greizi. Lūdzu, vēlāk mēģiniet vēlreiz",IMAGE_ERROR:"Attēls nav atrasts",ELEMENT_NOT_FOUND:"HTML elements nav atrasts",AJAX_NOT_FOUND:"Ielādējot AJAX, radās kļūda: Nav atrasts",AJAX_FORBIDDEN:"Ielādējot AJAX, radās kļūda: Aizliegts",IFRAME_ERROR:"Ielādējot lapu, radās kļūda",TOGGLE_ZOOM:"Pārslēgt tālummaiņas līmeni",TOGGLE_THUMBS:"Pārslēgt sīktēlus",TOGGLE_SLIDESHOW:"Pārslēgt slaidrādi",TOGGLE_FULLSCREEN:"Pārslēgt pilnekrāna režīmu",DOWNLOAD:"Lejupielādēt"};t.lv=i})); 2 | -------------------------------------------------------------------------------- /dist/fancybox/l10n/pl.esm.js: -------------------------------------------------------------------------------- 1 | const o={PANUP:"Przesuń w górę",PANDOWN:"Przesuń w dół",PANLEFT:"Przesuń w lewo",PANRIGHT:"Przesuń w prawo",ZOOMIN:"Zbliż",ZOOMOUT:"Oddal",TOGGLEZOOM:"Zbliż/oddal",TOGGLE1TO1:"Zmieść/skala 1:1",ITERATEZOOM:"Zbliż/oddal",ROTATECCW:"Obróć w lewo",ROTATECW:"Obróć w prawo",FLIPX:"Obróć w poziomie",FLIPY:"Obróć w pionie",FITX:"Dopasuj do szerokości ekranu",FITY:"Dopasuj do wysokości ekranu",RESET:"Resetuj",TOGGLEFS:"Włącz/wyłącz tryb pełnego ekranu",CLOSE:"Zamknij",NEXT:"Dalej",PREV:"Wstecz",MODAL:"Wciśnij ESC, by zamknąć",ERROR:"Coś poszło nie tak. Spróbuj ponownie później",IMAGE_ERROR:"Wczytywanie obrazu nie powiodło się",ELEMENT_NOT_FOUND:"Element HTML nie został odnaleziony",AJAX_NOT_FOUND:"Żądanie AJAX nie powiodło się: brak właściwego zasobu",AJAX_FORBIDDEN:"Żądanie AJAX nie powiodło się: braku dostępu",IFRAME_ERROR:"Nie udało się załadować poprawnie tej strony",TOGGLE_ZOOM:"Zbliż/oddal",TOGGLE_THUMBS:"Wyświetl/ukryj miniatury",TOGGLE_SLIDESHOW:"Włącz/wyłącz pokaz slajdów",TOGGLE_FULLSCREEN:"Włącz/wyłącz tryb pełnego ekranu",DOWNLOAD:"Pobierz"};export{o as pl}; 2 | -------------------------------------------------------------------------------- /dist/fancybox/l10n/pl.umd.js: -------------------------------------------------------------------------------- 1 | !function(o,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e(((o="undefined"!=typeof globalThis?globalThis:o||self).Fancybox=o.Fancybox||{},o.Fancybox.l10n=o.Fancybox.l10n||{}))}(this,(function(o){"use strict";const e={PANUP:"Przesuń w górę",PANDOWN:"Przesuń w dół",PANLEFT:"Przesuń w lewo",PANRIGHT:"Przesuń w prawo",ZOOMIN:"Zbliż",ZOOMOUT:"Oddal",TOGGLEZOOM:"Zbliż/oddal",TOGGLE1TO1:"Zmieść/skala 1:1",ITERATEZOOM:"Zbliż/oddal",ROTATECCW:"Obróć w lewo",ROTATECW:"Obróć w prawo",FLIPX:"Obróć w poziomie",FLIPY:"Obróć w pionie",FITX:"Dopasuj do szerokości ekranu",FITY:"Dopasuj do wysokości ekranu",RESET:"Resetuj",TOGGLEFS:"Włącz/wyłącz tryb pełnego ekranu",CLOSE:"Zamknij",NEXT:"Dalej",PREV:"Wstecz",MODAL:"Wciśnij ESC, by zamknąć",ERROR:"Coś poszło nie tak. Spróbuj ponownie później",IMAGE_ERROR:"Wczytywanie obrazu nie powiodło się",ELEMENT_NOT_FOUND:"Element HTML nie został odnaleziony",AJAX_NOT_FOUND:"Żądanie AJAX nie powiodło się: brak właściwego zasobu",AJAX_FORBIDDEN:"Żądanie AJAX nie powiodło się: braku dostępu",IFRAME_ERROR:"Nie udało się załadować poprawnie tej strony",TOGGLE_ZOOM:"Zbliż/oddal",TOGGLE_THUMBS:"Wyświetl/ukryj miniatury",TOGGLE_SLIDESHOW:"Włącz/wyłącz pokaz slajdów",TOGGLE_FULLSCREEN:"Włącz/wyłącz tryb pełnego ekranu",DOWNLOAD:"Pobierz"};o.pl=e})); 2 | -------------------------------------------------------------------------------- /dist/fancybox/l10n/sk.esm.js: -------------------------------------------------------------------------------- 1 | const a={PANUP:"Posunúť hore",PANDOWN:"Posunúť dole",PANLEFT:"Posunúť vľavo",PANRIGHT:"Posunúť vpravo",ZOOMIN:"Priblížiť",ZOOMOUT:"Oddialiť",TOGGLEZOOM:"Prepnúť úroveň priblíženia",TOGGLE1TO1:"Prepnúť úroveň priblíženia",ITERATEZOOM:"Prepnúť úroveň priblíženia",ROTATECCW:"Otočiť doľava",ROTATECW:"Otočiť doprava",FLIPX:"Prevrátiť vodorovne",FLIPY:"Prevrátiť zvisle",FITX:"Prispôsobiť na šírku",FITY:"Prispôsobiť na výšku",RESET:"Resetovať",TOGGLEFS:"Režim celej obrazovky",CLOSE:"Zavrieť",NEXT:"Ďalší",PREV:"Predchádzajúci",MODAL:"Môžete zavrieť toto okno klávesou ESC",ERROR:"Nastala chyba. Skúste to, prosím, znovu",IMAGE_ERROR:"Obrázok sa nenašiel",ELEMENT_NOT_FOUND:"HTML element sa nenašiel",AJAX_NOT_FOUND:"Chyba načítania: nenájdené",AJAX_FORBIDDEN:"Chyba načítania: zamietnuté",IFRAME_ERROR:"Chyba načítania stránky",TOGGLE_ZOOM:"Prepnúť úroveň priblíženia",TOGGLE_THUMBS:"Zobraziť/skryť miniatúry",TOGGLE_SLIDESHOW:"Spustiť/zastaviť automatické prehrávanie",TOGGLE_FULLSCREEN:"Režim celej obrazovky",DOWNLOAD:"Stiahnuť"};export{a as sk}; 2 | -------------------------------------------------------------------------------- /dist/fancybox/l10n/sk.umd.js: -------------------------------------------------------------------------------- 1 | !function(e,a){"object"==typeof exports&&"undefined"!=typeof module?a(exports):"function"==typeof define&&define.amd?define(["exports"],a):a(((e="undefined"!=typeof globalThis?globalThis:e||self).Fancybox=e.Fancybox||{},e.Fancybox.l10n=e.Fancybox.l10n||{}))}(this,(function(e){"use strict";const a={PANUP:"Posunúť hore",PANDOWN:"Posunúť dole",PANLEFT:"Posunúť vľavo",PANRIGHT:"Posunúť vpravo",ZOOMIN:"Priblížiť",ZOOMOUT:"Oddialiť",TOGGLEZOOM:"Prepnúť úroveň priblíženia",TOGGLE1TO1:"Prepnúť úroveň priblíženia",ITERATEZOOM:"Prepnúť úroveň priblíženia",ROTATECCW:"Otočiť doľava",ROTATECW:"Otočiť doprava",FLIPX:"Prevrátiť vodorovne",FLIPY:"Prevrátiť zvisle",FITX:"Prispôsobiť na šírku",FITY:"Prispôsobiť na výšku",RESET:"Resetovať",TOGGLEFS:"Režim celej obrazovky",CLOSE:"Zavrieť",NEXT:"Ďalší",PREV:"Predchádzajúci",MODAL:"Môžete zavrieť toto okno klávesou ESC",ERROR:"Nastala chyba. Skúste to, prosím, znovu",IMAGE_ERROR:"Obrázok sa nenašiel",ELEMENT_NOT_FOUND:"HTML element sa nenašiel",AJAX_NOT_FOUND:"Chyba načítania: nenájdené",AJAX_FORBIDDEN:"Chyba načítania: zamietnuté",IFRAME_ERROR:"Chyba načítania stránky",TOGGLE_ZOOM:"Prepnúť úroveň priblíženia",TOGGLE_THUMBS:"Zobraziť/skryť miniatúry",TOGGLE_SLIDESHOW:"Spustiť/zastaviť automatické prehrávanie",TOGGLE_FULLSCREEN:"Režim celej obrazovky",DOWNLOAD:"Stiahnuť"};e.sk=a})); 2 | -------------------------------------------------------------------------------- /dist/fancybox/l10n/zh_CN.esm.js: -------------------------------------------------------------------------------- 1 | const O={PANUP:"上移",PANDOWN:"下移",PANLEFT:"左移",PANRIGHT:"右移",ZOOMIN:"放大",ZOOMOUT:"缩小",TOGGLEZOOM:"切换缩放级别",TOGGLE1TO1:"切换缩放级别",ITERATEZOOM:"切换缩放级别",ROTATECCW:"逆时针旋转",ROTATECW:"顺时针旋转",FLIPX:"水平翻转",FLIPY:"垂直翻转",FITX:"水平适应",FITY:"垂直适应",RESET:"重置",TOGGLEFS:"切换全屏",CLOSE:"关闭",NEXT:"上一个",PREV:"下一个",MODAL:"使用 ESC 键关闭",ERROR:"发生了错误,请稍后再试",IMAGE_ERROR:"找不到图像",ELEMENT_NOT_FOUND:"找不到 HTML 元素",AJAX_NOT_FOUND:"载入 AJAX 时出错: 未找到",AJAX_FORBIDDEN:"载入 AJAX 时出错: 被阻止",IFRAME_ERROR:"加载页面出错",TOGGLE_ZOOM:"切换缩放级别",TOGGLE_THUMBS:"切换缩略图",TOGGLE_SLIDESHOW:"切换幻灯片",TOGGLE_FULLSCREEN:"切换全屏",DOWNLOAD:"下载"};export{O as zh_CN}; 2 | -------------------------------------------------------------------------------- /dist/fancybox/l10n/zh_CN.umd.js: -------------------------------------------------------------------------------- 1 | !function(O,E){"object"==typeof exports&&"undefined"!=typeof module?E(exports):"function"==typeof define&&define.amd?define(["exports"],E):E(((O="undefined"!=typeof globalThis?globalThis:O||self).Fancybox=O.Fancybox||{},O.Fancybox.l10n=O.Fancybox.l10n||{}))}(this,(function(O){"use strict";const E={PANUP:"上移",PANDOWN:"下移",PANLEFT:"左移",PANRIGHT:"右移",ZOOMIN:"放大",ZOOMOUT:"缩小",TOGGLEZOOM:"切换缩放级别",TOGGLE1TO1:"切换缩放级别",ITERATEZOOM:"切换缩放级别",ROTATECCW:"逆时针旋转",ROTATECW:"顺时针旋转",FLIPX:"水平翻转",FLIPY:"垂直翻转",FITX:"水平适应",FITY:"垂直适应",RESET:"重置",TOGGLEFS:"切换全屏",CLOSE:"关闭",NEXT:"上一个",PREV:"下一个",MODAL:"使用 ESC 键关闭",ERROR:"发生了错误,请稍后再试",IMAGE_ERROR:"找不到图像",ELEMENT_NOT_FOUND:"找不到 HTML 元素",AJAX_NOT_FOUND:"载入 AJAX 时出错: 未找到",AJAX_FORBIDDEN:"载入 AJAX 时出错: 被阻止",IFRAME_ERROR:"加载页面出错",TOGGLE_ZOOM:"切换缩放级别",TOGGLE_THUMBS:"切换缩略图",TOGGLE_SLIDESHOW:"切换幻灯片",TOGGLE_FULLSCREEN:"切换全屏",DOWNLOAD:"下载"};O.zh_CN=E})); 2 | -------------------------------------------------------------------------------- /dist/panzoom/l10n/cs.esm.js: -------------------------------------------------------------------------------- 1 | const o={PANUP:"Posunout nahoru",PANDOWN:"Posunout dolů",PANLEFT:"Posunout vlevo",PANRIGHT:"Posunout vpravo",ZOOMIN:"Přiblížit",ZOOMOUT:"Oddálit",TOGGLEZOOM:"Přepnout úroveň přiblížení",TOGGLE1TO1:"Přepnout úroveň přiblížení",ITERATEZOOM:"Přepnout úroveň přiblížení",ROTATECCW:"Otočit směrem vlevo",ROTATECW:"Otočit směrem vpravo",FLIPX:"Převrátit vodorovně",FLIPY:"Převrátit svisle",FITX:"Přizpůsobit na šířku",FITY:"Přizpůsobit na výšku",RESET:"Resetovat",TOGGLEFS:"Režim celé obrazovky"};export{o as cs}; 2 | -------------------------------------------------------------------------------- /dist/panzoom/l10n/cs.umd.js: -------------------------------------------------------------------------------- 1 | !function(o,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e(((o="undefined"!=typeof globalThis?globalThis:o||self).Panzoom=o.Panzoom||{},o.Panzoom.l10n=o.Panzoom.l10n||{}))}(this,(function(o){"use strict";o.cs={PANUP:"Posunout nahoru",PANDOWN:"Posunout dolů",PANLEFT:"Posunout vlevo",PANRIGHT:"Posunout vpravo",ZOOMIN:"Přiblížit",ZOOMOUT:"Oddálit",TOGGLEZOOM:"Přepnout úroveň přiblížení",TOGGLE1TO1:"Přepnout úroveň přiblížení",ITERATEZOOM:"Přepnout úroveň přiblížení",ROTATECCW:"Otočit směrem vlevo",ROTATECW:"Otočit směrem vpravo",FLIPX:"Převrátit vodorovně",FLIPY:"Převrátit svisle",FITX:"Přizpůsobit na šířku",FITY:"Přizpůsobit na výšku",RESET:"Resetovat",TOGGLEFS:"Režim celé obrazovky"}})); 2 | -------------------------------------------------------------------------------- /dist/panzoom/l10n/de.esm.js: -------------------------------------------------------------------------------- 1 | const e={PANUP:"Aufwärts bewegen",PANDOWN:"Nach unten bewegen",PANLEFT:"Nach links bewegen",PANRIGHT:"Nach rechts bewegen",ZOOMIN:"Vergrößern",ZOOMOUT:"Verkleinern",TOGGLEZOOM:"Zoomstufe umschalten",TOGGLE1TO1:"Zoomstufe umschalten",ITERATEZOOM:"Zoomstufe umschalten",ROTATECCW:"Gegen den Uhrzeigersinn drehen",ROTATECW:"Im Uhrzeigersinn drehen",FLIPX:"Horizontal spiegeln",FLIPY:"Vertikal spiegeln",FITX:"Horizontal einpassen",FITY:"Vertikal anpassen",RESET:"Zurücksetzen",TOGGLEFS:"Vollbild umschalten"};export{e as de}; 2 | -------------------------------------------------------------------------------- /dist/panzoom/l10n/de.umd.js: -------------------------------------------------------------------------------- 1 | !function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n(((e="undefined"!=typeof globalThis?globalThis:e||self).Panzoom=e.Panzoom||{},e.Panzoom.l10n=e.Panzoom.l10n||{}))}(this,(function(e){"use strict";e.de={PANUP:"Aufwärts bewegen",PANDOWN:"Nach unten bewegen",PANLEFT:"Nach links bewegen",PANRIGHT:"Nach rechts bewegen",ZOOMIN:"Vergrößern",ZOOMOUT:"Verkleinern",TOGGLEZOOM:"Zoomstufe umschalten",TOGGLE1TO1:"Zoomstufe umschalten",ITERATEZOOM:"Zoomstufe umschalten",ROTATECCW:"Gegen den Uhrzeigersinn drehen",ROTATECW:"Im Uhrzeigersinn drehen",FLIPX:"Horizontal spiegeln",FLIPY:"Vertikal spiegeln",FITX:"Horizontal einpassen",FITY:"Vertikal anpassen",RESET:"Zurücksetzen",TOGGLEFS:"Vollbild umschalten"}})); 2 | -------------------------------------------------------------------------------- /dist/panzoom/l10n/en.esm.js: -------------------------------------------------------------------------------- 1 | const o={PANUP:"Move up",PANDOWN:"Move down",PANLEFT:"Move left",PANRIGHT:"Move right",ZOOMIN:"Zoom in",ZOOMOUT:"Zoom out",TOGGLEZOOM:"Toggle zoom level",TOGGLE1TO1:"Toggle zoom level",ITERATEZOOM:"Toggle zoom level",ROTATECCW:"Rotate counterclockwise",ROTATECW:"Rotate clockwise",FLIPX:"Flip horizontally",FLIPY:"Flip vertically",FITX:"Fit horizontally",FITY:"Fit vertically",RESET:"Reset",TOGGLEFS:"Toggle fullscreen"};export{o as en}; 2 | -------------------------------------------------------------------------------- /dist/panzoom/l10n/en.umd.js: -------------------------------------------------------------------------------- 1 | !function(o,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e(((o="undefined"!=typeof globalThis?globalThis:o||self).Panzoom=o.Panzoom||{},o.Panzoom.l10n=o.Panzoom.l10n||{}))}(this,(function(o){"use strict";o.en={PANUP:"Move up",PANDOWN:"Move down",PANLEFT:"Move left",PANRIGHT:"Move right",ZOOMIN:"Zoom in",ZOOMOUT:"Zoom out",TOGGLEZOOM:"Toggle zoom level",TOGGLE1TO1:"Toggle zoom level",ITERATEZOOM:"Toggle zoom level",ROTATECCW:"Rotate counterclockwise",ROTATECW:"Rotate clockwise",FLIPX:"Flip horizontally",FLIPY:"Flip vertically",FITX:"Fit horizontally",FITY:"Fit vertically",RESET:"Reset",TOGGLEFS:"Toggle fullscreen"}})); 2 | -------------------------------------------------------------------------------- /dist/panzoom/l10n/es.esm.js: -------------------------------------------------------------------------------- 1 | const a={PANUP:"Mover hacia arriba",PANDOWN:"Mover hacia abajo",PANLEFT:"Mover hacia la izquierda",PANRIGHT:"Mover hacia la derecha",ZOOMIN:"Mover a la derecha",ZOOMOUT:"Disminuir el zoom",TOGGLEZOOM:"Alternar nivel de zoom",TOGGLE1TO1:"Alternar nivel de zoom",ITERATEZOOM:"Alternar nivel de zoom",ROTATECCW:"Girar en sentido antihorario",ROTATECW:"Rotar las agujas del reloj",FLIPX:"Voltear horizontalmente",FLIPY:"Voltear verticalmente",FITX:"Ajustar horizontalmente",FITY:"Ajustar verticalmente",RESET:"Reiniciar",TOGGLEFS:"Alternar pantalla completa"};export{a as es}; 2 | -------------------------------------------------------------------------------- /dist/panzoom/l10n/es.umd.js: -------------------------------------------------------------------------------- 1 | !function(e,a){"object"==typeof exports&&"undefined"!=typeof module?a(exports):"function"==typeof define&&define.amd?define(["exports"],a):a(((e="undefined"!=typeof globalThis?globalThis:e||self).Panzoom=e.Panzoom||{},e.Panzoom.l10n=e.Panzoom.l10n||{}))}(this,(function(e){"use strict";e.es={PANUP:"Mover hacia arriba",PANDOWN:"Mover hacia abajo",PANLEFT:"Mover hacia la izquierda",PANRIGHT:"Mover hacia la derecha",ZOOMIN:"Mover a la derecha",ZOOMOUT:"Disminuir el zoom",TOGGLEZOOM:"Alternar nivel de zoom",TOGGLE1TO1:"Alternar nivel de zoom",ITERATEZOOM:"Alternar nivel de zoom",ROTATECCW:"Girar en sentido antihorario",ROTATECW:"Rotar las agujas del reloj",FLIPX:"Voltear horizontalmente",FLIPY:"Voltear verticalmente",FITX:"Ajustar horizontalmente",FITY:"Ajustar verticalmente",RESET:"Reiniciar",TOGGLEFS:"Alternar pantalla completa"}})); 2 | -------------------------------------------------------------------------------- /dist/panzoom/l10n/fr.esm.js: -------------------------------------------------------------------------------- 1 | const e={PANUP:"Déplacer vers le haut",PANDOWN:"Déplacer vers le bas",PANLEFT:"Déplacer vers la gauche",PANRIGHT:"Déplacer vers la droite",ZOOMIN:"Zoom avant",ZOOMOUT:"Zoom arrière",TOGGLEZOOM:"Basculer le niveau de zoom",TOGGLE1TO1:"Basculer le niveau de zoom",ITERATEZOOM:"Basculer le niveau de zoom",ROTATECCW:"Tourner dans le sens antihoraire",ROTATECW:"Le sens des aiguilles d'une montre",FLIPX:"Retourner horizontalement",FLIPY:"Retourner verticalement",FITX:"Ajuster horizontalement",FITY:"Ajuster verticalement",RESET:"Réinitialiser",TOGGLEFS:"Basculer en plein écran"};export{e as fr}; 2 | -------------------------------------------------------------------------------- /dist/panzoom/l10n/fr.umd.js: -------------------------------------------------------------------------------- 1 | !function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n(((e="undefined"!=typeof globalThis?globalThis:e||self).Panzoom=e.Panzoom||{},e.Panzoom.l10n=e.Panzoom.l10n||{}))}(this,(function(e){"use strict";e.fr={PANUP:"Déplacer vers le haut",PANDOWN:"Déplacer vers le bas",PANLEFT:"Déplacer vers la gauche",PANRIGHT:"Déplacer vers la droite",ZOOMIN:"Zoom avant",ZOOMOUT:"Zoom arrière",TOGGLEZOOM:"Basculer le niveau de zoom",TOGGLE1TO1:"Basculer le niveau de zoom",ITERATEZOOM:"Basculer le niveau de zoom",ROTATECCW:"Tourner dans le sens antihoraire",ROTATECW:"Le sens des aiguilles d'une montre",FLIPX:"Retourner horizontalement",FLIPY:"Retourner verticalement",FITX:"Ajuster horizontalement",FITY:"Ajuster verticalement",RESET:"Réinitialiser",TOGGLEFS:"Basculer en plein écran"}})); 2 | -------------------------------------------------------------------------------- /dist/panzoom/l10n/it.esm.js: -------------------------------------------------------------------------------- 1 | const i={PANUP:"Sposta su",PANDOWN:"Sposta giù",PANLEFT:"Sposta a sinistra",PANRIGHT:"Sposta a destra",ZOOMIN:"Ingrandisci",ZOOMOUT:"Rimpicciolisci",TOGGLEZOOM:"Alterna il livello di zoom",TOGGLE1TO1:"Alterna il livello di zoom",ITERATEZOOM:"Attiva/disattiva livello di zoom",ROTATECCW:"Ruota in senso antiorario",ROTATECW:"Ruota in senso orario",FLIPX:"Capovolgi orizzontalmente",FLIPY:"Capovolgi verticalmente",FITX:"Adatta orizzontalmente",FITY:"Adatta verticalmente",RESET:"Reimposta",TOGGLEFS:"Attiva/disattiva schermo intero"};export{i as it}; 2 | -------------------------------------------------------------------------------- /dist/panzoom/l10n/it.umd.js: -------------------------------------------------------------------------------- 1 | !function(o,i){"object"==typeof exports&&"undefined"!=typeof module?i(exports):"function"==typeof define&&define.amd?define(["exports"],i):i(((o="undefined"!=typeof globalThis?globalThis:o||self).Panzoom=o.Panzoom||{},o.Panzoom.l10n=o.Panzoom.l10n||{}))}(this,(function(o){"use strict";o.it={PANUP:"Sposta su",PANDOWN:"Sposta giù",PANLEFT:"Sposta a sinistra",PANRIGHT:"Sposta a destra",ZOOMIN:"Ingrandisci",ZOOMOUT:"Rimpicciolisci",TOGGLEZOOM:"Alterna il livello di zoom",TOGGLE1TO1:"Alterna il livello di zoom",ITERATEZOOM:"Attiva/disattiva livello di zoom",ROTATECCW:"Ruota in senso antiorario",ROTATECW:"Ruota in senso orario",FLIPX:"Capovolgi orizzontalmente",FLIPY:"Capovolgi verticalmente",FITX:"Adatta orizzontalmente",FITY:"Adatta verticalmente",RESET:"Reimposta",TOGGLEFS:"Attiva/disattiva schermo intero"}})); 2 | -------------------------------------------------------------------------------- /dist/panzoom/l10n/ja.esm.js: -------------------------------------------------------------------------------- 1 | const O={PANUP:"上に移動",PANDOWN:"下に移動",PANLEFT:"左に移動",PANRIGHT:"右に動く",ZOOMIN:"ズームイン",ZOOMOUT:"ズームアウトする",TOGGLEZOOM:"ズーム レベルの切り替え",TOGGLE1TO1:"ズーム レベルの切り替え",ITERATEZOOM:"ズーム レベルの切り替え",ROTATECCW:"反時計回りに回転",ROTATECW:"時計回りに回転します",FLIPX:"左右反転",FLIPY:"上下反転",FITX:"水平に合わせる",FITY:"縦に合わせる",RESET:"リセット",TOGGLEFS:"フルスクリーン切り替え"};export{O as ja}; 2 | -------------------------------------------------------------------------------- /dist/panzoom/l10n/ja.umd.js: -------------------------------------------------------------------------------- 1 | !function(o,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e(((o="undefined"!=typeof globalThis?globalThis:o||self).Panzoom=o.Panzoom||{},o.Panzoom.l10n=o.Panzoom.l10n||{}))}(this,(function(o){"use strict";o.ja={PANUP:"上に移動",PANDOWN:"下に移動",PANLEFT:"左に移動",PANRIGHT:"右に動く",ZOOMIN:"ズームイン",ZOOMOUT:"ズームアウトする",TOGGLEZOOM:"ズーム レベルの切り替え",TOGGLE1TO1:"ズーム レベルの切り替え",ITERATEZOOM:"ズーム レベルの切り替え",ROTATECCW:"反時計回りに回転",ROTATECW:"時計回りに回転します",FLIPX:"左右反転",FLIPY:"上下反転",FITX:"水平に合わせる",FITY:"縦に合わせる",RESET:"リセット",TOGGLEFS:"フルスクリーン切り替え"}})); 2 | -------------------------------------------------------------------------------- /dist/panzoom/l10n/lv.esm.js: -------------------------------------------------------------------------------- 1 | const t={PANUP:"Bīdīt uz augšu",PANDOWN:"Bīdīt uz leju",PANLEFT:"Bīdīt pa kreisi",PANRIGHT:"Bīdīt pa labi",ZOOMIN:"Pietuvināt",ZOOMOUT:"Attālināt",TOGGLEZOOM:"Pārslēgt tālummaiņas līmeni",TOGGLE1TO1:"Pārslēgt tālummaiņas līmeni",ITERATEZOOM:"Pārslēgt tālummaiņas līmeni",ROTATECCW:"Pagrieziet pretēji pulksteņrādītāja virzienam",ROTATECW:"Pagrieziet pulksteņrādītāja virzienā",FLIPX:"Apgriezt horizontāli",FLIPY:"Apgriezt vertikāli",FITX:"Ietilpināt horizontāli",FITY:"Ietilpināt vertikāli",RESET:"Atiestatīt",TOGGLEFS:"Pārslēgt pilnekrāna režīmu"};export{t as lv}; 2 | -------------------------------------------------------------------------------- /dist/panzoom/l10n/lv.umd.js: -------------------------------------------------------------------------------- 1 | !function(t,i){"object"==typeof exports&&"undefined"!=typeof module?i(exports):"function"==typeof define&&define.amd?define(["exports"],i):i(((t="undefined"!=typeof globalThis?globalThis:t||self).Panzoom=t.Panzoom||{},t.Panzoom.l10n=t.Panzoom.l10n||{}))}(this,(function(t){"use strict";t.lv={PANUP:"Bīdīt uz augšu",PANDOWN:"Bīdīt uz leju",PANLEFT:"Bīdīt pa kreisi",PANRIGHT:"Bīdīt pa labi",ZOOMIN:"Pietuvināt",ZOOMOUT:"Attālināt",TOGGLEZOOM:"Pārslēgt tālummaiņas līmeni",TOGGLE1TO1:"Pārslēgt tālummaiņas līmeni",ITERATEZOOM:"Pārslēgt tālummaiņas līmeni",ROTATECCW:"Pagrieziet pretēji pulksteņrādītāja virzienam",ROTATECW:"Pagrieziet pulksteņrādītāja virzienā",FLIPX:"Apgriezt horizontāli",FLIPY:"Apgriezt vertikāli",FITX:"Ietilpināt horizontāli",FITY:"Ietilpināt vertikāli",RESET:"Atiestatīt",TOGGLEFS:"Pārslēgt pilnekrāna režīmu"}})); 2 | -------------------------------------------------------------------------------- /dist/panzoom/l10n/pl.esm.js: -------------------------------------------------------------------------------- 1 | const O={PANUP:"Przesuń w górę",PANDOWN:"Przesuń w dół",PANLEFT:"Przesuń w lewo",PANRIGHT:"Przesuń w prawo",ZOOMIN:"Zbliż",ZOOMOUT:"Oddal",TOGGLEZOOM:"Zbliż/oddal",TOGGLE1TO1:"Zmieść/skala 1:1",ITERATEZOOM:"Zbliż/oddal",ROTATECCW:"Obróć w lewo",ROTATECW:"Obróć w prawo",FLIPX:"Obróć w poziomie",FLIPY:"Obróć w pionie",FITX:"Dopasuj do szerokości ekranu",FITY:"Dopasuj do wysokości ekranu",RESET:"Resetuj",TOGGLEFS:"Włącz/wyłącz tryb pełnego ekranu"};export{O as pl}; 2 | -------------------------------------------------------------------------------- /dist/panzoom/l10n/pl.umd.js: -------------------------------------------------------------------------------- 1 | !function(o,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e(((o="undefined"!=typeof globalThis?globalThis:o||self).Panzoom=o.Panzoom||{},o.Panzoom.l10n=o.Panzoom.l10n||{}))}(this,(function(o){"use strict";o.pl={PANUP:"Przesuń w górę",PANDOWN:"Przesuń w dół",PANLEFT:"Przesuń w lewo",PANRIGHT:"Przesuń w prawo",ZOOMIN:"Zbliż",ZOOMOUT:"Oddal",TOGGLEZOOM:"Zbliż/oddal",TOGGLE1TO1:"Zmieść/skala 1:1",ITERATEZOOM:"Zbliż/oddal",ROTATECCW:"Obróć w lewo",ROTATECW:"Obróć w prawo",FLIPX:"Obróć w poziomie",FLIPY:"Obróć w pionie",FITX:"Dopasuj do szerokości ekranu",FITY:"Dopasuj do wysokości ekranu",RESET:"Resetuj",TOGGLEFS:"Włącz/wyłącz tryb pełnego ekranu"}})); 2 | -------------------------------------------------------------------------------- /dist/panzoom/l10n/sk.esm.js: -------------------------------------------------------------------------------- 1 | const o={PANUP:"Posunúť hore",PANDOWN:"Posunúť dole",PANLEFT:"Posunúť vľavo",PANRIGHT:"Posunúť vpravo",ZOOMIN:"Priblížiť",ZOOMOUT:"Oddialiť",TOGGLEZOOM:"Prepnúť úroveň priblíženia",TOGGLE1TO1:"Prepnúť úroveň priblíženia",ITERATEZOOM:"Prepnúť úroveň priblíženia",ROTATECCW:"Otočiť doľava",ROTATECW:"Otočiť doprava",FLIPX:"Prevrátiť vodorovne",FLIPY:"Prevrátiť zvisle",FITX:"Prispôsobiť na šírku",FITY:"Prispôsobiť na výšku",RESET:"Resetovať",TOGGLEFS:"Režim celej obrazovky"};export{o as sk}; 2 | -------------------------------------------------------------------------------- /dist/panzoom/l10n/sk.umd.js: -------------------------------------------------------------------------------- 1 | !function(o,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e(((o="undefined"!=typeof globalThis?globalThis:o||self).Panzoom=o.Panzoom||{},o.Panzoom.l10n=o.Panzoom.l10n||{}))}(this,(function(o){"use strict";o.sk={PANUP:"Posunúť hore",PANDOWN:"Posunúť dole",PANLEFT:"Posunúť vľavo",PANRIGHT:"Posunúť vpravo",ZOOMIN:"Priblížiť",ZOOMOUT:"Oddialiť",TOGGLEZOOM:"Prepnúť úroveň priblíženia",TOGGLE1TO1:"Prepnúť úroveň priblíženia",ITERATEZOOM:"Prepnúť úroveň priblíženia",ROTATECCW:"Otočiť doľava",ROTATECW:"Otočiť doprava",FLIPX:"Prevrátiť vodorovne",FLIPY:"Prevrátiť zvisle",FITX:"Prispôsobiť na šírku",FITY:"Prispôsobiť na výšku",RESET:"Resetovať",TOGGLEFS:"Režim celej obrazovky"}})); 2 | -------------------------------------------------------------------------------- /dist/panzoom/l10n/zh_CN.esm.js: -------------------------------------------------------------------------------- 1 | const O={PANUP:"上移",PANDOWN:"下移",PANLEFT:"左移",PANRIGHT:"右移",ZOOMIN:"放大",ZOOMOUT:"缩小",TOGGLEZOOM:"切换缩放级别",TOGGLE1TO1:"切换缩放级别",ITERATEZOOM:"切换缩放级别",ROTATECCW:"逆时针旋转",ROTATECW:"顺时针旋转",FLIPX:"水平翻转",FLIPY:"垂直翻转",FITX:"水平适应",FITY:"垂直适应",RESET:"重置",TOGGLEFS:"切换全屏"};export{O as zh_CN}; 2 | -------------------------------------------------------------------------------- /dist/panzoom/l10n/zh_CN.umd.js: -------------------------------------------------------------------------------- 1 | !function(o,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e(((o="undefined"!=typeof globalThis?globalThis:o||self).Panzoom=o.Panzoom||{},o.Panzoom.l10n=o.Panzoom.l10n||{}))}(this,(function(o){"use strict";o.zh_CN={PANUP:"上移",PANDOWN:"下移",PANLEFT:"左移",PANRIGHT:"右移",ZOOMIN:"放大",ZOOMOUT:"缩小",TOGGLEZOOM:"切换缩放级别",TOGGLE1TO1:"切换缩放级别",ITERATEZOOM:"切换缩放级别",ROTATECCW:"逆时针旋转",ROTATECW:"顺时针旋转",FLIPX:"水平翻转",FLIPY:"垂直翻转",FITX:"水平适应",FITY:"垂直适应",RESET:"重置",TOGGLEFS:"切换全屏"}})); 2 | -------------------------------------------------------------------------------- /dist/panzoom/panzoom.css: -------------------------------------------------------------------------------- 1 | :root{--f-spinner-width: 36px;--f-spinner-height: 36px;--f-spinner-color-1: rgba(0, 0, 0, 0.1);--f-spinner-color-2: rgba(17, 24, 28, 0.8);--f-spinner-stroke: 2.75}.f-spinner{margin:auto;padding:0;width:var(--f-spinner-width);height:var(--f-spinner-height)}.f-spinner svg{width:100%;height:100%;vertical-align:top;animation:f-spinner-rotate 2s linear infinite}.f-spinner svg *{stroke-width:var(--f-spinner-stroke);fill:none}.f-spinner svg *:first-child{stroke:var(--f-spinner-color-1)}.f-spinner svg *:last-child{stroke:var(--f-spinner-color-2);animation:f-spinner-dash 2s ease-in-out infinite}@keyframes f-spinner-rotate{100%{transform:rotate(360deg)}}@keyframes f-spinner-dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}100%{stroke-dasharray:90,150;stroke-dashoffset:-124}}.f-panzoom{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;align-items:center;transform:translate3d(0, 0, 0);background:#fff}.f-panzoom.is-draggable{cursor:move;cursor:grab}.f-panzoom.can-zoom_in{cursor:zoom-in}.f-panzoom.can-zoom_out{cursor:zoom-out}.f-panzoom.is-dragging{cursor:move;cursor:grabbing}.f-panzoom.in-fullscreen{position:fixed;top:0;left:0;margin:0 !important;width:100% !important;height:100% !important;max-width:none !important;max-height:none !important;aspect-ratio:unset !important;z-index:9999}.f-panzoom__content{display:block;margin:auto;position:relative;max-width:100%;max-height:100%;min-height:0;object-fit:contain;transform:translate3d(0, 0, 0) scale(1) rotate(0) skew(0);transform-origin:center center;transition:none;-webkit-user-select:none;user-select:none}.is-loading .f-panzoom__content{display:none}.is-scaling .f-panzoom__content{filter:blur(0px);will-change:transform,width,height;backface-visibility:hidden}picture.f-panzoom__content>img{width:100%;height:auto;max-height:100%}.f-panzoom__content:not(:last-child){margin-bottom:0}.f-panzoom__viewport{margin:auto;position:relative;width:fit-content;height:fit-content;min-height:1px}.f-panzoom__viewport:not(:last-child){margin-bottom:0}.f-panzoom__caption:not(:first-child){margin-bottom:auto}html.with-panzoom-in-fullscreen{overflow:hidden} -------------------------------------------------------------------------------- /dist/panzoom/panzoom.pins.css: -------------------------------------------------------------------------------- 1 | .f-panzoom{--f-panzoom-pin-width: 24px;--f-panzoom-pin-height: 24px;--f-panzoom-pin-color: red}[data-panzoom-pin]{position:absolute;top:50%;left:50%;width:0;height:0;z-index:1}.is-loading [data-panzoom-pin]{display:none}[data-panzoom-pin]>*{transform:translate(-50%, -100%);width:var(--f-panzoom-pin-width, 24px);height:var(--f-panzoom-pin-height, 24px);display:flex;align-items:flex-end;justify-content:center}[data-panzoom-pin] svg{width:100%;height:100%;fill:var(--f-panzoom-pin-color);pointer-events:none} -------------------------------------------------------------------------------- /dist/panzoom/panzoom.pins.esm.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../types/Panzoom/plugins/Pins/Pins"; -------------------------------------------------------------------------------- /dist/panzoom/panzoom.pins.esm.js: -------------------------------------------------------------------------------- 1 | const t=(e,...s)=>{const n=s.length;for(let r=0;r{const r=Array.isArray(n)?[]:{};var i;e[s]||Object.assign(e,{[s]:r}),"object"==typeof(i=n)&&null!==i&&i.constructor===Object&&"[object Object]"===Object.prototype.toString.call(i)?Object.assign(e[s],t(r,n)):Array.isArray(n)?Object.assign(e,{[s]:[...n]}):Object.assign(e,{[s]:n})}))}return e},e=function(t,e){return t.split(".").reduce(((t,e)=>"object"==typeof t?t[e]:void 0),e)};class s{constructor(t={}){Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"events",{enumerable:!0,configurable:!0,writable:!0,value:new Map}),this.setOptions(t);for(const t of Object.getOwnPropertyNames(Object.getPrototypeOf(this)))t.startsWith("on")&&"function"==typeof this[t]&&(this[t]=this[t].bind(this))}setOptions(e){this.options=e?t({},this.constructor.defaults,e):{};for(const[t,e]of Object.entries(this.option("on")||{}))this.on(t,e)}option(t,...s){let n=e(t,this.options);return n&&"function"==typeof n&&(n=n.call(this,this,...s)),n}optionFor(t,s,n,...r){let i=e(s,t);var o;"string"!=typeof(o=i)||isNaN(o)||isNaN(parseFloat(o))||(i=parseFloat(i)),"true"===i&&(i=!0),"false"===i&&(i=!1),i&&"function"==typeof i&&(i=i.call(this,this,t,...r));let a=e(s,this.options);return a&&"function"==typeof a?i=a.call(this,this,t,...r,i):void 0===i&&(i=a),void 0===i?n:i}cn(t){const e=this.options.classes;return e&&e[t]||""}localize(t,e=[]){t=String(t).replace(/\{\{(\w+).?(\w+)?\}\}/g,((t,e,s)=>{let n="";return s?n=this.option(`${e[0]+e.toLowerCase().substring(1)}.l10n.${s}`):e&&(n=this.option(`l10n.${e}`)),n||(n=t),n}));for(let s=0;se))}on(t,e){let s=[];"string"==typeof t?s=t.split(" "):Array.isArray(t)&&(s=t),this.events||(this.events=new Map),s.forEach((t=>{let s=this.events.get(t);s||(this.events.set(t,[]),s=[]),s.includes(e)||s.push(e),this.events.set(t,s)}))}off(t,e){let s=[];"string"==typeof t?s=t.split(" "):Array.isArray(t)&&(s=t),s.forEach((t=>{const s=this.events.get(t);if(Array.isArray(s)){const t=s.indexOf(e);t>-1&&s.splice(t,1)}}))}emit(t,...e){[...this.events.get(t)||[]].forEach((t=>t(this,...e))),"*"!==t&&this.emit("*",t,...e)}}Object.defineProperty(s,"version",{enumerable:!0,configurable:!0,writable:!0,value:"5.0.36"}),Object.defineProperty(s,"defaults",{enumerable:!0,configurable:!0,writable:!0,value:{}});class n extends s{constructor(t,e){super(e),Object.defineProperty(this,"instance",{enumerable:!0,configurable:!0,writable:!0,value:t})}attach(){}detach(){}}class r extends n{constructor(){super(...arguments),Object.defineProperty(this,"container",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,"pins",{enumerable:!0,configurable:!0,writable:!0,value:[]})}onTransform(t){for(const s of this.pins){if(!((e=s)&&null!==e&&e instanceof Element&&"nodeType"in e))continue;const{fitWidth:n,fitHeight:r,fullWidth:i,fullHeight:o}=t.contentRect,a=s.dataset.x||"",l=s.dataset.y||"";let c=0,f=0;c=a.includes("%")?n*(parseFloat(a)/100):parseFloat(a)/i*n,c-=.5*n,f=l.includes("%")?r*(parseFloat(l)/100):parseFloat(l)/o*r,f-=.5*r;const h=new DOMPoint(c,f).matrixTransform(t.getMatrix());s.style.transform=`translate3d(${h.x||0}px, ${h.y||0}px, 0)`}var e}attach(){const t=this.instance;this.pins=Array.from(t.container.querySelectorAll("[data-panzoom-pin]")),this.pins.length&&(t.container.classList.add("has-pins"),t.on(["afterTransform","refresh"],this.onTransform))}detach(){const t=this.instance;this.pins=[],t.container.classList.remove("has-pins"),t.off(["afterTransform","refresh"],this.onTransform)}}Object.defineProperty(r,"defaults",{enumerable:!0,configurable:!0,writable:!0,value:{}});export{r as Pins}; 2 | -------------------------------------------------------------------------------- /dist/panzoom/panzoom.pins.umd.js: -------------------------------------------------------------------------------- 1 | !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).window=t.window||{})}(this,(function(t){"use strict";const e=(t,...s)=>{const n=s.length;for(let i=0;i{const i=Array.isArray(n)?[]:{};var r;t[s]||Object.assign(t,{[s]:i}),"object"==typeof(r=n)&&null!==r&&r.constructor===Object&&"[object Object]"===Object.prototype.toString.call(r)?Object.assign(t[s],e(i,n)):Array.isArray(n)?Object.assign(t,{[s]:[...n]}):Object.assign(t,{[s]:n})}))}return t},s=function(t,e){return t.split(".").reduce(((t,e)=>"object"==typeof t?t[e]:void 0),e)};class n{constructor(t={}){Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"events",{enumerable:!0,configurable:!0,writable:!0,value:new Map}),this.setOptions(t);for(const t of Object.getOwnPropertyNames(Object.getPrototypeOf(this)))t.startsWith("on")&&"function"==typeof this[t]&&(this[t]=this[t].bind(this))}setOptions(t){this.options=t?e({},this.constructor.defaults,t):{};for(const[t,e]of Object.entries(this.option("on")||{}))this.on(t,e)}option(t,...e){let n=s(t,this.options);return n&&"function"==typeof n&&(n=n.call(this,this,...e)),n}optionFor(t,e,n,...i){let r=s(e,t);var o;"string"!=typeof(o=r)||isNaN(o)||isNaN(parseFloat(o))||(r=parseFloat(r)),"true"===r&&(r=!0),"false"===r&&(r=!1),r&&"function"==typeof r&&(r=r.call(this,this,t,...i));let a=s(e,this.options);return a&&"function"==typeof a?r=a.call(this,this,t,...i,r):void 0===r&&(r=a),void 0===r?n:r}cn(t){const e=this.options.classes;return e&&e[t]||""}localize(t,e=[]){t=String(t).replace(/\{\{(\w+).?(\w+)?\}\}/g,((t,e,s)=>{let n="";return s?n=this.option(`${e[0]+e.toLowerCase().substring(1)}.l10n.${s}`):e&&(n=this.option(`l10n.${e}`)),n||(n=t),n}));for(let s=0;se))}on(t,e){let s=[];"string"==typeof t?s=t.split(" "):Array.isArray(t)&&(s=t),this.events||(this.events=new Map),s.forEach((t=>{let s=this.events.get(t);s||(this.events.set(t,[]),s=[]),s.includes(e)||s.push(e),this.events.set(t,s)}))}off(t,e){let s=[];"string"==typeof t?s=t.split(" "):Array.isArray(t)&&(s=t),s.forEach((t=>{const s=this.events.get(t);if(Array.isArray(s)){const t=s.indexOf(e);t>-1&&s.splice(t,1)}}))}emit(t,...e){[...this.events.get(t)||[]].forEach((t=>t(this,...e))),"*"!==t&&this.emit("*",t,...e)}}Object.defineProperty(n,"version",{enumerable:!0,configurable:!0,writable:!0,value:"5.0.36"}),Object.defineProperty(n,"defaults",{enumerable:!0,configurable:!0,writable:!0,value:{}});class i extends n{constructor(t,e){super(e),Object.defineProperty(this,"instance",{enumerable:!0,configurable:!0,writable:!0,value:t})}attach(){}detach(){}}class r extends i{constructor(){super(...arguments),Object.defineProperty(this,"container",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,"pins",{enumerable:!0,configurable:!0,writable:!0,value:[]})}onTransform(t){for(const s of this.pins){if(!((e=s)&&null!==e&&e instanceof Element&&"nodeType"in e))continue;const{fitWidth:n,fitHeight:i,fullWidth:r,fullHeight:o}=t.contentRect,a=s.dataset.x||"",l=s.dataset.y||"";let c=0,f=0;c=a.includes("%")?n*(parseFloat(a)/100):parseFloat(a)/r*n,c-=.5*n,f=l.includes("%")?i*(parseFloat(l)/100):parseFloat(l)/o*i,f-=.5*i;const p=new DOMPoint(c,f).matrixTransform(t.getMatrix());s.style.transform=`translate3d(${p.x||0}px, ${p.y||0}px, 0)`}var e}attach(){const t=this.instance;this.pins=Array.from(t.container.querySelectorAll("[data-panzoom-pin]")),this.pins.length&&(t.container.classList.add("has-pins"),t.on(["afterTransform","refresh"],this.onTransform))}detach(){const t=this.instance;this.pins=[],t.container.classList.remove("has-pins"),t.off(["afterTransform","refresh"],this.onTransform)}}Object.defineProperty(r,"defaults",{enumerable:!0,configurable:!0,writable:!0,value:{}}),t.Pins=r})); 2 | -------------------------------------------------------------------------------- /dist/panzoom/panzoom.toolbar.css: -------------------------------------------------------------------------------- 1 | :root{--f-button-width: 40px;--f-button-height: 40px;--f-button-border: 0;--f-button-border-radius: 0;--f-button-color: #374151;--f-button-bg: #f8f8f8;--f-button-hover-bg: #e0e0e0;--f-button-active-bg: #d0d0d0;--f-button-shadow: none;--f-button-transition: all 0.15s ease;--f-button-transform: none;--f-button-svg-width: 20px;--f-button-svg-height: 20px;--f-button-svg-stroke-width: 1.5;--f-button-svg-fill: none;--f-button-svg-filter: none;--f-button-svg-disabled-opacity: 0.65}.f-button{display:flex;justify-content:center;align-items:center;box-sizing:content-box;position:relative;margin:0;padding:0;width:var(--f-button-width);height:var(--f-button-height);border:var(--f-button-border);border-radius:var(--f-button-border-radius);color:var(--f-button-color);background:var(--f-button-bg);box-shadow:var(--f-button-shadow);pointer-events:all;cursor:pointer;transition:var(--f-button-transition)}@media(hover: hover){.f-button:hover:not([disabled]){color:var(--f-button-hover-color);background-color:var(--f-button-hover-bg)}}.f-button:active:not([disabled]){background-color:var(--f-button-active-bg)}.f-button:focus:not(:focus-visible){outline:none}.f-button:focus-visible{outline:none;box-shadow:inset 0 0 0 var(--f-button-outline, 2px) var(--f-button-outline-color, var(--f-button-color))}.f-button svg{width:var(--f-button-svg-width);height:var(--f-button-svg-height);fill:var(--f-button-svg-fill);stroke:currentColor;stroke-width:var(--f-button-svg-stroke-width);stroke-linecap:round;stroke-linejoin:round;transition:opacity .15s ease;transform:var(--f-button-transform);filter:var(--f-button-svg-filter);pointer-events:none}.f-button[disabled]{cursor:default}.f-button[disabled] svg{opacity:var(--f-button-svg-disabled-opacity)}.f-panzoom__toolbar{display:flex;justify-content:center;flex-wrap:wrap;margin:4px;padding:0;opacity:1;transition:opacity .15s ease;z-index:1}.is-idle .panzoom__toolbar{opacity:0}[data-panzoom-action=toggleFS] g:first-child{display:flex}[data-panzoom-action=toggleFS] g:last-child{display:none}.in-fullscreen [data-panzoom-action=toggleFS] g:first-child{display:none}.in-fullscreen [data-panzoom-action=toggleFS] g:last-child{display:flex} -------------------------------------------------------------------------------- /dist/panzoom/panzoom.toolbar.esm.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../types/Panzoom/plugins/Toolbar/Toolbar"; -------------------------------------------------------------------------------- /dist/panzoom/panzoom.toolbar.esm.js: -------------------------------------------------------------------------------- 1 | const t=(e,...i)=>{const o=i.length;for(let n=0;n{const n=Array.isArray(o)?[]:{};var s;e[i]||Object.assign(e,{[i]:n}),"object"==typeof(s=o)&&null!==s&&s.constructor===Object&&"[object Object]"===Object.prototype.toString.call(s)?Object.assign(e[i],t(n,o)):Array.isArray(o)?Object.assign(e,{[i]:[...o]}):Object.assign(e,{[i]:o})}))}return e},e=function(t,e){return t.split(".").reduce(((t,e)=>"object"==typeof t?t[e]:void 0),e)};class i{constructor(t={}){Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"events",{enumerable:!0,configurable:!0,writable:!0,value:new Map}),this.setOptions(t);for(const t of Object.getOwnPropertyNames(Object.getPrototypeOf(this)))t.startsWith("on")&&"function"==typeof this[t]&&(this[t]=this[t].bind(this))}setOptions(e){this.options=e?t({},this.constructor.defaults,e):{};for(const[t,e]of Object.entries(this.option("on")||{}))this.on(t,e)}option(t,...i){let o=e(t,this.options);return o&&"function"==typeof o&&(o=o.call(this,this,...i)),o}optionFor(t,i,o,...n){let s=e(i,t);var a;"string"!=typeof(a=s)||isNaN(a)||isNaN(parseFloat(a))||(s=parseFloat(s)),"true"===s&&(s=!0),"false"===s&&(s=!1),s&&"function"==typeof s&&(s=s.call(this,this,t,...n));let r=e(i,this.options);return r&&"function"==typeof r?s=r.call(this,this,t,...n,s):void 0===s&&(s=r),void 0===s?o:s}cn(t){const e=this.options.classes;return e&&e[t]||""}localize(t,e=[]){t=String(t).replace(/\{\{(\w+).?(\w+)?\}\}/g,((t,e,i)=>{let o="";return i?o=this.option(`${e[0]+e.toLowerCase().substring(1)}.l10n.${i}`):e&&(o=this.option(`l10n.${e}`)),o||(o=t),o}));for(let i=0;ie))}on(t,e){let i=[];"string"==typeof t?i=t.split(" "):Array.isArray(t)&&(i=t),this.events||(this.events=new Map),i.forEach((t=>{let i=this.events.get(t);i||(this.events.set(t,[]),i=[]),i.includes(e)||i.push(e),this.events.set(t,i)}))}off(t,e){let i=[];"string"==typeof t?i=t.split(" "):Array.isArray(t)&&(i=t),i.forEach((t=>{const i=this.events.get(t);if(Array.isArray(i)){const t=i.indexOf(e);t>-1&&i.splice(t,1)}}))}emit(t,...e){[...this.events.get(t)||[]].forEach((t=>t(this,...e))),"*"!==t&&this.emit("*",t,...e)}}Object.defineProperty(i,"version",{enumerable:!0,configurable:!0,writable:!0,value:"5.0.36"}),Object.defineProperty(i,"defaults",{enumerable:!0,configurable:!0,writable:!0,value:{}});class o extends i{constructor(t,e){super(e),Object.defineProperty(this,"instance",{enumerable:!0,configurable:!0,writable:!0,value:t})}attach(){}detach(){}}const n=(t,e)=>{t&&(t=>`${t||""}`.split(" ").filter((t=>!!t)))(e).forEach((e=>{t.classList.add(e)}))},s={display:["zoomIn","zoomOut","toggle1to1","rotateCCW","rotateCW","flipX","flipY","reset","toggleFS"],items:{panLeft:{icon:'',change:{panX:-100}},panRight:{icon:'',change:{panX:100}},panUp:{icon:'',change:{panY:-100}},panDown:{icon:'',change:{panY:100}},zoomIn:{icon:'',action:"zoomIn"},zoomOut:{icon:'',action:"zoomOut"},toggle1to1:{icon:'',action:"toggleZoom"},toggleZoom:{icon:'',action:"toggleZoom"},iterateZoom:{icon:'',action:"iterateZoom"},rotateCCW:{icon:'',action:"rotateCCW"},rotateCW:{icon:'',action:"rotateCW"},flipX:{icon:'',action:"flipX"},flipY:{icon:'',action:"flipY"},fitX:{icon:'',action:"fitX"},fitY:{icon:'',action:"fitY"},reset:{icon:'',action:"reset"},toggleFS:{icon:'',action:"toggleFS"}},svgAttr:{tabindex:"-1",width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"}};class a extends o{constructor(){super(...arguments),Object.defineProperty(this,"container",{enumerable:!0,configurable:!0,writable:!0,value:null})}addItem(t){const e=this.instance,i=this.container,o=this.option("items")[t];if(!o||!i)return;const s=document.createElement("button");s.setAttribute("title",o.title||e.localize(`{{${t.toUpperCase()}}}`)),n(s,"f-button");const a=function(t){var e=(new DOMParser).parseFromString(t,"text/html").body;if(e.childElementCount>1){for(var i=document.createElement("div");e.firstChild;)i.appendChild(e.firstChild);return i}return e.firstChild}(e.localize(o.icon));if(a instanceof SVGElement)for(const[t,e]of Object.entries(this.option("svgAttr")))a.getAttribute(t)||a.setAttribute(t,String(e));s.appendChild(a),o.action&&(s.dataset.panzoomAction=o.action),o.change&&(s.dataset.panzoomChange=JSON.stringify(o.change)),o.click&&s.addEventListener("click",(t=>{t.preventDefault(),t.stopPropagation(),o&&"function"==typeof o.click&&o.click(e)})),i.appendChild(s)}createContainer(){if(this.container)return;const t=document.createElement("div");t.classList.add("f-panzoom__toolbar"),t.dataset.selectable="true",this.container=t;for(const t of this.option("display"))this.addItem(t);const e=this.instance.container;e.prepend(t),n(e,"has-toolbar")}removeContainer(){const t=this.container;t&&t.remove(),this.container=null,this.instance.container.classList.remove("has-toolbar")}attach(){this.createContainer()}detach(){this.removeContainer()}}Object.defineProperty(a,"defaults",{enumerable:!0,configurable:!0,writable:!0,value:s});export{a as Toolbar}; 2 | -------------------------------------------------------------------------------- /dist/panzoom/panzoom.toolbar.umd.js: -------------------------------------------------------------------------------- 1 | !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).window=t.window||{})}(this,(function(t){"use strict";const e=(t,...o)=>{const i=o.length;for(let n=0;n{const n=Array.isArray(i)?[]:{};var s;t[o]||Object.assign(t,{[o]:n}),"object"==typeof(s=i)&&null!==s&&s.constructor===Object&&"[object Object]"===Object.prototype.toString.call(s)?Object.assign(t[o],e(n,i)):Array.isArray(i)?Object.assign(t,{[o]:[...i]}):Object.assign(t,{[o]:i})}))}return t},o=function(t,e){return t.split(".").reduce(((t,e)=>"object"==typeof t?t[e]:void 0),e)};class i{constructor(t={}){Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"events",{enumerable:!0,configurable:!0,writable:!0,value:new Map}),this.setOptions(t);for(const t of Object.getOwnPropertyNames(Object.getPrototypeOf(this)))t.startsWith("on")&&"function"==typeof this[t]&&(this[t]=this[t].bind(this))}setOptions(t){this.options=t?e({},this.constructor.defaults,t):{};for(const[t,e]of Object.entries(this.option("on")||{}))this.on(t,e)}option(t,...e){let i=o(t,this.options);return i&&"function"==typeof i&&(i=i.call(this,this,...e)),i}optionFor(t,e,i,...n){let s=o(e,t);var a;"string"!=typeof(a=s)||isNaN(a)||isNaN(parseFloat(a))||(s=parseFloat(s)),"true"===s&&(s=!0),"false"===s&&(s=!1),s&&"function"==typeof s&&(s=s.call(this,this,t,...n));let r=o(e,this.options);return r&&"function"==typeof r?s=r.call(this,this,t,...n,s):void 0===s&&(s=r),void 0===s?i:s}cn(t){const e=this.options.classes;return e&&e[t]||""}localize(t,e=[]){t=String(t).replace(/\{\{(\w+).?(\w+)?\}\}/g,((t,e,o)=>{let i="";return o?i=this.option(`${e[0]+e.toLowerCase().substring(1)}.l10n.${o}`):e&&(i=this.option(`l10n.${e}`)),i||(i=t),i}));for(let o=0;oe))}on(t,e){let o=[];"string"==typeof t?o=t.split(" "):Array.isArray(t)&&(o=t),this.events||(this.events=new Map),o.forEach((t=>{let o=this.events.get(t);o||(this.events.set(t,[]),o=[]),o.includes(e)||o.push(e),this.events.set(t,o)}))}off(t,e){let o=[];"string"==typeof t?o=t.split(" "):Array.isArray(t)&&(o=t),o.forEach((t=>{const o=this.events.get(t);if(Array.isArray(o)){const t=o.indexOf(e);t>-1&&o.splice(t,1)}}))}emit(t,...e){[...this.events.get(t)||[]].forEach((t=>t(this,...e))),"*"!==t&&this.emit("*",t,...e)}}Object.defineProperty(i,"version",{enumerable:!0,configurable:!0,writable:!0,value:"5.0.36"}),Object.defineProperty(i,"defaults",{enumerable:!0,configurable:!0,writable:!0,value:{}});class n extends i{constructor(t,e){super(e),Object.defineProperty(this,"instance",{enumerable:!0,configurable:!0,writable:!0,value:t})}attach(){}detach(){}}const s=(t,e)=>{t&&(t=>`${t||""}`.split(" ").filter((t=>!!t)))(e).forEach((e=>{t.classList.add(e)}))},a={display:["zoomIn","zoomOut","toggle1to1","rotateCCW","rotateCW","flipX","flipY","reset","toggleFS"],items:{panLeft:{icon:'',change:{panX:-100}},panRight:{icon:'',change:{panX:100}},panUp:{icon:'',change:{panY:-100}},panDown:{icon:'',change:{panY:100}},zoomIn:{icon:'',action:"zoomIn"},zoomOut:{icon:'',action:"zoomOut"},toggle1to1:{icon:'',action:"toggleZoom"},toggleZoom:{icon:'',action:"toggleZoom"},iterateZoom:{icon:'',action:"iterateZoom"},rotateCCW:{icon:'',action:"rotateCCW"},rotateCW:{icon:'',action:"rotateCW"},flipX:{icon:'',action:"flipX"},flipY:{icon:'',action:"flipY"},fitX:{icon:'',action:"fitX"},fitY:{icon:'',action:"fitY"},reset:{icon:'',action:"reset"},toggleFS:{icon:'',action:"toggleFS"}},svgAttr:{tabindex:"-1",width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"}};class r extends n{constructor(){super(...arguments),Object.defineProperty(this,"container",{enumerable:!0,configurable:!0,writable:!0,value:null})}addItem(t){const e=this.instance,o=this.container,i=this.option("items")[t];if(!i||!o)return;const n=document.createElement("button");n.setAttribute("title",i.title||e.localize(`{{${t.toUpperCase()}}}`)),s(n,"f-button");const a=function(t){var e=(new DOMParser).parseFromString(t,"text/html").body;if(e.childElementCount>1){for(var o=document.createElement("div");e.firstChild;)o.appendChild(e.firstChild);return o}return e.firstChild}(e.localize(i.icon));if(a instanceof SVGElement)for(const[t,e]of Object.entries(this.option("svgAttr")))a.getAttribute(t)||a.setAttribute(t,String(e));n.appendChild(a),i.action&&(n.dataset.panzoomAction=i.action),i.change&&(n.dataset.panzoomChange=JSON.stringify(i.change)),i.click&&n.addEventListener("click",(t=>{t.preventDefault(),t.stopPropagation(),i&&"function"==typeof i.click&&i.click(e)})),o.appendChild(n)}createContainer(){if(this.container)return;const t=document.createElement("div");t.classList.add("f-panzoom__toolbar"),t.dataset.selectable="true",this.container=t;for(const t of this.option("display"))this.addItem(t);const e=this.instance.container;e.prepend(t),s(e,"has-toolbar")}removeContainer(){const t=this.container;t&&t.remove(),this.container=null,this.instance.container.classList.remove("has-toolbar")}attach(){this.createContainer()}detach(){this.removeContainer()}}Object.defineProperty(r,"defaults",{enumerable:!0,configurable:!0,writable:!0,value:a}),t.Toolbar=r})); 2 | -------------------------------------------------------------------------------- /l10n/Carousel/cs.ts: -------------------------------------------------------------------------------- 1 | export const cs = { 2 | NEXT: "Další", 3 | PREV: "Předchozí", 4 | GOTO: "Přejít na %d. snímek", 5 | }; 6 | -------------------------------------------------------------------------------- /l10n/Carousel/de.ts: -------------------------------------------------------------------------------- 1 | export const de = { 2 | NEXT: "Nächste Folie", 3 | PREV: "Vorherige Folie", 4 | GOTO: "Zur #%d Folie gehen", 5 | }; 6 | -------------------------------------------------------------------------------- /l10n/Carousel/en.ts: -------------------------------------------------------------------------------- 1 | export const en = { 2 | NEXT: "Next slide", 3 | PREV: "Previous slide", 4 | GOTO: "Go to slide #%d", 5 | }; 6 | -------------------------------------------------------------------------------- /l10n/Carousel/es.ts: -------------------------------------------------------------------------------- 1 | export const es = { 2 | NEXT: "Siguiente diapositiva", 3 | PREV: "Diapositiva anterior", 4 | GOTO: "Ir a la diapositiva #%d", 5 | }; 6 | -------------------------------------------------------------------------------- /l10n/Carousel/fr.ts: -------------------------------------------------------------------------------- 1 | export const fr = { 2 | NEXT: "Diapositive suivante", 3 | PREV: "Diapositive précédente", 4 | GOTO: "Aller à la diapositive #%d", 5 | }; 6 | -------------------------------------------------------------------------------- /l10n/Carousel/it.ts: -------------------------------------------------------------------------------- 1 | export const it = { 2 | NEXT: "Diapositiva successiva", 3 | PREV: "Diapositiva precedente", 4 | GOTO: "Vai alla diapositiva #%d", 5 | }; 6 | -------------------------------------------------------------------------------- /l10n/Carousel/ja.ts: -------------------------------------------------------------------------------- 1 | export const ja = { 2 | NEXT: "次のスライド", 3 | PREV: "前のスライド", 4 | GOTO: "スライド #%d に移動", 5 | }; 6 | -------------------------------------------------------------------------------- /l10n/Carousel/lv.ts: -------------------------------------------------------------------------------- 1 | export const lv = { 2 | NEXT: "Nākošais slaids", 3 | PREV: "Iepriekšējais slaids", 4 | GOTO: "Doties uz #%d slaidu", 5 | }; 6 | -------------------------------------------------------------------------------- /l10n/Carousel/pl.ts: -------------------------------------------------------------------------------- 1 | export const pl = { 2 | NEXT: "Następny slajd", 3 | PREV: "Poprzedni slajd", 4 | GOTO: "Idź do slajdu nr #%d", 5 | }; 6 | -------------------------------------------------------------------------------- /l10n/Carousel/sk.ts: -------------------------------------------------------------------------------- 1 | export const sk = { 2 | NEXT: "Ďalší", 3 | PREV: "Predchádzajúci", 4 | GOTO: "Prejsť na %d. snímok", 5 | }; 6 | -------------------------------------------------------------------------------- /l10n/Carousel/zh_CN.ts: -------------------------------------------------------------------------------- 1 | export const zh_CN = { 2 | NEXT: "下一张", 3 | PREV: "上一张", 4 | GOTO: "转至幻灯片 #%d", 5 | }; 6 | -------------------------------------------------------------------------------- /l10n/Fancybox/cs.ts: -------------------------------------------------------------------------------- 1 | import { cs as PANZOOM_CS } from "../Panzoom/cs"; 2 | 3 | export const cs = { 4 | ...PANZOOM_CS, 5 | CLOSE: "Zavřít", 6 | NEXT: "Další", 7 | PREV: "Předchozí", 8 | MODAL: "Toto okno lze zavřít klávesou ESC", 9 | ERROR: "Někde se stala chyba, zkuste to prosím znovu", 10 | IMAGE_ERROR: "Obrázek nenalezen", 11 | ELEMENT_NOT_FOUND: "HTML element nenalezen", 12 | AJAX_NOT_FOUND: "Chyba AJAX načítání: Nenalezeno", 13 | AJAX_FORBIDDEN: "Chyba AJAX načítání: Zamítnuto", 14 | IFRAME_ERROR: "Chyba načítání stránky", 15 | TOGGLE_ZOOM: "Přepnout úroveň přiblížení", 16 | TOGGLE_THUMBS: "Zobrazit/skrýt miniatury", 17 | TOGGLE_SLIDESHOW: "Spustit/zastavit automatické přehrávání", 18 | TOGGLE_FULLSCREEN: "Režim celé obrazovky", 19 | DOWNLOAD: "Stáhnout", 20 | }; 21 | -------------------------------------------------------------------------------- /l10n/Fancybox/de.ts: -------------------------------------------------------------------------------- 1 | import { de as PANZOOM_DE } from "../Panzoom/de"; 2 | 3 | export const de = { 4 | ...PANZOOM_DE, 5 | CLOSE: "Schließen", 6 | NEXT: "Weiter", 7 | PREV: "Zurück", 8 | MODAL: "Sie können diesen modalen Inhalt mit der ESC-Taste schließen", 9 | ERROR: "Etwas ist schief gelaufen, bitte versuchen Sie es später noch einmal", 10 | IMAGE_ERROR: "Bild nicht gefunden", 11 | ELEMENT_NOT_FOUND: "HTML-Element nicht gefunden", 12 | AJAX_NOT_FOUND: "Fehler beim Laden von AJAX: Nicht gefunden", 13 | AJAX_FORBIDDEN: "Fehler beim Laden von AJAX: Verboten", 14 | IFRAME_ERROR: "Fehler beim Laden der Seite", 15 | TOGGLE_ZOOM: "Zoomstufe umschalten", 16 | TOGGLE_THUMBS: "Miniaturansichten umschalten", 17 | TOGGLE_SLIDESHOW: "Diashow wechseln", 18 | TOGGLE_FULLSCREEN: "Vollbildmodus umschalten", 19 | DOWNLOAD: "Herunterladen", 20 | }; 21 | -------------------------------------------------------------------------------- /l10n/Fancybox/en.ts: -------------------------------------------------------------------------------- 1 | import { en as PANZOOM_EN } from "../Panzoom/en"; 2 | 3 | export const en = { 4 | ...PANZOOM_EN, 5 | CLOSE: "Close", 6 | NEXT: "Next", 7 | PREV: "Previous", 8 | MODAL: "You can close this modal content with the ESC key", 9 | ERROR: "Something Went Wrong, Please Try Again Later", 10 | IMAGE_ERROR: "Image Not Found", 11 | ELEMENT_NOT_FOUND: "HTML Element Not Found", 12 | AJAX_NOT_FOUND: "Error Loading AJAX : Not Found", 13 | AJAX_FORBIDDEN: "Error Loading AJAX : Forbidden", 14 | IFRAME_ERROR: "Error Loading Page", 15 | TOGGLE_ZOOM: "Toggle zoom level", 16 | TOGGLE_THUMBS: "Toggle thumbnails", 17 | TOGGLE_SLIDESHOW: "Toggle slideshow", 18 | TOGGLE_FULLSCREEN: "Toggle full-screen mode", 19 | DOWNLOAD: "Download", 20 | }; 21 | -------------------------------------------------------------------------------- /l10n/Fancybox/es.ts: -------------------------------------------------------------------------------- 1 | import { es as PANZOOM_ES } from "../Panzoom/es"; 2 | 3 | export const es = { 4 | ...PANZOOM_ES, 5 | CLOSE: "Cerrar", 6 | NEXT: "Siguiente", 7 | PREV: "Anterior", 8 | MODAL: "Puedes cerrar esta ventana con la tecla ESC", 9 | ERROR: "Algo salió mal, inténtalo de nuevo más tarde", 10 | IMAGE_ERROR: "Imagen no encontrada", 11 | ELEMENT_NOT_FOUND: "Elemento HTML no encontrado", 12 | AJAX_NOT_FOUND: "Error al cargar el AJAX : No encontrado", 13 | AJAX_FORBIDDEN: "Error al cargar el AJAX : Prohibido", 14 | IFRAME_ERROR: "Error al cargar la página", 15 | TOGGLE_ZOOM: "Cambiar el nivel de zoom", 16 | TOGGLE_THUMBS: "Cambiar a miniaturas", 17 | TOGGLE_SLIDESHOW: "Cambiar a modo presentación", 18 | TOGGLE_FULLSCREEN: "Cambiar a modo pantalla completa", 19 | DOWNLOAD: "Descargar", 20 | }; 21 | -------------------------------------------------------------------------------- /l10n/Fancybox/fr.ts: -------------------------------------------------------------------------------- 1 | import { fr as PANZOOM_FR } from "../Panzoom/fr"; 2 | 3 | export const fr = { 4 | ...PANZOOM_FR, 5 | CLOSE: "Fermer", 6 | NEXT: "Suivant", 7 | PREV: "Précédent", 8 | MODAL: "Vous pouvez fermer ce contenu modal avec la touche ESC", 9 | ERROR: "Quelque chose s'est mal passé, veuillez réessayer plus tard", 10 | IMAGE_ERROR: "Image introuvable", 11 | ELEMENT_NOT_FOUND: "Élément HTML introuvable", 12 | AJAX_NOT_FOUND: "Erreur lors du chargement d'AJAX : introuvable", 13 | AJAX_FORBIDDEN: "Erreur lors du chargement d'AJAX : Interdit", 14 | IFRAME_ERROR: "Erreur lors du chargement de la page", 15 | TOGGLE_ZOOM: "Basculer le niveau de zoom", 16 | TOGGLE_THUMBS: "Basculer les vignettes", 17 | TOGGLE_SLIDESHOW: "Basculer le diaporama", 18 | TOGGLE_FULLSCREEN: "Basculer en mode plein écran", 19 | DOWNLOAD: "Télécharger", 20 | }; 21 | -------------------------------------------------------------------------------- /l10n/Fancybox/it.ts: -------------------------------------------------------------------------------- 1 | import { it as PANZOOM_IT } from "../Panzoom/it"; 2 | 3 | export const it = { 4 | ...PANZOOM_IT, 5 | CLOSE: "Chiudi", 6 | NEXT: "Successivo", 7 | PREV: "Precedente", 8 | MODAL: "Puoi chiudere questo contenuto modale con il tasto ESC", 9 | ERROR: "Qualcosa è andato storto, riprova più tardi", 10 | IMAGE_ERROR: "Immagine non trovata", 11 | ELEMENT_NOT_FOUND: "Elemento HTML non trovato", 12 | AJAX_NOT_FOUND: "Errore durante il caricamento di AJAX: Non trovato", 13 | AJAX_FORBIDDEN: "Errore durante il caricamento di AJAX: Vietato", 14 | IFRAME_ERROR: "Errore durante il caricamento della pagina", 15 | TOGGLE_ZOOM: "Attiva/disattiva livello di zoom", 16 | TOGGLE_THUMBS: "Attiva/disattiva miniature", 17 | TOGGLE_SLIDESHOW: "Attiva/disattiva presentazione", 18 | TOGGLE_FULLSCREEN: "Attiva/disattiva modalità a schermo intero", 19 | DOWNLOAD: "Scarica", 20 | }; 21 | -------------------------------------------------------------------------------- /l10n/Fancybox/ja.ts: -------------------------------------------------------------------------------- 1 | import { ja as PANZOOM_JA } from "../Panzoom/ja"; 2 | 3 | export const ja = { 4 | ...PANZOOM_JA, 5 | CLOSE: "近い", 6 | NEXT: "次", 7 | PREV: "前", 8 | MODAL: "このモーダル コンテンツは ESC キーで閉じることができます", 9 | ERROR: "何かが間違っています。後でもう一度試してください", 10 | IMAGE_ERROR: "画像が見つかりません", 11 | ELEMENT_NOT_FOUND: "HTML 要素が見つかりません", 12 | AJAX_NOT_FOUND: "AJAX の読み込みエラー: 見つかりません", 13 | AJAX_FORBIDDEN: "AJAX のロード中にエラーが発生しました: 禁止されています", 14 | IFRAME_ERROR: "ページ読み込みエラー", 15 | TOGGLE_ZOOM: "ズーム レベルの切り替え", 16 | TOGGLE_THUMBS: "サムネイルの切り替え", 17 | TOGGLE_SLIDESHOW: "スライドショーの切り替え", 18 | TOGGLE_FULLSCREEN: "全画面モードの切り替え", 19 | DOWNLOAD: "ダウンロード", 20 | }; 21 | -------------------------------------------------------------------------------- /l10n/Fancybox/lv.ts: -------------------------------------------------------------------------------- 1 | import { lv as PANZOOM_LV } from "../Panzoom/lv"; 2 | 3 | export const lv = { 4 | ...PANZOOM_LV, 5 | CLOSE: "Aizvērt", 6 | NEXT: "Nākošais", 7 | PREV: "Iepriekšējais", 8 | MODAL: "Šo modālo saturu var aizvērt ar ESC taustiņu", 9 | ERROR: "Kaut kas nogāja greizi. Lūdzu, vēlāk mēģiniet vēlreiz", 10 | IMAGE_ERROR: "Attēls nav atrasts", 11 | ELEMENT_NOT_FOUND: "HTML elements nav atrasts", 12 | AJAX_NOT_FOUND: "Ielādējot AJAX, radās kļūda: Nav atrasts", 13 | AJAX_FORBIDDEN: "Ielādējot AJAX, radās kļūda: Aizliegts", 14 | IFRAME_ERROR: "Ielādējot lapu, radās kļūda", 15 | TOGGLE_ZOOM: "Pārslēgt tālummaiņas līmeni", 16 | TOGGLE_THUMBS: "Pārslēgt sīktēlus", 17 | TOGGLE_SLIDESHOW: "Pārslēgt slaidrādi", 18 | TOGGLE_FULLSCREEN: "Pārslēgt pilnekrāna režīmu", 19 | DOWNLOAD: "Lejupielādēt", 20 | }; 21 | -------------------------------------------------------------------------------- /l10n/Fancybox/pl.ts: -------------------------------------------------------------------------------- 1 | import { pl as PANZOOM_PL } from "../Panzoom/pl"; 2 | 3 | export const pl = { 4 | ...PANZOOM_PL, 5 | CLOSE: "Zamknij", 6 | NEXT: "Dalej", 7 | PREV: "Wstecz", 8 | MODAL: "Wciśnij ESC, by zamknąć", 9 | ERROR: "Coś poszło nie tak. Spróbuj ponownie później", 10 | IMAGE_ERROR: "Wczytywanie obrazu nie powiodło się", 11 | ELEMENT_NOT_FOUND: "Element HTML nie został odnaleziony", 12 | AJAX_NOT_FOUND: "Żądanie AJAX nie powiodło się: brak właściwego zasobu", 13 | AJAX_FORBIDDEN: "Żądanie AJAX nie powiodło się: braku dostępu", 14 | IFRAME_ERROR: "Nie udało się załadować poprawnie tej strony", 15 | TOGGLE_ZOOM: "Zbliż/oddal", 16 | TOGGLE_THUMBS: "Wyświetl/ukryj miniatury", 17 | TOGGLE_SLIDESHOW: "Włącz/wyłącz pokaz slajdów", 18 | TOGGLE_FULLSCREEN: "Włącz/wyłącz tryb pełnego ekranu", 19 | DOWNLOAD: "Pobierz", 20 | }; 21 | -------------------------------------------------------------------------------- /l10n/Fancybox/sk.ts: -------------------------------------------------------------------------------- 1 | import { sk as PANZOOM_SK } from "../Panzoom/sk"; 2 | 3 | export const sk = { 4 | ...PANZOOM_SK, 5 | CLOSE: "Zavrieť", 6 | NEXT: "Ďalší", 7 | PREV: "Predchádzajúci", 8 | MODAL: "Môžete zavrieť toto okno klávesou ESC", 9 | ERROR: "Nastala chyba. Skúste to, prosím, znovu", 10 | IMAGE_ERROR: "Obrázok sa nenašiel", 11 | ELEMENT_NOT_FOUND: "HTML element sa nenašiel", 12 | AJAX_NOT_FOUND: "Chyba načítania: nenájdené", 13 | AJAX_FORBIDDEN: "Chyba načítania: zamietnuté", 14 | IFRAME_ERROR: "Chyba načítania stránky", 15 | TOGGLE_ZOOM: "Prepnúť úroveň priblíženia", 16 | TOGGLE_THUMBS: "Zobraziť/skryť miniatúry", 17 | TOGGLE_SLIDESHOW: "Spustiť/zastaviť automatické prehrávanie", 18 | TOGGLE_FULLSCREEN: "Režim celej obrazovky", 19 | DOWNLOAD: "Stiahnuť", 20 | }; 21 | -------------------------------------------------------------------------------- /l10n/Fancybox/zh_CN.ts: -------------------------------------------------------------------------------- 1 | import { zh_CN as PANZOOM_ZH_CN } from "../Panzoom/zh_CN"; 2 | 3 | export const zh_CN = { 4 | ...PANZOOM_ZH_CN, 5 | CLOSE: "关闭", 6 | NEXT: "上一个", 7 | PREV: "下一个", 8 | MODAL: "使用 ESC 键关闭", 9 | ERROR: "发生了错误,请稍后再试", 10 | IMAGE_ERROR: "找不到图像", 11 | ELEMENT_NOT_FOUND: "找不到 HTML 元素", 12 | AJAX_NOT_FOUND: "载入 AJAX 时出错: 未找到", 13 | AJAX_FORBIDDEN: "载入 AJAX 时出错: 被阻止", 14 | IFRAME_ERROR: "加载页面出错", 15 | TOGGLE_ZOOM: "切换缩放级别", 16 | TOGGLE_THUMBS: "切换缩略图", 17 | TOGGLE_SLIDESHOW: "切换幻灯片", 18 | TOGGLE_FULLSCREEN: "切换全屏", 19 | DOWNLOAD: "下载", 20 | }; 21 | -------------------------------------------------------------------------------- /l10n/Panzoom/cs.ts: -------------------------------------------------------------------------------- 1 | export const cs = { 2 | PANUP: "Posunout nahoru", 3 | PANDOWN: "Posunout dolů", 4 | PANLEFT: "Posunout vlevo", 5 | PANRIGHT: "Posunout vpravo", 6 | 7 | ZOOMIN: "Přiblížit", 8 | ZOOMOUT: "Oddálit", 9 | 10 | TOGGLEZOOM: "Přepnout úroveň přiblížení", 11 | TOGGLE1TO1: "Přepnout úroveň přiblížení", 12 | ITERATEZOOM: "Přepnout úroveň přiblížení", 13 | 14 | ROTATECCW: "Otočit směrem vlevo", 15 | ROTATECW: "Otočit směrem vpravo", 16 | 17 | FLIPX: "Převrátit vodorovně", 18 | FLIPY: "Převrátit svisle", 19 | 20 | FITX: "Přizpůsobit na šířku", 21 | FITY: "Přizpůsobit na výšku", 22 | 23 | RESET: "Resetovat", 24 | 25 | TOGGLEFS: "Režim celé obrazovky", 26 | }; 27 | -------------------------------------------------------------------------------- /l10n/Panzoom/de.ts: -------------------------------------------------------------------------------- 1 | export const de = { 2 | PANUP: "Aufwärts bewegen", 3 | PANDOWN: "Nach unten bewegen", 4 | PANLEFT: "Nach links bewegen", 5 | PANRIGHT: "Nach rechts bewegen", 6 | 7 | ZOOMIN: "Vergrößern", 8 | ZOOMOUT: "Verkleinern", 9 | 10 | TOGGLEZOOM: "Zoomstufe umschalten", 11 | TOGGLE1TO1: "Zoomstufe umschalten", 12 | ITERATEZOOM: "Zoomstufe umschalten", 13 | 14 | ROTATECCW: "Gegen den Uhrzeigersinn drehen", 15 | ROTATECW: "Im Uhrzeigersinn drehen", 16 | 17 | FLIPX: "Horizontal spiegeln", 18 | FLIPY: "Vertikal spiegeln", 19 | 20 | FITX: "Horizontal einpassen", 21 | FITY: "Vertikal anpassen", 22 | 23 | RESET: "Zurücksetzen", 24 | 25 | TOGGLEFS: "Vollbild umschalten", 26 | }; 27 | -------------------------------------------------------------------------------- /l10n/Panzoom/en.ts: -------------------------------------------------------------------------------- 1 | export const en = { 2 | PANUP: "Move up", 3 | PANDOWN: "Move down", 4 | PANLEFT: "Move left", 5 | PANRIGHT: "Move right", 6 | 7 | ZOOMIN: "Zoom in", 8 | ZOOMOUT: "Zoom out", 9 | 10 | TOGGLEZOOM: "Toggle zoom level", 11 | TOGGLE1TO1: "Toggle zoom level", 12 | ITERATEZOOM: "Toggle zoom level", 13 | 14 | ROTATECCW: "Rotate counterclockwise", 15 | ROTATECW: "Rotate clockwise", 16 | 17 | FLIPX: "Flip horizontally", 18 | FLIPY: "Flip vertically", 19 | 20 | FITX: "Fit horizontally", 21 | FITY: "Fit vertically", 22 | 23 | RESET: "Reset", 24 | 25 | TOGGLEFS: "Toggle fullscreen", 26 | }; 27 | -------------------------------------------------------------------------------- /l10n/Panzoom/es.ts: -------------------------------------------------------------------------------- 1 | export const es = { 2 | PANUP: "Mover hacia arriba", 3 | PANDOWN: "Mover hacia abajo", 4 | PANLEFT: "Mover hacia la izquierda", 5 | PANRIGHT: "Mover hacia la derecha", 6 | 7 | ZOOMIN: "Mover a la derecha", 8 | ZOOMOUT: "Disminuir el zoom", 9 | 10 | TOGGLEZOOM: "Alternar nivel de zoom", 11 | TOGGLE1TO1: "Alternar nivel de zoom", 12 | ITERATEZOOM: "Alternar nivel de zoom", 13 | 14 | ROTATECCW: "Girar en sentido antihorario", 15 | ROTATECW: "Rotar las agujas del reloj", 16 | 17 | FLIPX: "Voltear horizontalmente", 18 | FLIPY: "Voltear verticalmente", 19 | 20 | FITX: "Ajustar horizontalmente", 21 | FITY: "Ajustar verticalmente", 22 | 23 | RESET: "Reiniciar", 24 | 25 | TOGGLEFS: "Alternar pantalla completa", 26 | }; 27 | -------------------------------------------------------------------------------- /l10n/Panzoom/fr.ts: -------------------------------------------------------------------------------- 1 | export const fr = { 2 | PANUP: "Déplacer vers le haut", 3 | PANDOWN: "Déplacer vers le bas", 4 | PANLEFT: "Déplacer vers la gauche", 5 | PANRIGHT: "Déplacer vers la droite", 6 | 7 | ZOOMIN: "Zoom avant", 8 | ZOOMOUT: "Zoom arrière", 9 | 10 | TOGGLEZOOM: "Basculer le niveau de zoom", 11 | TOGGLE1TO1: "Basculer le niveau de zoom", 12 | ITERATEZOOM: "Basculer le niveau de zoom", 13 | 14 | ROTATECCW: "Tourner dans le sens antihoraire", 15 | ROTATECW: "Le sens des aiguilles d'une montre", 16 | 17 | FLIPX: "Retourner horizontalement", 18 | FLIPY: "Retourner verticalement", 19 | 20 | FITX: "Ajuster horizontalement", 21 | FITY: "Ajuster verticalement", 22 | 23 | RESET: "Réinitialiser", 24 | 25 | TOGGLEFS: "Basculer en plein écran", 26 | }; 27 | -------------------------------------------------------------------------------- /l10n/Panzoom/it.ts: -------------------------------------------------------------------------------- 1 | export const it = { 2 | PANUP: "Sposta su", 3 | PANDOWN: "Sposta giù", 4 | PANLEFT: "Sposta a sinistra", 5 | PANRIGHT: "Sposta a destra", 6 | 7 | ZOOMIN: "Ingrandisci", 8 | ZOOMOUT: "Rimpicciolisci", 9 | 10 | TOGGLEZOOM: "Alterna il livello di zoom", 11 | TOGGLE1TO1: "Alterna il livello di zoom", 12 | ITERATEZOOM: "Attiva/disattiva livello di zoom", 13 | 14 | ROTATECCW: "Ruota in senso antiorario", 15 | ROTATECW: "Ruota in senso orario", 16 | 17 | FLIPX: "Capovolgi orizzontalmente", 18 | FLIPY: "Capovolgi verticalmente", 19 | 20 | FITX: "Adatta orizzontalmente", 21 | FITY: "Adatta verticalmente", 22 | 23 | RESET: "Reimposta", 24 | 25 | TOGGLEFS: "Attiva/disattiva schermo intero", 26 | }; 27 | -------------------------------------------------------------------------------- /l10n/Panzoom/ja.ts: -------------------------------------------------------------------------------- 1 | export const ja = { 2 | PANUP: "上に移動", 3 | PANDOWN: "下に移動", 4 | PANLEFT: "左に移動", 5 | PANRIGHT: "右に動く", 6 | 7 | ZOOMIN: "ズームイン", 8 | ZOOMOUT: "ズームアウトする", 9 | 10 | TOGGLEZOOM: "ズーム レベルの切り替え", 11 | TOGGLE1TO1: "ズーム レベルの切り替え", 12 | ITERATEZOOM: "ズーム レベルの切り替え", 13 | 14 | ROTATECCW: "反時計回りに回転", 15 | ROTATECW: "時計回りに回転します", 16 | 17 | FLIPX: "左右反転", 18 | FLIPY: "上下反転", 19 | 20 | FITX: "水平に合わせる", 21 | FITY: "縦に合わせる", 22 | 23 | RESET: "リセット", 24 | 25 | TOGGLEFS: "フルスクリーン切り替え", 26 | }; 27 | -------------------------------------------------------------------------------- /l10n/Panzoom/lv.ts: -------------------------------------------------------------------------------- 1 | export const lv = { 2 | PANUP: "Bīdīt uz augšu", 3 | PANDOWN: "Bīdīt uz leju", 4 | PANLEFT: "Bīdīt pa kreisi", 5 | PANRIGHT: "Bīdīt pa labi", 6 | 7 | ZOOMIN: "Pietuvināt", 8 | ZOOMOUT: "Attālināt", 9 | 10 | TOGGLEZOOM: "Pārslēgt tālummaiņas līmeni", 11 | TOGGLE1TO1: "Pārslēgt tālummaiņas līmeni", 12 | ITERATEZOOM: "Pārslēgt tālummaiņas līmeni", 13 | 14 | ROTATECCW: "Pagrieziet pretēji pulksteņrādītāja virzienam", 15 | ROTATECW: "Pagrieziet pulksteņrādītāja virzienā", 16 | 17 | FLIPX: "Apgriezt horizontāli", 18 | FLIPY: "Apgriezt vertikāli", 19 | 20 | FITX: "Ietilpināt horizontāli", 21 | FITY: "Ietilpināt vertikāli", 22 | 23 | RESET: "Atiestatīt", 24 | 25 | TOGGLEFS: "Pārslēgt pilnekrāna režīmu", 26 | }; 27 | -------------------------------------------------------------------------------- /l10n/Panzoom/pl.ts: -------------------------------------------------------------------------------- 1 | export const pl = { 2 | PANUP: "Przesuń w górę", 3 | PANDOWN: "Przesuń w dół", 4 | PANLEFT: "Przesuń w lewo", 5 | PANRIGHT: "Przesuń w prawo", 6 | 7 | ZOOMIN: "Zbliż", 8 | ZOOMOUT: "Oddal", 9 | 10 | TOGGLEZOOM: "Zbliż/oddal", 11 | TOGGLE1TO1: "Zmieść/skala 1:1", 12 | ITERATEZOOM: "Zbliż/oddal", 13 | 14 | ROTATECCW: "Obróć w lewo", 15 | ROTATECW: "Obróć w prawo", 16 | 17 | FLIPX: "Obróć w poziomie", 18 | FLIPY: "Obróć w pionie", 19 | 20 | FITX: "Dopasuj do szerokości ekranu", 21 | FITY: "Dopasuj do wysokości ekranu", 22 | 23 | RESET: "Resetuj", 24 | 25 | TOGGLEFS: "Włącz/wyłącz tryb pełnego ekranu", 26 | }; 27 | -------------------------------------------------------------------------------- /l10n/Panzoom/sk.ts: -------------------------------------------------------------------------------- 1 | export const sk = { 2 | PANUP: "Posunúť hore", 3 | PANDOWN: "Posunúť dole", 4 | PANLEFT: "Posunúť vľavo", 5 | PANRIGHT: "Posunúť vpravo", 6 | 7 | ZOOMIN: "Priblížiť", 8 | ZOOMOUT: "Oddialiť", 9 | 10 | TOGGLEZOOM: "Prepnúť úroveň priblíženia", 11 | TOGGLE1TO1: "Prepnúť úroveň priblíženia", 12 | ITERATEZOOM: "Prepnúť úroveň priblíženia", 13 | 14 | ROTATECCW: "Otočiť doľava", 15 | ROTATECW: "Otočiť doprava", 16 | 17 | FLIPX: "Prevrátiť vodorovne", 18 | FLIPY: "Prevrátiť zvisle", 19 | 20 | FITX: "Prispôsobiť na šírku", 21 | FITY: "Prispôsobiť na výšku", 22 | 23 | RESET: "Resetovať", 24 | 25 | TOGGLEFS: "Režim celej obrazovky", 26 | }; 27 | -------------------------------------------------------------------------------- /l10n/Panzoom/zh_CN.ts: -------------------------------------------------------------------------------- 1 | export const zh_CN = { 2 | PANUP: "上移", 3 | PANDOWN: "下移", 4 | PANLEFT: "左移", 5 | PANRIGHT: "右移", 6 | 7 | ZOOMIN: "放大", 8 | ZOOMOUT: "缩小", 9 | 10 | TOGGLEZOOM: "切换缩放级别", 11 | TOGGLE1TO1: "切换缩放级别", 12 | ITERATEZOOM: "切换缩放级别", 13 | 14 | ROTATECCW: "逆时针旋转", 15 | ROTATECW: "顺时针旋转", 16 | 17 | FLIPX: "水平翻转", 18 | FLIPY: "垂直翻转", 19 | 20 | FITX: "水平适应", 21 | FITY: "垂直适应", 22 | 23 | RESET: "重置", 24 | 25 | TOGGLEFS: "切换全屏", 26 | }; 27 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@fancyapps/ui", 3 | "version": "5.0.36", 4 | "description": "Robust JavaScript UI Component Library", 5 | "files": [ 6 | "dist", 7 | "l10n", 8 | "types", 9 | "CHANGELOG.md", 10 | "LICENSE.md", 11 | "README.md" 12 | ], 13 | "main": "dist/index.umd.js", 14 | "module": "dist/index.esm.js", 15 | "types": "types/index.d.ts", 16 | "keywords": [ 17 | "javascript", 18 | "modal", 19 | "lightbox", 20 | "fancybox", 21 | "carousel", 22 | "panzoom", 23 | "pinchzoom", 24 | "pinch", 25 | "zoom", 26 | "gesture", 27 | "touch", 28 | "drag", 29 | "gallery" 30 | ], 31 | "author": "Janis Skarnelis", 32 | "license": "SEE LICENSE IN LICENSE.md", 33 | "homepage": "https://fancyapps.com/", 34 | "repository": { 35 | "type": "git", 36 | "url": "git+https://github.com/fancyapps/ui.git" 37 | }, 38 | "devDependencies": {}, 39 | "dependencies": {} 40 | } 41 | -------------------------------------------------------------------------------- /types/Carousel/Carousel.d.ts: -------------------------------------------------------------------------------- 1 | import { Component } from "../shared/Base/Component"; 2 | import { Panzoom } from "../Panzoom/Panzoom"; 3 | import { PluginsType, CarouselEventsType, slideType, pageType, userSlideType } from "./types"; 4 | import { OptionsType } from "./options"; 5 | import { States } from "./consts"; 6 | export type * from "./plugins/index"; 7 | export declare class Carousel extends Component { 8 | static Panzoom: typeof Panzoom; 9 | static defaults: Partial; 10 | static Plugins: PluginsType; 11 | private bp; 12 | private lp; 13 | private get axis(); 14 | userOptions: Partial; 15 | userPlugins: PluginsType; 16 | /** 17 | * Current state of the instance 18 | */ 19 | state: States; 20 | /** 21 | * Index of the currently selected page 22 | */ 23 | page: number; 24 | /** 25 | * Index of the previously selected page 26 | */ 27 | prevPage: number | null; 28 | /** 29 | * Reference to the container element 30 | */ 31 | container: HTMLElement; 32 | /** 33 | * Reference to the viewport element 34 | */ 35 | viewport: HTMLElement | null; 36 | /** 37 | * Reference to the track element 38 | */ 39 | track: HTMLElement | null; 40 | /** 41 | * An array containing objects associated with the carousel slides 42 | */ 43 | slides: Array; 44 | /** 45 | * An array containing objects associated with the carousel pages 46 | */ 47 | pages: Array; 48 | /** 49 | * Reference to the Panzoom instance 50 | */ 51 | panzoom: Panzoom | null; 52 | /** 53 | * A collection of indexes for slides that are currently being animated using CSS animation 54 | */ 55 | inTransition: Set; 56 | /** 57 | * Total slide width or slide height for a vertical carousel 58 | */ 59 | contentDim: number; 60 | /** 61 | * Viewport width for a horizontal or height for a vertical carousel 62 | */ 63 | viewportDim: number; 64 | /** 65 | * True if the carousel is currently enabled 66 | */ 67 | get isEnabled(): boolean; 68 | /** 69 | * True if the carousel can navigate infinitely 70 | */ 71 | get isInfinite(): boolean; 72 | /** 73 | * True if the carousel is in RTL mode 74 | */ 75 | get isRTL(): boolean; 76 | /** 77 | * True if the carousel is horizontal 78 | */ 79 | get isHorizontal(): boolean; 80 | constructor(element: HTMLElement | string | null, userOptions?: Partial, userPlugins?: PluginsType); 81 | private processOptions; 82 | private init; 83 | private initLayout; 84 | private initSlides; 85 | private setInitialPage; 86 | private setInitialPosition; 87 | private initPanzoom; 88 | private attachEvents; 89 | private createPages; 90 | private processPages; 91 | private getPageFromIndex; 92 | private getSlideMetrics; 93 | private getBounds; 94 | private repositionSlides; 95 | private createSlideEl; 96 | private removeSlideEl; 97 | private transitionTo; 98 | private manageSlideVisiblity; 99 | private markSelectedSlides; 100 | private flipInfiniteTrack; 101 | private lazyLoadImg; 102 | private lazyLoadSlide; 103 | private onAnimationEnd; 104 | private onDecel; 105 | private onClick; 106 | private onSlideTo; 107 | private onChange; 108 | private onRefresh; 109 | private onScroll; 110 | private onResize; 111 | private onBeforeTransform; 112 | private onEndAnimation; 113 | /** 114 | * Reset carousel after initializing it, this method allows to replace options and plugins 115 | */ 116 | reInit(userOptions?: Partial | null, userPlugins?: PluginsType | null): void; 117 | /** 118 | * Slide to page by its index with optional parameters 119 | */ 120 | slideTo(pageIndex?: number | string, { friction, transition, }?: { 121 | friction?: number; 122 | transition?: string | false; 123 | }): void; 124 | /** 125 | * Re-center carousel 126 | */ 127 | slideToClosest(opts: any): void; 128 | /** 129 | * Slide to the next page 130 | */ 131 | slideNext(): void; 132 | /** 133 | * Slide to the previous page 134 | */ 135 | slidePrev(): void; 136 | /** 137 | * Stop transition effect 138 | */ 139 | clearTransitions(): void; 140 | /** 141 | * Create the slide(s) and add by the specified index 142 | */ 143 | addSlide(index: number, what: userSlideType | Array): void; 144 | /** 145 | * Create slide(s) and prepend to the beginning of the carousel 146 | */ 147 | prependSlide(what: userSlideType | Array): void; 148 | /** 149 | * Create slide(s) and add to the end of the carousel 150 | */ 151 | appendSlide(what: userSlideType | Array): void; 152 | /** 153 | * Remove slide and DOM elements from the carousel 154 | */ 155 | removeSlide(index: number): void; 156 | /** 157 | * Forces to recalculate elements metrics 158 | */ 159 | updateMetrics(): void; 160 | /** 161 | * Get the progress of the active or selected page relative to the "center" 162 | */ 163 | getProgress(index?: number, raw?: boolean, ignoreInfinite?: boolean): number; 164 | /** 165 | * Set the height of the viewport to match the maximum height of the slides on the current page 166 | */ 167 | setViewportHeight(): void; 168 | /** 169 | * Return the index of the page containing the slide 170 | */ 171 | getPageForSlide(index: number): number; 172 | /** 173 | * Return all slides that are at least partially visible 174 | */ 175 | getVisibleSlides(multiplier?: number): Set; 176 | /** 177 | * Get the page index for a given Panzoom position 178 | */ 179 | getPageFromPosition(pos?: number): { 180 | pageIndex: number; 181 | page: number; 182 | }; 183 | /** 184 | * Manually update page index based on the Panzoom position 185 | */ 186 | setPageFromPosition(): void; 187 | /** 188 | * Destroy the instance 189 | */ 190 | destroy(): void; 191 | } 192 | -------------------------------------------------------------------------------- /types/Carousel/consts.d.ts: -------------------------------------------------------------------------------- 1 | export declare enum States { 2 | Init = 0, 3 | Ready = 1, 4 | Destroy = 2 5 | } 6 | import { userSlideType, slideType, pageType } from "./types"; 7 | export declare const createSlide: (params: userSlideType) => slideType; 8 | export declare const createPage: (parameter?: Partial) => pageType; 9 | -------------------------------------------------------------------------------- /types/Carousel/options.d.ts: -------------------------------------------------------------------------------- 1 | import { OptionsType as PanzoomOptionsType } from "../Panzoom/options"; 2 | import { userSlideType, Events } from "./types"; 3 | export interface PluginsOptionsType { 4 | } 5 | export interface classesType { 6 | container: string; 7 | viewport: string; 8 | track: string; 9 | slide: string; 10 | isLTR: string; 11 | isRTL: string; 12 | isHorizontal: string; 13 | isVertical: string; 14 | inTransition: string; 15 | isSelected: string; 16 | } 17 | export interface ComponentOptionsType { 18 | /** 19 | * Specify the viewport element 20 | */ 21 | viewport: HTMLElement | null | ((any?: any) => HTMLElement | null); 22 | /** 23 | * Specify the track element 24 | */ 25 | track: HTMLElement | null | ((any?: any) => HTMLElement | null); 26 | /** 27 | * Carousel is enabled or not; useful when combining with breakpoints 28 | */ 29 | enabled: boolean; 30 | /** 31 | * Virtual slides 32 | */ 33 | slides: Array; 34 | /** 35 | * Horizontal (`x`) or vertical Carousel (`y`) 36 | */ 37 | axis: "x" | "y" | ((any?: any) => "x" | "y"); 38 | /** 39 | * The name of the transition animation when changing Carousel pages 40 | */ 41 | transition: "crossfade" | "fade" | "slide" | "classic" | string | false | ((any?: any) => "crossfade" | "fade" | "slide" | "classic"); 42 | /** 43 | * Number of pages to preload before/after the active page 44 | */ 45 | preload: number; 46 | /** 47 | * The number of slides to group per page 48 | */ 49 | slidesPerPage: number | "auto"; 50 | /** 51 | * Index of initial page 52 | */ 53 | initialPage: number; 54 | /** 55 | * Index of initial slide 56 | */ 57 | initialSlide?: number; 58 | /** 59 | * Panzoom friction while changing page 60 | */ 61 | friction: number | ((any?: any) => number); 62 | /** 63 | * If true, the Carousel will center the active page 64 | */ 65 | center: boolean | ((any?: any) => boolean); 66 | /** 67 | * If true, the Carousel will scroll infinitely 68 | */ 69 | infinite: boolean | ((any?: any) => boolean); 70 | /** 71 | * If true, the Carousel will fill the free space if `infinite: false` 72 | */ 73 | fill: boolean | ((any?: any) => boolean); 74 | /** 75 | * If true, the Carousel will settle at any position after a swipe 76 | */ 77 | dragFree: boolean | ((any?: any) => boolean); 78 | /** 79 | * If true, the Carousel will adjust its height to the height of the currently active slide(s) 80 | */ 81 | adaptiveHeight: boolean | ((any?: any) => boolean); 82 | /** 83 | * Change direction of Carousel 84 | */ 85 | direction: "ltr" | "rtl" | ((any?: any) => "ltr" | "rtl"); 86 | /** 87 | * Custom options for the Panzoom instance 88 | */ 89 | Panzoom?: Partial; 90 | /** 91 | * Class names for DOM elements 92 | */ 93 | classes: Partial; 94 | /** 95 | * Options that will be applied for the given breakpoint, overriding the base options 96 | */ 97 | breakpoints?: Record, "breakpoints">>; 98 | /** 99 | * Localization of strings 100 | */ 101 | l10n: Record; 102 | /** 103 | * Optional event listeners 104 | */ 105 | on?: Partial; 106 | } 107 | export declare const defaultOptions: ComponentOptionsType; 108 | export type OptionsType = PluginsOptionsType & ComponentOptionsType; 109 | -------------------------------------------------------------------------------- /types/Carousel/plugins/Autoplay/Autoplay.d.ts: -------------------------------------------------------------------------------- 1 | import { Plugin } from "../../../shared/Base/Plugin"; 2 | import { Carousel } from "../../Carousel"; 3 | type AutoplayEventsType = "start" | "set" | "pause" | "resume" | "stop"; 4 | type AutoplayEvents = Record void>; 5 | export type AutoplayOptionsType = { 6 | /** 7 | * If autoplay should start automatically after initialization 8 | */ 9 | autoStart: boolean; 10 | /** 11 | * Optional event listeners 12 | */ 13 | on?: Partial; 14 | /** 15 | * If autoplay should pause when the user hovers over the container 16 | */ 17 | pauseOnHover: boolean; 18 | /** 19 | * Change where progress bar is appended 20 | */ 21 | progressParentEl: HTMLElement | null | ((any: any) => HTMLElement | null); 22 | /** 23 | * If element should be created to display the autoplay progress 24 | */ 25 | showProgress: boolean; 26 | /** 27 | * Delay (in milliseconds) before the slide change 28 | */ 29 | timeout: number; 30 | }; 31 | declare module "../../../Carousel/options" { 32 | interface PluginsOptionsType { 33 | Autoplay: Boolean | Partial; 34 | } 35 | } 36 | export declare class Autoplay extends Plugin { 37 | static defaults: AutoplayOptionsType; 38 | private state; 39 | private inHover; 40 | private timer; 41 | private progressBar; 42 | get isActive(): boolean; 43 | private onReady; 44 | private onChange; 45 | private onSettle; 46 | private onVisibilityChange; 47 | private onMouseEnter; 48 | private onMouseLeave; 49 | private onTimerEnd; 50 | private removeProgressBar; 51 | private createProgressBar; 52 | private set; 53 | private clear; 54 | start(): void; 55 | stop(): void; 56 | pause(): void; 57 | resume(): void; 58 | toggle(): void; 59 | attach(): void; 60 | detach(): void; 61 | } 62 | export {}; 63 | -------------------------------------------------------------------------------- /types/Carousel/plugins/Dots/Dots.d.ts: -------------------------------------------------------------------------------- 1 | import { Plugin } from "../../../shared/Base/Plugin"; 2 | import { Carousel } from "../../Carousel"; 3 | export type DotsOptionsType = { 4 | classes: { 5 | list: string; 6 | dot: string; 7 | isDynamic: string; 8 | hasDots: string; 9 | isBeforePrev: string; 10 | isPrev: string; 11 | isCurrent: string; 12 | isNext: string; 13 | isAfterNext: string; 14 | }; 15 | dotTpl: string; 16 | dynamicFrom: number | false; 17 | maxCount: number; 18 | minCount: number; 19 | }; 20 | declare module "../../../Carousel/options" { 21 | interface PluginsOptionsType { 22 | Dots?: Boolean | Partial; 23 | } 24 | } 25 | type DotsEventsType = ""; 26 | export declare class Dots extends Plugin { 27 | static defaults: DotsOptionsType; 28 | /** 29 | * If this instance is currently in "dynamic" mode 30 | */ 31 | isDynamic: boolean; 32 | private list; 33 | private onRefresh; 34 | private build; 35 | /** 36 | * Refresh the elements to match the current state of the carousel 37 | */ 38 | refresh(): void; 39 | private createItem; 40 | private cleanup; 41 | attach(): void; 42 | detach(): void; 43 | } 44 | export {}; 45 | -------------------------------------------------------------------------------- /types/Carousel/plugins/Navigation/Navigation.d.ts: -------------------------------------------------------------------------------- 1 | import { Plugin } from "../../../shared/Base/Plugin"; 2 | import { Carousel } from "../../Carousel"; 3 | export type NavigationOptionsType = { 4 | /** 5 | * Class names for DOM elements 6 | */ 7 | classes: { 8 | container: string; 9 | button: string; 10 | isNext: string; 11 | isPrev: string; 12 | }; 13 | /** 14 | * HTML template for left arrow 15 | */ 16 | nextTpl: string; 17 | /** 18 | * HTML template for right arrow 19 | */ 20 | prevTpl: string; 21 | }; 22 | declare module "../../../Carousel/options" { 23 | interface PluginsOptionsType { 24 | Navigation: Boolean | Partial; 25 | } 26 | } 27 | type NavigationEventsType = ""; 28 | export declare class Navigation extends Plugin { 29 | static defaults: NavigationOptionsType; 30 | container: HTMLElement | null; 31 | prev: HTMLElement | null; 32 | next: HTMLElement | null; 33 | private isDom; 34 | private onRefresh; 35 | private addBtn; 36 | private build; 37 | cleanup(): void; 38 | attach(): void; 39 | detach(): void; 40 | } 41 | export {}; 42 | -------------------------------------------------------------------------------- /types/Carousel/plugins/Sync/Sync.d.ts: -------------------------------------------------------------------------------- 1 | import { Plugin } from "../../../shared/Base/Plugin"; 2 | import { Carousel } from "../../Carousel"; 3 | export type SyncOptionsType = { 4 | /** 5 | * Target carousel sliding animation friction (after clicking navigation carousel slide) 6 | */ 7 | friction: number; 8 | /** 9 | * An instance of a carousel acting as navigation 10 | */ 11 | nav?: Carousel; 12 | /** 13 | * An instance of a carousel acting as target 14 | */ 15 | target?: Carousel; 16 | }; 17 | declare module "../../../Carousel/options" { 18 | interface PluginsOptionsType { 19 | /** 20 | * Sync instance to another and make it act as navigation 21 | */ 22 | Sync?: Boolean | Partial; 23 | } 24 | } 25 | type SyncEventsType = ""; 26 | export declare class Sync extends Plugin { 27 | static defaults: SyncOptionsType; 28 | private selectedIndex; 29 | private target; 30 | private nav; 31 | private addAsTargetFor; 32 | private addAsNavFor; 33 | private attachEvents; 34 | private onNavReady; 35 | private onTargetReady; 36 | private onNavClick; 37 | private onNavTouch; 38 | private onNavCreateSlide; 39 | private onTargetChange; 40 | private markSelectedSlide; 41 | attach(): void; 42 | detach(): void; 43 | } 44 | export {}; 45 | -------------------------------------------------------------------------------- /types/Carousel/plugins/Thumbs/Thumbs.d.ts: -------------------------------------------------------------------------------- 1 | import { Plugin } from "../../../shared/Base/Plugin"; 2 | import { OptionsType as PanzoomOptionsType } from "../../../Panzoom/options"; 3 | import type { Carousel } from "../../Carousel"; 4 | import { OptionsType as CarouselOptionsType } from "../../options"; 5 | type ThumbsEventsType = "ready" | "createSlide" | "disabled"; 6 | type ThumbsEvents = Record void>; 7 | export type ThumbsOptionsType = { 8 | /** 9 | * Customize carousel options 10 | */ 11 | Carousel?: Partial; 12 | /** 13 | * Customize panzoom options 14 | */ 15 | Panzoom?: Partial; 16 | /** 17 | * Class names for DOM elements 18 | */ 19 | classes: { 20 | container?: string; 21 | viewport?: string; 22 | track?: string; 23 | slide?: string; 24 | isResting?: string; 25 | isSelected?: string; 26 | isLoading?: string; 27 | hasThumbs?: string; 28 | }; 29 | /** 30 | * Minimum number of slides with thumbnails in the carousel to create Thumbs 31 | */ 32 | minCount: number; 33 | /** 34 | * Optional event listeners 35 | */ 36 | on?: Partial; 37 | /** 38 | * Change where thumbnail container is appended 39 | */ 40 | parentEl?: HTMLElement | null | (() => HTMLElement | null); 41 | /** 42 | * Template for the thumbnail element 43 | */ 44 | thumbTpl: string; 45 | /** 46 | * Choose a type - "classic" (syncs two instances of the carousel) or "modern" (Apple Photos style) 47 | */ 48 | type: "classic" | "modern"; 49 | }; 50 | export declare const defaultOptions: ThumbsOptionsType; 51 | declare module "../../../Carousel/options" { 52 | interface PluginsOptionsType { 53 | Thumbs: Boolean | Partial; 54 | } 55 | } 56 | declare module "../../../Carousel/types" { 57 | interface slideType { 58 | thumbSrc?: string; 59 | thumbClipWidth?: number; 60 | thumbWidth?: number; 61 | thumbHeight?: number; 62 | thumbSlideEl?: HTMLElement; 63 | } 64 | } 65 | export declare enum States { 66 | Init = 0, 67 | Ready = 1, 68 | Hidden = 2 69 | } 70 | export declare class Thumbs extends Plugin { 71 | static defaults: ThumbsOptionsType; 72 | type: "modern" | "classic"; 73 | get isModern(): boolean; 74 | container: HTMLElement | null; 75 | track: HTMLElement | null; 76 | private carousel; 77 | private thumbWidth; 78 | private thumbClipWidth; 79 | private thumbHeight; 80 | private thumbGap; 81 | private thumbExtraGap; 82 | state: States; 83 | private onInitSlide; 84 | private onInitSlides; 85 | private onChange; 86 | private onRefresh; 87 | isDisabled(): Boolean; 88 | private getThumb; 89 | private addSlide; 90 | private getSlides; 91 | private resizeModernSlide; 92 | private updateProps; 93 | build(): void; 94 | private onClick; 95 | private getShift; 96 | private setProps; 97 | private shiftModern; 98 | private cleanup; 99 | attach(): void; 100 | detach(): void; 101 | } 102 | export {}; 103 | -------------------------------------------------------------------------------- /types/Carousel/plugins/index.d.ts: -------------------------------------------------------------------------------- 1 | import { PluginsType } from "../types"; 2 | export type * from "./Dots/Dots"; 3 | export type * from "./Navigation/Navigation"; 4 | export type * from "./Sync/Sync"; 5 | export declare const CarouselPlugins: PluginsType; 6 | -------------------------------------------------------------------------------- /types/Carousel/types.d.ts: -------------------------------------------------------------------------------- 1 | export interface slideType { 2 | html: string | HTMLElement; 3 | el: HTMLElement | null; 4 | isDom: boolean; 5 | class: string; 6 | customClass: string; 7 | index: number; 8 | dim: number; 9 | gap: number; 10 | pos: number; 11 | transition: string | false; 12 | thumb?: string | HTMLImageElement; 13 | thumbSrc?: string; 14 | thumbElSrc?: string; 15 | thumbEl?: HTMLImageElement; 16 | } 17 | import { Constructor } from "../shared/Base/types"; 18 | import { Plugin } from "../shared/Base/Plugin"; 19 | import { Carousel } from "./Carousel"; 20 | export type PluginsType = Record>>; 21 | export type userSlideType = string | HTMLElement | Partial; 22 | export type pageType = { 23 | index: number; 24 | slides: Array; 25 | dim: number; 26 | pos: number; 27 | }; 28 | import { ComponentEventsType } from "../shared/Base/types"; 29 | import { EventsType as PanzoomEventsType } from "../Panzoom/types"; 30 | export type CarouselEventsType = ComponentEventsType 31 | /** 32 | * Initialization has started, plugins have been added 33 | */ 34 | | "init" 35 | /** 36 | * The layout is initialized 37 | */ 38 | | "initLayout" 39 | /** 40 | * Priority event when the slide object is created 41 | */ 42 | | "beforeInitSlide" 43 | /** 44 | * The slide object is created 45 | */ 46 | | "initSlide" 47 | /** 48 | * The slide object is removed from the carousel 49 | */ 50 | | "destroySlide" 51 | /** 52 | * All slides have objects created 53 | */ 54 | | "initSlides" 55 | /** 56 | * A corresponding DOM element is created for the slide 57 | */ 58 | | "createSlide" 59 | /** 60 | * The element corresponding to the slide is removed from the DOM 61 | */ 62 | | "removeSlide" 63 | /** 64 | * Slide is marked as being on the active page 65 | */ 66 | | "selectSlide" 67 | /** 68 | * Slide is no longer on the active page 69 | */ 70 | | "unselectSlide" 71 | /** 72 | * Initialization has been completed 73 | */ 74 | | "ready" 75 | /** 76 | * Carousel metrics have been updated 77 | */ 78 | | "refresh" 79 | /** 80 | * Right before the active page of the carousel is changed 81 | */ 82 | | "beforeChange" 83 | /** 84 | * The active page of the carousel is changed 85 | */ 86 | | "change" 87 | /** 88 | * Single click event has been detected 89 | */ 90 | | "click" 91 | /** 92 | * The image is lazy loaded 93 | */ 94 | | "load" 95 | /** 96 | * The slide change animation has finished 97 | */ 98 | | "settle" | `Panzoom.${PanzoomEventsType}`; 99 | export type Events = Record void>; 100 | -------------------------------------------------------------------------------- /types/Fancybox/Fancybox.d.ts: -------------------------------------------------------------------------------- 1 | import { OptionsType } from "./options"; 2 | import { EventsType, PluginsType } from "./types"; 3 | import { States, SlideStates } from "./consts"; 4 | import { Component } from "../shared/Base/Component"; 5 | export type * from "./plugins/index"; 6 | import { Carousel } from "../Carousel/Carousel"; 7 | import { slideType, userSlideType } from "../Carousel/types"; 8 | declare module "../Carousel/types" { 9 | interface slideType { 10 | src?: string | HTMLElement; 11 | width?: number | "auto"; 12 | height?: number | "auto"; 13 | id?: string; 14 | display?: string; 15 | error?: string; 16 | filter?: string; 17 | caption?: string | HTMLElement; 18 | downloadSrc?: string; 19 | downloadFilename?: string; 20 | contentEl?: HTMLElement; 21 | captionEl?: HTMLElement; 22 | spinnerEl?: HTMLElement; 23 | closeBtnEl?: HTMLElement; 24 | triggerEl?: HTMLElement; 25 | thumbEl?: HTMLImageElement; 26 | thumbElSrc?: string; 27 | poster?: string; 28 | state?: SlideStates; 29 | } 30 | } 31 | export declare class Fancybox extends Component { 32 | static version: string; 33 | static defaults: Partial; 34 | static Plugins: PluginsType; 35 | static openers: Map>>; 36 | private userSlides; 37 | private userPlugins; 38 | private idle; 39 | private idleTimer; 40 | private clickTimer; 41 | private pwt; 42 | private ignoreFocusChange; 43 | private startedFs; 44 | state: States; 45 | id: number | string; 46 | container: HTMLElement | null; 47 | caption: HTMLElement | null; 48 | footer: HTMLElement | null; 49 | carousel: Carousel | null; 50 | lastFocus: HTMLElement | null; 51 | prevMouseMoveEvent: MouseEvent | undefined; 52 | get isIdle(): boolean; 53 | get isCompact(): boolean; 54 | constructor(userSlides?: Array, userOptions?: Partial, userPlugins?: PluginsType); 55 | private init; 56 | private initLayout; 57 | private initCarousel; 58 | private attachEvents; 59 | private detachEvents; 60 | private scale; 61 | private onClick; 62 | private onWheel; 63 | private onScroll; 64 | private onKeydown; 65 | private onResize; 66 | private onFocus; 67 | private onMousemove; 68 | private onVisibilityChange; 69 | private manageCloseBtn; 70 | private manageCaption; 71 | /** 72 | * Make sure the element, that has the focus, is inside the container 73 | */ 74 | checkFocus(event?: FocusEvent): void; 75 | /** 76 | * Place focus on the first focusable element inside current slide 77 | */ 78 | focus(event?: FocusEvent): void; 79 | /** 80 | * Slide carousel to the next page 81 | */ 82 | next(): void; 83 | /** 84 | * Slide carousel to the previous page 85 | */ 86 | prev(): void; 87 | /** 88 | * Slide carousel to page by its index with optional parameters 89 | */ 90 | jumpTo(...args: any): void; 91 | /** 92 | * Check if there is another instance on top of this one 93 | */ 94 | isTopmost(): boolean; 95 | animate(element?: HTMLElement | null, className?: string, callback?: () => void | null): void; 96 | stop(element: HTMLElement): void; 97 | /** 98 | * Set new content for the given slide 99 | */ 100 | setContent(slide: slideType, html?: string | HTMLElement, shouldReveal?: boolean): void; 101 | revealContent(slide: slideType, showClass?: string | false): void; 102 | done(slide: slideType): void; 103 | /** 104 | * Check if the given slide is the current slide in the carousel 105 | */ 106 | isCurrentSlide(slide: slideType): boolean; 107 | /** 108 | * Check if the given slide is opening slide 109 | */ 110 | isOpeningSlide(slide?: slideType): boolean; 111 | /** 112 | * Show loading icon inside given slide 113 | */ 114 | showLoading(slide: slideType): void; 115 | /** 116 | * Hide loading icon inside given slide 117 | */ 118 | hideLoading(slide: slideType): void; 119 | /** 120 | * Show error message for given slide 121 | */ 122 | setError(slide: slideType, message: string): void; 123 | /** 124 | * Clear content for given slide 125 | */ 126 | clearContent(slide: slideType): void; 127 | /** 128 | * Retrieve current carousel slide 129 | */ 130 | getSlide(): slideType | undefined; 131 | /** 132 | * Initiate closing 133 | */ 134 | close(event?: Event, hideClass?: string | false): void; 135 | /** 136 | * Clear idle state timer 137 | */ 138 | clearIdle(): void; 139 | /** 140 | * Activate idle state 141 | */ 142 | setIdle(now?: boolean): void; 143 | /** 144 | * Deactivate idle state 145 | */ 146 | endIdle(): void; 147 | /** 148 | * Reset idle state timer 149 | */ 150 | resetIdle(): void; 151 | /** 152 | * Toggle idle state 153 | */ 154 | toggleIdle(): void; 155 | /** 156 | * Toggle full-screen mode 157 | */ 158 | toggleFullscreen(): void; 159 | /** 160 | * Check if the instance is being closed or already destroyed 161 | */ 162 | isClosing(): boolean; 163 | private proceedClose; 164 | /** 165 | * Destroy the instance 166 | */ 167 | destroy(): void; 168 | /** 169 | * Add a click handler that launches Fancybox after clicking on items that match the provided selector 170 | */ 171 | static bind(selector: string, userOptions?: Partial): void; 172 | /** 173 | * Add a click handler to the given container that launches Fancybox after clicking items that match the provided selector 174 | */ 175 | static bind(container: HTMLElement | null, selector: string, userOptions?: Partial): void; 176 | /** 177 | * Remove selector from the list of selectors that triggers Fancybox 178 | */ 179 | static unbind(selector: string): void; 180 | /** 181 | * Remove all or one selector from the list of selectors that triggers Fancybox for the given container 182 | */ 183 | static unbind(container: HTMLElement | null, selector?: string): void; 184 | /** 185 | * Immediately destroy all instances (without closing animation) and clean up 186 | */ 187 | static destroy(): void; 188 | /** 189 | * Start Fancybox using click event 190 | */ 191 | static fromEvent(event: MouseEvent): Fancybox; 192 | /** 193 | * Start Fancybox using the previously assigned selector 194 | */ 195 | static fromSelector(selector: string, options?: Partial): void; 196 | /** 197 | * Start Fancybox using the previously assigned selector for the given container 198 | */ 199 | static fromSelector(container: HTMLElement | null, selector: string, options?: Partial): void; 200 | /** 201 | * Start Fancybox using HTML elements 202 | */ 203 | static fromNodes(nodes: Array, options?: Partial): Fancybox; 204 | /** 205 | * Retrieve instance by identifier or the top most instance, if identifier is not provided 206 | */ 207 | static getInstance(id?: number): Fancybox | null; 208 | /** 209 | * Retrieve reference to the current slide of the highest active Fancybox instance 210 | */ 211 | static getSlide(): slideType | null; 212 | /** 213 | * Create new Fancybox instance with provided options 214 | */ 215 | static show(slides?: Array, options?: Partial): Fancybox; 216 | /** 217 | * Slide carousel of the current instance to the next page 218 | */ 219 | static next(): void; 220 | /** 221 | * Slide carousel of the current instance to the previous page 222 | */ 223 | static prev(): void; 224 | /** 225 | * Close all or topmost currently active instance 226 | */ 227 | static close(all?: boolean, ...args: any): void; 228 | } 229 | -------------------------------------------------------------------------------- /types/Fancybox/consts.d.ts: -------------------------------------------------------------------------------- 1 | export declare enum States { 2 | Init = 0, 3 | Ready = 1, 4 | Closing = 2, 5 | CustomClosing = 3, 6 | Destroy = 4 7 | } 8 | export declare enum SlideStates { 9 | Loading = 0, 10 | Opening = 1, 11 | Ready = 2, 12 | Closing = 3 13 | } 14 | -------------------------------------------------------------------------------- /types/Fancybox/options.d.ts: -------------------------------------------------------------------------------- 1 | import { Events } from "./types"; 2 | import { Fancybox } from "./Fancybox"; 3 | import { slideType } from "../Carousel/types"; 4 | import { OptionsType as CarouselOptionsType } from "../Carousel/options"; 5 | import { ClickAction as PanzoomClickAction } from "../Panzoom/types"; 6 | export interface PluginsOptionsType { 7 | } 8 | export type ClickAction = PanzoomClickAction | "close" | "next" | "prev"; 9 | export type keyboardAction = "close" | "next" | "prev"; 10 | export type keyboardType = { 11 | Escape: keyboardAction; 12 | Delete: keyboardAction; 13 | Backspace: keyboardAction; 14 | PageUp: keyboardAction; 15 | PageDown: keyboardAction; 16 | ArrowUp: keyboardAction; 17 | ArrowDown: keyboardAction; 18 | ArrowRight: keyboardAction; 19 | ArrowLeft: keyboardAction; 20 | }; 21 | export interface ComponentOptionsType { 22 | /** 23 | * Should backdrop and UI elements fade in/out on start/close 24 | */ 25 | animated: boolean | ((instance: Fancybox) => boolean); 26 | /** 27 | * Set focus on first focusable element after displaying content 28 | */ 29 | autoFocus: boolean | ((instance: Fancybox) => boolean); 30 | /** 31 | * The action to perform when the user clicks on the backdrop 32 | */ 33 | backdropClick: ClickAction | ((instance: Fancybox) => ClickAction | void); 34 | /** 35 | * Change caption per slide 36 | */ 37 | caption?: string | HTMLElement | false | ((instance: Fancybox, slide: slideType, caption?: string | HTMLElement) => string | HTMLElement | false); 38 | /** 39 | * Optional object to extend options for main Carousel 40 | */ 41 | Carousel: Partial; 42 | /** 43 | * If true, a close button will be created above the content 44 | */ 45 | closeButton: "auto" | boolean; 46 | /** 47 | * If true, previously opened instance will be closed 48 | */ 49 | closeExisting: boolean; 50 | /** 51 | * If true, only one caption element will be used for all slides 52 | */ 53 | commonCaption: boolean; 54 | /** 55 | * If compact mode needs to be activated 56 | */ 57 | compact: boolean | ((instance: Fancybox) => boolean); 58 | /** 59 | * The action to perform when the user clicks on the content 60 | */ 61 | contentClick: ClickAction | ((instance: Fancybox) => ClickAction | void); 62 | /** 63 | * The action to take when the user double-clicks on the content 64 | */ 65 | contentDblClick: ClickAction | ((instance: Fancybox) => ClickAction | void); 66 | /** 67 | * Default content type 68 | */ 69 | defaultType: "image" | "iframe" | "youtube" | "vimeo" | "inline" | "html" | "ajax"; 70 | /** 71 | * The default value of the CSS `display` property for hidden inline elements 72 | */ 73 | defaultDisplay: "flex" | "block" | string; 74 | /** 75 | * Enable drag-to-close gesture - drag content up/down to close instance 76 | */ 77 | dragToClose: boolean | ((instance: Fancybox) => boolean); 78 | /** 79 | * If Fancybox should start in full-scren mode 80 | */ 81 | Fullscreen: { 82 | autoStart: boolean; 83 | }; 84 | /** 85 | * If true, all matching elements will be grouped together in one group regardless of the value of `data-fancybox` attribute 86 | */ 87 | groupAll: boolean; 88 | /** 89 | * The name of the attribute used for grouping 90 | */ 91 | groupAttr: string; 92 | /** 93 | * Change content height per slide 94 | */ 95 | height?: "auto" | number | ((instance: Fancybox, slide: slideType, origHeight: number) => "auto" | number); 96 | /** 97 | * Class name to be applied to the content to hide it. 98 | * Note: If you disable image zoom, this class name will be used to run the image hide animation. 99 | */ 100 | hideClass: string | false | ((instance: Fancybox) => string | false); 101 | /** 102 | * If browser scrollbar should be hidden 103 | */ 104 | hideScrollbar: boolean; 105 | /** 106 | * Custom `id` for the instance 107 | */ 108 | id?: number | string; 109 | /** 110 | * Timeout in milliseconds after which to activate idle mode 111 | */ 112 | idle: number | false; 113 | /** 114 | * Keyboard events 115 | */ 116 | keyboard: keyboardType; 117 | /** 118 | * Localization of strings 119 | */ 120 | l10n?: Record; 121 | /** 122 | * Custom class name for the container 123 | */ 124 | mainClass?: string; 125 | /** 126 | * Optional event listeners 127 | */ 128 | on?: Partial; 129 | /** 130 | * Element where container is appended 131 | * Note. If no element is specified, container is appended to the `document.body` 132 | */ 133 | parentEl?: HTMLElement | null; 134 | /** 135 | * Set focus back to trigger element after closing Fancybox 136 | */ 137 | placeFocusBack: boolean; 138 | /** 139 | * Change source per slide 140 | */ 141 | src?: string | HTMLElement | ((instance: Fancybox, slide: slideType) => string | HTMLElement); 142 | /** 143 | * Class name to be applied to the content to reveal it. 144 | * Note: If you disable image zoom, this class name will be used to run the image reveal animation. 145 | */ 146 | showClass: string | false | ((instance: Fancybox) => string | false); 147 | /** 148 | * Index of active slide on the start 149 | */ 150 | startIndex: number; 151 | /** 152 | * HTML templates for various elements 153 | */ 154 | tpl: { 155 | closeButton?: string; 156 | main?: string; 157 | }; 158 | /** 159 | * Trap focus inside Fancybox 160 | */ 161 | trapFocus: boolean; 162 | /** 163 | * Change content width per slide 164 | */ 165 | width?: "auto" | number | ((instance: Fancybox, slide: slideType, origWidth: number) => "auto" | number); 166 | /** 167 | * Mouse wheel event listener 168 | */ 169 | wheel: "zoom" | "pan" | "close" | "slide" | false | ((instance: Fancybox, event: MouseEvent) => "zoom" | "pan" | "close" | "slide" | false); 170 | event?: MouseEvent | undefined; 171 | triggerEl?: HTMLElement | null; 172 | delegate?: HTMLElement | null; 173 | } 174 | export declare const defaultOptions: ComponentOptionsType; 175 | export type OptionsType = PluginsOptionsType & ComponentOptionsType; 176 | -------------------------------------------------------------------------------- /types/Fancybox/plugins/Hash/Hash.d.ts: -------------------------------------------------------------------------------- 1 | import { Plugin } from "../../../shared/Base/Plugin"; 2 | import { Fancybox } from "../../Fancybox"; 3 | export type HashOptionsType = { 4 | slug?: string; 5 | }; 6 | declare module "../../../Carousel/types" { 7 | interface slideType { 8 | slug?: string; 9 | } 10 | } 11 | declare module "../../../Fancybox/options" { 12 | interface PluginsOptionsType { 13 | Hash?: Boolean | Partial; 14 | slug?: string; 15 | } 16 | } 17 | export declare const defaultOptions: HashOptionsType; 18 | export declare class Hash extends Plugin { 19 | private onReady; 20 | private onChange; 21 | private onClose; 22 | attach(): void; 23 | detach(): void; 24 | static parseURL(): { 25 | hash: string; 26 | slug: string; 27 | index: number; 28 | }; 29 | static startFromUrl(): void; 30 | static destroy(): void; 31 | } 32 | -------------------------------------------------------------------------------- /types/Fancybox/plugins/Html/Html.d.ts: -------------------------------------------------------------------------------- 1 | import { Plugin } from "../../../shared/Base/Plugin"; 2 | import { slideType } from "../../../Carousel/types"; 3 | import { Fancybox } from "../../Fancybox"; 4 | export type HtmlOptionsType = { 5 | /** 6 | * A body of data to be sent in the XHR request 7 | */ 8 | ajax: Document | XMLHttpRequestBodyInit | null; 9 | /** 10 | * If resize the iframe element to match the dimensions of the iframe page content 11 | */ 12 | autoSize: boolean; 13 | /** 14 | * Attributes of an iframe element 15 | */ 16 | iframeAttr: Record; 17 | /** 18 | * If wait for iframe content to load before displaying 19 | */ 20 | preload: boolean; 21 | /** 22 | * If videos should start playing automatically after they are displayed 23 | */ 24 | videoAutoplay: boolean; 25 | /** 26 | * HTML5 video element template 27 | */ 28 | videoTpl: string; 29 | /** 30 | * Default HTML5 video format 31 | */ 32 | videoFormat: string; 33 | /** 34 | * Aspect ratio of the video element 35 | */ 36 | videoRatio: number; 37 | /** 38 | * Vimeo embedded player parameters 39 | * https://vimeo.zendesk.com/hc/en-us/articles/360001494447-Player-parameters-overview 40 | */ 41 | vimeo: { 42 | byline: 0 | 1; 43 | color: string; 44 | controls: 0 | 1; 45 | dnt: 0 | 1; 46 | muted: 0 | 1; 47 | }; 48 | /** 49 | * YouTube embedded player parameters 50 | * https://developers.google.com/youtube/player_parameters#Parameters 51 | */ 52 | youtube: { 53 | controls?: 0 | 1; 54 | enablejsapi?: 0 | 1; 55 | nocookie?: 0 | 1; 56 | rel?: 0 | 1; 57 | fs?: 0 | 1; 58 | }; 59 | }; 60 | declare module "../../../Fancybox/options" { 61 | interface PluginsOptionsType { 62 | Html?: Boolean | Partial; 63 | } 64 | } 65 | export declare const contentTypes: readonly ["image", "html", "ajax", "inline", "clone", "iframe", "map", "pdf", "html5video", "youtube", "vimeo"]; 66 | type contentType = (typeof contentTypes)[number]; 67 | declare module "../../../Carousel/types" { 68 | interface slideType { 69 | type?: contentType; 70 | defaultType?: contentType; 71 | ratio?: string | number; 72 | videoFormat?: string; 73 | ajax?: Document | XMLHttpRequestBodyInit | null; 74 | xhr?: XMLHttpRequest | null; 75 | poller?: ReturnType; 76 | placeholderEl?: HTMLElement | null; 77 | iframeEl?: HTMLIFrameElement | null; 78 | preload?: boolean; 79 | autoSize?: boolean; 80 | videoId?: string; 81 | autoplay?: boolean; 82 | } 83 | } 84 | export declare class Html extends Plugin { 85 | static defaults: HtmlOptionsType; 86 | private onBeforeInitSlide; 87 | private onCreateSlide; 88 | private onClearContent; 89 | private onSelectSlide; 90 | private onUnselectSlide; 91 | private onDone; 92 | private onRefresh; 93 | private onMessage; 94 | private loadAjaxContent; 95 | private setInlineContent; 96 | private setIframeContent; 97 | private resizeIframe; 98 | private playVideo; 99 | private processType; 100 | setContent(slide: slideType): void; 101 | private setAspectRatio; 102 | attach(): void; 103 | detach(): void; 104 | } 105 | export {}; 106 | -------------------------------------------------------------------------------- /types/Fancybox/plugins/Images/Images.d.ts: -------------------------------------------------------------------------------- 1 | import { Plugin } from "../../../shared/Base/Plugin"; 2 | import { Panzoom } from "../../../Panzoom/Panzoom"; 3 | import { OptionsType as PanzoomOptionsType } from "../../../Panzoom/options"; 4 | import { Carousel } from "../../../Carousel/Carousel"; 5 | import { slideType } from "../../../Carousel/types"; 6 | import { Fancybox } from "../../Fancybox"; 7 | export type OptionsType = { 8 | /** 9 | * Set custom content per slide 10 | */ 11 | content?: (instance: Images, slide: slideType) => string | HTMLElement | HTMLPictureElement; 12 | /** 13 | * Initial image zoom level, see Panzoom documentation for more information. 14 | */ 15 | initialSize: "fit" | "cover" | "full" | "max" | ((instance: Images) => "fit" | "cover" | "full" | "max"); 16 | /** 17 | * Custom options for Panzoom instance, see Panzoom documentation for more information. 18 | */ 19 | Panzoom: Partial; 20 | /** 21 | * If the image download needs to be prevented 22 | */ 23 | protected: boolean; 24 | /** 25 | * If animate an image with zoom in/out animation when launching/closing Fancybox 26 | */ 27 | zoom: boolean; 28 | /** 29 | * If zoom animation should animate the opacity when launching/closing Fancybox 30 | */ 31 | zoomOpacity: "auto" | boolean; 32 | }; 33 | declare module "../../../Carousel/types" { 34 | interface slideType { 35 | panzoom?: Panzoom; 36 | imageEl?: HTMLImageElement | HTMLPictureElement; 37 | srcset?: string; 38 | sizes?: string; 39 | media?: string; 40 | sources?: string; 41 | } 42 | } 43 | declare module "../../../Fancybox/options" { 44 | interface PluginsOptionsType { 45 | Images: Boolean | Partial; 46 | } 47 | } 48 | export type ImagesOptionsType = Partial; 49 | export declare class Images extends Plugin { 50 | static defaults: OptionsType; 51 | onCreateSlide(_fancybox: Fancybox, _carousel: Carousel, slide: slideType): void; 52 | onRemoveSlide(_fancybox: Fancybox, _carousel: Carousel, slide: slideType): void; 53 | onChange(_fancybox: Fancybox, carousel: Carousel, page: number, _prevPage: number): void; 54 | onClose(): void; 55 | setImage(slide: slideType, imageSrc: string): void; 56 | process(slide: slideType, imageSrc: string): Promise; 57 | zoomIn(slide: slideType): Promise; 58 | getZoomInfo(slide: slideType): false | { 59 | x: number; 60 | y: number; 61 | scale: number; 62 | opacity: boolean; 63 | }; 64 | attach(): void; 65 | detach(): void; 66 | } 67 | -------------------------------------------------------------------------------- /types/Fancybox/plugins/Slideshow/Slideshow.d.ts: -------------------------------------------------------------------------------- 1 | import { Plugin } from "../../../shared/Base/Plugin"; 2 | import type { AutoplayOptionsType } from "../../../Carousel/plugins/Autoplay/Autoplay"; 3 | import { Fancybox } from "../../Fancybox"; 4 | type OptionsType = { 5 | /** 6 | * Custom options for Carousel Autoplay plugin instance, see relevant documentation for more information 7 | */ 8 | Autoplay?: Partial; 9 | /** 10 | * Keyboard shortcut to toggle Slideshow 11 | */ 12 | key: string; 13 | /** 14 | * If the slideshow should automatically activate after Fancybox is launched 15 | */ 16 | playOnStart: boolean; 17 | /** 18 | * Change where progress bar is appended 19 | */ 20 | progressParentEl: HTMLElement | null | ((slideshow: Slideshow) => HTMLElement | null); 21 | /** 22 | * Delay (in milliseconds) before the slide change 23 | */ 24 | timeout: number; 25 | }; 26 | export type SlideshowOptionsType = Partial; 27 | declare module "../../../Fancybox/options" { 28 | interface PluginsOptionsType { 29 | Slideshow: Boolean | Partial; 30 | } 31 | } 32 | export declare class Slideshow extends Plugin { 33 | static defaults: OptionsType; 34 | private ref; 35 | private onPrepare; 36 | private onReady; 37 | private onDone; 38 | private onKeydown; 39 | attach(): void; 40 | detach(): void; 41 | } 42 | export {}; 43 | -------------------------------------------------------------------------------- /types/Fancybox/plugins/Thumbs/Thumbs.d.ts: -------------------------------------------------------------------------------- 1 | import { Plugin } from "../../../shared/Base/Plugin"; 2 | import { ThumbsOptionsType as CarouselThumbsOptionsType } from "../../../Carousel/plugins/Thumbs/Thumbs"; 3 | import { Fancybox } from "../../Fancybox"; 4 | type OptionsType = CarouselThumbsOptionsType & { 5 | /** 6 | * Keyboard shortcut to toggle thumbnail container 7 | */ 8 | key: string | false; 9 | /** 10 | * Change the location where the thumbnail container is added 11 | */ 12 | parentEl: HTMLElement | null | (() => HTMLElement | null); 13 | /** 14 | * If thumbnail bar should appear automatically after Fancybox is launched 15 | */ 16 | showOnStart: boolean; 17 | }; 18 | export type ThumbsOptionsType = Partial; 19 | declare module "../../../Fancybox/options" { 20 | interface PluginsOptionsType { 21 | Thumbs: Boolean | Partial; 22 | } 23 | } 24 | export declare class Thumbs extends Plugin { 25 | static defaults: OptionsType; 26 | private ref; 27 | private hidden; 28 | get isEnabled(): boolean; 29 | get isHidden(): boolean; 30 | private onClick; 31 | private onCreateSlide; 32 | private onInit; 33 | private onResize; 34 | private onKeydown; 35 | toggle(): void; 36 | show(): void; 37 | hide(): void; 38 | refresh(): void; 39 | attach(): void; 40 | detach(): void; 41 | } 42 | export {}; 43 | -------------------------------------------------------------------------------- /types/Fancybox/plugins/Toolbar/Toolbar.d.ts: -------------------------------------------------------------------------------- 1 | import { Plugin } from "../../../shared/Base/Plugin"; 2 | import { PanzoomButtonsType } from "../../../shared/buttons"; 3 | import { Fancybox } from "../../Fancybox"; 4 | export declare enum ToolbarStates { 5 | Init = 0, 6 | Ready = 1, 7 | Disabled = 2 8 | } 9 | export declare const ToolbarItems: { 10 | infobar: { 11 | tpl: string; 12 | }; 13 | download: { 14 | tpl: string; 15 | }; 16 | prev: { 17 | tpl: string; 18 | }; 19 | next: { 20 | tpl: string; 21 | }; 22 | slideshow: { 23 | tpl: string; 24 | }; 25 | fullscreen: { 26 | tpl: string; 27 | }; 28 | thumbs: { 29 | tpl: string; 30 | }; 31 | close: { 32 | tpl: string; 33 | }; 34 | }; 35 | export type ToolbarItemType = { 36 | tpl: string; 37 | click?: (instance: Toolbar, event: Event) => void; 38 | }; 39 | export type ToolbarItemsType = Record; 40 | export type ToolbarItemKey = keyof PanzoomButtonsType | keyof ToolbarItemsType; 41 | export type ToolbarPosition = "left" | "middle" | "right"; 42 | type OptionsType = { 43 | /** 44 | * If absolutely position container; 45 | * "auto" - absolutely positioned if there is no item in the middle column. 46 | */ 47 | absolute: "auto" | boolean; 48 | /** 49 | * What toolbar items to display 50 | */ 51 | display: Record>; 52 | /** 53 | * If enabled; "auto" - enable only if there is at least one image in the gallery 54 | */ 55 | enabled: "auto" | boolean; 56 | /** 57 | * Collection of all available toolbar items 58 | */ 59 | items: ToolbarItemsType; 60 | /** 61 | * Change where toolbar container is appended 62 | */ 63 | parentEl: HTMLElement | null | ((toolbar: Toolbar) => HTMLElement | null); 64 | }; 65 | export type ToolbarOptionsType = Partial; 66 | declare module "../../../Fancybox/options" { 67 | interface PluginsOptionsType { 68 | Toolbar: Boolean | Partial; 69 | } 70 | } 71 | export declare class Toolbar extends Plugin { 72 | static defaults: OptionsType; 73 | state: ToolbarStates; 74 | private container; 75 | private onReady; 76 | private onClick; 77 | private onChange; 78 | private onRefresh; 79 | private onDone; 80 | private createContainer; 81 | private createEl; 82 | private removeContainer; 83 | attach(): void; 84 | detach(): void; 85 | } 86 | export {}; 87 | -------------------------------------------------------------------------------- /types/Fancybox/plugins/index.d.ts: -------------------------------------------------------------------------------- 1 | import { PluginsType } from "../types"; 2 | export type * from "./Hash/Hash"; 3 | export type * from "./Images/Images"; 4 | export type * from "./Html/Html"; 5 | export type * from "./Slideshow/Slideshow"; 6 | export type * from "./Thumbs/Thumbs"; 7 | export type * from "./Toolbar/Toolbar"; 8 | export declare const FancyboxPlugins: PluginsType; 9 | -------------------------------------------------------------------------------- /types/Fancybox/types.d.ts: -------------------------------------------------------------------------------- 1 | import { Constructor } from "../shared/Base/types"; 2 | import { Plugin } from "../shared/Base/Plugin"; 3 | import { Fancybox } from "./Fancybox"; 4 | export type PluginsType = Record>>; 5 | import { CarouselEventsType } from "../Carousel/types"; 6 | import { ComponentEventsType } from "../shared/Base/types"; 7 | export type EventsType = ComponentEventsType 8 | /** 9 | * Initialization has started, plugins have been added 10 | */ 11 | | "init" 12 | /** 13 | * The layout is initialized 14 | */ 15 | | "initLayout" 16 | /** 17 | * The Carousel is initialized 18 | */ 19 | | "initCarousel" 20 | /** 21 | * Initialization has been completed 22 | */ 23 | | "ready" 24 | /** 25 | * The content on one of the slides starts loading 26 | */ 27 | | "loading" 28 | /** 29 | * Content is loaded on one of the slides but is not yet displayed 30 | */ 31 | | "loaded" 32 | /** 33 | * Content could not be loaded in one of the slides 34 | */ 35 | | "error" 36 | /** 37 | * Content is ready to be displayed on one of the slides 38 | */ 39 | | "reveal" 40 | /** 41 | * Content is revealed on one of the slides 42 | */ 43 | | "done" 44 | /** 45 | * Cleared content inside the slide 46 | */ 47 | | "clearContent" 48 | /** 49 | * The idle state is activated 50 | */ 51 | | "setIdle" 52 | /** 53 | * The idle state is deactivated 54 | */ 55 | | "endIdle" 56 | /** 57 | * The slideshow has been deactivated 58 | */ 59 | | "endSlideshow" 60 | /** 61 | * A keyboard button is pressed 62 | */ 63 | | "keydown" 64 | /** 65 | * Single click event has been detected 66 | */ 67 | | "click" 68 | /** 69 | * Wheel event has been detected 70 | */ 71 | | "wheel" 72 | /** 73 | * A window resizing event was detected 74 | */ 75 | | "resize" 76 | /** 77 | * Closing has begun and can be prevented 78 | */ 79 | | "shouldClose" 80 | /** 81 | * The slideshow is activated 82 | */ 83 | | "startSlideshow" 84 | /** 85 | * Closing is ongoing 86 | */ 87 | | "close" 88 | /** 89 | * Closing is complete 90 | */ 91 | | "destroy" | `Carousel.${CarouselEventsType}`; 92 | export type Events = Record void>; 93 | -------------------------------------------------------------------------------- /types/Panzoom/consts.d.ts: -------------------------------------------------------------------------------- 1 | export declare enum States { 2 | Init = 0, 3 | Error = 1, 4 | Ready = 2, 5 | Panning = 3, 6 | Mousemove = 4, 7 | Destroy = 5 8 | } 9 | export declare const MatrixKeys: readonly ["a", "b", "c", "d", "e", "f"]; 10 | -------------------------------------------------------------------------------- /types/Panzoom/options.d.ts: -------------------------------------------------------------------------------- 1 | import { Bounds, Events, ClickAction, WheelAction } from "./types"; 2 | export interface PluginsOptionsType { 3 | } 4 | export interface classesType { 5 | /** 6 | * Class name that specifies the content 7 | */ 8 | content: string; 9 | /** 10 | * Content is currently loading 11 | */ 12 | isLoading: string; 13 | /** 14 | * Content can be zoomed in 15 | */ 16 | canZoomIn: string; 17 | /** 18 | * Content can be zoomed out 19 | */ 20 | canZoomOut: string; 21 | /** 22 | * Content is draggable 23 | */ 24 | isDraggable: string; 25 | /** 26 | * User is currently dragging 27 | */ 28 | isDragging: string; 29 | /** 30 | * Container is in the fullscreen mode 31 | */ 32 | inFullscreen: string; 33 | /** 34 | * Class name applied to `html` element indicating that at least one container is in full screen mode 35 | */ 36 | htmlHasFullscreen: string; 37 | } 38 | export interface ComponentOptionsType { 39 | /** 40 | * Specify the content element. If no content is specified, it will be assumed that the content is the first child element 41 | */ 42 | content: Element | null | ((...any: any) => Element | null); 43 | /** 44 | * Content width 45 | */ 46 | width: "auto" | number | ((...any: any) => "auto" | number); 47 | /** 48 | * Content height 49 | */ 50 | height: "auto" | number | ((...any: any) => "auto" | number); 51 | /** 52 | * Use touch events to pan content or follow the cursor. 53 | * Automatically switches to `drag` if user’s primary input mechanism can not hover over elements. 54 | * Tip: experiment with `mouseMoveFactor` option for better ux. 55 | */ 56 | panMode: "drag" | "mousemove"; 57 | /** 58 | * Enable touch guestures 59 | */ 60 | touch: boolean | ((...any: any) => boolean); 61 | /** 62 | * If a CSS transformation is to be applied to the parent element of the content 63 | */ 64 | transformParent: boolean; 65 | /** 66 | * Minimum touch drag distance to start panning content; 67 | * it can help detect click events on touch devices 68 | */ 69 | dragMinThreshold: number; 70 | /** 71 | * Lock axis while dragging 72 | */ 73 | lockAxis: "x" | "y" | "xy" | false; 74 | /** 75 | * The proportion by which the content pans relative to the cursor position; 76 | * for example, `2` means the cursor only needs to move 80% of the width/height of the content to reach the container border 77 | */ 78 | mouseMoveFactor: number; 79 | /** 80 | * Animation friction when content is moved depending on cursor position 81 | */ 82 | mouseMoveFriction: number; 83 | /** 84 | * Globally enable (or disable) any zooming 85 | */ 86 | zoom: boolean | ((...any: any) => boolean); 87 | /** 88 | * Enable pinch-to-zoom guesture to zoom in/out using two fingers 89 | */ 90 | pinchToZoom: boolean | ((...any: any) => boolean); 91 | /** 92 | * Allow panning only when content is zoomed in. 93 | * Using `true` allows other components (e.g. Carousel) to pick up touch events. 94 | * Note: if set to "auto", disables for touch devices (to allow page scrolling). 95 | */ 96 | panOnlyZoomed: boolean | "auto" | ((...any: any) => boolean | "auto"); 97 | /** 98 | * Minimum scale level 99 | */ 100 | minScale: number | ((...any: any) => number); 101 | /** 102 | * The maximum zoom level the user can zoom. 103 | * If, for example, it is `2`, then the user can zoom content to 2x the original size 104 | */ 105 | maxScale: number | ((...any: any) => number); 106 | /** 107 | * Default friction for animations, the value must be in the interval [0, 1) 108 | */ 109 | friction: number; 110 | /** 111 | * Friction while panning/dragging 112 | */ 113 | dragFriction: number; 114 | /** 115 | * Friction while decelerating after drag end 116 | */ 117 | decelFriction: number; 118 | /** 119 | * Add click event listener 120 | */ 121 | click: ClickAction | ((...any: any) => ClickAction); 122 | /** 123 | * Add double click event listener 124 | */ 125 | dblClick: ClickAction | ((...any: any) => ClickAction); 126 | /** 127 | * Add mouse wheel event listener 128 | */ 129 | wheel: WheelAction | ((...any: any) => WheelAction); 130 | /** 131 | * Number of times to stop restricting wheel operation after min/max zoom level is reached 132 | */ 133 | wheelLimit: number; 134 | /** 135 | * Content x/y boundaries 136 | */ 137 | bounds: "auto" | ((...any: any) => Bounds); 138 | /** 139 | * Force to ignore boundaries boundar; always or only when the drag is locked on the axis 140 | */ 141 | infinite: boolean | "x" | "y"; 142 | /** 143 | * If enable rubberband effect - drag out of bounds with resistance 144 | */ 145 | rubberband: boolean; 146 | /** 147 | * Show loading icon 148 | */ 149 | spinner: boolean; 150 | /** 151 | * Bounce after hitting the edge 152 | */ 153 | bounce: boolean; 154 | /** 155 | * Limit the animation's maximum acceleration 156 | */ 157 | maxVelocity: number | ((...any: any) => number); 158 | /** 159 | * Class names for DOM elements 160 | */ 161 | classes: classesType; 162 | /** 163 | * Localization of strings 164 | */ 165 | l10n?: Record; 166 | /** 167 | * Optional event listeners 168 | */ 169 | on?: Partial; 170 | } 171 | export declare const defaultOptions: ComponentOptionsType; 172 | export type OptionsType = PluginsOptionsType & ComponentOptionsType; 173 | -------------------------------------------------------------------------------- /types/Panzoom/plugins/Pins/Pins.d.ts: -------------------------------------------------------------------------------- 1 | import { Panzoom } from "../../../Panzoom/Panzoom"; 2 | import { Plugin } from "../../../shared/Base/Plugin"; 3 | declare module "../../../Panzoom/options" { 4 | interface PluginsOptionsType { 5 | Pins?: Boolean; 6 | } 7 | } 8 | type PinsOptionsType = {}; 9 | type PinsEventsType = ""; 10 | export declare class Pins extends Plugin { 11 | static defaults: {}; 12 | container: HTMLElement | null; 13 | pins: Array; 14 | onTransform(instance: Panzoom): void; 15 | attach(): void; 16 | detach(): void; 17 | } 18 | export {}; 19 | -------------------------------------------------------------------------------- /types/Panzoom/plugins/Toolbar/Toolbar.d.ts: -------------------------------------------------------------------------------- 1 | import { Plugin } from "../../../shared/Base/Plugin"; 2 | import { Panzoom } from "../../Panzoom"; 3 | import { PanzoomButtons } from "../../../shared/buttons"; 4 | export type ToolbarItemType = { 5 | icon: string; 6 | action?: string; 7 | change?: Record; 8 | click?: (instance: Panzoom) => void; 9 | title?: string; 10 | }; 11 | export type ToolbarOptionsType = { 12 | display: Array; 13 | items: Record; 14 | svgAttr: Record; 15 | }; 16 | declare module "../../../Panzoom/options" { 17 | interface PluginsOptionsType { 18 | Toolbar?: Boolean | Partial; 19 | } 20 | } 21 | type ToolbarEventsType = ""; 22 | export declare class Toolbar extends Plugin { 23 | static defaults: ToolbarOptionsType; 24 | container: HTMLElement | null; 25 | addItem(key: string): void; 26 | createContainer(): void; 27 | removeContainer(): void; 28 | attach(): void; 29 | detach(): void; 30 | } 31 | export {}; 32 | -------------------------------------------------------------------------------- /types/Panzoom/plugins/index.d.ts: -------------------------------------------------------------------------------- 1 | import { PluginsType } from "../types"; 2 | export declare const PanzoomPlugins: PluginsType; 3 | -------------------------------------------------------------------------------- /types/Panzoom/types.d.ts: -------------------------------------------------------------------------------- 1 | import { MatrixKeys } from "./consts"; 2 | export type MatrixValues = { 3 | [K in (typeof MatrixKeys)[number]]: number; 4 | }; 5 | export type Bounds = { 6 | x: { 7 | min: number; 8 | max: number; 9 | }; 10 | y: { 11 | min: number; 12 | max: number; 13 | }; 14 | }; 15 | import { ComponentEventsType } from "../shared/Base/types"; 16 | export type EventsType = ComponentEventsType 17 | /** 18 | * Initialization has started, plugins have been added 19 | */ 20 | | "init" 21 | /** 22 | * Content is loading 23 | */ 24 | | "beforeLoad" 25 | /** 26 | * Content has loaded successfully 27 | */ 28 | | "afterLoad" 29 | /** 30 | * Content did not load successfully 31 | */ 32 | | "error" 33 | /** 34 | * Panzoom has successfully launched 35 | */ 36 | | "ready" 37 | /** 38 | * Single click event has been detected 39 | */ 40 | | "click" 41 | /** 42 | * Double click event has been detected 43 | */ 44 | | "dblClick" 45 | /** 46 | * Wheel event has been detected 47 | */ 48 | | "wheel" 49 | /** 50 | * Container and content dimensions have been updated 51 | */ 52 | | "refresh" 53 | /** 54 | * Pointer down event has been detected 55 | */ 56 | | "touchStart" 57 | /** 58 | * Pointer move event has been detected 59 | */ 60 | | "touchMove" 61 | /** 62 | * Pointer up/cancel event has been detected 63 | */ 64 | | "touchEnd" 65 | /** 66 | * Deceleration animation has started 67 | */ 68 | | "decel" 69 | /** 70 | * Mouse move event has been detected 71 | */ 72 | | "mouseMove" 73 | /** 74 | * Animation has started 75 | */ 76 | | "startAnimation" 77 | /** 78 | * Animation has ended 79 | */ 80 | | "endAnimation" 81 | /** 82 | * The "transform" CSS property of the content will be updated. 83 | */ 84 | | "beforeTransform" 85 | /** 86 | * The "transform" CSS property of the content has been updated 87 | */ 88 | | "afterTransform" 89 | /** 90 | * Enter full-screen mode 91 | */ 92 | | "enterFS" 93 | /** 94 | * Exit full-screen mode 95 | */ 96 | | "exitFS" 97 | /** 98 | * Instance is detroyed 99 | */ 100 | | "destroy"; 101 | export type Events = Record void>; 102 | import { Constructor } from "../shared/Base/types"; 103 | import { Plugin } from "../shared/Base/Plugin"; 104 | import { Panzoom } from "./Panzoom"; 105 | export type PluginsType = Record>>; 106 | export type ClickAction = "toggleZoom" | "toggleCover" | "toggleMax" | "zoomToFit" | "zoomToMax" | "iterateZoom" | false; 107 | export type WheelAction = "zoom" | "pan" | false; 108 | export type ZoomOptions = { 109 | friction?: number | "auto"; 110 | originX?: number | "auto"; 111 | originY?: number | "auto"; 112 | event?: Event & MouseEvent; 113 | }; 114 | -------------------------------------------------------------------------------- /types/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "./Panzoom/Panzoom"; 2 | export * from "./Carousel/Carousel"; 3 | export * from "./Fancybox/Fancybox"; 4 | -------------------------------------------------------------------------------- /types/shared/Base/Base.d.ts: -------------------------------------------------------------------------------- 1 | import { DeepGet, DeepKeyOf, Listener } from "./types"; 2 | export declare class Base { 3 | options: Partial; 4 | static version: string; 5 | static defaults: unknown; 6 | protected events: Map>; 7 | constructor(options?: Partial); 8 | setOptions(options: Partial): void; 9 | option>(key: T, ...rest: any): Exclude, Function>; 10 | optionFor>(obj: any, key: T, fallback?: DeepGet, ...rest: any): Exclude, Function>; 11 | cn(key: string): string; 12 | localize(str: string, params?: Array<[string, any]>): string; 13 | on(what: EventsType | EventsType[] | "*", listener: Listener): void; 14 | off(what: EventsType | EventsType[] | "*", listener: Listener): void; 15 | emit(event: EventsType, ...args: any[]): void; 16 | } 17 | -------------------------------------------------------------------------------- /types/shared/Base/Component.d.ts: -------------------------------------------------------------------------------- 1 | import { Constructor } from "./types"; 2 | import { Base } from "./Base"; 3 | import { Plugin } from "./Plugin"; 4 | export declare class Component extends Base { 5 | plugins: Record, any, any>>; 6 | constructor(options?: Partial); 7 | attachPlugins(Plugins?: Record, any, any>>>): void; 8 | detachPlugins(Plugins?: string[]): this; 9 | } 10 | -------------------------------------------------------------------------------- /types/shared/Base/Plugin.d.ts: -------------------------------------------------------------------------------- 1 | import { Base } from "./Base"; 2 | export declare class Plugin extends Base { 3 | instance: ComponentType; 4 | constructor(instance: ComponentType, options: PluginOptionsType); 5 | attach(): void; 6 | detach(): void; 7 | } 8 | -------------------------------------------------------------------------------- /types/shared/Base/types.d.ts: -------------------------------------------------------------------------------- 1 | export type Constructor = new (...args: any[]) => T; 2 | export type Listener = (...args: any[]) => void; 3 | export type DeepKeyOf = { 4 | [K in Extract]: O[K] extends Array ? K : O[K] extends Record ? `${K}` | `${K}.${DeepKeyOf}` : K; 5 | }[Extract]; 6 | export type DeepGet = P extends `${infer Key}.${infer Rest}` ? Key extends keyof O | `${bigint}` ? DeepGet : never : P extends keyof O | `${bigint}` ? O[P & keyof O] : never; 7 | export type ComponentEventsType = "*" | "attachPlugins" | "detachPlugins"; 8 | export type PluginEventsType = "*"; 9 | -------------------------------------------------------------------------------- /types/shared/buttons.d.ts: -------------------------------------------------------------------------------- 1 | export declare const PanzoomButtons: { 2 | panLeft: { 3 | icon: string; 4 | change: { 5 | panX: number; 6 | }; 7 | }; 8 | panRight: { 9 | icon: string; 10 | change: { 11 | panX: number; 12 | }; 13 | }; 14 | panUp: { 15 | icon: string; 16 | change: { 17 | panY: number; 18 | }; 19 | }; 20 | panDown: { 21 | icon: string; 22 | change: { 23 | panY: number; 24 | }; 25 | }; 26 | zoomIn: { 27 | icon: string; 28 | action: string; 29 | }; 30 | zoomOut: { 31 | icon: string; 32 | action: string; 33 | }; 34 | toggle1to1: { 35 | icon: string; 36 | action: string; 37 | }; 38 | toggleZoom: { 39 | icon: string; 40 | action: string; 41 | }; 42 | iterateZoom: { 43 | icon: string; 44 | action: string; 45 | }; 46 | rotateCCW: { 47 | icon: string; 48 | action: string; 49 | }; 50 | rotateCW: { 51 | icon: string; 52 | action: string; 53 | }; 54 | flipX: { 55 | icon: string; 56 | action: string; 57 | }; 58 | flipY: { 59 | icon: string; 60 | action: string; 61 | }; 62 | fitX: { 63 | icon: string; 64 | action: string; 65 | }; 66 | fitY: { 67 | icon: string; 68 | action: string; 69 | }; 70 | reset: { 71 | icon: string; 72 | action: string; 73 | }; 74 | toggleFS: { 75 | icon: string; 76 | action: string; 77 | }; 78 | }; 79 | export type PanzoomButtonType = { 80 | icon: string; 81 | } & ({ 82 | change: Record; 83 | action?: never; 84 | } | { 85 | action: string; 86 | change?: never; 87 | }); 88 | export type PanzoomButtonsType = Record; 89 | -------------------------------------------------------------------------------- /types/shared/spinner.d.ts: -------------------------------------------------------------------------------- 1 | export declare const spinner: string; 2 | -------------------------------------------------------------------------------- /types/shared/utils/PointerTracker.d.ts: -------------------------------------------------------------------------------- 1 | export interface Point { 2 | clientX: number; 3 | clientY: number; 4 | } 5 | export declare class Pointer { 6 | pageX: number; 7 | pageY: number; 8 | clientX: number; 9 | clientY: number; 10 | id: number; 11 | time: number; 12 | nativePointer: Touch | MouseEvent; 13 | constructor(nativePointer: Touch | MouseEvent); 14 | } 15 | export type InputEvent = TouchEvent | MouseEvent; 16 | type StartCallback = (event: InputEvent, pointer: Pointer, currentPointers: Pointer[]) => boolean; 17 | type MoveCallback = (event: InputEvent, changedPointers: Pointer[], previousPointers: Pointer[]) => void; 18 | type EndCallback = (event: InputEvent, pointer: Pointer, currentPointers: Pointer[]) => void; 19 | interface PointerTrackerOptions { 20 | start: StartCallback; 21 | move?: MoveCallback; 22 | end?: EndCallback; 23 | } 24 | export declare class PointerTracker { 25 | private element; 26 | private startCallback; 27 | private moveCallback; 28 | private endCallback; 29 | readonly currentPointers: Pointer[]; 30 | readonly startPointers: Pointer[]; 31 | constructor(element: HTMLElement, { start, move, end, }: PointerTrackerOptions); 32 | private onPointerStart; 33 | private onTouchStart; 34 | private onMove; 35 | private onPointerEnd; 36 | private onTouchEnd; 37 | private triggerPointerStart; 38 | private triggerPointerEnd; 39 | private onWindowBlur; 40 | clear(): void; 41 | stop(): void; 42 | } 43 | export declare function getDistance(a: Point, b?: Point): number; 44 | export declare function getMidpoint(a: Point, b?: Point): Point; 45 | export {}; 46 | -------------------------------------------------------------------------------- /types/shared/utils/addClass.d.ts: -------------------------------------------------------------------------------- 1 | export declare const addClass: (el: HTMLElement | null, classes?: string) => void; 2 | -------------------------------------------------------------------------------- /types/shared/utils/canUseDOM.d.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * Detect if rendering from the client or the server 3 | */ 4 | export declare const canUseDOM: boolean; 5 | -------------------------------------------------------------------------------- /types/shared/utils/getDimensions.d.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * Get actual width of the element, regardless of how much of content is currently visible 3 | */ 4 | export declare const getFullWidth: (elem: HTMLImageElement | SVGSVGElement | HTMLElement) => number; 5 | /** 6 | * Get actual height of the element, regardless of how much of content is currently visible 7 | */ 8 | export declare const getFullHeight: (elem: HTMLImageElement | SVGSVGElement | HTMLElement) => number; 9 | -------------------------------------------------------------------------------- /types/shared/utils/getDirectChildren.d.ts: -------------------------------------------------------------------------------- 1 | export declare const getDirectChildren: (parent: Element, sel?: string) => Element[]; 2 | -------------------------------------------------------------------------------- /types/shared/utils/getFsAPI.d.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * Wrapper for "Fullscreen API" 3 | */ 4 | export declare const getFsAPI: () => any; 5 | -------------------------------------------------------------------------------- /types/shared/utils/getScrollableParent.d.ts: -------------------------------------------------------------------------------- 1 | export declare const isScrollable: (ele: HTMLElement | null) => boolean; 2 | export declare const getScrollableParent: (ele: HTMLElement, limit?: HTMLElement | undefined) => false | HTMLElement; 3 | -------------------------------------------------------------------------------- /types/shared/utils/isInViewport.d.ts: -------------------------------------------------------------------------------- 1 | export declare const isInViewport: (element: HTMLElement) => number; 2 | -------------------------------------------------------------------------------- /types/shared/utils/isNode.d.ts: -------------------------------------------------------------------------------- 1 | export declare const isNode: (variable: any) => boolean; 2 | -------------------------------------------------------------------------------- /types/shared/utils/isPlainObject.d.ts: -------------------------------------------------------------------------------- 1 | export declare const isPlainObject: (obj: any) => boolean; 2 | -------------------------------------------------------------------------------- /types/shared/utils/merge.d.ts: -------------------------------------------------------------------------------- 1 | export declare const merge: >(target: T, ...sources: T[]) => T; 2 | -------------------------------------------------------------------------------- /types/shared/utils/removeClass.d.ts: -------------------------------------------------------------------------------- 1 | export declare const removeClass: (el: HTMLElement | null, classes?: string) => void; 2 | -------------------------------------------------------------------------------- /types/shared/utils/resolve.d.ts: -------------------------------------------------------------------------------- 1 | export declare const resolve: (path: string, obj: T) => any; 2 | -------------------------------------------------------------------------------- /types/shared/utils/round.d.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * Round half up; to be more specific and to ensure things like 1.005 round correctly 3 | */ 4 | export declare const round: (value: number | string, precision?: number) => number; 5 | -------------------------------------------------------------------------------- /types/shared/utils/setFocusOn.d.ts: -------------------------------------------------------------------------------- 1 | export declare const FOCUSABLE_ELEMENTS: string; 2 | export declare const setFocusOn: (node: HTMLElement) => void; 3 | -------------------------------------------------------------------------------- /types/shared/utils/splitClasses.d.ts: -------------------------------------------------------------------------------- 1 | export declare const splitClasses: (classes?: string) => string[]; 2 | -------------------------------------------------------------------------------- /types/shared/utils/stringToHtml.d.ts: -------------------------------------------------------------------------------- 1 | export declare const stringToHtml: (str: string) => HTMLElement; 2 | -------------------------------------------------------------------------------- /types/shared/utils/throttle.d.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * Returns a throttled version of a given function that is only invoked at most 3 | * once within a given threshold of time in milliseconds. 4 | */ 5 | export declare const throttle: (func: Function, timeout: number) => (...args: any) => void; 6 | -------------------------------------------------------------------------------- /types/shared/utils/toggleClass.d.ts: -------------------------------------------------------------------------------- 1 | export declare const toggleClass: (el: HTMLElement | null, classes?: string, condition?: boolean) => void; 2 | --------------------------------------------------------------------------------