Build processing upgrade

This commit is contained in:
Tony Air 2020-03-24 01:10:33 +07:00
parent 0d8506bd11
commit 37bdbb93f7
22 changed files with 685 additions and 175 deletions

0
.eslintignore Normal file → Executable file
View File

0
.eslintrc Normal file → Executable file
View File

0
.gitignore vendored Normal file → Executable file
View File

0
README.md Normal file → Executable file
View File

301
dist/css/app.css vendored Normal file
View File

@ -0,0 +1,301 @@
.meta-lightbox-overlay {
position: fixed;
top: 0;
left: 0;
z-index: 99998;
width: 100%;
height: 100%;
overflow: hidden;
visibility: hidden;
opacity: 0;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
.meta-lightbox-overlay.meta-lightbox-open {
visibility: visible;
opacity: 1;
}
.meta-lightbox-wrap {
position: absolute;
top: 10%;
bottom: 10%;
left: 10%;
right: 10%;
}
.meta-lightbox-content {
width: 100%;
height: 100%;
}
.meta-lightbox-content .meta-lightbox-zoom-wrapper {
display: block;
height: 100%;
width: 100%;
}
.meta-lightbox-content .meta-lightbox-zoom-wrapper:after {
color: #fff;
font: normal normal normal 14px/1 FontAwesome;
content: '\f00e';
position: absolute;
right: 1em;
bottom: 1em;
right: 1em;
text-shadow: 1px 1px 1px #000;
}
.meta-lightbox-title-wrap {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
z-index: 99999;
text-align: center;
}
.meta-lightbox-nav {
display: none;
}
.meta-lightbox-prev {
position: absolute;
top: 50%;
left: 0;
}
.meta-lightbox-next {
position: absolute;
top: 50%;
right: 0;
}
.meta-lightbox-close {
position: absolute;
top: 2%;
right: 2%;
}
.meta-lightbox-image {
text-align: center;
}
.meta-lightbox-image img {
max-width: 100%;
max-height: 100%;
width: auto;
height: auto;
vertical-align: middle;
}
.meta-lightbox-content iframe {
width: 100%;
height: 100%;
}
.meta-lightbox-inline,
.meta-lightbox-ajax {
max-height: 100%;
overflow: auto;
}
.meta-lightbox-error {
display: table;
text-align: center;
width: 100%;
height: 100%;
color: #fff;
text-shadow: 0 1px 1px #000;
}
.meta-lightbox-error p {
display: table-cell;
vertical-align: middle;
}
/* Effects
**********************************************/
.meta-lightbox-notouch .meta-lightbox-effect-fade,
.meta-lightbox-notouch .meta-lightbox-effect-fadeScale,
.meta-lightbox-notouch .meta-lightbox-effect-slideLeft,
.meta-lightbox-notouch .meta-lightbox-effect-slideRight,
.meta-lightbox-notouch .meta-lightbox-effect-slideUp,
.meta-lightbox-notouch .meta-lightbox-effect-slideDown,
.meta-lightbox-notouch .meta-lightbox-effect-fall {
-webkit-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
/* fadeScale */
.meta-lightbox-effect-fadeScale .meta-lightbox-wrap {
-webkit-transition: all 0.3s;
transition: all 0.3s;
-webkit-transform: scale(0.7);
transform: scale(0.7);
}
.meta-lightbox-effect-fadeScale.meta-lightbox-open .meta-lightbox-wrap {
-webkit-transform: scale(1);
transform: scale(1);
}
/* slideLeft / slideRight / slideUp / slideDown */
.meta-lightbox-effect-slideLeft .meta-lightbox-wrap,
.meta-lightbox-effect-slideRight .meta-lightbox-wrap,
.meta-lightbox-effect-slideUp .meta-lightbox-wrap,
.meta-lightbox-effect-slideDown .meta-lightbox-wrap {
-webkit-transition: all 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);
transition: all 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);
}
.meta-lightbox-effect-slideLeft .meta-lightbox-wrap {
-webkit-transform: translateX(-10%);
transform: translateX(-10%);
}
.meta-lightbox-effect-slideRight .meta-lightbox-wrap {
-webkit-transform: translateX(10%);
transform: translateX(10%);
}
.meta-lightbox-effect-slideLeft.meta-lightbox-open .meta-lightbox-wrap,
.meta-lightbox-effect-slideRight.meta-lightbox-open .meta-lightbox-wrap {
-webkit-transform: translateX(0);
transform: translateX(0);
}
.meta-lightbox-effect-slideDown .meta-lightbox-wrap {
-webkit-transform: translateY(-10%);
transform: translateY(-10%);
}
.meta-lightbox-effect-slideUp .meta-lightbox-wrap {
-webkit-transform: translateY(10%);
transform: translateY(10%);
}
.meta-lightbox-effect-slideUp.meta-lightbox-open .meta-lightbox-wrap,
.meta-lightbox-effect-slideDown.meta-lightbox-open .meta-lightbox-wrap {
-webkit-transform: translateY(0);
transform: translateY(0);
}
/* fall */
.meta-lightbox-body-effect-fall .meta-lightbox-effect-fall {
-webkit-perspective: 1000px;
perspective: 1000px;
}
.meta-lightbox-effect-fall .meta-lightbox-wrap {
-webkit-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
-webkit-transform: translateZ(300px);
transform: translateZ(300px);
}
.meta-lightbox-effect-fall.meta-lightbox-open .meta-lightbox-wrap {
-webkit-transform: translateZ(0);
transform: translateZ(0);
}
.meta-lightbox-theme-default.meta-lightbox-overlay {
background: #666;
background: rgba(0, 0, 0, 0.6);
}
.meta-lightbox-theme-default .meta-lightbox-nav {
top: 10%;
width: 20%;
height: 80%;
background-repeat: no-repeat;
background-position: 50% 50%;
opacity: 0.5;
color: #fff;
font-size: 3em;
text-decoration: none;
text-shadow: 1px 1px 0 #000;
}
@media (min-width: 576px) {
.meta-lightbox-theme-default .meta-lightbox-nav {
width: 8%;
}
}
.meta-lightbox-theme-default .meta-lightbox-nav .fa {
position: absolute;
top: 50%;
left: 50%;
margin-top: -1em;
margin-left: -0.2em;
}
.meta-lightbox-theme-default .meta-lightbox-nav:hover {
color: #007bff;
opacity: 1;
background-color: rgba(0, 0, 0, 0.5);
}
.meta-lightbox-theme-default .meta-lightbox-close {
display: block;
opacity: 0.5;
color: #fff;
text-decoration: none;
font-size: 2em;
text-shadow: 1px 1px 0 #000;
text-align: center;
width: 1.2em;
height: 1.2em;
}
.meta-lightbox-theme-default .meta-lightbox-close:focus {
color: #007bff;
opacity: 1;
background-color: rgba(0, 0, 0, 0.5);
}
.meta-lightbox-theme-default .meta-lightbox-title {
background: #000;
color: #fff;
padding: 7px 15px;
}
.meta-lightbox-theme-default .meta-lightbox-ajax,
.meta-lightbox-theme-default .meta-lightbox-inline {
background: #fff;
padding: 2em;
-webkit-box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.6);
box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.6);
}
@media (max-width: 576px) {
.meta-lightbox-wrap {
top: 5px !important;
bottom: 5px;
left: 5px;
right: 5px;
}
.meta-lightbox-theme-default .meta-lightbox-nav {
height: 100%;
opacity: 1;
font-size: 2em;
}
.meta-lightbox-theme-default .meta-lightbox-nav .fa {
margin-left: -0.4em;
}
.meta-lightbox-theme-default .meta-lightbox-close {
opacity: 1;
}
}
/*# sourceMappingURL=app.css.map*/

1
dist/css/app.css.map vendored Normal file
View File

