lightgallery 2.3.0-beta.2 → 2.4.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -0
- package/angular/10/bundles/lightgallery-angular-10.umd.js +34 -1
- package/angular/10/bundles/lightgallery-angular-10.umd.js.map +1 -1
- package/angular/10/bundles/lightgallery-angular-10.umd.min.js +1 -1
- package/angular/10/bundles/lightgallery-angular-10.umd.min.js.map +1 -1
- package/angular/10/esm2015/lib/lightgallery-angular.component.js +35 -2
- package/angular/10/fesm2015/lightgallery-angular-10.js +34 -1
- package/angular/10/fesm2015/lightgallery-angular-10.js.map +1 -1
- package/angular/10/lib/lightgallery-angular.component.d.ts +6 -2
- package/angular/10/lib/lightgallery-angular.component.d.ts.map +1 -1
- package/angular/11/bundles/lightgallery-angular-11.umd.js +34 -1
- package/angular/11/bundles/lightgallery-angular-11.umd.js.map +1 -1
- package/angular/11/bundles/lightgallery-angular-11.umd.min.js +1 -1
- package/angular/11/bundles/lightgallery-angular-11.umd.min.js.map +1 -1
- package/angular/11/esm2015/lib/lightgallery-angular.component.js +35 -2
- package/angular/11/fesm2015/lightgallery-angular-11.js +34 -1
- package/angular/11/fesm2015/lightgallery-angular-11.js.map +1 -1
- package/angular/11/lib/lightgallery-angular.component.d.ts +6 -2
- package/angular/11/lib/lightgallery-angular.component.d.ts.map +1 -1
- package/angular/9/bundles/lightgallery-angular-9.umd.js +34 -1
- package/angular/9/bundles/lightgallery-angular-9.umd.js.map +1 -1
- package/angular/9/bundles/lightgallery-angular-9.umd.min.js +1 -1
- package/angular/9/bundles/lightgallery-angular-9.umd.min.js.map +1 -1
- package/angular/9/esm2015/lib/lightgallery-angular.component.js +35 -2
- package/angular/9/esm5/lib/lightgallery-angular.component.js +35 -2
- package/angular/9/fesm2015/lightgallery-angular-9.js +34 -1
- package/angular/9/fesm2015/lightgallery-angular-9.js.map +1 -1
- package/angular/9/fesm5/lightgallery-angular-9.js +34 -1
- package/angular/9/fesm5/lightgallery-angular-9.js.map +1 -1
- package/angular/9/lib/lightgallery-angular.component.d.ts +6 -2
- package/angular/bundles/lightgallery-angular.umd.js +34 -1
- package/angular/bundles/lightgallery-angular.umd.js.map +1 -1
- package/angular/esm2015/lib/lightgallery-angular.component.js +35 -2
- package/angular/fesm2015/lightgallery-angular.js +34 -1
- package/angular/fesm2015/lightgallery-angular.js.map +1 -1
- package/angular/lib/lightgallery-angular.component.d.ts +6 -2
- package/angular/lib/lightgallery-angular.component.d.ts.map +1 -1
- package/css/lightgallery-bundle.css +19 -27
- package/css/lightgallery-bundle.min.css +1 -1
- package/css/lightgallery-core.css +0 -20
- package/css/lightgallery.css +19 -27
- package/lg-events.d.ts +44 -0
- package/lg-settings.d.ts +20 -8
- package/lg-utils.d.ts +16 -4
- package/lib/lg-events.js +3 -0
- package/lib/lg-events.js.map +1 -1
- package/lib/lg-settings.js +12 -2
- package/lib/lg-settings.js.map +1 -1
- package/lib/lg-utils.js +4 -4
- package/lib/lg-utils.js.map +1 -1
- package/lib/lgQuery.js +31 -20
- package/lib/lgQuery.js.map +1 -1
- package/lib/lightgallery.js +30 -19
- package/lib/lightgallery.js.map +1 -1
- package/lib/plugins/autoplay/lg-autoplay-settings.js +1 -0
- package/lib/plugins/autoplay/lg-autoplay-settings.js.map +1 -1
- package/lib/plugins/autoplay/lg-autoplay.js +20 -11
- package/lib/plugins/autoplay/lg-autoplay.js.map +1 -1
- package/lib/plugins/comment/lg-comment-settings.js +1 -0
- package/lib/plugins/comment/lg-comment-settings.js.map +1 -1
- package/lib/plugins/comment/lg-comment.js +1 -1
- package/lib/plugins/comment/lg-comment.js.map +1 -1
- package/lib/plugins/fullscreen/lg-fullscreen-settings.js +1 -0
- package/lib/plugins/fullscreen/lg-fullscreen-settings.js.map +1 -1
- package/lib/plugins/fullscreen/lg-fullscreen.js +1 -2
- package/lib/plugins/fullscreen/lg-fullscreen.js.map +1 -1
- package/lib/plugins/rotate/lg-rotate-settings.js +6 -0
- package/lib/plugins/rotate/lg-rotate-settings.js.map +1 -1
- package/lib/plugins/rotate/lg-rotate.js +4 -8
- package/lib/plugins/rotate/lg-rotate.js.map +1 -1
- package/lib/plugins/share/lg-share-settings.js +1 -0
- package/lib/plugins/share/lg-share-settings.js.map +1 -1
- package/lib/plugins/share/lg-share.js +1 -1
- package/lib/plugins/share/lg-share.js.map +1 -1
- package/lib/plugins/thumbnail/lg-thumbnail-settings.js +1 -0
- package/lib/plugins/thumbnail/lg-thumbnail-settings.js.map +1 -1
- package/lib/plugins/thumbnail/lg-thumbnail.js +3 -1
- package/lib/plugins/thumbnail/lg-thumbnail.js.map +1 -1
- package/lib/plugins/zoom/lg-zoom-settings.js +5 -0
- package/lib/plugins/zoom/lg-zoom-settings.js.map +1 -1
- package/lib/plugins/zoom/lg-zoom.js +2 -2
- package/lib/plugins/zoom/lg-zoom.js.map +1 -1
- package/lightgallery.d.ts +1 -1
- package/lightgallery.es5.js +174 -139
- package/lightgallery.es5.js.map +1 -1
- package/lightgallery.min.js +2 -2
- package/lightgallery.umd.js +174 -139
- package/lightgallery.umd.js.map +1 -1
- package/lit/lightgallery.esm.js +7 -7
- package/lit/lightgallery.umd.js +3 -3
- package/package.json +1 -1
- package/plugins/autoplay/lg-autoplay-settings.d.ts +6 -0
- package/plugins/autoplay/lg-autoplay.d.ts +2 -2
- package/plugins/autoplay/lg-autoplay.es5.js +25 -12
- package/plugins/autoplay/lg-autoplay.es5.js.map +1 -1
- package/plugins/autoplay/lg-autoplay.min.js +2 -2
- package/plugins/autoplay/lg-autoplay.umd.js +25 -12
- package/plugins/autoplay/lg-autoplay.umd.js.map +1 -1
- package/plugins/comment/lg-comment-settings.d.ts +6 -0
- package/plugins/comment/lg-comment.es5.js +6 -2
- package/plugins/comment/lg-comment.es5.js.map +1 -1
- package/plugins/comment/lg-comment.min.js +2 -2
- package/plugins/comment/lg-comment.umd.js +6 -2
- package/plugins/comment/lg-comment.umd.js.map +1 -1
- package/plugins/fullscreen/lg-fullscreen-settings.d.ts +6 -0
- package/plugins/fullscreen/lg-fullscreen.es5.js +3 -3
- package/plugins/fullscreen/lg-fullscreen.es5.js.map +1 -1
- package/plugins/fullscreen/lg-fullscreen.min.js +2 -2
- package/plugins/fullscreen/lg-fullscreen.umd.js +3 -3
- package/plugins/fullscreen/lg-fullscreen.umd.js.map +1 -1
- package/plugins/hash/lg-hash.es5.js +4 -1
- package/plugins/hash/lg-hash.es5.js.map +1 -1
- package/plugins/hash/lg-hash.min.js +1 -1
- package/plugins/hash/lg-hash.umd.js +4 -1
- package/plugins/hash/lg-hash.umd.js.map +1 -1
- package/plugins/mediumZoom/lg-medium-zoom.es5.js +4 -1
- package/plugins/mediumZoom/lg-medium-zoom.es5.js.map +1 -1
- package/plugins/mediumZoom/lg-medium-zoom.min.js +1 -1
- package/plugins/mediumZoom/lg-medium-zoom.umd.js +4 -1
- package/plugins/mediumZoom/lg-medium-zoom.umd.js.map +1 -1
- package/plugins/pager/lg-pager.es5.js +4 -1
- package/plugins/pager/lg-pager.es5.js.map +1 -1
- package/plugins/pager/lg-pager.min.js +1 -1
- package/plugins/pager/lg-pager.umd.js +4 -1
- package/plugins/pager/lg-pager.umd.js.map +1 -1
- package/plugins/relativeCaption/lg-relative-caption.es5.js +4 -1
- package/plugins/relativeCaption/lg-relative-caption.es5.js.map +1 -1
- package/plugins/relativeCaption/lg-relative-caption.min.js +1 -1
- package/plugins/relativeCaption/lg-relative-caption.umd.js +4 -1
- package/plugins/relativeCaption/lg-relative-caption.umd.js.map +1 -1
- package/plugins/rotate/lg-rotate-settings.d.ts +12 -0
- package/plugins/rotate/lg-rotate.es5.js +14 -9
- package/plugins/rotate/lg-rotate.es5.js.map +1 -1
- package/plugins/rotate/lg-rotate.min.js +2 -2
- package/plugins/rotate/lg-rotate.umd.js +14 -9
- package/plugins/rotate/lg-rotate.umd.js.map +1 -1
- package/plugins/share/lg-share-settings.d.ts +9 -0
- package/plugins/share/lg-share.es5.js +6 -2
- package/plugins/share/lg-share.es5.js.map +1 -1
- package/plugins/share/lg-share.min.js +2 -2
- package/plugins/share/lg-share.umd.js +6 -2
- package/plugins/share/lg-share.umd.js.map +1 -1
- package/plugins/thumbnail/lg-thumbnail-settings.d.ts +6 -0
- package/plugins/thumbnail/lg-thumbnail.es5.js +8 -2
- package/plugins/thumbnail/lg-thumbnail.es5.js.map +1 -1
- package/plugins/thumbnail/lg-thumbnail.min.js +2 -2
- package/plugins/thumbnail/lg-thumbnail.umd.js +8 -2
- package/plugins/thumbnail/lg-thumbnail.umd.js.map +1 -1
- package/plugins/video/lg-video.es5.js +4 -1
- package/plugins/video/lg-video.es5.js.map +1 -1
- package/plugins/video/lg-video.min.js +1 -1
- package/plugins/video/lg-video.umd.js +4 -1
- package/plugins/video/lg-video.umd.js.map +1 -1
- package/plugins/zoom/lg-zoom-settings.d.ts +6 -0
- package/plugins/zoom/lg-zoom.es5.js +11 -3
- package/plugins/zoom/lg-zoom.es5.js.map +1 -1
- package/plugins/zoom/lg-zoom.min.js +2 -2
- package/plugins/zoom/lg-zoom.umd.js +11 -3
- package/plugins/zoom/lg-zoom.umd.js.map +1 -1
- package/react/Lightgallery.d.ts +5 -1
- package/react/Lightgallery.es5.js +203 -140
- package/react/Lightgallery.es5.js.map +1 -1
- package/react/Lightgallery.umd.js +203 -140
- package/react/Lightgallery.umd.js.map +1 -1
- package/scss/_lg-theme-default.scss +17 -10
- package/scss/lightgallery-core.scss +0 -25
- package/vue/LightGallery.vue.d.ts +5 -1
- package/vue/LightGalleryVue.common.js +317 -270
- package/vue/LightGalleryVue.common.js.map +1 -1
- package/vue/LightGalleryVue.umd.js +317 -270
- package/vue/LightGalleryVue.umd.js.map +1 -1
- package/vue/LightGalleryVue.umd.min.js +2 -2
- package/vue/LightGalleryVue.umd.min.js.map +1 -1
package/lightgallery.es5.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* lightgallery | 2.
|
|
2
|
+
* lightgallery | 2.4.0-beta.0 | December 12th 2021
|
|
3
3
|
* http://www.lightgalleryjs.com/
|
|
4
4
|
* Copyright (c) 2020 Sachin Neravath;
|
|
5
5
|
* @license GPLv3
|
|
@@ -39,24 +39,140 @@ function __spreadArrays() {
|
|
|
39
39
|
return r;
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
42
|
+
/**
|
|
43
|
+
* List of lightGallery events
|
|
44
|
+
* All events should be documented here
|
|
45
|
+
* Below interfaces are used to build the website documentations
|
|
46
|
+
* */
|
|
47
|
+
var lGEvents = {
|
|
48
|
+
afterAppendSlide: 'lgAfterAppendSlide',
|
|
49
|
+
init: 'lgInit',
|
|
50
|
+
hasVideo: 'lgHasVideo',
|
|
51
|
+
containerResize: 'lgContainerResize',
|
|
52
|
+
updateSlides: 'lgUpdateSlides',
|
|
53
|
+
afterAppendSubHtml: 'lgAfterAppendSubHtml',
|
|
54
|
+
beforeOpen: 'lgBeforeOpen',
|
|
55
|
+
afterOpen: 'lgAfterOpen',
|
|
56
|
+
slideItemLoad: 'lgSlideItemLoad',
|
|
57
|
+
beforeSlide: 'lgBeforeSlide',
|
|
58
|
+
afterSlide: 'lgAfterSlide',
|
|
59
|
+
posterClick: 'lgPosterClick',
|
|
60
|
+
dragStart: 'lgDragStart',
|
|
61
|
+
dragMove: 'lgDragMove',
|
|
62
|
+
dragEnd: 'lgDragEnd',
|
|
63
|
+
beforeNextSlide: 'lgBeforeNextSlide',
|
|
64
|
+
beforePrevSlide: 'lgBeforePrevSlide',
|
|
65
|
+
beforeClose: 'lgBeforeClose',
|
|
66
|
+
afterClose: 'lgAfterClose',
|
|
67
|
+
rotateLeft: 'lgRotateLeft',
|
|
68
|
+
rotateRight: 'lgRotateRight',
|
|
69
|
+
flipHorizontal: 'lgFlipHorizontal',
|
|
70
|
+
flipVertical: 'lgFlipVertical',
|
|
71
|
+
autoplay: 'lgAutoplay',
|
|
72
|
+
autoplayStart: 'lgAutoplayStart',
|
|
73
|
+
autoplayStop: 'lgAutoplayStop',
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
var lightGalleryCoreSettings = {
|
|
77
|
+
mode: 'lg-slide',
|
|
78
|
+
easing: 'ease',
|
|
79
|
+
speed: 400,
|
|
80
|
+
licenseKey: '0000-0000-000-0000',
|
|
81
|
+
height: '100%',
|
|
82
|
+
width: '100%',
|
|
83
|
+
addClass: '',
|
|
84
|
+
startClass: 'lg-start-zoom',
|
|
85
|
+
backdropDuration: 300,
|
|
86
|
+
container: '',
|
|
87
|
+
startAnimationDuration: 400,
|
|
88
|
+
zoomFromOrigin: true,
|
|
89
|
+
hideBarsDelay: 0,
|
|
90
|
+
showBarsAfter: 10000,
|
|
91
|
+
slideDelay: 0,
|
|
92
|
+
supportLegacyBrowser: true,
|
|
93
|
+
allowMediaOverlap: false,
|
|
94
|
+
videoMaxSize: '1280-720',
|
|
95
|
+
loadYouTubePoster: true,
|
|
96
|
+
defaultCaptionHeight: 0,
|
|
97
|
+
ariaLabelledby: '',
|
|
98
|
+
ariaDescribedby: '',
|
|
99
|
+
closable: true,
|
|
100
|
+
swipeToClose: true,
|
|
101
|
+
closeOnTap: true,
|
|
102
|
+
showCloseIcon: true,
|
|
103
|
+
showMaximizeIcon: false,
|
|
104
|
+
loop: true,
|
|
105
|
+
escKey: true,
|
|
106
|
+
keyPress: true,
|
|
107
|
+
controls: true,
|
|
108
|
+
slideEndAnimation: true,
|
|
109
|
+
hideControlOnEnd: false,
|
|
110
|
+
mousewheel: false,
|
|
111
|
+
getCaptionFromTitleOrAlt: true,
|
|
112
|
+
appendSubHtmlTo: '.lg-sub-html',
|
|
113
|
+
subHtmlSelectorRelative: false,
|
|
114
|
+
preload: 2,
|
|
115
|
+
numberOfSlideItemsInDom: 10,
|
|
116
|
+
selector: '',
|
|
117
|
+
selectWithin: '',
|
|
118
|
+
nextHtml: '',
|
|
119
|
+
prevHtml: '',
|
|
120
|
+
index: 0,
|
|
121
|
+
iframeWidth: '100%',
|
|
122
|
+
iframeHeight: '100%',
|
|
123
|
+
iframeMaxWidth: '100%',
|
|
124
|
+
iframeMaxHeight: '100%',
|
|
125
|
+
download: true,
|
|
126
|
+
counter: true,
|
|
127
|
+
appendCounterTo: '.lg-toolbar',
|
|
128
|
+
swipeThreshold: 50,
|
|
129
|
+
enableSwipe: true,
|
|
130
|
+
enableDrag: true,
|
|
131
|
+
dynamic: false,
|
|
132
|
+
dynamicEl: [],
|
|
133
|
+
extraProps: [],
|
|
134
|
+
exThumbImage: '',
|
|
135
|
+
isMobile: undefined,
|
|
136
|
+
mobileSettings: {
|
|
137
|
+
controls: false,
|
|
138
|
+
showCloseIcon: false,
|
|
139
|
+
download: false,
|
|
140
|
+
},
|
|
141
|
+
plugins: [],
|
|
142
|
+
strings: {
|
|
143
|
+
closeGallery: 'Close gallery',
|
|
144
|
+
toggleMaximize: 'Toggle maximize',
|
|
145
|
+
previousSlide: 'Previous slide',
|
|
146
|
+
nextSlide: 'Next slide',
|
|
147
|
+
download: 'Download',
|
|
148
|
+
playVideo: 'Play video',
|
|
149
|
+
},
|
|
150
|
+
};
|
|
151
|
+
|
|
152
|
+
function initLgPolyfills() {
|
|
153
|
+
(function () {
|
|
154
|
+
if (typeof window.CustomEvent === 'function')
|
|
155
|
+
return false;
|
|
156
|
+
function CustomEvent(event, params) {
|
|
157
|
+
params = params || {
|
|
158
|
+
bubbles: false,
|
|
159
|
+
cancelable: false,
|
|
160
|
+
detail: null,
|
|
161
|
+
};
|
|
162
|
+
var evt = document.createEvent('CustomEvent');
|
|
163
|
+
evt.initCustomEvent(event, params.bubbles, params.cancelable, params.detail);
|
|
164
|
+
return evt;
|
|
165
|
+
}
|
|
166
|
+
window.CustomEvent = CustomEvent;
|
|
167
|
+
})();
|
|
168
|
+
(function () {
|
|
169
|
+
if (!Element.prototype.matches) {
|
|
170
|
+
Element.prototype.matches =
|
|
171
|
+
Element.prototype.msMatchesSelector ||
|
|
172
|
+
Element.prototype.webkitMatchesSelector;
|
|
173
|
+
}
|
|
174
|
+
})();
|
|
175
|
+
}
|
|
60
176
|
var lgQuery = /** @class */ (function () {
|
|
61
177
|
function lgQuery(selector) {
|
|
62
178
|
this.cssVenderPrefixes = [
|
|
@@ -189,7 +305,9 @@ var lgQuery = /** @class */ (function () {
|
|
|
189
305
|
this._each(function (el) {
|
|
190
306
|
// IE doesn't support multiple arguments
|
|
191
307
|
classNames.split(' ').forEach(function (className) {
|
|
192
|
-
|
|
308
|
+
if (className) {
|
|
309
|
+
el.classList.add(className);
|
|
310
|
+
}
|
|
193
311
|
});
|
|
194
312
|
});
|
|
195
313
|
return this;
|
|
@@ -198,7 +316,9 @@ var lgQuery = /** @class */ (function () {
|
|
|
198
316
|
this._each(function (el) {
|
|
199
317
|
// IE doesn't support multiple arguments
|
|
200
318
|
classNames.split(' ').forEach(function (className) {
|
|
201
|
-
|
|
319
|
+
if (className) {
|
|
320
|
+
el.classList.remove(className);
|
|
321
|
+
}
|
|
202
322
|
});
|
|
203
323
|
});
|
|
204
324
|
return this;
|
|
@@ -398,6 +518,7 @@ var lgQuery = /** @class */ (function () {
|
|
|
398
518
|
return lgQuery;
|
|
399
519
|
}());
|
|
400
520
|
function $LG(selector) {
|
|
521
|
+
initLgPolyfills();
|
|
401
522
|
return new lgQuery(selector);
|
|
402
523
|
}
|
|
403
524
|
|
|
@@ -521,9 +642,9 @@ var utils = {
|
|
|
521
642
|
', 1)';
|
|
522
643
|
return transform;
|
|
523
644
|
},
|
|
524
|
-
getIframeMarkup: function (iframeWidth, iframeHeight, src, iframeTitle) {
|
|
645
|
+
getIframeMarkup: function (iframeWidth, iframeHeight, iframeMaxWidth, iframeMaxHeight, src, iframeTitle) {
|
|
525
646
|
var title = iframeTitle ? 'title="' + iframeTitle + '"' : '';
|
|
526
|
-
return "<div class=\"lg-video-cont lg-has-iframe\" style=\"width:" + iframeWidth + "; height: " + iframeHeight + "\">\n <iframe class=\"lg-object\" frameborder=\"0\" " + title + " src=\"" + src + "\" allowfullscreen=\"true\"></iframe>\n </div>";
|
|
647
|
+
return "<div class=\"lg-video-cont lg-has-iframe\" style=\"width:" + iframeWidth + "; max-width:" + iframeMaxWidth + "; height: " + iframeHeight + "; max-height:" + iframeMaxHeight + "\">\n <iframe class=\"lg-object\" frameborder=\"0\" " + title + " src=\"" + src + "\" allowfullscreen=\"true\"></iframe>\n </div>";
|
|
527
648
|
},
|
|
528
649
|
getImgMarkup: function (index, src, altAttr, srcset, sizes, sources) {
|
|
529
650
|
var srcsetAttr = srcset ? "srcset=\"" + srcset + "\"" : '';
|
|
@@ -584,7 +705,7 @@ var utils = {
|
|
|
584
705
|
// No other way of checking: assume it’s ok.
|
|
585
706
|
return true;
|
|
586
707
|
},
|
|
587
|
-
getVideoPosterMarkup: function (_poster, dummyImg, videoContStyle, _isVideo) {
|
|
708
|
+
getVideoPosterMarkup: function (_poster, dummyImg, videoContStyle, playVideoString, _isVideo) {
|
|
588
709
|
var videoClass = '';
|
|
589
710
|
if (_isVideo && _isVideo.youtube) {
|
|
590
711
|
videoClass = 'lg-has-youtube';
|
|
@@ -595,7 +716,7 @@ var utils = {
|
|
|
595
716
|
else {
|
|
596
717
|
videoClass = 'lg-has-html5';
|
|
597
718
|
}
|
|
598
|
-
return "<div class=\"lg-video-cont " + videoClass + "\" style=\"" + videoContStyle + "\">\n <div class=\"lg-video-play-button\">\n <svg\n viewBox=\"0 0 20 20\"\n preserveAspectRatio=\"xMidYMid\"\n focusable=\"false\"\n aria-labelledby=\"
|
|
719
|
+
return "<div class=\"lg-video-cont " + videoClass + "\" style=\"" + videoContStyle + "\">\n <div class=\"lg-video-play-button\">\n <svg\n viewBox=\"0 0 20 20\"\n preserveAspectRatio=\"xMidYMid\"\n focusable=\"false\"\n aria-labelledby=\"" + playVideoString + "\"\n role=\"img\"\n class=\"lg-video-play-icon\"\n >\n <title>" + playVideoString + "</title>\n <polygon class=\"lg-video-play-icon-inner\" points=\"1,0 20,10 1,20\"></polygon>\n </svg>\n <svg class=\"lg-video-play-icon-bg\" viewBox=\"0 0 50 50\" focusable=\"false\">\n <circle cx=\"50%\" cy=\"50%\" r=\"20\"></circle></svg>\n <svg class=\"lg-video-play-icon-circle\" viewBox=\"0 0 50 50\" focusable=\"false\">\n <circle cx=\"50%\" cy=\"50%\" r=\"20\"></circle>\n </svg>\n </div>\n " + (dummyImg || '') + "\n <img class=\"lg-object lg-video-poster\" src=\"" + _poster + "\" />\n </div>";
|
|
599
720
|
},
|
|
600
721
|
/**
|
|
601
722
|
* @desc Create dynamic elements array from gallery items when dynamic option is false
|
|
@@ -683,103 +804,6 @@ var utils = {
|
|
|
683
804
|
},
|
|
684
805
|
};
|
|
685
806
|
|
|
686
|
-
var lightGalleryCoreSettings = {
|
|
687
|
-
mode: 'lg-slide',
|
|
688
|
-
easing: 'ease',
|
|
689
|
-
speed: 400,
|
|
690
|
-
licenseKey: '0000-0000-000-0000',
|
|
691
|
-
height: '100%',
|
|
692
|
-
width: '100%',
|
|
693
|
-
addClass: '',
|
|
694
|
-
startClass: 'lg-start-zoom',
|
|
695
|
-
backdropDuration: 300,
|
|
696
|
-
container: document.body,
|
|
697
|
-
startAnimationDuration: 400,
|
|
698
|
-
zoomFromOrigin: true,
|
|
699
|
-
hideBarsDelay: 0,
|
|
700
|
-
showBarsAfter: 10000,
|
|
701
|
-
slideDelay: 0,
|
|
702
|
-
supportLegacyBrowser: true,
|
|
703
|
-
allowMediaOverlap: false,
|
|
704
|
-
videoMaxSize: '1280-720',
|
|
705
|
-
defaultCaptionHeight: 0,
|
|
706
|
-
ariaLabelledby: '',
|
|
707
|
-
ariaDescribedby: '',
|
|
708
|
-
closable: true,
|
|
709
|
-
swipeToClose: true,
|
|
710
|
-
closeOnTap: true,
|
|
711
|
-
showCloseIcon: true,
|
|
712
|
-
showMaximizeIcon: false,
|
|
713
|
-
loop: true,
|
|
714
|
-
escKey: true,
|
|
715
|
-
keyPress: true,
|
|
716
|
-
controls: true,
|
|
717
|
-
slideEndAnimation: true,
|
|
718
|
-
hideControlOnEnd: false,
|
|
719
|
-
mousewheel: false,
|
|
720
|
-
getCaptionFromTitleOrAlt: true,
|
|
721
|
-
appendSubHtmlTo: '.lg-sub-html',
|
|
722
|
-
subHtmlSelectorRelative: false,
|
|
723
|
-
preload: 2,
|
|
724
|
-
numberOfSlideItemsInDom: 10,
|
|
725
|
-
showAfterLoad: true,
|
|
726
|
-
selector: '',
|
|
727
|
-
selectWithin: '',
|
|
728
|
-
nextHtml: '',
|
|
729
|
-
prevHtml: '',
|
|
730
|
-
index: 0,
|
|
731
|
-
iframeWidth: '100%',
|
|
732
|
-
iframeHeight: '100%',
|
|
733
|
-
download: true,
|
|
734
|
-
counter: true,
|
|
735
|
-
appendCounterTo: '.lg-toolbar',
|
|
736
|
-
swipeThreshold: 50,
|
|
737
|
-
enableSwipe: true,
|
|
738
|
-
enableDrag: true,
|
|
739
|
-
dynamic: false,
|
|
740
|
-
dynamicEl: [],
|
|
741
|
-
extraProps: [],
|
|
742
|
-
exThumbImage: '',
|
|
743
|
-
isMobile: undefined,
|
|
744
|
-
mobileSettings: {
|
|
745
|
-
controls: false,
|
|
746
|
-
showCloseIcon: false,
|
|
747
|
-
download: false,
|
|
748
|
-
},
|
|
749
|
-
plugins: [],
|
|
750
|
-
};
|
|
751
|
-
|
|
752
|
-
/**
|
|
753
|
-
* List of lightGallery events
|
|
754
|
-
* All events should be documented here
|
|
755
|
-
* Below interfaces are used to build the website documentations
|
|
756
|
-
* */
|
|
757
|
-
var lGEvents = {
|
|
758
|
-
afterAppendSlide: 'lgAfterAppendSlide',
|
|
759
|
-
init: 'lgInit',
|
|
760
|
-
hasVideo: 'lgHasVideo',
|
|
761
|
-
containerResize: 'lgContainerResize',
|
|
762
|
-
updateSlides: 'lgUpdateSlides',
|
|
763
|
-
afterAppendSubHtml: 'lgAfterAppendSubHtml',
|
|
764
|
-
beforeOpen: 'lgBeforeOpen',
|
|
765
|
-
afterOpen: 'lgAfterOpen',
|
|
766
|
-
slideItemLoad: 'lgSlideItemLoad',
|
|
767
|
-
beforeSlide: 'lgBeforeSlide',
|
|
768
|
-
afterSlide: 'lgAfterSlide',
|
|
769
|
-
posterClick: 'lgPosterClick',
|
|
770
|
-
dragStart: 'lgDragStart',
|
|
771
|
-
dragMove: 'lgDragMove',
|
|
772
|
-
dragEnd: 'lgDragEnd',
|
|
773
|
-
beforeNextSlide: 'lgBeforeNextSlide',
|
|
774
|
-
beforePrevSlide: 'lgBeforePrevSlide',
|
|
775
|
-
beforeClose: 'lgBeforeClose',
|
|
776
|
-
afterClose: 'lgAfterClose',
|
|
777
|
-
rotateLeft: 'lgRotateLeft',
|
|
778
|
-
rotateRight: 'lgRotateRight',
|
|
779
|
-
flipHorizontal: 'lgFlipHorizontal',
|
|
780
|
-
flipVertical: 'lgFlipVertical',
|
|
781
|
-
};
|
|
782
|
-
|
|
783
807
|
// @ref - https://stackoverflow.com/questions/3971841/how-to-resize-images-proportionally-keeping-the-aspect-ratio
|
|
784
808
|
// @ref - https://2ality.com/2017/04/setting-up-multi-platform-packages.html
|
|
785
809
|
// Unique id for each gallery
|
|
@@ -951,7 +975,7 @@ var LightGallery = /** @class */ (function () {
|
|
|
951
975
|
var subHtmlCont = '';
|
|
952
976
|
// Create controls
|
|
953
977
|
if (this.settings.controls) {
|
|
954
|
-
controls = "<button type=\"button\" id=\"" + this.getIdName('lg-prev') + "\" aria-label=\"
|
|
978
|
+
controls = "<button type=\"button\" id=\"" + this.getIdName('lg-prev') + "\" aria-label=\"" + this.settings.strings['previousSlide'] + "\" class=\"lg-prev lg-icon\"> " + this.settings.prevHtml + " </button>\n <button type=\"button\" id=\"" + this.getIdName('lg-next') + "\" aria-label=\"" + this.settings.strings['nextSlide'] + "\" class=\"lg-next lg-icon\"> " + this.settings.nextHtml + " </button>";
|
|
955
979
|
}
|
|
956
980
|
if (this.settings.appendSubHtmlTo !== '.lg-item') {
|
|
957
981
|
subHtmlCont =
|
|
@@ -970,19 +994,20 @@ var LightGallery = /** @class */ (function () {
|
|
|
970
994
|
: '';
|
|
971
995
|
var containerClassName = "lg-container " + this.settings.addClass + " " + (document.body !== this.settings.container ? 'lg-inline' : '');
|
|
972
996
|
var closeIcon = this.settings.closable && this.settings.showCloseIcon
|
|
973
|
-
? "<button type=\"button\" aria-label=\"
|
|
997
|
+
? "<button type=\"button\" aria-label=\"" + this.settings.strings['closeGallery'] + "\" id=\"" + this.getIdName('lg-close') + "\" class=\"lg-close lg-icon\"></button>"
|
|
974
998
|
: '';
|
|
975
999
|
var maximizeIcon = this.settings.showMaximizeIcon
|
|
976
|
-
? "<button type=\"button\" aria-label=\"
|
|
1000
|
+
? "<button type=\"button\" aria-label=\"" + this.settings.strings['toggleMaximize'] + "\" id=\"" + this.getIdName('lg-maximize') + "\" class=\"lg-maximize lg-icon\"></button>"
|
|
977
1001
|
: '';
|
|
978
1002
|
var template = "\n <div class=\"" + containerClassName + "\" id=\"" + this.getIdName('lg-container') + "\" tabindex=\"-1\" aria-modal=\"true\" " + ariaLabelledby + " " + ariaDescribedby + " role=\"dialog\"\n >\n <div id=\"" + this.getIdName('lg-backdrop') + "\" class=\"lg-backdrop\"></div>\n\n <div id=\"" + this.getIdName('lg-outer') + "\" class=\"lg-outer lg-use-css3 lg-css3 lg-hide-items " + addClasses + " \">\n\n <div id=\"" + this.getIdName('lg-content') + "\" class=\"lg-content\">\n <div id=\"" + this.getIdName('lg-inner') + "\" class=\"lg-inner\">\n </div>\n " + controls + "\n </div>\n <div id=\"" + this.getIdName('lg-toolbar') + "\" class=\"lg-toolbar lg-group\">\n " + maximizeIcon + "\n " + closeIcon + "\n </div>\n " + (this.settings.appendSubHtmlTo === '.lg-outer'
|
|
979
1003
|
? subHtmlCont
|
|
980
1004
|
: '') + "\n <div id=\"" + this.getIdName('lg-components') + "\" class=\"lg-components\">\n " + (this.settings.appendSubHtmlTo === '.lg-sub-html'
|
|
981
1005
|
? subHtmlCont
|
|
982
1006
|
: '') + "\n </div>\n </div>\n </div>\n ";
|
|
983
|
-
$LG(this.settings.container)
|
|
984
|
-
|
|
985
|
-
.
|
|
1007
|
+
$LG(this.settings.container).append(template);
|
|
1008
|
+
if (document.body !== this.settings.container) {
|
|
1009
|
+
$LG(this.settings.container).css('position', 'relative');
|
|
1010
|
+
}
|
|
986
1011
|
this.outer = this.getElementById('lg-outer');
|
|
987
1012
|
this.$lgComponents = this.getElementById('lg-components');
|
|
988
1013
|
this.$backdrop = this.getElementById('lg-backdrop');
|
|
@@ -996,14 +1021,11 @@ var LightGallery = /** @class */ (function () {
|
|
|
996
1021
|
if (this.settings.enableDrag) {
|
|
997
1022
|
outerClassNames += 'lg-grab ';
|
|
998
1023
|
}
|
|
999
|
-
if (this.settings.showAfterLoad) {
|
|
1000
|
-
outerClassNames += 'lg-show-after-load';
|
|
1001
|
-
}
|
|
1002
1024
|
this.outer.addClass(outerClassNames);
|
|
1003
1025
|
this.$inner.css('transition-timing-function', this.settings.easing);
|
|
1004
1026
|
this.$inner.css('transition-duration', this.settings.speed + 'ms');
|
|
1005
1027
|
if (this.settings.download) {
|
|
1006
|
-
this.$toolbar.append("<a id=\"" + this.getIdName('lg-download') + "\" target=\"_blank\" rel=\"noopener\" aria-label=\"
|
|
1028
|
+
this.$toolbar.append("<a id=\"" + this.getIdName('lg-download') + "\" target=\"_blank\" rel=\"noopener\" aria-label=\"" + this.settings.strings['download'] + "\" download class=\"lg-download lg-icon\"></a>");
|
|
1007
1029
|
}
|
|
1008
1030
|
this.counter();
|
|
1009
1031
|
$LG(window).on("resize.lg.global" + this.lgId + " orientationchange.lg.global" + this.lgId, function () {
|
|
@@ -1522,8 +1544,15 @@ var LightGallery = /** @class */ (function () {
|
|
|
1522
1544
|
};
|
|
1523
1545
|
// Add video slideInfo
|
|
1524
1546
|
LightGallery.prototype.addSlideVideoInfo = function (items) {
|
|
1547
|
+
var _this = this;
|
|
1525
1548
|
items.forEach(function (element, index) {
|
|
1526
1549
|
element.__slideVideoInfo = utils.isVideo(element.src, !!element.video, index);
|
|
1550
|
+
if (element.__slideVideoInfo &&
|
|
1551
|
+
_this.settings.loadYouTubePoster &&
|
|
1552
|
+
!element.poster &&
|
|
1553
|
+
element.__slideVideoInfo.youtube) {
|
|
1554
|
+
element.poster = "//img.youtube.com/vi/" + element.__slideVideoInfo.youtube[1] + "/maxresdefault.jpg";
|
|
1555
|
+
}
|
|
1527
1556
|
});
|
|
1528
1557
|
};
|
|
1529
1558
|
/**
|
|
@@ -1565,7 +1594,7 @@ var LightGallery = /** @class */ (function () {
|
|
|
1565
1594
|
lgVideoStyle = this.getVideoContStyle(videoSize);
|
|
1566
1595
|
}
|
|
1567
1596
|
if (iframe) {
|
|
1568
|
-
var markup = utils.getIframeMarkup(this.settings.iframeWidth, this.settings.iframeHeight, src, currentGalleryItem.iframeTitle);
|
|
1597
|
+
var markup = utils.getIframeMarkup(this.settings.iframeWidth, this.settings.iframeHeight, this.settings.iframeMaxWidth, this.settings.iframeMaxHeight, src, currentGalleryItem.iframeTitle);
|
|
1569
1598
|
$currentSlide.prepend(markup);
|
|
1570
1599
|
}
|
|
1571
1600
|
else if (poster) {
|
|
@@ -1576,7 +1605,7 @@ var LightGallery = /** @class */ (function () {
|
|
|
1576
1605
|
if (hasStartAnimation) {
|
|
1577
1606
|
dummyImg = this.getDummyImageContent($currentSlide, index, '');
|
|
1578
1607
|
}
|
|
1579
|
-
var markup = utils.getVideoPosterMarkup(poster, dummyImg || '', lgVideoStyle, videoInfo);
|
|
1608
|
+
var markup = utils.getVideoPosterMarkup(poster, dummyImg || '', lgVideoStyle, this.settings.strings['playVideo'], videoInfo);
|
|
1580
1609
|
$currentSlide.prepend(markup);
|
|
1581
1610
|
}
|
|
1582
1611
|
else if (videoInfo) {
|
|
@@ -2359,17 +2388,23 @@ var LightGallery = /** @class */ (function () {
|
|
|
2359
2388
|
};
|
|
2360
2389
|
LightGallery.prototype.mousewheel = function () {
|
|
2361
2390
|
var _this = this;
|
|
2362
|
-
|
|
2391
|
+
var lastCall = 0;
|
|
2392
|
+
this.outer.on('wheel.lg', function (e) {
|
|
2363
2393
|
if (!e.deltaY || _this.galleryItems.length < 2) {
|
|
2364
2394
|
return;
|
|
2365
2395
|
}
|
|
2366
|
-
|
|
2367
|
-
|
|
2396
|
+
e.preventDefault();
|
|
2397
|
+
var now = new Date().getTime();
|
|
2398
|
+
if (now - lastCall < 1000) {
|
|
2399
|
+
return;
|
|
2368
2400
|
}
|
|
2369
|
-
|
|
2401
|
+
lastCall = now;
|
|
2402
|
+
if (e.deltaY > 0) {
|
|
2370
2403
|
_this.goToNextSlide();
|
|
2371
2404
|
}
|
|
2372
|
-
e.
|
|
2405
|
+
else if (e.deltaY < 0) {
|
|
2406
|
+
_this.goToPrevSlide();
|
|
2407
|
+
}
|
|
2373
2408
|
});
|
|
2374
2409
|
};
|
|
2375
2410
|
LightGallery.prototype.isSlideElement = function (target) {
|