Diff: STRATO-apps/wordpress_03/app/wp-content/plugins/elementor/assets/js/editor-interactions.js
Keine Baseline-Datei – Diff nur gegen leer.
1
-
1
+
/******/ (() => { // webpackBootstrap
2
+
/******/ var __webpack_modules__ = ({
3
+
4
+
/***/ "../modules/interactions/assets/js/interactions-utils.js":
5
+
/*!***************************************************************!*\
6
+
!*** ../modules/interactions/assets/js/interactions-utils.js ***!
7
+
\***************************************************************/
8
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
9
+
10
+
"use strict";
11
+
12
+
13
+
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
14
+
Object.defineProperty(exports, "__esModule", ({
15
+
value: true
16
+
}));
17
+
exports.config = void 0;
18
+
exports.getKeyframes = getKeyframes;
19
+
exports.parseAnimationName = parseAnimationName;
20
+
var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
21
+
var _window$ElementorInte;
22
+
var config = exports.config = ((_window$ElementorInte = window.ElementorInteractionsConfig) === null || _window$ElementorInte === void 0 ? void 0 : _window$ElementorInte.constants) || {
23
+
defaultDuration: 300,
24
+
defaultDelay: 0,
25
+
slideDistance: 100,
26
+
scaleStart: 0,
27
+
easing: 'linear'
28
+
};
29
+
function calculateSlideDistance(element, direction) {
30
+
if (!element) {
31
+
return config.slideDistance;
32
+
}
33
+
var rect = element.getBoundingClientRect();
34
+
var viewportWidth = window.innerWidth || document.documentElement.clientWidth;
35
+
var viewportHeight = window.innerHeight || document.documentElement.clientHeight;
36
+
var isLtr = 'ltr' === document.documentElement.dir || 'ltr' === document.body.dir;
37
+
switch (direction) {
38
+
case 'left':
39
+
return Math.min((isLtr ? rect.left : rect.right) + rect.width, viewportWidth + rect.width);
40
+
case 'right':
41
+
return Math.min(viewportWidth - (isLtr ? rect.right : rect.left) + rect.width, viewportWidth + rect.width);
42
+
case 'top':
43
+
return Math.min(rect.top + rect.height, viewportHeight + rect.height);
44
+
case 'bottom':
45
+
return Math.min(viewportHeight - rect.bottom + rect.height, viewportHeight + rect.height);
46
+
default:
47
+
return config.slideDistance;
48
+
}
49
+
}
50
+
function getKeyframes(effect, type, direction) {
51
+
var element = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
52
+
var isIn = 'in' === type;
53
+
var keyframes = {};
54
+
var hasDirection = !!direction;
55
+
if ('fade' === effect) {
56
+
if (hasDirection && isIn) {
57
+
keyframes.opacity = [0, 0, 0.2, 0.6, 1];
58
+
} else if (hasDirection && !isIn) {
59
+
keyframes.opacity = [1, 0.8, 0.4, 0, 0];
60
+
} else {
61
+
keyframes.opacity = isIn ? [0, 1] : [1, 0];
62
+
}
63
+
}
64
+
if ('scale' === effect) {
65
+
keyframes.scale = isIn ? [config.scaleStart, 1] : [1, config.scaleStart];
66
+
}
67
+
if (direction) {
68
+
var distance = calculateSlideDistance(element, direction);
69
+
var movement = {
70
+
left: {
71
+
x: isIn ? [-distance, 0] : [0, -distance]
72
+
},
73
+
right: {
74
+
x: isIn ? [distance, 0] : [0, distance]
75
+
},
76
+
top: {
77
+
y: isIn ? [-distance, 0] : [0, -distance]
78
+
},
79
+
bottom: {
80
+
y: isIn ? [distance, 0] : [0, distance]
81
+
}
82
+
};
83
+
Object.assign(keyframes, movement[direction]);
84
+
}
85
+
return keyframes;
86
+
}
87
+
function parseAnimationName(name) {
88
+
var _name$split = name.split('-'),
89
+
_name$split2 = (0, _slicedToArray2.default)(_name$split, 6),
90
+
trigger = _name$split2[0],
91
+
effect = _name$split2[1],
92
+
type = _name$split2[2],
93
+
direction = _name$split2[3],
94
+
duration = _name$split2[4],
95
+
delay = _name$split2[5];
96
+
return {
97
+
trigger: trigger,
98
+
effect: effect,
99
+
type: type,
100
+
direction: direction || null,
101
+
duration: duration ? parseInt(duration, 10) : config.defaultDuration,
102
+
delay: delay ? parseInt(delay, 10) : config.defaultDelay
103
+
};
104
+
}
105
+
106
+
/***/ }),
107
+
108
+
/***/ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js":
109
+
/*!******************************************************************!*\
110
+
!*** ../node_modules/@babel/runtime/helpers/arrayLikeToArray.js ***!
111
+
\******************************************************************/
112
+
/***/ ((module) => {
113
+
114
+
function _arrayLikeToArray(r, a) {
115
+
(null == a || a > r.length) && (a = r.length);
116
+
for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
117
+
return n;
118
+
}
119
+
module.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
120
+
121
+
/***/ }),
122
+
123
+
/***/ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js":
124
+
/*!****************************************************************!*\
125
+
!*** ../node_modules/@babel/runtime/helpers/arrayWithHoles.js ***!
126
+
\****************************************************************/
127
+
/***/ ((module) => {
128
+
129
+
function _arrayWithHoles(r) {
130
+
if (Array.isArray(r)) return r;
131
+
}
132
+
module.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
133
+
134
+
/***/ }),
135
+
136
+
/***/ "../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js":
137
+
/*!*******************************************************************!*\
138
+
!*** ../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js ***!
139
+
\*******************************************************************/
140
+
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
141
+
142
+
var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js");
143
+
function _arrayWithoutHoles(r) {
144
+
if (Array.isArray(r)) return arrayLikeToArray(r);
145
+
}
146
+
module.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
147
+
148
+
/***/ }),
149
+
150
+
/***/ "../node_modules/@babel/runtime/helpers/defineProperty.js":
151
+
/*!****************************************************************!*\
152
+
!*** ../node_modules/@babel/runtime/helpers/defineProperty.js ***!
153
+
\****************************************************************/
154
+
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
155
+
156
+
var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "../node_modules/@babel/runtime/helpers/toPropertyKey.js");
157
+
function _defineProperty(e, r, t) {
158
+
return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
159
+
value: t,
160
+
enumerable: !0,
161
+
configurable: !0,
162
+
writable: !0
163
+
}) : e[r] = t, e;
164
+
}
165
+
module.exports = _defineProperty, module.exports.__esModule = true, module.exports["default"] = module.exports;
166
+
167
+
/***/ }),
168
+
169
+
/***/ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js":
170
+
/*!***********************************************************************!*\
171
+
!*** ../node_modules/@babel/runtime/helpers/interopRequireDefault.js ***!
172
+
\***********************************************************************/
173
+
/***/ ((module) => {
174
+
175
+
function _interopRequireDefault(e) {
176
+
return e && e.__esModule ? e : {
177
+
"default": e
178
+
};
179
+
}
180
+
module.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports["default"] = module.exports;
181
+
182
+
/***/ }),
183
+
184
+
/***/ "../node_modules/@babel/runtime/helpers/iterableToArray.js":
185
+
/*!*****************************************************************!*\
186
+
!*** ../node_modules/@babel/runtime/helpers/iterableToArray.js ***!
187
+
\*****************************************************************/
188
+
/***/ ((module) => {
189
+
190
+
function _iterableToArray(r) {
191
+
if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r);
192
+
}
193
+
module.exports = _iterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
194
+
195
+
/***/ }),
196
+
197
+
/***/ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js":
198
+
/*!**********************************************************************!*\
199
+
!*** ../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js ***!
200
+
\**********************************************************************/
201
+
/***/ ((module) => {
202
+
203
+
function _iterableToArrayLimit(r, l) {
204
+
var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
205
+
if (null != t) {
206
+
var e,
207
+
n,
208
+
i,
209
+
u,
210
+
a = [],
211
+
f = !0,
212
+
o = !1;
213
+
try {
214
+
if (i = (t = t.call(r)).next, 0 === l) {
215
+
if (Object(t) !== t) return;
216
+
f = !1;
217
+
} else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
218
+
} catch (r) {
219
+
o = !0, n = r;
220
+
} finally {
221
+
try {
222
+
if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
223
+
} finally {
224
+
if (o) throw n;
225
+
}
226
+
}
227
+
return a;
228
+
}
229
+
}
230
+
module.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports["default"] = module.exports;
231
+
232
+
/***/ }),
233
+
234
+
/***/ "../node_modules/@babel/runtime/helpers/nonIterableRest.js":
235
+
/*!*****************************************************************!*\
236
+
!*** ../node_modules/@babel/runtime/helpers/nonIterableRest.js ***!
237
+
\*****************************************************************/
238
+
/***/ ((module) => {
239
+
240
+
function _nonIterableRest() {
241
+
throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
242
+
}
243
+
module.exports = _nonIterableRest, module.exports.__esModule = true, module.exports["default"] = module.exports;
244
+
245
+
/***/ }),
246
+
247
+
/***/ "../node_modules/@babel/runtime/helpers/nonIterableSpread.js":
248
+
/*!*******************************************************************!*\
249
+
!*** ../node_modules/@babel/runtime/helpers/nonIterableSpread.js ***!
250
+
\*******************************************************************/
251
+
/***/ ((module) => {
252
+
253
+
function _nonIterableSpread() {
254
+
throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
255
+
}
256
+
module.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports["default"] = module.exports;
257
+
258
+
/***/ }),
259
+
260
+
/***/ "../node_modules/@babel/runtime/helpers/slicedToArray.js":
261
+
/*!***************************************************************!*\
262
+
!*** ../node_modules/@babel/runtime/helpers/slicedToArray.js ***!
263
+
\***************************************************************/
264
+
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
265
+
266
+
var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js");
267
+
var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js");
268
+
var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js");
269
+
var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ "../node_modules/@babel/runtime/helpers/nonIterableRest.js");
270
+
function _slicedToArray(r, e) {
271
+
return arrayWithHoles(r) || iterableToArrayLimit(r, e) || unsupportedIterableToArray(r, e) || nonIterableRest();
272
+
}
273
+
module.exports = _slicedToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
274
+
275
+
/***/ }),
276
+
277
+
/***/ "../node_modules/@babel/runtime/helpers/toConsumableArray.js":
278
+
/*!*******************************************************************!*\
279
+
!*** ../node_modules/@babel/runtime/helpers/toConsumableArray.js ***!
280
+
\*******************************************************************/
281
+
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
282
+
283
+
var arrayWithoutHoles = __webpack_require__(/*! ./arrayWithoutHoles.js */ "../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js");
284
+
var iterableToArray = __webpack_require__(/*! ./iterableToArray.js */ "../node_modules/@babel/runtime/helpers/iterableToArray.js");
285
+
var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js");
286
+
var nonIterableSpread = __webpack_require__(/*! ./nonIterableSpread.js */ "../node_modules/@babel/runtime/helpers/nonIterableSpread.js");
287
+
function _toConsumableArray(r) {
288
+
return arrayWithoutHoles(r) || iterableToArray(r) || unsupportedIterableToArray(r) || nonIterableSpread();
289
+
}
290
+
module.exports = _toConsumableArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
291
+
292
+
/***/ }),
293
+
294
+
/***/ "../node_modules/@babel/runtime/helpers/toPrimitive.js":
295
+
/*!*************************************************************!*\
296
+
!*** ../node_modules/@babel/runtime/helpers/toPrimitive.js ***!
297
+
\*************************************************************/
298
+
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
299
+
300
+
var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
301
+
function toPrimitive(t, r) {
302
+
if ("object" != _typeof(t) || !t) return t;
303
+
var e = t[Symbol.toPrimitive];
304
+
if (void 0 !== e) {
305
+
var i = e.call(t, r || "default");
306
+
if ("object" != _typeof(i)) return i;
307
+
throw new TypeError("@@toPrimitive must return a primitive value.");
308
+
}
309
+
return ("string" === r ? String : Number)(t);
310
+
}
311
+
module.exports = toPrimitive, module.exports.__esModule = true, module.exports["default"] = module.exports;
312
+
313
+
/***/ }),
314
+
315
+
/***/ "../node_modules/@babel/runtime/helpers/toPropertyKey.js":
316
+
/*!***************************************************************!*\
317
+
!*** ../node_modules/@babel/runtime/helpers/toPropertyKey.js ***!
318
+
\***************************************************************/
319
+
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
320
+
321
+
var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
322
+
var toPrimitive = __webpack_require__(/*! ./toPrimitive.js */ "../node_modules/@babel/runtime/helpers/toPrimitive.js");
323
+
function toPropertyKey(t) {
324
+
var i = toPrimitive(t, "string");
325
+
return "symbol" == _typeof(i) ? i : i + "";
326
+
}
327
+
module.exports = toPropertyKey, module.exports.__esModule = true, module.exports["default"] = module.exports;
328
+
329
+
/***/ }),
330
+
331
+
/***/ "../node_modules/@babel/runtime/helpers/typeof.js":
332
+
/*!********************************************************!*\
333
+
!*** ../node_modules/@babel/runtime/helpers/typeof.js ***!
334
+
\********************************************************/
335
+
/***/ ((module) => {
336
+
337
+
function _typeof(o) {
338
+
"@babel/helpers - typeof";
339
+
340
+
return module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
341
+
return typeof o;
342
+
} : function (o) {
343
+
return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
344
+
}, module.exports.__esModule = true, module.exports["default"] = module.exports, _typeof(o);
345
+
}
346
+
module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports;
347
+
348
+
/***/ }),
349
+
350
+
/***/ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js":
351
+
/*!****************************************************************************!*\
352
+
!*** ../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js ***!
353
+
\****************************************************************************/
354
+
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
355
+
356
+
var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js");
357
+
function _unsupportedIterableToArray(r, a) {
358
+
if (r) {
359
+
if ("string" == typeof r) return arrayLikeToArray(r, a);
360
+
var t = {}.toString.call(r).slice(8, -1);
361
+
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;
362
+
}
363
+
}
364
+
module.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
365
+
366
+
/***/ })
367
+
368
+
/******/ });
369
+
/************************************************************************/
370
+
/******/ // The module cache
371
+
/******/ var __webpack_module_cache__ = {};
372
+
/******/
373
+
/******/ // The require function
374
+
/******/ function __webpack_require__(moduleId) {
375
+
/******/ // Check if module is in cache
376
+
/******/ var cachedModule = __webpack_module_cache__[moduleId];
377
+
/******/ if (cachedModule !== undefined) {
378
+
/******/ return cachedModule.exports;
379
+
/******/ }
380
+
/******/ // Create a new module (and put it into the cache)
381
+
/******/ var module = __webpack_module_cache__[moduleId] = {
382
+
/******/ // no module.id needed
383
+
/******/ // no module.loaded needed
384
+
/******/ exports: {}
385
+
/******/ };
386
+
/******/
387
+
/******/ // Execute the module function
388
+
/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
389
+
/******/
390
+
/******/ // Return the exports of the module
391
+
/******/ return module.exports;
392
+
/******/ }
393
+
/******/
394
+
/************************************************************************/
395
+
var __webpack_exports__ = {};
396
+
// This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
397
+
(() => {
398
+
"use strict";
399
+
/*!****************************************************************!*\
400
+
!*** ../modules/interactions/assets/js/editor-interactions.js ***!
401
+
\****************************************************************/
402
+
403
+
404
+
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
405
+
var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
406
+
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
407
+
var _interactionsUtils = __webpack_require__(/*! ./interactions-utils.js */ "../modules/interactions/assets/js/interactions-utils.js");
408
+
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; }
409
+
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; }
410
+
function applyAnimation(element, animConfig, animateFunc) {
411
+
var keyframes = (0, _interactionsUtils.getKeyframes)(animConfig.effect, animConfig.type, animConfig.direction, element);
412
+
var options = {
413
+
duration: animConfig.duration / 1000,
414
+
delay: animConfig.delay / 1000,
415
+
easing: _interactionsUtils.config.easing
416
+
};
417
+
var initialKeyframes = {};
418
+
Object.keys(keyframes).forEach(function (key) {
419
+
initialKeyframes[key] = keyframes[key][0];
420
+
});
421
+
// WHY - Transition can be set on elements but once it sets it destroys all animations, so we basically put it aside.
422
+
var transition = element.style.transition;
423
+
element.style.transition = 'none';
424
+
animateFunc(element, initialKeyframes, {
425
+
duration: 0
426
+
}).then(function () {
427
+
animateFunc(element, keyframes, options).then(function () {
428
+
if ('out' === animConfig.type) {
429
+
var resetValues = {
430
+
opacity: 1,
431
+
scale: 1,
432
+
x: 0,
433
+
y: 0
434
+
};
435
+
var resetKeyframes = {};
436
+
Object.keys(keyframes).forEach(function (key) {
437
+
resetKeyframes[key] = resetValues[key];
438
+
});
439
+
element.style.transition = transition;
440
+
animateFunc(element, resetKeyframes, {
441
+
duration: 0
442
+
});
443
+
}
444
+
});
445
+
});
446
+
}
447
+
function getInteractionsData() {
448
+
var scriptTag = document.querySelector('script[data-e-interactions="true"]');
449
+
if (!scriptTag) {
450
+
return [];
451
+
}
452
+
try {
453
+
return JSON.parse(scriptTag.textContent || '[]');
454
+
} catch (_unused) {
455
+
return [];
456
+
}
457
+
}
458
+
function findElementByInteractionId(interactionId) {
459
+
return document.querySelector('[data-interaction-id="' + interactionId + '"]');
460
+
}
461
+
function applyInteractionsToElement(element, interactionsData) {
462
+
var _window$Motion, _parsedData;
463
+
var animateFunc = 'undefined' !== typeof animate ? animate : (_window$Motion = window.Motion) === null || _window$Motion === void 0 ? void 0 : _window$Motion.animate;
464
+
if (!animateFunc) {
465
+
return;
466
+
}
467
+
var parsedData;
468
+
if ('string' === typeof interactionsData) {
469
+
try {
470
+
parsedData = JSON.parse(interactionsData);
471
+
} catch (error) {
472
+
return;
473
+
}
474
+
} else {
475
+
parsedData = interactionsData;
476
+
}
477
+
var interactions = Object.values((_parsedData = parsedData) === null || _parsedData === void 0 ? void 0 : _parsedData.items);
478
+
interactions.forEach(function (interaction) {
479
+
var _interaction$animatio;
480
+
var animationName = 'string' === typeof interaction ? interaction : interaction === null || interaction === void 0 || (_interaction$animatio = interaction.animation) === null || _interaction$animatio === void 0 ? void 0 : _interaction$animatio.animation_id;
481
+
var animConfig = animationName && (0, _interactionsUtils.parseAnimationName)(animationName);
482
+
if (animConfig) {
483
+
applyAnimation(element, animConfig, animateFunc);
484
+
}
485
+
});
486
+
}
487
+
var previousInteractionsData = [];
488
+
function handleInteractionsUpdate() {
489
+
var currentInteractionsData = getInteractionsData();
490
+
var changedItems = currentInteractionsData.filter(function (currentItem) {
491
+
var previousItem = previousInteractionsData.find(function (prev) {
492
+
return prev.dataId === currentItem.dataId;
493
+
});
494
+
return !previousItem || previousItem.interactions !== currentItem.interactions;
495
+
});
496
+
changedItems.forEach(function (item) {
497
+
var _previousInteractions, _item$interactions, _item$interactions2, _prevInteractions$ite;
498
+
var element = findElementByInteractionId(item.dataId);
499
+
var prevInteractions = (_previousInteractions = previousInteractionsData.find(function (prev) {
500
+
return prev.dataId === item.dataId;
501
+
})) === null || _previousInteractions === void 0 ? void 0 : _previousInteractions.interactions;
502
+
if (element && ((_item$interactions = item.interactions) === null || _item$interactions === void 0 || (_item$interactions = _item$interactions.items) === null || _item$interactions === void 0 ? void 0 : _item$interactions.length) > 0 && ((_item$interactions2 = item.interactions) === null || _item$interactions2 === void 0 || (_item$interactions2 = _item$interactions2.items) === null || _item$interactions2 === void 0 ? void 0 : _item$interactions2.length) === (prevInteractions === null || prevInteractions === void 0 || (_prevInteractions$ite = prevInteractions.items) === null || _prevInteractions$ite === void 0 ? void 0 : _prevInteractions$ite.length)) {
503
+
var interactionsToApply = _objectSpread(_objectSpread({}, item.interactions), {}, {
504
+
items: (0, _toConsumableArray2.default)(item.interactions.items).filter(function (interaction, index) {
505
+
var _prevInteractions$ite2;
506
+
return (prevInteractions === null || prevInteractions === void 0 || (_prevInteractions$ite2 = prevInteractions.items[index]) === null || _prevInteractions$ite2 === void 0 || (_prevInteractions$ite2 = _prevInteractions$ite2.animation) === null || _prevInteractions$ite2 === void 0 ? void 0 : _prevInteractions$ite2.animation_id) !== interaction.animation.animation_id;
507
+
})
508
+
});
509
+
applyInteractionsToElement(element, interactionsToApply);
510
+
}
511
+
});
512
+
previousInteractionsData = currentInteractionsData;
513
+
}
514
+
function initEditorInteractionsHandler() {
515
+
var _window$Motion2;
516
+
if ('undefined' === typeof animate && !((_window$Motion2 = window.Motion) !== null && _window$Motion2 !== void 0 && _window$Motion2.animate)) {
517
+
setTimeout(initEditorInteractionsHandler, 100);
518
+
return;
519
+
}
520
+
var head = document.head;
521
+
var scriptTag = null;
522
+
var observer = null;
523
+
function setupObserver(tag) {
524
+
if (observer) {
525
+
observer.disconnect();
526
+
}
527
+
observer = new MutationObserver(function () {
528
+
handleInteractionsUpdate();
529
+
});
530
+
observer.observe(tag, {
531
+
childList: true,
532
+
characterData: true,
533
+
subtree: true
534
+
});
535
+
handleInteractionsUpdate();
536
+
registerWindowEvents();
537
+
}
538
+
var headObserver = new MutationObserver(function () {
539
+
var foundScriptTag = document.querySelector('script[data-e-interactions="true"]');
540
+
if (foundScriptTag && foundScriptTag !== scriptTag) {
541
+
scriptTag = foundScriptTag;
542
+
setupObserver(scriptTag);
543
+
headObserver.disconnect();
544
+
}
545
+
});
546
+
headObserver.observe(head, {
547
+
childList: true,
548
+
subtree: true
549
+
});
550
+
scriptTag = document.querySelector('script[data-e-interactions="true"]');
551
+
if (scriptTag) {
552
+
setupObserver(scriptTag);
553
+
headObserver.disconnect();
554
+
}
555
+
}
556
+
function registerWindowEvents() {
557
+
window.top.addEventListener('atomic/play_interactions', handlePlayInteractions);
558
+
}
559
+
function handlePlayInteractions(event) {
560
+
var _event$detail = event.detail,
561
+
elementId = _event$detail.elementId,
562
+
animationId = _event$detail.animationId;
563
+
var interactionsData = getInteractionsData();
564
+
var item = interactionsData.find(function (elementItemData) {
565
+
return elementItemData.dataId === elementId;
566
+
});
567
+
if (!item) {
568
+
return;
569
+
}
570
+
var element = findElementByInteractionId(elementId);
571
+
if (element) {
572
+
var interactionsCopy = _objectSpread(_objectSpread({}, item.interactions), {}, {
573
+
items: (0, _toConsumableArray2.default)(item.interactions.items)
574
+
});
575
+
interactionsCopy.items = interactionsCopy.items.filter(function (interactionItem) {
576
+
return interactionItem.animation.animation_id === animationId;
577
+
});
578
+
applyInteractionsToElement(element, JSON.stringify(interactionsCopy));
579
+
}
580
+
}
581
+
if ('loading' === document.readyState) {
582
+
document.addEventListener('DOMContentLoaded', initEditorInteractionsHandler);
583
+
} else {
584
+
initEditorInteractionsHandler();
585
+
}
586
+
})();
587
+
588
+
/******/ })()
589
+
;
590
+
//# sourceMappingURL=editor-interactions.js.map