@ -0,0 +1 @@
{"version":3,"sources":["webpack:///./src/scss/meta-lightbox.scss","webpack:///index.scss","webpack:///./src/scss/meta-lightbox-theme.scss"],"names":[],"mappings":"AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;UAAA;ACAJ;;ADVA;EAaQ;EACA;ACCR;;ADGA;EACI;EACA;EACA;EACA;EACA;ACAJ;;ADGA;EACI;EACA;ACAJ;;ADFA;EAKQ;EACA;EACA;ACCR;;ADRA;EAUY;EACA;EACA;EACA;EACA;EACA;EACA;EACA;ACEZ;;ADGA;EACI;EACA;EACA;EACA;EACA;EACA;ACAJ;;ADGA;EACI;ACAJ;;ADGA;EACI;EACA;EACA;ACAJ;;ADGA;EACI;EACA;EACA;ACAJ;;ADGA;EACI;EACA;EACA;ACAJ;;ADGA;EACI;ACAJ;;ADDA;EAIQ;EACA;EACA;EACA;EACA;ACCR;;ADGA;EACI;EACA;ACAJ;;ADGA;;EAEI;EACA;ACAJ;;ADGA;EACI;EACA;EACA;EACA;EACA;EACA;ACAJ;;ADGA;EACI;EACA;ACAJ;;ADGA;+CCA+C;;ADE/C;;;;;;;EAOI;EAAA;ACEJ;;ADCA;;AACA;EACI;EAAA;EACA;UAAA;ACKJ;;ADFA;EACI;UAAA;ACMJ;;ADHA;;AACA;;;;EAII;EAAA;ACQJ;;ADLA;EACI;UAAA;ACSJ;;ADNA;EACI;UAAA;ACUJ;;ADPA;;EAEI;UAAA;ACWJ;;ADRA;EACI;UAAA;ACYJ;;ADTA;EACI;UAAA;ACaJ;;ADVA;;EAEI;UAAA;ACcJ;;ADXA;;AACA;EACI;UAAA;ACgBJ;;ADbA;EACI;EAAA;EACA;UAAA;ACkBJ;;ADfA;EACI;UAAA;ACmBJ;;AC5MA;EACI;EACA;AD+MJ;;AC5MA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AD+MJ;;AC7MI;EAZJ;IAaQ;EDiNN;AACF;;AC/NA;EAgBQ;EACA;EACA;EACA;EACA;ADmNR;;ACvOA;EAwBQ;EACA;EACA;ADmNR;;AC/MA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;ADkNJ;;AC3NA;EAYQ;EACA;EACA;ADmNR;;AC/MA;EACI;EACA;EACA;ADkNJ;;AC/MA;;EAEI;EACA;EACA;UAAA;ADmNJ;;AChNA;EACI;IACI;IACA;IACA;IACA;EDmNN;;EChNE;IACI;IACA;IACA;EDmNN;;ECtNE;IAMQ;EDoNV;;EChNE;IACI;EDmNN;AACF","file":"css/app.css","sourcesContent":["@import '_variables';\n\n.meta-lightbox-overlay {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 99998;\n width: 100%;\n height: 100%;\n overflow: hidden;\n visibility: hidden;\n opacity: 0;\n box-sizing: border-box;\n\n &.meta-lightbox-open {\n visibility: visible;\n opacity: 1;\n }\n}\n\n.meta-lightbox-wrap {\n position: absolute;\n top: 10%;\n bottom: 10%;\n left: 10%;\n right: 10%;\n}\n\n.meta-lightbox-content {\n width: 100%;\n height: 100%;\n\n .meta-lightbox-zoom-wrapper {\n display: block;\n height: 100%;\n width: 100%;\n\n &:after {\n color: $white;\n font: normal normal normal 14px/1 FontAwesome;\n content: '\\f00e';\n position: absolute;\n right: 1em;\n bottom: 1em;\n right: 1em;\n text-shadow: 1px 1px 1px $black;\n }\n }\n}\n\n.meta-lightbox-title-wrap {\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100%;\n z-index: 99999;\n text-align: center;\n}\n\n.meta-lightbox-nav {\n display: none;\n}\n\n.meta-lightbox-prev {\n position: absolute;\n top: 50%;\n left: 0;\n}\n\n.meta-lightbox-next {\n position: absolute;\n top: 50%;\n right: 0;\n}\n\n.meta-lightbox-close {\n position: absolute;\n top: 2%;\n right: 2%;\n}\n\n.meta-lightbox-image {\n text-align: center;\n\n img {\n max-width: 100%;\n max-height: 100%;\n width: auto;\n height: auto;\n vertical-align: middle;\n }\n}\n\n.meta-lightbox-content iframe {\n width: 100%;\n height: 100%;\n}\n\n.meta-lightbox-inline,\n.meta-lightbox-ajax {\n max-height: 100%;\n overflow: auto;\n}\n\n.meta-lightbox-error {\n display: table;\n text-align: center;\n width: 100%;\n height: 100%;\n color: $white;\n text-shadow: 0 1px 1px $black;\n}\n\n.meta-lightbox-error p {\n display: table-cell;\n vertical-align: middle;\n}\n\n/* Effects\n **********************************************/\n.meta-lightbox-notouch .meta-lightbox-effect-fade,\n.meta-lightbox-notouch .meta-lightbox-effect-fadeScale,\n.meta-lightbox-notouch .meta-lightbox-effect-slideLeft,\n.meta-lightbox-notouch .meta-lightbox-effect-slideRight,\n.meta-lightbox-notouch .meta-lightbox-effect-slideUp,\n.meta-lightbox-notouch .meta-lightbox-effect-slideDown,\n.meta-lightbox-notouch .meta-lightbox-effect-fall {\n transition: all 0.2s ease-in-out;\n}\n\n/* fadeScale */\n.meta-lightbox-effect-fadeScale .meta-lightbox-wrap {\n transition: all 0.3s;\n transform: scale(0.7);\n}\n\n.meta-lightbox-effect-fadeScale.meta-lightbox-open .meta-lightbox-wrap {\n transform: scale(1);\n}\n\n/* slideLeft / slideRight / slideUp / slideDown */\n.meta-lightbox-effect-slideLeft .meta-lightbox-wrap,\n.meta-lightbox-effect-slideRight .meta-lightbox-wrap,\n.meta-lightbox-effect-slideUp .meta-lightbox-wrap,\n.meta-lightbox-effect-slideDown .meta-lightbox-wrap {\n transition: all 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);\n}\n\n.meta-lightbox-effect-slideLeft .meta-lightbox-wrap {\n transform: translateX(-10%);\n}\n\n.meta-lightbox-effect-slideRight .meta-lightbox-wrap {\n transform: translateX(10%);\n}\n\n.meta-lightbox-effect-slideLeft.meta-lightbox-open .meta-lightbox-wrap,\n.meta-lightbox-effect-slideRight.meta-lightbox-open .meta-lightbox-wrap {\n transform: translateX(0);\n}\n\n.meta-lightbox-effect-slideDown .meta-lightbox-wrap {\n transform: translateY(-10%);\n}\n\n.meta-lightbox-effect-slideUp .meta-lightbox-wrap {\n transform: translateY(10%);\n}\n\n.meta-lightbox-effect-slideUp.meta-lightbox-open .meta-lightbox-wrap,\n.meta-lightbox-effect-slideDown.meta-lightbox-open .meta-lightbox-wrap {\n transform: translateY(0);\n}\n\n/* fall */\n.meta-lightbox-body-effect-fall .meta-lightbox-effect-fall {\n perspective: 1000px;\n}\n\n.meta-lightbox-effect-fall .meta-lightbox-wrap {\n transition: all 0.3s ease-out;\n transform: translateZ(300px);\n}\n\n.meta-lightbox-effect-fall.meta-lightbox-open .meta-lightbox-wrap {\n transform: translateZ(0);\n}\n\n@import 'meta-lightbox-theme';\n",".meta-lightbox-overlay {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 99998;\n width: 100%;\n height: 100%;\n overflow: hidden;\n visibility: hidden;\n opacity: 0;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n\n.meta-lightbox-overlay.meta-lightbox-open {\n visibility: visible;\n opacity: 1;\n}\n\n.meta-lightbox-wrap {\n position: absolute;\n top: 10%;\n bottom: 10%;\n left: 10%;\n right: 10%;\n}\n\n.meta-lightbox-content {\n width: 100%;\n height: 100%;\n}\n\n.meta-lightbox-content .meta-lightbox-zoom-wrapper {\n display: block;\n height: 100%;\n width: 100%;\n}\n\n.meta-lightbox-content .meta-lightbox-zoom-wrapper:after {\n color: #fff;\n font: normal normal normal 14px/1 FontAwesome;\n content: '\\f00e';\n position: absolute;\n right: 1em;\n bottom: 1em;\n right: 1em;\n text-shadow: 1px 1px 1px #000;\n}\n\n.meta-lightbox-title-wrap {\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100%;\n z-index: 99999;\n text-align: center;\n}\n\n.meta-lightbox-nav {\n display: none;\n}\n\n.meta-lightbox-prev {\n position: absolute;\n top: 50%;\n left: 0;\n}\n\n.meta-lightbox-next {\n position: absolute;\n top: 50%;\n right: 0;\n}\n\n.meta-lightbox-close {\n position: absolute;\n top: 2%;\n right: 2%;\n}\n\n.meta-lightbox-image {\n text-align: center;\n}\n\n.meta-lightbox-image img {\n max-width: 100%;\n max-height: 100%;\n width: auto;\n height: auto;\n vertical-align: middle;\n}\n\n.meta-lightbox-content iframe {\n width: 100%;\n height: 100%;\n}\n\n.meta-lightbox-inline,\n.meta-lightbox-ajax {\n max-height: 100%;\n overflow: auto;\n}\n\n.meta-lightbox-error {\n display: table;\n text-align: center;\n width: 100%;\n height: 100%;\n color: #fff;\n text-shadow: 0 1px 1px #000;\n}\n\n.meta-lightbox-error p {\n display: table-cell;\n vertical-align: middle;\n}\n\n/* Effects\n **********************************************/\n\n.meta-lightbox-notouch .meta-lightbox-effect-fade,\n.meta-lightbox-notouch .meta-lightbox-effect-fadeScale,\n.meta-lightbox-notouch .meta-lightbox-effect-slideLeft,\n.meta-lightbox-notouch .meta-lightbox-effect-slideRight,\n.meta-lightbox-notouch .meta-lightbox-effect-slideUp,\n.meta-lightbox-notouch .meta-lightbox-effect-slideDown,\n.meta-lightbox-notouch .meta-lightbox-effect-fall {\n -webkit-transition: all 0.2s ease-in-out;\n transition: all 0.2s ease-in-out;\n}\n\n/* fadeScale */\n\n.meta-lightbox-effect-fadeScale .meta-lightbox-wrap {\n -webkit-transition: all 0.3s;\n transition: all 0.3s;\n -webkit-transform: scale(0.7);\n transform: scale(0.7);\n}\n\n.meta-lightbox-effect-fadeScale.meta-lightbox-open .meta-lightbox-wrap {\n -webkit-transform: scale(1);\n transform: scale(1);\n}\n\n/* slideLeft / slideRight / slideUp / slideDown */\n\n.meta-lightbox-effect-slideLeft .meta-lightbox-wrap,\n.meta-lightbox-effect-slideRight .meta-lightbox-wrap,\n.meta-lightbox-effect-slideUp .meta-lightbox-wrap,\n.meta-lightbox-effect-slideDown .meta-lightbox-wrap {\n -webkit-transition: all 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);\n transition: all 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);\n}\n\n.meta-lightbox-effect-slideLeft .meta-lightbox-wrap {\n -webkit-transform: translateX(-10%);\n transform: translateX(-10%);\n}\n\n.meta-lightbox-effect-slideRight .meta-lightbox-wrap {\n -webkit-transform: translateX(10%);\n transform: translateX(10%);\n}\n\n.meta-lightbox-effect-slideLeft.meta-lightbox-open .meta-lightbox-wrap,\n.meta-lightbox-effect-slideRight.meta-lightbox-open .meta-lightbox-wrap {\n -webkit-transform: translateX(0);\n transform: translateX(0);\n}\n\n.meta-lightbox-effect-slideDown .meta-lightbox-wrap {\n -webkit-transform: translateY(-10%);\n transform: translateY(-10%);\n}\n\n.meta-lightbox-effect-slideUp .meta-lightbox-wrap {\n -webkit-transform: translateY(10%);\n transform: translateY(10%);\n}\n\n.meta-lightbox-effect-slideUp.meta-lightbox-open .meta-lightbox-wrap,\n.meta-lightbox-effect-slideDown.meta-lightbox-open .meta-lightbox-wrap {\n -webkit-transform: translateY(0);\n transform: translateY(0);\n}\n\n/* fall */\n\n.meta-lightbox-body-effect-fall .meta-lightbox-effect-fall {\n -webkit-perspective: 1000px;\n perspective: 1000px;\n}\n\n.meta-lightbox-effect-fall .meta-lightbox-wrap {\n -webkit-transition: all 0.3s ease-out;\n transition: all 0.3s ease-out;\n -webkit-transform: translateZ(300px);\n transform: translateZ(300px);\n}\n\n.meta-lightbox-effect-fall.meta-lightbox-open .meta-lightbox-wrap {\n -webkit-transform: translateZ(0);\n transform: translateZ(0);\n}\n\n.meta-lightbox-theme-default.meta-lightbox-overlay {\n background: #666;\n background: rgba(0, 0, 0, 0.6);\n}\n\n.meta-lightbox-theme-default .meta-lightbox-nav {\n top: 10%;\n width: 20%;\n height: 80%;\n background-repeat: no-repeat;\n background-position: 50% 50%;\n opacity: 0.5;\n color: #fff;\n font-size: 3em;\n text-decoration: none;\n text-shadow: 1px 1px 0 #000;\n}\n\n@media (min-width: 576px) {\n .meta-lightbox-theme-default .meta-lightbox-nav {\n width: 8%;\n }\n}\n\n.meta-lightbox-theme-default .meta-lightbox-nav .fa {\n position: absolute;\n top: 50%;\n left: 50%;\n margin-top: -1em;\n margin-left: -0.2em;\n}\n\n.meta-lightbox-theme-default .meta-lightbox-nav:hover {\n color: #007bff;\n opacity: 1;\n background-color: rgba(0, 0, 0, 0.5);\n}\n\n.meta-lightbox-theme-default .meta-lightbox-close {\n display: block;\n opacity: 0.5;\n color: #fff;\n text-decoration: none;\n font-size: 2em;\n text-shadow: 1px 1px 0 #000;\n text-align: center;\n width: 1.2em;\n height: 1.2em;\n}\n\n.meta-lightbox-theme-default .meta-lightbox-close:focus {\n color: #007bff;\n opacity: 1;\n background-color: rgba(0, 0, 0, 0.5);\n}\n\n.meta-lightbox-theme-default .meta-lightbox-title {\n background: #000;\n color: #fff;\n padding: 7px 15px;\n}\n\n.meta-lightbox-theme-default .meta-lightbox-ajax,\n.meta-lightbox-theme-default .meta-lightbox-inline {\n background: #fff;\n padding: 2em;\n -webkit-box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.6);\n box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.6);\n}\n\n@media (max-width: 576px) {\n .meta-lightbox-wrap {\n top: 5px !important;\n bottom: 5px;\n left: 5px;\n right: 5px;\n }\n\n .meta-lightbox-theme-default .meta-lightbox-nav {\n height: 100%;\n opacity: 1;\n font-size: 2em;\n }\n\n .meta-lightbox-theme-default .meta-lightbox-nav .fa {\n margin-left: -0.4em;\n }\n\n .meta-lightbox-theme-default .meta-lightbox-close {\n opacity: 1;\n }\n}\n\n",".meta-lightbox-theme-default.meta-lightbox-overlay {\n background: #666;\n background: rgba(0, 0, 0, 0.6);\n}\n\n.meta-lightbox-theme-default .meta-lightbox-nav {\n top: 10%;\n width: 20%;\n height: 80%;\n background-repeat: no-repeat;\n background-position: 50% 50%;\n opacity: 0.5;\n color: $white;\n font-size: 3em;\n text-decoration: none;\n text-shadow: 1px 1px 0 $black;\n\n @media (min-width: map-get($grid-breakpoints, 'sm')) {\n width: 8%;\n }\n .fa {\n position: absolute;\n top: 50%;\n left: 50%;\n margin-top: -1em;\n margin-left: -0.2em;\n }\n\n &:hover {\n color: $lightbox-link-hover-color;\n opacity: 1;\n background-color: transparentize($black, 0.5);\n }\n}\n\n.meta-lightbox-theme-default .meta-lightbox-close {\n display: block;\n opacity: 0.5;\n color: $white;\n text-decoration: none;\n font-size: 2em;\n text-shadow: 1px 1px 0 $black;\n text-align: center;\n width: 1.2em;\n height: 1.2em;\n\n &:focus {\n color: $lightbox-link-hover-color;\n opacity: 1;\n background-color: transparentize($black, 0.5);\n }\n}\n\n.meta-lightbox-theme-default .meta-lightbox-title {\n background: $black;\n color: $white;\n padding: 7px 15px;\n}\n\n.meta-lightbox-theme-default .meta-lightbox-ajax,\n.meta-lightbox-theme-default .meta-lightbox-inline {\n background: $white;\n padding: 2em;\n box-shadow: 0px 1px 1px transparentize($black, 0.4);\n}\n\n@media (max-width: $lightbox-breakpoint) {\n .meta-lightbox-wrap {\n top: 5px !important;\n bottom: 5px;\n left: 5px;\n right: 5px;\n }\n\n .meta-lightbox-theme-default .meta-lightbox-nav {\n height: 100%;\n opacity: 1;\n font-size: 2em;\n\n .fa {\n margin-left: -0.4em;\n }\n }\n\n .meta-lightbox-theme-default .meta-lightbox-close {\n opacity: 1;\n }\n}\n"],"sourceRoot":""}

