js-cloudimage-360-view 3.0.0-beta.2 → 3.0.2

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.
Files changed (95) hide show
  1. package/CHANGELOG.md +104 -0
  2. package/LICENSE +13 -1
  3. package/README.md +404 -145
  4. package/dist/ci360.service.js +878 -1163
  5. package/dist/ci360.utils.js +28 -204
  6. package/dist/constants/auto-play-behavior.js +13 -0
  7. package/dist/constants/falsy-values.js +8 -0
  8. package/dist/constants/index.js +43 -0
  9. package/dist/constants/orientations.js +12 -0
  10. package/dist/constants/props-require-reload.js +21 -0
  11. package/dist/constants/regex.js +10 -0
  12. package/dist/index.js +73 -12
  13. package/dist/static/css/hotspots.css +222 -0
  14. package/dist/static/css/style.css +116 -7
  15. package/dist/utils/auto-play/get-speed-factor.js +14 -0
  16. package/dist/utils/auto-play/is-completed-one-cycle.js +32 -0
  17. package/dist/utils/auto-play/loop.js +67 -0
  18. package/dist/utils/class-names/add-class.js +18 -0
  19. package/dist/utils/class-names/remove-class.js +16 -0
  20. package/dist/utils/container-elements/apply-styles-to-container.js +16 -0
  21. package/dist/utils/container-elements/create-360-view-circle-icon.js +16 -0
  22. package/dist/utils/container-elements/create-360-view-icon.js +15 -0
  23. package/dist/utils/container-elements/create-box-shadow.js +16 -0
  24. package/dist/utils/container-elements/create-canvas.js +16 -0
  25. package/dist/utils/container-elements/create-close-fullscreen-icon.js +14 -0
  26. package/dist/utils/container-elements/create-fullscreen-icon.js +14 -0
  27. package/dist/utils/container-elements/create-fullscreen-modal.js +20 -0
  28. package/dist/utils/container-elements/create-icons-container.js +15 -0
  29. package/dist/utils/container-elements/create-inner-box.js +15 -0
  30. package/dist/utils/container-elements/create-loader.js +15 -0
  31. package/dist/utils/container-elements/create-magnifier-icon.js +14 -0
  32. package/dist/utils/container-elements/index.js +109 -0
  33. package/dist/utils/container-elements/remove-child-from-parent.js +16 -0
  34. package/dist/utils/controls/get-item-skipped.js +13 -0
  35. package/dist/utils/controls/init-controls.js +77 -0
  36. package/dist/utils/hotspots/attach-events/hide-popup.js +15 -0
  37. package/dist/utils/hotspots/attach-events/show-popup.js +14 -0
  38. package/dist/utils/hotspots/configs-error-handler.js +27 -0
  39. package/dist/utils/hotspots/create-popper-instace.js +32 -0
  40. package/dist/utils/hotspots/elements/create-carousel-dot.js +26 -0
  41. package/dist/utils/hotspots/elements/create-carousel-image.js +22 -0
  42. package/dist/utils/hotspots/elements/create-hotspot-icon.js +66 -0
  43. package/dist/utils/hotspots/elements/create-hotspot-popup-link.js +23 -0
  44. package/dist/utils/hotspots/elements/create-hotspots.js +25 -0
  45. package/dist/utils/hotspots/elements/create-images-carousel.js +27 -0
  46. package/dist/utils/hotspots/elements/create-modal-description.js +15 -0
  47. package/dist/utils/hotspots/elements/create-modal-title.js +15 -0
  48. package/dist/utils/hotspots/elements/create-model-elements.js +66 -0
  49. package/dist/utils/hotspots/elements/create-popup-arrow.js +16 -0
  50. package/dist/utils/hotspots/elements/create-popup.js +67 -0
  51. package/dist/utils/hotspots/elements/create-read-more-btn.js +17 -0
  52. package/dist/utils/hotspots/fill-empty-coord-with-previous.js +26 -0
  53. package/dist/utils/hotspots/generate-hotspots-configs.js +58 -0
  54. package/dist/utils/hotspots/generate-popup-config.js +29 -0
  55. package/dist/utils/hotspots/get-hotspot-icon.js +14 -0
  56. package/dist/utils/hotspots/get-hotspot-orientation.js +21 -0
  57. package/dist/utils/hotspots/get-hotspot-popup-node.js +14 -0
  58. package/dist/utils/hotspots/get-popup-node.js +14 -0
  59. package/dist/utils/hotspots/hide-hotspot-icon.js +13 -0
  60. package/dist/utils/hotspots/hide-hotspots-icons.js +18 -0
  61. package/dist/utils/hotspots/is-mouse-on-hotspot.js +14 -0
  62. package/dist/utils/hotspots/prepare-hotspots-positions.js +28 -0
  63. package/dist/utils/hotspots/set-current-slide.js +23 -0
  64. package/dist/utils/hotspots/toggle-popup-events.js +23 -0
  65. package/dist/utils/hotspots/update-hotspot-icon-position.js +21 -0
  66. package/dist/utils/hotspots/update-hotspots.js +48 -0
  67. package/dist/utils/image-src/generate-images-path.js +42 -0
  68. package/dist/utils/image-src/is-props-change-require-reload.js +23 -0
  69. package/dist/utils/index.js +237 -0
  70. package/dist/utils/load-images/images-from-folder/prepare-images-from-folder.js +34 -0
  71. package/dist/utils/load-images/images-from-list/prepare-images-from-list.js +35 -0
  72. package/dist/utils/load-images/lazyload/init-lazyload.js +49 -0
  73. package/dist/utils/load-images/lazyload/prepare-first-image/prepare-first-image-from-folder.js +18 -0
  74. package/dist/utils/load-images/lazyload/prepare-first-image/prepare-first-image-from-list.js +29 -0
  75. package/dist/utils/load-images/load-image-as-promise.js +54 -0
  76. package/dist/utils/load-images/load-images-relative-to-container-size.js +58 -0
  77. package/dist/utils/load-images/load-original-images.js +58 -0
  78. package/dist/utils/load-images/pad.js +14 -0
  79. package/dist/utils/load-images/preload-images.js +35 -0
  80. package/dist/utils/load-images/preload-original-images.js +35 -0
  81. package/dist/utils/magnify/get-current-original-image.js +29 -0
  82. package/dist/utils/magnify/get-cursor-position.js +24 -0
  83. package/dist/utils/magnify/magnify.js +54 -0
  84. package/dist/utils/magnify/move-magnifier.js +47 -0
  85. package/dist/utils/responsive/contain.js +11 -0
  86. package/dist/utils/responsive/fit.js +33 -0
  87. package/dist/utils/responsive/get-image-aspect-ratio.js +39 -0
  88. package/dist/utils/responsive/get-responsive-width-of-container.js +14 -0
  89. package/dist/utils/responsive/get-size-according-to-pixel-ratio.js +17 -0
  90. package/dist/utils/responsive/get-size-limit.js +14 -0
  91. package/dist/utils/spin-y/get-moving-direction.js +21 -0
  92. package/dist/utils/zoom/generate-zoom-in-steps.js +20 -0
  93. package/dist/utils/zoom/generate-zoom-out-steps.js +20 -0
  94. package/package.json +13 -8
  95. package/dist/ci360.constants.js +0 -36
