FIX: linting

This commit is contained in:
Tony Air 2021-08-18 21:11:59 +02:00
parent 323a1cdd0e
commit af21773927
19 changed files with 922 additions and 866 deletions

2
dist/css/app.css vendored
View File

@ -1 +1 @@
.meta-MetaWindow{position:fixed}.meta-MetaWindow .meta-error,.meta-MetaWindow .meta-spinner,.meta-MetaWindow .meta-spinner_embed{align-items:center;display:none;justify-content:center;text-align:center;z-index:2}.meta-MetaWindow .meta-spinner,.meta-MetaWindow .meta-spinner_embed{bottom:0;color:#fff;font-size:2rem;font-weight:700;left:0;position:absolute;right:0;text-transform:uppercase;top:0}.meta-MetaWindow .meta-error{color:#f44336;font-size:1.5em;font-weight:700}.meta-MetaWindow .meta-spinner_embed{display:flex}.meta-MetaWindow-overlay{align-items:center;background:rgba(0,0,0,.8);bottom:0;display:none;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:98}.meta-MetaWindow-overlay__loading .meta-spinner,.meta-MetaWindow-overlay__open{display:flex}.meta-MetaWindow-overlay__error .meta-content{justify-content:center}.meta-MetaWindow-overlay__error .meta-error{display:flex}.meta-MetaWindow .meta-nav{background:none;border:0;color:#fff;font-size:2rem;text-shadow:#000 0 0 .25em;z-index:2}.meta-MetaWindow .meta-nav:focus,.meta-MetaWindow .meta-nav:hover{color:#fff}.meta-MetaWindow .meta-nav:hover{background:none;color:#eceff1;text-decoration:none;text-shadow:none}.meta-MetaWindow .meta-nav-arrow{align-items:center;bottom:0;display:flex;font-size:2.5rem;justify-content:center;padding:.25rem .5rem;position:absolute;top:auto;z-index:2}.meta-MetaWindow .meta-nav-arrow:focus .fa,.meta-MetaWindow .meta-nav-arrow:focus .fab,.meta-MetaWindow .meta-nav-arrow:focus .far,.meta-MetaWindow .meta-nav-arrow:focus .fas,.meta-MetaWindow .meta-nav-arrow:hover .fa,.meta-MetaWindow .meta-nav-arrow:hover .fab,.meta-MetaWindow .meta-nav-arrow:hover .far,.meta-MetaWindow .meta-nav-arrow:hover .fas{transform:scale(1.5)}@media(min-width:992px){.meta-MetaWindow .meta-nav-arrow{bottom:0;top:0}}.meta-MetaWindow .meta-nav-arrow__next{right:0}.meta-MetaWindow .meta-nav-arrow__prev{left:0}@media(min-width:992px){.meta-MetaWindow .meta-nav-arrow__next{right:-3rem}.meta-MetaWindow .meta-nav-arrow__prev{left:-3rem}}.meta-MetaWindow .meta-close{position:absolute;right:0;top:-3rem;width:1.25em}.meta-MetaWindow .meta-close:hover .fa,.meta-MetaWindow .meta-close:hover .fab,.meta-MetaWindow .meta-close:hover .far,.meta-MetaWindow .meta-close:hover .fas{transform:rotate(-180deg)}@media(min-width:992px){.meta-MetaWindow .meta-close{right:-3rem;top:-3rem}}.meta-MetaWindow .meta-content{display:flex;flex-direction:column;height:80%;position:relative;width:100%;z-index:1}@media(min-width:992px){.meta-MetaWindow .meta-content{height:90%;height:calc(90% - 3rem);width:90%;width:calc(90% - 3rem)}}.meta-MetaWindow .meta-wrap{display:flex;height:100%;margin:0 auto;max-height:100%;max-width:100%;overflow:auto;width:100%;word-break:break-word}.meta-MetaWindow .meta-wrap img{max-height:100%;max-width:100%;object-fit:cover}.meta-MetaWindow__text .meta-content{background:#fff;color:#000;padding:1rem 0 1rem 1rem}.meta-MetaWindow__text .meta-wrap{padding-right:1rem}.meta-MetaWindow__image .meta-wrap,.meta-MetaWindow__image .typography,.meta-MetaWindow__video .meta-wrap,.meta-MetaWindow__video .typography{align-items:center;justify-content:center;min-height:100%;overflow:hidden}.meta-MetaWindow__image .meta-wrap img,.meta-MetaWindow__image .typography img,.meta-MetaWindow__video .meta-wrap img,.meta-MetaWindow__video .typography img{margin:0}.meta-MetaWindow__embed:before,.meta-MetaWindow__video:before{content:"";display:block;padding-top:56.25%;position:relative;width:100%}.meta-MetaWindow__embed a[rel="nofollow noreferrer noopener"],.meta-MetaWindow__video a[rel="nofollow noreferrer noopener"]{color:#fff;font-size:1.2rem;font-weight:700}.meta-MetaWindow__embed a[rel="nofollow noreferrer noopener"]:before,.meta-MetaWindow__video a[rel="nofollow noreferrer noopener"]:before{content:"Unable to load. Please follow the provided link: ";display:block}.meta-MetaWindow__embed iframe,.meta-MetaWindow__video iframe{height:100%;left:0;position:absolute;top:0;width:100%}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){clip:rect(0,0,0,0)!important;border:0!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:1px!important} .meta-MetaWindow{position:fixed}.meta-MetaWindow .meta-error,.meta-MetaWindow .meta-spinner,.meta-MetaWindow .meta-spinner--embed{align-items:center;display:none;justify-content:center;text-align:center;z-index:2}.meta-MetaWindow .meta-spinner,.meta-MetaWindow .meta-spinner--embed{bottom:0;color:#fff;font-size:2rem;font-weight:700;left:0;position:absolute;right:0;text-transform:uppercase;top:0}.meta-MetaWindow .meta-error{color:#f44336;font-size:1.5em;font-weight:700}.meta-MetaWindow .meta-spinner--embed{display:flex}.meta-MetaWindow-overlay{align-items:center;background:rgba(0,0,0,.8);bottom:0;display:none;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:98}.meta-MetaWindow-overlay--loading .meta-spinner,.meta-MetaWindow-overlay--open{display:flex}.meta-MetaWindow-overlay--error .meta-content{justify-content:center}.meta-MetaWindow-overlay--error .meta-error{display:flex}.meta-MetaWindow .meta-nav{background:none;border:0;color:#fff;font-size:2rem;text-shadow:#000 0 0 .25em;z-index:2}.meta-MetaWindow .meta-nav:focus,.meta-MetaWindow .meta-nav:hover{color:#fff}.meta-MetaWindow .meta-nav:hover{background:none;color:#eceff1;text-decoration:none;text-shadow:none}.meta-MetaWindow .meta-nav-arrow{align-items:center;bottom:0;display:flex;font-size:2.5rem;justify-content:center;padding:.25rem .5rem;position:absolute;top:auto;z-index:2}.meta-MetaWindow .meta-nav-arrow:focus .fa,.meta-MetaWindow .meta-nav-arrow:focus .fab,.meta-MetaWindow .meta-nav-arrow:focus .far,.meta-MetaWindow .meta-nav-arrow:focus .fas,.meta-MetaWindow .meta-nav-arrow:hover .fa,.meta-MetaWindow .meta-nav-arrow:hover .fab,.meta-MetaWindow .meta-nav-arrow:hover .far,.meta-MetaWindow .meta-nav-arrow:hover .fas{transform:scale(1.5)}@media(min-width:992px){.meta-MetaWindow .meta-nav-arrow{bottom:0;top:0}}.meta-MetaWindow .meta-nav-arrow__next{right:0}.meta-MetaWindow .meta-nav-arrow__prev{left:0}@media(min-width:992px){.meta-MetaWindow .meta-nav-arrow__next{right:-3rem}.meta-MetaWindow .meta-nav-arrow__prev{left:-3rem}}.meta-MetaWindow .meta-close{position:absolute;right:0;top:-3rem;width:1.25em}.meta-MetaWindow .meta-close:hover .fa,.meta-MetaWindow .meta-close:hover .fab,.meta-MetaWindow .meta-close:hover .far,.meta-MetaWindow .meta-close:hover .fas{transform:rotate(-180deg)}@media(min-width:992px){.meta-MetaWindow .meta-close{right:-3rem;top:-3rem}}.meta-MetaWindow .meta-content{display:flex;flex-direction:column;height:80%;position:relative;width:100%;z-index:1}@media(min-width:992px){.meta-MetaWindow .meta-content{height:90%;height:calc(90% - 3rem);width:90%;width:calc(90% - 3rem)}}.meta-MetaWindow .meta-wrap{display:flex;height:100%;margin:0 auto;max-height:100%;max-width:100%;overflow:auto;width:100%;word-break:break-word}.meta-MetaWindow .meta-wrap img{max-height:100%;max-width:100%;object-fit:cover}.meta-MetaWindow--text .meta-content{background:#fff;color:#000;padding:1rem 0 1rem 1rem}.meta-MetaWindow--text .meta-wrap{padding-right:1rem}.meta-MetaWindow--image .meta-wrap,.meta-MetaWindow--image .typography,.meta-MetaWindow--video .meta-wrap,.meta-MetaWindow--video .typography{align-items:center;justify-content:center;min-height:100%;overflow:hidden}.meta-MetaWindow--image .meta-wrap img,.meta-MetaWindow--image .typography img,.meta-MetaWindow--video .meta-wrap img,.meta-MetaWindow--video .typography img{margin:0}.meta-MetaWindow--embed:before,.meta-MetaWindow--video:before{content:"";display:block;padding-top:56.25%;position:relative;width:100%}.meta-MetaWindow--embed a[rel="nofollow noreferrer noopener"],.meta-MetaWindow--video a[rel="nofollow noreferrer noopener"]{color:#fff;font-size:1.2rem;font-weight:700}.meta-MetaWindow--embed a[rel="nofollow noreferrer noopener"]:before,.meta-MetaWindow--video a[rel="nofollow noreferrer noopener"]:before{content:"Unable to load. Please follow the provided link: ";display:block}.meta-MetaWindow--embed iframe,.meta-MetaWindow--video iframe{height:100%;left:0;position:absolute;top:0;width:100%}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){clip:rect(0,0,0,0)!important;border:0!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:1px!important}

2
dist/index.html vendored
View File

@ -1,3 +1,3 @@
<!doctype html><html lang="en"><head><meta charset="utf-8"/><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no"/><meta name="description" content="Meta Lightbox"/><meta name="author" content="Tony Air"/><title>Meta-lightbox Demo</title><style>.wrapper { <!doctype html><html lang="en"><head><meta charset="utf-8"/><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no"/><meta name="description" content="Meta Lightbox"/><meta name="author" content="Tony Air"/><title>Meta-lightbox Demo</title><style>.wrapper {
padding: 2rem; padding: 2rem;
}</style><script defer="defer" src="js/app.js"></script><link href="css/app.css" rel="stylesheet"/></head><body><div class="wrapper"><h1>Meta-lightbox Demo</h1>NODE_ENV: production<style>[data-toggle=lightbox]:focus,[data-toggle=lightbox]:hover{text-decoration:underline}</style><div id="MetaLightboxContainer"><div class="typography"><h2>Loading data</h2><p><a href="https://via.placeholder.com/1200x600" data-toggle="lightbox" data-gallery="demo" data-title="That's first link">Load an Image</a><br/><a href="public/src/test.json" data-toggle="lightbox">Load JSON</a></p><style>[data-toggle=lightbox]:focus,[data-toggle=lightbox]:hover{text-decoration:underline}</style><br/><a href="public/src/test-pajax.html" data-toggle="lightbox">Load Partial AJAX HTML</a><br/><a href="public/src/not-found.html" data-toggle="lightbox">Not Found test</a><p></p><h2>Embeds</h2><p><a href="https://www.youtube.com/watch?v=WYvZZYthDRI" data-toggle="lightbox" data-embed="true">Embed Youtube link</a><br/><a href="https://vimeo.com/26216129" data-toggle="lightbox" data-embed="true">Embed Vimeo link</a><br/><a href="https://soundcloud.com/littlenapoleon/led-zeppelin-vs-rolling-stones" data-toggle="lightbox" data-embed="true">Embed SoundCloud link</a><br/><a href="https://www.instagram.com/p/CKl5n87hf7R/" data-toggle="lightbox" data-embed="true">Embed Instagram</a></p><h2>Other</h2><p><a href="https://via.placeholder.com/600x600.svg?text=SVG%20Image" data-toggle="lightbox" data-gallery="demo">Use [data-toggle="lightbox"] attribute to attach lightbox action and [href] to specify URL.</a></p><p><a href="https://via.placeholder.com/600x1200.jpg?text=JPG%20Image" data-toggle="lightbox" data-gallery="demo" data-title="Use data-title attribute to specify lightbox title">Use [data-gallery="YOUR_GALLERY_NAME"] to group ligthboxes with next/prev arrows</a></p><p><a href="https://via.placeholder.com/1400x700.png?text=PNG%20Image" data-toggle="lightbox" data-gallery="demo" data-title="Use data-title attribute to specify lightbox title">Use [data-gallery="YOUR_GALLERY_NAME"] to group ligthboxes with next/prev arrows</a></p><p data-toggle="lightbox" data-href="https://youtu.be/GgnClrx8N2k" data-gallery="demo" data-title="Yes you can link vimeo and youtube videos as long as AJAX content">Use [data-toggle="lightbox"] + [data-href] attribute to toggle lightbox on regular elements. <b>Click me!</b></p></div><div id="MetaLightboxApp"></div></div><div id="App"></div></div><script crossorigin src="https://unpkg.com/react@17/umd/react.production.min.js"></script><script crossorigin src="https://unpkg.com/react-dom@17/umd/react-dom.production.min.js"></script><link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css"/><link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.12.0/css/all.css"/></body></html> }</style><script defer="defer" src="js/app.js"></script><link href="css/app.css" rel="stylesheet"/></head><body><div class="wrapper"><h1>Meta-lightbox Demo</h1>NODE_ENV: production<style>[data-toggle=lightbox]:focus,[data-toggle=lightbox]:hover{text-decoration:underline}</style><div id="MetaLightboxContainer"><div class="typography"><h2>Loading data</h2><p><a href="https://via.placeholder.com/1200x600" data-toggle="lightbox" data-gallery="demo" data-title="That's first link">Load an Image</a><br/><a href="public/src/test.json" data-toggle="lightbox">Load JSON</a></p><style>[data-toggle=lightbox]:focus,[data-toggle=lightbox]:hover{text-decoration:underline}</style><br/><a href="public/src/test-pajax.html" data-toggle="lightbox">Load Partial AJAX HTML</a><br/><a href="public/src/not-found.html" data-toggle="lightbox">Not Found test</a><p></p><h2>Embeds</h2><p><a href="https://www.youtube.com/watch?v=WYvZZYthDRI" data-toggle="lightbox" data-embed="true">Embed Youtube link</a><br/><a href="https://vimeo.com/26216129" data-toggle="lightbox" data-embed="true">Embed Vimeo link</a><br/><a href="https://soundcloud.com/littlenapoleon/led-zeppelin-vs-rolling-stones" data-toggle="lightbox" data-embed="true">Embed SoundCloud link</a><br/><a href="https://www.instagram.com/p/CKl5n87hf7R/" data-toggle="lightbox" data-embed="true">Embed Instagram</a></p><h2>Other</h2><p><a href="https://via.placeholder.com/600x600.svg?text=SVG%20Image" data-toggle="lightbox" data-gallery="demo">Use [data-toggle="lightbox"] attribute to attach lightbox action and [href] to specify URL.</a></p><p><a href="https://via.placeholder.com/600x1200.jpg?text=JPG%20Image" data-toggle="lightbox" data-gallery="demo" data-title="Use data-title attribute to specify lightbox title">Use [data-gallery="YOUR_GALLERY_NAME"] to group ligthboxes with next/prev arrows</a></p><p><a href="https://via.placeholder.com/1400x700.png?text=PNG%20Image" data-toggle="lightbox" data-gallery="demo" data-title="Use data-title attribute to specify lightbox title">Use [data-gallery="YOUR_GALLERY_NAME"] to group ligthboxes with next/prev arrows</a></p><p data-toggle="lightbox" data-href="https://youtu.be/GgnClrx8N2k" data-gallery="demo" data-title="Yes you can link vimeo and youtube videos as long as AJAX content">Use [data-toggle="lightbox"] + [data-href] attribute to toggle lightbox on regular elements. <b>Click me!</b></p></div><div id="MetaLightboxApp"></div></div><div id="App"></div></div><script crossorigin src="https://unpkg.com/react@17/umd/react.production.min.js"></script><script crossorigin src="https://unpkg.com/react-dom@17/umd/react-dom.production.min.js"></script><link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css"/><link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.12.0/css/all.css"/></body></html>

2
dist/js/app.js vendored
View File