1
dist/css/main.css vendored
View File

@ -1 +0,0 @@
.meta-lightbox-overlay{position:fixed;top:0;left:0;z-index:99998;width:100%;height:100%;overflow:hidden;visibility:hidden;opacity:0;-webkit-box-sizing:border-box;box-sizing:border-box}.meta-lightbox-overlay.meta-lightbox-open{visibility:visible;opacity:1}.meta-lightbox-wrap{position:absolute;top:10%;bottom:10%;left:10%;right:10%}.meta-lightbox-content{width:100%;height:100%}.meta-lightbox-content .meta-lightbox-zoom-wrapper{display:block;height:100%;width:100%}.meta-lightbox-content .meta-lightbox-zoom-wrapper:after{color:#fff;font:normal normal normal 14px/1 FontAwesome;content:"\f00e";position:absolute;bottom:1em;right:1em;text-shadow:1px 1px 1px #000}.meta-lightbox-title-wrap{position:absolute;bottom:0;left:0;width:100%;z-index:99999;text-align:center}.meta-lightbox-nav{display:none}.meta-lightbox-prev{position:absolute;top:50%;left:0}.meta-lightbox-next{position:absolute;top:50%;right:0}.meta-lightbox-close{position:absolute;top:2%;right:2%}.meta-lightbox-image{text-align:center}.meta-lightbox-image img{max-width:100%;max-height:100%;width:auto;height:auto;vertical-align:middle}.meta-lightbox-content iframe{width:100%;height:100%}.meta-lightbox-ajax,.meta-lightbox-inline{max-height:100%;overflow:auto}.meta-lightbox-error{display:table;text-align:center;width:100%;height:100%;color:#fff;text-shadow:0 1px 1px #000}.meta-lightbox-error p{display:table-cell;vertical-align:middle}.meta-lightbox-notouch .meta-lightbox-effect-fade,.meta-lightbox-notouch .meta-lightbox-effect-fadeScale,.meta-lightbox-notouch .meta-lightbox-effect-fall,.meta-lightbox-notouch .meta-lightbox-effect-slideDown,.meta-lightbox-notouch .meta-lightbox-effect-slideLeft,.meta-lightbox-notouch .meta-lightbox-effect-slideRight,.meta-lightbox-notouch .meta-lightbox-effect-slideUp{-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.meta-lightbox-effect-fadeScale .meta-lightbox-wrap{-webkit-transition:all .3s;transition:all .3s;-webkit-transform:scale(.7);transform:scale(.7)}.meta-lightbox-effect-fadeScale.meta-lightbox-open .meta-lightbox-wrap{-webkit-transform:scale(1);transform:scale(1)}.meta-lightbox-effect-slideDown .meta-lightbox-wrap,.meta-lightbox-effect-slideLeft .meta-lightbox-wrap,.meta-lightbox-effect-slideRight .meta-lightbox-wrap,.meta-lightbox-effect-slideUp .meta-lightbox-wrap{-webkit-transition:all .3s cubic-bezier(.25,.5,.5,.9);transition:all .3s cubic-bezier(.25,.5,.5,.9)}.meta-lightbox-effect-slideLeft .meta-lightbox-wrap{-webkit-transform:translateX(-10%);transform:translateX(-10%)}.meta-lightbox-effect-slideRight .meta-lightbox-wrap{-webkit-transform:translateX(10%);transform:translateX(10%)}.meta-lightbox-effect-slideLeft.meta-lightbox-open .meta-lightbox-wrap,.meta-lightbox-effect-slideRight.meta-lightbox-open .meta-lightbox-wrap{-webkit-transform:translateX(0);transform:translateX(0)}.meta-lightbox-effect-slideDown .meta-lightbox-wrap{-webkit-transform:translateY(-10%);transform:translateY(-10%)}.meta-lightbox-effect-slideUp .meta-lightbox-wrap{-webkit-transform:translateY(10%);transform:translateY(10%)}.meta-lightbox-effect-slideDown.meta-lightbox-open .meta-lightbox-wrap,.meta-lightbox-effect-slideUp.meta-lightbox-open .meta-lightbox-wrap{-webkit-transform:translateY(0);transform:translateY(0)}.meta-lightbox-body-effect-fall .meta-lightbox-effect-fall{-webkit-perspective:1000px;perspective:1000px}.meta-lightbox-effect-fall .meta-lightbox-wrap{-webkit-transition:all .3s ease-out;transition:all .3s ease-out;-webkit-transform:translateZ(300px);transform:translateZ(300px)}.meta-lightbox-effect-fall.meta-lightbox-open .meta-lightbox-wrap{-webkit-transform:translateZ(0);transform:translateZ(0)}.meta-lightbox-theme-default.meta-lightbox-overlay{background:#666;background:rgba(0,0,0,.6)}.meta-lightbox-theme-default .meta-lightbox-nav{top:10%;width:8%;height:80%;background-repeat:no-repeat;background-position:50% 50%;opacity:.5;color:#fff;font-size:3em;text-decoration:none;text-shadow:1px 1px 0 #000}.meta-lightbox-theme-default .meta-lightbox-nav .fa{position:absolute;top:50%;left:50%;margin-top:-1em;margin-left:-.2em}.meta-lightbox-theme-default .meta-lightbox-nav:hover{color:#007bff;opacity:1;background-color:rgba(0,0,0,.5)}.meta-lightbox-theme-default .meta-lightbox-close{display:block;opacity:.5;color:#fff;text-decoration:none;font-size:2em;text-shadow:1px 1px 0 #000;text-align:center;width:1.2em;height:1.2em}.meta-lightbox-theme-default .meta-lightbox-close:focus{color:#007bff;opacity:1;background-color:rgba(0,0,0,.5)}.meta-lightbox-theme-default .meta-lightbox-title{background:#000;color:#fff;padding:7px 15px}.meta-lightbox-theme-default .meta-lightbox-ajax,.meta-lightbox-theme-default .meta-lightbox-inline{background:#fff;padding:2em;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.4);box-shadow:0 1px 1px rgba(0,0,0,.4)}@media (max-width:576px){.meta-lightbox-wrap{top:5px!important;bottom:5px;left:5px;right:5px}.meta-lightbox-theme-default .meta-lightbox-nav{height:100%;opacity:1;font-size:2em}.meta-lightbox-theme-default .meta-lightbox-nav .fa{margin-left:-.4em}.meta-lightbox-theme-default .meta-lightbox-close{opacity:1}}

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 name="author" content=""><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.4.0/css/all.css"><script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script><title>Meta-lightbox Demo</title><style>.wrapper {
padding: 2rem;
}</style><link href="css/main.css" rel="stylesheet"></head><body><div class="wrapper"><h1>Meta-lightbox Demo</h1><p><a href="../src/img/photo1.png" data-toggle="lightbox" data-lightbox-gallery="demo" data-title="That's first link">Click me to start</a></p><p><a href="../src/img/photo2.jpg" data-toggle="lightbox" data-lightbox-gallery="demo">Use data-toggle="lightbox" attribute to attach lightbox action and href to specify URL.</a></p><p><a href="../src/img/photo1.png" data-toggle="lightbox" data-lightbox-gallery="demo" data-title="Use data-title attribute to specify lightbox title">Use data-lightbox-gallery="YOUR_GALLERY_NAME" to group ligthboxes and use next/prev arrows</a></p><p data-toggle="lightbox" data-href="https://youtu.be/GgnClrx8N2k" data-lightbox-gallery="demo" data-title="Yes you can link vimeo and youtube videos as long as AJAX content">You can use data-href attribute to specify link and attach lightbox to another element</p><p><b>Note:</b> You can add jquery-zoom plugin and lighbox will zoom photos on hover.</p></div><script src="js/index.js"></script></body></html>
}</style><link href="/mnt/data/srv/dist/repositories/meta-lightbox/dist/css/app.css" rel="stylesheet"></head><body><div class="wrapper"><h1>Meta-lightbox Demo</h1><p><a href="../src/img/photo1.png" data-toggle="lightbox" data-lightbox-gallery="demo" data-title="That's first link">Click me to start</a></p><p><a href="../src/img/photo2.jpg" data-toggle="lightbox" data-lightbox-gallery="demo">Use data-toggle="lightbox" attribute to attach lightbox action and href to specify URL.</a></p><p><a href="../src/img/photo1.png" data-toggle="lightbox" data-lightbox-gallery="demo" data-title="Use data-title attribute to specify lightbox title">Use data-lightbox-gallery="YOUR_GALLERY_NAME" to group ligthboxes and use next/prev arrows</a></p><p data-toggle="lightbox" data-href="https://youtu.be/GgnClrx8N2k" data-lightbox-gallery="demo" data-title="Yes you can link vimeo and youtube videos as long as AJAX content">You can use data-href attribute to specify link and attach lightbox to another element</p><p><b>Note:</b> You can add jquery-zoom plugin and lighbox will zoom photos on hover.</p></div><script src="/mnt/data/srv/dist/repositories/meta-lightbox/dist/js/app.js"></script></body></html>

3
dist/js/app.js vendored Normal file
View File

