From bf7c55795d616deb2005f7856694a077eb967713 Mon Sep 17 00:00:00 2001 From: Tony Air Date: Tue, 10 Aug 2021 01:19:48 +0200 Subject: [PATCH] FIX: minor updates --- dist/index.html | 2 +- dist/js/app.js | 2 +- dist/records.json | 54 ++++++- dist/report.html | 4 +- package.json | 5 +- src/js/_index.js | 2 - src/js/app.js | 10 +- src/js/index.js | 2 + src/js/test-build.js | 2 + src/js/{_window.js => window.js} | 27 ++-- src/scss/_variables.scss | 2 +- src/scss/_window.scss | 250 ------------------------------- src/scss/app.scss | 2 +- 13 files changed, 90 insertions(+), 274 deletions(-) delete mode 100755 src/js/_index.js create mode 100755 src/js/index.js rename src/js/{_window.js => window.js} (96%) delete mode 100755 src/scss/_window.scss diff --git a/dist/index.html b/dist/index.html index 9f5d92a..4163ff6 100644 --- a/dist/index.html +++ b/dist/index.html @@ -1,3 +1,3 @@ Meta-lightbox Demo

Meta-lightbox Demo

NODE_ENV: production

Loading data

Load an Image
Load JSON


Load Partial AJAX HTML
Not Found test

Embeds

Embed Youtube link
Embed Vimeo link
Embed SoundCloud link
Embed Instagram

Other

Use [data-toggle="lightbox"] attribute to attach lightbox action and [href] to specify URL.

Use [data-gallery="YOUR_GALLERY_NAME"] to group ligthboxes with next/prev arrows

Use [data-toggle="lightbox"] + [data-href] attribute to toggle lightbox on regular elements. Click me!

\ No newline at end of file + }

Meta-lightbox Demo

NODE_ENV: production

Loading data

Load an Image
Load JSON


Load Partial AJAX HTML
Not Found test

Embeds

Embed Youtube link
Embed Vimeo link
Embed SoundCloud link
Embed Instagram

Other

Use [data-toggle="lightbox"] attribute to attach lightbox action and [href] to specify URL.

Use [data-gallery="YOUR_GALLERY_NAME"] to group ligthboxes with next/prev arrows

Use [data-toggle="lightbox"] + [data-href] attribute to toggle lightbox on regular elements. Click me!

