PluginProbe
Elementor Website Builder – more than just a page builder / 4.3.1
Elementor Website Builder – more than just a page builder v4.3.1
4.3.1 4.3.0 4.3.0-beta3 4.3.0-beta2 4.3.0-beta1 4.2.4 4.2.3 4.2.2 4.2.1 4.2.0 4.1.5 4.2.0-beta2 4.2.0-dev2 4.2.0-beta1 4.1.4 4.1.3 4.1.2 4.1.1 4.1.0 4.1.0-beta3 4.1.0-dev3 4.0.9 4.1.0-beta2 4.1.0-dev2 4.0.8 All 454 releases
← All changes | assets/js/interactions.js +629 -950 4.1.1 → 4.3.1 View file →
@@ -1,970 +1,649 @@
1 -/******/ (() => { // webpackBootstrap
2 -/******/ var __webpack_modules__ = ({
1 +'use strict';
3 2
4 -/***/ "../modules/interactions/assets/js/interactions-breakpoints.js":
5 -/*!*********************************************************************!*\
6 - !*** ../modules/interactions/assets/js/interactions-breakpoints.js ***!
7 - \*********************************************************************/
8 -/***/ ((__unused_webpack_module, exports) => {
3 +(function() {
9 4
10 -"use strict";
5 +//#region \0rolldown/runtime.js
6 + var __defProp = Object.defineProperty;
7 + var __name = (target, value) => __defProp(target, "name", {
8 + value,
9 + configurable: true
10 + });
11 11
12 +//#endregion
12 13
13 -Object.defineProperty(exports, "__esModule", ({
14 - value: true
15 -}));
16 -exports.getActiveBreakpoint = getActiveBreakpoint;
17 -exports.initBreakpoints = initBreakpoints;
18 -var RESIZE_DEBOUNCE_TIMEOUT = 100;
19 -var breakpoints = {
20 - list: {},
21 - active: {},
22 - onChange: function onChange() {}
23 -};
24 -function getActiveBreakpoint() {
25 - return breakpoints.active;
26 -}
27 -function matchBreakpoint(width) {
28 - for (var label in breakpoints.list) {
29 - var breakpoint = breakpoints.list[label];
30 - if ('min' === breakpoint.direction && width >= breakpoint.value) {
31 - return label;
32 - }
33 - if ('max' === breakpoint.direction && breakpoint.value >= width) {
34 - return label;
35 - }
36 - }
37 - return 'desktop';
38 -}
39 -function attachEventListeners() {
40 - var timeout = null;
41 - var onResize = function onResize() {
42 - if (timeout) {
43 - window.clearTimeout(timeout);
44 - timeout = null;
45 - }
46 - timeout = window.setTimeout(function () {
47 - var currentBreakpoint = matchBreakpoint(window.innerWidth);
48 - if (currentBreakpoint === breakpoints.active) {
49 - return;
50 - }
51 - breakpoints.active = currentBreakpoint;
52 - if ('function' === typeof breakpoints.onChange) {
53 - breakpoints.onChange(breakpoints.active);
54 - }
55 - }, RESIZE_DEBOUNCE_TIMEOUT);
56 - };
57 - window.addEventListener('resize', onResize);
58 -}
59 -function getBreakpointsList() {
60 - var _ElementorInteraction;
61 - return ((_ElementorInteraction = ElementorInteractionsConfig) === null || _ElementorInteraction === void 0 ? void 0 : _ElementorInteraction.breakpoints) || {};
62 -}
63 -function initBreakpoints() {
64 - var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
65 - onChange = _ref.onChange;
66 - breakpoints.list = getBreakpointsList();
67 - breakpoints.active = matchBreakpoint(window.innerWidth);
68 - if ('function' === typeof onChange) {
69 - breakpoints.onChange = onChange;
70 - }
71 - attachEventListeners();
72 -}
14 +//#region node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js
15 + function _arrayWithHoles(r) {
16 + if (Array.isArray(r)) return r;
17 + }
73 18
74 -/***/ }),
19 +//#endregion
20 +//#region node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js
21 + function _iterableToArrayLimit(r, l) {
22 + var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
23 + if (null != t) {
24 + var e;
25 + var n;
26 + var i;
27 + var u;
28 + var a = [];
29 + var f = !0;
30 + var o = !1;
31 + try {
32 + if (i = (t = t.call(r)).next, 0 === l) {
33 + if (Object(t) !== t) return;
34 + f = !1;
35 + } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
36 + } catch (r) {
37 + o = !0, n = r;
38 + } finally {
39 + try {
40 + if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
41 + } finally {
42 + if (o) throw n;
43 + }
44 + }
45 + return a;
46 + }
47 + }
75 48
76 -/***/ "../modules/interactions/assets/js/interactions-shared-utils.js":
77 -/*!**********************************************************************!*\
78 - !*** ../modules/interactions/assets/js/interactions-shared-utils.js ***!
79 - \**********************************************************************/
80 -/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
49 +//#endregion
50 +//#region node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js
51 + function _arrayLikeToArray$1(r, a) {
52 + (null == a || a > r.length) && (a = r.length);
53 + for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
54 + return n;
55 + }
56 + __name(_arrayLikeToArray$1, "_arrayLikeToArray");
81 57
82 -"use strict";
58 +//#endregion
59 +//#region node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js
60 + function _unsupportedIterableToArray$1(r, a) {
61 + if (r) {
62 + if ("string" == typeof r) return _arrayLikeToArray$1(r, a);
63 + var t = {}.toString.call(r).slice(8, -1);
64 + return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$1(r, a) : void 0;
65 + }
66 + }
67 + __name(_unsupportedIterableToArray$1, "_unsupportedIterableToArray");
83 68
69 +//#endregion
70 +//#region node_modules/@babel/runtime/helpers/esm/nonIterableRest.js
71 + function _nonIterableRest() {
72 + throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
73 + }
84 74
85 -var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
86 -Object.defineProperty(exports, "__esModule", ({
87 - value: true
88 -}));
89 -exports.config = config;
90 -exports.extractInteractionId = extractInteractionId;
91 -exports.getAnimateFunction = getAnimateFunction;
92 -exports.getInViewFunction = getInViewFunction;
93 -exports.getTransformBaselineFromComputedStyle = getTransformBaselineFromComputedStyle;
94 -exports.parseInteractionsData = parseInteractionsData;
95 -exports.preserveTransformKeyframes = preserveTransformKeyframes;
96 -exports.resetElementStyles = resetElementStyles;
97 -exports.skipInteraction = skipInteraction;
98 -exports.timingValueToMs = timingValueToMs;
99 -exports.unwrapInteractionValue = unwrapInteractionValue;
100 -exports.waitForAnimateFunction = waitForAnimateFunction;
101 -var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
102 -var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
103 -var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"));
104 -var _interactionsBreakpoints = __webpack_require__(/*! ./interactions-breakpoints.js */ "../modules/interactions/assets/js/interactions-breakpoints.js");
105 -function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
106 -function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
107 -function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t.return || t.return(); } finally { if (u) throw o; } } }; }
108 -function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
109 -function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
110 -function config() {
111 - var _window$ElementorInte, _window$ElementorInte2;
112 - return (_window$ElementorInte = (_window$ElementorInte2 = window.ElementorInteractionsConfig) === null || _window$ElementorInte2 === void 0 ? void 0 : _window$ElementorInte2.constants) !== null && _window$ElementorInte !== void 0 ? _window$ElementorInte : {};
113 -}
114 -function skipInteraction(interaction) {
115 - var _interaction$breakpoi;
116 - var breakpoint = (0, _interactionsBreakpoints.getActiveBreakpoint)();
117 - return interaction === null || interaction === void 0 || (_interaction$breakpoi = interaction.breakpoints) === null || _interaction$breakpoi === void 0 || (_interaction$breakpoi = _interaction$breakpoi.excluded) === null || _interaction$breakpoi === void 0 ? void 0 : _interaction$breakpoi.includes(breakpoint);
118 -}
119 -function extractInteractionId(interaction) {
120 - if ('interaction-item' === (interaction === null || interaction === void 0 ? void 0 : interaction.$$type) && interaction !== null && interaction !== void 0 && interaction.value) {
121 - var _interaction$value$in;
122 - return ((_interaction$value$in = interaction.value.interaction_id) === null || _interaction$value$in === void 0 ? void 0 : _interaction$value$in.value) || null;
123 - }
124 - return null;
125 -}
126 -function motionFunc(name) {
127 - var _window, _window2;
128 - if ('function' !== typeof ((_window = window) === null || _window === void 0 || (_window = _window.Motion) === null || _window === void 0 ? void 0 : _window[name])) {
129 - return undefined;
130 - }
131 - return (_window2 = window) === null || _window2 === void 0 || (_window2 = _window2.Motion) === null || _window2 === void 0 ? void 0 : _window2[name];
132 -}
133 -function getAnimateFunction() {
134 - return motionFunc('animate');
135 -}
136 -function getInViewFunction() {
137 - return motionFunc('inView');
138 -}
139 -function waitForAnimateFunction(callback) {
140 - var maxAttempts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 10;
141 - if (getAnimateFunction()) {
142 - callback();
143 - return;
144 - }
145 - if (maxAttempts > 0) {
146 - setTimeout(function () {
147 - return waitForAnimateFunction(callback, maxAttempts - 1);
148 - }, 100);
149 - }
150 -}
151 -function parseInteractionsData(data) {
152 - if ('string' === typeof data) {
153 - try {
154 - return JSON.parse(data);
155 - } catch (_unused) {
156 - return null;
157 - }
158 - }
159 - return data;
160 -}
161 -function unwrapInteractionValue(propValue) {
162 - var fallback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
163 - // Supports Elementor's typed wrapper shape: { $$type: '...', value: ... }.
164 - if (propValue && 'object' === (0, _typeof2.default)(propValue) && '$$type' in propValue) {
165 - return propValue.value;
166 - }
167 - return propValue !== null && propValue !== void 0 ? propValue : fallback;
168 -}
169 -function timingValueToMs(timingValue, fallbackMs) {
170 - if (null === timingValue || undefined === timingValue) {
171 - return fallbackMs;
172 - }
173 - var unwrapped = unwrapInteractionValue(timingValue);
174 - if ('number' === typeof unwrapped) {
175 - return unwrapped;
176 - }
177 - var sizeObj = unwrapInteractionValue(unwrapped);
178 - var size = sizeObj === null || sizeObj === void 0 ? void 0 : sizeObj.size;
179 - var unit = (sizeObj === null || sizeObj === void 0 ? void 0 : sizeObj.unit) || 'ms';
180 - if ('number' !== typeof size) {
181 - return fallbackMs;
182 - }
183 - if ('s' === unit) {
184 - return size * 1000;
185 - }
186 - return size;
187 -}
188 -function resetElementStyles(element) {
189 - if (!element) {
190 - return;
191 - }
192 - element.style.transition = '';
193 - element.style.transform = '';
194 - element.style.opacity = '';
195 -}
196 -var TRANSFORM_EPSILON = 0.001;
197 -var radiansToDegrees = function radiansToDegrees(radians) {
198 - return radians * (180 / Math.PI);
199 -};
200 -var isNear = function isNear(value, expected) {
201 - return Math.abs(value - expected) <= TRANSFORM_EPSILON;
202 -};
203 -var isNearZero = function isNearZero(value) {
204 - return isNear(value, 0);
205 -};
206 -var isNearOne = function isNearOne(value) {
207 - return isNear(value, 1);
208 -};
209 -function parseMatrixValues(transformValue) {
210 - var match = transformValue.match(/^matrix(3d)?\((.+)\)$/);
211 - if (!match) {
212 - return null;
213 - }
214 - return match[2].split(',').map(function (token) {
215 - return Number.parseFloat(token.trim());
216 - }).filter(function (value) {
217 - return Number.isFinite(value);
218 - });
219 -}
220 -function createMatrixFromTransform(transformValue) {
221 - if (!transformValue || 'none' === transformValue) {
222 - return null;
223 - }
224 - var matrixFactories = [window.DOMMatrixReadOnly, window.DOMMatrix].filter(function (Factory) {
225 - return 'function' === typeof Factory;
226 - });
227 - var _iterator = _createForOfIteratorHelper(matrixFactories),
228 - _step;
229 - try {
230 - for (_iterator.s(); !(_step = _iterator.n()).done;) {
231 - var MatrixFactory = _step.value;
232 - try {
233 - var _ref, _matrix$a, _ref2, _matrix$b, _ref3, _matrix$c, _ref4, _matrix$d, _ref5, _matrix$e, _ref6, _matrix$f;
234 - var matrix = new MatrixFactory(transformValue);
235 - // CSS matrix(a,b,c,d,e,f): x' = ax + cy + e, y' = bx + dy + f
236 - // matrixXfromY = how much input Y contributes to output X (etc.)
237 - var compactMatrix = {
238 - matrixXfromX: (_ref = (_matrix$a = matrix.a) !== null && _matrix$a !== void 0 ? _matrix$a : matrix.m11) !== null && _ref !== void 0 ? _ref : 1,
239 - matrixYfromX: (_ref2 = (_matrix$b = matrix.b) !== null && _matrix$b !== void 0 ? _matrix$b : matrix.m12) !== null && _ref2 !== void 0 ? _ref2 : 0,
240 - matrixXfromY: (_ref3 = (_matrix$c = matrix.c) !== null && _matrix$c !== void 0 ? _matrix$c : matrix.m21) !== null && _ref3 !== void 0 ? _ref3 : 0,
241 - matrixYfromY: (_ref4 = (_matrix$d = matrix.d) !== null && _matrix$d !== void 0 ? _matrix$d : matrix.m22) !== null && _ref4 !== void 0 ? _ref4 : 1,
242 - matrixTranslateX: (_ref5 = (_matrix$e = matrix.e) !== null && _matrix$e !== void 0 ? _matrix$e : matrix.m41) !== null && _ref5 !== void 0 ? _ref5 : 0,
243 - matrixTranslateY: (_ref6 = (_matrix$f = matrix.f) !== null && _matrix$f !== void 0 ? _matrix$f : matrix.m42) !== null && _ref6 !== void 0 ? _ref6 : 0
244 - };
245 - if (Object.values(compactMatrix).every(Number.isFinite)) {
246 - return compactMatrix;
247 - }
248 - } catch (_unused2) {}
249 - }
250 - } catch (err) {
251 - _iterator.e(err);
252 - } finally {
253 - _iterator.f();
254 - }
255 - var parsedValues = parseMatrixValues(transformValue);
256 - if (!parsedValues) {
257 - return null;
258 - }
259 - if (6 === parsedValues.length) {
260 - var _parsedValues = (0, _slicedToArray2.default)(parsedValues, 6),
261 - matrixXfromX = _parsedValues[0],
262 - matrixYfromX = _parsedValues[1],
263 - matrixXfromY = _parsedValues[2],
264 - matrixYfromY = _parsedValues[3],
265 - matrixTranslateX = _parsedValues[4],
266 - matrixTranslateY = _parsedValues[5];
267 - return {
268 - matrixXfromX: matrixXfromX,
269 - matrixYfromX: matrixYfromX,
270 - matrixXfromY: matrixXfromY,
271 - matrixYfromY: matrixYfromY,
272 - matrixTranslateX: matrixTranslateX,
273 - matrixTranslateY: matrixTranslateY
274 - };
275 - }
276 - if (16 === parsedValues.length) {
277 - var _parsedValues2 = (0, _slicedToArray2.default)(parsedValues, 14),
278 - _matrixXfromX = _parsedValues2[0],
279 - _matrixYfromX = _parsedValues2[1],
280 - _matrixXfromY = _parsedValues2[4],
281 - _matrixYfromY = _parsedValues2[5],
282 - _matrixTranslateX = _parsedValues2[12],
283 - _matrixTranslateY = _parsedValues2[13];
284 - return {
285 - matrixXfromX: _matrixXfromX,
286 - matrixYfromX: _matrixYfromX,
287 - matrixXfromY: _matrixXfromY,
288 - matrixYfromY: _matrixYfromY,
289 - matrixTranslateX: _matrixTranslateX,
290 - matrixTranslateY: _matrixTranslateY
291 - };
292 - }
293 - return null;
294 -}
295 -function getTransformBaselineFromComputedStyle(element) {
296 - if (!element) {
297 - return null;
298 - }
299 - var computedStyle = window.getComputedStyle(element);
300 - var matrix = createMatrixFromTransform((computedStyle === null || computedStyle === void 0 ? void 0 : computedStyle.transform) || '');
301 - if (!matrix) {
302 - return null;
303 - }
304 - var matrixXfromX = matrix.matrixXfromX,
305 - matrixYfromX = matrix.matrixYfromX,
306 - matrixXfromY = matrix.matrixXfromY,
307 - matrixYfromY = matrix.matrixYfromY,
308 - matrixTranslateX = matrix.matrixTranslateX,
309 - matrixTranslateY = matrix.matrixTranslateY;
310 - var scaleX = Math.hypot(matrixXfromX, matrixYfromX);
311 - var determinant = matrixXfromX * matrixYfromY - matrixYfromX * matrixXfromY;
312 - var scaleY = scaleX ? determinant / scaleX : Math.hypot(matrixXfromY, matrixYfromY);
313 - var rotate = radiansToDegrees(Math.atan2(matrixYfromX, matrixXfromX));
314 - var shear = scaleX ? (matrixXfromX * matrixXfromY + matrixYfromX * matrixYfromY) / (scaleX * scaleX) : 0;
315 - var skewX = radiansToDegrees(Math.atan(shear));
316 - return {
317 - x: matrixTranslateX,
318 - y: matrixTranslateY,
319 - scaleX: Number.isFinite(scaleX) ? scaleX : 1,
320 - scaleY: Number.isFinite(scaleY) ? scaleY : 1,
321 - rotate: Number.isFinite(rotate) ? rotate : 0,
322 - skewX: Number.isFinite(skewX) ? skewX : 0
323 - };
324 -}
325 -function preserveTransformKeyframes(keyframes, baseline) {
326 - if (!baseline) {
327 - return keyframes;
328 - }
329 - var mergedKeyframes = _objectSpread({}, keyframes);
330 - var hasScaleShorthand = mergedKeyframes.scale !== undefined;
331 - var canSetScaleX = mergedKeyframes.scaleX === undefined && !isNearOne(baseline.scaleX);
332 - var canSetScaleY = mergedKeyframes.scaleY === undefined && !isNearOne(baseline.scaleY);
333 - if (mergedKeyframes.x === undefined && !isNearZero(baseline.x)) {
334 - mergedKeyframes.x = [baseline.x, baseline.x];
335 - }
336 - if (mergedKeyframes.y === undefined && !isNearZero(baseline.y)) {
337 - mergedKeyframes.y = [baseline.y, baseline.y];
338 - }
339 - if (!hasScaleShorthand) {
340 - if (canSetScaleX && canSetScaleY && isNear(baseline.scaleX, baseline.scaleY)) {
341 - mergedKeyframes.scale = [baseline.scaleX, baseline.scaleX];
342 - } else {
343 - if (canSetScaleX) {
344 - mergedKeyframes.scaleX = [baseline.scaleX, baseline.scaleX];
345 - }
346 - if (canSetScaleY) {
347 - mergedKeyframes.scaleY = [baseline.scaleY, baseline.scaleY];
348 - }
349 - }
350 - }
351 - if (mergedKeyframes.rotate === undefined && mergedKeyframes.rotateZ === undefined && !isNearZero(baseline.rotate)) {
352 - mergedKeyframes.rotate = [baseline.rotate, baseline.rotate];
353 - }
354 - if (mergedKeyframes.skew === undefined && mergedKeyframes.skewX === undefined && !isNearZero(baseline.skewX)) {
355 - mergedKeyframes.skewX = [baseline.skewX, baseline.skewX];
356 - }
357 - return mergedKeyframes;
358 -}
75 +//#endregion
76 +//#region node_modules/@babel/runtime/helpers/esm/slicedToArray.js
77 + function _slicedToArray(r, e) {
78 + return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray$1(r, e) || _nonIterableRest();
79 + }
359 80
360 -// Expose on elementorModules for Pro and other consumers.
361 -window.elementorModules = window.elementorModules || {};
362 -window.elementorModules.interactions = {
363 - config: config,
364 - skipInteraction: skipInteraction,
365 - extractInteractionId: extractInteractionId,
366 - getAnimateFunction: getAnimateFunction,
367 - getInViewFunction: getInViewFunction,
368 - waitForAnimateFunction: waitForAnimateFunction,
369 - parseInteractionsData: parseInteractionsData,
370 - unwrapInteractionValue: unwrapInteractionValue,
371 - timingValueToMs: timingValueToMs,
372 - resetElementStyles: resetElementStyles,
373 - getTransformBaselineFromComputedStyle: getTransformBaselineFromComputedStyle,
374 - preserveTransformKeyframes: preserveTransformKeyframes
375 -};
81 +//#endregion
82 +//#region node_modules/@babel/runtime/helpers/esm/typeof.js
83 + function _typeof(o) {
84 + "@babel/helpers - typeof";
85 + return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
86 + return typeof o;
87 + } : function(o) {
88 + return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
89 + }, _typeof(o);
90 + }
376 91
377 -/***/ }),
92 +//#endregion
93 +//#region node_modules/@babel/runtime/helpers/esm/toPrimitive.js
94 + function toPrimitive(t, r) {
95 + if ("object" != _typeof(t) || !t) return t;
96 + var e = t[Symbol.toPrimitive];
97 + if (void 0 !== e) {
98 + var i = e.call(t, r || "default");
99 + if ("object" != _typeof(i)) return i;
100 + throw new TypeError("@@toPrimitive must return a primitive value.");
101 + }
102 + return ("string" === r ? String : Number)(t);
103 + }
378 104
379 -/***/ "../modules/interactions/assets/js/interactions-utils.js":
380 -/*!***************************************************************!*\
381 - !*** ../modules/interactions/assets/js/interactions-utils.js ***!
382 - \***************************************************************/
383 -/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
105 +//#endregion
106 +//#region node_modules/@babel/runtime/helpers/esm/toPropertyKey.js
107 + function toPropertyKey(t) {
108 + var i = toPrimitive(t, "string");
109 + return "symbol" == _typeof(i) ? i : i + "";
110 + }
384 111
385 -"use strict";
112 +//#endregion
113 +//#region node_modules/@babel/runtime/helpers/esm/defineProperty.js
114 + function _defineProperty(e, r, t) {
115 + return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
116 + value: t,
117 + enumerable: !0,
118 + configurable: !0,
119 + writable: !0
120 + }) : e[r] = t, e;
121 + }
386 122
123 +//#endregion
124 +//#region modules/interactions/assets/js/interactions-breakpoints.js
125 + var RESIZE_DEBOUNCE_TIMEOUT = 100;
126 + var breakpoints = {
127 + list: {},
128 + active: {},
129 + onChange: function onChange() {}
130 + };
131 + function getActiveBreakpoint() {
132 + return breakpoints.active;
133 + }
134 + function matchBreakpoint(width) {
135 + for (var label in breakpoints.list) {
136 + var breakpoint = breakpoints.list[label];
137 + if ("min" === breakpoint.direction && width >= breakpoint.value) return label;
138 + if ("max" === breakpoint.direction && breakpoint.value >= width) return label;
139 + }
140 + return "desktop";
141 + }
142 + function attachEventListeners() {
143 + var timeout = null;
144 + window.addEventListener("resize", function onResize() {
145 + if (timeout) {
146 + window.clearTimeout(timeout);
147 + timeout = null;
148 + }
149 + timeout = window.setTimeout(function() {
150 + var currentBreakpoint = matchBreakpoint(window.innerWidth);
151 + if (currentBreakpoint === breakpoints.active) return;
152 + breakpoints.active = currentBreakpoint;
153 + if ("function" === typeof breakpoints.onChange) breakpoints.onChange(breakpoints.active);
154 + }, RESIZE_DEBOUNCE_TIMEOUT);
155 + });
156 + }
157 + function getBreakpointsList() {
158 + var _ElementorInteraction;
159 + return ((_ElementorInteraction = ElementorInteractionsConfig) === null || _ElementorInteraction === void 0 ? void 0 : _ElementorInteraction.breakpoints) || {};
160 + }
161 + function initBreakpoints() {
162 + var onChange = (arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}).onChange;
163 + breakpoints.list = getBreakpointsList();
164 + breakpoints.active = matchBreakpoint(window.innerWidth);
165 + if ("function" === typeof onChange) breakpoints.onChange = onChange;
166 + attachEventListeners();
167 + }
387 168
388 -var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
389 -Object.defineProperty(exports, "__esModule", ({
390 - value: true
391 -}));
392 -Object.defineProperty(exports, "config", ({
393 - enumerable: true,
394 - get: function get() {
395 - return _interactionsSharedUtils.config;
396 - }
397 -}));
398 -exports.extractAnimationConfig = extractAnimationConfig;
399 -Object.defineProperty(exports, "extractInteractionId", ({
400 - enumerable: true,
401 - get: function get() {
402 - return _interactionsSharedUtils.extractInteractionId;
403 - }
404 -}));
405 -exports.findElementByDataId = findElementByDataId;
406 -Object.defineProperty(exports, "getAnimateFunction", ({
407 - enumerable: true,
408 - get: function get() {
409 - return _interactionsSharedUtils.getAnimateFunction;
410 - }
411 -}));
412 -Object.defineProperty(exports, "getInViewFunction", ({
413 - enumerable: true,
414 - get: function get() {
415 - return _interactionsSharedUtils.getInViewFunction;
416 - }
417 -}));
418 -exports.getInteractionsData = getInteractionsData;
419 -exports.getKeyframes = getKeyframes;
420 -Object.defineProperty(exports, "getTransformBaselineFromComputedStyle", ({
421 - enumerable: true,
422 - get: function get() {
423 - return _interactionsSharedUtils.getTransformBaselineFromComputedStyle;
424 - }
425 -}));
426 -exports.parseAnimationName = parseAnimationName;
427 -Object.defineProperty(exports, "parseInteractionsData", ({
428 - enumerable: true,
429 - get: function get() {
430 - return _interactionsSharedUtils.parseInteractionsData;
431 - }
432 -}));
433 -Object.defineProperty(exports, "preserveTransformKeyframes", ({
434 - enumerable: true,
435 - get: function get() {
436 - return _interactionsSharedUtils.preserveTransformKeyframes;
437 - }
438 -}));
439 -Object.defineProperty(exports, "resetElementStyles", ({
440 - enumerable: true,
441 - get: function get() {
442 - return _interactionsSharedUtils.resetElementStyles;
443 - }
444 -}));
445 -exports.skipInteraction = skipInteraction;
446 -Object.defineProperty(exports, "timingValueToMs", ({
447 - enumerable: true,
448 - get: function get() {
449 - return _interactionsSharedUtils.timingValueToMs;
450 - }
451 -}));
452 -Object.defineProperty(exports, "unwrapInteractionValue", ({
453 - enumerable: true,
454 - get: function get() {
455 - return _interactionsSharedUtils.unwrapInteractionValue;
456 - }
457 -}));
458 -Object.defineProperty(exports, "waitForAnimateFunction", ({
459 - enumerable: true,
460 - get: function get() {
461 - return _interactionsSharedUtils.waitForAnimateFunction;
462 - }
463 -}));
464 -var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
465 -var _interactionsSharedUtils = __webpack_require__(/*! ./interactions-shared-utils.js */ "../modules/interactions/assets/js/interactions-shared-utils.js");
466 -function isSupportedInteraction(animationConfig) {
467 - if (!['load', 'scrollIn', 'scrollOut'].includes(animationConfig.trigger)) {
468 - return false;
469 - }
470 - if ('custom' === animationConfig.effect) {
471 - return false;
472 - }
473 - return true;
474 -}
475 -function skipInteraction(animationConfig) {
476 - if (!isSupportedInteraction(animationConfig)) {
477 - return true;
478 - }
479 - return (0, _interactionsSharedUtils.skipInteraction)(animationConfig);
480 -}
481 -function getKeyframes(effect, type, direction) {
482 - var isIn = 'in' === type;
483 - var keyframes = {};
484 - if ('fade' === effect) {
485 - keyframes.opacity = isIn ? [0, 1] : [1, 0];
486 - }
487 - var config = (0, _interactionsSharedUtils.config)();
488 - if ('scale' === effect) {
489 - keyframes.scale = isIn ? [config.scaleStart, 1] : [1, config.scaleStart];
490 - }
491 - if (direction && 'string' === typeof direction) {
492 - var distance = config.slideDistance;
493 - var movement = {
494 - left: {
495 - x: isIn ? [-distance, 0] : [0, -distance]
496 - },
497 - right: {
498 - x: isIn ? [distance, 0] : [0, distance]
499 - },
500 - top: {
501 - y: isIn ? [-distance, 0] : [0, -distance]
502 - },
503 - bottom: {
504 - y: isIn ? [distance, 0] : [0, distance]
505 - }
506 - };
507 - direction.split('-').forEach(function (part) {
508 - if (movement[part]) {
509 - Object.assign(keyframes, movement[part]);
510 - }
511 - });
512 - }
513 - return keyframes;
514 -}
515 -function parseAnimationName(name) {
516 - var _name$split = name.split('-'),
517 - _name$split2 = (0, _slicedToArray2.default)(_name$split, 8),
518 - trigger = _name$split2[0],
519 - effect = _name$split2[1],
520 - type = _name$split2[2],
521 - direction = _name$split2[3],
522 - duration = _name$split2[4],
523 - delay = _name$split2[5];
524 - var config = (0, _interactionsSharedUtils.config)();
525 - return {
526 - trigger: trigger,
527 - effect: effect,
528 - type: type,
529 - direction: direction || null,
530 - duration: duration ? parseInt(duration, 10) : config.defaultDuration,
531 - delay: delay ? parseInt(delay, 10) : config.defaultDelay,
532 - replay: false,
533 - easing: config.defaultEasing
534 - };
535 -}
169 +//#endregion
170 +//#region modules/interactions/assets/js/interactions-shared-utils.js
171 + function ownKeys(e, r) {
172 + var t = Object.keys(e);
173 + if (Object.getOwnPropertySymbols) {
174 + var o = Object.getOwnPropertySymbols(e);
175 + r && (o = o.filter(function(r) {
176 + return Object.getOwnPropertyDescriptor(e, r).enumerable;
177 + })), t.push.apply(t, o);
178 + }
179 + return t;
180 + }
181 + function _objectSpread(e) {
182 + for (var r = 1; r < arguments.length; r++) {
183 + var t = null != arguments[r] ? arguments[r] : {};
184 + r % 2 ? ownKeys(Object(t), !0).forEach(function(r) {
185 + _defineProperty(e, r, t[r]);
186 + }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function(r) {
187 + Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
188 + });
189 + }
190 + return e;
191 + }
192 + function _createForOfIteratorHelper(r, e) {
193 + var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
194 + if (!t) {
195 + if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) {
196 + t && (r = t);
197 + var _n = 0;
198 + var F = function F() {};
199 + return {
200 + s: F,
201 + n: function n() {
202 + return _n >= r.length ? { done: !0 } : {
203 + done: !1,
204 + value: r[_n++]
205 + };
206 + },
207 + e: function e(r) {
208 + throw r;
209 + },
210 + f: F
211 + };
212 + }
213 + throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
214 + }
215 + var o;
216 + var a = !0;
217 + var u = !1;
218 + return {
219 + s: function s() {
220 + t = t.call(r);
221 + },
222 + n: function n() {
223 + var r = t.next();
224 + return a = r.done, r;
225 + },
226 + e: function e(r) {
227 + u = !0, o = r;
228 + },
229 + f: function f() {
230 + try {
231 + a || null == t.return || t.return();
232 + } finally {
233 + if (u) throw o;
234 + }
235 + }
236 + };
237 + }
238 + function _unsupportedIterableToArray(r, a) {
239 + if (r) {
240 + if ("string" == typeof r) return _arrayLikeToArray(r, a);
241 + var t = {}.toString.call(r).slice(8, -1);
242 + return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;
243 + }
244 + }
245 + function _arrayLikeToArray(r, a) {
246 + (null == a || a > r.length) && (a = r.length);
247 + for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
248 + return n;
249 + }
250 + function config() {
251 + var _window$ElementorInte;
252 + var _window$ElementorInte2;
253 + return (_window$ElementorInte = (_window$ElementorInte2 = window.ElementorInteractionsConfig) === null || _window$ElementorInte2 === void 0 ? void 0 : _window$ElementorInte2.constants) !== null && _window$ElementorInte !== void 0 ? _window$ElementorInte : {};
254 + }
255 + function skipInteraction$1(interaction) {
256 + var _interaction$breakpoi;
257 + var breakpoint = getActiveBreakpoint();
258 + return interaction === null || interaction === void 0 || (_interaction$breakpoi = interaction.breakpoints) === null || _interaction$breakpoi === void 0 || (_interaction$breakpoi = _interaction$breakpoi.excluded) === null || _interaction$breakpoi === void 0 ? void 0 : _interaction$breakpoi.includes(breakpoint);
259 + }
260 + __name(skipInteraction$1, "skipInteraction");
261 + function extractInteractionId(interaction) {
262 + if ("interaction-item" === (interaction === null || interaction === void 0 ? void 0 : interaction.$$type) && interaction !== null && interaction !== void 0 && interaction.value) {
263 + var _interaction$value$in;
264 + return ((_interaction$value$in = interaction.value.interaction_id) === null || _interaction$value$in === void 0 ? void 0 : _interaction$value$in.value) || null;
265 + }
266 + return null;
267 + }
268 + function motionFunc(name) {
269 + var _window;
270 + var _window2;
271 + if ("function" !== typeof ((_window = window) === null || _window === void 0 || (_window = _window.Motion) === null || _window === void 0 ? void 0 : _window[name])) return;
272 + return (_window2 = window) === null || _window2 === void 0 || (_window2 = _window2.Motion) === null || _window2 === void 0 ? void 0 : _window2[name];
273 + }
274 + function getAnimateFunction() {
275 + return motionFunc("animate");
276 + }
277 + function getInViewFunction() {
278 + return motionFunc("inView");
279 + }
280 + function waitForAnimateFunction(callback) {
281 + var maxAttempts = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 10;
282 + if (getAnimateFunction()) {
283 + callback();
284 + return;
285 + }
286 + if (maxAttempts > 0) setTimeout(function() {
287 + return waitForAnimateFunction(callback, maxAttempts - 1);
288 + }, 100);
289 + }
290 + function parseInteractionsData(data) {
291 + if ("string" === typeof data) try {
292 + return JSON.parse(data);
293 + } catch (_unused) {
294 + return null;
295 + }
296 + return data;
297 + }
298 + function unwrapInteractionValue(propValue) {
299 + var fallback = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
300 + if (propValue && "object" === _typeof(propValue) && "$$type" in propValue) return propValue.value;
301 + return propValue !== null && propValue !== void 0 ? propValue : fallback;
302 + }
303 + function timingValueToMs(timingValue, fallbackMs) {
304 + if (null === timingValue || void 0 === timingValue) return fallbackMs;
305 + var unwrapped = unwrapInteractionValue(timingValue);
306 + if ("number" === typeof unwrapped) return unwrapped;
307 + var sizeObj = unwrapInteractionValue(unwrapped);
308 + var size = sizeObj === null || sizeObj === void 0 ? void 0 : sizeObj.size;
309 + var unit = (sizeObj === null || sizeObj === void 0 ? void 0 : sizeObj.unit) || "ms";
310 + if ("number" !== typeof size) return fallbackMs;
311 + if ("s" === unit) return size * 1e3;
312 + return size;
313 + }
314 + function resetElementStyles(element) {
315 + if (!element) return;
316 + element.style.transition = "";
317 + element.style.transform = "";
318 + element.style.opacity = "";
319 + }
320 + var TRANSFORM_EPSILON = .001;
321 + var radiansToDegrees = function radiansToDegrees(radians) {
322 + return radians * (180 / Math.PI);
323 + };
324 + var isNear = function isNear(value, expected) {
325 + return Math.abs(value - expected) <= TRANSFORM_EPSILON;
326 + };
327 + var isNearZero = function isNearZero(value) {
328 + return isNear(value, 0);
329 + };
330 + var isNearOne = function isNearOne(value) {
331 + return isNear(value, 1);
332 + };
333 + function parseMatrixValues(transformValue) {
334 + var match = transformValue.match(/^matrix(3d)?\((.+)\)$/);
335 + if (!match) return null;
336 + return match[2].split(",").map(function(token) {
337 + return Number.parseFloat(token.trim());
338 + }).filter(function(value) {
339 + return Number.isFinite(value);
340 + });
341 + }
342 + function createMatrixFromTransform(transformValue) {
343 + if (!transformValue || "none" === transformValue) return null;
344 + var _iterator = _createForOfIteratorHelper([window.DOMMatrixReadOnly, window.DOMMatrix].filter(function(Factory) {
345 + return "function" === typeof Factory;
346 + }));
347 + var _step;
348 + try {
349 + for (_iterator.s(); !(_step = _iterator.n()).done;) {
350 + var MatrixFactory = _step.value;
351 + try {
352 + var _ref;
353 + var _matrix$a;
354 + var _ref2;
355 + var _matrix$b;
356 + var _ref3;
357 + var _matrix$c;
358 + var _ref4;
359 + var _matrix$d;
360 + var _ref5;
361 + var _matrix$e;
362 + var _ref6;
363 + var _matrix$f;
364 + var matrix = new MatrixFactory(transformValue);
365 + var compactMatrix = {
366 + matrixXfromX: (_ref = (_matrix$a = matrix.a) !== null && _matrix$a !== void 0 ? _matrix$a : matrix.m11) !== null && _ref !== void 0 ? _ref : 1,
367 + matrixYfromX: (_ref2 = (_matrix$b = matrix.b) !== null && _matrix$b !== void 0 ? _matrix$b : matrix.m12) !== null && _ref2 !== void 0 ? _ref2 : 0,
368 + matrixXfromY: (_ref3 = (_matrix$c = matrix.c) !== null && _matrix$c !== void 0 ? _matrix$c : matrix.m21) !== null && _ref3 !== void 0 ? _ref3 : 0,
369 + matrixYfromY: (_ref4 = (_matrix$d = matrix.d) !== null && _matrix$d !== void 0 ? _matrix$d : matrix.m22) !== null && _ref4 !== void 0 ? _ref4 : 1,
370 + matrixTranslateX: (_ref5 = (_matrix$e = matrix.e) !== null && _matrix$e !== void 0 ? _matrix$e : matrix.m41) !== null && _ref5 !== void 0 ? _ref5 : 0,
371 + matrixTranslateY: (_ref6 = (_matrix$f = matrix.f) !== null && _matrix$f !== void 0 ? _matrix$f : matrix.m42) !== null && _ref6 !== void 0 ? _ref6 : 0
372 + };
373 + if (Object.values(compactMatrix).every(Number.isFinite)) return compactMatrix;
374 + } catch (_unused2) {}
375 + }
376 + } catch (err) {
377 + _iterator.e(err);
378 + } finally {
379 + _iterator.f();
380 + }
381 + var parsedValues = parseMatrixValues(transformValue);
382 + if (!parsedValues) return null;
383 + if (6 === parsedValues.length) {
384 + var _parsedValues = _slicedToArray(parsedValues, 6);
385 + return {
386 + matrixXfromX: _parsedValues[0],
387 + matrixYfromX: _parsedValues[1],
388 + matrixXfromY: _parsedValues[2],
389 + matrixYfromY: _parsedValues[3],
390 + matrixTranslateX: _parsedValues[4],
391 + matrixTranslateY: _parsedValues[5]
392 + };
393 + }
394 + if (16 === parsedValues.length) {
395 + var _parsedValues2 = _slicedToArray(parsedValues, 14);
396 + return {
397 + matrixXfromX: _parsedValues2[0],
398 + matrixYfromX: _parsedValues2[1],
399 + matrixXfromY: _parsedValues2[4],
400 + matrixYfromY: _parsedValues2[5],
401 + matrixTranslateX: _parsedValues2[12],
402 + matrixTranslateY: _parsedValues2[13]
403 + };
404 + }
405 + return null;
406 + }
407 + function getTransformBaselineFromComputedStyle(element) {
408 + if (!element) return null;
409 + var computedStyle = window.getComputedStyle(element);
410 + var matrix = createMatrixFromTransform((computedStyle === null || computedStyle === void 0 ? void 0 : computedStyle.transform) || "");
411 + if (!matrix) return null;
412 + var matrixXfromX = matrix.matrixXfromX;
413 + var matrixYfromX = matrix.matrixYfromX;
414 + var matrixXfromY = matrix.matrixXfromY;
415 + var matrixYfromY = matrix.matrixYfromY;
416 + var matrixTranslateX = matrix.matrixTranslateX;
417 + var matrixTranslateY = matrix.matrixTranslateY;
418 + var scaleX = Math.hypot(matrixXfromX, matrixYfromX);
419 + var determinant = matrixXfromX * matrixYfromY - matrixYfromX * matrixXfromY;
420 + var scaleY = scaleX ? determinant / scaleX : Math.hypot(matrixXfromY, matrixYfromY);
421 + var rotate = radiansToDegrees(Math.atan2(matrixYfromX, matrixXfromX));
422 + var shear = scaleX ? (matrixXfromX * matrixXfromY + matrixYfromX * matrixYfromY) / (scaleX * scaleX) : 0;
423 + var skewX = radiansToDegrees(Math.atan(shear));
424 + return {
425 + x: matrixTranslateX,
426 + y: matrixTranslateY,
427 + scaleX: Number.isFinite(scaleX) ? scaleX : 1,
428 + scaleY: Number.isFinite(scaleY) ? scaleY : 1,
429 + rotate: Number.isFinite(rotate) ? rotate : 0,
430 + skewX: Number.isFinite(skewX) ? skewX : 0
431 + };
432 + }
433 + function preserveTransformKeyframes(keyframes, baseline) {
434 + if (!baseline) return keyframes;
435 + var mergedKeyframes = _objectSpread({}, keyframes);
436 + var hasScaleShorthand = mergedKeyframes.scale !== void 0;
437 + var canSetScaleX = mergedKeyframes.scaleX === void 0 && !isNearOne(baseline.scaleX);
438 + var canSetScaleY = mergedKeyframes.scaleY === void 0 && !isNearOne(baseline.scaleY);
439 + if (mergedKeyframes.x === void 0 && !isNearZero(baseline.x)) mergedKeyframes.x = [baseline.x, baseline.x];
440 + if (mergedKeyframes.y === void 0 && !isNearZero(baseline.y)) mergedKeyframes.y = [baseline.y, baseline.y];
441 + if (!hasScaleShorthand) if (canSetScaleX && canSetScaleY && isNear(baseline.scaleX, baseline.scaleY)) mergedKeyframes.scale = [baseline.scaleX, baseline.scaleX];
442 + else {
443 + if (canSetScaleX) mergedKeyframes.scaleX = [baseline.scaleX, baseline.scaleX];
444 + if (canSetScaleY) mergedKeyframes.scaleY = [baseline.scaleY, baseline.scaleY];
445 + }
446 + if (mergedKeyframes.rotate === void 0 && mergedKeyframes.rotateZ === void 0 && !isNearZero(baseline.rotate)) mergedKeyframes.rotate = [baseline.rotate, baseline.rotate];
447 + if (mergedKeyframes.skew === void 0 && mergedKeyframes.skewX === void 0 && !isNearZero(baseline.skewX)) mergedKeyframes.skewX = [baseline.skewX, baseline.skewX];
448 + return mergedKeyframes;
449 + }
450 + window.elementorModules = window.elementorModules || {};
451 + window.elementorModules.interactions = {
452 + config,
453 + skipInteraction: skipInteraction$1,
454 + extractInteractionId,
455 + getAnimateFunction,
456 + getInViewFunction,
457 + waitForAnimateFunction,
458 + parseInteractionsData,
459 + unwrapInteractionValue,
460 + timingValueToMs,
461 + resetElementStyles,
462 + getTransformBaselineFromComputedStyle,
463 + preserveTransformKeyframes
464 + };
536 465
537 -/**
538 - * Get interactions data from the script tag injected by PHP.
539 - * Returns array of { elementId, dataId, interactions: [...] }
540 - */
541 -function getInteractionsData() {
542 - var scriptTag = document.getElementById('elementor-interactions-data');
543 - if (!scriptTag) {
544 - return null;
545 - }
546 - try {
547 - return JSON.parse(scriptTag.textContent);
548 - } catch (_unused) {
549 - return null;
550 - }
551 -}
552 -function findElementByDataId(dataId) {
553 - return document.querySelector("[data-interaction-id=\"".concat(dataId, "\"]"));
554 -}
555 -function unwrapInteractionBreakpoints(propValue) {
556 - var breakpointsConfig = (0, _interactionsSharedUtils.unwrapInteractionValue)(propValue, {});
557 - var excluded = (0, _interactionsSharedUtils.unwrapInteractionValue)(breakpointsConfig === null || breakpointsConfig === void 0 ? void 0 : breakpointsConfig.excluded, []);
558 - if (1 > excluded.length) {
559 - return {};
560 - }
561 - var breakpoints = {
562 - excluded: excluded.map(function (breakpoint) {
563 - return (0, _interactionsSharedUtils.unwrapInteractionValue)(breakpoint, '');
564 - })
565 - };
566 - return breakpoints;
567 -}
568 -function extractAnimationConfig(interaction) {
569 - var _payload$animation;
570 - if ('string' === typeof interaction) {
571 - return parseAnimationName(interaction);
572 - }
573 - var payload = 'interaction-item' === (interaction === null || interaction === void 0 ? void 0 : interaction.$$type) && interaction !== null && interaction !== void 0 && interaction.value ? interaction.value : interaction;
574 - if (!payload) {
575 - return null;
576 - }
577 - if (payload !== null && payload !== void 0 && (_payload$animation = payload.animation) !== null && _payload$animation !== void 0 && _payload$animation.animation_id) {
578 - return parseAnimationName(payload.animation.animation_id);
579 - }
580 - var trigger = (0, _interactionsSharedUtils.unwrapInteractionValue)(payload.trigger) || payload.trigger || 'load';
581 - var animation = payload.animation;
582 - animation = (0, _interactionsSharedUtils.unwrapInteractionValue)(animation);
583 - if (!animation) {
584 - return null;
585 - }
586 - var breakpoints = unwrapInteractionBreakpoints(payload.breakpoints);
587 - var config = (0, _interactionsSharedUtils.config)();
588 - var effect = (0, _interactionsSharedUtils.unwrapInteractionValue)(animation.effect) || animation.effect || 'fade';
589 - var type = (0, _interactionsSharedUtils.unwrapInteractionValue)(animation.type) || animation.type || 'in';
590 - var directionUnwrapped = (0, _interactionsSharedUtils.unwrapInteractionValue)(animation.direction);
591 - var direction = 'string' === typeof directionUnwrapped ? directionUnwrapped : '';
592 - var easing = config.defaultEasing;
593 - var replay = false;
594 - var timingConfig = (0, _interactionsSharedUtils.unwrapInteractionValue)(animation.timing_config) || animation.timing_config || {};
595 - var duration = (0, _interactionsSharedUtils.timingValueToMs)(timingConfig === null || timingConfig === void 0 ? void 0 : timingConfig.duration, config.defaultDuration);
596 - var delay = (0, _interactionsSharedUtils.timingValueToMs)(timingConfig === null || timingConfig === void 0 ? void 0 : timingConfig.delay, config.defaultDelay);
597 - return {
598 - trigger: trigger,
599 - breakpoints: breakpoints,
600 - effect: effect,
601 - type: type,
602 - direction: direction,
603 - duration: duration,
604 - delay: delay,
605 - easing: easing,
606 - replay: replay
607 - };
608 -}
466 +//#endregion
467 +//#region modules/interactions/assets/js/interactions-utils.js
468 + function isSupportedInteraction(animationConfig) {
469 + if (![
470 + "load",
471 + "scrollIn",
472 + "scrollOut"
473 + ].includes(animationConfig.trigger)) return false;
474 + if ("custom" === animationConfig.effect) return false;
475 + return true;
476 + }
477 + function skipInteraction(animationConfig) {
478 + if (!isSupportedInteraction(animationConfig)) return true;
479 + return skipInteraction$1(animationConfig);
480 + }
481 + function getKeyframes(effect, type, direction) {
482 + var isIn = "in" === type;
483 + var keyframes = {};
484 + if ("fade" === effect) keyframes.opacity = isIn ? [0, 1] : [1, 0];
485 + var config$1 = config();
486 + if ("scale" === effect) keyframes.scale = isIn ? [config$1.scaleStart, 1] : [1, config$1.scaleStart];
487 + if (direction && "string" === typeof direction) {
488 + var distance = config$1.slideDistance;
489 + var movement = {
490 + left: { x: isIn ? [-distance, 0] : [0, -distance] },
491 + right: { x: isIn ? [distance, 0] : [0, distance] },
492 + top: { y: isIn ? [-distance, 0] : [0, -distance] },
493 + bottom: { y: isIn ? [distance, 0] : [0, distance] }
494 + };
495 + direction.split("-").forEach(function(part) {
496 + if (movement[part]) Object.assign(keyframes, movement[part]);
497 + });
498 + }
499 + return keyframes;
500 + }
501 + function parseAnimationName(name) {
502 + var _name$split2 = _slicedToArray(name.split("-"), 8);
503 + var trigger = _name$split2[0];
504 + var effect = _name$split2[1];
505 + var type = _name$split2[2];
506 + var direction = _name$split2[3];
507 + var duration = _name$split2[4];
508 + var delay = _name$split2[5];
509 + var config$2 = config();
510 + return {
511 + trigger,
512 + effect,
513 + type,
514 + direction: direction || null,
515 + duration: duration ? parseInt(duration, 10) : config$2.defaultDuration,
516 + delay: delay ? parseInt(delay, 10) : config$2.defaultDelay,
517 + replay: false,
518 + easing: config$2.defaultEasing
519 + };
520 + }
521 + function unwrapInteractionBreakpoints(propValue) {
522 + var breakpointsConfig = unwrapInteractionValue(propValue, {});
523 + var excluded = unwrapInteractionValue(breakpointsConfig === null || breakpointsConfig === void 0 ? void 0 : breakpointsConfig.excluded, []);
524 + if (1 > excluded.length) return {};
525 + return { excluded: excluded.map(function(breakpoint) {
526 + return unwrapInteractionValue(breakpoint, "");
527 + }) };
528 + }
529 + function extractAnimationConfig(interaction) {
530 + var _payload$animation;
531 + if ("string" === typeof interaction) return parseAnimationName(interaction);
532 + var payload = "interaction-item" === (interaction === null || interaction === void 0 ? void 0 : interaction.$$type) && interaction !== null && interaction !== void 0 && interaction.value ? interaction.value : interaction;
533 + if (!payload) return null;
534 + if (payload !== null && payload !== void 0 && (_payload$animation = payload.animation) !== null && _payload$animation !== void 0 && _payload$animation.animation_id) return parseAnimationName(payload.animation.animation_id);
535 + var trigger = unwrapInteractionValue(payload.trigger) || payload.trigger || "load";
536 + var animation = payload.animation;
537 + animation = unwrapInteractionValue(animation);
538 + if (!animation) return null;
539 + var breakpoints = unwrapInteractionBreakpoints(payload.breakpoints);
540 + var config$3 = config();
541 + var effect = unwrapInteractionValue(animation.effect) || animation.effect || "fade";
542 + var type = unwrapInteractionValue(animation.type) || animation.type || "in";
543 + var directionUnwrapped = unwrapInteractionValue(animation.direction);
544 + var direction = "string" === typeof directionUnwrapped ? directionUnwrapped : "";
545 + var easing = config$3.defaultEasing;
546 + var replay = false;
547 + var timingConfig = unwrapInteractionValue(animation.timing_config) || animation.timing_config || {};
548 + return {
549 + trigger,
550 + breakpoints,
551 + effect,
552 + type,
553 + direction,
554 + duration: timingValueToMs(timingConfig === null || timingConfig === void 0 ? void 0 : timingConfig.duration, config$3.defaultDuration),
555 + delay: timingValueToMs(timingConfig === null || timingConfig === void 0 ? void 0 : timingConfig.delay, config$3.defaultDelay),
556 + easing,
557 + replay
558 + };
559 + }
609 560
610 -/***/ }),
561 +//#endregion
562 +//#region modules/interactions/assets/js/interactions.js
563 + function scrollOutAnimation(element, transition, animConfig, keyframes, resetKeyframes, options, animateFunc, inViewFunc) {
564 + var viewOptions = {
565 + amount: .85,
566 + root: null
567 + };
568 + animateFunc(element, resetKeyframes, { duration: 0 });
569 + var stop = inViewFunc(element, function() {
570 + return function() {
571 + animateFunc(element, keyframes, options).then(function() {
572 + element.style.transition = transition;
573 + });
574 + if (false === animConfig.replay) Promise.resolve().then(function() {
575 + return stop();
576 + });
577 + };
578 + }, viewOptions);
579 + }
580 + function scrollInAnimation(element, transition, animConfig, keyframes, options, animateFunc, inViewFunc) {
581 + var stop = inViewFunc(element, function() {
582 + animateFunc(element, keyframes, options).then(function() {
583 + element.style.transition = transition;
584 + });
585 + if (false === animConfig.replay) stop();
586 + }, {
587 + amount: 0,
588 + root: null
589 + });
590 + }
591 + function defaultAnimation(element, transition, keyframes, options, animateFunc) {
592 + animateFunc(element, keyframes, options).then(function() {
593 + element.style.transition = transition;
594 + });
595 + }
596 + function applyAnimation(element, animConfig, animateFunc, inViewFunc) {
597 + var baseline = getTransformBaselineFromComputedStyle(element);
598 + var keyframes = preserveTransformKeyframes(getKeyframes(animConfig.effect, animConfig.type, animConfig.direction), baseline);
599 + var resetKeyframes = preserveTransformKeyframes(getKeyframes(animConfig.effect, "in", animConfig.direction), baseline);
600 + var options = {
601 + duration: animConfig.duration / 1e3,
602 + delay: animConfig.delay / 1e3,
603 + ease: config().defaultEasing
604 + };
605 + var transition = element.style.transition;
606 + element.style.transition = "none";
607 + if ("scrollOut" === animConfig.trigger) scrollOutAnimation(element, transition, animConfig, keyframes, resetKeyframes, options, animateFunc, inViewFunc);
608 + else if ("scrollIn" === animConfig.trigger) scrollInAnimation(element, transition, animConfig, keyframes, options, animateFunc, inViewFunc);
609 + else defaultAnimation(element, transition, keyframes, options, animateFunc);
610 + }
611 + function processElementInteractions(element, interactions, animateFunc, inViewFunc) {
612 + if (!interactions || !Array.isArray(interactions)) return;
613 + interactions.forEach(function(interaction) {
614 + var animConfig = extractAnimationConfig(interaction);
615 + if (animConfig && !skipInteraction(animConfig)) applyAnimation(element, animConfig, animateFunc, inViewFunc);
616 + });
617 + }
618 + function initInteractions() {
619 + waitForAnimateFunction(function() {
620 + var animateFunc = getAnimateFunction();
621 + var inViewFunc = getInViewFunction();
622 + if (!inViewFunc || !animateFunc) return;
623 + var dataScript = document.getElementById("elementor-interactions-data");
624 + if (dataScript) {
625 + JSON.parse(dataScript.textContent).forEach(function(elementData) {
626 + var elementId = elementData.elementId;
627 + var interactions = elementData.interactions;
628 + if (!elementId || !interactions || !Array.isArray(interactions)) return;
629 + document.querySelectorAll("[data-interaction-id=\"".concat(elementId, "\"]")).forEach(function(element) {
630 + processElementInteractions(element, interactions, animateFunc, inViewFunc);
631 + });
632 + });
633 + return;
634 + }
635 + document.querySelectorAll("[data-interactions]").forEach(function(element) {
636 + processElementInteractions(element, parseInteractionsData(element.getAttribute("data-interactions")), animateFunc, inViewFunc);
637 + });
638 + });
639 + }
640 + function init() {
641 + initBreakpoints();
642 + initInteractions();
643 + }
644 + if ("loading" === document.readyState) document.addEventListener("DOMContentLoaded", init);
645 + else init();
611 646
612 -/***/ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js":
613 -/*!******************************************************************!*\
614 - !*** ../node_modules/@babel/runtime/helpers/arrayLikeToArray.js ***!
615 - \******************************************************************/
616 -/***/ ((module) => {
617 -
618 -function _arrayLikeToArray(r, a) {
619 - (null == a || a > r.length) && (a = r.length);
620 - for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
621 - return n;
622 -}
623 -module.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
624 -
625 -/***/ }),
626 -
627 -/***/ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js":
628 -/*!****************************************************************!*\
629 - !*** ../node_modules/@babel/runtime/helpers/arrayWithHoles.js ***!
630 - \****************************************************************/
631 -/***/ ((module) => {
632 -
633 -function _arrayWithHoles(r) {
634 - if (Array.isArray(r)) return r;
635 -}
636 -module.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
637 -
638 -/***/ }),
639 -
640 -/***/ "../node_modules/@babel/runtime/helpers/defineProperty.js":
641 -/*!****************************************************************!*\
642 - !*** ../node_modules/@babel/runtime/helpers/defineProperty.js ***!
643 - \****************************************************************/
644 -/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
645 -
646 -var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "../node_modules/@babel/runtime/helpers/toPropertyKey.js");
647 -function _defineProperty(e, r, t) {
648 - return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
649 - value: t,
650 - enumerable: !0,
651 - configurable: !0,
652 - writable: !0
653 - }) : e[r] = t, e;
654 -}
655 -module.exports = _defineProperty, module.exports.__esModule = true, module.exports["default"] = module.exports;
656 -
657 -/***/ }),
658 -
659 -/***/ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js":
660 -/*!***********************************************************************!*\
661 - !*** ../node_modules/@babel/runtime/helpers/interopRequireDefault.js ***!
662 - \***********************************************************************/
663 -/***/ ((module) => {
664 -
665 -function _interopRequireDefault(e) {
666 - return e && e.__esModule ? e : {
667 - "default": e
668 - };
669 -}
670 -module.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports["default"] = module.exports;
671 -
672 -/***/ }),
673 -
674 -/***/ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js":
675 -/*!**********************************************************************!*\
676 - !*** ../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js ***!
677 - \**********************************************************************/
678 -/***/ ((module) => {
679 -
680 -function _iterableToArrayLimit(r, l) {
681 - var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
682 - if (null != t) {
683 - var e,
684 - n,
685 - i,
686 - u,
687 - a = [],
688 - f = !0,
689 - o = !1;
690 - try {
691 - if (i = (t = t.call(r)).next, 0 === l) {
692 - if (Object(t) !== t) return;
693 - f = !1;
694 - } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
695 - } catch (r) {
696 - o = !0, n = r;
697 - } finally {
698 - try {
699 - if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
700 - } finally {
701 - if (o) throw n;
702 - }
703 - }
704 - return a;
705 - }
706 -}
707 -module.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports["default"] = module.exports;
708 -
709 -/***/ }),
710 -
711 -/***/ "../node_modules/@babel/runtime/helpers/nonIterableRest.js":
712 -/*!*****************************************************************!*\
713 - !*** ../node_modules/@babel/runtime/helpers/nonIterableRest.js ***!
714 - \*****************************************************************/
715 -/***/ ((module) => {
716 -
717 -function _nonIterableRest() {
718 - throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
719 -}
720 -module.exports = _nonIterableRest, module.exports.__esModule = true, module.exports["default"] = module.exports;
721 -
722 -/***/ }),
723 -
724 -/***/ "../node_modules/@babel/runtime/helpers/slicedToArray.js":
725 -/*!***************************************************************!*\
726 - !*** ../node_modules/@babel/runtime/helpers/slicedToArray.js ***!
727 - \***************************************************************/
728 -/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
729 -
730 -var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js");
731 -var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js");
732 -var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js");
733 -var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ "../node_modules/@babel/runtime/helpers/nonIterableRest.js");
734 -function _slicedToArray(r, e) {
735 - return arrayWithHoles(r) || iterableToArrayLimit(r, e) || unsupportedIterableToArray(r, e) || nonIterableRest();
736 -}
737 -module.exports = _slicedToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
738 -
739 -/***/ }),
740 -
741 -/***/ "../node_modules/@babel/runtime/helpers/toPrimitive.js":
742 -/*!*************************************************************!*\
743 - !*** ../node_modules/@babel/runtime/helpers/toPrimitive.js ***!
744 - \*************************************************************/
745 -/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
746 -
747 -var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
748 -function toPrimitive(t, r) {
749 - if ("object" != _typeof(t) || !t) return t;
750 - var e = t[Symbol.toPrimitive];
751 - if (void 0 !== e) {
752 - var i = e.call(t, r || "default");
753 - if ("object" != _typeof(i)) return i;
754 - throw new TypeError("@@toPrimitive must return a primitive value.");
755 - }
756 - return ("string" === r ? String : Number)(t);
757 -}
758 -module.exports = toPrimitive, module.exports.__esModule = true, module.exports["default"] = module.exports;
759 -
760 -/***/ }),
761 -
762 -/***/ "../node_modules/@babel/runtime/helpers/toPropertyKey.js":
763 -/*!***************************************************************!*\
764 - !*** ../node_modules/@babel/runtime/helpers/toPropertyKey.js ***!
765 - \***************************************************************/
766 -/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
767 -
768 -var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
769 -var toPrimitive = __webpack_require__(/*! ./toPrimitive.js */ "../node_modules/@babel/runtime/helpers/toPrimitive.js");
770 -function toPropertyKey(t) {
771 - var i = toPrimitive(t, "string");
772 - return "symbol" == _typeof(i) ? i : i + "";
773 -}
774 -module.exports = toPropertyKey, module.exports.__esModule = true, module.exports["default"] = module.exports;
775 -
776 -/***/ }),
777 -
778 -/***/ "../node_modules/@babel/runtime/helpers/typeof.js":
779 -/*!********************************************************!*\
780 - !*** ../node_modules/@babel/runtime/helpers/typeof.js ***!
781 - \********************************************************/
782 -/***/ ((module) => {
783 -
784 -function _typeof(o) {
785 - "@babel/helpers - typeof";
786 -
787 - return module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
788 - return typeof o;
789 - } : function (o) {
790 - return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
791 - }, module.exports.__esModule = true, module.exports["default"] = module.exports, _typeof(o);
792 -}
793 -module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports;
794 -
795 -/***/ }),
796 -
797 -/***/ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js":
798 -/*!****************************************************************************!*\
799 - !*** ../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js ***!
800 - \****************************************************************************/
801 -/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
802 -
803 -var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js");
804 -function _unsupportedIterableToArray(r, a) {
805 - if (r) {
806 - if ("string" == typeof r) return arrayLikeToArray(r, a);
807 - var t = {}.toString.call(r).slice(8, -1);
808 - return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? arrayLikeToArray(r, a) : void 0;
809 - }
810 -}
811 -module.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
812 -
813 -/***/ })
814 -
815 -/******/ });
816 -/************************************************************************/
817 -/******/ // The module cache
818 -/******/ var __webpack_module_cache__ = {};
819 -/******/
820 -/******/ // The require function
821 -/******/ function __webpack_require__(moduleId) {
822 -/******/ // Check if module is in cache
823 -/******/ var cachedModule = __webpack_module_cache__[moduleId];
824 -/******/ if (cachedModule !== undefined) {
825 -/******/ return cachedModule.exports;
826 -/******/ }
827 -/******/ // Create a new module (and put it into the cache)
828 -/******/ var module = __webpack_module_cache__[moduleId] = {
829 -/******/ // no module.id needed
830 -/******/ // no module.loaded needed
831 -/******/ exports: {}
832 -/******/ };
833 -/******/
834 -/******/ // Execute the module function
835 -/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
836 -/******/
837 -/******/ // Return the exports of the module
838 -/******/ return module.exports;
839 -/******/ }
840 -/******/
841 -/************************************************************************/
842 -var __webpack_exports__ = {};
843 -// This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
844 -(() => {
845 -"use strict";
846 -/*!*********************************************************!*\
847 - !*** ../modules/interactions/assets/js/interactions.js ***!
848 - \*********************************************************/
849 -
850 -
851 -var _interactionsUtils = __webpack_require__(/*! ./interactions-utils.js */ "../modules/interactions/assets/js/interactions-utils.js");
852 -var _interactionsBreakpoints = __webpack_require__(/*! ./interactions-breakpoints.js */ "../modules/interactions/assets/js/interactions-breakpoints.js");
853 -function scrollOutAnimation(element, transition, keyframes, resetKeyframes, options, animateFunc, inViewFunc) {
854 - var viewOptions = {
855 - amount: 0.85,
856 - root: null
857 - };
858 - animateFunc(element, resetKeyframes, {
859 - duration: 0
860 - });
861 - var stop = inViewFunc(element, function () {
862 - return function () {
863 - animateFunc(element, keyframes, options).then(function () {
864 - element.style.transition = transition;
865 - });
866 - if (false === animConfig.replay) {
867 - stop();
868 - }
869 - };
870 - }, viewOptions);
871 -}
872 -function scrollInAnimation(element, transition, animConfig, keyframes, options, animateFunc, inViewFunc) {
873 - var viewOptions = {
874 - amount: 0,
875 - root: null
876 - };
877 - var stop = inViewFunc(element, function () {
878 - animateFunc(element, keyframes, options).then(function () {
879 - element.style.transition = transition;
880 - });
881 - if (false === animConfig.replay) {
882 - stop();
883 - }
884 - }, viewOptions);
885 -}
886 -function defaultAnimation(element, transition, keyframes, options, animateFunc) {
887 - animateFunc(element, keyframes, options).then(function () {
888 - element.style.transition = transition;
889 - });
890 -}
891 -function applyAnimation(element, animConfig, animateFunc, inViewFunc) {
892 - var baseline = (0, _interactionsUtils.getTransformBaselineFromComputedStyle)(element);
893 - var keyframes = (0, _interactionsUtils.preserveTransformKeyframes)((0, _interactionsUtils.getKeyframes)(animConfig.effect, animConfig.type, animConfig.direction), baseline);
894 - var resetKeyframes = (0, _interactionsUtils.preserveTransformKeyframes)((0, _interactionsUtils.getKeyframes)(animConfig.effect, 'in', animConfig.direction), baseline);
895 - var options = {
896 - duration: animConfig.duration / 1000,
897 - delay: animConfig.delay / 1000,
898 - ease: (0, _interactionsUtils.config)().defaultEasing
899 - };
900 -
901 - // WHY - Transition can be set on elements but once it sets it destroys all animations, so we basically put it aside.
902 - var transition = element.style.transition;
903 - element.style.transition = 'none';
904 - if ('scrollOut' === animConfig.trigger) {
905 - scrollOutAnimation(element, transition, keyframes, resetKeyframes, options, animateFunc, inViewFunc);
906 - } else if ('scrollIn' === animConfig.trigger) {
907 - scrollInAnimation(element, transition, animConfig, keyframes, options, animateFunc, inViewFunc);
908 - } else {
909 - defaultAnimation(element, transition, keyframes, options, animateFunc);
910 - }
911 -}
912 -function processElementInteractions(element, interactions, animateFunc, inViewFunc) {
913 - if (!interactions || !Array.isArray(interactions)) {
914 - return;
915 - }
916 - interactions.forEach(function (interaction) {
917 - var animConfig = (0, _interactionsUtils.extractAnimationConfig)(interaction);
918 - if (animConfig && !(0, _interactionsUtils.skipInteraction)(animConfig)) {
919 - applyAnimation(element, animConfig, animateFunc, inViewFunc);
920 - }
921 - });
922 -}
923 -function initInteractions() {
924 - (0, _interactionsUtils.waitForAnimateFunction)(function () {
925 - var animateFunc = (0, _interactionsUtils.getAnimateFunction)();
926 - var inViewFunc = (0, _interactionsUtils.getInViewFunction)();
927 - if (!inViewFunc || !animateFunc) {
928 - return;
929 - }
930 -
931 - // New method: Read centralized interactions data from script tag
932 - var dataScript = document.getElementById('elementor-interactions-data');
933 - if (dataScript) {
934 - var elementsData = JSON.parse(dataScript.textContent);
935 - elementsData.forEach(function (elementData) {
936 - var elementId = elementData.elementId,
937 - interactions = elementData.interactions;
938 - if (!elementId || !interactions || !Array.isArray(interactions)) {
939 - return;
940 - }
941 - document.querySelectorAll("[data-interaction-id=\"".concat(elementId, "\"]")).forEach(function (element) {
942 - processElementInteractions(element, interactions, animateFunc, inViewFunc);
943 - });
944 - });
945 - return;
946 - }
947 -
948 - // Legacy fallback: parse data-interactions attributes
949 - var elements = document.querySelectorAll('[data-interactions]');
950 - elements.forEach(function (element) {
951 - var interactionsData = element.getAttribute('data-interactions');
952 - var parsedData = (0, _interactionsUtils.parseInteractionsData)(interactionsData);
953 - processElementInteractions(element, parsedData, animateFunc, inViewFunc);
954 - });
955 - });
956 -}
957 -function init() {
958 - (0, _interactionsBreakpoints.initBreakpoints)();
959 - initInteractions();
960 -}
961 -if ('loading' === document.readyState) {
962 - document.addEventListener('DOMContentLoaded', init);
963 -} else {
964 - init();
965 -}
647 +//#endregion
966 648 })();
967 -
968 -/******/ })()
969 -;
970 649 //# sourceMappingURL=interactions.js.map