@ -0,0 +1,3 @@
/*! For license information please see app.js.LICENSE.txt */
!function(t){var e={};function o(a){if(e[a])return e[a].exports;var i=e[a]={i:a,l:!1,exports:{}};return t[a].call(i.exports,i,i.exports,o),i.l=!0,i.exports}o.m=t,o.c=e,o.d=function(t,e,a){o.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:a})},o.r=function(t){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},o.t=function(t,e){if(1&e&&(t=o(t)),8&e)return t;if(4&e&&"object"===typeof t&&t&&t.__esModule)return t;var a=Object.create(null);if(o.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)o.d(a,i,function(e){return t[e]}.bind(null,i));return a},o.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return o.d(e,"a",e),e},o.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},o.p="/mnt/data/srv/dist/repositories/meta-lightbox/dist",o(o.s="./src/js/index.js")}({"./src/js/index.js":function(t,e,o){"use strict";o.r(e);o("./src/scss/index.scss"),o("./src/js/meta-lightbox.js")},"./src/js/meta-lightbox.js":function(t,e){function o(t){return(o="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"===typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}!function(t,e,a){var i={effect:"fade",theme:"default",keyboardNav:!0,clickOverlayToClose:!0,onInit:function(){},beforeShowLightbox:function(){},afterShowLightbox:function(t){},beforeHideLightbox:function(){},afterHideLightbox:function(){},onPrev:function(t){},onNext:function(t){},errorMessage:"The requested content cannot be loaded. Please try again later."};function n(e,o){this.options=t.extend({},i,o),this._defaults=i,this._name="metaLightbox",this.init()}n.prototype={init:function(){var e=this,o=t("html");this.ajaxLoaded=!1,a.MetaLightbox=this,o.hasClass("meta-lightbox-notouch")||o.addClass("meta-lightbox-notouch"),"ontouchstart"in a&&o.removeClass("meta-lightbox-notouch"),t(a).on("click",'[data-toggle="lightbox"],[data-lightbox-gallery]',(function(t){return t.preventDefault(),t.stopPropagation(),e.showLightbox(this),!1})),this.options.keyboardNav&&t("body").off("keyup").on("keyup",(function(o){var a=o.keyCode?o.keyCode:o.which;27===a&&e.destructLightbox(),37===a&&t(".meta-lightbox-prev").trigger("click"),39===a&&t(".meta-lightbox-next").trigger("click")})),this.options.onInit.call(this)},showLightbox:function(e){this.el=e,this.$el=t(this.el);var o,a,i,n,l=this;this.options.beforeShowLightbox.call(this),(o=this.constructLightbox())&&(a=o.find(".meta-lightbox-content"))&&(i=this.$el,t("body").addClass("meta-lightbox-body-effect-".concat(this.options.effect)),this.processContent(a,i),this.$el.data("lightbox-gallery")&&(1===(n=t('[data-lightbox-gallery="'.concat(this.$el.data("lightbox-gallery"),'"]'))).length?t(".meta-lightbox-nav").hide():t(".meta-lightbox-nav").show(),t(".meta-lightbox-prev").off("click").on("click",(function(e){e.preventDefault();var o=n.index(i);i=n.eq(o-1),t(i).length||(i=n.last()),l.processContent(a,i),l.options.onPrev.call(this,[i])})),t(".meta-lightbox-next").off("click").on("click",(function(e){e.preventDefault();var o=n.index(i);i=n.eq(o+1),t(i).length||(i=n.first()),l.processContent(a,i),l.options.onNext.call(this,[i])}))),setTimeout((function(){o.addClass("meta-lightbox-open"),l.options.afterShowLightbox.call(this,[o])}),1))},processContent:function(i,n){var l,s,r,c,h,g,d=this;href=n.attr("href"),href||(href=n.data("href")),i.html("").addClass("meta-lightbox-loading"),this.isHidpi()&&n.data("lightbox-hidpi")&&(href=n.data("lightbox-hidpi")),null!=href.match(/\.(jpeg|jpg|gif|png)$/i)?((l=t("<img>",{src:href})).on("load",(function(){var o=t('<div class="meta-lightbox-image"></div>'),a=t(".meta-lightbox-content"),n=t('<span class="meta-lightbox-zoom-wrapper"></span>');n.append(l),o.append(n),o.css({"line-height":"".concat(a.height(),"px"),height:"".concat(a.height(),"px")}),t(e).resize((function(){o.css({"line-height":"".concat(a.height(),"px"),height:"".concat(a.height(),"px")})})),"undefined"!==typeof n.zoom&&n.zoom(),i.html(o).removeClass("meta-lightbox-loading"),d.contentLoaded()})),l.on("error",(function(){var e=t('<div class="meta-lightbox-error"><p>'.concat(d.options.errorMessage,"</p></div>"));i.html(e).removeClass("meta-lightbox-loading"),d.contentLoaded()})),n.data("title")?d.setTitle(n.data("title")):n.attr("title")?d.setTitle(n.attr("title")):t(".meta-lightbox-title-wrap").html(""),"function"===typeof ga&&ga("send","event","meta","Image Click",href)):(s=href.match(/(youtube|youtube-nocookie|youtu|vimeo)\.(com|be)\/(watch\?v=([\w-]+)|([\w-]+))/))?(r="",c="meta-lightbox-video","youtube"==s[1]&&(r="https://www.youtube.com/embed/".concat(s[4]),c="meta-lightbox-youtube"),"youtu"==s[1]&&(r="https://www.youtube.com/embed/".concat(s[3]),c="meta-lightbox-youtube"),"youtube-nocookie"==s[1]&&(r="https://www.youtube-nocookie.com/embed/".concat(s[4]),c="nivo-lightbox-youtube"),"vimeo"==s[1]&&(r="https://player.vimeo.com/video/".concat(s[3]),c="meta-lightbox-vimeo"),r&&(h=t("<iframe>",{src:r,class:c,frameborder:0,vspace:0,hspace:0,scrolling:"auto"}),i.html(h),h.on("load",(function(){i.removeClass("meta-lightbox-loading"),d.contentLoaded()}))),n.data("title")?d.setTitle(n.data("title")):n.attr("title")?d.setTitle(n.attr("title")):t(".meta-lightbox-title-wrap").html(""),"function"===typeof ga&&ga("send","event","meta","Video Click",s)):"#"==href.substring(0,1)?(t(href).length?((g=t('<div class="meta-lightbox-inline" />')).append(t(href).clone().show()),g.outerHeight()<i.height()&&g.css({position:"relative",top:"50%","margin-top":"".concat(-g.outerHeight()/2,"px")}),t(e).resize((function(){g.outerHeight()<i.height()&&g.css({position:"relative",top:"50%","margin-top":"".concat(-g.outerHeight()/2,"px")})})),i.html(g).removeClass("meta-lightbox-loading"),d.contentLoaded()):(g=t('<div class="meta-lightbox-error"><p>'.concat(d.options.errorMessage,"</p></div>")),i.html(g).removeClass("meta-lightbox-loading"),d.contentLoaded()),t(".meta-lightbox-title-wrap").html(""),"function"===typeof ga&&ga("send","event","meta","inline HTML click",href)):t.ajax({sync:!1,async:!0,url:href,dataType:"html",method:"GET",cache:!1,statusCode:{404:function(){console.log("page not found"),e.location.href=url},302:function(){console.log("redirect 302"),e.location.href=url}},error:function(e){console.log("AJAX request failure.".concat(e.statusText));var o=t('<div class="meta-lightbox-error"><p>'.concat(d.options.errorMessage,"</p></div>"));i.html(o).removeClass("meta-lightbox-loading"),d.contentLoaded(),"function"===typeof ga&&ga("send","event","error","AJAX ERROR",e.statusText)},success:function(n,l,s){try{var r=t.parseJSON(n);if("object"===o(r)){if("object"===o(r.regions)&&"undefinded"!==typeof r.regions.LayoutAjax)(g=t('<div class="meta-lightbox-ajax" />')).html(r.regions.LayoutAjax),i.html(g).removeClass("meta-lightbox-loading");var c=s.getResponseHeader("X-Title"),h=s.getResponseHeader("X-Link");c&&c.length&&h&&h.length&&h!==e.location.href&&h.substring(0,h.indexOf("#"))!==e.location.href.replace(t("base").attr("href"),"/")&&(t(".meta-lightbox-ajax").data("curr-title",a.title),t(".meta-lightbox-ajax").data("curr-link",e.location.href),"undefined"!==typeof e.localStorage&&"/"!==h&&e.localStorage.setItem("current-page",h),a.URL!==h&&a.URL!==t("base").attr("href")+h&&a.URL!=="".concat(t("base").attr("href"),"/").concat(h)&&e.history.pushState({title:c,page:h,ajax:"true"},c,h),t(".meta-lightbox-title-wrap").html(""),"function"===typeof ga&&(ga("set",{page:h.replace(t("base").attr("href"),""),title:c}),ga("send","pageview")))}}catch(f){var g;(g=t('<div class="meta-lightbox-ajax" />')).append(n),i.html(g).removeClass("meta-lightbox-loading")}g.outerHeight()<i.height()&&g.css({position:"relative",top:"50%","margin-top":"".concat(-g.outerHeight()/2,"px")}),t(e).resize((function(){g.outerHeight()<i.height()&&g.css({position:"relative",top:"50%","margin-top":"".concat(-g.outerHeight()/2,"px")})})),setTimeout((function(){t(e).resize(),e.imagesLoaded().then((function(){t(e).resize()}))}),500),d.contentLoaded()}})},setTitle:function(e){var o=t("<div>",{class:"meta-lightbox-title"});o.text(e),t(".meta-lightbox-title-wrap").html(o)},contentLoaded:function(){setTimeout((function(){t(e).trigger("meta-lightbox-loaded")}),1),setTimeout((function(){t("body").addClass("meta-lightbox-body-effect-fade")}),600)},constructLightbox:function(){var e=this,o=t("<div>",{class:"meta-lightbox-overlay meta-lightbox-theme-".concat(this.options.theme," meta-lightbox-effect-").concat(this.options.effect)}),a=t("<div>",{class:"meta-lightbox-wrap"}),i=t("<div>",{class:"meta-lightbox-content"}),n=t('<a href="#" class="meta-lightbox-nav meta-lightbox-prev"><i class="fa fa-chevron-left"></i> <span class="sr-only">Previous</span></a><a href="#" class="meta-lightbox-nav meta-lightbox-next"><i class="fa fa-chevron-right"></i> <span class="sr-only">Next</span></a>'),l=t('<a href="#" class="meta-lightbox-close fa fa-times" title="Close"><span class="sr-only">Close</span></a>'),s=t("<div>",{class:"meta-lightbox-title-wrap"}),r=t(".meta-lightbox-overlay");return r.length?r:(a.append(i),a.append(s),o.append(a),o.append(n),o.append(l),t("body").append(o),e.options.clickOverlayToClose&&o.on("click",(function(o){var a=t(o.target);(a.hasClass("meta-lightbox-zoom-wrapper")||a.hasClass("meta-lightbox-content")||a.hasClass("meta-lightbox-wrap")||a.hasClass("meta-lightbox-image")||a.hasClass("meta-lightbox-overlay"))&&e.destructLightbox()})),l.on("click",(function(t){t.preventDefault(),e.destructLightbox()})),o)},destructLightbox:function(){var o=t(".meta-lightbox-overlay");this.options.beforeHideLightbox.call(this);var i=t(".meta-lightbox-ajax").data("curr-title"),n=t(".meta-lightbox-ajax").data("curr-link");i&&n&&("undefined"!==typeof e.localStorage&&"/"!==n&&e.localStorage.setItem("current-page",n),a.URL!==n&&a.URL!==t("base").attr("href")+n&&a.URL!=="".concat(t("base").attr("href"),"/").concat(n)&&e.history.replaceState({title:i,page:n,ajax:"true"},i,n)),o.removeClass("meta-lightbox-open"),t(".meta-lightbox-nav").hide(),t("body").removeClass("meta-lightbox-body-effect-".concat(this.options.effect)),t(".meta-lightbox-content .meta-lightbox-zoom-wrapper").trigger("zoom.destroy"),t(".meta-lightbox-prev").off("click"),t(".meta-lightbox-next").off("click"),t(".meta-lightbox-content").empty(),t("body").removeClass("meta-lightbox-body-effect-fade"),this.options.afterHideLightbox.call(this)},isHidpi:function(){return e.devicePixelRatio>1||e.matchMedia&&e.matchMedia("(-webkit-min-device-pixel-ratio: 1.5), (min--moz-device-pixel-ratio: 1.5), (-o-min-device-pixel-ratio: 3/2), (min-resolution: 1.5dppx)").matches}},t.fn.metaLightbox=function(e){return this.each((function(){t.data(this,"metaLightbox")||t.data(this,"metaLightbox",new n(this,e))}))},t(a).metaLightbox()}(jQuery,this,document)},"./src/scss/index.scss":function(t,e){}});
//# sourceMappingURL=app.js.map

1
dist/js/app.js.map vendored Normal file
View File

@ -0,0 +1 @@
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/js/index.js","webpack:///./src/js/meta-lightbox.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","$","window","document","defaults","effect","theme","keyboardNav","clickOverlayToClose","onInit","beforeShowLightbox","afterShowLightbox","lightbox","beforeHideLightbox","afterHideLightbox","onPrev","element","onNext","errorMessage","MetaLightbox","options","this","extend","_defaults","_name","init","$this","$html","ajaxLoaded","hasClass","addClass","removeClass","on","e","preventDefault","stopPropagation","showLightbox","off","code","keyCode","which","destructLightbox","trigger","el","$el","content","currentLink","galleryItems","constructLightbox","find","processContent","data","length","hide","show","index","eq","last","first","setTimeout","link","img","video","src","classTerm","iframe","wrap","href","attr","html","isHidpi","match","$content","imgwrapper","append","css","height","resize","zoom","contentLoaded","setTitle","ga","frameborder","vspace","hspace","scrolling","substring","clone","outerHeight","ajax","sync","async","url","dataType","method","cache","statusCode","404","console","log","location","302","error","jqXHR","statusText","success","status","dataJson","parseJSON","title","getResponseHeader","indexOf","replace","localStorage","setItem","URL","history","pushState","page","imagesLoaded","then","text","titleWrap","overlay","nav","close","$overlay","$target","target","replaceState","empty","devicePixelRatio","matchMedia","matches","fn","each","metaLightbox","jQuery"],"mappings":"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","file":"js/app.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/mnt/data/srv/dist/repositories/meta-lightbox/dist\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"./src/js/index.js\");\n","/*\n * MetaLightbox\n * https://tony.twma.pro\n *\n */\n\n\nimport '../scss/index.scss';\nimport './meta-lightbox';\n","/*\n * MetaLightbox v0.61\n * https://tony.twma.pro\n *\n */\n\n//=require ../../bower_components/jquery-zoom/jquery.zoom.js\n\n(function($, window, document) {\n\n var pluginName = 'metaLightbox',\n defaults = {\n effect: 'fade',\n theme: 'default',\n keyboardNav: true,\n clickOverlayToClose: true,\n onInit: function() {},\n beforeShowLightbox: function() {},\n afterShowLightbox: function(lightbox) {},\n beforeHideLightbox: function() {},\n afterHideLightbox: function() {},\n onPrev: function(element) {},\n onNext: function(element) {},\n errorMessage: 'The requested content cannot be loaded. Please try again later.',\n };\n\n function MetaLightbox(element, options) {\n /*this.el = element;\n this.$el = $(this.el);*/\n\n this.options = $.extend({}, defaults, options);\n\n this._defaults = defaults;\n this._name = pluginName;\n\n this.init();\n }\n\n MetaLightbox.prototype = {\n\n init: function() {\n var $this = this,\n $html = $('html');\n\n this.ajaxLoaded = false;\n\n // make object globally accessible\n document.MetaLightbox = this;\n\n // Need this so we don't use CSS transitions in mobile\n if (!$html.hasClass('meta-lightbox-notouch')) $html.addClass('meta-lightbox-notouch');\n if ('ontouchstart' in document) $html.removeClass('meta-lightbox-notouch');\n\n // Setup the click\n $(document).on('click', '[data-toggle=\"lightbox\"],[data-lightbox-gallery]', function(e) {\n e.preventDefault();\n e.stopPropagation();\n\n $this.showLightbox(this);\n return false;\n });\n\n // keyboardNav\n if (this.options.keyboardNav) {\n $('body').off('keyup').on('keyup', (e) => {\n var code = (e.keyCode ? e.keyCode : e.which);\n // Escape\n if (code === 27) {\n $this.destructLightbox();\n }\n // Left\n if (code === 37) {\n $('.meta-lightbox-prev').trigger('click');\n }\n // Right\n if (code === 39) {\n $('.meta-lightbox-next').trigger('click');\n }\n });\n }\n\n this.options.onInit.call(this);\n\n },\n\n showLightbox: function(element) {\n this.el = element;\n this.$el = $(this.el);\n\n var $this = this,\n lightbox, content, currentLink, galleryItems;\n\n this.options.beforeShowLightbox.call(this);\n\n lightbox = this.constructLightbox();\n if (!lightbox) return;\n content = lightbox.find('.meta-lightbox-content');\n if (!content) return;\n currentLink = this.$el;\n $('body').addClass(`meta-lightbox-body-effect-${ this.options.effect}`);\n\n // Add content\n this.processContent(content, currentLink);\n\n // Nav\n if (this.$el.data('lightbox-gallery')) {\n galleryItems = $(`[data-lightbox-gallery=\"${ this.$el.data('lightbox-gallery') }\"]`);\n\n if (galleryItems.length === 1) {\n $('.meta-lightbox-nav').hide();\n } else {\n $('.meta-lightbox-nav').show();\n }\n\n // Prev\n $('.meta-lightbox-prev').off('click').on('click', function(e) {\n e.preventDefault();\n var index = galleryItems.index(currentLink);\n currentLink = galleryItems.eq(index - 1);\n if (!$(currentLink).length) currentLink = galleryItems.last();\n $this.processContent(content, currentLink);\n $this.options.onPrev.call(this, [currentLink]);\n });\n\n // Next\n $('.meta-lightbox-next').off('click').on('click', function(e) {\n e.preventDefault();\n var index = galleryItems.index(currentLink);\n currentLink = galleryItems.eq(index + 1);\n if (!$(currentLink).length) currentLink = galleryItems.first();\n $this.processContent(content, currentLink);\n $this.options.onNext.call(this, [currentLink]);\n });\n }\n\n setTimeout(function() {\n lightbox.addClass('meta-lightbox-open');\n $this.options.afterShowLightbox.call(this, [lightbox]);\n }, 1); // For CSS transitions\n },\n\n processContent: function(content, link) {\n var $this = this,\n img, video, src, classTerm, iframe, wrap;\n\n href = link.attr('href');\n if (!href) {\n href = link.data('href');\n }\n\n content.html('').addClass('meta-lightbox-loading');\n\n // Is HiDPI?\n if (this.isHidpi() && link.data('lightbox-hidpi')) {\n href = link.data('lightbox-hidpi');\n }\n\n // Image\n if (href.match(/\\.(jpeg|jpg|gif|png)$/i) != null) {\n /*if ($(window).width() < 768) {\n window.open(href, '_blank');\n }*/\n img = $('<img>', {\n src: href,\n });\n img.on('load', () => {\n var wrap = $('<div class=\"meta-lightbox-image\"></div>'),\n $content = $('.meta-lightbox-content'),\n imgwrapper = $('<span class=\"meta-lightbox-zoom-wrapper\"></span>');\n\n imgwrapper.append(img);\n wrap.append(imgwrapper);\n\n // Vertically center images\n wrap.css({\n 'line-height': `${$content.height() }px`,\n 'height': `${$content.height() }px`, // For Firefox\n });\n $(window).resize(() => {\n wrap.css({\n 'line-height': `${$content.height() }px`,\n 'height': `${$content.height() }px`, // For Firefox\n });\n });\n\n if (typeof imgwrapper['zoom'] !== 'undefined') {\n imgwrapper.zoom();\n }\n\n content.html(wrap).removeClass('meta-lightbox-loading');\n $this.contentLoaded();\n\n });\n /*.each(function () {\n if (this.complete) $(this).load();\n });*/\n\n img.on('error', () => {\n var wrap = $(`<div class=\"meta-lightbox-error\"><p>${ $this.options.errorMessage }</p></div>`);\n content.html(wrap).removeClass('meta-lightbox-loading');\n $this.contentLoaded();\n });\n\n // Set the title\n if (link.data('title')) {\n $this.setTitle(link.data('title'));\n } else if (link.attr('title')) {\n $this.setTitle(link.attr('title'));\n } else {\n $('.meta-lightbox-title-wrap').html('');\n }\n\n // google analytics\n if (typeof ga === 'function') {\n ga('send', 'event', 'meta', 'Image Click', href);\n }\n }\n // Video (Youtube/Vimeo)\n else if (video = href.match(/(youtube|youtube-nocookie|youtu|vimeo)\\.(com|be)\\/(watch\\?v=([\\w-]+)|([\\w-]+))/)) {\n src = '';\n classTerm = 'meta-lightbox-video';\n\n if (video[1] == 'youtube') {\n src = `https://www.youtube.com/embed/${ video[4]}`;\n classTerm = 'meta-lightbox-youtube';\n }\n if (video[1] == 'youtu') {\n src = `https://www.youtube.com/embed/${ video[3]}`;\n classTerm = 'meta-lightbox-youtube';\n }\n if (video[1] == 'youtube-nocookie') {\n src = `https://www.youtube-nocookie.com/embed/${ video[4]}`;\n classTerm = 'nivo-lightbox-youtube';\n }\n if (video[1] == 'vimeo') {\n src = `https://player.vimeo.com/video/${ video[3]}`;\n classTerm = 'meta-lightbox-vimeo';\n }\n\n if (src) {\n iframe = $('<iframe>', {\n src,\n 'class': classTerm,\n frameborder: 0,\n vspace: 0,\n hspace: 0,\n scrolling: 'auto',\n });\n content.html(iframe);\n iframe.on('load', () => {\n content.removeClass('meta-lightbox-loading');\n $this.contentLoaded();\n });\n }\n\n // Set the title\n if (link.data('title')) {\n $this.setTitle(link.data('title'));\n } else if (link.attr('title')) {\n $this.setTitle(link.attr('title'));\n } else {\n $('.meta-lightbox-title-wrap').html('');\n }\n\n // google analytics\n if (typeof ga === 'function') {\n ga('send', 'event', 'meta', 'Video Click', video);\n }\n }\n // Inline HTML\n else if (href.substring(0, 1) == '#') {\n if ($(href).length) {\n wrap = $('<div class=\"meta-lightbox-inline\" />');\n wrap.append($(href).clone().show());\n\n // Vertically center html\n if (wrap.outerHeight() < content.height()) {\n wrap.css({\n 'position': 'relative',\n 'top': '50%',\n 'margin-top': `${-(wrap.outerHeight() / 2) }px`,\n });\n }\n $(window).resize(() => {\n if (wrap.outerHeight() < content.height()) {\n wrap.css({\n 'position': 'relative',\n 'top': '50%',\n 'margin-top': `${-(wrap.outerHeight() / 2) }px`,\n });\n }\n });\n\n content.html(wrap).removeClass('meta-lightbox-loading');\n $this.contentLoaded();\n } else {\n wrap = $(`<div class=\"meta-lightbox-error\"><p>${ $this.options.errorMessage }</p></div>`);\n content.html(wrap).removeClass('meta-lightbox-loading');\n $this.contentLoaded();\n }\n\n $('.meta-lightbox-title-wrap').html('');\n\n // google analytics\n if (typeof ga === 'function') {\n ga('send', 'event', 'meta', 'inline HTML click', href);\n }\n }\n // AJAX/iFrame (default)\n else {\n $.ajax({\n sync: false,\n async: true,\n url: href,\n dataType: 'html',\n method: 'GET',\n cache: false,\n statusCode: {\n 404: function() {\n console.log('page not found');\n window.location.href = url;\n },\n 302: function() {\n console.log('redirect 302');\n window.location.href = url;\n },\n },\n error: function(jqXHR) {\n console.log(`AJAX request failure.${ jqXHR.statusText}`);\n\n var wrap = $(`<div class=\"meta-lightbox-error\"><p>${ $this.options.errorMessage }</p></div>`);\n content.html(wrap).removeClass('meta-lightbox-loading');\n $this.contentLoaded();\n\n // google analytics\n if (typeof ga === 'function') {\n ga('send', 'event', 'error', 'AJAX ERROR', jqXHR.statusText);\n }\n },\n success: function(data, status, jqXHR) {\n try {\n const dataJson = $.parseJSON(data);\n if (typeof(dataJson) === 'object') {\n // Replace regions\n if (typeof(dataJson['regions']) === 'object' && typeof dataJson['regions']['LayoutAjax'] !== 'undefinded') {\n var wrap = $('<div class=\"meta-lightbox-ajax\" />');\n wrap.html(dataJson['regions']['LayoutAjax']);\n content.html(wrap).removeClass('meta-lightbox-loading');\n }\n\n // trigger events\n /*if (typeof (data['events']) === 'object') {\n for (var eventName in data.events) {\n $(document).trigger(eventName, [data['events'][eventName]]);\n }\n }*/\n\n\n var title = jqXHR.getResponseHeader('X-Title'),\n link = jqXHR.getResponseHeader('X-Link');\n\n if (\n title && title.length &&\n link && link.length &&\n link !== window.location.href &&\n link.substring(0, link.indexOf('#')) !== window.location.href.replace($('base').attr('href'), '/')\n ) {\n $('.meta-lightbox-ajax').data('curr-title', document.title);\n $('.meta-lightbox-ajax').data('curr-link', window.location.href);\n\n if (typeof window.localStorage !== 'undefined' && link !== '/') {\n window.localStorage.setItem('current-page', link);\n }\n\n if (\n document.URL !== link &&\n document.URL !== $('base').attr('href') + link &&\n document.URL !== `${$('base').attr('href') }/${ link}`\n ) {\n window.history.pushState({\n title,\n page: link,\n ajax: 'true',\n }, title, link);\n }\n\n // update redirect urls\n /*var pattern = new RegExp('\\\\b(redirect_uri=).*?(&|$)');\n $('a').each(function () {\n var $this = $(this);\n $this.attr('href', $this.attr('href').replace(pattern, 'redirect_uri=' + encodeURI($('base').attr('href') + link)));\n });*/\n\n $('.meta-lightbox-title-wrap').html('');\n\n // google analytics\n if (typeof ga === 'function') {\n ga('set', {\n page: link.replace($('base').attr('href'), ''),\n title,\n });\n ga('send', 'pageview');\n }\n }\n }\n } catch (e) {\n var wrap = $('<div class=\"meta-lightbox-ajax\" />');\n wrap.append(data);\n content.html(wrap).removeClass('meta-lightbox-loading');\n }\n\n // Vertically center html\n if (wrap.outerHeight() < content.height()) {\n wrap.css({\n 'position': 'relative',\n 'top': '50%',\n 'margin-top': `${-(wrap.outerHeight() / 2) }px`,\n });\n }\n $(window).resize(() => {\n if (wrap.outerHeight() < content.height()) {\n wrap.css({\n 'position': 'relative',\n 'top': '50%',\n 'margin-top': `${-(wrap.outerHeight() / 2) }px`,\n });\n }\n });\n\n setTimeout(() => {\n $(window).resize();\n\n window.imagesLoaded().then(() => {\n $(window).resize();\n });\n }, 500);\n\n $this.contentLoaded();\n },\n });\n }\n },\n\n setTitle: function(text) {\n var titleWrap = $('<div>', {\n 'class': 'meta-lightbox-title',\n });\n titleWrap.text(text);\n $('.meta-lightbox-title-wrap').html(titleWrap);\n },\n\n contentLoaded: function() {\n setTimeout(() => {\n $(window).trigger('meta-lightbox-loaded');\n }, 1); // For CSS transitions\n\n setTimeout(() => {\n $('body').addClass('meta-lightbox-body-effect-fade');\n }, 600);\n },\n\n\n\n constructLightbox: function() {\n var $this = this,\n overlay = $('<div>', {\n 'class': `meta-lightbox-overlay meta-lightbox-theme-${ this.options.theme } meta-lightbox-effect-${ this.options.effect}`,\n }),\n wrap = $('<div>', {\n 'class': 'meta-lightbox-wrap',\n }),\n content = $('<div>', {\n 'class': 'meta-lightbox-content',\n }),\n nav = $('<a href=\"#\" class=\"meta-lightbox-nav meta-lightbox-prev\"><i class=\"fa fa-chevron-left\"></i> <span class=\"sr-only\">Previous</span></a><a href=\"#\" class=\"meta-lightbox-nav meta-lightbox-next\"><i class=\"fa fa-chevron-right\"></i> <span class=\"sr-only\">Next</span></a>'),\n close = $('<a href=\"#\" class=\"meta-lightbox-close fa fa-times\" title=\"Close\"><span class=\"sr-only\">Close</span></a>'),\n title = $('<div>', {\n 'class': 'meta-lightbox-title-wrap',\n }),\n isMSIE = /*@cc_on!@*/ 0,\n $overlay = $('.meta-lightbox-overlay');\n\n if ($overlay.length) return $overlay;\n\n\n if (isMSIE) overlay.addClass('meta-lightbox-ie');\n\n wrap.append(content);\n wrap.append(title);\n overlay.append(wrap);\n overlay.append(nav);\n overlay.append(close);\n $('body').append(overlay);\n\n if ($this.options.clickOverlayToClose) {\n overlay.on('click', (e) => {\n var $target = $(e.target);\n\n if (\n $target.hasClass('meta-lightbox-zoom-wrapper') ||\n $target.hasClass('meta-lightbox-content') ||\n $target.hasClass('meta-lightbox-wrap') ||\n $target.hasClass('meta-lightbox-image') ||\n $target.hasClass('meta-lightbox-overlay')\n ) {\n $this.destructLightbox();\n }\n });\n }\n\n close.on('click', (e) => {\n e.preventDefault();\n $this.destructLightbox();\n });\n\n return overlay;\n },\n\n destructLightbox: function() {\n var $this = this,\n $overlay = $('.meta-lightbox-overlay'),\n isMSIE = /*@cc_on!@*/ 0;\n this.options.beforeHideLightbox.call(this);\n\n var title = $('.meta-lightbox-ajax').data('curr-title'),\n link = $('.meta-lightbox-ajax').data('curr-link');\n if (title && link) {\n\n if (typeof window.localStorage !== 'undefined' && link !== '/') {\n window.localStorage.setItem('current-page', link);\n }\n\n if (\n document.URL !== link &&\n document.URL !== $('base').attr('href') + link &&\n document.URL !== `${$('base').attr('href') }/${ link}`\n ) {\n window.history.replaceState({\n title,\n page: link,\n ajax: 'true',\n }, title, link);\n }\n\n // update redirect urls\n /*var pattern = new RegExp('\\\\b(redirect_uri=).*?(&|$)');\n $('a').each(function () {\n var $this = $(this);\n $this.attr('href', $this.attr('href').replace(pattern, 'redirect_uri=' + encodeURI($('base').attr('href') + link)));\n });*/\n }\n\n $overlay.removeClass('meta-lightbox-open');\n $('.meta-lightbox-nav').hide();\n $('body').removeClass(`meta-lightbox-body-effect-${ $this.options.effect}`);\n $('.meta-lightbox-content .meta-lightbox-zoom-wrapper').trigger('zoom.destroy');\n\n // For IE\n if (isMSIE) {\n $overlay.find('iframe').attr(\"src\", \" \");\n $overlay.find('iframe').remove();\n }\n $('.meta-lightbox-prev').off('click');\n\n // Remove click handlers\n $('.meta-lightbox-next').off('click');\n\n // Empty content (for videos)\n $('.meta-lightbox-content').empty();\n\n $('body').removeClass('meta-lightbox-body-effect-fade');\n\n this.options.afterHideLightbox.call(this);\n\n },\n\n isHidpi: function() {\n var mediaQuery = \"(-webkit-min-device-pixel-ratio: 1.5),\\\n (min--moz-device-pixel-ratio: 1.5),\\\n (-o-min-device-pixel-ratio: 3/2),\\\n (min-resolution: 1.5dppx)\";\n if (window.devicePixelRatio > 1) return true;\n return (window.matchMedia && window.matchMedia(mediaQuery).matches);\n },\n\n };\n\n $.fn[pluginName] = function(options) {\n return this.each(function() {\n if (!$.data(this, pluginName)) {\n $.data(this, pluginName, new MetaLightbox(this, options));\n }\n });\n };\n\n $(document).metaLightbox();\n\n})(jQuery, this, document);\n"],"sourceRoot":""}

2
dist/js/index.js vendored
View File

@ -1,2 +0,0 @@
/*! For license information please see index.js.LICENSE */
!function(t){var e={};function o(i){if(e[i])return e[i].exports;var a=e[i]={i:i,l:!1,exports:{}};return t[i].call(a.exports,a,a.exports,o),a.l=!0,a.exports}o.m=t,o.c=e,o.d=function(t,e,i){o.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:i})},o.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},o.t=function(t,e){if(1&e&&(t=o(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var i=Object.create(null);if(o.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var a in t)o.d(i,a,function(e){return t[e]}.bind(null,a));return i},o.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return o.d(e,"a",e),e},o.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},o.p="",o(o.s="./src/js/index.js")}({"./src/js/index.js":function(t,e,o){"use strict";o.r(e);o("./src/scss/index.scss"),o("./src/js/meta-lightbox.js")},"./src/js/meta-lightbox.js":function(t,e){var o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};!function(t,e,i){var a="metaLightbox",n={effect:"fade",theme:"default",keyboardNav:!0,clickOverlayToClose:!0,onInit:function(){},beforeShowLightbox:function(){},afterShowLightbox:function(t){},beforeHideLightbox:function(){},afterHideLightbox:function(){},onPrev:function(t){},onNext:function(t){},errorMessage:"The requested content cannot be loaded. Please try again later."};function l(e,o){this.options=t.extend({},n,o),this._defaults=n,this._name=a,this.init()}l.prototype={init:function(){var e=this,o=t("html");this.ajaxLoaded=!1,i.MetaLightbox=this,o.hasClass("meta-lightbox-notouch")||o.addClass("meta-lightbox-notouch"),"ontouchstart"in i&&o.removeClass("meta-lightbox-notouch"),t(i).on("click",'[data-toggle="lightbox"],[data-lightbox-gallery]',(function(t){return t.preventDefault(),t.stopPropagation(),e.showLightbox(this),!1})),this.options.keyboardNav&&t("body").off("keyup").on("keyup",(function(o){var i=o.keyCode?o.keyCode:o.which;27===i&&e.destructLightbox(),37===i&&t(".meta-lightbox-prev").trigger("click"),39===i&&t(".meta-lightbox-next").trigger("click")})),this.options.onInit.call(this)},showLightbox:function(e){this.el=e,this.$el=t(this.el);var o,i,a,n,l=this;this.options.beforeShowLightbox.call(this),(o=this.constructLightbox())&&(i=o.find(".meta-lightbox-content"))&&(a=this.$el,t("body").addClass("meta-lightbox-body-effect-"+this.options.effect),this.processContent(i,a),this.$el.data("lightbox-gallery")&&(1===(n=t('[data-lightbox-gallery="'+this.$el.data("lightbox-gallery")+'"]')).length?t(".meta-lightbox-nav").hide():t(".meta-lightbox-nav").show(),t(".meta-lightbox-prev").off("click").on("click",(function(e){e.preventDefault();var o=n.index(a);a=n.eq(o-1),t(a).length||(a=n.last()),l.processContent(i,a),l.options.onPrev.call(this,[a])})),t(".meta-lightbox-next").off("click").on("click",(function(e){e.preventDefault();var o=n.index(a);a=n.eq(o+1),t(a).length||(a=n.first()),l.processContent(i,a),l.options.onNext.call(this,[a])}))),setTimeout((function(){o.addClass("meta-lightbox-open"),l.options.afterShowLightbox.call(this,[o])}),1))},processContent:function(a,n){var l,s,r,h,c,g,d=this;href=n.attr("href"),href||(href=n.data("href")),a.html("").addClass("meta-lightbox-loading"),this.isHidpi()&&n.data("lightbox-hidpi")&&(href=n.data("lightbox-hidpi")),null!=href.match(/\.(jpeg|jpg|gif|png)$/i)?((l=t("<img>",{src:href})).on("load",(function(){var o=t('<div class="meta-lightbox-image"></div>'),i=t(".meta-lightbox-content"),n=t('<span class="meta-lightbox-zoom-wrapper"></span>');n.append(l),o.append(n),o.css({"line-height":i.height()+"px",height:i.height()+"px"}),t(e).resize((function(){o.css({"line-height":i.height()+"px",height:i.height()+"px"})})),void 0!==n.zoom&&n.zoom(),a.html(o).removeClass("meta-lightbox-loading"),d.contentLoaded()})),l.on("error",(function(){var e=t('<div class="meta-lightbox-error"><p>'+d.options.errorMessage+"</p></div>");a.html(e).removeClass("meta-lightbox-loading"),d.contentLoaded()})),n.data("title")?d.setTitle(n.data("title")):n.attr("title")?d.setTitle(n.attr("title")):t(".meta-lightbox-title-wrap").html(""),"function"==typeof ga&&ga("send","event","meta","Image Click",href)):(s=href.match(/(youtube|youtube-nocookie|youtu|vimeo)\.(com|be)\/(watch\?v=([\w-]+)|([\w-]+))/))?(r="",h="meta-lightbox-video","youtube"==s[1]&&(r="https://www.youtube.com/embed/"+s[4],h="meta-lightbox-youtube"),"youtu"==s[1]&&(r="https://www.youtube.com/embed/"+s[3],h="meta-lightbox-youtube"),"youtube-nocookie"==s[1]&&(r="https://www.youtube-nocookie.com/embed/"+s[4],h="nivo-lightbox-youtube"),"vimeo"==s[1]&&(r="https://player.vimeo.com/video/"+s[3],h="meta-lightbox-vimeo"),r&&(c=t("<iframe>",{src:r,class:h,frameborder:0,vspace:0,hspace:0,scrolling:"auto"}),a.html(c),c.on("load",(function(){a.removeClass("meta-lightbox-loading"),d.contentLoaded()}))),n.data("title")?d.setTitle(n.data("title")):n.attr("title")?d.setTitle(n.attr("title")):t(".meta-lightbox-title-wrap").html(""),"function"==typeof ga&&ga("send","event","meta","Video Click",s)):"#"==href.substring(0,1)?(t(href).length?((g=t('<div class="meta-lightbox-inline" />')).append(t(href).clone().show()),g.outerHeight()<a.height()&&g.css({position:"relative",top:"50%","margin-top":-g.outerHeight()/2+"px"}),t(e).resize((function(){g.outerHeight()<a.height()&&g.css({position:"relative",top:"50%","margin-top":-g.outerHeight()/2+"px"})})),a.html(g).removeClass("meta-lightbox-loading"),d.contentLoaded()):(g=t('<div class="meta-lightbox-error"><p>'+d.options.errorMessage+"</p></div>"),a.html(g).removeClass("meta-lightbox-loading"),d.contentLoaded()),t(".meta-lightbox-title-wrap").html(""),"function"==typeof ga&&ga("send","event","meta","inline HTML click",href)):t.ajax({sync:!1,async:!0,url:href,dataType:"html",method:"GET",cache:!1,statusCode:{404:function(){console.log("page not found"),e.location.href=url},302:function(){console.log("redirect 302"),e.location.href=url}},error:function(e){console.log("AJAX request failure."+e.statusText);var o=t('<div class="meta-lightbox-error"><p>'+d.options.errorMessage+"</p></div>");a.html(o).removeClass("meta-lightbox-loading"),d.contentLoaded(),"function"==typeof ga&&ga("send","event","error","AJAX ERROR",e.statusText)},success:function(n,l,s){try{var r=t.parseJSON(n);if("object"===(void 0===r?"undefined":o(r))){if("object"===o(r.regions)&&"undefinded"!=typeof r.regions.LayoutAjax)(g=t('<div class="meta-lightbox-ajax" />')).html(r.regions.LayoutAjax),a.html(g).removeClass("meta-lightbox-loading");var h=s.getResponseHeader("X-Title"),c=s.getResponseHeader("X-Link");h&&h.length&&c&&c.length&&c!==e.location.href&&c.substring(0,c.indexOf("#"))!==e.location.href.replace(t("base").attr("href"),"/")&&(t(".meta-lightbox-ajax").data("curr-title",i.title),t(".meta-lightbox-ajax").data("curr-link",e.location.href),void 0!==e.localStorage&&"/"!==c&&e.localStorage.setItem("current-page",c),i.URL!==c&&i.URL!==t("base").attr("href")+c&&i.URL!==t("base").attr("href")+"/"+c&&e.history.pushState({title:h,page:c,ajax:"true"},h,c),t(".meta-lightbox-title-wrap").html(""),"function"==typeof ga&&(ga("set",{page:c.replace(t("base").attr("href"),""),title:h}),ga("send","pageview")))}}catch(e){var g;(g=t('<div class="meta-lightbox-ajax" />')).append(n),a.html(g).removeClass("meta-lightbox-loading")}g.outerHeight()<a.height()&&g.css({position:"relative",top:"50%","margin-top":-g.outerHeight()/2+"px"}),t(e).resize((function(){g.outerHeight()<a.height()&&g.css({position:"relative",top:"50%","margin-top":-g.outerHeight()/2+"px"})})),setTimeout((function(){t(e).resize(),e.imagesLoaded().then((function(){t(e).resize()}))}),500),d.contentLoaded()}})},setTitle:function(e){var o=t("<div>",{class:"meta-lightbox-title"});o.text(e),t(".meta-lightbox-title-wrap").html(o)},contentLoaded:function(){setTimeout((function(){t(e).trigger("meta-lightbox-loaded")}),1),setTimeout((function(){t("body").addClass("meta-lightbox-body-effect-fade")}),600)},constructLightbox:function(){var e=this,o=t("<div>",{class:"meta-lightbox-overlay meta-lightbox-theme-"+this.options.theme+" meta-lightbox-effect-"+this.options.effect}),i=t("<div>",{class:"meta-lightbox-wrap"}),a=t("<div>",{class:"meta-lightbox-content"}),n=t('<a href="#" class="meta-lightbox-nav meta-lightbox-prev"><i class="fa fa-chevron-left"></i> <span class="sr-only">Previous</span></a><a href="#" class="meta-lightbox-nav meta-lightbox-next"><i class="fa fa-chevron-right"></i> <span class="sr-only">Next</span></a>'),l=t('<a href="#" class="meta-lightbox-close fa fa-times" title="Close"><span class="sr-only">Close</span></a>'),s=t("<div>",{class:"meta-lightbox-title-wrap"}),r=t(".meta-lightbox-overlay");return r.length?r:(i.append(a),i.append(s),o.append(i),o.append(n),o.append(l),t("body").append(o),e.options.clickOverlayToClose&&o.on("click",(function(o){var i=t(o.target);(i.hasClass("meta-lightbox-zoom-wrapper")||i.hasClass("meta-lightbox-content")||i.hasClass("meta-lightbox-wrap")||i.hasClass("meta-lightbox-image")||i.hasClass("meta-lightbox-overlay"))&&e.destructLightbox()})),l.on("click",(function(t){t.preventDefault(),e.destructLightbox()})),o)},destructLightbox:function(){var o=t(".meta-lightbox-overlay");this.options.beforeHideLightbox.call(this);var a=t(".meta-lightbox-ajax").data("curr-title"),n=t(".meta-lightbox-ajax").data("curr-link");a&&n&&(void 0!==e.localStorage&&"/"!==n&&e.localStorage.setItem("current-page",n),i.URL!==n&&i.URL!==t("base").attr("href")+n&&i.URL!==t("base").attr("href")+"/"+n&&e.history.replaceState({title:a,page:n,ajax:"true"},a,n)),o.removeClass("meta-lightbox-open"),t(".meta-lightbox-nav").hide(),t("body").removeClass("meta-lightbox-body-effect-"+this.options.effect),t(".meta-lightbox-content .meta-lightbox-zoom-wrapper").trigger("zoom.destroy"),t(".meta-lightbox-prev").off("click"),t(".meta-lightbox-next").off("click"),t(".meta-lightbox-content").empty(),t("body").removeClass("meta-lightbox-body-effect-fade"),this.options.afterHideLightbox.call(this)},isHidpi:function(){return e.devicePixelRatio>1||e.matchMedia&&e.matchMedia("(-webkit-min-device-pixel-ratio: 1.5), (min--moz-device-pixel-ratio: 1.5), (-o-min-device-pixel-ratio: 3/2), (min-resolution: 1.5dppx)").matches}},t.fn[a]=function(e){return this.each((function(){t.data(this,a)||t.data(this,a,new l(this,e))}))},t(i).metaLightbox()}(jQuery,this,document)},"./src/scss/index.scss":function(t,e){}});