@@ -0,0 +1,237 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _exportNames = {
7
+ isPropsChangeRequireReload: true,
8
+ generateImagesPath: true,
9
+ preloadImages: true,
10
+ preloadOriginalImages: true,
11
+ initLazyload: true,
12
+ contain: true,
13
+ getImageAspectRatio: true,
14
+ getCurrentOriginalImage: true,
15
+ magnify: true,
16
+ generateZoomInSteps: true,
17
+ generateZoomOutSteps: true,
18
+ loop: true,
19
+ getSpeedFactor: true,
20
+ isCompletedOneCycle: true,
21
+ addClass: true,
22
+ removeClass: true,
23
+ getMovingDirection: true,
24
+ getItemSkipped: true,
25
+ initControls: true,
26
+ updateHotspots: true,
27
+ createHotspots: true,
28
+ generateHotspotsConfigs: true,
29
+ isMouseOnHotspot: true,
30
+ hideHotspotsIcons: true
31
+ };
32
+ Object.defineProperty(exports, "addClass", {
33
+ enumerable: true,
34
+ get: function get() {
35
+ return _addClass.addClass;
36
+ }
37
+ });
38
+ Object.defineProperty(exports, "contain", {
39
+ enumerable: true,
40
+ get: function get() {
41
+ return _contain.contain;
42
+ }
43
+ });
44
+ Object.defineProperty(exports, "createHotspots", {
45
+ enumerable: true,
46
+ get: function get() {
47
+ return _createHotspots.createHotspots;
48
+ }
49
+ });
50
+ Object.defineProperty(exports, "generateHotspotsConfigs", {
51
+ enumerable: true,
52
+ get: function get() {
53
+ return _generateHotspotsConfigs.generateHotspotsConfigs;
54
+ }
55
+ });
56
+ Object.defineProperty(exports, "generateImagesPath", {
57
+ enumerable: true,
58
+ get: function get() {
59
+ return _generateImagesPath.generateImagesPath;
60
+ }
61
+ });
62
+ Object.defineProperty(exports, "generateZoomInSteps", {
63
+ enumerable: true,
64
+ get: function get() {
65
+ return _generateZoomInSteps.generateZoomInSteps;
66
+ }
67
+ });
68
+ Object.defineProperty(exports, "generateZoomOutSteps", {
69
+ enumerable: true,
70
+ get: function get() {
71
+ return _generateZoomOutSteps.generateZoomOutSteps;
72
+ }
73
+ });
74
+ Object.defineProperty(exports, "getCurrentOriginalImage", {
75
+ enumerable: true,
76
+ get: function get() {
77
+ return _getCurrentOriginalImage.getCurrentOriginalImage;
78
+ }
79
+ });
80
+ Object.defineProperty(exports, "getImageAspectRatio", {
81
+ enumerable: true,
82
+ get: function get() {
83
+ return _getImageAspectRatio.getImageAspectRatio;
84
+ }
85
+ });
86
+ Object.defineProperty(exports, "getItemSkipped", {
87
+ enumerable: true,
88
+ get: function get() {
89
+ return _getItemSkipped.getItemSkipped;
90
+ }
91
+ });
92
+ Object.defineProperty(exports, "getMovingDirection", {
93
+ enumerable: true,
94
+ get: function get() {
95
+ return _getMovingDirection.getMovingDirection;
96
+ }
97
+ });
98
+ Object.defineProperty(exports, "getSpeedFactor", {
99
+ enumerable: true,
100
+ get: function get() {
101
+ return _getSpeedFactor.getSpeedFactor;
102
+ }
103
+ });
104
+ Object.defineProperty(exports, "hideHotspotsIcons", {
105
+ enumerable: true,
106
+ get: function get() {
107
+ return _hideHotspotsIcons.hideHotspotsIcons;
108
+ }
109
+ });
110
+ Object.defineProperty(exports, "initControls", {
111
+ enumerable: true,
112
+ get: function get() {
113
+ return _initControls.initControls;
114
+ }
115
+ });
116
+ Object.defineProperty(exports, "initLazyload", {
117
+ enumerable: true,
118
+ get: function get() {
119
+ return _initLazyload.initLazyload;
120
+ }
121
+ });
122
+ Object.defineProperty(exports, "isCompletedOneCycle", {
123
+ enumerable: true,
124
+ get: function get() {
125
+ return _isCompletedOneCycle.isCompletedOneCycle;
126
+ }
127
+ });
128
+ Object.defineProperty(exports, "isMouseOnHotspot", {
129
+ enumerable: true,
130
+ get: function get() {
131
+ return _isMouseOnHotspot.isMouseOnHotspot;
132
+ }
133
+ });
134
+ Object.defineProperty(exports, "isPropsChangeRequireReload", {
135
+ enumerable: true,
136
+ get: function get() {
137
+ return _isPropsChangeRequireReload.isPropsChangeRequireReload;
138
+ }
139
+ });
140
+ Object.defineProperty(exports, "loop", {
141
+ enumerable: true,
142
+ get: function get() {
143
+ return _loop.loop;
144
+ }
145
+ });
146
+ Object.defineProperty(exports, "magnify", {
147
+ enumerable: true,
148
+ get: function get() {
149
+ return _magnify.magnify;
150
+ }
151
+ });
152
+ Object.defineProperty(exports, "preloadImages", {
153
+ enumerable: true,
154
+ get: function get() {
155
+ return _preloadImages.preloadImages;
156
+ }
157
+ });
158
+ Object.defineProperty(exports, "preloadOriginalImages", {
159
+ enumerable: true,
160
+ get: function get() {
161
+ return _preloadOriginalImages.preloadOriginalImages;
162
+ }
163
+ });
164
+ Object.defineProperty(exports, "removeClass", {
165
+ enumerable: true,
166
+ get: function get() {
167
+ return _removeClass.removeClass;
168
+ }
169
+ });
170
+ Object.defineProperty(exports, "updateHotspots", {
171
+ enumerable: true,
172
+ get: function get() {
173
+ return _updateHotspots.updateHotspots;
174
+ }
175
+ });
176
+
177
+ var _isPropsChangeRequireReload = require("./image-src/is-props-change-require-reload");
178
+
179
+ var _generateImagesPath = require("./image-src/generate-images-path");
180
+
181
+ var _preloadImages = require("./load-images/preload-images");
182
+
183
+ var _preloadOriginalImages = require("./load-images/preload-original-images");
184
+
185
+ var _initLazyload = require("./load-images/lazyload/init-lazyload");
186
+
187
+ var _contain = require("./responsive/contain");
188
+
189
+ var _getImageAspectRatio = require("./responsive/get-image-aspect-ratio");
190
+
191
+ var _getCurrentOriginalImage = require("./magnify/get-current-original-image");
192
+
193
+ var _magnify = require("./magnify/magnify");
194
+
195
+ var _generateZoomInSteps = require("./zoom/generate-zoom-in-steps");
196
+
197
+ var _generateZoomOutSteps = require("./zoom/generate-zoom-out-steps");
198
+
199
+ var _loop = require("./auto-play/loop");
200
+
201
+ var _getSpeedFactor = require("./auto-play/get-speed-factor");
202
+
203
+ var _isCompletedOneCycle = require("./auto-play/is-completed-one-cycle");
204
+
205
+ var _addClass = require("./class-names/add-class");
206
+
207
+ var _removeClass = require("./class-names/remove-class");
208
+
209
+ var _getMovingDirection = require("./spin-y/get-moving-direction");
210
+
211
+ var _getItemSkipped = require("./controls/get-item-skipped");
212
+
213
+ var _initControls = require("./controls/init-controls");
214
+
215
+ var _containerElements = require("./container-elements");
216
+
217
+ Object.keys(_containerElements).forEach(function (key) {
218
+ if (key === "default" || key === "__esModule") return;
219
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
220
+ if (key in exports && exports[key] === _containerElements[key]) return;
221
+ Object.defineProperty(exports, key, {
222
+ enumerable: true,
223
+ get: function get() {
224
+ return _containerElements[key];
225
+ }
226
+ });
227
+ });
228
+
229
+ var _updateHotspots = require("./hotspots/update-hotspots");
230
+
231
+ var _createHotspots = require("./hotspots/elements/create-hotspots");
232
+
233
+ var _generateHotspotsConfigs = require("./hotspots/generate-hotspots-configs");
234
+
235
+ var _isMouseOnHotspot = require("./hotspots/is-mouse-on-hotspot");
236
+
237
+ var _hideHotspotsIcons = require("./hotspots/hide-hotspots-icons");
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.prepareImagesFromFolder = void 0;
9
+
10
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
+
12
+ var _regex = require("../../../constants/regex");
13
+
14
+ var _pad = require("../pad");
15
+
16
+ var prepareImagesFromFolder = function prepareImagesFromFolder(imagesSrc, srcConfig, loadOriginalImages) {
17
+ var _ref = srcConfig || {},
18
+ amount = _ref.amount,
19
+ indexZeroBase = _ref.indexZeroBase;
20
+
21
+ return (0, _toConsumableArray2.default)(new Array(amount)).map(function (_item, index) {
22
+ var nextZeroFilledIndex = (0, _pad.pad)(index + 1, indexZeroBase);
23
+ var imageSrc = imagesSrc.replace('{index}', nextZeroFilledIndex);
24
+
25
+ if (loadOriginalImages) {
26
+ var imageOriginalSrc = imageSrc.replace(_regex.ORGINAL_SIZE_REGEX, '').replace(_regex.AND_SYMBOL_REGEX, '?');
27
+ return imageOriginalSrc;
28
+ }
29
+
30
+ return imageSrc;
31
+ });
32
+ };
33
+
34
+ exports.prepareImagesFromFolder = prepareImagesFromFolder;
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.prepareImagesFromList = void 0;
9
+
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+
12
+ var _generateImagesPath = require("../../image-src/generate-images-path");
13
+
14
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
15
+
16
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
17
+
18
+ var prepareImagesFromList = function prepareImagesFromList(images, srcConfig, loadOriginalImages) {
19
+ var folder = srcConfig.folder;
20
+ return images.map(function (src) {
21
+ var nextSrcConfig = _objectSpread({}, srcConfig);
22
+
23
+ nextSrcConfig.folder = /(http(s?)):\/\//gi.test(src) ? '' : folder;
24
+ nextSrcConfig.filename = src;
25
+
26
+ if (loadOriginalImages) {
27
+ var lastIndex = resultSrc.lastIndexOf('//');
28
+ return resultSrc.slice(lastIndex);
29
+ }
30
+
31
+ return (0, _generateImagesPath.generateImagesPath)(nextSrcConfig);
32
+ });
33
+ };
34
+
35
+ exports.prepareImagesFromList = prepareImagesFromList;
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.initLazyload = void 0;
7
+
8
+ var _prepareFirstImageFromFolder = require("./prepare-first-image/prepare-first-image-from-folder");
9
+
10
+ var _prepareFirstImageFromList = require("./prepare-first-image/prepare-first-image-from-list");
11
+
12
+ var initLazyload = function initLazyload(imagesSrc, srcConfig, cb) {
13
+ var _ref = srcConfig || {},
14
+ imageList = _ref.imageList,
15
+ lazySelector = _ref.lazySelector,
16
+ innerBox = _ref.innerBox;
17
+
18
+ var firstImageSrc;
19
+
20
+ if (imageList) {
21
+ try {
22
+ var images = JSON.parse(imageList);
23
+ firstImageSrc = (0, _prepareFirstImageFromList.prepareFirstImageFromList)(images, srcConfig);
24
+ } catch (error) {
25
+ console.error("Wrong format in image-list attribute: ".concat(error.message));
26
+ }
27
+ } else {
28
+ firstImageSrc = (0, _prepareFirstImageFromFolder.prepareFirstImageFromFolder)(imagesSrc, srcConfig);
29
+ }
30
+
31
+ var image = new Image();
32
+ image.setAttribute('data-src', firstImageSrc);
33
+ image.style.position = 'absolute';
34
+ image.style.top = 0;
35
+ image.style.left = 0;
36
+ image.style.width = '100%';
37
+ image.style.maxWidth = '100%';
38
+ image.style.maxHeight = '100%';
39
+ if (lazySelector) image.className = lazySelector;
40
+ innerBox.appendChild(image);
41
+
42
+ if (cb) {
43
+ image.onload = function () {
44
+ return cb(image);
45
+ };
46
+ }
47
+ };
48
+
49
+ exports.initLazyload = initLazyload;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.prepareFirstImageFromFolder = void 0;
7
+
8
+ var _pad = require("../../pad");
9
+
10
+ var prepareFirstImageFromFolder = function prepareFirstImageFromFolder(imagesSrcs, srcConfig) {
11
+ var _ref = srcConfig || {},
12
+ indexZeroBase = _ref.indexZeroBase;
13
+
14
+ var nextZeroFilledIndex = (0, _pad.pad)(1, indexZeroBase);
15
+ return imagesSrcs.replace('{index}', nextZeroFilledIndex);
16
+ };
17
+
18
+ exports.prepareFirstImageFromFolder = prepareFirstImageFromFolder;
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.prepareFirstImageFromList = void 0;
9
+
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+
12
+ var _generateImagesPath = require("../../../image-src/generate-images-path");
13
+
14
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
15
+
16
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
17
+
18
+ var prepareFirstImageFromList = function prepareFirstImageFromList(images, srcConfig) {
19
+ var folder = srcConfig.folder;
20
+ var firstImageSrc = images[0];
21
+
22
+ var nextSrcConfig = _objectSpread({}, srcConfig);
23
+
24
+ nextSrcConfig.folder = /(http(s?)):\/\//gi.test(firstImageSrc) ? '' : folder;
25
+ nextSrcConfig.filename = firstImageSrc;
26
+ return (0, _generateImagesPath.generateImagesPath)(nextSrcConfig);
27
+ };
28
+
29
+ exports.prepareFirstImageFromList = prepareFirstImageFromList;
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.loadImageAsPromise = void 0;
9
+
10
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
+
12
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
+
14
+ var loadImageAsPromise = /*#__PURE__*/function () {
15
+ var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(src, index, cb) {
16
+ var image;
17
+ return _regenerator.default.wrap(function _callee$(_context) {
18
+ while (1) {
19
+ switch (_context.prev = _context.next) {
20
+ case 0:
21
+ image = new Image();
22
+ image.src = src;
23
+ return _context.abrupt("return", new Promise(function (reslove) {
24
+ image.onload = function () {
25
+ reslove(image);
26
+
27
+ if (cb) {
28
+ cb(image, index);
29
+ }
30
+ };
31
+
32
+ image.onerror = function () {
33
+ reslove(image);
34
+
35
+ if (cb) {
36
+ cb(image, index);
37
+ }
38
+ };
39
+ }));
40
+
41
+ case 3:
42
+ case "end":
43
+ return _context.stop();
44
+ }
45
+ }
46
+ }, _callee);
47
+ }));
48
+
49
+ return function loadImageAsPromise(_x, _x2, _x3) {
50
+ return _ref.apply(this, arguments);
51
+ };
52
+ }();
53
+
54
+ exports.loadImageAsPromise = loadImageAsPromise;
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.loadImagesRelativeToContainerSize = void 0;
9
+
10
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
+
12
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
+
14
+ var _loadImageAsPromise = require("./load-image-as-promise");
15
+
16
+ var loadImagesRelativeToContainerSize = /*#__PURE__*/function () {
17
+ var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(imagesSrcs, cb) {
18
+ return _regenerator.default.wrap(function _callee2$(_context2) {
19
+ while (1) {
20
+ switch (_context2.prev = _context2.next) {
21
+ case 0:
22
+ _context2.next = 2;
23
+ return Promise.all(imagesSrcs.map( /*#__PURE__*/function () {
24
+ var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(src, index) {
25
+ return _regenerator.default.wrap(function _callee$(_context) {
26
+ while (1) {
27
+ switch (_context.prev = _context.next) {
28
+ case 0:
29
+ _context.next = 2;
30
+ return (0, _loadImageAsPromise.loadImageAsPromise)(src, index, cb);
31
+
32
+ case 2:
33
+ case "end":
34
+ return _context.stop();
35
+ }
36
+ }
37
+ }, _callee);
38
+ }));
39
+
40
+ return function (_x3, _x4) {
41
+ return _ref2.apply(this, arguments);
42
+ };
43
+ }()));
44
+
45
+ case 2:
46
+ case "end":
47
+ return _context2.stop();
48
+ }
49
+ }
50
+ }, _callee2);
51
+ }));
52
+
53
+ return function loadImagesRelativeToContainerSize(_x, _x2) {
54
+ return _ref.apply(this, arguments);
55
+ };
56
+ }();
57
+
58
+ exports.loadImagesRelativeToContainerSize = loadImagesRelativeToContainerSize;
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.loadOriginalImages = void 0;
9
+
10
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
+
12
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
+
14
+ var _loadImageAsPromise = require("./load-image-as-promise");
15
+
16
+ var loadOriginalImages = /*#__PURE__*/function () {
17
+ var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(imagesSrcs, cb) {
18
+ return _regenerator.default.wrap(function _callee2$(_context2) {
19
+ while (1) {
20
+ switch (_context2.prev = _context2.next) {
21
+ case 0:
22
+ _context2.next = 2;
23
+ return Promise.all(imagesSrcs.map( /*#__PURE__*/function () {
24
+ var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(src, index) {
25
+ return _regenerator.default.wrap(function _callee$(_context) {
26
+ while (1) {
27
+ switch (_context.prev = _context.next) {
28
+ case 0:
29
+ _context.next = 2;
30
+ return (0, _loadImageAsPromise.loadImageAsPromise)(src, index, cb);
31
+
32
+ case 2:
33
+ case "end":
34
+ return _context.stop();
35
+ }
36
+ }
37
+ }, _callee);
38
+ }));
39
+
40
+ return function (_x3, _x4) {
41
+ return _ref2.apply(this, arguments);
42
+ };
43
+ }()));
44
+
45
+ case 2:
46
+ case "end":
47
+ return _context2.stop();
48
+ }
49
+ }
50
+ }, _callee2);
51
+ }));
52
+
53
+ return function loadOriginalImages(_x, _x2) {
54
+ return _ref.apply(this, arguments);
55
+ };
56
+ }();
57
+
58
+ exports.loadOriginalImages = loadOriginalImages;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.pad = void 0;
7
+
8
+ var pad = function pad(n) {
9
+ var width = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
10
+ n += '';
11
+ return n.length >= width ? n : new Array(width - n.length + 1).join('0') + n;
12
+ };
13
+
14
+ exports.pad = pad;
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.preloadImages = void 0;
7
+
8
+ var _loadImagesRelativeToContainerSize = require("./load-images-relative-to-container-size");
9
+
10
+ var _prepareImagesFromFolder = require("./images-from-folder/prepare-images-from-folder");
11
+
12
+ var _prepareImagesFromList = require("./images-from-list/prepare-images-from-list");
13
+
14
+ /* eslint-disable no-console */
15
+ var preloadImages = function preloadImages(srcConfig, imagesSrc, cb) {
16
+ var _ref = srcConfig || {},
17
+ imageList = _ref.imageList;
18
+
19
+ var imagesSrcs = [];
20
+
21
+ if (imageList) {
22
+ try {
23
+ var images = JSON.parse(imageList);
24
+ imagesSrcs = (0, _prepareImagesFromList.prepareImagesFromList)(images, srcConfig);
25
+ } catch (error) {
26
+ console.error("Wrong format in image-list attribute: ".concat(error.message));
27
+ }
28
+ } else {
29
+ imagesSrcs = (0, _prepareImagesFromFolder.prepareImagesFromFolder)(imagesSrc, srcConfig);
30
+ }
31
+
32
+ (0, _loadImagesRelativeToContainerSize.loadImagesRelativeToContainerSize)(imagesSrcs, cb);
33
+ };
34
+
35
+ exports.preloadImages = preloadImages;
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.preloadOriginalImages = void 0;
7
+
8
+ var _prepareImagesFromFolder = require("./images-from-folder/prepare-images-from-folder");
9
+
10
+ var _prepareImagesFromList = require("./images-from-list/prepare-images-from-list");
11
+
12
+ var _loadOriginalImages = require("./load-original-images");
13
+
14
+ /* eslint-disable no-console */
15
+ var preloadOriginalImages = function preloadOriginalImages(srcConfig, imagesSrc, cb) {
16
+ var _ref = srcConfig || {},
17
+ imageList = _ref.imageList;
18
+
19
+ var imagesSrcs = [];
20
+
21
+ if (imageList) {
22
+ try {
23
+ var images = JSON.parse(imageList);
24
+ imagesSrcs = (0, _prepareImagesFromList.prepareImagesFromList)(images, srcConfig, true);
25
+ } catch (error) {
26
+ console.error("Wrong format in image-list attribute: ".concat(error.message));
27
+ }
28
+ } else {
29
+ imagesSrcs = (0, _prepareImagesFromFolder.prepareImagesFromFolder)(imagesSrc, srcConfig, true);
30
+ }
31
+
32
+ (0, _loadOriginalImages.loadOriginalImages)(imagesSrcs, cb);
33
+ };
34
+
35
+ exports.preloadOriginalImages = preloadOriginalImages;