@ -1 +1 @@
!function(){var e={722:function(e,t,n){e.exports=n(895)},196:function(e,t,n){"use strict";var r=n(695),o=n(30),a=n(305),i=n(999),s=n(492),c=n(867),u=n(751),f=n(174);e.exports=function xhrAdapter(e){return new Promise((function dispatchXhrRequest(t,n){var l=e.data,d=e.headers;r.isFormData(l)&&delete d["Content-Type"];var p=new XMLHttpRequest;if(e.auth){var m=e.auth.username||"",h=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";d.Authorization="Basic "+btoa(m+":"+h)}var g=s(e.baseURL,e.url);if(p.open(e.method.toUpperCase(),i(g,e.params,e.paramsSerializer),!0),p.timeout=e.timeout,p.onreadystatechange=function handleLoad(){if(p&&4===p.readyState&&(0!==p.status||p.responseURL&&0===p.responseURL.indexOf("file:"))){var r="getAllResponseHeaders"in p?c(p.getAllResponseHeaders()):null,a={data:e.responseType&&"text"!==e.responseType?p.response:p.responseText,status:p.status,statusText:p.statusText,headers:r,config:e,request:p};o(t,n,a),p=null}},p.onabort=function handleAbort(){p&&(n(f("Request aborted",e,"ECONNABORTED",p)),p=null)},p.onerror=function handleError(){n(f("Network Error",e,null,p)),p=null},p.ontimeout=function handleTimeout(){var t="timeout of "+e.timeout+"ms exceeded";e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),n(f(t,e,"ECONNABORTED",p)),p=null},r.isStandardBrowserEnv()){var y=(e.withCredentials||u(g))&&e.xsrfCookieName?a.read(e.xsrfCookieName):void 0;y&&(d[e.xsrfHeaderName]=y)}if("setRequestHeader"in p&&r.forEach(d,(function setRequestHeader(e,t){"undefined"===typeof l&&"content-type"===t.toLowerCase()?delete d[t]:p.setRequestHeader(t,e)})),r.isUndefined(e.withCredentials)||(p.withCredentials=!!e.withCredentials),e.responseType)try{p.responseType=e.responseType}catch(v){if("json"!==e.responseType)throw v}"function"===typeof e.onDownloadProgress&&p.addEventListener("progress",e.onDownloadProgress),"function"===typeof e.onUploadProgress&&p.upload&&p.upload.addEventListener("progress",e.onUploadProgress),e.cancelToken&&e.cancelToken.promise.then((function onCanceled(e){p&&(p.abort(),n(e),p=null)})),l||(l=null),p.send(l)}))}},895:function(e,t,n){"use strict";var r=n(695),o=n(129),a=n(653),i=n(309);function createInstance(e){var t=new a(e),n=o(a.prototype.request,t);return r.extend(n,a.prototype,t),r.extend(n,t),n}var s=createInstance(n(933));s.Axios=a,s.create=function create(e){return createInstance(i(s.defaults,e))},s.Cancel=n(638),s.CancelToken=n(114),s.isCancel=n(539),s.all=function all(e){return Promise.all(e)},s.spread=n(522),s.isAxiosError=n(431),e.exports=s,e.exports.default=s},638:function(e){"use strict";function Cancel(e){this.message=e}Cancel.prototype.toString=function toString(){return"Cancel"+(this.message?": "+this.message:"")},Cancel.prototype.__CANCEL__=!0,e.exports=Cancel},114:function(e,t,n){"use strict";var r=n(638);function CancelToken(e){if("function"!==typeof e)throw new TypeError("executor must be a function.");var t;this.promise=new Promise((function promiseExecutor(e){t=e}));var n=this;e((function cancel(e){n.reason||(n.reason=new r(e),t(n.reason))}))}CancelToken.prototype.throwIfRequested=function throwIfRequested(){if(this.reason)throw this.reason},CancelToken.source=function source(){var e;return{token:new CancelToken((function executor(t){e=t})),cancel:e}},e.exports=CancelToken},539:function(e){"use strict";e.exports=function isCancel(e){return!(!e||!e.__CANCEL__)}},653:function(e,t,n){"use strict";var r=n(695),o=n(999),a=n(328),i=n(570),s=n(309);function Axios(e){this.defaults=e,this.interceptors={request:new a,response:new a}}Axios.prototype.request=function request(e){"string"===typeof e?(e=arguments[1]||{}).url=arguments[0]:e=e||{},(e=s(this.defaults,e)).method?e.method=e.method.toLowerCase():this.defaults.method?e.method=this.defaults.method.toLowerCase():e.method="get";var t=[i,void 0],n=Promise.resolve(e);for(this.interceptors.request.forEach((function unshiftRequestInterceptors(e){t.unshift(e.fulfilled,e.rejected)})),this.interceptors.response.forEach((function pushResponseInterceptors(e){t.push(e.fulfilled,e.rejected)}));t.length;)n=n.then(t.shift(),t.shift());return n},Axios.prototype.getUri=function getUri(e){return e=s(this.defaults,e),o(e.url,e.params,e.paramsSerializer).replace(/^\?/,"")},r.forEach(["delete","get","head","options"],(function forEachMethodNoData(e){Axios.prototype[e]=function(t,n){return this.request(s(n||{},{method:e,url:t,data:(n||{}).data}))}})),r.forEach(["post","put","patch"],(function forEachMethodWithData(e){Axios.prototype[e]=function(t,n,r){return this.request(s(r||{},{method:e,url:t,data:n}))}})),e.exports=Axios},328:function(e,t,n){"use strict";var r=n(695);function InterceptorManager(){this.handlers=[]}InterceptorManager.prototype.use=function use(e,t){return this.handlers.push({fulfilled:e,rejected:t}),this.handlers.length-1},InterceptorManager.prototype.eject=function eject(e){this.handlers[e]&&(this.handlers[e]=null)},InterceptorManager.prototype.forEach=function forEach(e){r.forEach(this.handlers,(function forEachHandler(t){null!==t&&e(t)}))},e.exports=InterceptorManager},492:function(e,t,n){"use strict";var r=n(794),o=n(296);e.exports=function buildFullPath(e,t){return e&&!r(t)?o(e,t):t}},174:function(e,t,n){"use strict";var r=n(2);e.exports=function createError(e,t,n,o,a){var i=new Error(e);return r(i,t,n,o,a)}},570:function(e,t,n){"use strict";var r=n(695),o=n(554),a=n(539),i=n(933);function throwIfCancellationRequested(e){e.cancelToken&&e.cancelToken.throwIfRequested()}e.exports=function dispatchRequest(e){return throwIfCancellationRequested(e),e.headers=e.headers||{},e.data=o(e.data,e.headers,e.transformRequest),e.headers=r.merge(e.headers.common||{},e.headers[e.method]||{},e.headers),r.forEach(["delete","get","head","post","put","patch","common"],(function cleanHeaderConfig(t){delete e.headers[t]})),(e.adapter||i.adapter)(e).then((function onAdapterResolution(t){return throwIfCancellationRequested(e),t.data=o(t.data,t.headers,e.transformResponse),t}),(function onAdapterRejection(t){return a(t)||(throwIfCancellationRequested(e),t&&t.response&&(t.response.data=o(t.response.data,t.response.headers,e.transformResponse))),Promise.reject(t)}))}},2:function(e){"use strict";e.exports=function enhanceError(e,t,n,r,o){return e.config=t,n&&(e.code=n),e.request=r,e.response=o,e.isAxiosError=!0,e.toJSON=function toJSON(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code}},e}},309:function(e,t,n){"use strict";var r=n(695);e.exports=function mergeConfig(e,t){t=t||{};var n={},o=["url","method","data"],a=["headers","auth","proxy","params"],i=["baseURL","transformRequest","transformResponse","paramsSerializer","timeout","timeoutMessage","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","decompress","maxContentLength","maxBodyLength","maxRedirects","transport","httpAgent","httpsAgent","cancelToken","socketPath","responseEncoding"],s=["validateStatus"];function getMergedValue(e,t){return r.isPlainObject(e)&&r.isPlainObject(t)?r.merge(e,t):r.isPlainObject(t)?r.merge({},t):r.isArray(t)?t.slice():t}function mergeDeepProperties(o){r.isUndefined(t[o])?r.isUndefined(e[o])||(n[o]=getMergedValue(void 0,e[o])):n[o]=getMergedValue(e[o],t[o])}r.forEach(o,(function valueFromConfig2(e){r.isUndefined(t[e])||(n[e]=getMergedValue(void 0,t[e]))})),r.forEach(a,mergeDeepProperties),r.forEach(i,(function defaultToConfig2(o){r.isUndefined(t[o])?r.isUndefined(e[o])||(n[o]=getMergedValue(void 0,e[o])):n[o]=getMergedValue(void 0,t[o])})),r.forEach(s,(function merge(r){r in t?n[r]=getMergedValue(e[r],t[r]):r in e&&(n[r]=getMergedValue(void 0,e[r]))}));var c=o.concat(a).concat(i).concat(s),u=Object.keys(e).concat(Object.keys(t)).filter((function filterAxiosKeys(e){return-1===c.indexOf(e)}));return r.forEach(u,mergeDeepProperties),n}},30:function(e,t,n){"use strict";var r=n(174);e.exports=function settle(e,t,n){var o=n.config.validateStatus;n.status&&o&&!o(n.status)?t(r("Request failed with status code "+n.status,n.config,null,n.request,n)):e(n)}},554:function(e,t,n){"use strict";var r=n(695);e.exports=function transformData(e,t,n){return r.forEach(n,(function transform(n){e=n(e,t)})),e}},933:function(e,t,n){"use strict";var r=n(695),o=n(965),a={"Content-Type":"application/x-www-form-urlencoded"};function setContentTypeIfUnset(e,t){!r.isUndefined(e)&&r.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}var i={adapter:function getDefaultAdapter(){var e;return("undefined"!==typeof XMLHttpRequest||"undefined"!==typeof process&&"[object process]"===Object.prototype.toString.call(process))&&(e=n(196)),e}(),transformRequest:[function transformRequest(e,t){return o(t,"Accept"),o(t,"Content-Type"),r.isFormData(e)||r.isArrayBuffer(e)||r.isBuffer(e)||r.isStream(e)||r.isFile(e)||r.isBlob(e)?e:r.isArrayBufferView(e)?e.buffer:r.isURLSearchParams(e)?(setContentTypeIfUnset(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):r.isObject(e)?(setContentTypeIfUnset(t,"application/json;charset=utf-8"),JSON.stringify(e)):e}],transformResponse:[function transformResponse(e){if("string"===typeof e)try{e=JSON.parse(e)}catch(t){}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function validateStatus(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};r.forEach(["delete","get","head"],(function forEachMethodNoData(e){i.headers[e]={}})),r.forEach(["post","put","patch"],(function forEachMethodWithData(e){i.headers[e]=r.merge(a)})),e.exports=i},129:function(e){"use strict";e.exports=function bind(e,t){return function wrap(){for(var n=new Array(arguments.length),r=0;r<n.length;r++)n[r]=arguments[r];return e.apply(t,n)}}},999:function(e,t,n){"use strict";var r=n(695);function encode(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}e.exports=function buildURL(e,t,n){if(!t)return e;var o;if(n)o=n(t);else if(r.isURLSearchParams(t))o=t.toString();else{var a=[];r.forEach(t,(function serialize(e,t){null!==e&&"undefined"!==typeof e&&(r.isArray(e)?t+="[]":e=[e],r.forEach(e,(function parseValue(e){r.isDate(e)?e=e.toISOString():r.isObject(e)&&(e=JSON.stringify(e)),a.push(encode(t)+"="+encode(e))})))})),o=a.join("&")}if(o){var i=e.indexOf("#");-1!==i&&(e=e.slice(0,i)),e+=(-1===e.indexOf("?")?"?":"&")+o}return e}},296:function(e){"use strict";e.exports=function combineURLs(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}},305:function(e,t,n){"use strict";var r=n(695);e.exports=r.isStandardBrowserEnv()?function standardBrowserEnv(){return{write:function write(e,t,n,o,a,i){var s=[];s.push(e+"="+encodeURIComponent(t)),r.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),r.isString(o)&&s.push("path="+o),r.isString(a)&&s.push("domain="+a),!0===i&&s.push("secure"),document.cookie=s.join("; ")},read:function read(e){var t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function remove(e){this.write(e,"",Date.now()-864e5)}}}():{write:function write(){},read:function read(){return null},remove:function remove(){}}},794:function(e){"use strict";e.exports=function isAbsoluteURL(e){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(e)}},431:function(e){"use strict";function _typeof(e){return(_typeof="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function _typeof(e){return typeof e}:function _typeof(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}e.exports=function isAxiosError(e){return"object"===_typeof(e)&&!0===e.isAxiosError}},751:function(e,t,n){"use strict";var r=n(695);e.exports=r.isStandardBrowserEnv()?function standardBrowserEnv(){var e,t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");function resolveURL(e){var r=e;return t&&(n.setAttribute("href",r),r=n.href),n.setAttribute("href",r),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:"/"===n.pathname.charAt(0)?n.pathname:"/"+n.pathname}}return e=resolveURL(window.location.href),function isURLSameOrigin(t){var n=r.isString(t)?resolveURL(t):t;return n.protocol===e.protocol&&n.host===e.host}}():function isURLSameOrigin(){return!0}},965:function(e,t,n){"use strict";var r=n(695);e.exports=function normalizeHeaderName(e,t){r.forEach(e,(function processHeader(n,r){r!==t&&r.toUpperCase()===t.toUpperCase()&&(e[t]=n,delete e[r])}))}},867:function(e,t,n){"use strict";var r=n(695),o=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];e.exports=function parseHeaders(e){var t,n,a,i={};return e?(r.forEach(e.split("\n"),(function parser(e){if(a=e.indexOf(":"),t=r.trim(e.substr(0,a)).toLowerCase(),n=r.trim(e.substr(a+1)),t){if(i[t]&&o.indexOf(t)>=0)return;i[t]="set-cookie"===t?(i[t]?i[t]:[]).concat([n]):i[t]?i[t]+", "+n:n}})),i):i}},522:function(e){"use strict";e.exports=function spread(e){return function wrap(t){return e.apply(null,t)}}},695:function(e,t,n){"use strict";function _typeof(e){return(_typeof="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function _typeof(e){return typeof e}:function _typeof(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var r=n(129),o=Object.prototype.toString;function isArray(e){return"[object Array]"===o.call(e)}function isUndefined(e){return"undefined"===typeof e}function isObject(e){return null!==e&&"object"===_typeof(e)}function isPlainObject(e){if("[object Object]"!==o.call(e))return!1;var t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function isFunction(e){return"[object Function]"===o.call(e)}function forEach(e,t){if(null!==e&&"undefined"!==typeof e)if("object"!==_typeof(e)&&(e=[e]),isArray(e))for(var n=0,r=e.length;n<r;n++)t.call(null,e[n],n,e);else for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.call(null,e[o],o,e)}e.exports={isArray:isArray,isArrayBuffer:function isArrayBuffer(e){return"[object ArrayBuffer]"===o.call(e)},isBuffer:function isBuffer(e){return null!==e&&!isUndefined(e)&&null!==e.constructor&&!isUndefined(e.constructor)&&"function"===typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)},isFormData:function isFormData(e){return"undefined"!==typeof FormData&&e instanceof FormData},isArrayBufferView:function isArrayBufferView(e){return"undefined"!==typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&e.buffer instanceof ArrayBuffer},isString:function isString(e){return"string"===typeof e},isNumber:function isNumber(e){return"number"===typeof e},isObject:isObject,isPlainObject:isPlainObject,isUndefined:isUndefined,isDate:function isDate(e){return"[object Date]"===o.call(e)},isFile:function isFile(e){return"[object File]"===o.call(e)},isBlob:function isBlob(e){return"[object Blob]"===o.call(e)},isFunction:isFunction,isStream:function isStream(e){return isObject(e)&&isFunction(e.pipe)},isURLSearchParams:function isURLSearchParams(e){return"undefined"!==typeof URLSearchParams&&e instanceof URLSearchParams},isStandardBrowserEnv:function isStandardBrowserEnv(){return("undefined"===typeof navigator||"ReactNative"!==navigator.product&&"NativeScript"!==navigator.product&&"NS"!==navigator.product)&&("undefined"!==typeof window&&"undefined"!==typeof document)},forEach:forEach,merge:function merge(){var e={};function assignValue(t,n){isPlainObject(e[n])&&isPlainObject(t)?e[n]=merge(e[n],t):isPlainObject(t)?e[n]=merge({},t):isArray(t)?e[n]=t.slice():e[n]=t}for(var t=0,n=arguments.length;t<n;t++)forEach(arguments[t],assignValue);return e},extend:function extend(e,t,n){return forEach(t,(function assignValue(t,o){e[o]=n&&"function"===typeof t?r(t,n):t})),e},trim:function trim(e){return e.replace(/^\s*/,"").replace(/\s*$/,"")},stripBOM:function stripBOM(e){return 65279===e.charCodeAt(0)&&(e=e.slice(1)),e}}},46:function(e){"use strict";e.exports=function makeYoutubeEmbed(e){if("string"===typeof e){var t=function getId(e){var t=e.match(/^.*(youtu.be\/|v\/|u\/\w\/|embed\/|watch\?v=|\&v=)([^#\&\?]*).*/);if(t&&11==t[2].length)return t[2]}(e);return t?"//www.youtube.com/embed/"+t:void 0}}}},t={};function __webpack_require__(n){var r=t[n];if(void 0!==r)return r.exports;var o=t[n]={exports:{}};return e[n](o,o.exports,__webpack_require__),o.exports}!function(){"use strict";var e="ajax-load",t="load";function _toConsumableArray(e){return function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}(e)||function _iterableToArray(e){if("undefined"!==typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function _unsupportedIterableToArray(e,t){if(!e)return;if("string"===typeof e)return _arrayLikeToArray(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _arrayLikeToArray(e,t)}(e)||function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function _defineProperty(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var n=window,r=__webpack_require__(722),o=function(){function MetaWindow(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{shown:!1},o=arguments.length>1?arguments[1]:void 0;_classCallCheck(this,MetaWindow),_defineProperty(this,"state",{content:"",type:["empty"],shown:!1,loading:!1,error:!1,embed:!1,collections:[],current:null,target:null}),_defineProperty(this,"show",(function(){var t=e;console.log("".concat(t.name,": show")),t.setState({shown:!0}),n.dispatchEvent(new Event("{ui.name}.show"))})),_defineProperty(this,"hide",(function(){var t=e;console.log("".concat(t.name,": hide")),t.setState({shown:!1}),n.dispatchEvent(new Event("{ui.name}.hide"))})),_defineProperty(this,"next",(function(){var t=e,r=t.state.current.getAttribute("data-gallery"),o=t._currIndex();o<t.state.collections[r].length-1?o++:o=0,t.state.collections[r][o].click(),console.log("".concat(t.name,": next")),n.dispatchEvent(new Event("{ui.name}.next"))})),_defineProperty(this,"prev",(function(){var t=e,r=t.state.current.getAttribute("data-gallery"),o=t._currIndex();o>0?o--:o=t.state.collections[r].length-1,t.state.collections[r][o].click(),console.log("".concat(t.name,": prev")),n.dispatchEvent(new Event("{ui.name}.prev"))})),_defineProperty(this,"reset",(function(){e.setState({content:"",type:["empty"],shown:!1,loading:!1,error:!1,embed:!1})})),_defineProperty(this,"load",(function(t){var r=e,o=r.axios;r.reset(),r.setState({loading:!0}),r.show(),o.get(t,{responseType:"arraybuffer"}).then((function(e){console.log("".concat(r.name,": response content-type: ").concat(e.headers["content-type"]));switch(e.headers["content-type"]){case"image/jpeg":case"image/png":case"image/svg+xml":case"image/bmp":case"image/gif":case"image/tiff":case"image/webp":case"image/jpg":case"image/svg":r.setContent('<img src="data:'.concat(e.headers["content-type"],";base64,").concat(r._imageEncode(e.data),'" />'),"meta-".concat(r.name,"__image"));break;case"application/json":case"application/ld+json":case"application/json; charset=UTF-8":r.setContent("".concat((!1).Content),["meta-".concat(r.name,"__text"),"meta-".concat(r.name,"__html"),"meta-".concat(r.name,"__json")]);break;case"text/html":case"application/xhtml+xml":case"text/plain":case"text/html; charset=UTF-8":case"application/xhtml+xml; charset=UTF-8":case"text/plain; charset=UTF-8":r.setContent(r._abToString(e.data),["meta-".concat(r.name,"__text"),"meta-".concat(r.name,"__html"),"meta-".concat(r.name,"__pajax")]);break;default:console.warn("".concat(r.name,": Unknown response content-type!"))}n.dispatchEvent(new Event("{ui.name}.loaded"))})).catch((function(e){console.error(e);var t="";if(e.response)switch(e.response.status){case 404:t="Not Found.";break;case 500:t="Server issue, please try again latter.";break;default:t="Something went wrong."}else e.request?t="No response received":console.warn("Error",e.message);r.setState({error:t}),n.dispatchEvent(new Event("{ui.name}.error"))})).then((function(){r.setState({loading:!1})}))})),_defineProperty(this,"_currIndex",(function(){var t=e,n=t.state.current,r=n.getAttribute("data-gallery");return t.state.collections[r].indexOf(n)})),_defineProperty(this,"embed",(function(t){var n=e;console.log("".concat(n.name,": embed")),n.reset(),n.setState({embed:t,loading:!1,type:["meta-".concat(n.name,"__embed"),"meta-".concat(n.name,"__video")]}),n.show()})),_defineProperty(this,"setCaption",(function(t){var n=e;console.log("".concat(n.name,": setCaption")),n.state.caption=t})),_defineProperty(this,"getCaption",(function(){return e.state.caption})),_defineProperty(this,"_abToString",(function(e){return String.fromCharCode.apply(null,new Uint8Array(e))})),_defineProperty(this,"_imageEncode",(function(e){new Uint8Array(e);return btoa([].reduce.call(new Uint8Array(e),(function(e,t){return e+String.fromCharCode(t)}),""))})),_defineProperty(this,"setContent",(function(t,n){var r=e;console.log("".concat(r.name,": setContent"));var o=n||["meta-".concat(r.name,"__html"),"meta-".concat(r.name,"__text")];Array.isArray(o)||(o=n.split(" ")),r.setState({content:t,type:o})})),_defineProperty(this,"getHtml",(function(){var t=e;if(t.state.embed){var n=__webpack_require__(46)(t.state.embed);t.state.content='<iframe width="600" height="380" src="'.concat(n,'" frameborder="0"></iframe>')}return t.state.content}));var a=this;switch(a.name=a.constructor.name,console.log("".concat(a.name,": init")),a.axios=r,a.setState(t),o){case"show":case"hide":a.hide()}n.dispatchEvent(new Event("{ui.name}.init"))}return function _createClass(e,t,n){return t&&_defineProperties(e.prototype,t),n&&_defineProperties(e,n),e}(MetaWindow,[{key:"init",value:function init(){var e=this;console.log("MetaWindow: [links] init"),document.querySelectorAll('[data-toggle="lightbox"],[data-gallery="${gallery}"]').forEach((function(t){var n=t.getAttribute("data-gallery");n&&(e.state.collections[n]=[],document.querySelectorAll('[data-toggle="lightbox"][data-gallery="'.concat(n,'"]')).forEach((function(t){e.state.collections[n].push(t)}))),t.addEventListener("click",(function(t){t.preventDefault(),console.log("MetaWindow: [link] click");var n=t.currentTarget,r=n.getAttribute("href")||n.getAttribute("data-href"),o=n.getAttribute("data-embed");e.state.current=n,o?e.embed(r):e.load(r);var a=n.getAttribute("data-title");a&&e.setCaption(a)}))}))}},{key:"setState",value:function setState(e){var t=this;t.state=Object.assign({},t.state,e),t.render()}},{key:"render",value:function render(){var e,t=this,n=t.name,r=t.state.current;t.state.target.innerHTML="";var o=document.createElement("div");o.classList.add("meta-".concat(n)),(e=o.classList).add.apply(e,_toConsumableArray(t.state.type)),t.state.target.append(o);var a=document.createElement("div");a.classList.add("meta-".concat(n,"-overlay")),t.state.shown&&a.classList.add("meta-".concat(n,"-overlay__open")),t.state.loading&&a.classList.add("meta-".concat(n,"-overlay__loading")),t.state.error&&a.classList.add("meta-".concat(n,"-overlay__error")),o.append(a);var i=document.createElement("div");i.classList.add("meta-content"),a.append(i);var s=document.createElement("button");if(s.classList.add("meta-nav","meta-close","a"),s.innerHTML='<i class="icon fa fas fa-times"></i> <span class="visually-hidden">Close</span>',s.addEventListener("click",(function(e){e.preventDefault(),t.hide()})),i.append(s),r){var c=r.getAttribute("data-gallery");if(c&&t.state.collections[c].length>1){var u=document.createElement("nav");u.classList.add("meta-navs");var f=document.createElement("button");f.classList.add("meta-nav","meta-nav-arrow","meta-nav-arrow__prev","a"),f.innerHTML='<i class="icon fa fas fa-chevron-left"></i> <span class="visually-hidden">Previous</span>',f.addEventListener("click",(function(e){e.preventDefault(),t.prev()})),u.append(f);var l=document.createElement("button");l.classList.add("meta-nav","meta-nav-arrow","meta-nav-arrow__next","a"),l.innerHTML='<i class="icon fa fas fa-chevron-right"></i> <span class="visually-hidden">Next</span>',l.addEventListener("click",(function(e){e.preventDefault(),t.next()})),u.append(l),i.append(u)}}var d=document.createElement("section");if(d.classList.add("meta-wrap","typography"),d.innerHTML=t.getHtml(),i.append(d),t.state.error){var p=document.createElement("div");p.classList.add("meta-error"),p.innerHTML=t.state.error,i.append(p)}else if(t.state.caption){var m=document.createElement("div");m.classList.add("meta-caption"),m.innerHTML=t.getCaption(),i.append(m)}return t}}]),MetaWindow}(),a=document.getElementById("MetaLightboxApp");a||console.log("MetaWindow: missing container #MetaLightboxApp");var i=new o({target:a}),s=function init(){i.init()};window.addEventListener("".concat(t),s),window.addEventListener("".concat(e),s),window.addEventListener("MetaWindow.initLinks",s),window.MetaWindow=i}()}(); !function(){var e={722:function(e,t,n){e.exports=n(895)},196:function(e,t,n){"use strict";var r=n(695),o=n(30),a=n(305),i=n(999),s=n(492),c=n(867),u=n(751),f=n(174);e.exports=function xhrAdapter(e){return new Promise((function dispatchXhrRequest(t,n){var l=e.data,d=e.headers;r.isFormData(l)&&delete d["Content-Type"];var p=new XMLHttpRequest;if(e.auth){var m=e.auth.username||"",h=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";d.Authorization="Basic "+btoa(m+":"+h)}var g=s(e.baseURL,e.url);if(p.open(e.method.toUpperCase(),i(g,e.params,e.paramsSerializer),!0),p.timeout=e.timeout,p.onreadystatechange=function handleLoad(){if(p&&4===p.readyState&&(0!==p.status||p.responseURL&&0===p.responseURL.indexOf("file:"))){var r="getAllResponseHeaders"in p?c(p.getAllResponseHeaders()):null,a={data:e.responseType&&"text"!==e.responseType?p.response:p.responseText,status:p.status,statusText:p.statusText,headers:r,config:e,request:p};o(t,n,a),p=null}},p.onabort=function handleAbort(){p&&(n(f("Request aborted",e,"ECONNABORTED",p)),p=null)},p.onerror=function handleError(){n(f("Network Error",e,null,p)),p=null},p.ontimeout=function handleTimeout(){var t="timeout of "+e.timeout+"ms exceeded";e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),n(f(t,e,"ECONNABORTED",p)),p=null},r.isStandardBrowserEnv()){var y=(e.withCredentials||u(g))&&e.xsrfCookieName?a.read(e.xsrfCookieName):void 0;y&&(d[e.xsrfHeaderName]=y)}if("setRequestHeader"in p&&r.forEach(d,(function setRequestHeader(e,t){"undefined"===typeof l&&"content-type"===t.toLowerCase()?delete d[t]:p.setRequestHeader(t,e)})),r.isUndefined(e.withCredentials)||(p.withCredentials=!!e.withCredentials),e.responseType)try{p.responseType=e.responseType}catch(v){if("json"!==e.responseType)throw v}"function"===typeof e.onDownloadProgress&&p.addEventListener("progress",e.onDownloadProgress),"function"===typeof e.onUploadProgress&&p.upload&&p.upload.addEventListener("progress",e.onUploadProgress),e.cancelToken&&e.cancelToken.promise.then((function onCanceled(e){p&&(p.abort(),n(e),p=null)})),l||(l=null),p.send(l)}))}},895:function(e,t,n){"use strict";var r=n(695),o=n(129),a=n(653),i=n(309);function createInstance(e){var t=new a(e),n=o(a.prototype.request,t);return r.extend(n,a.prototype,t),r.extend(n,t),n}var s=createInstance(n(933));s.Axios=a,s.create=function create(e){return createInstance(i(s.defaults,e))},s.Cancel=n(638),s.CancelToken=n(114),s.isCancel=n(539),s.all=function all(e){return Promise.all(e)},s.spread=n(522),s.isAxiosError=n(431),e.exports=s,e.exports.default=s},638:function(e){"use strict";function Cancel(e){this.message=e}Cancel.prototype.toString=function toString(){return"Cancel"+(this.message?": "+this.message:"")},Cancel.prototype.__CANCEL__=!0,e.exports=Cancel},114:function(e,t,n){"use strict";var r=n(638);function CancelToken(e){if("function"!==typeof e)throw new TypeError("executor must be a function.");var t;this.promise=new Promise((function promiseExecutor(e){t=e}));var n=this;e((function cancel(e){n.reason||(n.reason=new r(e),t(n.reason))}))}CancelToken.prototype.throwIfRequested=function throwIfRequested(){if(this.reason)throw this.reason},CancelToken.source=function source(){var e;return{token:new CancelToken((function executor(t){e=t})),cancel:e}},e.exports=CancelToken},539:function(e){"use strict";e.exports=function isCancel(e){return!(!e||!e.__CANCEL__)}},653:function(e,t,n){"use strict";var r=n(695),o=n(999),a=n(328),i=n(570),s=n(309);function Axios(e){this.defaults=e,this.interceptors={request:new a,response:new a}}Axios.prototype.request=function request(e){"string"===typeof e?(e=arguments[1]||{}).url=arguments[0]:e=e||{},(e=s(this.defaults,e)).method?e.method=e.method.toLowerCase():this.defaults.method?e.method=this.defaults.method.toLowerCase():e.method="get";var t=[i,void 0],n=Promise.resolve(e);for(this.interceptors.request.forEach((function unshiftRequestInterceptors(e){t.unshift(e.fulfilled,e.rejected)})),this.interceptors.response.forEach((function pushResponseInterceptors(e){t.push(e.fulfilled,e.rejected)}));t.length;)n=n.then(t.shift(),t.shift());return n},Axios.prototype.getUri=function getUri(e){return e=s(this.defaults,e),o(e.url,e.params,e.paramsSerializer).replace(/^\?/,"")},r.forEach(["delete","get","head","options"],(function forEachMethodNoData(e){Axios.prototype[e]=function(t,n){return this.request(s(n||{},{method:e,url:t,data:(n||{}).data}))}})),r.forEach(["post","put","patch"],(function forEachMethodWithData(e){Axios.prototype[e]=function(t,n,r){return this.request(s(r||{},{method:e,url:t,data:n}))}})),e.exports=Axios},328:function(e,t,n){"use strict";var r=n(695);function InterceptorManager(){this.handlers=[]}InterceptorManager.prototype.use=function use(e,t){return this.handlers.push({fulfilled:e,rejected:t}),this.handlers.length-1},InterceptorManager.prototype.eject=function eject(e){this.handlers[e]&&(this.handlers[e]=null)},InterceptorManager.prototype.forEach=function forEach(e){r.forEach(this.handlers,(function forEachHandler(t){null!==t&&e(t)}))},e.exports=InterceptorManager},492:function(e,t,n){"use strict";var r=n(794),o=n(296);e.exports=function buildFullPath(e,t){return e&&!r(t)?o(e,t):t}},174:function(e,t,n){"use strict";var r=n(2);e.exports=function createError(e,t,n,o,a){var i=new Error(e);return r(i,t,n,o,a)}},570:function(e,t,n){"use strict";var r=n(695),o=n(554),a=n(539),i=n(933);function throwIfCancellationRequested(e){e.cancelToken&&e.cancelToken.throwIfRequested()}e.exports=function dispatchRequest(e){return throwIfCancellationRequested(e),e.headers=e.headers||{},e.data=o(e.data,e.headers,e.transformRequest),e.headers=r.merge(e.headers.common||{},e.headers[e.method]||{},e.headers),r.forEach(["delete","get","head","post","put","patch","common"],(function cleanHeaderConfig(t){delete e.headers[t]})),(e.adapter||i.adapter)(e).then((function onAdapterResolution(t){return throwIfCancellationRequested(e),t.data=o(t.data,t.headers,e.transformResponse),t}),(function onAdapterRejection(t){return a(t)||(throwIfCancellationRequested(e),t&&t.response&&(t.response.data=o(t.response.data,t.response.headers,e.transformResponse))),Promise.reject(t)}))}},2:function(e){"use strict";e.exports=function enhanceError(e,t,n,r,o){return e.config=t,n&&(e.code=n),e.request=r,e.response=o,e.isAxiosError=!0,e.toJSON=function toJSON(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code}},e}},309:function(e,t,n){"use strict";var r=n(695);e.exports=function mergeConfig(e,t){t=t||{};var n={},o=["url","method","data"],a=["headers","auth","proxy","params"],i=["baseURL","transformRequest","transformResponse","paramsSerializer","timeout","timeoutMessage","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","decompress","maxContentLength","maxBodyLength","maxRedirects","transport","httpAgent","httpsAgent","cancelToken","socketPath","responseEncoding"],s=["validateStatus"];function getMergedValue(e,t){return r.isPlainObject(e)&&r.isPlainObject(t)?r.merge(e,t):r.isPlainObject(t)?r.merge({},t):r.isArray(t)?t.slice():t}function mergeDeepProperties(o){r.isUndefined(t[o])?r.isUndefined(e[o])||(n[o]=getMergedValue(void 0,e[o])):n[o]=getMergedValue(e[o],t[o])}r.forEach(o,(function valueFromConfig2(e){r.isUndefined(t[e])||(n[e]=getMergedValue(void 0,t[e]))})),r.forEach(a,mergeDeepProperties),r.forEach(i,(function defaultToConfig2(o){r.isUndefined(t[o])?r.isUndefined(e[o])||(n[o]=getMergedValue(void 0,e[o])):n[o]=getMergedValue(void 0,t[o])})),r.forEach(s,(function merge(r){r in t?n[r]=getMergedValue(e[r],t[r]):r in e&&(n[r]=getMergedValue(void 0,e[r]))}));var c=o.concat(a).concat(i).concat(s),u=Object.keys(e).concat(Object.keys(t)).filter((function filterAxiosKeys(e){return-1===c.indexOf(e)}));return r.forEach(u,mergeDeepProperties),n}},30:function(e,t,n){"use strict";var r=n(174);e.exports=function settle(e,t,n){var o=n.config.validateStatus;n.status&&o&&!o(n.status)?t(r("Request failed with status code "+n.status,n.config,null,n.request,n)):e(n)}},554:function(e,t,n){"use strict";var r=n(695);e.exports=function transformData(e,t,n){return r.forEach(n,(function transform(n){e=n(e,t)})),e}},933:function(e,t,n){"use strict";var r=n(695),o=n(965),a={"Content-Type":"application/x-www-form-urlencoded"};function setContentTypeIfUnset(e,t){!r.isUndefined(e)&&r.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}var i={adapter:function getDefaultAdapter(){var e;return("undefined"!==typeof XMLHttpRequest||"undefined"!==typeof process&&"[object process]"===Object.prototype.toString.call(process))&&(e=n(196)),e}(),transformRequest:[function transformRequest(e,t){return o(t,"Accept"),o(t,"Content-Type"),r.isFormData(e)||r.isArrayBuffer(e)||r.isBuffer(e)||r.isStream(e)||r.isFile(e)||r.isBlob(e)?e:r.isArrayBufferView(e)?e.buffer:r.isURLSearchParams(e)?(setContentTypeIfUnset(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):r.isObject(e)?(setContentTypeIfUnset(t,"application/json;charset=utf-8"),JSON.stringify(e)):e}],transformResponse:[function transformResponse(e){if("string"===typeof e)try{e=JSON.parse(e)}catch(t){}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function validateStatus(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};r.forEach(["delete","get","head"],(function forEachMethodNoData(e){i.headers[e]={}})),r.forEach(["post","put","patch"],(function forEachMethodWithData(e){i.headers[e]=r.merge(a)})),e.exports=i},129:function(e){"use strict";e.exports=function bind(e,t){return function wrap(){for(var n=new Array(arguments.length),r=0;r<n.length;r++)n[r]=arguments[r];return e.apply(t,n)}}},999:function(e,t,n){"use strict";var r=n(695);function encode(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}e.exports=function buildURL(e,t,n){if(!t)return e;var o;if(n)o=n(t);else if(r.isURLSearchParams(t))o=t.toString();else{var a=[];r.forEach(t,(function serialize(e,t){null!==e&&"undefined"!==typeof e&&(r.isArray(e)?t+="[]":e=[e],r.forEach(e,(function parseValue(e){r.isDate(e)?e=e.toISOString():r.isObject(e)&&(e=JSON.stringify(e)),a.push(encode(t)+"="+encode(e))})))})),o=a.join("&")}if(o){var i=e.indexOf("#");-1!==i&&(e=e.slice(0,i)),e+=(-1===e.indexOf("?")?"?":"&")+o}return e}},296:function(e){"use strict";e.exports=function combineURLs(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}},305:function(e,t,n){"use strict";var r=n(695);e.exports=r.isStandardBrowserEnv()?function standardBrowserEnv(){return{write:function write(e,t,n,o,a,i){var s=[];s.push(e+"="+encodeURIComponent(t)),r.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),r.isString(o)&&s.push("path="+o),r.isString(a)&&s.push("domain="+a),!0===i&&s.push("secure"),document.cookie=s.join("; ")},read:function read(e){var t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function remove(e){this.write(e,"",Date.now()-864e5)}}}():{write:function write(){},read:function read(){return null},remove:function remove(){}}},794:function(e){"use strict";e.exports=function isAbsoluteURL(e){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(e)}},431:function(e){"use strict";function _typeof(e){return(_typeof="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function _typeof(e){return typeof e}:function _typeof(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}e.exports=function isAxiosError(e){return"object"===_typeof(e)&&!0===e.isAxiosError}},751:function(e,t,n){"use strict";var r=n(695);e.exports=r.isStandardBrowserEnv()?function standardBrowserEnv(){var e,t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");function resolveURL(e){var r=e;return t&&(n.setAttribute("href",r),r=n.href),n.setAttribute("href",r),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:"/"===n.pathname.charAt(0)?n.pathname:"/"+n.pathname}}return e=resolveURL(window.location.href),function isURLSameOrigin(t){var n=r.isString(t)?resolveURL(t):t;return n.protocol===e.protocol&&n.host===e.host}}():function isURLSameOrigin(){return!0}},965:function(e,t,n){"use strict";var r=n(695);e.exports=function normalizeHeaderName(e,t){r.forEach(e,(function processHeader(n,r){r!==t&&r.toUpperCase()===t.toUpperCase()&&(e[t]=n,delete e[r])}))}},867:function(e,t,n){"use strict";var r=n(695),o=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];e.exports=function parseHeaders(e){var t,n,a,i={};return e?(r.forEach(e.split("\n"),(function parser(e){if(a=e.indexOf(":"),t=r.trim(e.substr(0,a)).toLowerCase(),n=r.trim(e.substr(a+1)),t){if(i[t]&&o.indexOf(t)>=0)return;i[t]="set-cookie"===t?(i[t]?i[t]:[]).concat([n]):i[t]?i[t]+", "+n:n}})),i):i}},522:function(e){"use strict";e.exports=function spread(e){return function wrap(t){return e.apply(null,t)}}},695:function(e,t,n){"use strict";function _typeof(e){return(_typeof="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function _typeof(e){return typeof e}:function _typeof(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var r=n(129),o=Object.prototype.toString;function isArray(e){return"[object Array]"===o.call(e)}function isUndefined(e){return"undefined"===typeof e}function isObject(e){return null!==e&&"object"===_typeof(e)}function isPlainObject(e){if("[object Object]"!==o.call(e))return!1;var t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function isFunction(e){return"[object Function]"===o.call(e)}function forEach(e,t){if(null!==e&&"undefined"!==typeof e)if("object"!==_typeof(e)&&(e=[e]),isArray(e))for(var n=0,r=e.length;n<r;n++)t.call(null,e[n],n,e);else for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.call(null,e[o],o,e)}e.exports={isArray:isArray,isArrayBuffer:function isArrayBuffer(e){return"[object ArrayBuffer]"===o.call(e)},isBuffer:function isBuffer(e){return null!==e&&!isUndefined(e)&&null!==e.constructor&&!isUndefined(e.constructor)&&"function"===typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)},isFormData:function isFormData(e){return"undefined"!==typeof FormData&&e instanceof FormData},isArrayBufferView:function isArrayBufferView(e){return"undefined"!==typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&e.buffer instanceof ArrayBuffer},isString:function isString(e){return"string"===typeof e},isNumber:function isNumber(e){return"number"===typeof e},isObject:isObject,isPlainObject:isPlainObject,isUndefined:isUndefined,isDate:function isDate(e){return"[object Date]"===o.call(e)},isFile:function isFile(e){return"[object File]"===o.call(e)},isBlob:function isBlob(e){return"[object Blob]"===o.call(e)},isFunction:isFunction,isStream:function isStream(e){return isObject(e)&&isFunction(e.pipe)},isURLSearchParams:function isURLSearchParams(e){return"undefined"!==typeof URLSearchParams&&e instanceof URLSearchParams},isStandardBrowserEnv:function isStandardBrowserEnv(){return("undefined"===typeof navigator||"ReactNative"!==navigator.product&&"NativeScript"!==navigator.product&&"NS"!==navigator.product)&&("undefined"!==typeof window&&"undefined"!==typeof document)},forEach:forEach,merge:function merge(){var e={};function assignValue(t,n){isPlainObject(e[n])&&isPlainObject(t)?e[n]=merge(e[n],t):isPlainObject(t)?e[n]=merge({},t):isArray(t)?e[n]=t.slice():e[n]=t}for(var t=0,n=arguments.length;t<n;t++)forEach(arguments[t],assignValue);return e},extend:function extend(e,t,n){return forEach(t,(function assignValue(t,o){e[o]=n&&"function"===typeof t?r(t,n):t})),e},trim:function trim(e){return e.replace(/^\s*/,"").replace(/\s*$/,"")},stripBOM:function stripBOM(e){return 65279===e.charCodeAt(0)&&(e=e.slice(1)),e}}},46:function(e){"use strict";e.exports=function makeYoutubeEmbed(e){if("string"===typeof e){var t=function getId(e){var t=e.match(/^.*(youtu.be\/|v\/|u\/\w\/|embed\/|watch\?v=|\&v=)([^#\&\?]*).*/);if(t&&11==t[2].length)return t[2]}(e);return t?"//www.youtube.com/embed/"+t:void 0}}}},t={};function __webpack_require__(n){var r=t[n];if(void 0!==r)return r.exports;var o=t[n]={exports:{}};return e[n](o,o.exports,__webpack_require__),o.exports}!function(){"use strict";var e="ajax-load",t="load";function _toConsumableArray(e){return function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}(e)||function _iterableToArray(e){if("undefined"!==typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function _unsupportedIterableToArray(e,t){if(!e)return;if("string"===typeof e)return _arrayLikeToArray(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _arrayLikeToArray(e,t)}(e)||function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function _defineProperty(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var n=window,r=__webpack_require__(722),o=function(){function MetaWindow(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{shown:!1},o=arguments.length>1?arguments[1]:void 0;_classCallCheck(this,MetaWindow),_defineProperty(this,"state",{content:"",type:["empty"],shown:!1,loading:!1,error:!1,embed:!1,collections:[],current:null,target:null}),_defineProperty(this,"show",(function(){var t=e;console.log("".concat(t.name,": show")),t.setState({shown:!0}),n.dispatchEvent(new Event("{ui.name}.show"))})),_defineProperty(this,"hide",(function(){var t=e;console.log("".concat(t.name,": hide")),t.setState({shown:!1}),n.dispatchEvent(new Event("{ui.name}.hide"))})),_defineProperty(this,"next",(function(){var t=e,r=t.state.current.getAttribute("data-gallery"),o=t._currIndex();o<t.state.collections[r].length-1?o++:o=0,t.state.collections[r][o].click(),console.log("".concat(t.name,": next")),n.dispatchEvent(new Event("{ui.name}.next"))})),_defineProperty(this,"prev",(function(){var t=e,r=t.state.current.getAttribute("data-gallery"),o=t._currIndex();o>0?o--:o=t.state.collections[r].length-1,t.state.collections[r][o].click(),console.log("".concat(t.name,": prev")),n.dispatchEvent(new Event("{ui.name}.prev"))})),_defineProperty(this,"reset",(function(){e.setState({content:"",type:["empty"],shown:!1,loading:!1,error:!1,embed:!1})})),_defineProperty(this,"load",(function(t){var r=e,o=r.axios;r.reset(),r.setState({loading:!0}),r.show(),o.get(t,{responseType:"arraybuffer"}).then((function(e){console.log("".concat(r.name,": response content-type: ").concat(e.headers["content-type"]));switch(e.headers["content-type"]){case"image/jpeg":case"image/png":case"image/svg+xml":case"image/bmp":case"image/gif":case"image/tiff":case"image/webp":case"image/jpg":case"image/svg":r.setContent('<img src="data:'.concat(e.headers["content-type"],";base64,").concat(r._imageEncode(e.data),'" />'),"meta-".concat(r.name,"--image"));break;case"application/json":case"application/ld+json":case"application/json; charset=UTF-8":r.setContent("".concat((!1).Content),["meta-".concat(r.name,"--text"),"meta-".concat(r.name,"--html"),"meta-".concat(r.name,"--json")]);break;case"text/html":case"application/xhtml+xml":case"text/plain":case"text/html; charset=UTF-8":case"application/xhtml+xml; charset=UTF-8":case"text/plain; charset=UTF-8":r.setContent(r._abToString(e.data),["meta-".concat(r.name,"--text"),"meta-".concat(r.name,"--html"),"meta-".concat(r.name,"--pajax")]);break;default:console.warn("".concat(r.name,": Unknown response content-type!"))}n.dispatchEvent(new Event("{ui.name}.loaded"))})).catch((function(e){console.error(e);var t="";if(e.response)switch(e.response.status){case 404:t="Not Found.";break;case 500:t="Server issue, please try again latter.";break;default:t="Something went wrong."}else e.request?t="No response received":console.warn("Error",e.message);r.setState({error:t}),n.dispatchEvent(new Event("{ui.name}.error"))})).then((function(){r.setState({loading:!1})}))})),_defineProperty(this,"_currIndex",(function(){var t=e,n=t.state.current,r=n.getAttribute("data-gallery");return t.state.collections[r].indexOf(n)})),_defineProperty(this,"embed",(function(t){var n=e;console.log("".concat(n.name,": embed")),n.reset(),n.setState({embed:t,loading:!1,type:["meta-".concat(n.name,"--embed"),"meta-".concat(n.name,"--video")]}),n.show()})),_defineProperty(this,"setCaption",(function(t){var n=e;console.log("".concat(n.name,": setCaption")),n.state.caption=t})),_defineProperty(this,"getCaption",(function(){return e.state.caption})),_defineProperty(this,"_abToString",(function(e){return String.fromCharCode.apply(null,new Uint8Array(e))})),_defineProperty(this,"_imageEncode",(function(e){new Uint8Array(e);return btoa([].reduce.call(new Uint8Array(e),(function(e,t){return e+String.fromCharCode(t)}),""))})),_defineProperty(this,"setContent",(function(t,n){var r=e;console.log("".concat(r.name,": setContent"));var o=n||["meta-".concat(r.name,"--html"),"meta-".concat(r.name,"--text")];Array.isArray(o)||(o=n.split(" ")),r.setState({content:t,type:o})})),_defineProperty(this,"getHtml",(function(){var t=e;if(t.state.embed){var n=__webpack_require__(46)(t.state.embed);t.state.content='<iframe width="600" height="380" src="'.concat(n,'" frameborder="0"></iframe>')}return t.state.content}));var a=this;switch(a.name=a.constructor.name,console.log("".concat(a.name,": init")),a.axios=r,a.setState(t),o){case"show":case"hide":a.hide()}n.dispatchEvent(new Event("{ui.name}.init"))}return function _createClass(e,t,n){return t&&_defineProperties(e.prototype,t),n&&_defineProperties(e,n),e}(MetaWindow,[{key:"init",value:function init(){var e=this;console.log("MetaWindow: [links] init"),document.querySelectorAll('[data-toggle="lightbox"],[data-gallery="${gallery}"]').forEach((function(t){var n=t.getAttribute("data-gallery");n&&(e.state.collections[n]=[],document.querySelectorAll('[data-toggle="lightbox"][data-gallery="'.concat(n,'"]')).forEach((function(t){e.state.collections[n].push(t)}))),t.addEventListener("click",(function(t){t.preventDefault(),console.log("MetaWindow: [link] click");var n=t.currentTarget,r=n.getAttribute("href")||n.getAttribute("data-href"),o=n.getAttribute("data-embed");e.state.current=n,o?e.embed(r):e.load(r);var a=n.getAttribute("data-title");a&&e.setCaption(a)}))}))}},{key:"setState",value:function setState(e){var t=this;t.state=Object.assign({},t.state,e),t.render()}},{key:"render",value:function render(){var e,t=this,n=t.name,r=t.state.current;t.state.target.innerHTML="";var o=document.createElement("div");o.classList.add("meta-".concat(n)),(e=o.classList).add.apply(e,_toConsumableArray(t.state.type)),t.state.target.append(o);var a=document.createElement("div");a.classList.add("meta-".concat(n,"-overlay")),t.state.shown&&a.classList.add("meta-".concat(n,"-overlay--open")),t.state.loading&&a.classList.add("meta-".concat(n,"-overlay--loading")),t.state.error&&a.classList.add("meta-".concat(n,"-overlay--error")),o.append(a);var i=document.createElement("div");i.classList.add("meta-content"),a.append(i);var s=document.createElement("button");if(s.classList.add("meta-nav","meta-close","a"),s.innerHTML='<i class="icon fa fas fa-times"></i> <span class="visually-hidden">Close</span>',s.addEventListener("click",(function(e){e.preventDefault(),t.hide()})),i.append(s),r){var c=r.getAttribute("data-gallery");if(c&&t.state.collections[c].length>1){var u=document.createElement("nav");u.classList.add("meta-navs");var f=document.createElement("button");f.classList.add("meta-nav","meta-nav-arrow","meta-nav-arrow__prev","a"),f.innerHTML='<i class="icon fa fas fa-chevron-left"></i> <span class="visually-hidden">Previous</span>',f.addEventListener("click",(function(e){e.preventDefault(),t.prev()})),u.append(f);var l=document.createElement("button");l.classList.add("meta-nav","meta-nav-arrow","meta-nav-arrow__next","a"),l.innerHTML='<i class="icon fa fas fa-chevron-right"></i> <span class="visually-hidden">Next</span>',l.addEventListener("click",(function(e){e.preventDefault(),t.next()})),u.append(l),i.append(u)}}var d=document.createElement("section");if(d.classList.add("meta-wrap","typography"),d.innerHTML=t.getHtml(),i.append(d),t.state.error){var p=document.createElement("div");p.classList.add("meta-error"),p.innerHTML=t.state.error,i.append(p)}else if(t.state.caption){var m=document.createElement("div");m.classList.add("meta-caption"),m.innerHTML=t.getCaption(),i.append(m)}return t}}]),MetaWindow}(),a=document.getElementById("MetaLightboxApp");a||console.log("MetaWindow: missing container #MetaLightboxApp");var i=new o({target:a}),s=function init(){i.init()};window.addEventListener("".concat(t),s),window.addEventListener("".concat(e),s),window.addEventListener("MetaWindow.initLinks",s),window.MetaWindow=i}()}();

4
dist/report.html vendored
View File

@ -3,7 +3,7 @@
<head> <head>
<meta charset="UTF-8"/> <meta charset="UTF-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/> <meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>@a2nt/meta-lightbox-js [18 Aug 2021 at 19:18]</title> <title>@a2nt/meta-lightbox-js [18 Aug 2021 at 21:11]</title>
<link rel="shortcut icon" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAABrVBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+O1foceMD///+J0/qK1Pr7/v8Xdr/9///W8P4UdL7L7P0Scr2r4Pyj3vwad8D5/f/2/f+55f3E6f34+/2H0/ojfMKpzOd0rNgQcb3F3O/j9f7c8v6g3Pz0/P/w+v/q+P7n9v6T1/uQ1vuE0vqLut/y+v+Z2fvt+f+15Pzv9fuc2/vR7v2V2Pvd6/bg9P7I6/285/2y4/yp3/zp8vk8i8kqgMT7/P31+fyv4vxGkcz6/P6/6P3j7vfS5PNnpNUxhcbO7f7F6v3O4vHK3/DA2u631Ouy0eqXweKJud5wqthfoNMMbLvY8f73+v2dxeR8sNtTmdDx9/zX6PSjyeaCtd1YnNGX2PuQveCGt95Nls42h8dLlM3F4vBtAAAAM3RSTlMAAyOx0/sKBvik8opWGBMOAe3l1snDm2E9LSb06eHcu5JpHbarfHZCN9CBb08zzkdNS0kYaptYAAAFV0lEQVRYw92X51/aYBDHHS2O2qqttVbrqNq9m+TJIAYIShBkWwqIiCgoWvfeq7Z2/s29hyQNyUcR7LveGwVyXy6XH8/9rqxglLfUPLxVduUor3h0rfp2TYvpivk37929TkG037hffoX0+peVtZQc1589rigVUdXS/ABSAyEmGIO/1XfvldSK8vs3OqB6u3m0nxmIrvgB0dj7rr7Y9IbuF68hnfFaiHA/sxqm0wciIG43P60qKv9WXWc1RXGh/mFESFABTSBi0sNAKzqet17eCtOb3kZIDwxEEU0oAIJGYxNBDhBND29e0rtXXbcpuPmED9IhEAAQ/AXEaF8EPmnrrKsv0LvWR3fg5sWDNAFZOgAgaKvZDogHNU9MFwnnYROkc56RD5CjAbQX9Ow4g7upCsvYu55aSI/Nj0H1akgKQEUM94dwK65hYRmFU9MIcH/fqJYOZYcnuJSU/waKDgTOEVaVKhwrTRP5XzgSpAITYzom7UvkhFX5VutmxeNnWDjjswTKTyfgluNDGbUpWissXhF3s7mlSml+czWkg3D0l1nNjGNjz3myOQOa1KM/jOS6ebdbAVTCi4gljHSFrviza7tOgRWcS0MOUX9zdNgag5w7rRqA44Lzw0hr1WqES36dFliSJFlh2rXIae3FFcDDgKdxrUIDePr8jGcSClV1u7A9xeN0ModY/pHMxmR1EzRh8TJiwqsHmKW0l4FCEZI+jHio+JdPPE9qwQtTRxku2D8sIeRL2LnxWSllANCQGOIiqVHAz2ye2JR0DcH+HoxDkaADLjgxjKQ+AwCX/g0+DNgdG0ukYCONAe+dbc2IAc6fwt1ARoDSezNHxV2Cmzwv3O6lDMV55edBGwGK9n1+x2F8EDfAGCxug8MhpsMEcTEAWf3rx2vZhe/LAmtIn/6apE6PN0ULKgywD9mmdxbmFl3OvD5AS5fW5zLbv/YHmcsBTjf/afDz3MaZTVCfAP9z6/Bw6ycv8EUBWJIn9zYcoAWWlW9+OzO3vkTy8H+RANLmdrpOuYWdZYEXpo+TlCJrW5EARb7fF+bWdqf3hhyZI1nWJQHgznErZhbjoEsWqi8dQNoE294aldzFurwSABL2XXMf9+H1VQGke9exw5P/AnA5Pv5ngMul7LOvO922iwACu8WkCwLCafvM4CeWPxfA8lNHcWZSoi8EwMAIciKX2Z4SWCMAa3snCZ/G4EA8D6CMLNFsGQhkkz/gQNEBbPCbWsxGUpYVu3z8IyNAknwJkfPMEhLyrdi5RTyUVACkw4GSFRNWJNEW+fgPGwHD8/JxnRuLabN4CGNRkAE23na2+VmEAUmrYymSGjMAYqH84YUIyzgzs3XC7gNgH36Vcc4zKY9o9fgPBXUAiHHwVboBHGLiX6Zcjp1f2wu4tvzZKo0ecPnDtQYDQvJXaBeNzce45Fp28ZQLrEZVuFqgBwOalArKXnW1UzlnSusQKJqKYNuz4tOnI6sZG4zanpemv+7ySU2jbA9h6uhcgpfy6G2PahirDZ6zvq6zDduMVFTKvzw8wgyEdelwY9in3XkEPs3osJuwRQ4qTkfzifndg9Gfc4pdsu82+tTnHZTBa2EAMrqr2t43pguc8tNm7JQVQ2S0ukj2d22dhXYP0/veWtwKrCkNoNimAN5+Xr/oLrxswKbVJjteWrX7eR63o4j9q0GxnaBdWgGA5VStpanIjQmEhV0/nVt5VOFUvix6awJhPcAaTEShgrG+iGyvb5a0Ndb1YGHFPEwoqAinoaykaID1o1pdPNu7XsnCKQ3R+hwWIIhGvORcJUBYXe3Xa3vq/mF/N9V13ugufMkfXn+KHsRD0B8AAAAASUVORK5CYII=" type="image/x-icon" /> <link rel="shortcut icon" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAABrVBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+O1foceMD///+J0/qK1Pr7/v8Xdr/9///W8P4UdL7L7P0Scr2r4Pyj3vwad8D5/f/2/f+55f3E6f34+/2H0/ojfMKpzOd0rNgQcb3F3O/j9f7c8v6g3Pz0/P/w+v/q+P7n9v6T1/uQ1vuE0vqLut/y+v+Z2fvt+f+15Pzv9fuc2/vR7v2V2Pvd6/bg9P7I6/285/2y4/yp3/zp8vk8i8kqgMT7/P31+fyv4vxGkcz6/P6/6P3j7vfS5PNnpNUxhcbO7f7F6v3O4vHK3/DA2u631Ouy0eqXweKJud5wqthfoNMMbLvY8f73+v2dxeR8sNtTmdDx9/zX6PSjyeaCtd1YnNGX2PuQveCGt95Nls42h8dLlM3F4vBtAAAAM3RSTlMAAyOx0/sKBvik8opWGBMOAe3l1snDm2E9LSb06eHcu5JpHbarfHZCN9CBb08zzkdNS0kYaptYAAAFV0lEQVRYw92X51/aYBDHHS2O2qqttVbrqNq9m+TJIAYIShBkWwqIiCgoWvfeq7Z2/s29hyQNyUcR7LveGwVyXy6XH8/9rqxglLfUPLxVduUor3h0rfp2TYvpivk37929TkG037hffoX0+peVtZQc1589rigVUdXS/ABSAyEmGIO/1XfvldSK8vs3OqB6u3m0nxmIrvgB0dj7rr7Y9IbuF68hnfFaiHA/sxqm0wciIG43P60qKv9WXWc1RXGh/mFESFABTSBi0sNAKzqet17eCtOb3kZIDwxEEU0oAIJGYxNBDhBND29e0rtXXbcpuPmED9IhEAAQ/AXEaF8EPmnrrKsv0LvWR3fg5sWDNAFZOgAgaKvZDogHNU9MFwnnYROkc56RD5CjAbQX9Ow4g7upCsvYu55aSI/Nj0H1akgKQEUM94dwK65hYRmFU9MIcH/fqJYOZYcnuJSU/waKDgTOEVaVKhwrTRP5XzgSpAITYzom7UvkhFX5VutmxeNnWDjjswTKTyfgluNDGbUpWissXhF3s7mlSml+czWkg3D0l1nNjGNjz3myOQOa1KM/jOS6ebdbAVTCi4gljHSFrviza7tOgRWcS0MOUX9zdNgag5w7rRqA44Lzw0hr1WqES36dFliSJFlh2rXIae3FFcDDgKdxrUIDePr8jGcSClV1u7A9xeN0ModY/pHMxmR1EzRh8TJiwqsHmKW0l4FCEZI+jHio+JdPPE9qwQtTRxku2D8sIeRL2LnxWSllANCQGOIiqVHAz2ye2JR0DcH+HoxDkaADLjgxjKQ+AwCX/g0+DNgdG0ukYCONAe+dbc2IAc6fwt1ARoDSezNHxV2Cmzwv3O6lDMV55edBGwGK9n1+x2F8EDfAGCxug8MhpsMEcTEAWf3rx2vZhe/LAmtIn/6apE6PN0ULKgywD9mmdxbmFl3OvD5AS5fW5zLbv/YHmcsBTjf/afDz3MaZTVCfAP9z6/Bw6ycv8EUBWJIn9zYcoAWWlW9+OzO3vkTy8H+RANLmdrpOuYWdZYEXpo+TlCJrW5EARb7fF+bWdqf3hhyZI1nWJQHgznErZhbjoEsWqi8dQNoE294aldzFurwSABL2XXMf9+H1VQGke9exw5P/AnA5Pv5ngMul7LOvO922iwACu8WkCwLCafvM4CeWPxfA8lNHcWZSoi8EwMAIciKX2Z4SWCMAa3snCZ/G4EA8D6CMLNFsGQhkkz/gQNEBbPCbWsxGUpYVu3z8IyNAknwJkfPMEhLyrdi5RTyUVACkw4GSFRNWJNEW+fgPGwHD8/JxnRuLabN4CGNRkAE23na2+VmEAUmrYymSGjMAYqH84YUIyzgzs3XC7gNgH36Vcc4zKY9o9fgPBXUAiHHwVboBHGLiX6Zcjp1f2wu4tvzZKo0ecPnDtQYDQvJXaBeNzce45Fp28ZQLrEZVuFqgBwOalArKXnW1UzlnSusQKJqKYNuz4tOnI6sZG4zanpemv+7ySU2jbA9h6uhcgpfy6G2PahirDZ6zvq6zDduMVFTKvzw8wgyEdelwY9in3XkEPs3osJuwRQ4qTkfzifndg9Gfc4pdsu82+tTnHZTBa2EAMrqr2t43pguc8tNm7JQVQ2S0ukj2d22dhXYP0/veWtwKrCkNoNimAN5+Xr/oLrxswKbVJjteWrX7eR63o4j9q0GxnaBdWgGA5VStpanIjQmEhV0/nVt5VOFUvix6awJhPcAaTEShgrG+iGyvb5a0Ndb1YGHFPEwoqAinoaykaID1o1pdPNu7XsnCKQ3R+hwWIIhGvORcJUBYXe3Xa3vq/mF/N9V13ugufMkfXn+KHsRD0B8AAAAASUVORK5CYII=" type="image/x-icon" />
<script> <script>
@ -30,7 +30,7 @@
<body> <body>
<div id="app"></div> <div id="app"></div>
<script> <script>
window.chartData = [{"label":"js/app.js","isAsset":true,"statSize":63482,"parsedSize":26072,"gzipSize":8187,"groups":[{"label":"node_modules/.pnpm","path":"./node_modules/.pnpm","statSize":42687,"groups":[{"label":"axios@0.21.1_debug@4.3.2/node_modules/axios","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios","statSize":42110,"groups":[{"id":722,"label":"index.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/index.js","statSize":40,"parsedSize":33,"gzipSize":53},{"label":"lib","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib","statSize":42070,"groups":[{"label":"adapters","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/adapters","statSize":5769,"groups":[{"id":196,"label":"xhr.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/adapters/xhr.js","statSize":5769,"parsedSize":2022,"gzipSize":1008}],"parsedSize":2022,"gzipSize":1008},{"id":895,"label":"axios.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/axios.js","statSize":1504,"parsedSize":464,"gzipSize":281},{"label":"cancel","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/cancel","statSize":1725,"groups":[{"id":638,"label":"Cancel.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/cancel/Cancel.js","statSize":383,"parsedSize":205,"gzipSize":153},{"id":114,"label":"CancelToken.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/cancel/CancelToken.js","statSize":1241,"parsedSize":523,"gzipSize":289},{"id":539,"label":"isCancel.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/cancel/isCancel.js","statSize":101,"parsedSize":84,"gzipSize":97}],"parsedSize":812,"gzipSize":383},{"label":"core","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/core","statSize":12130,"groups":[{"id":653,"label":"Axios.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/core/Axios.js","statSize":2649,"parsedSize":1205,"gzipSize":557},{"id":328,"label":"InterceptorManager.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/core/InterceptorManager.js","statSize":1253,"parsedSize":469,"gzipSize":242},{"id":492,"label":"buildFullPath.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/core/buildFullPath.js","statSize":697,"parsedSize":115,"gzipSize":123},{"id":174,"label":"createError.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/core/createError.js","statSize":625,"parsedSize":122,"gzipSize":111},{"id":570,"label":"dispatchRequest.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/core/dispatchRequest.js","statSize":1806,"parsedSize":843,"gzipSize":383},{"id":2,"label":"enhanceError.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/core/enhanceError.js","statSize":1050,"parsedSize":398,"gzipSize":234},{"id":309,"label":"mergeConfig.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/core/mergeConfig.js","statSize":2830,"parsedSize":1414,"gzipSize":645},{"id":30,"label":"settle.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/core/settle.js","statSize":671,"parsedSize":213,"gzipSize":169},{"id":554,"label":"transformData.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/core/transformData.js","statSize":549,"parsedSize":139,"gzipSize":124}],"parsedSize":4918,"gzipSize":1744},{"id":933,"label":"defaults.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/defaults.js","statSize":2541,"parsedSize":1383,"gzipSize":689},{"label":"helpers","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers","statSize":9191,"groups":[{"id":129,"label":"bind.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers/bind.js","statSize":257,"parsedSize":174,"gzipSize":147},{"id":999,"label":"buildURL.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers/buildURL.js","statSize":1615,"parsedSize":694,"gzipSize":430},{"id":296,"label":"combineURLs.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers/combineURLs.js","statSize":371,"parsedSize":119,"gzipSize":121},{"id":305,"label":"cookies.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers/cookies.js","statSize":1284,"parsedSize":659,"gzipSize":376},{"id":794,"label":"isAbsoluteURL.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers/isAbsoluteURL.js","statSize":562,"parsedSize":108,"gzipSize":117},{"id":431,"label":"isAxiosError.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers/isAxiosError.js","statSize":720,"parsedSize":370,"gzipSize":190},{"id":751,"label":"isURLSameOrigin.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers/isURLSameOrigin.js","statSize":2074,"parsedSize":742,"gzipSize":397},{"id":965,"label":"normalizeHeaderName.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers/normalizeHeaderName.js","statSize":356,"parsedSize":194,"gzipSize":166},{"id":867,"label":"parseHeaders.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers/parseHeaders.js","statSize":1389,"parsedSize":573,"gzipSize":365},{"id":522,"label":"spread.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers/spread.js","statSize":563,"parsedSize":103,"gzipSize":99}],"parsedSize":3736,"gzipSize":1550},{"id":695,"label":"utils.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/utils.js","statSize":9210,"parsedSize":2885,"gzipSize":973}],"parsedSize":16220,"gzipSize":5301}],"parsedSize":16253,"gzipSize":5308},{"label":"youtube-embed@1.0.0/node_modules/youtube-embed","path":"./node_modules/.pnpm/youtube-embed@1.0.0/node_modules/youtube-embed","statSize":577,"groups":[{"id":46,"label":"index.js","path":"./node_modules/.pnpm/youtube-embed@1.0.0/node_modules/youtube-embed/index.js","statSize":577,"parsedSize":278,"gzipSize":226}],"parsedSize":278,"gzipSize":226}],"parsedSize":16531,"gzipSize":5436},{"label":"src","path":"./src","statSize":20795,"groups":[{"label":"js","path":"./src/js","statSize":16778,"groups":[{"id":618,"label":"test-build.js + 3 modules (concatenated)","path":"./src/js/test-build.js + 3 modules (concatenated)","statSize":16778,"parsedSize":9541,"gzipSize":3069,"concatenated":true,"groups":[{"label":"src/js","path":"./src/js/test-build.js + 3 modules (concatenated)/src/js","statSize":16778,"groups":[{"id":null,"label":"test-build.js","path":"./src/js/test-build.js + 3 modules (concatenated)/src/js/test-build.js","statSize":300,"parsedSize":170,"gzipSize":54,"inaccurateSizes":true},{"id":null,"label":"app.js","path":"./src/js/test-build.js + 3 modules (concatenated)/src/js/app.js","statSize":717,"parsedSize":407,"gzipSize":131,"inaccurateSizes":true},{"id":null,"label":"_events.js","path":"./src/js/test-build.js + 3 modules (concatenated)/src/js/_events.js","statSize":1333,"parsedSize":758,"gzipSize":243,"inaccurateSizes":true},{"id":null,"label":"window.js","path":"./src/js/test-build.js + 3 modules (concatenated)/src/js/window.js","statSize":14428,"parsedSize":8204,"gzipSize":2639,"inaccurateSizes":true}],"parsedSize":9541,"gzipSize":3069,"inaccurateSizes":true}]}],"parsedSize":9541,"gzipSize":3069},{"label":"scss","path":"./src/scss","statSize":4017,"groups":[{"id":null,"label":"app.scss","path":"./src/scss/app.scss","statSize":4017}],"parsedSize":0,"gzipSize":0}],"parsedSize":9541,"gzipSize":3069}]}]; window.chartData = [{"label":"js/app.js","isAsset":true,"statSize":63485,"parsedSize":26072,"gzipSize":8188,"groups":[{"label":"node_modules/.pnpm","path":"./node_modules/.pnpm","statSize":42687,"groups":[{"label":"axios@0.21.1_debug@4.3.2/node_modules/axios","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios","statSize":42110,"groups":[{"id":722,"label":"index.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/index.js","statSize":40,"parsedSize":33,"gzipSize":53},{"label":"lib","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib","statSize":42070,"groups":[{"label":"adapters","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/adapters","statSize":5769,"groups":[{"id":196,"label":"xhr.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/adapters/xhr.js","statSize":5769,"parsedSize":2022,"gzipSize":1008}],"parsedSize":2022,"gzipSize":1008},{"id":895,"label":"axios.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/axios.js","statSize":1504,"parsedSize":464,"gzipSize":281},{"label":"cancel","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/cancel","statSize":1725,"groups":[{"id":638,"label":"Cancel.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/cancel/Cancel.js","statSize":383,"parsedSize":205,"gzipSize":153},{"id":114,"label":"CancelToken.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/cancel/CancelToken.js","statSize":1241,"parsedSize":523,"gzipSize":289},{"id":539,"label":"isCancel.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/cancel/isCancel.js","statSize":101,"parsedSize":84,"gzipSize":97}],"parsedSize":812,"gzipSize":383},{"label":"core","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/core","statSize":12130,"groups":[{"id":653,"label":"Axios.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/core/Axios.js","statSize":2649,"parsedSize":1205,"gzipSize":557},{"id":328,"label":"InterceptorManager.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/core/InterceptorManager.js","statSize":1253,"parsedSize":469,"gzipSize":242},{"id":492,"label":"buildFullPath.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/core/buildFullPath.js","statSize":697,"parsedSize":115,"gzipSize":123},{"id":174,"label":"createError.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/core/createError.js","statSize":625,"parsedSize":122,"gzipSize":111},{"id":570,"label":"dispatchRequest.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/core/dispatchRequest.js","statSize":1806,"parsedSize":843,"gzipSize":383},{"id":2,"label":"enhanceError.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/core/enhanceError.js","statSize":1050,"parsedSize":398,"gzipSize":234},{"id":309,"label":"mergeConfig.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/core/mergeConfig.js","statSize":2830,"parsedSize":1414,"gzipSize":645},{"id":30,"label":"settle.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/core/settle.js","statSize":671,"parsedSize":213,"gzipSize":169},{"id":554,"label":"transformData.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/core/transformData.js","statSize":549,"parsedSize":139,"gzipSize":124}],"parsedSize":4918,"gzipSize":1744},{"id":933,"label":"defaults.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/defaults.js","statSize":2541,"parsedSize":1383,"gzipSize":689},{"label":"helpers","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers","statSize":9191,"groups":[{"id":129,"label":"bind.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers/bind.js","statSize":257,"parsedSize":174,"gzipSize":147},{"id":999,"label":"buildURL.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers/buildURL.js","statSize":1615,"parsedSize":694,"gzipSize":430},{"id":296,"label":"combineURLs.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers/combineURLs.js","statSize":371,"parsedSize":119,"gzipSize":121},{"id":305,"label":"cookies.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers/cookies.js","statSize":1284,"parsedSize":659,"gzipSize":376},{"id":794,"label":"isAbsoluteURL.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers/isAbsoluteURL.js","statSize":562,"parsedSize":108,"gzipSize":117},{"id":431,"label":"isAxiosError.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers/isAxiosError.js","statSize":720,"parsedSize":370,"gzipSize":190},{"id":751,"label":"isURLSameOrigin.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers/isURLSameOrigin.js","statSize":2074,"parsedSize":742,"gzipSize":397},{"id":965,"label":"normalizeHeaderName.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers/normalizeHeaderName.js","statSize":356,"parsedSize":194,"gzipSize":166},{"id":867,"label":"parseHeaders.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers/parseHeaders.js","statSize":1389,"parsedSize":573,"gzipSize":365},{"id":522,"label":"spread.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers/spread.js","statSize":563,"parsedSize":103,"gzipSize":99}],"parsedSize":3736,"gzipSize":1550},{"id":695,"label":"utils.js","path":"./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/utils.js","statSize":9210,"parsedSize":2885,"gzipSize":973}],"parsedSize":16220,"gzipSize":5301}],"parsedSize":16253,"gzipSize":5308},{"label":"youtube-embed@1.0.0/node_modules/youtube-embed","path":"./node_modules/.pnpm/youtube-embed@1.0.0/node_modules/youtube-embed","statSize":577,"groups":[{"id":46,"label":"index.js","path":"./node_modules/.pnpm/youtube-embed@1.0.0/node_modules/youtube-embed/index.js","statSize":577,"parsedSize":278,"gzipSize":226}],"parsedSize":278,"gzipSize":226}],"parsedSize":16531,"gzipSize":5436},{"label":"src","path":"./src","statSize":20798,"groups":[{"label":"js","path":"./src/js","statSize":16778,"groups":[{"id":618,"label":"test-build.js + 3 modules (concatenated)","path":"./src/js/test-build.js + 3 modules (concatenated)","statSize":16778,"parsedSize":9541,"gzipSize":3069,"concatenated":true,"groups":[{"label":"src/js","path":"./src/js/test-build.js + 3 modules (concatenated)/src/js","statSize":16778,"groups":[{"id":null,"label":"test-build.js","path":"./src/js/test-build.js + 3 modules (concatenated)/src/js/test-build.js","statSize":300,"parsedSize":170,"gzipSize":54,"inaccurateSizes":true},{"id":null,"label":"app.js","path":"./src/js/test-build.js + 3 modules (concatenated)/src/js/app.js","statSize":717,"parsedSize":407,"gzipSize":131,"inaccurateSizes":true},{"id":null,"label":"_events.js","path":"./src/js/test-build.js + 3 modules (concatenated)/src/js/_events.js","statSize":1333,"parsedSize":758,"gzipSize":243,"inaccurateSizes":true},{"id":null,"label":"window.js","path":"./src/js/test-build.js + 3 modules (concatenated)/src/js/window.js","statSize":14428,"parsedSize":8204,"gzipSize":2639,"inaccurateSizes":true}],"parsedSize":9541,"gzipSize":3069,"inaccurateSizes":true}]}],"parsedSize":9541,"gzipSize":3069},{"label":"scss","path":"./src/scss","statSize":4020,"groups":[{"id":null,"label":"app.scss","path":"./src/scss/app.scss","statSize":4020}],"parsedSize":0,"gzipSize":0}],"parsedSize":9541,"gzipSize":3069}]}];
window.defaultSizes = "parsed"; window.defaultSizes = "parsed";
</script> </script>
</body> </body>

View File

@ -1,6 +1,6 @@
{ {
"name": "@a2nt/meta-lightbox-js", "name": "@a2nt/meta-lightbox-js",
"version": "4.1.0", "version": "4.1.1",
"description": "Universal lightbox", "description": "Universal lightbox",
"author": "Tony Air <tony@twma.pro>", "author": "Tony Air <tony@twma.pro>",
"license": "BSD-2-Clause", "license": "BSD-2-Clause",
@ -14,20 +14,19 @@
"yarn": ">= 1.22.0" "yarn": ">= 1.22.0"
}, },
"scripts": { "scripts": {
"start": "cross-env NODE_ENV=development webpack-dev-server --config webpack.config.serve.js", "start": "cross-env NODE_ENV=development webpack-dev-server --config webpack.config.serve.js",
"dash": "cross-env NODE_ENV=development webpack-dashboard -- webpack-dev-server --config webpack.config.serve.js", "dash": "cross-env NODE_ENV=development webpack-dashboard -- webpack-dev-server --config webpack.config.serve.js",
"build": "cross-env NODE_ENV=production webpack --progress --stats-all", "build": "cross-env NODE_ENV=production webpack --progress --stats-all",
"lint:check": "eslint ./src --config eslint.config.json && sass-lint ./src --config sass-lint.yml -v -q", "lint:fix": "eslint './src/**/*.js' -c eslint.config.json --fix && sass-lint-auto-fix -s -c ./sass-lint.yml './src/**/*.scss'",
"lint:fix": "eslint ./src --config eslint.config.json --fix && sass-lint-auto-fix -c ./sass-lint.yml './src/scss/*'", "lint:js": "eslint './src/**/*.js' -c eslint.config.json",
"lint:js": "eslint ./src --config eslint.config.json", "lint:scss": "sass-lint ./src/**/*.scss -c sass-lint.yml -v",
"lint:sass": "sass-lint ./src --config sass-lint.yml -v -q", "lint:check": "yarn lint:js && yarn lint:scss",
"prebuild": "yarn lint:fix && rimraf dist", "prebuild": "yarn lint:fix && yarn lint:check && rimraf dist",
"prepare": "yarn lint:fix && yarn build", "prepare": "yarn build",
"prunecaches": "rimraf ./node_modules/.cache/", "prunecaches": "rimraf ./node_modules/.cache/",
"postinstall": "npm run prunecaches", "postinstall": "npm run prunecaches",
"postuninstall": "npm run prunecaches", "postuninstall": "npm run prunecaches",
"preinstall": "npx only-allow pnpm", "preinstall": "npx only-allow pnpm"
"update": "npx msw init ./src/_graphql"
}, },
"directories": { "directories": {
"assets": { "assets": {

View File

@ -18,8 +18,8 @@ rules:
nesting-depth: nesting-depth:
- 1 - 1
- max-depth: 3 - max-depth: 3
no-ids: 1 no-ids: 0
no-important: 1 no-important: 0
no-misspelled-properties: no-misspelled-properties:
- 1 - 1
- extra-properties: - extra-properties:
@ -54,7 +54,7 @@ rules:
clean-import-paths: clean-import-paths:
- 2 - 2
- filename-extension: false - filename-extension: false
leading-underscore: false - leading-underscore: true
no-debug: 2 no-debug: 2
no-empty-rulesets: 2 no-empty-rulesets: 2
no-invalid-hex: 2 no-invalid-hex: 2

View File

@ -1,65 +1,108 @@
<style> <style>
[data-toggle='lightbox']:hover, [data-toggle="lightbox"]:hover,
[data-toggle='lightbox']:focus { [data-toggle="lightbox"]:focus {
text-decoration: underline; text-decoration: underline;
} }
</style> </style>
<div id="MetaLightboxContainer"> <div id="MetaLightboxContainer">
<div class="typography"> <div class="typography">
<h2>Loading data</h2> <h2>Loading data</h2>
<p> <p>
<a href="https://via.placeholder.com/1200x600" data-toggle="lightbox" data-gallery="demo" data-title="That's first link">Load an Image</a> <a
<br /> href="https://via.placeholder.com/1200x600"
<a href="public/src/test.json" data-toggle="lightbox"> data-toggle="lightbox"
Load JSON </a> data-gallery="demo"
<style> data-title="That's first link"
[data-toggle='lightbox']:hover, >Load an Image</a
[data-toggle='lightbox']:focus { >
text-decoration: underline; <br />
} <a href="public/src/test.json" data-toggle="lightbox"> Load JSON </a>
<style>
</style> [data-toggle="lightbox"]:hover,
<br /> [data-toggle="lightbox"]:focus {
<a href="public/src/test-pajax.html" data-toggle="lightbox"> text-decoration: underline;
Load Partial AJAX HTML </a><br /> }
<a href="public/src/not-found.html" data-toggle="lightbox"> </style>
Not Found test <br />
</a> <a href="public/src/test-pajax.html" data-toggle="lightbox">
</p> Load Partial AJAX HTML </a
<h2>Embeds</h2> ><br />
<p> <a href="public/src/not-found.html" data-toggle="lightbox">
<a href="https://www.youtube.com/watch?v=WYvZZYthDRI" data-toggle="lightbox" data-embed="true">Embed Youtube link</a> Not Found test
<br /> </a>
<a href="https://vimeo.com/26216129" data-toggle="lightbox" data-embed="true">Embed Vimeo link</a> </p>
<br /> <h2>Embeds</h2>
<a href="https://soundcloud.com/littlenapoleon/led-zeppelin-vs-rolling-stones" data-toggle="lightbox" data-embed="true">Embed SoundCloud link</a><br /> <p>
<a href="https://www.instagram.com/p/CKl5n87hf7R/" data-toggle="lightbox" data-embed="true">Embed Instagram</a> <a
</p> href="https://www.youtube.com/watch?v=WYvZZYthDRI"
<h2>Other</h2> data-toggle="lightbox"
<p> data-embed="true"
<a href="https://via.placeholder.com/600x600.svg?text=SVG%20Image" data-toggle="lightbox" data-gallery="demo"> >Embed Youtube link</a
Use [data-toggle="lightbox"] attribute to attach lightbox action >
and [href] to specify URL. <br />
</a> <a
</p> href="https://vimeo.com/26216129"
<p> data-toggle="lightbox"
<a href="https://via.placeholder.com/600x1200.jpg?text=JPG%20Image" data-toggle="lightbox" data-gallery="demo" data-title="Use data-title attribute to specify lightbox title"> data-embed="true"
Use [data-gallery="YOUR_GALLERY_NAME"] to group ligthboxes with >Embed Vimeo link</a
next/prev arrows >
</a> <br />
</p> <a
<p> href="https://soundcloud.com/littlenapoleon/led-zeppelin-vs-rolling-stones"
<a href="https://via.placeholder.com/1400x700.png?text=PNG%20Image" data-toggle="lightbox" data-gallery="demo" data-title="Use data-title attribute to specify lightbox title"> data-toggle="lightbox"
Use [data-gallery="YOUR_GALLERY_NAME"] to group ligthboxes with data-embed="true"
next/prev arrows >Embed SoundCloud link</a
</a> ><br />
</p> <a
<p data-toggle="lightbox" data-href="https://youtu.be/GgnClrx8N2k" data-gallery="demo" data-title="Yes you can link vimeo and youtube videos as long as AJAX content"> href="https://www.instagram.com/p/CKl5n87hf7R/"
Use [data-toggle="lightbox"] + [data-href] attribute to toggle data-toggle="lightbox"
lightbox on regular elements. data-embed="true"
<b>Click me!</b> >Embed Instagram</a
</p> >
</div> </p>
<div id="MetaLightboxApp"></div> <h2>Other</h2>
<p>
<a
href="https://via.placeholder.com/600x600.svg?text=SVG%20Image"
data-toggle="lightbox"
data-gallery="demo"
>
Use [data-toggle="lightbox"] attribute to attach lightbox action and
[href] to specify URL.
</a>
</p>
<p>
<a
href="https://via.placeholder.com/600x1200.jpg?text=JPG%20Image"
data-toggle="lightbox"
data-gallery="demo"
data-title="Use data-title attribute to specify lightbox title"
>
Use [data-gallery="YOUR_GALLERY_NAME"] to group ligthboxes with
next/prev arrows
</a>
</p>
<p>
<a
href="https://via.placeholder.com/1400x700.png?text=PNG%20Image"
data-toggle="lightbox"
data-gallery="demo"
data-title="Use data-title attribute to specify lightbox title"
>
Use [data-gallery="YOUR_GALLERY_NAME"] to group ligthboxes with
next/prev arrows
</a>
</p>
<p
data-toggle="lightbox"
data-href="https://youtu.be/GgnClrx8N2k"
data-gallery="demo"
data-title="Yes you can link vimeo and youtube videos as long as AJAX content"
>
Use [data-toggle="lightbox"] + [data-href] attribute to toggle lightbox on
regular elements.
<b>Click me!</b>
</p>
</div>
<div id="MetaLightboxApp"></div>
</div> </div>

View File

@ -1,36 +1,40 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head>
<head>
<meta charset="utf-8" /> <meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" /> <meta
name="viewport"
content="width=device-width, initial-scale=1, shrink-to-fit=no"
/>
<meta name="description" content="Meta Lightbox" /> <meta name="description" content="Meta Lightbox" />
<meta name="author" content="Tony Air" /> <meta name="author" content="Tony Air" />
<title>Meta-lightbox Demo</title> <title>Meta-lightbox Demo</title>
<style> <style>
.wrapper { .wrapper {
padding: 2rem; padding: 2rem;
} }
</style> </style>
</head> </head>
<body> <body>
<div class="wrapper"> <div class="wrapper">
<h1>Meta-lightbox Demo</h1> <h1>Meta-lightbox Demo</h1>
NODE_ENV: NODE_ENV: <%= NODE_ENV %> <%=
<%= NODE_ENV %> require('html-loader!./html/meta-lightbox.html').default %>
<%= <div id="App"></div>
require('html-loader!./html/meta-lightbox.html').default %>
<div id="App"></div>
</div> </div>
<!-- React is required --> <!-- React is required -->
<%= REACT_SCRIPTS %> <%= REACT_SCRIPTS %>
<!-- That's optional dependencies --> <!-- That's optional dependencies -->
<!-- jQuery --> <!-- jQuery -->
<!-- script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script --> <!-- script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script -->
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" /> <link
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.12.0/css/all.css" /> rel="stylesheet"
</body> href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css"
/>
<link
rel="stylesheet"
href="https://use.fontawesome.com/releases/v5.12.0/css/all.css"
/>
</body>
</html> </html>

View File

@ -3,41 +3,41 @@
*/ */
export default { export default {
AJAX: 'ajax-load', AJAX: "ajax-load",
AJAXMAIN: 'ajax-main-load', AJAXMAIN: "ajax-main-load",
MAININIT: 'main-init', MAININIT: "main-init",
TABHIDDEN: 'tab-hidden', TABHIDDEN: "tab-hidden",
TABFOCUSED: 'tab-focused', TABFOCUSED: "tab-focused",
OFFLINE: 'offline', OFFLINE: "offline",
ONLINE: 'online', ONLINE: "online",
BACKONLINE: 'back-online', BACKONLINE: "back-online",
TOUCHENABLE: 'touch-enabled', TOUCHENABLE: "touch-enabled",
TOUCHDISABLED: 'touch-disabled', TOUCHDISABLED: "touch-disabled",
LOADED: 'load', LOADED: "load",
SWIPELEFT: 'swipeleft panleft', SWIPELEFT: "swipeleft panleft",
SWIPERIGHT: 'swiperight panright', SWIPERIGHT: "swiperight panright",
ALLERTAPPEARED: 'alert-appeared', ALLERTAPPEARED: "alert-appeared",
ALERTREMOVED: 'alert-removed', ALERTREMOVED: "alert-removed",
LOADEDANDREADY: 'load-ready', LOADEDANDREADY: "load-ready",
LAZYIMAGEREADY: 'image-lazy-bg-loaded', LAZYIMAGEREADY: "image-lazy-bg-loaded",
LAZYIMAGESREADY: 'images-lazy-loaded', LAZYIMAGESREADY: "images-lazy-loaded",
MAPLOADED: 'map-loaded', MAPLOADED: "map-loaded",
MAPAPILOADED: 'map-api-loaded', MAPAPILOADED: "map-api-loaded",
MAPMARKERCLICK: 'map-marker-click', MAPMARKERCLICK: "map-marker-click",
MAPPOPUPCLOSE: 'map-popup-close', MAPPOPUPCLOSE: "map-popup-close",
SCROLL: 'scroll', SCROLL: "scroll",
RESIZE: 'resize', RESIZE: "resize",
CAROUSEL_READY: 'bs.carousel.ready', CAROUSEL_READY: "bs.carousel.ready",
SET_TARGET_UPDATE: 'set-target-update', SET_TARGET_UPDATE: "set-target-update",
RESTORE_FIELD: 'restore-field', RESTORE_FIELD: "restore-field",
FORM_INIT_BASICS: 'form-basics', FORM_INIT_BASICS: "form-basics",
FORM_INIT_STEPPED: 'form-init-stepped', FORM_INIT_STEPPED: "form-init-stepped",
FORM_INIT_VALIDATE: 'form-init-validate', FORM_INIT_VALIDATE: "form-init-validate",
FORM_INIT_VALIDATE_FIELD: 'form-init-validate-field', FORM_INIT_VALIDATE_FIELD: "form-init-validate-field",
FORM_INIT_STORAGE: 'form-init-storage', FORM_INIT_STORAGE: "form-init-storage",
FORM_VALIDATION_FAILED: 'form-validation-failed', FORM_VALIDATION_FAILED: "form-validation-failed",
FORM_STEPPED_NEW_STEP: 'form-new-step', FORM_STEPPED_NEW_STEP: "form-new-step",
FORM_STEPPED_FIRST_STEP: 'form-first-step', FORM_STEPPED_FIRST_STEP: "form-first-step",
FORM_STEPPED_LAST_STEP: 'form-last-step', FORM_STEPPED_LAST_STEP: "form-last-step",
FORM_FIELDS: 'input,textarea,select', FORM_FIELDS: "input,textarea,select",
}; };

View File

@ -4,15 +4,14 @@
* *
*/ */
import Events from './_events'; import Events from "./_events";
import MetaWindow from './window'; import MetaWindow from "./window";
const container = document.getElementById('MetaLightboxApp'); const container = document.getElementById("MetaLightboxApp");
if (!container) { if (!container) {
console.log(`MetaWindow: missing container #MetaLightboxApp`); console.log(`MetaWindow: missing container #MetaLightboxApp`);
} }
const ui = new MetaWindow({ const ui = new MetaWindow({
target: container, target: container,
}); });

View File

@ -1,2 +1,2 @@
import styles from '../scss/window.scss'; import styles from "../scss/window.scss";
import './app.js'; import "./app.js";

View File

@ -4,9 +4,9 @@
* *
*/ */
import ui from './app'; import ui from "./app";
import '../scss/app.scss'; import "../scss/app.scss";
import '../scss/test-build.scss'; import "../scss/test-build.scss";
/*function importAll(r) { /*function importAll(r) {
return r.keys().map(r); return r.keys().map(r);

View File

@ -2,36 +2,38 @@
* Lightbox window * Lightbox window
*/ */
import Events from './_events'; import Events from "./_events";
const W = window; const W = window;
const axios = require('axios'); const axios = require("axios");
class MetaWindow { class MetaWindow {
state = { state = {
content: '', content: "",
type: ['empty'], type: ["empty"],
shown: false, shown: false,
loading: false, loading: false,
error: false, error: false,
embed: false, embed: false,
collections: [], collections: [],
current: null, current: null,
target: null, target: null,
}; };
init() { init() {
const ui = this; const ui = this;
console.log(`MetaWindow: [links] init`); console.log(`MetaWindow: [links] init`);
// collect new collections // collect new collections
document.querySelectorAll('[data-toggle="lightbox"],[data-gallery="${gallery}"]').forEach((el) => { document
const gallery = el.getAttribute('data-gallery'); .querySelectorAll('[data-toggle="lightbox"],[data-gallery="${gallery}"]')
.forEach((el) => {
const gallery = el.getAttribute("data-gallery");
if (gallery) { if (gallery) {
ui.state.collections[gallery] = []; ui.state.collections[gallery] = [];
document document
.querySelectorAll( .querySelectorAll(
`[data-toggle="lightbox"][data-gallery="${gallery}"]`, `[data-toggle="lightbox"][data-gallery="${gallery}"]`
) )
.forEach((el) => { .forEach((el) => {
ui.state.collections[gallery].push(el); ui.state.collections[gallery].push(el);
@ -39,14 +41,13 @@ class MetaWindow {
} }
// click handler // click handler
el.addEventListener('click', (e) => { el.addEventListener("click", (e) => {
e.preventDefault(); e.preventDefault();
console.log(`MetaWindow: [link] click`); console.log(`MetaWindow: [link] click`);
const el = e.currentTarget; const el = e.currentTarget;
const link = const link = el.getAttribute("href") || el.getAttribute("data-href");
el.getAttribute('href') || el.getAttribute('data-href'); const embed = el.getAttribute("data-embed");
const embed = el.getAttribute('data-embed');
ui.state.current = el; ui.state.current = el;
if (embed) { if (embed) {
@ -55,392 +56,408 @@ class MetaWindow {
ui.load(link); ui.load(link);
} }
const title = el.getAttribute('data-title'); const title = el.getAttribute("data-title");
if (title) { if (title) {
ui.setCaption(title); ui.setCaption(title);
} }
}); });
}); });
} }
constructor(state = { constructor(
state = {
shown: false, shown: false,
}, action) { },
const ui = this; action
) {
const ui = this;
ui.name = ui.constructor.name; ui.name = ui.constructor.name;
console.log(`${ui.name}: init`); console.log(`${ui.name}: init`);
ui.axios = axios; ui.axios = axios;
ui.setState(state); ui.setState(state);
switch (action) { switch (action) {
case 'show': case "show":
ui.hide(); ui.hide();
break; break;
case 'hide': case "hide":
ui.hide(); ui.hide();
break; break;
}
W.dispatchEvent(new Event(`{ui.name}.init`));
} }
show = () => { W.dispatchEvent(new Event(`{ui.name}.init`));
const ui = this; }
console.log(`${ui.name}: show`);
ui.setState({ show = () => {
shown: true, const ui = this;
}); console.log(`${ui.name}: show`);
W.dispatchEvent(new Event(`{ui.name}.show`));
};
hide = () => { ui.setState({
const ui = this; shown: true,
});
W.dispatchEvent(new Event(`{ui.name}.show`));
};
console.log(`${ui.name}: hide`); hide = () => {
ui.setState({ const ui = this;
shown: false,
});
W.dispatchEvent(new Event(`{ui.name}.hide`));
};
next = () => { console.log(`${ui.name}: hide`);
const ui = this; ui.setState({
const el = ui.state.current; shown: false,
const gallery = el.getAttribute('data-gallery'); });
W.dispatchEvent(new Event(`{ui.name}.hide`));
};
let i = ui._currIndex(); next = () => {
if (i < ui.state.collections[gallery].length - 1) { const ui = this;
i++; const el = ui.state.current;
} else { const gallery = el.getAttribute("data-gallery");
i = 0;
}
ui.state.collections[gallery][i].click(); let i = ui._currIndex();
if (i < ui.state.collections[gallery].length - 1) {
i++;
} else {
i = 0;
}
console.log(`${ui.name}: next`); ui.state.collections[gallery][i].click();
W.dispatchEvent(new Event(`{ui.name}.next`));
};
prev = () => { console.log(`${ui.name}: next`);
const ui = this; W.dispatchEvent(new Event(`{ui.name}.next`));
const el = ui.state.current; };
const gallery = el.getAttribute('data-gallery');
let i = ui._currIndex(); prev = () => {
if (i > 0) { const ui = this;
i--; const el = ui.state.current;
} else { const gallery = el.getAttribute("data-gallery");
i = ui.state.collections[gallery].length - 1;
}
ui.state.collections[gallery][i].click(); let i = ui._currIndex();
if (i > 0) {
i--;
} else {
i = ui.state.collections[gallery].length - 1;
}
console.log(`${ui.name}: prev`); ui.state.collections[gallery][i].click();
W.dispatchEvent(new Event(`{ui.name}.prev`));
};
reset = () => { console.log(`${ui.name}: prev`);
const ui = this; W.dispatchEvent(new Event(`{ui.name}.prev`));
};
ui.setState({ reset = () => {
content: '', const ui = this;
type: ['empty'],
shown: false,
loading: false,
error: false,
embed: false,
//collections: [],
//current: null,
//target: null,
});
};
load = (link) => { ui.setState({
const ui = this; content: "",
const axios = ui.axios; type: ["empty"],
shown: false,
loading: false,
error: false,
embed: false,
//collections: [],
//current: null,
//target: null,
});
};
ui.reset(); load = (link) => {
ui.setState({ const ui = this;
loading: true, const axios = ui.axios;
});
ui.show();
axios ui.reset();
.get(link, { ui.setState({
responseType: 'arraybuffer', loading: true,
}) });
.then((resp) => { ui.show();
// handle success
console.log(
`${ui.name}: response content-type: ${resp.headers['content-type']}`,
);
const json = false;
switch (resp.headers['content-type']) { axios
case 'image/jpeg': .get(link, {
case 'image/png': responseType: "arraybuffer",
case 'image/svg+xml': })
case 'image/bmp': .then((resp) => {
case 'image/gif': // handle success
case 'image/tiff': console.log(
case 'image/webp': `${ui.name}: response content-type: ${resp.headers["content-type"]}`
// irregular types: );
case 'image/jpg': const json = false;
case 'image/svg':
//json = JSON.parse(ui._abToString(resp.data)); switch (resp.headers["content-type"]) {
ui.setContent( case "image/jpeg":
`<img src="data:${resp.headers['content-type']};base64,${ui._imageEncode(resp.data)}" />`, case "image/png":
`meta-${ui.name}__image`, case "image/svg+xml":
); case "image/bmp":
case "image/gif":
case "image/tiff":
case "image/webp":
// irregular types:
case "image/jpg":
case "image/svg":
//json = JSON.parse(ui._abToString(resp.data));
ui.setContent(
`<img src="data:${
resp.headers["content-type"]
};base64,${ui._imageEncode(resp.data)}" />`,
`meta-${ui.name}--image`
);
break;
case "application/json":
case "application/ld+json":
// irregular types:
case "application/json; charset=UTF-8":
ui.setContent(`${json["Content"]}`, [
`meta-${ui.name}--text`,
`meta-${ui.name}--html`,
`meta-${ui.name}--json`,
]);
break;
case "text/html":
case "application/xhtml+xml":
case "text/plain":
// irregular types:
case "text/html; charset=UTF-8":
case "application/xhtml+xml; charset=UTF-8":
case "text/plain; charset=UTF-8":
ui.setContent(ui._abToString(resp.data), [
`meta-${ui.name}--text`,
`meta-${ui.name}--html`,
`meta-${ui.name}--pajax`,
]);
break;
default:
console.warn(`${ui.name}: Unknown response content-type!`);
break;
}
W.dispatchEvent(new Event(`{ui.name}.loaded`));
})
.catch((error) => {
console.error(error);
let msg = "";
if (error.response) {
switch (error.response.status) {
case 404:
msg = "Not Found.";
break; break;
case 'application/json': case 500:
case 'application/ld+json': msg = "Server issue, please try again latter.";
// irregular types:
case 'application/json; charset=UTF-8':
ui.setContent(`${json['Content']}`, [
`meta-${ui.name}__text`,
`meta-${ui.name}__html`,
`meta-${ui.name}__json`,
]);
break;
case 'text/html':
case 'application/xhtml+xml':
case 'text/plain':
// irregular types:
case 'text/html; charset=UTF-8':
case 'application/xhtml+xml; charset=UTF-8':
case 'text/plain; charset=UTF-8':
ui.setContent(
ui._abToString(resp.data),[
`meta-${ui.name}__text`,
`meta-${ui.name}__html`,
`meta-${ui.name}__pajax`,
]);
break; break;
default: default:
console.warn( msg = "Something went wrong.";
`${ui.name}: Unknown response content-type!`,
);
break; break;
} }
} else if (error.request) {
W.dispatchEvent(new Event(`{ui.name}.loaded`)); msg = "No response received";
}) } else {
.catch((error) => { console.warn("Error", error.message);
console.error(error);
let msg = '';
if (error.response) {
switch (error.response.status) {
case 404:
msg = 'Not Found.';
break;
case 500:
msg = 'Server issue, please try again latter.';
break;
default:
msg = 'Something went wrong.';
break;
}
} else if (error.request) {
msg = 'No response received';
} else {
console.warn('Error', error.message);
}
ui.setState({
error: msg,
});
W.dispatchEvent(new Event(`{ui.name}.error`));
})
.then(() => {
ui.setState({
loading: false,
});
});
};
_currIndex = () => {
const ui = this;
const el = ui.state.current;
const gallery = el.getAttribute('data-gallery');
return ui.state.collections[gallery].indexOf(el);
};
embed = (link) => {
const ui = this;
console.log(`${ui.name}: embed`);
ui.reset();
ui.setState({
embed: link,
loading: false,
type: [`meta-${ui.name}__embed`, `meta-${ui.name}__video`],
});
ui.show();
};
setCaption = (title) => {
const ui = this;
console.log(`${ui.name}: setCaption`);
ui.state.caption = title;
};
getCaption = () => {
const ui = this;
return ui.state.caption;
}
_abToString = (arrayBuffer) => {
return String.fromCharCode.apply(null, new Uint8Array(arrayBuffer));
};
_imageEncode = (arrayBuffer) => {
const u8 = new Uint8Array(arrayBuffer);
const b64encoded = btoa(
[].reduce.call(
new Uint8Array(arrayBuffer),
(p, c) => {
return p + String.fromCharCode(c);
},
'',
),
);
return b64encoded;
};
setContent = (html, type) => {
const ui = this;
console.log(`${ui.name}: setContent`);
let typeArr = type ? type : [`meta-${ui.name}__html`, `meta-${ui.name}__text`];
if (!Array.isArray(typeArr)) {
typeArr = type.split(' ');
}
ui.setState({
content: html,
type: typeArr,
});
};
getHtml = () => {
const ui = this;
if (ui.state.embed) {
const youtubeEmbed = require('youtube-embed');
const embedLink = youtubeEmbed(ui.state.embed);
ui.state.content = `<iframe width="600" height="380" src="${embedLink}" frameborder="0"></iframe>`;
}
return ui.state.content;
};
setState(state) {
const ui = this;
ui.state = Object.assign({}, ui.state, state);
ui.render();
}
render() {
const ui = this;
const name = ui.name;
const navs = null;
const el = ui.state.current;
ui.state.target.innerHTML = '';
const meta = document.createElement('div');
meta.classList.add(`meta-${name}`);
meta.classList.add(...ui.state.type);
ui.state.target.append(meta);
const metaOverlay = document.createElement('div');
metaOverlay.classList.add(`meta-${name}-overlay`);
if (ui.state.shown) {
metaOverlay.classList.add(`meta-${name}-overlay__open`);
}
if (ui.state.loading) {
metaOverlay.classList.add(`meta-${name}-overlay__loading`);
}
if (ui.state.error) {
metaOverlay.classList.add(`meta-${name}-overlay__error`);
}
meta.append(metaOverlay);
const metaContent = document.createElement('div');
metaContent.classList.add('meta-content');
metaOverlay.append(metaContent);
const btnClose = document.createElement('button');
btnClose.classList.add('meta-nav', 'meta-close', 'a');
btnClose.innerHTML =
'<i class="icon fa fas fa-times"></i>' +
' <span class="visually-hidden">Close</span>';
btnClose.addEventListener('click', (e) => {
e.preventDefault();
ui.hide();
});
metaContent.append(btnClose);
if (el) {
const gallery = el.getAttribute('data-gallery');
if (gallery && ui.state.collections[gallery].length > 1) {
const navs = document.createElement('nav');
navs.classList.add('meta-navs');
const prevBtn = document.createElement('button');
prevBtn.classList.add('meta-nav', 'meta-nav-arrow', 'meta-nav-arrow__prev', 'a');
prevBtn.innerHTML = '<i class="icon fa fas fa-chevron-left"></i>' +
' <span class="visually-hidden">Previous</span>';
prevBtn.addEventListener('click', (e) => {
e.preventDefault();
ui.prev();
});
navs.append(prevBtn);
const nextBtn = document.createElement('button');
nextBtn.classList.add('meta-nav', 'meta-nav-arrow', 'meta-nav-arrow__next', 'a');
nextBtn.innerHTML = '<i class="icon fa fas fa-chevron-right"></i>' +
' <span class="visually-hidden">Next</span>';
nextBtn.addEventListener('click', (e) => {
e.preventDefault();
ui.next();
});
navs.append(nextBtn);
metaContent.append(navs);
} }
}
const content = document.createElement('section'); ui.setState({
content.classList.add('meta-wrap', 'typography'); error: msg,
content.innerHTML = ui.getHtml(); });
metaContent.append(content);
if (ui.state.error) { W.dispatchEvent(new Event(`{ui.name}.error`));
const error = document.createElement('div'); })
error.classList.add('meta-error'); .then(() => {
error.innerHTML = ui.state.error; ui.setState({
metaContent.append(error); loading: false,
} else if (ui.state.caption) { });
const caption = document.createElement('div'); });
caption.classList.add('meta-caption'); };
caption.innerHTML = ui.getCaption();
metaContent.append(caption);
}
return ui; _currIndex = () => {
const ui = this;
const el = ui.state.current;
const gallery = el.getAttribute("data-gallery");
return ui.state.collections[gallery].indexOf(el);
};
embed = (link) => {
const ui = this;
console.log(`${ui.name}: embed`);
ui.reset();
ui.setState({
embed: link,
loading: false,
type: [`meta-${ui.name}--embed`, `meta-${ui.name}--video`],
});
ui.show();
};
setCaption = (title) => {
const ui = this;
console.log(`${ui.name}: setCaption`);
ui.state.caption = title;
};
getCaption = () => {
const ui = this;
return ui.state.caption;
};
_abToString = (arrayBuffer) => {
return String.fromCharCode.apply(null, new Uint8Array(arrayBuffer));
};
_imageEncode = (arrayBuffer) => {
const u8 = new Uint8Array(arrayBuffer);
const b64encoded = btoa(
[].reduce.call(
new Uint8Array(arrayBuffer),
(p, c) => {
return p + String.fromCharCode(c);
},
""
)
);
return b64encoded;
};
setContent = (html, type) => {
const ui = this;
console.log(`${ui.name}: setContent`);
let typeArr = type
? type
: [`meta-${ui.name}--html`, `meta-${ui.name}--text`];
if (!Array.isArray(typeArr)) {
typeArr = type.split(" ");
} }
ui.setState({
content: html,
type: typeArr,
});
};
getHtml = () => {
const ui = this;
if (ui.state.embed) {
const youtubeEmbed = require("youtube-embed");
const embedLink = youtubeEmbed(ui.state.embed);
ui.state.content = `<iframe width="600" height="380" src="${embedLink}" frameborder="0"></iframe>`;
}
return ui.state.content;
};
setState(state) {
const ui = this;
ui.state = Object.assign({}, ui.state, state);
ui.render();
}
render() {
const ui = this;
const name = ui.name;
const navs = null;
const el = ui.state.current;
ui.state.target.innerHTML = "";
const meta = document.createElement("div");
meta.classList.add(`meta-${name}`);
meta.classList.add(...ui.state.type);
ui.state.target.append(meta);
const metaOverlay = document.createElement("div");
metaOverlay.classList.add(`meta-${name}-overlay`);
if (ui.state.shown) {
metaOverlay.classList.add(`meta-${name}-overlay--open`);
}
if (ui.state.loading) {
metaOverlay.classList.add(`meta-${name}-overlay--loading`);
}
if (ui.state.error) {
metaOverlay.classList.add(`meta-${name}-overlay--error`);
}
meta.append(metaOverlay);
const metaContent = document.createElement("div");
metaContent.classList.add("meta-content");
metaOverlay.append(metaContent);
const btnClose = document.createElement("button");
btnClose.classList.add("meta-nav", "meta-close", "a");
btnClose.innerHTML =
'<i class="icon fa fas fa-times"></i>' +
' <span class="visually-hidden">Close</span>';
btnClose.addEventListener("click", (e) => {
e.preventDefault();
ui.hide();
});
metaContent.append(btnClose);
if (el) {
const gallery = el.getAttribute("data-gallery");
if (gallery && ui.state.collections[gallery].length > 1) {
const navs = document.createElement("nav");
navs.classList.add("meta-navs");
const prevBtn = document.createElement("button");
prevBtn.classList.add(
"meta-nav",
"meta-nav-arrow",
"meta-nav-arrow__prev",
"a"
);
prevBtn.innerHTML =
'<i class="icon fa fas fa-chevron-left"></i>' +
' <span class="visually-hidden">Previous</span>';
prevBtn.addEventListener("click", (e) => {
e.preventDefault();
ui.prev();
});
navs.append(prevBtn);
const nextBtn = document.createElement("button");
nextBtn.classList.add(
"meta-nav",
"meta-nav-arrow",
"meta-nav-arrow__next",
"a"
);
nextBtn.innerHTML =
'<i class="icon fa fas fa-chevron-right"></i>' +
' <span class="visually-hidden">Next</span>';
nextBtn.addEventListener("click", (e) => {
e.preventDefault();
ui.next();
});
navs.append(nextBtn);
metaContent.append(navs);
}
}
const content = document.createElement("section");
content.classList.add("meta-wrap", "typography");
content.innerHTML = ui.getHtml();
metaContent.append(content);
if (ui.state.error) {
const error = document.createElement("div");
error.classList.add("meta-error");
error.innerHTML = ui.state.error;
metaContent.append(error);
} else if (ui.state.caption) {
const caption = document.createElement("div");
caption.classList.add("meta-caption");
caption.innerHTML = ui.getCaption();
metaContent.append(caption);
}
return ui;
}
} }
export default MetaWindow; export default MetaWindow;

View File

@ -1,6 +1,6 @@
@use "sass:math"; @use "sass:math";
@import 'material-design-color/material-color.scss'; @import "material-design-color/material-color";
$red: $clr-red; $red: $clr-red;
$body-bg: $clr-white !default; $body-bg: $clr-white !default;
$body-color: $clr-black !default; $body-color: $clr-black !default;
@ -12,8 +12,8 @@ $meta-overlay-bg: transparentize($clr-black, 0.2) !default;
$meta-text-wrapper-bg: $body-bg !default; $meta-text-wrapper-bg: $body-bg !default;
$meta-text-wrapper-color: $body-color !default; $meta-text-wrapper-color: $body-color !default;
$meta-text-wrapper-padding-width: $grid-gutter-width*0.5 !default; $meta-text-wrapper-padding-width: $grid-gutter-width * 0.5 !default;
$meta-text-wrapper-padding-height: $grid-gutter-height*0.5 !default; $meta-text-wrapper-padding-height: $grid-gutter-height * 0.5 !default;
$meta-nav-size: 2rem !default; $meta-nav-size: 2rem !default;
$meta-nav-arrows-size: 2.5rem !default; $meta-nav-arrows-size: 2.5rem !default;
@ -38,45 +38,45 @@ $meta-video-width: 16 !default;
$meta-video-height: 9 !default; $meta-video-height: 9 !default;
// extra variables and mixings // extra variables and mixings
$grid-breakpoints: (xs: 0, $grid-breakpoints: (
sm: 576px, xs: 0,
md: 768px, sm: 576px,
lg: 992px, md: 768px,
xl: 1200px, lg: 992px,
xxl: 1390px, xl: 1200px,
xxxl: 1590px, xxl: 1390px,
xxxl: 1590px,
) !default; ) !default;
$container-max-widths: (sm: 540px, $container-max-widths: (
md: 720px, sm: 540px,
lg: 960px, md: 720px,
xl: 1140px, lg: 960px,
xxl: 1330px, xl: 1140px,
xxxl: 1560px, xxl: 1330px,
xxxl: 1560px,
) !default; ) !default;
// hovers // hovers
@mixin hover-focus() { @mixin hover-focus() {
&:hover,
&:hover, &:focus {
&:focus { @content;
@content; }
}
} }
@mixin hover-focus-active() { @mixin hover-focus-active() {
&:hover,
&:hover, &:focus,
&:focus, &:active {
&:active { @content;
@content; }
}
} }
@mixin spinner_style() { @mixin spinner_style() {
color: $meta-spinner-color; color: $meta-spinner-color;
font-size: $meta-spinner-size; font-size: $meta-spinner-size;
font-weight: $meta-spinner-weight; font-weight: $meta-spinner-weight;
text-transform: uppercase; text-transform: uppercase;
} }
// screen reader // screen reader
@ -86,35 +86,33 @@ xxxl: 1560px,
// See: https://hugogiraudel.com/2016/10/13/css-hide-and-seek/ // See: https://hugogiraudel.com/2016/10/13/css-hide-and-seek/
@mixin sr-only() { @mixin sr-only() {
border: 0; border: 0;
clip: rect(0, 0, 0, 0); clip: rect(0, 0, 0, 0);
height: 1px; height: 1px;
margin: -1px; // Fix for https://github.com/twbs/bootstrap/issues/25686 margin: -1px; // Fix for https://github.com/twbs/bootstrap/issues/25686
overflow: hidden; overflow: hidden;
padding: 0; padding: 0;
position: absolute; position: absolute;
white-space: nowrap; white-space: nowrap;
width: 1px; width: 1px;
} }
@mixin pseudo($display: block, $pos: absolute, $content: '') { @mixin pseudo($display: block, $pos: absolute, $content: "") {
content: $content; content: $content;
display: $display; display: $display;
position: $pos; position: $pos;
} }
@mixin responsive-ratio($x, $y, $pseudo: false) { @mixin responsive-ratio($x, $y, $pseudo: false) {
$padding: unquote(math.div($y, $x) * 100 + '%'); $padding: unquote(math.div($y, $x) * 100 + "%");
@if $pseudo { @if $pseudo {
&:before { &:before {
@include pseudo($pos: relative); @include pseudo($pos: relative);
padding-top: $padding; padding-top: $padding;
width: 100%; width: 100%;
}
}
@else {
padding-top: $padding;
} }
} @else {
padding-top: $padding;
}
} }

View File

@ -1 +1 @@
@import './window'; @import "./window";

View File

@ -1,12 +1,12 @@
.visually-hidden, .visually-hidden,
.visually-hidden-focusable:not(:focus):not(:focus-within) { .visually-hidden-focusable:not(:focus):not(:focus-within) {
border: 0 !important; border: 0 !important;
clip: rect(0, 0, 0, 0) !important; clip: rect(0, 0, 0, 0) !important;
height: 1px !important; height: 1px !important;
margin: -1px !important; margin: -1px !important;
overflow: hidden !important; overflow: hidden !important;
padding: 0 !important; padding: 0 !important;
position: absolute !important; position: absolute !important;
white-space: nowrap !important; white-space: nowrap !important;
width: 1px !important; width: 1px !important;
} }

View File

@ -1,250 +1,246 @@
@import '_variables'; @import "variables";
$module_name: 'meta-MetaWindow'; $module-name: "meta-MetaWindow";
.#{$module_name} { .#{$module-name} {
position: fixed;
// lightbox inner elements
.meta-spinner--embed,
.meta-spinner,
.meta-error {
align-items: center;
display: none;
justify-content: center;
text-align: center;
z-index: 2;
}
.meta-spinner--embed,
.meta-spinner {
@include spinner_style();
bottom: 0;
left: 0;
position: absolute;
right: 0;
top: 0;
}
.meta-error {
color: $clr-red;
font-size: 1.5em;
font-weight: bold;
}
.meta-spinner--embed {
display: flex;
}
&-overlay {
align-items: center;
background: $meta-overlay-bg;
bottom: 0;
display: none;
justify-content: center;
left: 0;
position: fixed; position: fixed;
right: 0;
top: 0;
z-index: 98;
// lightbox inner elements // meta states
.meta-spinner_embed, &--open {
.meta-spinner, display: flex;
.meta-error {
align-items: center;
display: none;
justify-content: center;
text-align: center;
z-index: 2;
} }
.meta-spinner_embed, &--loading {
.meta-spinner { .meta-spinner {
@include spinner_style();
bottom: 0;
left: 0;
position: absolute;
right: 0;
top: 0;
}
.meta-error {
color: $clr-red;
font-size: 1.5em;
font-weight: bold;
}
.meta-spinner_embed {
display: flex; display: flex;
}
} }
&-overlay { &--error {
align-items: center; .meta-content {
background: $meta-overlay-bg;
bottom: 0;
display: none;
justify-content: center; justify-content: center;
left: 0; }
position: fixed;
right: 0;
top: 0;
z-index: 98;
// meta states .meta-error {
&__open {
display: flex;
}
&__loading {
.meta-spinner {
display: flex;
}
}
&__error {
.meta-content {
justify-content: center;
}
.meta-error {
display: flex;
}
}
}
// navs
.meta-nav {
background: none;
border: 0;
color: $meta-nav-color;
font-size: $meta-nav-size;
text-shadow: $meta-nav-hover-shadow 0 0 0.25em;
z-index: 2;
@include hover-focus() {
color: $meta-nav-color;
}
&:hover {
background: $meta-nav-hover-bg;
color: $meta-nav-hover-color;
text-decoration: none;
text-shadow: none;
}
}
.meta-nav-arrow {
align-items: center;
bottom: 0;
display: flex; display: flex;
font-size: $meta-nav-arrows-size; }
justify-content: center; }
padding: $meta-nav-padding; }
position: absolute;
top: auto;
z-index: 2;
@include hover-focus() { // navs
.meta-nav {
background: none;
border: 0;
color: $meta-nav-color;
font-size: $meta-nav-size;
text-shadow: $meta-nav-hover-shadow 0 0 0.25em;
z-index: 2;
.fa, @include hover-focus() {
.fas, color: $meta-nav-color;
.far,
.fab {
transform: $meta-nav-hover-transform;
}
}
@media (min-width: map-get($grid-breakpoints, 'lg')) {
bottom: 0;
top: 0;
}
&__next {
right: 0;
}
&__prev {
left: 0;
}
@media (min-width: map-get($grid-breakpoints, 'lg')) {
&__next {
right: -($meta-nav-arrows-size + 0.5);
}
&__prev {
left: -($meta-nav-arrows-size + 0.5);
}
}
} }
.meta-close { &:hover {
position: absolute; background: $meta-nav-hover-bg;
right: 0; color: $meta-nav-hover-color;
top: -3rem; text-decoration: none;
width: 1.25em; text-shadow: none;
}
}
&:hover { .meta-nav-arrow {
align-items: center;
bottom: 0;
display: flex;
font-size: $meta-nav-arrows-size;
justify-content: center;
padding: $meta-nav-padding;
position: absolute;
top: auto;
z-index: 2;
.fa, @include hover-focus() {
.fas, .fa,
.far, .fas,
.fab { .far,
transform: $meta-nav-close-hover-transform; .fab {
} transform: $meta-nav-hover-transform;
} }
@media (min-width: map-get($grid-breakpoints, 'lg')) {
right: -($meta-nav-arrows-size + 0.5);
top: -($meta-nav-arrows-size + 0.5);
}
} }
@media (min-width: map-get($grid-breakpoints, "lg")) {
bottom: 0;
top: 0;
}
&__next {
right: 0;
}
&__prev {
left: 0;
}
@media (min-width: map-get($grid-breakpoints, "lg")) {
&__next {
right: -($meta-nav-arrows-size + 0.5);
}
&__prev {
left: -($meta-nav-arrows-size + 0.5);
}
}
}
.meta-close {
position: absolute;
right: 0;
top: -3rem;
width: 1.25em;
&:hover {
.fa,
.fas,
.far,
.fab {
transform: $meta-nav-close-hover-transform;
}
}
@media (min-width: map-get($grid-breakpoints, "lg")) {
right: -($meta-nav-arrows-size + 0.5);
top: -($meta-nav-arrows-size + 0.5);
}
}
.meta-content {
display: flex;
flex-direction: column;
height: 80%;
position: relative;
width: 100%;
z-index: 1;
@media (min-width: map-get($grid-breakpoints, "lg")) {
height: 90%;
height: calc(90% - 3rem);
width: 90%;
width: calc(90% - 3rem);
}
}
.meta-wrap {
display: flex;
height: 100%;
margin: 0 auto;
max-height: 100%;
max-width: 100%;
overflow: auto;
width: 100%;
word-break: break-word;
img {
max-height: 100%;
max-width: 100%;
object-fit: cover;
}
}
// Lightbox types
&--text {
.meta-content { .meta-content {
display: flex; background: $meta-text-wrapper-bg;
flex-direction: column; color: $meta-text-wrapper-color;
height: 80%; padding: $meta-text-wrapper-padding-height $meta-text-wrapper-padding-width;
position: relative; padding-right: 0;
width: 100%;
z-index: 1;
@media (min-width: map-get($grid-breakpoints, 'lg')) {
height: 90%;
height: calc(90% - 3rem);
width: 90%;
width: calc(90% - 3rem);
}
} }
.meta-wrap { .meta-wrap {
display: flex; padding-right: $meta-text-wrapper-padding-width;
height: 100%; }
margin: 0 auto; }
max-height: 100%;
max-width: 100%;
overflow: auto;
width: 100%;
word-break: break-word;
img { &--image,
max-height: 100%; &--video {
max-width: 100%; .typography,
object-fit: cover; .meta-wrap {
} align-items: center;
justify-content: center;
min-height: 100%;
overflow: hidden;
img {
margin: 0;
}
}
}
&--video,
&--embed {
@include responsive-ratio($meta-video-width, $meta-video-height, true);
a[rel="nofollow noreferrer noopener"] {
color: $meta-embed-loading-failed-color;
font-size: $meta-embed-loading-failed-size;
font-weight: $meta-embed-loading-failed-weight;
&:before {
content: "Unable to load. Please follow the provided link: ";
display: block;
}
} }
// Lightbox types iframe {
height: 100%;
&__text { left: 0;
.meta-content { position: absolute;
background: $meta-text-wrapper-bg; top: 0;
color: $meta-text-wrapper-color; width: 100%;
padding: $meta-text-wrapper-padding-height $meta-text-wrapper-padding-width;
padding-right: 0;
}
.meta-wrap {
padding-right: $meta-text-wrapper-padding-width;
}
}
&__image,
&__video {
.typography,
.meta-wrap {
align-items: center;
justify-content: center;
min-height: 100%;
overflow: hidden;
img {
margin: 0;
}
}
}
&__video,
&__embed {
@include responsive-ratio($meta-video-width, $meta-video-height, true);
a[rel='nofollow noreferrer noopener'] {
color: $meta-embed-loading-failed-color;
font-size: $meta-embed-loading-failed-size;
font-weight: $meta-embed-loading-failed-weight;
&:before {
content: 'Unable to load. Please follow the provided link: ';
display: block;
}
}
iframe {
height: 100%;
left: 0;
position: absolute;
top: 0;
width: 100%;
}
} }
}
} }

View File

@ -1,84 +1,84 @@
<h2>Test <b>HTML</b>-content with PAJAX response</h2> <h2>Test <b>HTML</b>-content with PAJAX response</h2>
<p> <p>
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum is simply dummy text of the printing and typesetting industry.
Lorem Ipsum has been the industry's standard dummy text ever since the Lorem Ipsum has been the industry's standard dummy text ever since the 1500s,
1500s, when an unknown printer took a galley of type and scrambled it to when an unknown printer took a galley of type and scrambled it to make a type
make a type specimen book. It has survived not only five centuries, but also specimen book. It has survived not only five centuries, but also the leap into
the leap into electronic typesetting, remaining essentially unchanged. It electronic typesetting, remaining essentially unchanged. It was popularised in
was popularised in the 1960s with the release of Letraset sheets containing the 1960s with the release of Letraset sheets containing Lorem Ipsum passages,
Lorem Ipsum passages, and more recently with desktop publishing software and more recently with desktop publishing software like Aldus PageMaker
like Aldus PageMaker including versions of Lorem Ipsum. including versions of Lorem Ipsum.
</p> </p>
https://twitter.com/reactjs/status/964689022747475968 https://twitter.com/reactjs/status/964689022747475968
<p> <p>
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum is simply dummy text of the printing and typesetting industry.
Lorem Ipsum has been the industry's standard dummy text ever since the Lorem Ipsum has been the industry's standard dummy text ever since the 1500s,
1500s, when an unknown printer took a galley of type and scrambled it to when an unknown printer took a galley of type and scrambled it to make a type
make a type specimen book. It has survived not only five centuries, but also specimen book. It has survived not only five centuries, but also the leap into
the leap into electronic typesetting, remaining essentially unchanged. It electronic typesetting, remaining essentially unchanged. It was popularised in
was popularised in the 1960s with the release of Letraset sheets containing the 1960s with the release of Letraset sheets containing Lorem Ipsum passages,
Lorem Ipsum passages, and more recently with desktop publishing software and more recently with desktop publishing software like Aldus PageMaker
like Aldus PageMaker including versions of Lorem Ipsum. including versions of Lorem Ipsum.
</p> </p>
<p> <p>
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum is simply dummy text of the printing and typesetting industry.
Lorem Ipsum has been the industry's standard dummy text ever since the Lorem Ipsum has been the industry's standard dummy text ever since the 1500s,
1500s, when an unknown printer took a galley of type and scrambled it to when an unknown printer took a galley of type and scrambled it to make a type
make a type specimen book. It has survived not only five centuries, but also specimen book. It has survived not only five centuries, but also the leap into
the leap into electronic typesetting, remaining essentially unchanged. It electronic typesetting, remaining essentially unchanged. It was popularised in
was popularised in the 1960s with the release of Letraset sheets containing the 1960s with the release of Letraset sheets containing Lorem Ipsum passages,
Lorem Ipsum passages, and more recently with desktop publishing software and more recently with desktop publishing software like Aldus PageMaker
like Aldus PageMaker including versions of Lorem Ipsum. including versions of Lorem Ipsum.
</p> </p>
<p> <p>
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum is simply dummy text of the printing and typesetting industry.
Lorem Ipsum has been the industry's standard dummy text ever since the Lorem Ipsum has been the industry's standard dummy text ever since the 1500s,
1500s, when an unknown printer took a galley of type and scrambled it to when an unknown printer took a galley of type and scrambled it to make a type
make a type specimen book. It has survived not only five centuries, but also specimen book. It has survived not only five centuries, but also the leap into
the leap into electronic typesetting, remaining essentially unchanged. It electronic typesetting, remaining essentially unchanged. It was popularised in
was popularised in the 1960s with the release of Letraset sheets containing the 1960s with the release of Letraset sheets containing Lorem Ipsum passages,
Lorem Ipsum passages, and more recently with desktop publishing software and more recently with desktop publishing software like Aldus PageMaker
like Aldus PageMaker including versions of Lorem Ipsum. including versions of Lorem Ipsum.
</p> </p>
<p> <p>
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum is simply dummy text of the printing and typesetting industry.
Lorem Ipsum has been the industry's standard dummy text ever since the Lorem Ipsum has been the industry's standard dummy text ever since the 1500s,
1500s, when an unknown printer took a galley of type and scrambled it to when an unknown printer took a galley of type and scrambled it to make a type
make a type specimen book. It has survived not only five centuries, but also specimen book. It has survived not only five centuries, but also the leap into
the leap into electronic typesetting, remaining essentially unchanged. It electronic typesetting, remaining essentially unchanged. It was popularised in
was popularised in the 1960s with the release of Letraset sheets containing the 1960s with the release of Letraset sheets containing Lorem Ipsum passages,
Lorem Ipsum passages, and more recently with desktop publishing software and more recently with desktop publishing software like Aldus PageMaker
like Aldus PageMaker including versions of Lorem Ipsum. including versions of Lorem Ipsum.
</p> </p>
<p> <p>
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum is simply dummy text of the printing and typesetting industry.
Lorem Ipsum has been the industry's standard dummy text ever since the Lorem Ipsum has been the industry's standard dummy text ever since the 1500s,
1500s, when an unknown printer took a galley of type and scrambled it to when an unknown printer took a galley of type and scrambled it to make a type
make a type specimen book. It has survived not only five centuries, but also specimen book. It has survived not only five centuries, but also the leap into
the leap into electronic typesetting, remaining essentially unchanged. It electronic typesetting, remaining essentially unchanged. It was popularised in
was popularised in the 1960s with the release of Letraset sheets containing the 1960s with the release of Letraset sheets containing Lorem Ipsum passages,
Lorem Ipsum passages, and more recently with desktop publishing software and more recently with desktop publishing software like Aldus PageMaker
like Aldus PageMaker including versions of Lorem Ipsum. including versions of Lorem Ipsum.
</p> </p>
<p> <p>
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum is simply dummy text of the printing and typesetting industry.
Lorem Ipsum has been the industry's standard dummy text ever since the Lorem Ipsum has been the industry's standard dummy text ever since the 1500s,
1500s, when an unknown printer took a galley of type and scrambled it to when an unknown printer took a galley of type and scrambled it to make a type
make a type specimen book. It has survived not only five centuries, but also specimen book. It has survived not only five centuries, but also the leap into
the leap into electronic typesetting, remaining essentially unchanged. It electronic typesetting, remaining essentially unchanged. It was popularised in
was popularised in the 1960s with the release of Letraset sheets containing the 1960s with the release of Letraset sheets containing Lorem Ipsum passages,
Lorem Ipsum passages, and more recently with desktop publishing software and more recently with desktop publishing software like Aldus PageMaker
like Aldus PageMaker including versions of Lorem Ipsum. including versions of Lorem Ipsum.
</p> </p>
<p> <p>
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum is simply dummy text of the printing and typesetting industry.
Lorem Ipsum has been the industry's standard dummy text ever since the Lorem Ipsum has been the industry's standard dummy text ever since the 1500s,
1500s, when an unknown printer took a galley of type and scrambled it to when an unknown printer took a galley of type and scrambled it to make a type
make a type specimen book. It has survived not only five centuries, but also specimen book. It has survived not only five centuries, but also the leap into
the leap into electronic typesetting, remaining essentially unchanged. It electronic typesetting, remaining essentially unchanged. It was popularised in
was popularised in the 1960s with the release of Letraset sheets containing the 1960s with the release of Letraset sheets containing Lorem Ipsum passages,
Lorem Ipsum passages, and more recently with desktop publishing software and more recently with desktop publishing software like Aldus PageMaker
like Aldus PageMaker including versions of Lorem Ipsum. including versions of Lorem Ipsum.
</p> </p>

View File

@ -1,4 +1,4 @@
{ {
"Title": "Test Title!", "Title": "Test Title!",
"Content": "Test <b>HTML</b>-content with JSON response" "Content": "Test <b>HTML</b>-content with JSON response"
} }