162
package.json Normal file → Executable file
View File

@ -1,8 +1,17 @@
{
"name": "@a2nt/meta-lightbox",
"version": "1.2.2",
"version": "1.2.4",
"description": "Universal Lightbox window",
"main": "meta-lightbox.js",
"author": "Tony Air <tony@twma.pro>",
"license": "BSD-2-Clause",
"repository": {
"type": "git",
"url": "git+https://github.com/a2nt/meta-lightbox.git"
},
"engines": {
"yarn": ">= 1.0.0"
},
"scripts": {
"start": "cross-env NODE_ENV=development webpack-dev-server --https -d --config webpack.config.js",
"dash": "cross-env NODE_ENV=development webpack-dashboard -- webpack-dev-server --config webpack.config.js",
@ -12,70 +21,89 @@
"lint:js": "eslint ./src --config .eslintrc",
"lint:sass": "sass-lint ./src --config .sasslintrc -v -q",
"prebuild": "yarn lint:fix && rimraf dist",
"prepare": "yarn lint:fix && yarn build"
"prepare": "yarn lint:fix && yarn build",
"prunecaches": "rimraf ./node_modules/.cache/",
"postinstall": "npm run prunecaches",
"postuninstall": "npm run prunecaches"
},
"repository": {
"type": "git",
"url": "git+https://github.com/a2nt/meta-lightbox.git"
},
"keywords": [
"lightbox",
"jquery"
],
"author": "Tony Air <tony@twma.pro>",
"license": "BSD-2-Clause",
"bugs": {
"url": "https://github.com/a2nt/meta-lightbox/issues"
},
"homepage": "https://github.com/a2nt/meta-lightbox#readme",
"publishConfig": {
"registry": "https://npm.pkg.github.com/"
},
"browserslist": [
"defaults"
],
"dependencies": {
"@a2nt/meta-lightbox": "^1.2.2",
"@google/markerclusterer": "^1.0.3",
"animate.css": "^3.7.0",
"bootbox": "^4.4.0",
"bootstrap": "^4.4.1",
"bootstrap-confirmation2": "^4.1.0",
"bootstrap-datepicker": "^1.9.0",
"bootstrap-offcanvas": "^1.0.0",
"bootstrap-table": "^1.16.0",
"bootstrap-timepicker": "^0.5.2",
"browserslist": "^4.8.6",
"caniuse-lite": "^1.0.30001027",
"core-util-is": "^1.0.2",
"croppie": "^2.6.4",
"exif-js": "^2.3.0",
"font-awesome": "^4.7.0",
"foundation-emails": "^2.2.1",
"gijgo": "^1.9.13",
"inputmask": "^5.0.3",
"jquery": "^3.4.1",
"jquery-hammerjs": "^2.0.0",
"jquery-hoverintent": "^1.10.1",
"jquery-zoom": "^1.7.21",
"jquery.appear": "^1.0.1",
"jquery.inputmask": "^3.3.4",
"yarn": "^1.17.3"
"laravel-mix": "^4.1.2",
"mapbox-gl": "^1.7.0",
"offcanvas-bootstrap": "^2.5.2",
"popper.js": "^1.16.1",
"pouchdb": "^6.4.3",
"quill": "^1.3.7",
"react-bootstrap4-form-validation": "^1.0.10",
"routie": "0.0.1",
"select2": "^4.0.13",
"smooth-scroll": "^14.2.1",
"sticky-sidebar": "^3.3.1",
"yarn": "^1.22.0"
},
"devDependencies": {
"@a2nt/image-sprite-webpack-plugin": "^0.2.5",
"@babel/core": "^7.8.4",
"@babel/plugin-proposal-object-rest-spread": "^7.8.3",
"@babel/plugin-transform-react-jsx": "*",
"@babel/preset-env": "^7.8.4",
"autoprefixer": "^7.2.5",
"babel-core": "^6.26.3",
"babel-eslint": "^8.2.6",
"babel-loader": "^7.1.2",
"babel-plugin-transform-react-jsx": "^6.24.1",
"babel-preset-es2015": "^6.24.1",
"babel-preset-react": "^6.24.1",
"babel-preset-stage-2": "^6.24.1",
"babel-loader": "^8.0.6",
"browser-sync": "^2.24.5",
"browser-sync-webpack-plugin": "^2.2.2",
"copy-webpack-plugin": "^4.6.0",
"copyfiles": "^1.2.0",
"cross-env": "^5.1.6",
"css-loader": "^3.2.0",
"css-loader": "^3.4.2",
"eslint": "^4.18.1",
"eslint-plugin-import": "^2.18.2",
"eslint-plugin-import": "^2.20.1",
"eslint-plugin-jquery": "^1.5.1",
"eslint-plugin-react": "^7.14.3",
"eslint-plugin-react": "^7.18.3",
"exports-loader": "^0.7.0",
"extract-text-webpack-plugin": "^4.0.0-beta.0",
"favicons-webpack-plugin": "^1.0.2",
"file-loader": "^1.1.5",
"hard-source-webpack-plugin": "^0.13.1",
"html-loader": "^0.5.5",
"html-webpack-plugin": "^4.0.0-beta.8",
"html-webpack-plugin": "^4.0.0-beta.11",
"imagemin-gifsicle": "^7.0.0",
"imagemin-jpegtran": "^6.0.0",
"imagemin-optipng": "^7.1.0",
"imagemin-svgo": "^7.0.0",
"imagemin-webpack": "^5.1.1",
"loglevel": "^1.6.7",
"lost": "^8.3.1",
"material-design-color": "^2.3.2",
"node-sass": "^4.12.0",
"node-sass": "^4.13.1",
"object-assign": "^4.1.1",
"optimize-css-assets-webpack-plugin": "^5.0.3",
"postcss-loader": "^2.1.5",
"react": "^16.9.0",
"react-dom": "^16.9.0",
"react": "^16.12.0",
"react-dom": "^16.12.0",
"react-hot-loader": "^3.1.3",
"redux": "^3.7.2",
"redux-devtools-extension": "^2.13.8",
@ -87,14 +115,62 @@
"script-ext-html-webpack-plugin": "^2.1.4",
"style-loader": "^0.19.0",
"svg-url-loader": "^2.3.3",
"terser-webpack-plugin": "^2.1.3",
"uglify-js": "git://github.com/mishoo/UglifyJS2.git#harmony-v2.8.22",
"uglifyjs-webpack-plugin": "^2.2.0",
"terser-webpack-plugin": "^2.3.4",
"url-loader": "^0.6.2",
"webpack": "^4.39.1",
"webpack-cli": "^3.3.6",
"webpack-dev-server": "^3.8.0",
"webpack": "^4.41.6",
"webpack-cli": "^3.3.11",
"webpack-dev-server": "^3.10.3",
"webpack-manifest-plugin": "^1.3.2",
"webpack-merge": "^4.1.1"
},
"publishConfig": {
"registry": "https://npm.pkg.github.com/"
},
"browserslist": [
"defaults",
"ie>=11"
],
"stylelint": {
"rules": {
"block-no-empty": null,
"color-no-invalid-hex": true,
"comment-empty-line-before": [
"always",
{
"ignore": [
"stylelint-commands",
"after-comment"
]
}
],
"declaration-colon-space-after": "always",
"indentation": [
4,
{
"except": [
"value"
]
}
],
"max-empty-lines": 2,
"rule-empty-line-before": [
"always",
{
"except": [
"first-nested"
],
"ignore": [
"after-comment"
]
}
],
"unit-whitelist": [
"em",
"rem",
"%",
"s",
"px"
]
}
}
}