\ No newline at end of file diff --git a/dist/js/app.js b/dist/js/app.js index cf849ca..2ca9785 100644 --- a/dist/js/app.js +++ b/dist/js/app.js @@ -1 +1 @@ -!function(){var e={885:function(e,t,n){e.exports=n(855)},145:function(e,t,n){"use strict";var r=n(750),o=n(149),a=n(804),i=n(642),s=n(295),c=n(279),u=n(868),f=n(865);e.exports=function xhrAdapter(e){return new Promise((function dispatchXhrRequest(t,n){var l=e.data,p=e.headers;r.isFormData(l)&&delete p["Content-Type"];var d=new XMLHttpRequest;if(e.auth){var h=e.auth.username||"",m=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";p.Authorization="Basic "+btoa(h+":"+m)}var g=s(e.baseURL,e.url);if(d.open(e.method.toUpperCase(),i(g,e.params,e.paramsSerializer),!0),d.timeout=e.timeout,d.onreadystatechange=function handleLoad(){if(d&&4===d.readyState&&(0!==d.status||d.responseURL&&0===d.responseURL.indexOf("file:"))){var r="getAllResponseHeaders"in d?c(d.getAllResponseHeaders()):null,a={data:e.responseType&&"text"!==e.responseType?d.response:d.responseText,status:d.status,statusText:d.statusText,headers:r,config:e,request:d};o(t,n,a),d=null}},d.onabort=function handleAbort(){d&&(n(f("Request aborted",e,"ECONNABORTED",d)),d=null)},d.onerror=function handleError(){n(f("Network Error",e,null,d)),d=null},d.ontimeout=function handleTimeout(){var t="timeout of "+e.timeout+"ms exceeded";e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),n(f(t,e,"ECONNABORTED",d)),d=null},r.isStandardBrowserEnv()){var v=(e.withCredentials||u(g))&&e.xsrfCookieName?a.read(e.xsrfCookieName):void 0;v&&(p[e.xsrfHeaderName]=v)}if("setRequestHeader"in d&&r.forEach(p,(function setRequestHeader(e,t){"undefined"===typeof l&&"content-type"===t.toLowerCase()?delete p[t]:d.setRequestHeader(t,e)})),r.isUndefined(e.withCredentials)||(d.withCredentials=!!e.withCredentials),e.responseType)try{d.responseType=e.responseType}catch(y){if("json"!==e.responseType)throw y}"function"===typeof e.onDownloadProgress&&d.addEventListener("progress",e.onDownloadProgress),"function"===typeof e.onUploadProgress&&d.upload&&d.upload.addEventListener("progress",e.onUploadProgress),e.cancelToken&&e.cancelToken.promise.then((function onCanceled(e){d&&(d.abort(),n(e),d=null)})),l||(l=null),d.send(l)}))}},855:function(e,t,n){"use strict";var r=n(750),o=n(999),a=n(229),i=n(936);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(822));s.Axios=a,s.create=function create(e){return createInstance(i(s.defaults,e))},s.Cancel=n(589),s.CancelToken=n(816),s.isCancel=n(882),s.all=function all(e){return Promise.all(e)},s.spread=n(867),s.isAxiosError=n(218),e.exports=s,e.exports.default=s},589: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},816:function(e,t,n){"use strict";var r=n(589);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},882:function(e){"use strict";e.exports=function isCancel(e){return!(!e||!e.__CANCEL__)}},229:function(e,t,n){"use strict";var r=n(750),o=n(642),a=n(748),i=n(850),s=n(936);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},748:function(e,t,n){"use strict";var r=n(750);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},295:function(e,t,n){"use strict";var r=n(322),o=n(567);e.exports=function buildFullPath(e,t){return e&&!r(t)?o(e,t):t}},865:function(e,t,n){"use strict";var r=n(202);e.exports=function createError(e,t,n,o,a){var i=new Error(e);return r(i,t,n,o,a)}},850:function(e,t,n){"use strict";var r=n(750),o=n(838),a=n(882),i=n(822);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)}))}},202: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}},936:function(e,t,n){"use strict";var r=n(750);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}},149:function(e,t,n){"use strict";var r=n(865);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)}},838:function(e,t,n){"use strict";var r=n(750);e.exports=function transformData(e,t,n){return r.forEach(n,(function transform(n){e=n(e,t)})),e}},822:function(e,t,n){"use strict";var r=n(750),o=n(325),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(145)),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},999:function(e){"use strict";e.exports=function bind(e,t){return function wrap(){for(var n=new Array(arguments.length),r=0;r=0)return;i[t]="set-cookie"===t?(i[t]?i[t]:[]).concat([n]):i[t]?i[t]+", "+n:n}})),i):i}},867:function(e){"use strict";e.exports=function spread(e){return function wrap(t){return e.apply(null,t)}}},750: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(999),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;n0?o--:o=e.state.collections[r].length-1,e.state.collections[r][o].click(),console.log("".concat(e.name,": prev")),n.dispatchEvent(new Event("{ui.name}.prev"))})),_defineProperty(this,"reset",(function(){t.setState({content:"",type:[],shown:!1,loading:!1,error:!1,embed:!1})})),_defineProperty(this,"load",(function(e){var r=t,o=r.axios;r.reset(),r.setState({loading:!0}),r.show(),o.get(e,{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(''),"image");break;case"application/json":case"application/ld+json":case"application/json; charset=UTF-8":r.setContent("".concat((!1).Content),"text html 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),"text html 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 e=t,n=e.state.current,r=n.getAttribute("data-gallery");return e.state.collections[r].indexOf(n)})),_defineProperty(this,"embed",(function(e){var n=t;console.log("".concat(n.name,": embed")),n.reset(),n.setState({embed:e,loading:!1,type:["embed","video"]}),n.show()})),_defineProperty(this,"setCaption",(function(e){var n=t;console.log("".concat(n.name,": setCaption")),n.state.caption=e})),_defineProperty(this,"getCaption",(function(){return t.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(e,n){var r=t;console.log("".concat(r.name,": setContent"));var o=n||["html","text"];Array.isArray(o)||(o=n.split(" ")),r.setState({content:e,type:o})})),_defineProperty(this,"getHtml",(function(){return t.state.content}));var o=this;o.name=o.constructor.name,console.log("".concat(o.name,": init")),o.axios=r,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(e){var t=this;console.log("MetaWindow: [links] init"),t.state.target=e,t.state.collections={},document.querySelectorAll('[data-toggle="lightbox"],[data-gallery="${gallery}"]').forEach((function(e){var n=e.getAttribute("data-gallery");n&&(t.state.collections[n]=[],document.querySelectorAll('[data-toggle="lightbox"][data-gallery="'.concat(n,'"]')).forEach((function(e){t.state.collections[n].push(e)}))),e.addEventListener("click",(function(e){e.preventDefault(),console.log("MetaWindow: [link] click");var n=e.currentTarget,r=n.getAttribute("href")||n.getAttribute("data-href"),o=n.getAttribute("data-embed");t.state.current=n,o?t.embed(r):t.load(r);var a=n.getAttribute("data-title");a&&t.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=this,t=e.name,n=e.state.current;e.state.target.innerHTML="";var r=document.createElement("div");r.classList.add("meta-".concat(t),"meta-".concat(t,"__").concat(e.state.type.join(" meta-".concat(t,"__")))),e.state.target.append(r);var o=document.createElement("div");o.classList.add("meta-".concat(t,"-overlay")),e.state.shown&&o.classList.add("meta-".concat(t,"-overlay__open")),e.state.loading&&o.classList.add("meta-".concat(t,"-overlay__loading")),e.state.error&&o.classList.add("meta-".concat(t,"-overlay__error")),r.append(o);var a=document.createElement("div");a.classList.add("meta-content"),o.append(a);var i=document.createElement("button");if(i.classList.add("meta-nav","meta-close","a"),i.innerHTML=' Close',i.addEventListener("click",(function(t){t.preventDefault(),e.hide()})),a.append(i),n){var s=n.getAttribute("data-gallery");if(s&&e.state.collections[s].length>1){var c=document.createElement("nav");c.classList.add("meta-navs");var u=document.createElement("button");u.classList.add("meta-nav","meta-nav-arrow","meta-nav-arrow__prev","a"),u.innerHTML=' Previous',u.addEventListener("click",(function(t){t.preventDefault(),e.prev()})),c.append(u);var f=document.createElement("button");f.classList.add("meta-nav","meta-nav-arrow","meta-nav-arrow__prev","a"),f.innerHTML=' Next',f.addEventListener("click",(function(t){t.preventDefault(),e.next()})),c.append(f),a.append(c)}}if(e.state.embed)'
... Loading ...
';else{var l=document.createElement("section");l.classList.add("meta-wrap","typography"),l.innerHTML=e.getHtml(),a.append(l)}if(e.state.error){var p=document.createElement("div");p.classList.add("meta-error"),p.innerHTML=e.state.error,a.append(p)}else if(e.state.caption){var d=document.createElement("div");d.classList.add("meta-caption"),d.innerHTML=e.getCaption(),a.append(d)}return e}}]),MetaWindow}()),a=document.getElementById("MetaLightboxApp");a||console.log("MetaWindow: missing container");var i=function init(){o.init(a)};window.addEventListener("".concat(t),i),window.addEventListener("".concat(e),i),window.addEventListener("MetaWindow.initLinks",i);(function importAll(e){return e.keys().map(e)})(__webpack_require__(310))}()}(); \ No newline at end of file +!function(){var e={885:function(e,t,n){e.exports=n(855)},145:function(e,t,n){"use strict";var r=n(750),o=n(149),a=n(804),i=n(642),s=n(295),c=n(279),u=n(868),f=n(865);e.exports=function xhrAdapter(e){return new Promise((function dispatchXhrRequest(t,n){var l=e.data,p=e.headers;r.isFormData(l)&&delete p["Content-Type"];var d=new XMLHttpRequest;if(e.auth){var h=e.auth.username||"",m=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";p.Authorization="Basic "+btoa(h+":"+m)}var g=s(e.baseURL,e.url);if(d.open(e.method.toUpperCase(),i(g,e.params,e.paramsSerializer),!0),d.timeout=e.timeout,d.onreadystatechange=function handleLoad(){if(d&&4===d.readyState&&(0!==d.status||d.responseURL&&0===d.responseURL.indexOf("file:"))){var r="getAllResponseHeaders"in d?c(d.getAllResponseHeaders()):null,a={data:e.responseType&&"text"!==e.responseType?d.response:d.responseText,status:d.status,statusText:d.statusText,headers:r,config:e,request:d};o(t,n,a),d=null}},d.onabort=function handleAbort(){d&&(n(f("Request aborted",e,"ECONNABORTED",d)),d=null)},d.onerror=function handleError(){n(f("Network Error",e,null,d)),d=null},d.ontimeout=function handleTimeout(){var t="timeout of "+e.timeout+"ms exceeded";e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),n(f(t,e,"ECONNABORTED",d)),d=null},r.isStandardBrowserEnv()){var v=(e.withCredentials||u(g))&&e.xsrfCookieName?a.read(e.xsrfCookieName):void 0;v&&(p[e.xsrfHeaderName]=v)}if("setRequestHeader"in d&&r.forEach(p,(function setRequestHeader(e,t){"undefined"===typeof l&&"content-type"===t.toLowerCase()?delete p[t]:d.setRequestHeader(t,e)})),r.isUndefined(e.withCredentials)||(d.withCredentials=!!e.withCredentials),e.responseType)try{d.responseType=e.responseType}catch(y){if("json"!==e.responseType)throw y}"function"===typeof e.onDownloadProgress&&d.addEventListener("progress",e.onDownloadProgress),"function"===typeof e.onUploadProgress&&d.upload&&d.upload.addEventListener("progress",e.onUploadProgress),e.cancelToken&&e.cancelToken.promise.then((function onCanceled(e){d&&(d.abort(),n(e),d=null)})),l||(l=null),d.send(l)}))}},855:function(e,t,n){"use strict";var r=n(750),o=n(999),a=n(229),i=n(936);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(822));s.Axios=a,s.create=function create(e){return createInstance(i(s.defaults,e))},s.Cancel=n(589),s.CancelToken=n(816),s.isCancel=n(882),s.all=function all(e){return Promise.all(e)},s.spread=n(867),s.isAxiosError=n(218),e.exports=s,e.exports.default=s},589: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},816:function(e,t,n){"use strict";var r=n(589);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},882:function(e){"use strict";e.exports=function isCancel(e){return!(!e||!e.__CANCEL__)}},229:function(e,t,n){"use strict";var r=n(750),o=n(642),a=n(748),i=n(850),s=n(936);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},748:function(e,t,n){"use strict";var r=n(750);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},295:function(e,t,n){"use strict";var r=n(322),o=n(567);e.exports=function buildFullPath(e,t){return e&&!r(t)?o(e,t):t}},865:function(e,t,n){"use strict";var r=n(202);e.exports=function createError(e,t,n,o,a){var i=new Error(e);return r(i,t,n,o,a)}},850:function(e,t,n){"use strict";var r=n(750),o=n(838),a=n(882),i=n(822);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)}))}},202: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}},936:function(e,t,n){"use strict";var r=n(750);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}},149:function(e,t,n){"use strict";var r=n(865);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)}},838:function(e,t,n){"use strict";var r=n(750);e.exports=function transformData(e,t,n){return r.forEach(n,(function transform(n){e=n(e,t)})),e}},822:function(e,t,n){"use strict";var r=n(750),o=n(325),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(145)),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},999:function(e){"use strict";e.exports=function bind(e,t){return function wrap(){for(var n=new Array(arguments.length),r=0;r=0)return;i[t]="set-cookie"===t?(i[t]?i[t]:[]).concat([n]):i[t]?i[t]+", "+n:n}})),i):i}},867:function(e){"use strict";e.exports=function spread(e){return function wrap(t){return e.apply(null,t)}}},750: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(999),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;n0&&void 0!==arguments[0]?arguments[0]:{shown:!1},o=arguments.length>1?arguments[1]:void 0;_classCallCheck(this,MetaWindow),_defineProperty(this,"state",{content:"",type:[],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();o0?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:[],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(''),"image");break;case"application/json":case"application/ld+json":case"application/json; charset=UTF-8":r.setContent("".concat((!1).Content),"text html 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),"text html 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:["embed","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||["html","text"];Array.isArray(o)||(o=n.split(" ")),r.setState({content:t,type:o})})),_defineProperty(this,"getHtml",(function(){return e.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=this,t=e.name,n=e.state.current;e.state.target.innerHTML="";var r=document.createElement("div");r.classList.add("meta-".concat(t),"meta-".concat(t,"__").concat(e.state.type.join(" meta-".concat(t,"__")))),e.state.target.append(r);var o=document.createElement("div");o.classList.add("meta-".concat(t,"-overlay")),e.state.shown&&o.classList.add("meta-".concat(t,"-overlay__open")),e.state.loading&&o.classList.add("meta-".concat(t,"-overlay__loading")),e.state.error&&o.classList.add("meta-".concat(t,"-overlay__error")),r.append(o);var a=document.createElement("div");a.classList.add("meta-content"),o.append(a);var i=document.createElement("button");if(i.classList.add("meta-nav","meta-close","a"),i.innerHTML=' Close',i.addEventListener("click",(function(t){t.preventDefault(),e.hide()})),a.append(i),n){var s=n.getAttribute("data-gallery");if(s&&e.state.collections[s].length>1){var c=document.createElement("nav");c.classList.add("meta-navs");var u=document.createElement("button");u.classList.add("meta-nav","meta-nav-arrow","meta-nav-arrow__prev","a"),u.innerHTML=' Previous',u.addEventListener("click",(function(t){t.preventDefault(),e.prev()})),c.append(u);var f=document.createElement("button");f.classList.add("meta-nav","meta-nav-arrow","meta-nav-arrow__next","a"),f.innerHTML=' Next',f.addEventListener("click",(function(t){t.preventDefault(),e.next()})),c.append(f),a.append(c)}}if(e.state.embed)'
... Loading ...
';else{var l=document.createElement("section");l.classList.add("meta-wrap","typography"),l.innerHTML=e.getHtml(),a.append(l)}if(e.state.error){var p=document.createElement("div");p.classList.add("meta-error"),p.innerHTML=e.state.error,a.append(p)}else if(e.state.caption){var d=document.createElement("div");d.classList.add("meta-caption"),d.innerHTML=e.getCaption(),a.append(d)}return e}}]),MetaWindow}(),a=document.getElementById("MetaLightboxApp");a||console.log("MetaWindow: missing container");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);(function importAll(e){return e.keys().map(e)})(__webpack_require__(310))}()}(); \ No newline at end of file diff --git a/dist/records.json b/dist/records.json index 97e9b0e..616bf69 100644 --- a/dist/records.json +++ b/dist/records.json @@ -37,6 +37,56 @@ 143 ] }, + "mini-css-extract-plugin /mnt/data/srv/dist/repositories/meta-lightbox/node_modules/.pnpm/css-loader@6.2.0_webpack@5.49.0/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/.pnpm/resolve-url-loader@4.0.0/node_modules/resolve-url-loader/index.js!./node_modules/.pnpm/sass-loader@12.1.0_sass@1.37.5+webpack@5.49.0/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/scss/app.scss": [ + { + "chunks": { + "byName": { + "child": 396 + }, + "bySource": { + "0 child": 396 + }, + "usedIds": [ + 396 + ] + }, + "modules": { + "byIdentifier": { + "./node_modules/.pnpm/babel-loader@8.2.2_f592160bef312780fac49010cef16c44/node_modules/babel-loader/lib/index.js??ruleSet[1].rules[0].use!./node_modules/.pnpm/css-loader@6.2.0_webpack@5.49.0/node_modules/css-loader/dist/runtime/api.js": 973, + "./node_modules/.pnpm/css-loader@6.2.0_webpack@5.49.0/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/.pnpm/resolve-url-loader@4.0.0/node_modules/resolve-url-loader/index.js!./node_modules/.pnpm/sass-loader@12.1.0_sass@1.37.5+webpack@5.49.0/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/scss/app.scss": 233 + }, + "usedIds": [ + 233, + 973 + ] + } + } + ], + "mini-css-extract-plugin /mnt/data/srv/dist/repositories/meta-lightbox/node_modules/.pnpm/css-loader@6.2.0_webpack@5.49.0/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/.pnpm/resolve-url-loader@4.0.0/node_modules/resolve-url-loader/index.js!./node_modules/.pnpm/sass-loader@12.1.0_sass@1.37.5+webpack@5.49.0/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/scss/test-build.scss": [ + { + "chunks": { + "byName": { + "child": 396 + }, + "bySource": { + "0 child": 396 + }, + "usedIds": [ + 396 + ] + }, + "modules": { + "byIdentifier": { + "./node_modules/.pnpm/babel-loader@8.2.2_f592160bef312780fac49010cef16c44/node_modules/babel-loader/lib/index.js??ruleSet[1].rules[0].use!./node_modules/.pnpm/css-loader@6.2.0_webpack@5.49.0/node_modules/css-loader/dist/runtime/api.js": 973, + "./node_modules/.pnpm/css-loader@6.2.0_webpack@5.49.0/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/.pnpm/resolve-url-loader@4.0.0/node_modules/resolve-url-loader/index.js!./node_modules/.pnpm/sass-loader@12.1.0_sass@1.37.5+webpack@5.49.0/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/scss/test-build.scss": 842 + }, + "usedIds": [ + 842, + 973 + ] + } + } + ], "modules": { "byIdentifier": { "./node_modules/.pnpm/babel-loader@8.2.2_f592160bef312780fac49010cef16c44/node_modules/babel-loader/lib/index.js??ruleSet[1].rules[0].use!./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/index.js": 885, @@ -66,7 +116,7 @@ "./node_modules/.pnpm/babel-loader@8.2.2_f592160bef312780fac49010cef16c44/node_modules/babel-loader/lib/index.js??ruleSet[1].rules[0].use!./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers/parseHeaders.js": 279, "./node_modules/.pnpm/babel-loader@8.2.2_f592160bef312780fac49010cef16c44/node_modules/babel-loader/lib/index.js??ruleSet[1].rules[0].use!./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/helpers/spread.js": 867, "./node_modules/.pnpm/babel-loader@8.2.2_f592160bef312780fac49010cef16c44/node_modules/babel-loader/lib/index.js??ruleSet[1].rules[0].use!./node_modules/.pnpm/axios@0.21.1_debug@4.3.2/node_modules/axios/lib/utils.js": 750, - "./node_modules/.pnpm/babel-loader@8.2.2_f592160bef312780fac49010cef16c44/node_modules/babel-loader/lib/index.js??ruleSet[1].rules[0].use!./src/js/test-build.js|66d551f8d24be0f029a465a2e26eb05b": 949, + "./node_modules/.pnpm/babel-loader@8.2.2_f592160bef312780fac49010cef16c44/node_modules/babel-loader/lib/index.js??ruleSet[1].rules[0].use!./src/js/test-build.js|25da35e13a35fb5ddc981181ead45562": 848, "./node_modules/.pnpm/img-optimize-loader@1.0.7_file-loader@6.2.0+webpack@5.49.0/node_modules/img-optimize-loader/dist/index.js??ruleSet[1].rules[4].use[0]!./src/img/photo1.png": 966, "./node_modules/.pnpm/img-optimize-loader@1.0.7_file-loader@6.2.0+webpack@5.49.0/node_modules/img-optimize-loader/dist/index.js??ruleSet[1].rules[4].use[0]!./src/img/photo2.jpg": 731, "./node_modules/.pnpm/img-optimize-loader@1.0.7_file-loader@6.2.0+webpack@5.49.0/node_modules/img-optimize-loader/dist/index.js??ruleSet[1].rules[4].use[0]!./src/img/photo3.svg": 887, @@ -93,6 +143,7 @@ 816, 822, 838, + 848, 850, 855, 865, @@ -102,7 +153,6 @@ 885, 887, 936, - 949, 966, 999 ] diff --git a/dist/report.html b/dist/report.html index 6cc1aa5..0df7eef 100644 --- a/dist/report.html +++ b/dist/report.html @@ -3,7 +3,7 @@ - @a2nt/meta-lightbox-js [9 Aug 2021 at 21:07] + @a2nt/meta-lightbox-js [10 Aug 2021 at 01:18] diff --git a/package.json b/package.json index d009f4a..c75f439 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@a2nt/meta-lightbox-js", - "version": "4.0.2", + "version": "4.0.3", "description": "Universal lightbox", "author": "Tony Air ", "license": "BSD-2-Clause", @@ -50,7 +50,8 @@ ], "dependencies": { "axios": "^0.21.1", - "es6-template": "^1.0.4" + "es6-template": "^1.0.4", + "material-design-color": "^2.3.2" }, "devDependencies": { "@a2nt/image-sprite-webpack-plugin": "^0.2.5", diff --git a/src/js/_index.js b/src/js/_index.js deleted file mode 100755 index 2745720..0000000 --- a/src/js/_index.js +++ /dev/null @@ -1,2 +0,0 @@ -import styles from '../scss/_window.scss'; -import './app.js'; diff --git a/src/js/app.js b/src/js/app.js index c82b309..f8b3907 100755 --- a/src/js/app.js +++ b/src/js/app.js @@ -5,16 +5,20 @@ */ import Events from './_events'; -import MetaWindow from './_window'; +import MetaWindow from './window'; -const ui = new MetaWindow(); const container = document.getElementById('MetaLightboxApp'); if (!container) { console.log(`MetaWindow: missing container`); } + +const ui = new MetaWindow({ + target: container, +}); + const init = () => { - ui.init(container); + ui.init(); }; window.addEventListener(`${Events.LOADED}`, init); diff --git a/src/js/index.js b/src/js/index.js new file mode 100755 index 0000000..c6f8c7e --- /dev/null +++ b/src/js/index.js @@ -0,0 +1,2 @@ +import styles from '../scss/window.scss'; +import './app.js'; diff --git a/src/js/test-build.js b/src/js/test-build.js index 2aeec2a..9cebfb0 100755 --- a/src/js/test-build.js +++ b/src/js/test-build.js @@ -5,6 +5,8 @@ */ import ui from './app'; +import '../scss/app.scss'; +import '../scss/test-build.scss'; function importAll(r) { return r.keys().map(r); diff --git a/src/js/_window.js b/src/js/window.js similarity index 96% rename from src/js/_window.js rename to src/js/window.js index ac4d58b..06012d5 100755 --- a/src/js/_window.js +++ b/src/js/window.js @@ -20,14 +20,10 @@ class MetaWindow { target: null, }; - init(target) { + init() { const ui = this; console.log(`MetaWindow: [links] init`); - ui.state.target = target; - // reset collections - ui.state.collections = {}; - // collect new collections document.querySelectorAll('[data-toggle="lightbox"],[data-gallery="${gallery}"]').forEach((el) => { const gallery = el.getAttribute('data-gallery'); @@ -67,12 +63,25 @@ class MetaWindow { }); } - constructor(props) { + constructor(state = { + shown: false, + }, action) { const ui = this; + ui.name = ui.constructor.name; console.log(`${ui.name}: init`); ui.axios = axios; + ui.setState(state); + switch (action) { + case 'show': + ui.hide(); + break; + case 'hide': + ui.hide(); + break; + } + W.dispatchEvent(new Event(`{ui.name}.init`)); } @@ -319,9 +328,9 @@ class MetaWindow { return ui.state.content; }; - setState(newState) { + setState(state) { const ui = this; - ui.state = Object.assign({}, ui.state, newState); + ui.state = Object.assign({}, ui.state, state); ui.render(); } @@ -382,7 +391,7 @@ class MetaWindow { navs.append(prevBtn); const nextBtn = document.createElement('button'); - nextBtn.classList.add('meta-nav', 'meta-nav-arrow', 'meta-nav-arrow__prev', 'a'); + nextBtn.classList.add('meta-nav', 'meta-nav-arrow', 'meta-nav-arrow__next', 'a'); nextBtn.innerHTML = '' + ' Next'; nextBtn.addEventListener('click', (e) => { diff --git a/src/scss/_variables.scss b/src/scss/_variables.scss index b376e0b..6b440b9 100755 --- a/src/scss/_variables.scss +++ b/src/scss/_variables.scss @@ -1,7 +1,7 @@ @use "sass:math"; @import 'material-design-color/material-color.scss'; - +$red: $clr-red; $body-bg: $clr-white !default; $body-color: $clr-black !default; diff --git a/src/scss/_window.scss b/src/scss/_window.scss deleted file mode 100755 index 4b6975a..0000000 --- a/src/scss/_window.scss +++ /dev/null @@ -1,250 +0,0 @@ -@import '_variables'; - -$module_name: 'meta-MetaWindow'; - -.sr-only { - @include sr-only(); -} - -.#{$module_name} { - position: fixed; - - // lightbox inner elements - .meta-spinner_embed, - .meta-spinner, - .meta-error { - display: none; - align-items: center; - justify-content: center; - z-index: 2; - text-align: center; - } - - .meta-spinner_embed, - .meta-spinner { - @include spinner_style(); - - position: absolute; - left: 0; - right: 0; - top: 0; - bottom: 0; - } - - .meta-spinner_embed { - display: flex; - } - - &-overlay { - background: $meta-overlay-bg; - display: none; - position: fixed; - left: 0; - right: 0; - top: 0; - bottom: 0; - align-items: center; - justify-content: center; - z-index: 98; - - // meta states - &__open { - display: flex; - } - - &__loading { - .meta-spinner { - display: flex; - } - } - - &__error { - .meta-content { - justify-content: center; - } - - .meta-error { - display: flex; - } - } - } - - // navs - .meta-nav { - font-size: $meta-nav-size; - color: $meta-nav-color; - text-shadow: $meta-nav-hover-shadow 0 0 0.25em; - border: 0; - background: none; - z-index: 2; - - @include hover-focus() { - color: $meta-nav-color; - } - - &:hover { - color: $meta-nav-hover-color; - background: $meta-nav-hover-bg; - text-shadow: none; - text-decoration: none; - } - - } - - .meta-nav-arrow { - position: absolute; - bottom: 0; - top: auto; - display: flex; - justify-content: center; - align-items: center; - font-size: $meta-nav-arrows-size; - padding: $meta-nav-padding; - z-index: 2; - - @include hover-focus() { - - .fa, - .fas, - .far, - .fab { - transform: $meta-nav-hover-transform; - } - } - - @media (min-width: map-get($grid-breakpoints, 'lg')) { - top: 0; - bottom: 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; - top: -3rem; - right: 0; - width: 1.25em; - - &:hover { - - .fa, - .fas, - .far, - .fab { - transform: $meta-nav-close-hover-transform; - } - } - - @media (min-width: map-get($grid-breakpoints, 'lg')) { - top: -($meta-nav-arrows-size + 0.5); - right: -($meta-nav-arrows-size + 0.5); - } - } - - .meta-content { - position: relative; - width: 100%; - height: 80%; - display: flex; - flex-direction: column; - z-index: 1; - - @media (min-width: map-get($grid-breakpoints, 'lg')) { - width: 90%; - height: 90%; - width: calc(90% - 3rem); - height: calc(90% - 3rem); - } - } - - .meta-wrap { - max-height: 100%; - max-width: 100%; - width: 100%; - overflow: auto; - word-break: break-word; - margin: 0 auto; - - img { - object-fit: cover; - max-width: 100%; - max-height: 100%; - } - } - - // Lightbox types - - &__text { - .meta-content { - background: $meta-text-wrapper-bg; - color: $meta-text-wrapper-color; - 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 { - overflow: hidden; - display: flex; - justify-content: center; - align-items: center; - flex-direction: column; - max-height: 100%; - max-width: 100%; - min-height: 100%; - - 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 { - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; - } - } -} diff --git a/src/scss/app.scss b/src/scss/app.scss index cce114b..e8fbdfa 100755 --- a/src/scss/app.scss +++ b/src/scss/app.scss @@ -1 +1 @@ -@import './_window'; +@import './window';