0
src/html/meta-lightbox.html Normal file → Executable file
View File

0
src/img/photo3.svg Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 100 KiB

After

Width:  |  Height:  |  Size: 100 KiB

0
src/index.html Normal file → Executable file
View File

0
src/js/index.js Normal file → Executable file
View File

0
src/js/todo.js Normal file → Executable file
View File

22
src/scss/_variables.scss Executable file
View File

@ -0,0 +1,22 @@
$white: #fff !default;
$black: #000 !default;
$lightbox-link-hover-color: #007bff !default;
$lightbox-breakpoint: 576px !default;
$grid-breakpoints: (
xs: 0,
sm: 576px,
md: 768px,
lg: 992px,
xl: 1200px,
xxl: 1390px,
xxxl: 1590px
) !default;
$container-max-widths: (
sm: 540px,
md: 720px,
lg: 960px,
xl: 1140px,
xxl: 1330px,
xxxl: 1560px
) !default;

View File

@ -1,6 +1,3 @@
$lightbox-link-hover-color: #007bff !default;
$lightbox-breakpoint: 576px !default;
.meta-lightbox-theme-default.meta-lightbox-overlay {
background: #666;
background: rgba(0, 0, 0, 0.6);
@ -8,16 +5,19 @@ $lightbox-breakpoint: 576px !default;
.meta-lightbox-theme-default .meta-lightbox-nav {
top: 10%;
width: 8%;
width: 20%;
height: 80%;
background-repeat: no-repeat;
background-position: 50% 50%;
opacity: 0.5;
color: #fff;
color: $white;
font-size: 3em;
text-decoration: none;
text-shadow: 1px 1px 0 #000;
text-shadow: 1px 1px 0 $black;
@media (min-width: map-get($grid-breakpoints, 'sm')) {
width: 8%;
}
.fa {
position: absolute;
top: 50%;
@ -29,17 +29,17 @@ $lightbox-breakpoint: 576px !default;
&:hover {
color: $lightbox-link-hover-color;
opacity: 1;
background-color: rgba(0, 0, 0, 0.5);
background-color: transparentize($black, 0.5);
}
}
.meta-lightbox-theme-default .meta-lightbox-close {
display: block;
opacity: 0.5;
color: #fff;
color: $white;
text-decoration: none;
font-size: 2em;
text-shadow: 1px 1px 0 #000;
text-shadow: 1px 1px 0 $black;
text-align: center;
width: 1.2em;
height: 1.2em;
@ -47,21 +47,21 @@ $lightbox-breakpoint: 576px !default;
&:focus {
color: $lightbox-link-hover-color;
opacity: 1;
background-color: rgba(0, 0, 0, 0.5);
background-color: transparentize($black, 0.5);
}
}
.meta-lightbox-theme-default .meta-lightbox-title {
background: #000;
color: #fff;
background: $black;
color: $white;
padding: 7px 15px;
}
.meta-lightbox-theme-default .meta-lightbox-ajax,
.meta-lightbox-theme-default .meta-lightbox-inline {
background: #fff;
background: $white;
padding: 2em;
box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.4);
box-shadow: 0px 1px 1px transparentize($black, 0.4);
}
@media (max-width: $lightbox-breakpoint) {
@ -78,7 +78,7 @@ $lightbox-breakpoint: 576px !default;
font-size: 2em;
.fa {
margin-left: -.4em;
margin-left: -0.4em;
}
}

View File

@ -1,3 +1,5 @@
@import '_variables';
.meta-lightbox-overlay {
position: fixed;
top: 0;
@ -34,14 +36,14 @@
width: 100%;
&:after {
color: #fff;
color: $white;
font: normal normal normal 14px/1 FontAwesome;
content: "\f00e";
content: '\f00e';
position: absolute;
right: 1em;
bottom: 1em;
right: 1em;
text-shadow: 1px 1px 1px #000;
text-shadow: 1px 1px 1px $black;
}
}
}
@ -105,8 +107,8 @@
text-align: center;
width: 100%;
height: 100%;
color: #fff;
text-shadow: 0 1px 1px #000;
color: $white;
text-shadow: 0 1px 1px $black;
}
.meta-lightbox-error p {
@ -184,4 +186,4 @@
transform: translateZ(0);
}
@import "meta-lightbox-theme";
@import 'meta-lightbox-theme';

321
webpack.config.js Normal file → Executable file
View File

@ -1,169 +1,276 @@
const COMPRESS = true;
const SOURCEDIR = './src';
const COMPRESS = false;
const HtmlWebpackPlugin = require('html-webpack-plugin');
const webpack = require('webpack');
const path = require('path');
const filesystem = require('fs');
const autoprefixer = require('autoprefixer');
const HardSourceWebpackPlugin = require('hard-source-webpack-plugin');
const ExtractTextPlugin = require('extract-text-webpack-plugin');
const TerserPlugin = require('terser-webpack-plugin');
const OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin');
const ImageminPlugin = require('imagemin-webpack');
const ImageSpritePlugin = require('@a2nt/image-sprite-webpack-plugin');
const plugins = [
new webpack.DefinePlugin({
'process.env': {
'NODE_ENV': JSON.stringify('production')
}
NODE_ENV: JSON.stringify('production'),
},
}),
new HardSourceWebpackPlugin(),
new webpack.LoaderOptionsPlugin({
minimize: COMPRESS,
debug: false
debug: false,
}),
new ExtractTextPlugin({
filename: 'css/[name].css',
allChunks: true
allChunks: true,
}),
/**/
new HtmlWebpackPlugin({
template: './src/index.html'
template: './src/index.html',
}),
];
if (COMPRESS) {
plugins.push(new OptimizeCssAssetsPlugin({
//assetNameRegExp: /\.optimize\.css$/g,
cssProcessor: require('cssnano'),
cssProcessorPluginOptions: {
preset: ['default', {
plugins.push(
new OptimizeCssAssetsPlugin({
//assetNameRegExp: /\.optimize\.css$/g,
cssProcessor: require('cssnano'),
cssProcessorPluginOptions: {
preset: ['default'],
},
cssProcessorOptions: {
zindex: true,
cssDeclarationSorter: true,
reduceIdents: false,
mergeIdents: true,
mergeRules: true,
mergeLonghand: true,
discardUnused: true,
discardOverridden: true,
discardDuplicates: true,
discardComments: {
removeAll: true
removeAll: true,
},
},
canPrint: true,
}),
);
plugins.push(
new ImageminPlugin({
bail: false, // Ignore errors on corrupted images
cache: true,
filter: (source, sourcePath) => {
if (source.byteLength < 512000) {
return false;
}
}],
},
canPrint: true
}));
return true;
},
imageminOptions: {
plugins: [
['gifsicle', { interlaced: true }],
['jpegtran', { progressive: true }],
['optipng', { optimizationLevel: 5 }],
[
'svgo',
{
plugins: [
{
removeViewBox: false,
},
],
},
],
],
},
}),
);
plugins.push(
new ImageSpritePlugin({
exclude: /exclude|original|default-|icons|sprite/,
commentOrigin: false,
compress: true,
extensions: ['png'],
indent: '',
log: true,
//outputPath: path.join(__dirname, conf.APPDIR, conf.DIST),
outputFilename: 'img/sprite-[hash].png',
padding: 0,
}),
);
}
const includes = {
app: './src/js/index.js',
};
module.exports = {
entry: './src/js/index.js',
entry: includes,
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'js/index.js'
filename: path.join('js', '[name].js'),
publicPath: path.resolve(__dirname, 'dist'),
},
devtool: (COMPRESS ? '' : 'source-map'),
devtool: COMPRESS ? '' : 'source-map',
externals: {
'jquery': 'jQuery',
jquery: 'jQuery',
},
optimization: {
namedModules: true, // NamedModulesPlugin()
splitChunks: { // CommonsChunkPlugin()
splitChunks: {
// CommonsChunkPlugin()
name: 'vendor',
minChunks: 2
minChunks: 2,
},
noEmitOnErrors: true, // NoEmitOnErrorsPlugin
concatenateModules: true, //ModuleConcatenationPlugin
minimizer: [
new TerserPlugin({
parallel: true,
sourceMap: !COMPRESS,
terserOptions: {
parse: {
// we want terser to parse ecma 8 code. However, we don't want it
// to apply any minfication steps that turns valid ecma 5 code
// into invalid ecma 5 code. This is why the 'compress' and 'output'
// sections only apply transformations that are ecma 5 safe
// https://github.com/facebook/create-react-app/pull/4234
ecma: 8,
},
compress: {
ecma: 5,
warnings: false,
// Disabled because of an issue with Uglify breaking seemingly valid code:
// https://github.com/facebook/create-react-app/issues/2376
// Pending further investigation:
// https://github.com/mishoo/UglifyJS2/issues/2011
comparisons: false,
},
mangle: {
safari10: true,
},
output: {
ecma: 5,
comments: false,
// Turned on because emoji and regex is not minified properly using default
// https://github.com/facebook/create-react-app/issues/2488
ascii_only: true,
},
},
// Use multi-process parallel running to improve the build speed
// Default number of concurrent runs: os.cpus().length - 1
parallel: true,
// Enable file caching
cache: true,
}),
]
],
},
module: {
rules: [{
test: /\.jsx?$/,
exclude: /node_modules/,
use: {
loader: 'babel-loader',
options: {
presets: [
['es2015', {
modules: false,
}],
['stage-2'],
],
plugins: [
['transform-react-jsx'],
['react-hot-loader/babel'],
],
rules: [
{
test: /\.jsx?$/,
//exclude: /node_modules/,
use: {
loader: 'babel-loader',
options: {
presets: ['@babel/preset-env'], //Preset used for env setup
plugins: [
['@babel/transform-react-jsx'],
['react-hot-loader/babel'],
],
cacheDirectory: true,
cacheCompression: false,
},
},
},
}, {
test: /\.tsx?$/,
use: 'ts-loader',
exclude: /node_modules/,
}, {
test: /\.coffee?$/,
use: 'coffee-loader',
}, {
test: /\.worker\.js$/,
use: {
loader: 'worker-loader',
/*{
test: /\.tsx?$/,
use: 'ts-loader',
exclude: /node_modules/,
},
}, {
test: /\.s?css$/,
use: ExtractTextPlugin.extract({
fallback: "style-loader",
use: [{
loader: 'css-loader',
options: {
sourceMap: !COMPRESS
}
}, {
loader: 'postcss-loader',
options: {
sourceMap: !COMPRESS,
plugins: [
autoprefixer()
]
}
}, {
loader: 'resolve-url-loader'
}, {
loader: 'sass-loader',
options: {
sourceMap: !COMPRESS
}
}, ]
})
}, {
test: /fontawesome([^.]+).(ttf|otf|eot|svg|woff(2)?)(\?[a-z0-9]+)?$/,
use: [{
{
test: /\.coffee?$/,
use: 'coffee-loader',
},*/
{
test: /\.worker\.js$/,
use: {
loader: 'worker-loader',
},
},
{
test: /\.s?css$/,
use: ExtractTextPlugin.extract({
fallback: 'style-loader',
use: [
{
loader: 'css-loader',
options: {
sourceMap: !COMPRESS,
},
},
{
loader: 'postcss-loader',
options: {
sourceMap: !COMPRESS,
plugins: [autoprefixer()],
},
},
{
loader: 'resolve-url-loader',
},
{
loader: 'sass-loader',
options: {
sourceMap: !COMPRESS,
},
},
],
}),
},
{
test: /fontawesome([^.]+).(ttf|otf|eot|svg|woff(2)?)(\?[a-z0-9]+)?$/,
use: [
{
loader: 'file-loader',
options: {
name: '[name].[ext]',
outputPath: 'fonts/',
publicPath: '../fonts/',
},
},
],
},
{
test: /\.(ttf|otf|eot|svg|woff(2)?)$/,
use: [
{
loader: 'file-loader',
options: {
name: '[name].[ext]',
outputPath: 'fonts/',
publicPath: '../fonts/',
},
},
],
},
{
test: /\.(png|jpg|jpeg|gif|svg)$/,
loader: 'file-loader',
options: {
name: '[name].[ext]',
outputPath: 'fonts/',
publicPath: '../fonts/'
}
}]
}, {
test: /\.(ttf|otf|eot|svg|woff(2)?)$/,
use: [{
loader: 'file-loader',
options: {
name: '[name].[ext]',
outputPath: 'fonts/',
publicPath: '../fonts/'
}
}]
}, {
test: /\.(png|jpg|jpeg|gif|svg)$/,
loader: 'file-loader',
options: {
name: '[name].[ext]',
outputPath: 'img/',
publicPath: '../img/'
outputPath: 'img/',
publicPath: '../img/',
},
},
}, ],
],
},
resolve: {
modules: [
@ -171,8 +278,8 @@ module.exports = {
path.resolve(__dirname, 'node_modules'),
],
alias: {
'jquery': require.resolve('jquery'),
'jQuery': require.resolve('jquery'),
jquery: require.resolve('jquery'),
jQuery: require.resolve('jquery'),
},
},
plugins: plugins,
@ -191,10 +298,10 @@ module.exports = {
//watchContentBase: true,
overlay: {
warnings: true,
errors: true
errors: true,
},
headers: {
'Access-Control-Allow-Origin': '*',
}
},
},
};