1 2/*! 3 * Webflow: Front-end site library 4 * @license MIT 5 * Inline scripts may access the api using an async handler: 6 * var Webflow = Webflow || []; 7 * Webflow.push(readyFunction); 8 */ 9 10(() => { 11 var __create = Object.create; 12 var __defProp = Object.defineProperty; 13 var __getOwnPropDesc = Object.getOwnPropertyDescriptor; 14 var __getOwnPropNames = Object.getOwnPropertyNames; 15 var __getProtoOf = Object.getPrototypeOf; 16 var __hasOwnProp = Object.prototype.hasOwnProperty; 17 var __esm = (fn, res) => function __init() { 18 return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res; 19 }; 20 var __commonJS = (cb, mod) => function __require() { 21 return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; 22 }; 23 var __export = (target, all) => { 24 for (var name in all) 25 __defProp(target, name, { get: all[name], enumerable: true }); 26 }; 27 var __copyProps = (to, from, except, desc) => { 28 if (from && typeof from === "object" || typeof from === "function") { 29 for (let key of __getOwnPropNames(from)) 30 if (!__hasOwnProp.call(to, key) && key !== except) 31 __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); 32 } 33 return to; 34 }; 35 var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( 36 // If the importer is in node compatibility mode or this is not an ESM 37 // file that has been converted to a CommonJS file using a Babel- 38 // compatible transform (i.e. "__esModule" has not been set), then set 39 // "default" to the CommonJS "module.exports" for node compatibility. 40 isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, 41 mod 42 )); 43 var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); 44 45
45// packages/shared/render/plugins/BackgroundVideo/objectFitPolyfill.basic.js 46 var require_objectFitPolyfill_basic = __commonJS({ 47 "packages/shared/render/plugins/BackgroundVideo/objectFitPolyfill.basic.js"() { 48 "use strict"; 49 (function() { 50 if (typeof window === "undefined") 51 return; 52 const edgeVersion = window.navigator.userAgent.match(/Edge\/(\d{2})\./); 53 const edgePartialSupport = edgeVersion ? parseInt(edgeVersion[1], 10) >= 16 : false; 54 const hasSupport = "objectFit" in document.documentElement.style !== false; 55 if (hasSupport && !edgePartialSupport) { 56 window.objectFitPolyfill = function() { 57 return false; 58 }; 59 return; 60 } 61 const checkParentContainer = function($container) { 62 const styles = window.getComputedStyle($container, null); 63 const position = styles.getPropertyValue("position"); 64 const overflow = styles.getPropertyValue("overflow"); 65 const display = styles.getPropertyValue("display"); 66 if (!position || position === "static") { 67 $container.style.position = "relative"; 68 } 69 if (overflow !== "hidden") { 70 $container.style.overflow = "hidden"; 71 } 72 if (!display || display === "inline") { 73 $container.style.display = "block"; 74 } 75 if ($container.clientHeight === 0) { 76 $container.style.height = "100%"; 77 } 78 if ($container.className.indexOf("object-fit-polyfill") === -1) { 79 $container.className += " object-fit-polyfill"; 80 } 81 }; 82 const checkMediaProperties = function($media) { 83 const styles = window.getComputedStyle($media, null); 84 const constraints = { 85 "max-width": "none", 86 "max-height": "none", 87 "min-width": "0px", 88 "min-height": "0px", 89 top: "auto", 90 right: "auto", 91 bottom: "auto", 92 left: "auto", 93 "margin-top": "0px", 94 "margin-right": "0px", 95 "margin-bottom": "0px", 96 "margin-left": "0px" 97 }; 98 for (const property in constraints) { 99 const constraint = styles.getPropertyValue(property); 100 if (constraint !== constraints[property]) { 101 $media.style[property] = constraints[property]; 102 } 103 } 104 }; 105 const objectFit = function($media) { 106 const $container = $media.parentNode; 107 checkParentContainer($container); 108 checkMediaProperties($media); 109 $media.style.position = "absolute"; 110 $media.style.height = "100%"; 111 $media.style.width = "auto"; 112 if ($media.clientWidth > $container.clientWidth) { 113 $media.style.top = "0"; 114 $media.style.marginTop = "0"; 115 $media.style.left = "50%"; 116 $media.style.marginLeft = $media.clientWidth / -2 + "px"; 117 } else { 118 $media.style.width = "100%"; 119 $media.style.height = "auto"; 120 $media.style.left = "0"; 121 $media.style.marginLeft = "0"; 122 $media.style.top = "50%"; 123 $media.style.marginTop = $media.clientHeight / -2 + "px"; 124 } 125 }; 126 const objectFitPolyfill = function(media) { 127 if (typeof media === "undefined" || media instanceof Event) { 128 media = document.querySelectorAll("[data-object-fit]"); 129 } else if (media && media.nodeName) { 130 media = [ 131 media 132 ]; 133 } else if (typeof media === "object" && media.length && media[0].nodeName) { 134 media = media; 135 } else { 136 return false; 137 } 138 for (let i = 0; i < media.length; i++) { 139 if (!media[i].nodeName) 140 continue; 141 const mediaType = media[i].nodeName.toLowerCase(); 142 if (mediaType === "img") { 143 if (edgePartialSupport) 144 continue; 145 if (media[i].complete) { 146 objectFit(media[i]); 147 } else { 148 media[i].addEventListener("load", function() { 149 objectFit(this); 150 }); 151 } 152 } else if (mediaType === "video") { 153 if (media[i].readyState > 0) { 154 objectFit(media[i]); 155 } else { 156 media[i].addEventListener("loadedmetadata", function() { 157 objectFit(this); 158 }); 159 } 160 } else { 161 objectFit(media[i]); 162 } 163 } 164 return true; 165 }; 166 if (document.readyState === "loading") { 167 document.addEventListener("DOMContentLoaded", objectFitPolyfill); 168 } else { 169 objectFitPolyfill(); 170 } 171 window.addEventListener("resize", objectFitPolyfill); 172 window.objectFitPolyfill = objectFitPolyfill; 173 })(); 174 } 175 }); 176 177
177// packages/shared/render/plugins/BackgroundVideo/webflow-bgvideo.js 178 var require_webflow_bgvideo = __commonJS({ 179 "packages/shared/render/plugins/BackgroundVideo/webflow-bgvideo.js"() { 180 "use strict"; 181 (function() { 182 if (typeof window === "undefined") 183 return; 184 function setAllBackgroundVideoStates(shouldPlay) { 185 if (Webflow.env("design")) { 186 return; 187 } 188 $("video").each(function() { 189 shouldPlay && $(this).prop("autoplay") ? this.play() : this.pause(); 190 }); 191 $(".w-background-video--control").each(function() { 192 if (shouldPlay) { 193 showPauseButton($(this)); 194 } else { 195 showPlayButton($(this)); 196 } 197 }); 198 } 199 function showPlayButton($btn) { 200 $btn.find("> span").each(function(i) { 201 $(this).prop("hidden", () => i === 0); 202 }); 203 } 204 function showPauseButton($btn) { 205 $btn.find("> span").each(function(i) { 206 $(this).prop("hidden", () => i === 1); 207 }); 208 } 209 $(document).ready(() => { 210 const watcher = window.matchMedia("(prefers-reduced-motion: reduce)"); 211 watcher.addEventListener("change", (e) => { 212 setAllBackgroundVideoStates(!e.matches); 213 }); 214 if (watcher.matches) { 215 setAllBackgroundVideoStates(false); 216 } 217 $("video:not([autoplay])").each(function() { 218 $(this).parent().find(".w-background-video--control").each(function() { 219 showPlayButton($(this)); 220 }); 221 }); 222 $(document).on("click", ".w-background-video--control", function(e) { 223 if (Webflow.env("design")) 224 return; 225 const btn = $(e.currentTarget); 226 const video = $(`video#${btn.attr("aria-controls")}`).get(0); 227 if (!video) 228 return; 229 if (video.paused) { 230 const play = video.play(); 231 showPauseButton(btn); 232 if (play && typeof play.catch === "function") { 233 play.catch(() => { 234 showPlayButton(btn); 235 }); 236 } 237 } else { 238 video.pause(); 239 showPlayButton(btn); 240 } 241 }); 242 }); 243 })(); 244 } 245 }); 246 247
247// packages/shared/render/plugins/BaseSiteModules/tram-min.js 248 var require_tram_min = __commonJS({ 249 "packages/shared/render/plugins/BaseSiteModules/tram-min.js"() { 250 "use strict"; 251 window.tram = function(a) { 252 function b(a2, b2) { 253 var c2 = new M.Bare(); 254 return c2.init(a2, b2); 255 } 256 function c(a2) { 257 return a2.replace(/[A-Z]/g, function(a3) { 258 return "-" + a3.toLowerCase(); 259 }); 260 } 261 function d(a2) { 262 var b2 = parseInt(a2.slice(1), 16), c2 = b2 >> 16 & 255, d2 = b2 >> 8 & 255, e2 = 255 & b2; 263 return [ 264 c2, 265 d2, 266 e2 267 ]; 268 } 269 function e(a2, b2, c2) { 270 return "#" + (1 << 24 | a2 << 16 | b2 << 8 | c2).toString(16).slice(1); 271 } 272 function f() { 273 } 274 function g(a2, b2) { 275 j("Type warning: Expected: [" + a2 + "] Got: [" + typeof b2 + "] " + b2); 276 } 277 function h(a2, b2, c2) { 278 j("Units do not match [" + a2 + "]: " + b2 + ", " + c2); 279 } 280 function i(a2, b2, c2) { 281 if (void 0 !== b2 && (c2 = b2), void 0 === a2) 282 return c2; 283 var d2 = c2; 284 return $2.test(a2) || !_.test(a2) ? d2 = parseInt(a2, 10) : _.test(a2) && (d2 = 1e3 * parseFloat(a2)), 0 > d2 && (d2 = 0), d2 === d2 ? d2 : c2; 285 } 286 function j(a2) { 287 U.debug && window && window.console.warn(a2); 288 } 289 function k(a2) { 290 for (var b2 = -1, c2 = a2 ? a2.length : 0, d2 = []; ++b2 < c2; ) { 291 var e2 = a2[b2]; 292 e2 && d2.push(e2); 293 } 294 return d2; 295 } 296 var l = function(a2, b2, c2) { 297 function d2(a3) { 298 return "object" == typeof a3; 299 } 300 function e2(a3) { 301 return "function" == typeof a3; 302 } 303 function f2() { 304 } 305 function g2(h2, i2) { 306 function j2() { 307 var a3 = new k2();
308 return e2(a3.init) && a3.init.apply(a3, arguments), a3; 309 } 310 function k2() { 311 } 312 i2 === c2 && (i2 = h2, h2 = Object), j2.Bare = k2; 313 var l2, m2 = f2[a2] = h2[a2], n2 = k2[a2] = j2[a2] = new f2(); 314 return n2.constructor = j2, j2.mixin = function(b3) { 315 return k2[a2] = j2[a2] = g2(j2, b3)[a2], j2; 316 }, j2.open = function(a3) { 317 if (l2 = {}, e2(a3) ? l2 = a3.call(j2, n2, m2, j2, h2) : d2(a3) && (l2 = a3), d2(l2)) 318 for (var c3 in l2) 319 b2.call(l2, c3) && (n2[c3] = l2[c3]); 320 return e2(n2.init) || (n2.init = h2), j2; 321 }, j2.open(i2); 322 } 323 return g2; 324 }("prototype", {}.hasOwnProperty), m = { 325 ease: [ 326 "ease", 327 function(a2, b2, c2, d2) { 328 var e2 = (a2 /= d2) * a2, f2 = e2 * a2; 329 return b2 + c2 * (-2.75 * f2 * e2 + 11 * e2 * e2 + -15.5 * f2 + 8 * e2 + 0.25 * a2); 330 } 331 ], 332 "ease-in": [ 333 "ease-in", 334 function(a2, b2, c2, d2) { 335 var e2 = (a2 /= d2) * a2, f2 = e2 * a2; 336 return b2 + c2 * (-1 * f2 * e2 + 3 * e2 * e2 + -3 * f2 + 2 * e2); 337 } 338 ], 339 "ease-out": [ 340 "ease-out", 341 function(a2, b2, c2, d2) { 342 var e2 = (a2 /= d2) * a2, f2 = e2 * a2; 343 return b2 + c2 * (0.3 * f2 * e2 + -1.6 * e2 * e2 + 2.2 * f2 + -1.8 * e2 + 1.9 * a2); 344 } 345 ], 346 "ease-in-out": [ 347 "ease-in-out", 348 function(a2, b2, c2, d2) { 349 var e2 = (a2 /= d2) * a2, f2 = e2 * a2; 350 return b2 + c2 * (2 * f2 * e2 + -5 * e2 * e2 + 2 * f2 + 2 * e2); 351 } 352 ], 353 linear: [ 354 "linear", 355 function(a2, b2, c2, d2) { 356 return c2 * a2 / d2 + b2; 357 } 358 ], 359 "ease-in-quad": [ 360 "cubic-bezier(0.550, 0.085, 0.680, 0.530)", 361 function(a2, b2, c2, d2) { 362 return c2 * (a2 /= d2) * a2 + b2; 363 } 364 ], 365 "ease-out-quad": [ 366 "cubic-bezier(0.250, 0.460, 0.450, 0.940)", 367 function(a2, b2, c2, d2) { 368 return -c2 * (a2 /= d2) * (a2 - 2) + b2; 369 } 370 ], 371 "ease-in-out-quad": [ 372 "cubic-bezier(0.455, 0.030, 0.515, 0.955)", 373 function(a2, b2, c2, d2) { 374 return (a2 /= d2 / 2) < 1 ? c2 / 2 * a2 * a2 + b2 : -c2 / 2 * (--a2 * (a2 - 2) - 1) + b2; 375 } 376 ], 377 "ease-in-cubic": [ 378 "cubic-bezier(0.550, 0.055, 0.675, 0.190)", 379 function(a2, b2, c2, d2) { 380 return c2 * (a2 /= d2) * a2 * a2 + b2; 381 } 382 ], 383 "ease-out-cubic": [ 384 "cubic-bezier(0.215, 0.610, 0.355, 1)", 385 function(a2, b2, c2, d2) { 386 return c2 * ((a2 = a2 / d2 - 1) * a2 * a2 + 1) + b2; 387 } 388 ], 389 "ease-in-out-cubic": [ 390 "cubic-bezier(0.645, 0.045, 0.355, 1)", 391 function(a2, b2, c2, d2) { 392 return (a2 /= d2 / 2) < 1 ? c2 / 2 * a2 * a2 * a2 + b2 : c2 / 2 * ((a2 -= 2) * a2 * a2 + 2) + b2; 393 } 394 ], 395 "ease-in-quart": [ 396 "cubic-bezier(0.895, 0.030, 0.685, 0.220)", 397 function(a2, b2, c2, d2) { 398 return c2 * (a2 /= d2) * a2 * a2 * a2 + b2; 399 } 400 ], 401 "ease-out-quart": [ 402 "cubic-bezier(0.165, 0.840, 0.440, 1)", 403 function(a2, b2, c2, d2) { 404 return -c2 * ((a2 = a2 / d2 - 1) * a2 * a2 * a2 - 1) + b2; 405 } 406 ], 407 "ease-in-out-quart": [ 408 "cubic-bezier(0.770, 0, 0.175, 1)", 409 function(a2, b2, c2, d2) { 410 return (a2 /= d2 / 2) < 1 ? c2 / 2 * a2 * a2 * a2 * a2 + b2 : -c2 / 2 * ((a2 -= 2) * a2 * a2 * a2 - 2) + b2; 411 } 412 ], 413 "ease-in-quint": [ 414 "cubic-bezier(0.755, 0.050, 0.855, 0.060)", 415 function(a2, b2, c2, d2) { 416 return c2 * (a2 /= d2) * a2 * a2 * a2 * a2 + b2; 417 } 418 ], 419 "ease-out-quint": [ 420 "cubic-bezier(0.230, 1, 0.320, 1)", 421 function(a2, b2, c2, d2) { 422 return c2 * ((a2 = a2 / d2 - 1) * a2 * a2 * a2 * a2 + 1) + b2; 423 } 424 ], 425 "ease-in-out-quint": [ 426 "cubic-bezier(0.860, 0, 0.070, 1)", 427 function(a2, b2, c2, d2) { 428 return (a2 /= d2 / 2) < 1 ? c2 / 2 * a2 * a2 * a2 * a2 * a2 + b2 : c2 / 2 * ((a2 -= 2) * a2 * a2 * a2 * a2 + 2) + b2; 429 } 430 ], 431 "ease-in-sine": [ 432 "cubic-bezier(0.470, 0, 0.745, 0.715)", 433 function(a2, b2, c2, d2) { 434 return -c2 * Math.cos(a2 / d2 * (Math.PI / 2)) + c2 + b2; 435 } 436 ], 437 "ease-out-sine": [ 438 "cubic-bezier(0.390, 0.575, 0.565, 1)", 439 function(a2, b2, c2, d2) { 440 return c2 * Math.sin(a2 / d2 * (Math.PI / 2)) + b2; 441 } 442 ], 443 "ease-in-out-sine": [ 444 "cubic-bezier(0.445, 0.050, 0.550, 0.950)", 445 function(a2, b2, c2, d2) { 446 return -c2 / 2 * (Math.cos(Math.PI * a2 / d2) - 1) + b2; 447 } 448 ], 449 "ease-in-expo": [ 450 "cubic-bezier(0.950, 0.050, 0.795, 0.035)", 451 function(a2, b2, c2, d2) { 452 return 0 === a2 ? b2 : c2 * Math.pow(2, 10 * (a2 / d2 - 1)) + b2; 453 } 454 ], 455 "ease-out-expo": [ 456 "cubic-bezier(0.190, 1, 0.220, 1)", 457 function(a2, b2, c2, d2) { 458 return a2 === d2 ? b2 + c2 : c2 * (-Math.pow(2, -10 * a2 / d2) + 1) + b2; 459 } 460 ], 461 "ease-in-out-expo": [ 462 "cubic-bezier(1, 0, 0, 1)", 463 function(a2, b2, c2, d2) { 464 return 0 === a2 ? b2 : a2 === d2 ? b2 + c2 : (a2 /= d2 / 2) < 1 ? c2 / 2 * Math.pow(2, 10 * (a2 - 1)) + b2 : c2 / 2 * (-Math.pow(2, -10 * --a2) + 2) + b2; 465 } 466 ], 467 "ease-in-circ": [ 468 "cubic-bezier(0.600, 0.040, 0.980, 0.335)", 469 function(a2, b2, c2, d2) { 470 return -c2 * (Math.sqrt(1 - (a2 /= d2) * a2) - 1) + b2; 471 } 472 ], 473 "ease-out-circ": [ 474 "cubic-bezier(0.075, 0.820, 0.165, 1)", 475 function(a2, b2, c2, d2) { 476 return c2 * Math.sqrt(1 - (a2 = a2 / d2 - 1) * a2) + b2; 477 } 478 ], 479 "ease-in-out-circ": [ 480 "cubic-bezier(0.785, 0.135, 0.150, 0.860)", 481 function(a2, b2, c2, d2) { 482 return (a2 /= d2 / 2) < 1 ? -c2 / 2 * (Math.sqrt(1 - a2 * a2) - 1) + b2 : c2 / 2 * (Math.sqrt(1 - (a2 -= 2) * a2) + 1) + b2; 483 } 484 ], 485 "ease-in-back": [ 486 "cubic-bezier(0.600, -0.280, 0.735, 0.045)", 487 function(a2, b2, c2, d2, e2) { 488 return void 0 === e2 && (e2 = 1.70158), c2 * (a2 /= d2) * a2 * ((e2 + 1) * a2 - e2) + b2; 489 } 490 ], 491 "ease-out-back": [ 492 "cubic-bezier(0.175, 0.885, 0.320, 1.275)", 493 function(a2, b2, c2, d2, e2) { 494 return void 0 === e2 && (e2 = 1.70158), c2 * ((a2 = a2 / d2 - 1) * a2 * ((e2 + 1) * a2 + e2) + 1) + b2; 495 } 496 ], 497 "ease-in-out-back": [ 498 "cubic-bezier(0.680, -0.550, 0.265, 1.550)", 499 function(a2, b2, c2, d2, e2) { 500 return void 0 === e2 && (e2 = 1.70158), (a2 /= d2 / 2) < 1 ? c2 / 2 * a2 * a2 * (((e2 *= 1.525) + 1) * a2 - e2) + b2 : c2 / 2 * ((a2 -= 2) * a2 * (((e2 *= 1.525) + 1) * a2 + e2) + 2) + b2; 501 } 502 ] 503 }, n = { 504 "ease-in-back": "cubic-bezier(0.600, 0, 0.735, 0.045)", 505 "ease-out-back": "cubic-bezier(0.175, 0.885, 0.320, 1)", 506 "ease-in-out-back": "cubic-bezier(0.680, 0, 0.265, 1)" 507 }, o = document, p = window, q = "bkwld-tram", r = /[\-\.0-9]/g, s = /[A-Z]/, t = "number", u = /^(rgb|#)/, v = /(em|cm|mm|in|pt|pc|px)$/, w = /(em|cm|mm|in|pt|pc|px|%)$/, x = /(deg|rad|turn)$/, y = "unitless", z = /(all|none) 0s ease 0s/, A = /^(width|height)$/, B = " ", C = o.createElement("a"), D = [ 508 "Webkit", 509 "Moz", 510 "O", 511 "ms" 512 ], E = [ 513 "-webkit-", 514 "-moz-", 515 "-o-", 516 "-ms-" 517 ], F = function(a2) { 518 if (a2 in C.style) 519 return { 520 dom: a2, 521 css: a2 522 }; 523 var b2, c2, d2 = "", e2 = a2.split("-"); 524 for (b2 = 0; b2 < e2.length; b2++) 525 d2 += e2[b2].charAt(0).toUpperCase() + e2[b2].slice(1); 526 for (b2 = 0; b2 < D.length; b2++) 527 if (c2 = D[b2] + d2, c2 in C.style) 528 return { 529 dom: c2, 530 css: E[b2] + a2 531 }; 532 }, G = b.support = { 533 bind: Function.prototype.bind, 534 transform: F("transform"), 535 transition: F("transition"), 536 backface: F("backface-visibility"), 537 timing: F("transition-timing-function") 538 }; 539 if (G.transition) { 540 var H = G.timing.dom; 541 if (C.style[H] = m["ease-in-back"][0], !C.style[H]) 542 for (var I in n) 543 m[I][0] = n[I]; 544 } 545 var J = b.frame = function() { 546 var a2 = p.requestAnimationFrame || p.webkitRequestAnimationFrame || p.mozRequestAnimationFrame || p.oRequestAnimationFrame || p.msRequestAnimationFrame; 547 return a2 && G.bind ? a2.bind(p) : function(a3) { 548 p.setTimeout(a3, 16); 549 }; 550 }(), K = b.now = function() { 551 var a2 = p.performance, b2 = a2 && (a2.now || a2.webkitNow || a2.msNow || a2.mozNow); 552 return b2 && G.bind ? b2.bind(a2) : Date.now || function() { 553 return +/* @__PURE__ */ new Date(); 554 }; 555 }(), L = l(function(b2) { 556 function d2(a2, b3) { 557 var c2 = k(("" + a2).split(B)), d3 = c2[0]; 558 b3 = b3 || {}; 559 var e3 = Y[d3]; 560 if (!e3) 561 return j("Unsupported property: " + d3); 562 if (!b3.weak || !this.props[d3]) { 563 var f3 = e3[0], g3 = this.props[d3]; 564 return g3 || (g3 = this.props[d3] = new f3.Bare()), g3.init(this.$el, c2, e3, b3), g3; 565 } 566 } 567 function e2(a2, b3, c2) { 568 if (a2) { 569 var e3 = typeof a2; 570 if (b3 || (this.timer && this.timer.destroy(), this.queue = [], this.active = false), "number" == e3 && b3) 571 return this.timer = new S({ 572 duration: a2, 573 context: this, 574 complete: h2 575 }), void (this.active = true); 576 if ("string" == e3 && b3) { 577 switch (a2) { 578 case "hide": 579 o2.call(this); 580 break; 581 case "stop": 582 l2.call(this); 583 break; 584 case "redraw": 585 p2.call(this); 586 break; 587 default: 588 d2.call(this, a2, c2 && c2[1]); 589 } 590 return h2.call(this); 591 } 592 if ("function" == e3) 593 return void a2.call(this, this); 594 if ("object" == e3) { 595 var f3 = 0; 596 u2.call(this, a2, function(a3, b4) { 597 a3.span > f3 && (f3 = a3.span), a3.stop(), a3.animate(b4); 598 }, function(a3) { 599 "wait" in a3 && (f3 = i(a3.wait, 0)); 600 }), t2.call(this), f3 > 0 && (this.timer = new S({ 601 duration: f3, 602 context: this 603 }), this.active = true, b3 && (this.timer.complete = h2)); 604 var g3 = this, j2 = false, k2 = {}; 605 J(function() { 606 u2.call(g3, a2, function(a3) { 607 a3.active && (j2 = true, k2[a3.name] = a3.nextStyle); 608 }), j2 && g3.$el.css(k2); 609 }); 610 } 611 } 612 } 613 function f2(a2) { 614 a2 = i(a2, 0), this.active ? this.queue.push({ 615 options: a2 616 }) : (this.timer = new S({ 617 duration: a2, 618 context: this, 619 complete: h2 620 }), this.active = true); 621 } 622 function g2(a2) { 623 return this.active ? (this.queue.push({ 624 options: a2, 625 args: arguments 626 }), void (this.timer.complete = h2)) : j("No active transition timer. Use start() or wait() before then()."); 627 } 628 function h2() { 629 if (this.timer && this.timer.destroy(), this.active = false, this.queue.length) { 630 var a2 = this.queue.shift(); 631 e2.call(this, a2.options, true, a2.args); 632 } 633 } 634 function l2(a2) { 635 this.timer && this.timer.destroy(), this.queue = [], this.active = false;
636 var b3; 637 "string" == typeof a2 ? (b3 = {}, b3[a2] = 1) : b3 = "object" == typeof a2 && null != a2 ? a2 : this.props, u2.call(this, b3, v2), t2.call(this); 638 } 639 function m2(a2) { 640 l2.call(this, a2), u2.call(this, a2, w2, x2); 641 } 642 function n2(a2) { 643 "string" != typeof a2 && (a2 = "block"), this.el.style.display = a2; 644 } 645 function o2() { 646 l2.call(this), this.el.style.display = "none"; 647 } 648 function p2() { 649 this.el.offsetHeight; 650 } 651 function r2() { 652 l2.call(this), a.removeData(this.el, q), this.$el = this.el = null; 653 } 654 function t2() { 655 var a2, b3, c2 = []; 656 this.upstream && c2.push(this.upstream); 657 for (a2 in this.props) 658 b3 = this.props[a2], b3.active && c2.push(b3.string); 659 c2 = c2.join(","), this.style !== c2 && (this.style = c2, this.el.style[G.transition.dom] = c2); 660 } 661 function u2(a2, b3, e3) { 662 var f3, g3, h3, i2, j2 = b3 !== v2, k2 = {}; 663 for (f3 in a2) 664 h3 = a2[f3], f3 in Z ? (k2.transform || (k2.transform = {}), k2.transform[f3] = h3) : (s.test(f3) && (f3 = c(f3)), f3 in Y ? k2[f3] = h3 : (i2 || (i2 = {}), i2[f3] = h3)); 665 for (f3 in k2) { 666 if (h3 = k2[f3], g3 = this.props[f3], !g3) { 667 if (!j2) 668 continue; 669 g3 = d2.call(this, f3); 670 } 671 b3.call(this, g3, h3); 672 } 673 e3 && i2 && e3.call(this, i2); 674 } 675 function v2(a2) { 676 a2.stop(); 677 } 678 function w2(a2, b3) { 679 a2.set(b3); 680 } 681 function x2(a2) { 682 this.$el.css(a2); 683 } 684 function y2(a2, c2) { 685 b2[a2] = function() { 686 return this.children ? A2.call(this, c2, arguments) : (this.el && c2.apply(this, arguments), this); 687 }; 688 } 689 function A2(a2, b3) { 690 var c2, d3 = this.children.length; 691 for (c2 = 0; d3 > c2; c2++) 692 a2.apply(this.children[c2], b3); 693 return this; 694 } 695 b2.init = function(b3) { 696 if (this.$el = a(b3), this.el = this.$el[0], this.props = {}, this.queue = [], this.style = "", this.active = false, U.keepInherited && !U.fallback) { 697 var c2 = W(this.el, "transition"); 698 c2 && !z.test(c2) && (this.upstream = c2); 699 } 700 G.backface && U.hideBackface && V(this.el, G.backface.css, "hidden"); 701 }, y2("add", d2), y2("start", e2), y2("wait", f2), y2("then", g2), y2("next", h2), y2("stop", l2), y2("set", m2), y2("show", n2), y2("hide", o2), y2("redraw", p2), y2("destroy", r2); 702 }), M = l(L, function(b2) { 703 function c2(b3, c3) { 704 var d2 = a.data(b3, q) || a.data(b3, q, new L.Bare()); 705 return d2.el || d2.init(b3), c3 ? d2.start(c3) : d2; 706 } 707 b2.init = function(b3, d2) { 708 var e2 = a(b3); 709 if (!e2.length) 710 return this; 711 if (1 === e2.length) 712 return c2(e2[0], d2); 713 var f2 = []; 714 return e2.each(function(a2, b4) { 715 f2.push(c2(b4, d2)); 716 }), this.children = f2, this; 717 }; 718 }), N = l(function(a2) { 719 function b2() { 720 var a3 = this.get(); 721 this.update("auto"); 722 var b3 = this.get(); 723 return this.update(a3), b3; 724 } 725 function c2(a3, b3, c3) { 726 return void 0 !== b3 && (c3 = b3), a3 in m ? a3 : c3; 727 } 728 function d2(a3) { 729 var b3 = /rgba?\((\d+),\s*(\d+),\s*(\d+)/.exec(a3); 730 return (b3 ? e(b3[1], b3[2], b3[3]) : a3).replace(/#(\w)(\w)(\w)$/, "#$1$1$2$2$3$3"); 731 } 732 var f2 = { 733 duration: 500, 734 ease: "ease", 735 delay: 0 736 }; 737 a2.init = function(a3, b3, d3, e2) { 738 this.$el = a3, this.el = a3[0]; 739 var g2 = b3[0]; 740 d3[2] && (g2 = d3[2]), X[g2] && (g2 = X[g2]), this.name = g2, this.type = d3[1], this.duration = i(b3[1], this.duration, f2.duration), this.ease = c2(b3[2], this.ease, f2.ease), this.delay = i(b3[3], this.delay, f2.delay), this.span = this.duration + this.delay, this.active = false, this.nextStyle = null, this.auto = A.test(this.name), this.unit = e2.unit || this.unit || U.defaultUnit, this.angle = e2.angle || this.angle || U.defaultAngle, U.fallback || e2.fallback ? this.animate = this.fallback : (this.animate = this.transition, this.string = this.name + B + this.duration + "ms" + ("ease" != this.ease ? B + m[this.ease][0] : "") + (this.delay ? B + this.delay + "ms" : "")); 741 }, a2.set = function(a3) { 742 a3 = this.convert(a3, this.type), this.update(a3), this.redraw(); 743 }, a2.transition = function(a3) { 744 this.active = true, a3 = this.convert(a3, this.type), this.auto && ("auto" == this.el.style[this.name] && (this.update(this.get()), this.redraw()), "auto" == a3 && (a3 = b2.call(this))), this.nextStyle = a3; 745 }, a2.fallback = function(a3) { 746 var c3 = this.el.style[this.name] || this.convert(this.get(), this.type); 747 a3 = this.convert(a3, this.type), this.auto && ("auto" == c3 && (c3 = this.convert(this.get(), this.type)), "auto" == a3 && (a3 = b2.call(this))), this.tween = new R({ 748 from: c3, 749 to: a3, 750 duration: this.duration, 751 delay: this.delay, 752 ease: this.ease, 753 update: this.update, 754 context: this 755 }); 756 }, a2.get = function() { 757 return W(this.el, this.name); 758 }, a2.update = function(a3) { 759 V(this.el, this.name, a3); 760 }, a2.stop = function() { 761 (this.active || this.nextStyle) && (this.active = false, this.nextStyle = null, V(this.el, this.name, this.get())); 762 var a3 = this.tween; 763 a3 && a3.context && a3.destroy(); 764 }, a2.convert = function(a3, b3) { 765 if ("auto" == a3 && this.auto) 766 return a3; 767 var c3, e2 = "number" == typeof a3, f3 = "string" == typeof a3; 768 switch (b3) { 769 case t: 770 if (e2) 771 return a3; 772 if (f3 && "" === a3.replace(r, "")) 773 return +a3; 774 c3 = "number(unitless)"; 775 break; 776 case u: 777 if (f3) { 778 if ("" === a3 && this.original) 779 return this.original; 780 if (b3.test(a3)) 781 return "#" == a3.charAt(0) && 7 == a3.length ? a3 : d2(a3); 782 } 783 c3 = "hex or rgb string"; 784 break; 785 case v: 786 if (e2) 787 return a3 + this.unit; 788 if (f3 && b3.test(a3)) 789 return a3; 790 c3 = "number(px) or string(unit)"; 791 break; 792 case w: 793 if (e2) 794 return a3 + this.unit; 795 if (f3 && b3.test(a3)) 796 return a3; 797 c3 = "number(px) or string(unit or %)"; 798 break; 799 case x: 800 if (e2) 801 return a3 + this.angle; 802 if (f3 && b3.test(a3)) 803 return a3; 804 c3 = "number(deg) or string(angle)"; 805 break; 806 case y: 807 if (e2) 808 return a3; 809 if (f3 && w.test(a3)) 810 return a3; 811 c3 = "number(unitless) or string(unit or %)"; 812 } 813 return g(c3, a3), a3; 814 }, a2.redraw = function() { 815 this.el.offsetHeight; 816 }; 817 }), O = l(N, function(a2, b2) { 818 a2.init = function() {
819 b2.init.apply(this, arguments), this.original || (this.original = this.convert(this.get(), u)); 820 }; 821 }), P = l(N, function(a2, b2) { 822 a2.init = function() { 823 b2.init.apply(this, arguments), this.animate = this.fallback; 824 }, a2.get = function() { 825 return this.$el[this.name](); 826 }, a2.update = function(a3) { 827 this.$el[this.name](a3); 828 }; 829 }), Q = l(N, function(a2, b2) { 830 function c2(a3, b3) { 831 var c3, d2, e2, f2, g2; 832 for (c3 in a3) 833 f2 = Z[c3], e2 = f2[0], d2 = f2[1] || c3, g2 = this.convert(a3[c3], e2), b3.call(this, d2, g2, e2); 834 } 835 a2.init = function() { 836 b2.init.apply(this, arguments), this.current || (this.current = {}, Z.perspective && U.perspective && (this.current.perspective = U.perspective, V(this.el, this.name, this.style(this.current)), this.redraw())); 837 }, a2.set = function(a3) { 838 c2.call(this, a3, function(a4, b3) { 839 this.current[a4] = b3; 840 }), V(this.el, this.name, this.style(this.current)), this.redraw(); 841 }, a2.transition = function(a3) { 842 var b3 = this.values(a3); 843 this.tween = new T({ 844 current: this.current, 845 values: b3, 846 duration: this.duration, 847 delay: this.delay, 848 ease: this.ease 849 }); 850 var c3, d2 = {}; 851 for (c3 in this.current) 852 d2[c3] = c3 in b3 ? b3[c3] : this.current[c3]; 853 this.active = true, this.nextStyle = this.style(d2); 854 }, a2.fallback = function(a3) { 855 var b3 = this.values(a3); 856 this.tween = new T({ 857 current: this.current, 858 values: b3, 859 duration: this.duration, 860 delay: this.delay, 861 ease: this.ease, 862 update: this.update, 863 context: this 864 }); 865 }, a2.update = function() { 866 V(this.el, this.name, this.style(this.current)); 867 }, a2.style = function(a3) { 868 var b3, c3 = ""; 869 for (b3 in a3) 870 c3 += b3 + "(" + a3[b3] + ") "; 871 return c3; 872 }, a2.values = function(a3) { 873 var b3, d2 = {}; 874 return c2.call(this, a3, function(a4, c3, e2) { 875 d2[a4] = c3, void 0 === this.current[a4] && (b3 = 0, ~a4.indexOf("scale") && (b3 = 1), this.current[a4] = this.convert(b3, e2)); 876 }), d2; 877 }; 878 }), R = l(function(b2) { 879 function c2(a2) { 880 1 === n2.push(a2) && J(g2); 881 } 882 function g2() { 883 var a2, b3, c3, d2 = n2.length; 884 if (d2) 885 for (J(g2), b3 = K(), a2 = d2; a2--; ) 886 c3 = n2[a2], c3 && c3.render(b3); 887 } 888 function i2(b3) { 889 var c3, d2 = a.inArray(b3, n2); 890 d2 >= 0 && (c3 = n2.slice(d2 + 1), n2.length = d2, c3.length && (n2 = n2.concat(c3))); 891 } 892 function j2(a2) { 893 return Math.round(a2 * o2) / o2; 894 } 895 function k2(a2, b3, c3) { 896 return e(a2[0] + c3 * (b3[0] - a2[0]), a2[1] + c3 * (b3[1] - a2[1]), a2[2] + c3 * (b3[2] - a2[2])); 897 } 898 var l2 = { 899 ease: m.ease[1], 900 from: 0, 901 to: 1 902 }; 903 b2.init = function(a2) { 904 this.duration = a2.duration || 0, this.delay = a2.delay || 0; 905 var b3 = a2.ease || l2.ease; 906 m[b3] && (b3 = m[b3][1]), "function" != typeof b3 && (b3 = l2.ease), this.ease = b3, this.update = a2.update || f, this.complete = a2.complete || f, this.context = a2.context || this, this.name = a2.name; 907 var c3 = a2.from, d2 = a2.to; 908 void 0 === c3 && (c3 = l2.from), void 0 === d2 && (d2 = l2.to), this.unit = a2.unit || "", "number" == typeof c3 && "number" == typeof d2 ? (this.begin = c3, this.change = d2 - c3) : this.format(d2, c3), this.value = this.begin + this.unit, this.start = K(), a2.autoplay !== false && this.play(); 909 }, b2.play = function() { 910 this.active || (this.start || (this.start = K()), this.active = true, c2(this)); 911 }, b2.stop = function() { 912 this.active && (this.active = false, i2(this)); 913 }, b2.render = function(a2) { 914 var b3, c3 = a2 - this.start; 915 if (this.delay) { 916 if (c3 <= this.delay) 917 return; 918 c3 -= this.delay; 919 } 920 if (c3 < this.duration) { 921 var d2 = this.ease(c3, 0, 1, this.duration); 922 return b3 = this.startRGB ? k2(this.startRGB, this.endRGB, d2) : j2(this.begin + d2 * this.change), this.value = b3 + this.unit, void this.update.call(this.context, this.value); 923 } 924 b3 = this.endHex || this.begin + this.change, this.value = b3 + this.unit, this.update.call(this.context, this.value), this.complete.call(this.context), this.destroy(); 925 }, b2.format = function(a2, b3) { 926 if (b3 += "", a2 += "", "#" == a2.charAt(0)) 927 return this.startRGB = d(b3), this.endRGB = d(a2), this.endHex = a2, this.begin = 0, void (this.change = 1); 928 if (!this.unit) { 929 var c3 = b3.replace(r, ""), e2 = a2.replace(r, ""); 930 c3 !== e2 && h("tween", b3, a2), this.unit = c3; 931 } 932 b3 = parseFloat(b3), a2 = parseFloat(a2), this.begin = this.value = b3, this.change = a2 - b3; 933 }, b2.destroy = function() { 934 this.stop(), this.context = null, this.ease = this.update = this.complete = f; 935 }; 936 var n2 = [], o2 = 1e3; 937 }
937), S = l(R, function(a2) { 938 a2.init = function(a3) { 939 this.duration = a3.duration || 0, this.complete = a3.complete || f, this.context = a3.context, this.play(); 940 }, a2.render = function(a3) { 941 var b2 = a3 - this.start; 942 b2 < this.duration || (this.complete.call(this.context), this.destroy()); 943 }; 944 }), T = l(R, function(a2, b2) { 945 a2.init = function(a3) { 946 this.context = a3.context, this.update = a3.update, this.tweens = [], this.current = a3.current; 947 var b3, c2; 948 for (b3 in a3.values) 949 c2 = a3.values[b3], this.current[b3] !== c2 && this.tweens.push(new R({ 950 name: b3, 951 from: this.current[b3], 952 to: c2, 953 duration: a3.duration, 954 delay: a3.delay, 955 ease: a3.ease, 956 autoplay: false 957 })); 958 this.play(); 959 }, a2.render = function(a3) { 960 var b3, c2, d2 = this.tweens.length, e2 = false; 961 for (b3 = d2; b3--; ) 962 c2 = this.tweens[b3], c2.context && (c2.render(a3), this.current[c2.name] = c2.value, e2 = true); 963 return e2 ? void (this.update && this.update.call(this.context)) : this.destroy(); 964 }, a2.destroy = function() { 965 if (b2.destroy.call(this), this.tweens) { 966 var a3, c2 = this.tweens.length; 967 for (a3 = c2; a3--; ) 968 this.tweens[a3].destroy(); 969 this.tweens = null, this.current = null; 970 } 971 }; 972 }), U = b.config = { 973 debug: false, 974 defaultUnit: "px", 975 defaultAngle: "deg", 976 keepInherited: false, 977 hideBackface: false, 978 perspective: "", 979 fallback: !G.transition, 980 agentTests: [] 981 }; 982 b.fallback = function(a2) { 983 if (!G.transition) 984 return U.fallback = true; 985 U.agentTests.push("(" + a2 + ")"); 986 var b2 = new RegExp(U.agentTests.join("|"), "i"); 987 U.fallback = b2.test(navigator.userAgent); 988 }, b.fallback("6.0.[2-5] Safari"), b.tween = function(a2) { 989 return new R(a2); 990 }, b.delay = function(a2, b2, c2) { 991 return new S({ 992 complete: b2, 993 duration: a2, 994 context: c2 995 }); 996 }, a.fn.tram = function(a2) { 997 return b.call(null, this, a2); 998 }; 999 var V = a.style, W = a.css, X = { 1000 transform: G.transform && G.transform.css 1001 }, Y = { 1002 color: [ 1003 O, 1004 u 1005 ], 1006 background: [ 1007 O, 1008 u, 1009 "background-color" 1010 ], 1011 "outline-color": [ 1012 O, 1013 u 1014 ], 1015 "border-color": [ 1016 O, 1017 u 1018 ], 1019 "border-top-color": [ 1020 O, 1021 u 1022 ], 1023 "border-right-color": [ 1024 O, 1025 u 1026 ], 1027 "border-bottom-color": [ 1028 O, 1029 u 1030 ], 1031 "border-left-color": [ 1032 O, 1033 u 1034 ], 1035 "border-width": [ 1036 N, 1037 v 1038 ], 1039 "border-top-width": [ 1040 N, 1041 v 1042 ], 1043 "border-right-width": [ 1044 N, 1045 v 1046 ], 1047 "border-bottom-width": [ 1048 N, 1049 v 1050 ], 1051 "border-left-width": [ 1052 N, 1053 v 1054 ], 1055 "border-spacing": [ 1056 N, 1057 v 1058 ], 1059 "letter-spacing": [ 1060 N, 1061 v 1062 ], 1063 margin: [ 1064 N, 1065 v 1066 ], 1067 "margin-top": [ 1068 N, 1069 v 1070 ], 1071 "margin-right": [ 1072 N, 1073 v 1074 ], 1075 "margin-bottom": [ 1076 N, 1077 v 1078 ], 1079 "margin-left": [ 1080 N, 1081 v 1082 ], 1083 padding: [ 1084 N, 1085 v 1086 ], 1087 "padding-top": [ 1088 N, 1089 v 1090 ], 1091 "padding-right": [ 1092 N, 1093 v 1094 ], 1095 "padding-bottom": [ 1096 N, 1097 v 1098 ], 1099 "padding-left": [ 1100 N, 1101 v 1102 ], 1103 "outline-width": [ 1104 N, 1105 v 1106 ], 1107 opacity: [ 1108 N, 1109 t 1110 ], 1111 top: [ 1112 N, 1113 w 1114 ], 1115 right: [ 1116 N, 1117 w 1118 ], 1119 bottom: [ 1120 N, 1121 w 1122 ], 1123 left: [ 1124 N, 1125 w 1126 ], 1127 "font-size": [ 1128 N, 1129 w 1130 ], 1131 "text-indent": [ 1132 N, 1133 w 1134 ], 1135 "word-spacing": [ 1136 N, 1137 w 1138 ], 1139 width: [ 1140 N, 1141 w 1142 ], 1143 "min-width": [ 1144 N, 1145 w 1146 ], 1147 "max-width": [ 1148 N, 1149 w 1150 ], 1151 height: [ 1152 N, 1153 w 1154 ], 1155 "min-height": [ 1156 N, 1157 w 1158 ], 1159 "max-height": [ 1160 N, 1161 w 1162 ], 1163 "line-height": [ 1164 N, 1165 y 1166 ], 1167 "scroll-top": [ 1168 P, 1169 t, 1170 "scrollTop" 1171 ], 1172 "scroll-left": [ 1173 P, 1174 t, 1175 "scrollLeft" 1176 ] 1177 }, Z = {}; 1178 G.transform && (Y.transform = [ 1179 Q 1180 ], Z = { 1181 x: [ 1182 w, 1183 "translateX" 1184 ], 1185 y: [ 1186 w, 1187 "translateY" 1188 ], 1189 rotate: [ 1190 x 1191 ], 1192 rotateX: [ 1193 x 1194 ], 1195 rotateY: [ 1196 x 1197 ], 1198 scale: [ 1199 t 1200 ], 1201 scaleX: [ 1202 t 1203 ], 1204 scaleY: [ 1205 t 1206 ], 1207 skew: [ 1208 x 1209 ], 1210 skewX: [ 1211 x 1212 ], 1213 skewY: [ 1214 x 1215 ] 1216 }), G.transform && G.backface && (Z.z = [ 1217 w, 1218 "translateZ" 1219 ], Z.rotateZ = [ 1220 x 1221 ], Z.scaleZ = [ 1222 t 1223 ], Z.perspective = [ 1224 v 1225 ]); 1226 var $2 = /ms/, _ = /s|\./; 1227 return a.tram = b; 1228 }(window.jQuery); 1229 } 1230 }); 1231 1232
1232// packages/shared/render/plugins/BaseSiteModules/underscore-custom.js 1233 var require_underscore_custom = __commonJS({ 1234 "packages/shared/render/plugins/BaseSiteModules/underscore-custom.js"(exports, module) { 1235 "use strict"; 1236 var $2 = window.$; 1237 var tram = require_tram_min() && $2.tram; 1238 module.exports = function() { 1239 var _ = {}; 1240 _.VERSION = "1.6.0-Webflow"; 1241 var breaker = {}; 1242 var ArrayProto = Array.prototype, ObjProto = Object.prototype, FuncProto = Function.prototype; 1243 var push = ArrayProto.push, slice = ArrayProto.slice, concat = ArrayProto.concat, toString = ObjProto.toString, hasOwnProperty = ObjProto.hasOwnProperty; 1244 var nativeForEach = ArrayProto.forEach, nativeMap = ArrayProto.map, nativeReduce = ArrayProto.reduce, nativeReduceRight = ArrayProto.reduceRight, nativeFilter = ArrayProto.filter, nativeEvery = ArrayProto.every, nativeSome = ArrayProto.some, nativeIndexOf = ArrayProto.indexOf, nativeLastIndexOf = ArrayProto.lastIndexOf, nativeIsArray = Array.isArray, nativeKeys = Object.keys, nativeBind = FuncProto.bind; 1245 var each = _.each = _.forEach = function(obj, iterator, context) { 1246 if (obj == null) 1247 return obj; 1248 if (nativeForEach && obj.forEach === nativeForEach) { 1249 obj.forEach(iterator, context); 1250 } else if (obj.length === +obj.length) { 1251 for (var i = 0, length = obj.length; i < length; i++) { 1252 if (iterator.call(context, obj[i], i, obj) === breaker) 1253 return; 1254 } 1255 } else { 1256 var keys = _.keys(obj); 1257 for (var i = 0, length = keys.length; i < length; i++) { 1258 if (iterator.call(context, obj[keys[i]], keys[i], obj) === breaker) 1259 return; 1260 } 1261 } 1262 return obj; 1263 }; 1264 _.map = _.collect = function(obj, iterator, context) { 1265 var results = []; 1266 if (obj == null) 1267 return results; 1268 if (nativeMap && obj.map === nativeMap) 1269 return obj.map(iterator, context); 1270 each(obj, function(value, index, list) { 1271 results.push(iterator.call(context, value, index, list)); 1272 }); 1273 return results; 1274 }; 1275 _.find = _.detect = function(obj, predicate, context) { 1276 var result; 1277 any(obj, function(value, index, list) { 1278 if (predicate.call(context, value, index, list)) { 1279 result = value; 1280 return true; 1281 } 1282 }); 1283 return result; 1284 }; 1285 _.filter = _.select = function(obj, predicate, context) { 1286 var results = []; 1287 if (obj == null) 1288 return results; 1289 if (nativeFilter && obj.filter === nativeFilter) 1290 return obj.filter(predicate, context); 1291 each(obj, function(value, index, list) { 1292 if (predicate.call(context, value, index, list)) 1293 results.push(value); 1294 }); 1295 return results; 1296 }; 1297 var any = _.some = _.any = function(obj, predicate, context) { 1298 predicate || (predicate = _.identity); 1299 var result = false;
1300 if (obj == null) 1301 return result; 1302 if (nativeSome && obj.some === nativeSome) 1303 return obj.some(predicate, context); 1304 each(obj, function(value, index, list) { 1305 if (result || (result = predicate.call(context, value, index, list))) 1306 return breaker; 1307 }); 1308 return !!result; 1309 }; 1310 _.contains = _.include = function(obj, target) { 1311 if (obj == null) 1312 return false; 1313 if (nativeIndexOf && obj.indexOf === nativeIndexOf) 1314 return obj.indexOf(target) != -1; 1315 return any(obj, function(value) { 1316 return value === target; 1317 }); 1318 }; 1319 _.delay = function(func, wait) { 1320 var args = slice.call(arguments, 2); 1321 return setTimeout(function() { 1322 return func.apply(null, args); 1323 }, wait); 1324 }; 1325 _.defer = function(func) { 1326 return _.delay.apply(_, [ 1327 func, 1328 1 1329 ].concat(slice.call(arguments, 1))); 1330 }; 1331 _.throttle = function(func) { 1332 var wait, args, context; 1333 return function() { 1334 if (wait) 1335 return; 1336 wait = true; 1337 args = arguments; 1338 context = this; 1339 tram.frame(function() { 1340 wait = false; 1341 func.apply(context, args); 1342 }); 1343 }; 1344 }; 1345 _.debounce = function(func, wait, immediate) { 1346 var timeout, args, context, timestamp, result; 1347 var later = function() { 1348 var last = _.now() - timestamp; 1349 if (last < wait) { 1350 timeout = setTimeout(later, wait - last); 1351 } else { 1352 timeout = null; 1353 if (!immediate) { 1354 result = func.apply(context, args); 1355 context = args = null; 1356 } 1357 } 1358 }; 1359 return function() { 1360 context = this; 1361 args = arguments; 1362 timestamp = _.now(); 1363 var callNow = immediate && !timeout; 1364 if (!timeout) { 1365 timeout = setTimeout(later, wait); 1366 } 1367 if (callNow) { 1368 result = func.apply(context, args); 1369 context = args = null; 1370 } 1371 return result; 1372 }; 1373 }; 1374 _.defaults = function(obj) { 1375 if (!_.isObject(obj)) 1376 return obj; 1377 for (var i = 1, length = arguments.length; i < length; i++) { 1378 var source = arguments[i]; 1379 for (var prop in source) { 1380 if (obj[prop] === void 0) 1381 obj[prop] = source[prop]; 1382 } 1383 } 1384 return obj; 1385 }; 1386 _.keys = function(obj) { 1387 if (!_.isObject(obj)) 1388 return []; 1389 if (nativeKeys) 1390 return nativeKeys(obj); 1391 var keys = []; 1392 for (var key in obj) 1393 if (_.has(obj, key)) 1394 keys.push(key); 1395 return keys; 1396 }; 1397 _.has = function(obj, key) { 1398 return hasOwnProperty.call(obj, key); 1399 }; 1400 _.isObject = function(obj) { 1401 return obj === Object(obj); 1402 }; 1403 _.now = Date.now || function() { 1404 return (/* @__PURE__ */ new Date()).getTime(); 1405 }; 1406 _.templateSettings = { 1407 evaluate: /<%([\s\S]+?)%>/g, 1408 interpolate: /<%=([\s\S]+?)%>/g, 1409 escape: /<%-([\s\S]+?)%>/g 1410 }; 1411 var noMatch = /(.)^/; 1412 var escapes = { 1413 "'": "'", 1414 "\\": "\\", 1415 "\r": "r", 1416 "\n": "n", 1417 "\u2028": "u2028", 1418 "\u2029": "u2029" 1419 }; 1420 var escapeRegExp = /\\|'|\r|\n|\u2028|\u2029/g; 1421 var escapeChar = function(match) { 1422 return "\\" + escapes[match]; 1423 }; 1424 var bareIdentifier = /^\s*(\w|\$)+\s*$/; 1425 _.template = function(text, settings, oldSettings) { 1426 if (!settings && oldSettings) 1427 settings = oldSettings; 1428 settings = _.defaults({}, settings, _.templateSettings); 1429 var matcher = RegExp([
vendor: 1,779 bytes, lines 1430-1476
1430 (settings.escape || noMatch).source, 1431 (settings.interpolate || noMatch).source, 1432 (settings.evaluate || noMatch).source 1433 ].join("|") + "|$", "g"); 1434 var index = 0; 1435 var source = "__p+='"; 1436 text.replace(matcher, function(match, escape, interpolate, evaluate, offset) { 1437 source += text.slice(index, offset).replace(escapeRegExp, escapeChar); 1438 index = offset + match.length; 1439 if (escape) { 1440 source += "'+\n((__t=(" + escape + "))==null?'':_.escape(__t))+\n'"; 1441 } else if (interpolate) { 1442 source += "'+\n((__t=(" + interpolate + "))==null?'':__t)+\n'"; 1443 } else if (evaluate) { 1444 source += "';\n" + evaluate + "\n__p+='"; 1445 } 1446 return match; 1447 }); 1448 source += "';\n"; 1449 var argument = settings.variable; 1450 if (argument) { 1451 if (!bareIdentifier.test(argument)) 1452 throw new Error("variable is not a bare identifier: " + argument); 1453 } else { 1454 source = "with(obj||{}){\n" + source + "}\n"; 1455 argument = "obj"; 1456 } 1457 source = "var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n" + source + "return __p;\n"; 1458 var render; 1459 try { 1460 render = new Function(settings.variable || "obj", "_", source); 1461 } catch (e) { 1462 e.source = source; 1463 throw e; 1464 } 1465 var template = function(data) { 1466 return render.call(this, data, _); 1467 }; 1468 template.source = "function(" + argument + "){\n" + source + "}"; 1469 return template; 1470 }; 1471 return _; 1472 }(); 1473 } 1474 }); 1475 1476
1476// packages/shared/render/plugins/BaseSiteModules/webflow-lib.js 1477 var require_webflow_lib = __commonJS({ 1478 "packages/shared/render/plugins/BaseSiteModules/webflow-lib.js"(exports, module) { 1479 "use strict"; 1480 var Webflow2 = {}; 1481 var modules = {}; 1482 var primary = []; 1483 var secondary = window.Webflow || []; 1484 var $2 = window.jQuery; 1485 var $win = $2(window); 1486 var $doc = $2(document); 1487 var isFunction = $2.isFunction; 1488 var _ = Webflow2._ = require_underscore_custom(); 1489 var tram = Webflow2.tram = require_tram_min() && $2.tram; 1490 var domready = false; 1491 var destroyed = false; 1492 tram.config.hideBackface = false; 1493 tram.config.keepInherited = true; 1494 Webflow2.define = function(name, factory, options) { 1495 if (modules[name]) { 1496 unbindModule(modules[name]); 1497 } 1498 var instance = modules[name] = factory($2, _, options) || {}; 1499 bindModule(instance); 1500 return instance; 1501 }; 1502 Webflow2.require = function(name) { 1503 return modules[name]; 1504 }; 1505 function bindModule(module1) { 1506 if (Webflow2.env()) { 1507 isFunction(module1.design) && $win.on("__wf_design", module1.design); 1508 isFunction(module1.preview) && $win.on("__wf_preview", module1.preview); 1509 } 1510 isFunction(module1.destroy) && $win.on("__wf_destroy", module1.destroy); 1511 if (module1.ready && isFunction(module1.ready)) { 1512 addReady(module1); 1513 } 1514 } 1515 function addReady(module1) { 1516 if (domready) { 1517 module1.ready(); 1518 return; 1519 } 1520 if (_.contains(primary, module1.ready)) { 1521 return; 1522 } 1523 primary.push(module1.ready); 1524 } 1525 function unbindModule(module1) { 1526 isFunction(module1.design) && $win.off("__wf_design", module1.design); 1527 isFunction(module1.preview) && $win.off("__wf_preview", module1.preview); 1528 isFunction(module1.destroy) && $win.off("__wf_destroy", module1.destroy); 1529 if (module1.ready && isFunction(module1.ready)) { 1530 removeReady(module1); 1531 } 1532 } 1533 function removeReady(module1) { 1534 primary = _.filter(primary, function(readyFn) { 1535 return readyFn !== module1.ready; 1536 }); 1537 } 1538 Webflow2.push = function(ready) { 1539 if (domready) { 1540 isFunction(ready) && ready(); 1541 return; 1542 } 1543 secondary.push(ready); 1544 }; 1545 Webflow2.env = function(mode) { 1546 var designFlag = window.__wf_design; 1547 var inApp = typeof designFlag !== "undefined"; 1548 if (!mode) { 1549 return inApp; 1550 } 1551 if (mode === "design") { 1552 return inApp && designFlag; 1553 } 1554 if (mode === "preview") { 1555 return inApp && !designFlag; 1556 } 1557 if (mode === "slug") { 1558 return inApp && window.__wf_slug; 1559 } 1560 if (mode === "editor") { 1561 return window.WebflowEditor; 1562 } 1563 if (mode === "test") { 1564 return window.__wf_test; 1565 } 1566 if (mode === "frame") { 1567 return window !== window.top; 1568 } 1569 }; 1570 var userAgent = navigator.userAgent.toLowerCase(); 1571 var touch = Webflow2.env.touch = "ontouchstart" in window || window.DocumentTouch && document instanceof window.DocumentTouch; 1572 var chrome = Webflow2.env.chrome = /chrome/.test(userAgent) && /Google/.test(navigator.vendor) && parseInt(userAgent.match(/chrome\/(\d+)\./)[1], 10); 1573 var ios = Webflow2.env.ios = /(ipod|iphone|ipad)/.test(userAgent); 1574 Webflow2.env.safari = /safari/.test(userAgent) && !chrome && !ios; 1575 var touchTarget; 1576 touch && $doc.on("touchstart mousedown", function(evt) { 1577 touchTarget = evt.target; 1578 }); 1579 Webflow2.validClick = touch ? function(clickTarget) { 1580 return clickTarget === touchTarget || $2.contains(clickTarget, touchTarget); 1581 } : function() { 1582 return true; 1583 }; 1584 var resizeEvents = "resize.webflow orientationchange.webflow load.webflow"; 1585 var scrollEvents = "scroll.webflow " + resizeEvents; 1586 Webflow2.resize = eventProxy($win, resizeEvents); 1587 Webflow2.scroll = eventProxy($win, scrollEvents); 1588 Webflow2.redraw = eventProxy(); 1589 function eventProxy(target, types) { 1590 var handlers = []; 1591 var proxy = {}; 1592 proxy.up = _.throttle(function(evt) { 1593 _.each(handlers, function(h) { 1594 h(evt); 1595 }); 1596 }); 1597 if (target && types) { 1598 target.on(types, proxy.up); 1599 } 1600 proxy.on = function(handler) { 1601 if (typeof handler !== "function") { 1602 return; 1603 } 1604 if (_.contains(handlers, handler)) { 1605 return; 1606 } 1607 handlers.push(handler); 1608 }; 1609 proxy.off = function(handler) { 1610 if (!arguments.length) { 1611 handlers = []; 1612 return; 1613 } 1614 handlers = _.filter(handlers, function(h) { 1615 return h !== handler; 1616 }); 1617 }; 1618 return proxy; 1619 } 1620 Webflow2.location = function(url) { 1621 window.location = url; 1622 }; 1623 if (Webflow2.env()) { 1624 Webflow2.location = function() { 1625 }; 1626 } 1627 Webflow2.ready = function() { 1628 domready = true; 1629 if (destroyed) { 1630 restoreModules(); 1631 } else {
1632 _.each(primary, callReady); 1633 } 1634 _.each(secondary, callReady); 1635 Webflow2.resize.up(); 1636 }; 1637 function callReady(readyFn) { 1638 isFunction(readyFn) && readyFn(); 1639 } 1640 function restoreModules() { 1641 destroyed = false; 1642 _.each(modules, bindModule); 1643 } 1644 var deferLoad; 1645 Webflow2.load = function(handler) { 1646 deferLoad.then(handler); 1647 }; 1648 function bindLoad() { 1649 if (deferLoad) { 1650 deferLoad.reject(); 1651 $win.off("load", deferLoad.resolve); 1652 } 1653 deferLoad = new $2.Deferred(); 1654 $win.on("load", deferLoad.resolve); 1655 } 1656 Webflow2.destroy = function(options) { 1657 options = options || {}; 1658 destroyed = true; 1659 $win.triggerHandler("__wf_destroy"); 1660 if (options.domready != null) { 1661 domready = options.domready; 1662 } 1663 _.each(modules, unbindModule); 1664 Webflow2.resize.off(); 1665 Webflow2.scroll.off(); 1666 Webflow2.redraw.off(); 1667 primary = []; 1668 secondary = []; 1669 if (deferLoad.state() === "pending") { 1670 bindLoad(); 1671 } 1672 }; 1673 $2(Webflow2.ready); 1674 bindLoad(); 1675 module.exports = window.Webflow = Webflow2; 1676 } 1677 }); 1678 1679
1679// packages/shared/render/plugins/BaseSiteModules/webflow-brand.js 1680 var require_webflow_brand = __commonJS({ 1681 "packages/shared/render/plugins/BaseSiteModules/webflow-brand.js"(exports, module) { 1682 "use strict"; 1683 var Webflow2 = require_webflow_lib(); 1684 Webflow2.define("brand", module.exports = function($2) { 1685 var api = {}; 1686 var doc = document; 1687 var $html = $2("html"); 1688 var $body = $2("body"); 1689 var namespace = ".w-webflow-badge"; 1690 var location = window.location; 1691 var isPhantom = /PhantomJS/i.test(navigator.userAgent); 1692 var fullScreenEvents = "fullscreenchange webkitfullscreenchange mozfullscreenchange msfullscreenchange"; 1693 var brandElement; 1694 api.ready = function() { 1695 var shouldBrand = $html.attr("data-wf-status"); 1696 var publishedDomain = $html.attr("data-wf-domain") || ""; 1697 if (/\.webflow\.io$/i.test(publishedDomain) && location.hostname !== publishedDomain) { 1698 shouldBrand = true; 1699 } 1700 if (shouldBrand && !isPhantom) { 1701 brandElement = brandElement || createBadge(); 1702 ensureBrand(); 1703 setTimeout(ensureBrand, 500); 1704 $2(doc).off(fullScreenEvents, onFullScreenChange).on(fullScreenEvents, onFullScreenChange); 1705 } 1706 }; 1707 function onFullScreenChange() { 1708 var fullScreen = doc.fullScreen || doc.mozFullScreen || doc.webkitIsFullScreen || doc.msFullscreenElement || Boolean(doc.webkitFullscreenElement); 1709 $2(brandElement).attr("style", fullScreen ? "display: none !important;" : ""); 1710 } 1711 function createBadge() { 1712 var $brand = $2('<a class="w-webflow-badge"></a>').attr("href", "https://webflow.com?utm_campaign=brandjs"); 1713 var $logoArt = $2("<img>").attr("src", "https://d3e54v103j8qbb.cloudfront.net/img/webflow-badge-icon-d2.89e12c322e.svg").attr("alt", "").css({ 1714 marginRight: "4px", 1715 width: "26px" 1716 }); 1717 var $logoText = $2("<img>").attr("src", "https://d3e54v103j8qbb.cloudfront.net/img/webflow-badge-text-d2.c82cec3b78.svg").attr("alt", "Made in Webflow"); 1718 $brand.append($logoArt, $logoText); 1719 return $brand[0]; 1720 } 1721 function ensureBrand() { 1722 var found = $body.children(namespace); 1723 var match = found.length && found.get(0) === brandElement; 1724 var inEditor = Webflow2.env("editor"); 1725 if (match) { 1726 if (inEditor) { 1727 found.remove(); 1728 } 1729 return; 1730 } 1731 if (found.length) { 1732 found.remove(); 1733 } 1734 if (!inEditor) { 1735 $body.append(brandElement); 1736 } 1737 } 1738 return api; 1739 }); 1740 } 1741 }); 1742 1743
1743// packages/shared/render/plugins/BaseSiteModules/webflow-edit.js 1744 var require_webflow_edit = __commonJS({ 1745 "packages/shared/render/plugins/BaseSiteModules/webflow-edit.js"(exports, module) { 1746 "use strict"; 1747 var Webflow2 = require_webflow_lib(); 1748 Webflow2.define("edit", module.exports = function($2, _, options) { 1749 options = options || {}; 1750 if (Webflow2.env("test") || Webflow2.env("frame")) { 1751 if (!options.fixture && !inCypress()) { 1752 return { 1753 exit: 1 1754 }; 1755 } 1756 } 1757 var api = {}; 1758 var $win = $2(window); 1759 var $html = $2(document.documentElement); 1760 var location = document.location; 1761 var hashchange = "hashchange"; 1762 var loaded; 1763 var loadEditor = options.load || load; 1764 var hasLocalStorage = false; 1765 try { 1766 hasLocalStorage = localStorage && localStorage.getItem && localStorage.getItem("WebflowEditor"); 1767 } catch (e) { 1768 } 1769 if (hasLocalStorage) { 1770 loadEditor(); 1771 } else if (location.search) { 1772 if (/[?&](edit)(?:[=&?]|$)/.test(location.search) || /\?edit$/.test(location.href)) { 1773 loadEditor(); 1774 } 1775 } else { 1776 $win.on(hashchange, checkHash).triggerHandler(hashchange); 1777 } 1778 function checkHash() { 1779 if (loaded) { 1780 return; 1781 } 1782 if (/\?edit/.test(location.hash)) { 1783 loadEditor(); 1784 } 1785 } 1786 function load() { 1787 loaded = true; 1788 window.WebflowEditor = true; 1789 $win.off(hashchange, checkHash); 1790 checkThirdPartyCookieSupport(function(thirdPartyCookiesSupported) { 1791 $2.ajax({ 1792 url: cleanSlashes("https://editor-api.webflow.com/api/editor/view"), 1793 data: { 1794 siteId: $html.attr("data-wf-site") 1795 }, 1796 xhrFields: { 1797 withCredentials: true 1798 }, 1799 dataType: "json", 1800 crossDomain: true, 1801 success: success(thirdPartyCookiesSupported) 1802 }); 1803 }); 1804 } 1805 function success(thirdPartyCookiesSupported) { 1806 return function(data) { 1807 if (!data) { 1808 console.error("Could not load editor data"); 1809 return; 1810 } 1811 data.thirdPartyCookiesSupported = thirdPartyCookiesSupported; 1812 getScript(prefix(data.scriptPath), function() { 1813 window.WebflowEditor(data); 1814 }); 1815 }; 1816 } 1817 function getScript(url, done) { 1818 $2.ajax({ 1819 type: "GET", 1820 url, 1821 dataType: "script", 1822 cache: true 1823 }).then(done, error); 1824 } 1825 function error(jqXHR, textStatus, errorThrown) { 1826 console.error("Could not load editor script: " + textStatus); 1827 throw errorThrown; 1828 } 1829 function prefix(url) { 1830 return url.indexOf("//") >= 0 ? url : cleanSlashes("https://editor-api.webflow.com" + url); 1831 } 1832 function cleanSlashes(url) { 1833 return url.replace(/([^:])\/\//g, "$1/"); 1834 } 1835 function checkThirdPartyCookieSupport(callback) { 1836 var iframe = window.document.createElement("iframe"); 1837 iframe.src = "https://webflow.com/site/third-party-cookie-check.html"; 1838 iframe.style.display = "none"; 1839 iframe.sandbox = "allow-scripts allow-same-origin"; 1840 var handleMessage = function(event) { 1841 if (event.data === "WF_third_party_cookies_unsupported") { 1842 cleanUpCookieCheckerIframe(iframe, handleMessage); 1843 callback(false); 1844 } else if (event.data === "WF_third_party_cookies_supported") { 1845 cleanUpCookieCheckerIframe(iframe, handleMessage); 1846 callback(true); 1847 } 1848 }; 1849 iframe.onerror = function() { 1850 cleanUpCookieCheckerIframe(iframe, handleMessage); 1851 callback(false); 1852 }; 1853 window.addEventListener("message", handleMessage, false); 1854 window.document.body.appendChild(iframe); 1855 } 1856 function cleanUpCookieCheckerIframe(iframe, listener) { 1857 window.removeEventListener("message", listener, false); 1858 iframe.remove(); 1859 } 1860 return api; 1861 }); 1862 function inCypress() { 1863 try { 1864 return window.top.__Cypress__; 1865 } catch (e) { 1866 return false;
1867 } 1868 } 1869 } 1870 }); 1871 1872
vendor: 5,272 bytes, lines 1872-1996
1872// packages/shared/render/plugins/BaseSiteModules/webflow-focus-visible.js 1873 var require_webflow_focus_visible = __commonJS({ 1874 "packages/shared/render/plugins/BaseSiteModules/webflow-focus-visible.js"(exports, module) { 1875 "use strict"; 1876 var Webflow2 = require_webflow_lib(); 1877 Webflow2.define("focus-visible", module.exports = function() { 1878 function applyFocusVisiblePolyfill(scope) { 1879 var hadKeyboardEvent = true; 1880 var hadFocusVisibleRecently = false; 1881 var hadFocusVisibleRecentlyTimeout = null; 1882 var inputTypesAllowlist = { 1883 text: true, 1884 search: true, 1885 url: true, 1886 tel: true, 1887 email: true, 1888 password: true, 1889 number: true, 1890 date: true, 1891 month: true, 1892 week: true, 1893 time: true, 1894 datetime: true, 1895 "datetime-local": true 1896 }; 1897 function isValidFocusTarget(el) { 1898 if (el && el !== document && el.nodeName !== "HTML" && el.nodeName !== "BODY" && "classList" in el && "contains" in el.classList) { 1899 return true; 1900 } 1901 return false; 1902 } 1903 function focusTriggersKeyboardModality(el) { 1904 var type = el.type; 1905 var tagName = el.tagName; 1906 if (tagName === "INPUT" && inputTypesAllowlist[type] && !el.readOnly) { 1907 return true; 1908 } 1909 if (tagName === "TEXTAREA" && !el.readOnly) { 1910 return true; 1911 } 1912 if (el.isContentEditable) { 1913 return true; 1914 } 1915 return false; 1916 } 1917 function addFocusVisibleAttribute(el) { 1918 if (el.getAttribute("data-wf-focus-visible")) { 1919 return; 1920 } 1921 el.setAttribute("data-wf-focus-visible", "true"); 1922 } 1923 function removeFocusVisibleAttribute(el) { 1924 if (!el.getAttribute("data-wf-focus-visible")) { 1925 return; 1926 } 1927 el.removeAttribute("data-wf-focus-visible"); 1928 } 1929 function onKeyDown(e) { 1930 if (e.metaKey || e.altKey || e.ctrlKey) { 1931 return; 1932 } 1933 if (isValidFocusTarget(scope.activeElement)) { 1934 addFocusVisibleAttribute(scope.activeElement); 1935 } 1936 hadKeyboardEvent = true; 1937 } 1938 function onPointerDown() { 1939 hadKeyboardEvent = false; 1940 } 1941 function onFocus(e) { 1942 if (!isValidFocusTarget(e.target)) { 1943 return; 1944 } 1945 if (hadKeyboardEvent || focusTriggersKeyboardModality(e.target)) { 1946 addFocusVisibleAttribute(e.target); 1947 } 1948 } 1949 function onBlur(e) { 1950 if (!isValidFocusTarget(e.target)) { 1951 return; 1952 } 1953 if (e.target.hasAttribute("data-wf-focus-visible")) { 1954 hadFocusVisibleRecently = true; 1955 window.clearTimeout(hadFocusVisibleRecentlyTimeout); 1956 hadFocusVisibleRecentlyTimeout = window.setTimeout(function() { 1957 hadFocusVisibleRecently = false; 1958 }, 100); 1959 removeFocusVisibleAttribute(e.target); 1960 } 1961 } 1962 function onVisibilityChange() { 1963 if (document.visibilityState === "hidden") { 1964 if (hadFocusVisibleRecently) { 1965 hadKeyboardEvent = true; 1966 } 1967 addInitialPointerMoveListeners(); 1968 } 1969 } 1970 function addInitialPointerMoveListeners() { 1971 document.addEventListener("mousemove", onInitialPointerMove); 1972 document.addEventListener("mousedown", onInitialPointerMove); 1973 document.addEventListener("mouseup", onInitialPointerMove); 1974 document.addEventListener("pointermove", onInitialPointerMove); 1975 document.addEventListener("pointerdown", onInitialPointerMove); 1976 document.addEventListener("pointerup", onInitialPointerMove); 1977 document.addEventListener("touchmove", onInitialPointerMove); 1978 document.addEventListener("touchstart", onInitialPointerMove); 1979 document.addEventListener("touchend", onInitialPointerMove); 1980 } 1981 function removeInitialPointerMoveListeners() { 1982 document.removeEventListener("mousemove", onInitialPointerMove); 1983 document.removeEventListener("mousedown", onInitialPointerMove); 1984 document.removeEventListener("mouseup", onInitialPointerMove); 1985 document.removeEventListener("pointermove", onInitialPointerMove); 1986 document.removeEventListener("pointerdown", onInitialPointerMove); 1987 document.removeEventListener("pointerup", onInitialPointerMove); 1988 document.removeEventListener("touchmove", onInitialPointerMove); 1989 document.removeEventListener("touchstart", onInitialPointerMove); 1990 document.removeEventListener("touchend", onInitialPointerMove); 1991 } 1992 function onInitialPointerMove(e) { 1993 if (e.target.nodeName && e.target.nodeName.toLowerCase() === "html") { 1994 return; 1995 } 1996 hadKeyboardEvent = false;
1997 removeInitialPointerMoveListeners(); 1998 } 1999 document.addEventListener("keydown", onKeyDown, true); 2000 document.addEventListener("mousedown", onPointerDown, true); 2001 document.addEventListener("pointerdown", onPointerDown, true); 2002 document.addEventListener("touchstart", onPointerDown, true); 2003 document.addEventListener("visibilitychange", onVisibilityChange, true); 2004 addInitialPointerMoveListeners(); 2005 scope.addEventListener("focus", onFocus, true); 2006 scope.addEventListener("blur", onBlur, true); 2007 } 2008 function ready() { 2009 if (typeof document !== "undefined") { 2010 try { 2011 document.querySelector(":focus-visible"); 2012 } catch (e) { 2013 applyFocusVisiblePolyfill(document); 2014 } 2015 } 2016 } 2017 return { 2018 ready 2019 }; 2020 }); 2021 } 2022 }); 2023 2024
2024// packages/shared/render/plugins/BaseSiteModules/webflow-focus.js 2025 var require_webflow_focus = __commonJS({ 2026 "packages/shared/render/plugins/BaseSiteModules/webflow-focus.js"(exports, module) { 2027 "use strict"; 2028 var Webflow2 = require_webflow_lib(); 2029 Webflow2.define("focus", module.exports = function() { 2030 var capturedEvents = []; 2031 var capturing = false; 2032 function captureEvent(e) { 2033 if (capturing) { 2034 e.preventDefault(); 2035 e.stopPropagation(); 2036 e.stopImmediatePropagation(); 2037 capturedEvents.unshift(e); 2038 } 2039 } 2040 function isPolyfilledFocusEvent(e) { 2041 var el = e.target; 2042 var tag = el.tagName; 2043 return /^a$/i.test(tag) && el.href != null || // (A) 2044 /^(button|textarea)$/i.test(tag) && el.disabled !== true || // (B) (C) 2045 /^input$/i.test(tag) && /^(button|reset|submit|radio|checkbox)$/i.test(el.type) && !el.disabled || // (D) 2046 !/^(button|input|textarea|select|a)$/i.test(tag) && !Number.isNaN(Number.parseFloat(el.tabIndex)) || // (E) 2047 /^audio$/i.test(tag) || // (F) 2048 /^video$/i.test(tag) && el.controls === true; 2049 } 2050 function handler(e) { 2051 if (isPolyfilledFocusEvent(e)) { 2052 capturing = true; 2053 setTimeout(() => { 2054 capturing = false; 2055 e.target.focus(); 2056 while (capturedEvents.length > 0) { 2057 var event = capturedEvents.pop(); 2058 event.target.dispatchEvent(new MouseEvent(event.type, event)); 2059 } 2060 }, 0); 2061 } 2062 } 2063 function ready() { 2064 if (typeof document !== "undefined" && document.body.hasAttribute("data-wf-focus-within") && Webflow2.env.safari) { 2065 document.addEventListener("mousedown", handler, true); 2066 document.addEventListener("mouseup", captureEvent, true); 2067 document.addEventListener("click", captureEvent, true); 2068 } 2069 } 2070 return { 2071 ready 2072 }; 2073 }); 2074 } 2075 }); 2076 2077
2077// packages/shared/render/plugins/BaseSiteModules/webflow-ix-events.js 2078 var require_webflow_ix_events = __commonJS({ 2079 "packages/shared/render/plugins/BaseSiteModules/webflow-ix-events.js"(exports, module) { 2080 "use strict"; 2081 var $2 = window.jQuery; 2082 var api = {}; 2083 var eventQueue = []; 2084 var namespace = ".w-ix"; 2085 var eventTriggers = { 2086 reset: function(i, el) { 2087 el.__wf_intro = null; 2088 }, 2089 intro: function(i, el) { 2090 if (el.__wf_intro) { 2091 return; 2092 } 2093 el.__wf_intro = true; 2094 $2(el).triggerHandler(api.types.INTRO); 2095 }, 2096 outro: function(i, el) { 2097 if (!el.__wf_intro) { 2098 return; 2099 } 2100 el.__wf_intro = null; 2101 $2(el).triggerHandler(api.types.OUTRO); 2102 } 2103 }; 2104 api.triggers = {}; 2105 api.types = { 2106 INTRO: "w-ix-intro" + namespace, 2107 OUTRO: "w-ix-outro" + namespace 2108 }; 2109 api.init = function() { 2110 var count = eventQueue.length; 2111 for (var i = 0; i < count; i++) { 2112 var memo = eventQueue[i]; 2113 memo[0](0, memo[1]); 2114 } 2115 eventQueue = []; 2116 $2.extend(api.triggers, eventTriggers); 2117 }; 2118 api.async = function() { 2119 for (var key in eventTriggers) { 2120 var func = eventTriggers[key]; 2121 if (!eventTriggers.hasOwnProperty(key)) { 2122 continue; 2123 } 2124 api.triggers[key] = function(i, el) { 2125 eventQueue.push([ 2126 func, 2127 el 2128 ]); 2129 }; 2130 } 2131 }; 2132 api.async(); 2133 module.exports = api; 2134 } 2135 }); 2136 2137
2137// packages/shared/render/plugins/BaseSiteModules/webflow-ix2-events.js 2138 var require_webflow_ix2_events = __commonJS({ 2139 "packages/shared/render/plugins/BaseSiteModules/webflow-ix2-events.js"(exports, module) { 2140 "use strict"; 2141 var IXEvents = require_webflow_ix_events(); 2142 function dispatchCustomEvent2(element, eventName) { 2143 var event = document.createEvent("CustomEvent"); 2144 event.initCustomEvent(eventName, true, true, null); 2145 element.dispatchEvent(event); 2146 } 2147 var $2 = window.jQuery; 2148 var api = {}; 2149 var namespace = ".w-ix"; 2150 var eventTriggers = { 2151 reset: function(i, el) { 2152 IXEvents.triggers.reset(i, el); 2153 }, 2154 intro: function(i, el) { 2155 IXEvents.triggers.intro(i, el); 2156 dispatchCustomEvent2(el, "COMPONENT_ACTIVE"); 2157 }, 2158 outro: function(i, el) { 2159 IXEvents.triggers.outro(i, el); 2160 dispatchCustomEvent2(el, "COMPONENT_INACTIVE"); 2161 } 2162 }; 2163 api.triggers = {}; 2164 api.types = { 2165 INTRO: "w-ix-intro" + namespace, 2166 OUTRO: "w-ix-outro" + namespace 2167 }; 2168 $2.extend(api.triggers, eventTriggers); 2169 module.exports = api; 2170 } 2171 }); 2172 2173
vendor: 286 bytes, lines 2173-2181
2173// node_modules/lodash/_freeGlobal.js 2174 var require_freeGlobal = __commonJS({ 2175 "node_modules/lodash/_freeGlobal.js"(exports, module) { 2176 var freeGlobal = typeof global == "object" && global && global.Object === Object && global; 2177 module.exports = freeGlobal; 2178 } 2179 }); 2180 2181
vendor: 367 bytes, lines 2181-2191
2181// node_modules/lodash/_root.js 2182 var require_root = __commonJS({ 2183 "node_modules/lodash/_root.js"(exports, module) { 2184 var freeGlobal = require_freeGlobal(); 2185 var freeSelf = typeof self == "object" && self && self.Object === Object && self; 2186 var root = freeGlobal || freeSelf || Function("return this")(); 2187 module.exports = root; 2188 } 2189 }); 2190 2191
vendor: 239 bytes, lines 2191-2200
2191// node_modules/lodash/_Symbol.js 2192 var require_Symbol = __commonJS({ 2193 "node_modules/lodash/_Symbol.js"(exports, module) { 2194 var root = require_root(); 2195 var Symbol2 = root.Symbol; 2196 module.exports = Symbol2; 2197 } 2198 }); 2199 2200
vendor: 944 bytes, lines 2200-2229
2200// node_modules/lodash/_getRawTag.js 2201 var require_getRawTag = __commonJS({ 2202 "node_modules/lodash/_getRawTag.js"(exports, module) { 2203 var Symbol2 = require_Symbol(); 2204 var objectProto = Object.prototype; 2205 var hasOwnProperty = objectProto.hasOwnProperty; 2206 var nativeObjectToString = objectProto.toString; 2207 var symToStringTag = Symbol2 ? Symbol2.toStringTag : void 0; 2208 function getRawTag(value) { 2209 var isOwn = hasOwnProperty.call(value, symToStringTag), tag = value[symToStringTag]; 2210 try { 2211 value[symToStringTag] = void 0; 2212 var unmasked = true; 2213 } catch (e) { 2214 } 2215 var result = nativeObjectToString.call(value); 2216 if (unmasked) { 2217 if (isOwn) { 2218 value[symToStringTag] = tag; 2219 } else { 2220 delete value[symToStringTag]; 2221 } 2222 } 2223 return result; 2224 } 2225 module.exports = getRawTag; 2226 } 2227 }); 2228 2229
vendor: 397 bytes, lines 2229-2241
2229// node_modules/lodash/_objectToString.js 2230 var require_objectToString = __commonJS({ 2231 "node_modules/lodash/_objectToString.js"(exports, module) { 2232 var objectProto = Object.prototype; 2233 var nativeObjectToString = objectProto.toString; 2234 function objectToString(value) { 2235 return nativeObjectToString.call(value); 2236 } 2237 module.exports = objectToString; 2238 } 2239 }); 2240 2241
vendor: 724 bytes, lines 2241-2260
2241// node_modules/lodash/_baseGetTag.js 2242 var require_baseGetTag = __commonJS({ 2243 "node_modules/lodash/_baseGetTag.js"(exports, module) { 2244 var Symbol2 = require_Symbol(); 2245 var getRawTag = require_getRawTag(); 2246 var objectToString = require_objectToString(); 2247 var nullTag = "[object Null]"; 2248 var undefinedTag = "[object Undefined]"; 2249 var symToStringTag = Symbol2 ? Symbol2.toStringTag : void 0; 2250 function baseGetTag(value) { 2251 if (value == null) { 2252 return value === void 0 ? undefinedTag : nullTag; 2253 } 2254 return symToStringTag && symToStringTag in Object(value) ? getRawTag(value) : objectToString(value); 2255 } 2256 module.exports = baseGetTag; 2257 } 2258 }); 2259 2260
vendor: 307 bytes, lines 2260-2272
2260// node_modules/lodash/_overArg.js 2261 var require_overArg = __commonJS({ 2262 "node_modules/lodash/_overArg.js"(exports, module) { 2263 function overArg(func, transform) { 2264 return function(arg) { 2265 return func(transform(arg)); 2266 }; 2267 } 2268 module.exports = overArg; 2269 } 2270 }); 2271 2272
vendor: 300 bytes, lines 2272-2281
2272// node_modules/lodash/_getPrototype.js 2273 var require_getPrototype = __commonJS({ 2274 "node_modules/lodash/_getPrototype.js"(exports, module) { 2275 var overArg = require_overArg(); 2276 var getPrototype = overArg(Object.getPrototypeOf, Object); 2277 module.exports = getPrototype; 2278 } 2279 }); 2280 2281
vendor: 297 bytes, lines 2281-2291
2281// node_modules/lodash/isObjectLike.js 2282 var require_isObjectLike = __commonJS({ 2283 "node_modules/lodash/isObjectLike.js"(exports, module) { 2284 function isObjectLike(value) { 2285 return value != null && typeof value == "object"; 2286 } 2287 module.exports = isObjectLike; 2288 } 2289 }); 2290 2291
vendor: 1,072 bytes, lines 2291-2318
2291// node_modules/lodash/isPlainObject.js 2292 var require_isPlainObject = __commonJS({ 2293 "node_modules/lodash/isPlainObject.js"(exports, module) { 2294 var baseGetTag = require_baseGetTag(); 2295 var getPrototype = require_getPrototype(); 2296 var isObjectLike = require_isObjectLike(); 2297 var objectTag = "[object Object]"; 2298 var funcProto = Function.prototype; 2299 var objectProto = Object.prototype; 2300 var funcToString = funcProto.toString; 2301 var hasOwnProperty = objectProto.hasOwnProperty; 2302 var objectCtorString = funcToString.call(Object); 2303 function isPlainObject(value) { 2304 if (!isObjectLike(value) || baseGetTag(value) != objectTag) { 2305 return false; 2306 } 2307 var proto = getPrototype(value); 2308 if (proto === null) { 2309 return true; 2310 } 2311 var Ctor = hasOwnProperty.call(proto, "constructor") && proto.constructor; 2312 return typeof Ctor == "function" && Ctor instanceof Ctor && funcToString.call(Ctor) == objectCtorString; 2313 } 2314 module.exports = isPlainObject; 2315 } 2316 }); 2317 2318
vendor: 795 bytes, lines 2318-2344
2318// node_modules/redux/node_modules/symbol-observable/lib/ponyfill.js 2319 var require_ponyfill = __commonJS({ 2320 "node_modules/redux/node_modules/symbol-observable/lib/ponyfill.js"(exports) { 2321 "use strict"; 2322 Object.defineProperty(exports, "__esModule", { 2323 value: true 2324 }); 2325 exports["default"] = symbolObservablePonyfill; 2326 function symbolObservablePonyfill(root) { 2327 var result; 2328 var _Symbol = root.Symbol; 2329 if (typeof _Symbol === "function") { 2330 if (_Symbol.observable) { 2331 result = _Symbol.observable; 2332 } else { 2333 result = _Symbol("observable"); 2334 _Symbol.observable = result; 2335 } 2336 } else { 2337 result = "@@observable"; 2338 } 2339 return result; 2340 } 2341 } 2342 }); 2343 2344
vendor: 973 bytes, lines 2344-2373
2344// node_modules/redux/node_modules/symbol-observable/lib/index.js 2345 var require_lib = __commonJS({ 2346 "node_modules/redux/node_modules/symbol-observable/lib/index.js"(exports, module) { 2347 "use strict"; 2348 Object.defineProperty(exports, "__esModule", { 2349 value: true 2350 }); 2351 var _ponyfill = require_ponyfill(); 2352 var _ponyfill2 = _interopRequireDefault(_ponyfill); 2353 function _interopRequireDefault(obj) { 2354 return obj && obj.__esModule ? obj : { "default": obj }; 2355 } 2356 var root; 2357 if (typeof self !== "undefined") { 2358 root = self; 2359 } else if (typeof window !== "undefined") { 2360 root = window; 2361 } else if (typeof global !== "undefined") { 2362 root = global; 2363 } else if (typeof module !== "undefined") { 2364 root = module; 2365 } else { 2366 root = Function("return this")(); 2367 } 2368 var result = (0, _ponyfill2["default"])(root); 2369 exports["default"] = result; 2370 } 2371 }); 2372 2373
vendor: 4,995 bytes, lines 2373-2504
2373// node_modules/redux/lib/createStore.js 2374 var require_createStore = __commonJS({ 2375 "node_modules/redux/lib/createStore.js"(exports) { 2376 "use strict"; 2377 exports.__esModule = true; 2378 exports.ActionTypes = void 0; 2379 exports["default"] = createStore; 2380 var _isPlainObject = require_isPlainObject(); 2381 var _isPlainObject2 = _interopRequireDefault(_isPlainObject); 2382 var _symbolObservable = require_lib(); 2383 var _symbolObservable2 = _interopRequireDefault(_symbolObservable); 2384 function _interopRequireDefault(obj) { 2385 return obj && obj.__esModule ? obj : { "default": obj }; 2386 } 2387 var ActionTypes = exports.ActionTypes = { 2388 INIT: "@@redux/INIT" 2389 }; 2390 function createStore(reducer, preloadedState, enhancer) { 2391 var _ref2; 2392 if (typeof preloadedState === "function" && typeof enhancer === "undefined") { 2393 enhancer = preloadedState; 2394 preloadedState = void 0; 2395 } 2396 if (typeof enhancer !== "undefined") { 2397 if (typeof enhancer !== "function") { 2398 throw new Error("Expected the enhancer to be a function."); 2399 } 2400 return enhancer(createStore)(reducer, preloadedState); 2401 } 2402 if (typeof reducer !== "function") { 2403 throw new Error("Expected the reducer to be a function."); 2404 } 2405 var currentReducer = reducer; 2406 var currentState = preloadedState; 2407 var currentListeners = []; 2408 var nextListeners = currentListeners; 2409 var isDispatching = false; 2410 function ensureCanMutateNextListeners() { 2411 if (nextListeners === currentListeners) { 2412 nextListeners = currentListeners.slice(); 2413 } 2414 } 2415 function getState() { 2416 return currentState; 2417 } 2418 function subscribe(listener) { 2419 if (typeof listener !== "function") { 2420 throw new Error("Expected listener to be a function."); 2421 } 2422 var isSubscribed = true; 2423 ensureCanMutateNextListeners(); 2424 nextListeners.push(listener); 2425 return function unsubscribe() { 2426 if (!isSubscribed) { 2427 return; 2428 } 2429 isSubscribed = false; 2430 ensureCanMutateNextListeners(); 2431 var index = nextListeners.indexOf(listener); 2432 nextListeners.splice(index, 1); 2433 }; 2434 } 2435 function dispatch(action) { 2436 if (!(0, _isPlainObject2["default"])(action)) { 2437 throw new Error("Actions must be plain objects. Use custom middleware for async actions."); 2438 } 2439 if (typeof action.type === "undefined") { 2440 throw new Error('Actions may not have an undefined "type" property. Have you misspelled a constant?'); 2441 } 2442 if (isDispatching) { 2443 throw new Error("Reducers may not dispatch actions."); 2444 } 2445 try { 2446 isDispatching = true; 2447 currentState = currentReducer(currentState, action); 2448 } finally { 2449 isDispatching = false; 2450 } 2451 var listeners = currentListeners = nextListeners; 2452 for (var i = 0; i < listeners.length; i++) { 2453 listeners[i](); 2454 } 2455 return action; 2456 } 2457 function replaceReducer(nextReducer) { 2458 if (typeof nextReducer !== "function") { 2459 throw new Error("Expected the nextReducer to be a function."); 2460 } 2461 currentReducer = nextReducer; 2462 dispatch({ type: ActionTypes.INIT }); 2463 } 2464 function observable() { 2465 var _ref; 2466 var outerSubscribe = subscribe; 2467 return _ref = { 2468 /** 2469 * The minimal observable subscription method. 2470 * @param {Object} observer Any object that can be used as an observer. 2471 * The observer object should have a `next` method. 2472 * @returns {subscription} An object with an `unsubscribe` method that can 2473 * be used to unsubscribe the observable from the store, and prevent further 2474 * emission of values from the observable. 2475 */ 2476 subscribe: function subscribe2(observer) { 2477 if (typeof observer !== "object") { 2478 throw new TypeError("Expected the observer to be an object."); 2479 } 2480 function observeState() { 2481 if (observer.next) { 2482 observer.next(getState()); 2483 } 2484 } 2485 observeState(); 2486 var unsubscribe = outerSubscribe(observeState); 2487 return { unsubscribe }; 2488 } 2489 }, _ref[_symbolObservable2["default"]] = function() { 2490 return this; 2491 }, _ref; 2492 } 2493 dispatch({ type: ActionTypes.INIT }); 2494 return _ref2 = { 2495 dispatch, 2496 subscribe, 2497 getState, 2498 replaceReducer 2499 }, _ref2[_symbolObservable2["default"]] = observable, _ref2; 2500 } 2501 } 2502 }); 2503 2504
vendor: 494 bytes, lines 2504-2522
2504// node_modules/redux/lib/utils/warning.js 2505 var require_warning = __commonJS({ 2506 "node_modules/redux/lib/utils/warning.js"(exports) { 2507 "use strict"; 2508 exports.__esModule = true; 2509 exports["default"] = warning; 2510 function warning(message) { 2511 if (typeof console !== "undefined" && typeof console.error === "function") { 2512 console.error(message); 2513 } 2514 try { 2515 throw new Error(message); 2516 } catch (e) { 2517 } 2518 } 2519 } 2520 }); 2521 2522
vendor: 4,258 bytes, lines 2522-2610
2522// node_modules/redux/lib/combineReducers.js 2523 var require_combineReducers = __commonJS({ 2524 "node_modules/redux/lib/combineReducers.js"(exports) { 2525 "use strict"; 2526 exports.__esModule = true; 2527 exports["default"] = combineReducers2; 2528 var _createStore = require_createStore(); 2529 var _isPlainObject = require_isPlainObject(); 2530 var _isPlainObject2 = _interopRequireDefault(_isPlainObject); 2531 var _warning = require_warning(); 2532 var _warning2 = _interopRequireDefault(_warning); 2533 function _interopRequireDefault(obj) { 2534 return obj && obj.__esModule ? obj : { "default": obj }; 2535 } 2536 function getUndefinedStateErrorMessage(key, action) { 2537 var actionType = action && action.type; 2538 var actionName = actionType && '"' + actionType.toString() + '"' || "an action"; 2539 return "Given action " + actionName + ', reducer "' + key + '" returned undefined. To ignore an action, you must explicitly return the previous state.'; 2540 } 2541 function assertReducerSanity(reducers) { 2542 Object.keys(reducers).forEach(function(key) { 2543 var reducer = reducers[key]; 2544 var initialState4 = reducer(void 0, { type: _createStore.ActionTypes.INIT }); 2545 if (typeof initialState4 === "undefined") { 2546 throw new Error('Reducer "' + key + '" returned undefined during initialization. If the state passed to the reducer is undefined, you must explicitly return the initial state. The initial state may not be undefined.'); 2547 } 2548 var type = "@@redux/PROBE_UNKNOWN_ACTION_" + Math.random().toString(36).substring(7).split("").join("."); 2549 if (typeof reducer(void 0, { type }) === "undefined") { 2550 throw new Error('Reducer "' + key + '" returned undefined when probed with a random type. ' + ("Don't try to handle " + _createStore.ActionTypes.INIT + ' or other actions in "redux/*" ') + "namespace. They are considered private. Instead, you must return the current state for any unknown actions, unless it is undefined, in which case you must return the initial state, regardless of the action type. The initial state may not be undefined."); 2551 } 2552 }); 2553 } 2554 function combineReducers2(reducers) { 2555 var reducerKeys = Object.keys(reducers); 2556 var finalReducers = {}; 2557 for (var i = 0; i < reducerKeys.length; i++) { 2558 var key = reducerKeys[i]; 2559 if (false) { 2560 if (typeof reducers[key] === "undefined") { 2561 (0, _warning2["default"])('No reducer provided for key "' + key + '"'); 2562 } 2563 } 2564 if (typeof reducers[key] === "function") { 2565 finalReducers[key] = reducers[key]; 2566 } 2567 } 2568 var finalReducerKeys = Object.keys(finalReducers); 2569 if (false) { 2570 var unexpectedKeyCache = {}; 2571 } 2572 var sanityError; 2573 try { 2574 assertReducerSanity(finalReducers); 2575 } catch (e) { 2576 sanityError = e; 2577 } 2578 return function combination() { 2579 var state = arguments.length <= 0 || arguments[0] === void 0 ? {} : arguments[0]; 2580 var action = arguments[1]; 2581 if (sanityError) { 2582 throw sanityError; 2583 } 2584 if (false) { 2585 var warningMessage = getUnexpectedStateShapeWarningMessage(state, finalReducers, action, unexpectedKeyCache); 2586 if (warningMessage) { 2587 (0, _warning2["default"])(warningMessage); 2588 } 2589 } 2590 var hasChanged = false; 2591 var nextState = {}; 2592 for (var i2 = 0; i2 < finalReducerKeys.length; i2++) { 2593 var key2 = finalReducerKeys[i2]; 2594 var reducer = finalReducers[key2]; 2595 var previousStateForKey = state[key2]; 2596 var nextStateForKey = reducer(previousStateForKey, action); 2597 if (typeof nextStateForKey === "undefined") { 2598 var errorMessage = getUndefinedStateErrorMessage(key2, action); 2599 throw new Error(errorMessage); 2600 } 2601 nextState[key2] = nextStateForKey; 2602 hasChanged = hasChanged || nextStateForKey !== previousStateForKey; 2603 } 2604 return hasChanged ? nextState : state; 2605 }; 2606 } 2607 } 2608 }); 2609 2610
vendor: 1,393 bytes, lines 2610-2642
2610// node_modules/redux/lib/bindActionCreators.js 2611 var require_bindActionCreators = __commonJS({ 2612 "node_modules/redux/lib/bindActionCreators.js"(exports) { 2613 "use strict"; 2614 exports.__esModule = true; 2615 exports["default"] = bindActionCreators; 2616 function bindActionCreator(actionCreator, dispatch) { 2617 return function() { 2618 return dispatch(actionCreator.apply(void 0, arguments)); 2619 }; 2620 } 2621 function bindActionCreators(actionCreators, dispatch) { 2622 if (typeof actionCreators === "function") { 2623 return bindActionCreator(actionCreators, dispatch); 2624 } 2625 if (typeof actionCreators !== "object" || actionCreators === null) { 2626 throw new Error("bindActionCreators expected an object or a function, instead received " + (actionCreators === null ? "null" : typeof actionCreators) + '. Did you write "import ActionCreators from" instead of "import * as ActionCreators from"?'); 2627 } 2628 var keys = Object.keys(actionCreators); 2629 var boundActionCreators = {}; 2630 for (var i = 0; i < keys.length; i++) { 2631 var key = keys[i]; 2632 var actionCreator = actionCreators[key]; 2633 if (typeof actionCreator === "function") { 2634 boundActionCreators[key] = bindActionCreator(actionCreator, dispatch); 2635 } 2636 } 2637 return boundActionCreators; 2638 } 2639 } 2640 }); 2641 2642
vendor: 853 bytes, lines 2642-2671
2642// node_modules/redux/lib/compose.js 2643 var require_compose = __commonJS({ 2644 "node_modules/redux/lib/compose.js"(exports) { 2645 "use strict"; 2646 exports.__esModule = true; 2647 exports["default"] = compose; 2648 function compose() { 2649 for (var _len = arguments.length, funcs = Array(_len), _key = 0; _key < _len; _key++) { 2650 funcs[_key] = arguments[_key]; 2651 } 2652 if (funcs.length === 0) { 2653 return function(arg) { 2654 return arg; 2655 }; 2656 } 2657 if (funcs.length === 1) { 2658 return funcs[0]; 2659 } 2660 var last = funcs[funcs.length - 1]; 2661 var rest = funcs.slice(0, -1); 2662 return function() { 2663 return rest.reduceRight(function(composed, f) { 2664 return f(composed); 2665 }, last.apply(void 0, arguments)); 2666 }; 2667 } 2668 } 2669 }); 2670 2671
vendor: 1,804 bytes, lines 2671-2721
2671// node_modules/redux/lib/applyMiddleware.js 2672 var require_applyMiddleware = __commonJS({ 2673 "node_modules/redux/lib/applyMiddleware.js"(exports) { 2674 "use strict"; 2675 exports.__esModule = true; 2676 var _extends = Object.assign || function(target) { 2677 for (var i = 1; i < arguments.length; i++) { 2678 var source = arguments[i]; 2679 for (var key in source) { 2680 if (Object.prototype.hasOwnProperty.call(source, key)) { 2681 target[key] = source[key]; 2682 } 2683 } 2684 } 2685 return target; 2686 }; 2687 exports["default"] = applyMiddleware; 2688 var _compose = require_compose(); 2689 var _compose2 = _interopRequireDefault(_compose); 2690 function _interopRequireDefault(obj) { 2691 return obj && obj.__esModule ? obj : { "default": obj }; 2692 } 2693 function applyMiddleware() { 2694 for (var _len = arguments.length, middlewares = Array(_len), _key = 0; _key < _len; _key++) { 2695 middlewares[_key] = arguments[_key]; 2696 } 2697 return function(createStore) { 2698 return function(reducer, preloadedState, enhancer) { 2699 var store = createStore(reducer, preloadedState, enhancer); 2700 var _dispatch = store.dispatch; 2701 var chain = []; 2702 var middlewareAPI = { 2703 getState: store.getState, 2704 dispatch: function dispatch(action) { 2705 return _dispatch(action); 2706 } 2707 }; 2708 chain = middlewares.map(function(middleware) { 2709 return middleware(middlewareAPI); 2710 }); 2711 _dispatch = _compose2["default"].apply(void 0, chain)(store.dispatch); 2712 return _extends({}, store, { 2713 dispatch: _dispatch 2714 }); 2715 }; 2716 }; 2717 } 2718 } 2719 }); 2720 2721
vendor: 1,860 bytes, lines 2721-2753
2721// node_modules/redux/lib/index.js 2722 var require_lib2 = __commonJS({ 2723 "node_modules/redux/lib/index.js"(exports) { 2724 "use strict"; 2725 exports.__esModule = true; 2726 exports.compose = exports.applyMiddleware = exports.bindActionCreators = exports.combineReducers = exports.createStore = void 0; 2727 var _createStore = require_createStore(); 2728 var _createStore2 = _interopRequireDefault(_createStore); 2729 var _combineReducers = require_combineReducers(); 2730 var _combineReducers2 = _interopRequireDefault(_combineReducers); 2731 var _bindActionCreators = require_bindActionCreators(); 2732 var _bindActionCreators2 = _interopRequireDefault(_bindActionCreators); 2733 var _applyMiddleware = require_applyMiddleware(); 2734 var _applyMiddleware2 = _interopRequireDefault(_applyMiddleware); 2735 var _compose = require_compose(); 2736 var _compose2 = _interopRequireDefault(_compose); 2737 var _warning = require_warning(); 2738 var _warning2 = _interopRequireDefault(_warning); 2739 function _interopRequireDefault(obj) { 2740 return obj && obj.__esModule ? obj : { "default": obj }; 2741 } 2742 if (false) { 2743 (0, _warning2["default"])("You are currently using minified code outside of NODE_ENV === 'production'. This means that you are running a slower development build of Redux. You can use loose-envify (https://github.com/zertosh/loose-envify) for browserify or DefinePlugin for webpack (http://stackoverflow.com/questions/30030031) to ensure you have the correct code for your production build."); 2744 } 2745 exports.createStore = _createStore2["default"]; 2746 exports.combineReducers = _combineReducers2["default"]; 2747 exports.bindActionCreators = _bindActionCreators2["default"]; 2748 exports.applyMiddleware = _applyMiddleware2["default"]; 2749 exports.compose = _compose2["default"]; 2750 } 2751 }); 2752 2753
2753// packages/systems/ix2/shared-constants/trigger-events.ts 2754 var EventTypeConsts, EventAppliesTo, EventBasedOn, EventContinuousMouseAxes, EventLimitAffectedElements, QuickEffectIds, QuickEffectDirectionConsts; 2755 var init_trigger_events = __esm({ 2756 "packages/systems/ix2/shared-constants/trigger-events.ts"() { 2757 "use strict"; 2758 EventTypeConsts = { 2759 NAVBAR_OPEN: "NAVBAR_OPEN", 2760 NAVBAR_CLOSE: "NAVBAR_CLOSE", 2761 TAB_ACTIVE: "TAB_ACTIVE", 2762 TAB_INACTIVE: "TAB_INACTIVE", 2763 SLIDER_ACTIVE: "SLIDER_ACTIVE", 2764 SLIDER_INACTIVE: "SLIDER_INACTIVE", 2765 DROPDOWN_OPEN: "DROPDOWN_OPEN", 2766 DROPDOWN_CLOSE: "DROPDOWN_CLOSE", 2767 MOUSE_CLICK: "MOUSE_CLICK", 2768 MOUSE_SECOND_CLICK: "MOUSE_SECOND_CLICK", 2769 MOUSE_DOWN: "MOUSE_DOWN", 2770 MOUSE_UP: "MOUSE_UP", 2771 MOUSE_OVER: "MOUSE_OVER", 2772 MOUSE_OUT: "MOUSE_OUT", 2773 MOUSE_MOVE: "MOUSE_MOVE", 2774 MOUSE_MOVE_IN_VIEWPORT: "MOUSE_MOVE_IN_VIEWPORT", 2775 SCROLL_INTO_VIEW: "SCROLL_INTO_VIEW", 2776 SCROLL_OUT_OF_VIEW: "SCROLL_OUT_OF_VIEW", 2777 SCROLLING_IN_VIEW: "SCROLLING_IN_VIEW", 2778 ECOMMERCE_CART_OPEN: "ECOMMERCE_CART_OPEN", 2779 ECOMMERCE_CART_CLOSE: "ECOMMERCE_CART_CLOSE", 2780 PAGE_START: "PAGE_START", 2781 PAGE_FINISH: "PAGE_FINISH", 2782 PAGE_SCROLL_UP: "PAGE_SCROLL_UP", 2783 PAGE_SCROLL_DOWN: "PAGE_SCROLL_DOWN", 2784 PAGE_SCROLL: "PAGE_SCROLL" 2785 }; 2786 EventAppliesTo = { 2787 ELEMENT: "ELEMENT", 2788 CLASS: "CLASS", 2789 PAGE: "PAGE" 2790 }; 2791 EventBasedOn = { 2792 ELEMENT: "ELEMENT", 2793 VIEWPORT: "VIEWPORT" 2794 }; 2795 EventContinuousMouseAxes = { 2796 X_AXIS: "X_AXIS", 2797 Y_AXIS: "Y_AXIS" 2798 }; 2799 EventLimitAffectedElements = { 2800 CHILDREN: "CHILDREN", 2801 SIBLINGS: "SIBLINGS", 2802 IMMEDIATE_CHILDREN: "IMMEDIATE_CHILDREN" 2803 }; 2804 QuickEffectIds = { 2805 FADE_EFFECT: "FADE_EFFECT", 2806 SLIDE_EFFECT: "SLIDE_EFFECT", 2807 GROW_EFFECT: "GROW_EFFECT", 2808 SHRINK_EFFECT: "SHRINK_EFFECT", 2809 SPIN_EFFECT: "SPIN_EFFECT", 2810 FLY_EFFECT: "FLY_EFFECT", 2811 POP_EFFECT: "POP_EFFECT", 2812 FLIP_EFFECT: "FLIP_EFFECT", 2813 JIGGLE_EFFECT: "JIGGLE_EFFECT", 2814 PULSE_EFFECT: "PULSE_EFFECT", 2815 DROP_EFFECT: "DROP_EFFECT", 2816 BLINK_EFFECT: "BLINK_EFFECT", 2817 BOUNCE_EFFECT: "BOUNCE_EFFECT", 2818 FLIP_LEFT_TO_RIGHT_EFFECT: "FLIP_LEFT_TO_RIGHT_EFFECT", 2819 FLIP_RIGHT_TO_LEFT_EFFECT: "FLIP_RIGHT_TO_LEFT_EFFECT", 2820 RUBBER_BAND_EFFECT: "RUBBER_BAND_EFFECT", 2821 JELLO_EFFECT: "JELLO_EFFECT", 2822 GROW_BIG_EFFECT: "GROW_BIG_EFFECT", 2823 SHRINK_BIG_EFFECT: "SHRINK_BIG_EFFECT", 2824 PLUGIN_LOTTIE_EFFECT: "PLUGIN_LOTTIE_EFFECT" 2825 }; 2826 QuickEffectDirectionConsts = { 2827 LEFT: "LEFT", 2828 RIGHT: "RIGHT", 2829 BOTTOM: "BOTTOM", 2830 TOP: "TOP", 2831 BOTTOM_LEFT: "BOTTOM_LEFT", 2832 BOTTOM_RIGHT: "BOTTOM_RIGHT", 2833 TOP_RIGHT: "TOP_RIGHT", 2834 TOP_LEFT: "TOP_LEFT", 2835 CLOCKWISE: "CLOCKWISE", 2836 COUNTER_CLOCKWISE: "COUNTER_CLOCKWISE" 2837 }; 2838 } 2839 }); 2840 2841
2841// packages/systems/ix2/shared-constants/animation-actions.ts 2842 var ActionTypeConsts, ActionAppliesTo; 2843 var init_animation_actions = __esm({ 2844 "packages/systems/ix2/shared-constants/animation-actions.ts"() { 2845 "use strict"; 2846 ActionTypeConsts = { 2847 TRANSFORM_MOVE: "TRANSFORM_MOVE", 2848 TRANSFORM_SCALE: "TRANSFORM_SCALE", 2849 TRANSFORM_ROTATE: "TRANSFORM_ROTATE", 2850 TRANSFORM_SKEW: "TRANSFORM_SKEW", 2851 STYLE_OPACITY: "STYLE_OPACITY", 2852 STYLE_SIZE: "STYLE_SIZE", 2853 STYLE_FILTER: "STYLE_FILTER", 2854 STYLE_FONT_VARIATION: "STYLE_FONT_VARIATION", 2855 STYLE_BACKGROUND_COLOR: "STYLE_BACKGROUND_COLOR", 2856 STYLE_BORDER: "STYLE_BORDER", 2857 STYLE_TEXT_COLOR: "STYLE_TEXT_COLOR", 2858 OBJECT_VALUE: "OBJECT_VALUE", 2859 PLUGIN_LOTTIE: "PLUGIN_LOTTIE", 2860 PLUGIN_SPLINE: "PLUGIN_SPLINE", 2861 PLUGIN_VARIABLE: "PLUGIN_VARIABLE", 2862 GENERAL_DISPLAY: "GENERAL_DISPLAY", 2863 GENERAL_START_ACTION: "GENERAL_START_ACTION", 2864 GENERAL_CONTINUOUS_ACTION: "GENERAL_CONTINUOUS_ACTION", 2865 // TODO: Clean these up below because they're not used at this time 2866 GENERAL_COMBO_CLASS: "GENERAL_COMBO_CLASS", 2867 GENERAL_STOP_ACTION: "GENERAL_STOP_ACTION", 2868 GENERAL_LOOP: "GENERAL_LOOP", 2869 STYLE_BOX_SHADOW: "STYLE_BOX_SHADOW" 2870 }; 2871 ActionAppliesTo = { 2872 ELEMENT: "ELEMENT", 2873 ELEMENT_CLASS: "ELEMENT_CLASS", 2874 TRIGGER_ELEMENT: "TRIGGER_ELEMENT" 2875 }; 2876 } 2877 }); 2878 2879
2879// packages/systems/ix2/shared-constants/trigger-interactions.ts 2880 var InteractionTypeConsts; 2881 var init_trigger_interactions = __esm({ 2882 "packages/systems/ix2/shared-constants/trigger-interactions.ts"() { 2883 "use strict"; 2884 InteractionTypeConsts = { 2885 MOUSE_CLICK_INTERACTION: "MOUSE_CLICK_INTERACTION", 2886 MOUSE_HOVER_INTERACTION: "MOUSE_HOVER_INTERACTION", 2887 MOUSE_MOVE_INTERACTION: "MOUSE_MOVE_INTERACTION", 2888 SCROLL_INTO_VIEW_INTERACTION: "SCROLL_INTO_VIEW_INTERACTION", 2889 SCROLLING_IN_VIEW_INTERACTION: "SCROLLING_IN_VIEW_INTERACTION", 2890 MOUSE_MOVE_IN_VIEWPORT_INTERACTION: "MOUSE_MOVE_IN_VIEWPORT_INTERACTION", 2891 PAGE_IS_SCROLLING_INTERACTION: "PAGE_IS_SCROLLING_INTERACTION", 2892 PAGE_LOAD_INTERACTION: "PAGE_LOAD_INTERACTION", 2893 PAGE_SCROLLED_INTERACTION: "PAGE_SCROLLED_INTERACTION", 2894 NAVBAR_INTERACTION: "NAVBAR_INTERACTION", 2895 DROPDOWN_INTERACTION: "DROPDOWN_INTERACTION", 2896 ECOMMERCE_CART_INTERACTION: "ECOMMERCE_CART_INTERACTION", 2897 TAB_INTERACTION: "TAB_INTERACTION", 2898 SLIDER_INTERACTION: "SLIDER_INTERACTION" 2899 }; 2900 } 2901 }); 2902 2903
2903// packages/systems/ix2/shared-constants/reduced-motion.ts 2904 var TRANSFORM_MOVE, TRANSFORM_SCALE, TRANSFORM_ROTATE, TRANSFORM_SKEW, STYLE_SIZE, STYLE_FILTER, STYLE_FONT_VARIATION, ReducedMotionTypes; 2905 var init_reduced_motion = __esm({ 2906 "packages/systems/ix2/shared-constants/reduced-motion.ts"() { 2907 "use strict"; 2908 init_animation_actions(); 2909 ({ 2910 TRANSFORM_MOVE, 2911 TRANSFORM_SCALE, 2912 TRANSFORM_ROTATE, 2913 TRANSFORM_SKEW, 2914 STYLE_SIZE, 2915 STYLE_FILTER, 2916 STYLE_FONT_VARIATION 2917 } = ActionTypeConsts); 2918 ReducedMotionTypes = { 2919 [TRANSFORM_MOVE]: true, 2920 [TRANSFORM_SCALE]: true, 2921 [TRANSFORM_ROTATE]: true, 2922 [TRANSFORM_SKEW]: true, 2923 [STYLE_SIZE]: true, 2924 [STYLE_FILTER]: true, 2925 [STYLE_FONT_VARIATION]: true 2926 }; 2927 } 2928 }); 2929 2930
2930// packages/systems/ix2/shared-constants/IX2EngineActionTypes.ts 2931 var IX2EngineActionTypes_exports = {}; 2932 __export(IX2EngineActionTypes_exports, { 2933 IX2_ACTION_LIST_PLAYBACK_CHANGED: () => IX2_ACTION_LIST_PLAYBACK_CHANGED, 2934 IX2_ANIMATION_FRAME_CHANGED: () => IX2_ANIMATION_FRAME_CHANGED, 2935 IX2_CLEAR_REQUESTED: () => IX2_CLEAR_REQUESTED, 2936 IX2_ELEMENT_STATE_CHANGED: () => IX2_ELEMENT_STATE_CHANGED, 2937 IX2_EVENT_LISTENER_ADDED: () => IX2_EVENT_LISTENER_ADDED, 2938 IX2_EVENT_STATE_CHANGED: () => IX2_EVENT_STATE_CHANGED, 2939 IX2_INSTANCE_ADDED: () => IX2_INSTANCE_ADDED, 2940 IX2_INSTANCE_REMOVED: () => IX2_INSTANCE_REMOVED, 2941 IX2_INSTANCE_STARTED: () => IX2_INSTANCE_STARTED, 2942 IX2_MEDIA_QUERIES_DEFINED: () => IX2_MEDIA_QUERIES_DEFINED, 2943 IX2_PARAMETER_CHANGED: () => IX2_PARAMETER_CHANGED, 2944 IX2_PLAYBACK_REQUESTED: () => IX2_PLAYBACK_REQUESTED, 2945 IX2_PREVIEW_REQUESTED: () => IX2_PREVIEW_REQUESTED, 2946 IX2_RAW_DATA_IMPORTED: () => IX2_RAW_DATA_IMPORTED, 2947 IX2_SESSION_INITIALIZED: () => IX2_SESSION_INITIALIZED, 2948 IX2_SESSION_STARTED: () => IX2_SESSION_STARTED, 2949 IX2_SESSION_STOPPED: () => IX2_SESSION_STOPPED, 2950 IX2_STOP_REQUESTED: () => IX2_STOP_REQUESTED, 2951 IX2_TEST_FRAME_RENDERED: () => IX2_TEST_FRAME_RENDERED, 2952 IX2_VIEWPORT_WIDTH_CHANGED: () => IX2_VIEWPORT_WIDTH_CHANGED 2953 }); 2954 var IX2_RAW_DATA_IMPORTED, IX2_SESSION_INITIALIZED, IX2_SESSION_STARTED, IX2_SESSION_STOPPED, IX2_PREVIEW_REQUESTED, IX2_PLAYBACK_REQUESTED, IX2_STOP_REQUESTED, IX2_CLEAR_REQUESTED, IX2_EVENT_LISTENER_ADDED, IX2_EVENT_STATE_CHANGED, IX2_ANIMATION_FRAME_CHANGED, IX2_PARAMETER_CHANGED, IX2_INSTANCE_ADDED, IX2_INSTANCE_STARTED, IX2_INSTANCE_REMOVED, IX2_ELEMENT_STATE_CHANGED, IX2_ACTION_LIST_PLAYBACK_CHANGED, IX2_VIEWPORT_WIDTH_CHANGED, IX2_MEDIA_QUERIES_DEFINED, IX2_TEST_FRAME_RENDERED; 2955 var init_IX2EngineActionTypes = __esm({ 2956 "packages/systems/ix2/shared-constants/IX2EngineActionTypes.ts"() { 2957 "use strict"; 2958 IX2_RAW_DATA_IMPORTED = "IX2_RAW_DATA_IMPORTED"; 2959 IX2_SESSION_INITIALIZED = "IX2_SESSION_INITIALIZED"; 2960 IX2_SESSION_STARTED = "IX2_SESSION_STARTED"; 2961 IX2_SESSION_STOPPED = "IX2_SESSION_STOPPED"; 2962 IX2_PREVIEW_REQUESTED = "IX2_PREVIEW_REQUESTED"; 2963 IX2_PLAYBACK_REQUESTED = "IX2_PLAYBACK_REQUESTED"; 2964 IX2_STOP_REQUESTED = "IX2_STOP_REQUESTED"; 2965 IX2_CLEAR_REQUESTED = "IX2_CLEAR_REQUESTED"; 2966 IX2_EVENT_LISTENER_ADDED = "IX2_EVENT_LISTENER_ADDED"; 2967 IX2_EVENT_STATE_CHANGED = "IX2_EVENT_STATE_CHANGED"; 2968 IX2_ANIMATION_FRAME_CHANGED = "IX2_ANIMATION_FRAME_CHANGED"; 2969 IX2_PARAMETER_CHANGED = "IX2_PARAMETER_CHANGED"; 2970 IX2_INSTANCE_ADDED = "IX2_INSTANCE_ADDED"; 2971 IX2_INSTANCE_STARTED = "IX2_INSTANCE_STARTED"; 2972 IX2_INSTANCE_REMOVED = "IX2_INSTANCE_REMOVED"; 2973 IX2_ELEMENT_STATE_CHANGED = "IX2_ELEMENT_STATE_CHANGED"; 2974 IX2_ACTION_LIST_PLAYBACK_CHANGED = "IX2_ACTION_LIST_PLAYBACK_CHANGED"; 2975 IX2_VIEWPORT_WIDTH_CHANGED = "IX2_VIEWPORT_WIDTH_CHANGED"; 2976 IX2_MEDIA_QUERIES_DEFINED = "IX2_MEDIA_QUERIES_DEFINED"; 2977 IX2_TEST_FRAME_RENDERED = "IX2_TEST_FRAME_RENDERED"; 2978 } 2979 }); 2980 2981
2981// packages/systems/ix2/shared-constants/IX2EngineConstants.ts 2982 var IX2EngineConstants_exports = {}; 2983 __export(IX2EngineConstants_exports, { 2984 ABSTRACT_NODE: () => ABSTRACT_NODE, 2985 AUTO: () => AUTO, 2986 BACKGROUND: () => BACKGROUND, 2987 BACKGROUND_COLOR: () => BACKGROUND_COLOR, 2988 BAR_DELIMITER: () => BAR_DELIMITER, 2989 BORDER_COLOR: () => BORDER_COLOR, 2990 BOUNDARY_SELECTOR: () => BOUNDARY_SELECTOR, 2991 CHILDREN: () => CHILDREN, 2992 COLON_DELIMITER: () => COLON_DELIMITER, 2993 COLOR: () => COLOR, 2994 COMMA_DELIMITER: () => COMMA_DELIMITER, 2995 CONFIG_UNIT: () => CONFIG_UNIT, 2996 CONFIG_VALUE: () => CONFIG_VALUE, 2997 CONFIG_X_UNIT: () => CONFIG_X_UNIT, 2998 CONFIG_X_VALUE: () => CONFIG_X_VALUE, 2999 CONFIG_Y_UNIT: () => CONFIG_Y_UNIT, 3000 CONFIG_Y_VALUE: () => CONFIG_Y_VALUE, 3001 CONFIG_Z_UNIT: () => CONFIG_Z_UNIT, 3002 CONFIG_Z_VALUE: () => CONFIG_Z_VALUE, 3003 DISPLAY: () => DISPLAY, 3004 FILTER: () => FILTER, 3005 FLEX: () => FLEX, 3006 FONT_VARIATION_SETTINGS: () => FONT_VARIATION_SETTINGS, 3007 HEIGHT: () => HEIGHT, 3008 HTML_ELEMENT: () => HTML_ELEMENT, 3009 IMMEDIATE_CHILDREN: () => IMMEDIATE_CHILDREN, 3010 IX2_ID_DELIMITER: () => IX2_ID_DELIMITER, 3011 OPACITY: () => OPACITY, 3012 PARENT: () => PARENT, 3013 PLAIN_OBJECT: () => PLAIN_OBJECT, 3014 PRESERVE_3D: () => PRESERVE_3D, 3015 RENDER_GENERAL: () => RENDER_GENERAL, 3016 RENDER_PLUGIN: () => RENDER_PLUGIN, 3017 RENDER_STYLE: () => RENDER_STYLE, 3018 RENDER_TRANSFORM: () => RENDER_TRANSFORM, 3019 ROTATE_X: () => ROTATE_X, 3020 ROTATE_Y: () => ROTATE_Y, 3021 ROTATE_Z: () => ROTATE_Z, 3022 SCALE_3D: () => SCALE_3D, 3023 SCALE_X: () => SCALE_X, 3024 SCALE_Y: () => SCALE_Y, 3025 SCALE_Z: () => SCALE_Z, 3026 SIBLINGS: () => SIBLINGS, 3027 SKEW: () => SKEW, 3028 SKEW_X: () => SKEW_X, 3029 SKEW_Y: () => SKEW_Y, 3030 TRANSFORM: () => TRANSFORM, 3031 TRANSLATE_3D: () => TRANSLATE_3D, 3032 TRANSLATE_X: () => TRANSLATE_X, 3033 TRANSLATE_Y: () => TRANSLATE_Y, 3034 TRANSLATE_Z: () => TRANSLATE_Z, 3035 WF_PAGE: () => WF_PAGE, 3036 WIDTH: () => WIDTH, 3037 WILL_CHANGE: () => WILL_CHANGE, 3038 W_MOD_IX: () => W_MOD_IX, 3039 W_MOD_JS: () => W_MOD_JS 3040 }); 3041 var IX2_ID_DELIMITER, WF_PAGE, W_MOD_JS, W_MOD_IX, BOUNDARY_SELECTOR, CONFIG_X_VALUE, CONFIG_Y_VALUE, CONFIG_Z_VALUE, CONFIG_VALUE, CONFIG_X_UNIT, CONFIG_Y_UNIT, CONFIG_Z_UNIT, CONFIG_UNIT, TRANSFORM, TRANSLATE_X, TRANSLATE_Y, TRANSLATE_Z, TRANSLATE_3D, SCALE_X, SCALE_Y, SCALE_Z, SCALE_3D, ROTATE_X, ROTATE_Y, ROTATE_Z, SKEW, SKEW_X, SKEW_Y, OPACITY, FILTER, FONT_VARIATION_SETTINGS, WIDTH, HEIGHT, BACKGROUND_COLOR, BACKGROUND, BORDER_COLOR, COLOR, DISPLAY, FLEX, WILL_CHANGE, AUTO, COMMA_DELIMITER, COLON_DELIMITER, BAR_DELIMITER, CHILDREN, IMMEDIATE_CHILDREN, SIBLINGS, PARENT, PRESERVE_3D, HTML_ELEMENT, PLAIN_OBJECT, ABSTRACT_NODE, RENDER_TRANSFORM, RENDER_GENERAL, RENDER_STYLE, RENDER_PLUGIN; 3042 var init_IX2EngineConstants = __esm({ 3043 "packages/systems/ix2/shared-constants/IX2EngineConstants.ts"() { 3044 "use strict"; 3045 IX2_ID_DELIMITER = "|"; 3046 WF_PAGE = "data-wf-page"; 3047 W_MOD_JS = "w-mod-js"; 3048 W_MOD_IX = "w-mod-ix"; 3049 BOUNDARY_SELECTOR = ".w-dyn-item"; 3050 CONFIG_X_VALUE = "xValue"; 3051 CONFIG_Y_VALUE = "yValue"; 3052 CONFIG_Z_VALUE = "zValue"; 3053 CONFIG_VALUE = "value"; 3054 CONFIG_X_UNIT = "xUnit"; 3055 CONFIG_Y_UNIT = "yUnit"; 3056 CONFIG_Z_UNIT = "zUnit"; 3057 CONFIG_UNIT = "unit"; 3058 TRANSFORM = "transform"; 3059 TRANSLATE_X = "translateX"; 3060 TRANSLATE_Y = "translateY"; 3061 TRANSLATE_Z = "translateZ"; 3062 TRANSLATE_3D = "translate3d"; 3063 SCALE_X = "scaleX"; 3064 SCALE_Y = "scaleY"; 3065 SCALE_Z = "scaleZ"; 3066 SCALE_3D = "scale3d"; 3067 ROTATE_X = "rotateX"; 3068 ROTATE_Y = "rotateY"; 3069 ROTATE_Z = "rotateZ"; 3070 SKEW = "skew"; 3071 SKEW_X = "skewX"; 3072 SKEW_Y = "skewY"; 3073 OPACITY = "opacity"; 3074 FILTER = "filter"; 3075 FONT_VARIATION_SETTINGS = "font-variation-settings"; 3076 WIDTH = "width"; 3077 HEIGHT = "height"; 3078 BACKGROUND_COLOR = "backgroundColor"; 3079 BACKGROUND = "background"; 3080 BORDER_COLOR = "borderColor"; 3081 COLOR = "color"; 3082 DISPLAY = "display"; 3083 FLEX = "flex"; 3084 WILL_CHANGE = "willChange"; 3085 AUTO = "AUTO"; 3086 COMMA_DELIMITER = ","; 3087 COLON_DELIMITER = ":"; 3088 BAR_DELIMITER = "|"; 3089 CHILDREN = "CHILDREN"; 3090 IMMEDIATE_CHILDREN = "IMMEDIATE_CHILDREN"; 3091 SIBLINGS = "SIBLINGS"; 3092 PARENT = "PARENT"; 3093 PRESERVE_3D = "preserve-3d"; 3094 HTML_ELEMENT = "HTML_ELEMENT"; 3095 PLAIN_OBJECT = "PLAIN_OBJECT"; 3096 ABSTRACT_NODE = "ABSTRACT_NODE"; 3097 RENDER_TRANSFORM = "RENDER_TRANSFORM"; 3098 RENDER_GENERAL = "RENDER_GENERAL"; 3099 RENDER_STYLE = "RENDER_STYLE"; 3100 RENDER_PLUGIN = "RENDER_PLUGIN"; 3101 } 3102 }); 3103 3104
3104// packages/systems/ix2/shared-constants/index.ts 3105 var shared_constants_exports = {}; 3106 __export(shared_constants_exports, { 3107 ActionAppliesTo: () => ActionAppliesTo, 3108 ActionTypeConsts: () => ActionTypeConsts, 3109 EventAppliesTo: () => EventAppliesTo, 3110 EventBasedOn: () => EventBasedOn, 3111 EventContinuousMouseAxes: () => EventContinuousMouseAxes, 3112 EventLimitAffectedElements: () => EventLimitAffectedElements, 3113 EventTypeConsts: () => EventTypeConsts, 3114 IX2EngineActionTypes: () => IX2EngineActionTypes_exports, 3115 IX2EngineConstants: () => IX2EngineConstants_exports, 3116 InteractionTypeConsts: () => InteractionTypeConsts, 3117 QuickEffectDirectionConsts: () => QuickEffectDirectionConsts, 3118 QuickEffectIds: () => QuickEffectIds, 3119 ReducedMotionTypes: () => ReducedMotionTypes 3120 }); 3121 var init_shared_constants = __esm({ 3122 "packages/systems/ix2/shared-constants/index.ts"() { 3123 "use strict"; 3124 init_trigger_events(); 3125 init_animation_actions(); 3126 init_trigger_interactions(); 3127 init_reduced_motion(); 3128 init_IX2EngineActionTypes(); 3129 init_IX2EngineConstants(); 3130 init_animation_actions(); 3131 init_trigger_events(); 3132 } 3133 }); 3134 3135
3135// packages/systems/ix2/engine/reducers/IX2DataReducer.ts 3136 var IX2_RAW_DATA_IMPORTED2, ixData; 3137 var init_IX2DataReducer = __esm({ 3138 "packages/systems/ix2/engine/reducers/IX2DataReducer.ts"() { 3139 "use strict"; 3140 init_shared_constants(); 3141 ({ IX2_RAW_DATA_IMPORTED: IX2_RAW_DATA_IMPORTED2 } = IX2EngineActionTypes_exports); 3142 ixData = (state = Object.freeze( 3143 {} 3144 ), action) => { 3145 switch (action.type) { 3146 case IX2_RAW_DATA_IMPORTED2: { 3147 return action.payload.ixData || Object.freeze({}); 3148 } 3149 default: { 3150 return state; 3151 } 3152 } 3153 }; 3154 } 3155 }); 3156 3157
vendor: 9,055 bytes, lines 3157-3414
3157// node_modules/timm/lib/timm.js 3158 var require_timm = __commonJS({ 3159 "node_modules/timm/lib/timm.js"(exports) { 3160 "use strict"; 3161 Object.defineProperty(exports, "__esModule", { 3162 value: true 3163 }); 3164 var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function(obj) { 3165 return typeof obj; 3166 } : function(obj) { 3167 return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; 3168 }; 3169 exports.clone = clone; 3170 exports.addLast = addLast2; 3171 exports.addFirst = addFirst; 3172 exports.removeLast = removeLast; 3173 exports.removeFirst = removeFirst; 3174 exports.insert = insert; 3175 exports.removeAt = removeAt; 3176 exports.replaceAt = replaceAt; 3177 exports.getIn = getIn2; 3178 exports.set = set3; 3179 exports.setIn = setIn4; 3180 exports.update = update; 3181 exports.updateIn = updateIn; 3182 exports.merge = merge3; 3183 exports.mergeDeep = mergeDeep; 3184 exports.mergeIn = mergeIn4; 3185 exports.omit = omit; 3186 exports.addDefaults = addDefaults; 3187 var INVALID_ARGS = "INVALID_ARGS"; 3188 function throwStr(msg) { 3189 throw new Error(msg); 3190 } 3191 function getKeysAndSymbols(obj) { 3192 var keys = Object.keys(obj); 3193 if (Object.getOwnPropertySymbols) { 3194 return keys.concat(Object.getOwnPropertySymbols(obj)); 3195 } 3196 return keys; 3197 } 3198 var hasOwnProperty = {}.hasOwnProperty; 3199 function clone(obj) { 3200 if (Array.isArray(obj)) 3201 return obj.slice(); 3202 var keys = getKeysAndSymbols(obj); 3203 var out = {}; 3204 for (var i = 0; i < keys.length; i++) { 3205 var key = keys[i]; 3206 out[key] = obj[key]; 3207 } 3208 return out; 3209 } 3210 function doMerge(fAddDefaults, fDeep, first) { 3211 var out = first; 3212 !(out != null) && throwStr(false ? "At least one object should be provided to merge()" : INVALID_ARGS); 3213 var fChanged = false; 3214 for (var _len = arguments.length, rest = Array(_len > 3 ? _len - 3 : 0), _key = 3; _key < _len; _key++) { 3215 rest[_key - 3] = arguments[_key]; 3216 } 3217 for (var idx = 0; idx < rest.length; idx++) { 3218 var obj = rest[idx]; 3219 if (obj == null) 3220 continue; 3221 var keys = getKeysAndSymbols(obj); 3222 if (!keys.length) 3223 continue; 3224 for (var j = 0; j <= keys.length; j++) { 3225 var key = keys[j]; 3226 if (fAddDefaults && out[key] !== void 0) 3227 continue; 3228 var nextVal = obj[key]; 3229 if (fDeep && isObject(out[key]) && isObject(nextVal)) { 3230 nextVal = doMerge(fAddDefaults, fDeep, out[key], nextVal); 3231 } 3232 if (nextVal === void 0 || nextVal === out[key]) 3233 continue; 3234 if (!fChanged) { 3235 fChanged = true; 3236 out = clone(out); 3237 } 3238 out[key] = nextVal; 3239 } 3240 } 3241 return out; 3242 } 3243 function isObject(o) { 3244 var type = typeof o === "undefined" ? "undefined" : _typeof(o); 3245 return o != null && (type === "object" || type === "function"); 3246 } 3247 function addLast2(array, val) { 3248 if (Array.isArray(val)) 3249 return array.concat(val); 3250 return array.concat([val]); 3251 } 3252 function addFirst(array, val) { 3253 if (Array.isArray(val)) 3254 return val.concat(array); 3255 return [val].concat(array); 3256 } 3257 function removeLast(array) { 3258 if (!array.length) 3259 return array; 3260 return array.slice(0, array.length - 1); 3261 } 3262 function removeFirst(array) { 3263 if (!array.length) 3264 return array; 3265 return array.slice(1); 3266 } 3267 function insert(array, idx, val) { 3268 return array.slice(0, idx).concat(Array.isArray(val) ? val : [val]).concat(array.slice(idx)); 3269 } 3270 function removeAt(array, idx) { 3271 if (idx >= array.length || idx < 0) 3272 return array; 3273 return array.slice(0, idx).concat(array.slice(idx + 1)); 3274 } 3275 function replaceAt(array, idx, newItem) { 3276 if (array[idx] === newItem) 3277 return array; 3278 var len = array.length; 3279 var result = Array(len); 3280 for (var i = 0; i < len; i++) { 3281 result[i] = array[i]; 3282 } 3283 result[idx] = newItem; 3284 return result; 3285 } 3286 function getIn2(obj, path) { 3287 !Array.isArray(path) && throwStr(false ? "A path array should be provided when calling getIn()" : INVALID_ARGS); 3288 if (obj == null) 3289 return void 0; 3290 var ptr = obj; 3291 for (var i = 0; i < path.length; i++) { 3292 var key = path[i]; 3293 ptr = ptr != null ? ptr[key] : void 0; 3294 if (ptr === void 0) 3295 return ptr; 3296 } 3297 return ptr; 3298 } 3299 function set3(obj, key, val) { 3300 var fallback = typeof key === "number" ? [] : {}; 3301 var finalObj = obj == null ? fallback : obj; 3302 if (finalObj[key] === val) 3303 return finalObj; 3304 var obj2 = clone(finalObj); 3305 obj2[key] = val; 3306 return obj2; 3307 } 3308 function doSetIn(obj, path, val, idx) { 3309 var newValue = void 0; 3310 var key = path[idx]; 3311 if (idx === path.length - 1) { 3312 newValue = val; 3313 } else { 3314 var nestedObj = isObject(obj) && isObject(obj[key]) ? obj[key] : typeof path[idx + 1] === "number" ? [] : {}; 3315 newValue = doSetIn(nestedObj, path, val, idx + 1); 3316 } 3317 return set3(obj, key, newValue); 3318 } 3319 function setIn4(obj, path, val) { 3320 if (!path.length) 3321 return val; 3322 return doSetIn(obj, path, val, 0); 3323 } 3324 function update(obj, key, fnUpdate) { 3325 var prevVal = obj == null ? void 0 : obj[key]; 3326 var nextVal = fnUpdate(prevVal); 3327 return set3(obj, key, nextVal); 3328 } 3329 function updateIn(obj, path, fnUpdate) { 3330 var prevVal = getIn2(obj, path); 3331 var nextVal = fnUpdate(prevVal); 3332 return setIn4(obj, path, nextVal); 3333 } 3334 function merge3(a, b, c, d, e, f) { 3335 for (var _len2 = arguments.length, rest = Array(_len2 > 6 ? _len2 - 6 : 0), _key2 = 6; _key2 < _len2; _key2++) { 3336 rest[_key2 - 6] = arguments[_key2]; 3337 } 3338 return rest.length ? doMerge.call.apply(doMerge, [null, false, false, a, b, c, d, e, f].concat(rest)) : doMerge(false, false, a, b, c, d, e, f); 3339 } 3340 function mergeDeep(a, b, c, d, e, f) { 3341 for (var _len3 = arguments.length, rest = Array(_len3 > 6 ? _len3 - 6 : 0), _key3 = 6; _key3 < _len3; _key3++) { 3342 rest[_key3 - 6] = arguments[_key3]; 3343 } 3344 return rest.length ? doMerge.call.apply(doMerge, [null, false, true, a, b, c, d, e, f].concat(rest)) : doMerge(false, true, a, b, c, d, e, f); 3345 } 3346 function mergeIn4(a, path, b, c, d, e, f) { 3347 var prevVal = getIn2(a, path); 3348 if (prevVal == null) 3349 prevVal = {}; 3350 var nextVal = void 0; 3351 for (var _len4 = arguments.length, rest = Array(_len4 > 7 ? _len4 - 7 : 0), _key4 = 7; _key4 < _len4; _key4++) { 3352 rest[_key4 - 7] = arguments[_key4]; 3353 } 3354 if (rest.length) { 3355 nextVal = doMerge.call.apply(doMerge, [null, false, false, prevVal, b, c, d, e, f].concat(rest)); 3356 } else { 3357 nextVal = doMerge(false, false, prevVal, b, c, d, e, f); 3358 } 3359 return setIn4(a, path, nextVal); 3360 } 3361 function omit(obj, attrs) { 3362 var omitList = Array.isArray(attrs) ? attrs : [attrs]; 3363 var fDoSomething = false; 3364 for (var i = 0; i < omitList.length; i++) { 3365 if (hasOwnProperty.call(obj, omitList[i])) { 3366 fDoSomething = true; 3367 break; 3368 } 3369 } 3370 if (!fDoSomething) 3371 return obj; 3372 var out = {}; 3373 var keys = getKeysAndSymbols(obj); 3374 for (var _i = 0; _i < keys.length; _i++) { 3375 var key = keys[_i]; 3376 if (omitList.indexOf(key) >= 0) 3377 continue; 3378 out[key] = obj[key]; 3379 } 3380 return out; 3381 } 3382 function addDefaults(a, b, c, d, e, f) { 3383 for (var _len5 = arguments.length, rest = Array(_len5 > 6 ? _len5 - 6 : 0), _key5 = 6; _key5 < _len5; _key5++) { 3384 rest[_key5 - 6] = arguments[_key5]; 3385 } 3386 return rest.length ? doMerge.call.apply(doMerge, [null, true, false, a, b, c, d, e, f].concat(rest)) : doMerge(true, false, a, b, c, d, e, f); 3387 } 3388 var timm = { 3389 clone, 3390 addLast: addLast2, 3391 addFirst, 3392 removeLast, 3393 removeFirst, 3394 insert, 3395 removeAt, 3396 replaceAt, 3397 getIn: getIn2, 3398 // eslint-disable-next-line object-shorthand 3399 set: set3, 3400 // so that flow doesn't complain 3401 setIn: setIn4, 3402 update, 3403 updateIn, 3404 merge: merge3, 3405 mergeDeep, 3406 mergeIn: mergeIn4, 3407 omit, 3408 addDefaults 3409 }; 3410 exports.default = timm; 3411 } 3412 }); 3413 3414
3414// packages/systems/ix2/engine/reducers/IX2RequestReducer.ts 3415 var import_timm, IX2_PREVIEW_REQUESTED2, IX2_PLAYBACK_REQUESTED2, IX2_STOP_REQUESTED2, IX2_CLEAR_REQUESTED2, initialState, stateKeys, ixRequest; 3416 var init_IX2RequestReducer = __esm({ 3417 "packages/systems/ix2/engine/reducers/IX2RequestReducer.ts"() { 3418 "use strict"; 3419 init_shared_constants(); 3420 import_timm = __toESM(require_timm()); 3421 ({ 3422 IX2_PREVIEW_REQUESTED: IX2_PREVIEW_REQUESTED2, 3423 IX2_PLAYBACK_REQUESTED: IX2_PLAYBACK_REQUESTED2, 3424 IX2_STOP_REQUESTED: IX2_STOP_REQUESTED2, 3425 IX2_CLEAR_REQUESTED: IX2_CLEAR_REQUESTED2 3426 } = IX2EngineActionTypes_exports); 3427 initialState = { 3428 preview: {}, 3429 playback: {}, 3430 stop: {}, 3431 clear: {} 3432 }; 3433 stateKeys = Object.create(null, { 3434 [IX2_PREVIEW_REQUESTED2]: { value: "preview" }, 3435 [IX2_PLAYBACK_REQUESTED2]: { value: "playback" }, 3436 [IX2_STOP_REQUESTED2]: { value: "stop" }, 3437 [IX2_CLEAR_REQUESTED2]: { value: "clear" } 3438 }); 3439 ixRequest = (state = initialState, action) => { 3440 if (action.type in stateKeys) { 3441 const key = [stateKeys[action.type]]; 3442 return (0, import_timm.setIn)(state, [key], { ...action.payload }); 3443 } 3444 return state; 3445 }; 3446 } 3447 }); 3448 3449
3449// packages/systems/ix2/engine/reducers/IX2SessionReducer.ts 3450 var import_timm2, IX2_SESSION_INITIALIZED2, IX2_SESSION_STARTED2, IX2_TEST_FRAME_RENDERED2, IX2_SESSION_STOPPED2, IX2_EVENT_LISTENER_ADDED2, IX2_EVENT_STATE_CHANGED2, IX2_ANIMATION_FRAME_CHANGED2, IX2_ACTION_LIST_PLAYBACK_CHANGED2, IX2_VIEWPORT_WIDTH_CHANGED2, IX2_MEDIA_QUERIES_DEFINED2, initialState2, TEST_FRAME_STEPS_SIZE, ixSession; 3451 var init_IX2SessionReducer = __esm({ 3452 "packages/systems/ix2/engine/reducers/IX2SessionReducer.ts"() { 3453 "use strict"; 3454 init_shared_constants(); 3455 import_timm2 = __toESM(require_timm()); 3456 ({ 3457 IX2_SESSION_INITIALIZED: IX2_SESSION_INITIALIZED2, 3458 IX2_SESSION_STARTED: IX2_SESSION_STARTED2, 3459 IX2_TEST_FRAME_RENDERED: IX2_TEST_FRAME_RENDERED2, 3460 IX2_SESSION_STOPPED: IX2_SESSION_STOPPED2, 3461 IX2_EVENT_LISTENER_ADDED: IX2_EVENT_LISTENER_ADDED2, 3462 IX2_EVENT_STATE_CHANGED: IX2_EVENT_STATE_CHANGED2, 3463 IX2_ANIMATION_FRAME_CHANGED: IX2_ANIMATION_FRAME_CHANGED2, 3464 IX2_ACTION_LIST_PLAYBACK_CHANGED: IX2_ACTION_LIST_PLAYBACK_CHANGED2, 3465 IX2_VIEWPORT_WIDTH_CHANGED: IX2_VIEWPORT_WIDTH_CHANGED2, 3466 IX2_MEDIA_QUERIES_DEFINED: IX2_MEDIA_QUERIES_DEFINED2 3467 } = IX2EngineActionTypes_exports); 3468 initialState2 = { 3469 active: false, 3470 tick: 0, 3471 eventListeners: [], 3472 eventState: {}, 3473 playbackState: {}, 3474 viewportWidth: 0, 3475 mediaQueryKey: null, 3476 hasBoundaryNodes: false, 3477 hasDefinedMediaQueries: false, 3478 reducedMotion: false 3479 }; 3480 TEST_FRAME_STEPS_SIZE = 20; 3481 ixSession = (state = initialState2, action) => { 3482 switch (action.type) { 3483 case IX2_SESSION_INITIALIZED2: { 3484 const { hasBoundaryNodes, reducedMotion } = action.payload; 3485 return (0, import_timm2.merge)(state, { 3486 hasBoundaryNodes, 3487 reducedMotion 3488 }); 3489 } 3490 case IX2_SESSION_STARTED2: { 3491 return (0, import_timm2.set)(state, "active", true); 3492 } 3493 case IX2_TEST_FRAME_RENDERED2: { 3494 const { 3495 payload: { step = TEST_FRAME_STEPS_SIZE } 3496 } = action; 3497 return (0, import_timm2.set)(state, "tick", state.tick + step); 3498 } 3499 case IX2_SESSION_STOPPED2: { 3500 return initialState2; 3501 } 3502 case IX2_ANIMATION_FRAME_CHANGED2: { 3503 const { 3504 payload: { now } 3505 } = action; 3506 return (0, import_timm2.set)(state, "tick", now); 3507 } 3508 case IX2_EVENT_LISTENER_ADDED2: { 3509 const eventListeners = (0, import_timm2.addLast)(state.eventListeners, action.payload); 3510 return (0, import_timm2.set)(state, "eventListeners", eventListeners); 3511 } 3512 case IX2_EVENT_STATE_CHANGED2: { 3513 const { stateKey, newState } = action.payload; 3514 return (0, import_timm2.setIn)(state, ["eventState", stateKey], newState); 3515 } 3516 case IX2_ACTION_LIST_PLAYBACK_CHANGED2: { 3517 const { actionListId, isPlaying } = action.payload; 3518 return (0, import_timm2.setIn)(state, ["playbackState", actionListId], isPlaying); 3519 } 3520 case IX2_VIEWPORT_WIDTH_CHANGED2: { 3521 const { width, mediaQueries } = action.payload; 3522 const mediaQueryCount = mediaQueries.length; 3523 let mediaQueryKey = null; 3524 for (let i = 0; i < mediaQueryCount; i++) { 3525 const { key, min, max } = mediaQueries[i]; 3526 if (width >= min && width <= max) { 3527 mediaQueryKey = key; 3528 break; 3529 } 3530 } 3531 return (0, import_timm2.merge)(state, { 3532 viewportWidth: width, 3533 mediaQueryKey 3534 }); 3535 } 3536 case IX2_MEDIA_QUERIES_DEFINED2: { 3537 return (0, import_timm2.set)(state, "hasDefinedMediaQueries", true); 3538 } 3539 default: { 3540 return state; 3541 } 3542 } 3543 }; 3544 } 3545 }); 3546 3547
vendor: 297 bytes, lines 3547-3558
3547// node_modules/lodash/_listCacheClear.js 3548 var require_listCacheClear = __commonJS({ 3549 "node_modules/lodash/_listCacheClear.js"(exports, module) { 3550 function listCacheClear() { 3551 this.__data__ = []; 3552 this.size = 0; 3553 } 3554 module.exports = listCacheClear; 3555 } 3556 }); 3557 3558
vendor: 266 bytes, lines 3558-3568
3558// node_modules/lodash/eq.js 3559 var require_eq = __commonJS({ 3560 "node_modules/lodash/eq.js"(exports, module) { 3561 function eq(value, other) { 3562 return value === other || value !== value && other !== other; 3563 } 3564 module.exports = eq; 3565 } 3566 }); 3567 3568
vendor: 448 bytes, lines 3568-3585
3568// node_modules/lodash/_assocIndexOf.js 3569 var require_assocIndexOf = __commonJS({ 3570 "node_modules/lodash/_assocIndexOf.js"(exports, module) { 3571 var eq = require_eq(); 3572 function assocIndexOf(array, key) { 3573 var length = array.length; 3574 while (length--) { 3575 if (eq(array[length][0], key)) { 3576 return length; 3577 } 3578 } 3579 return -1; 3580 } 3581 module.exports = assocIndexOf; 3582 } 3583 }); 3584 3585
vendor: 712 bytes, lines 3585-3609
3585// node_modules/lodash/_listCacheDelete.js 3586 var require_listCacheDelete = __commonJS({ 3587 "node_modules/lodash/_listCacheDelete.js"(exports, module) { 3588 var assocIndexOf = require_assocIndexOf(); 3589 var arrayProto = Array.prototype; 3590 var splice = arrayProto.splice; 3591 function listCacheDelete(key) { 3592 var data = this.__data__, index = assocIndexOf(data, key); 3593 if (index < 0) { 3594 return false; 3595 } 3596 var lastIndex = data.length - 1; 3597 if (index == lastIndex) { 3598 data.pop(); 3599 } else { 3600 splice.call(data, index, 1); 3601 } 3602 --this.size; 3603 return true; 3604 } 3605 module.exports = listCacheDelete; 3606 } 3607 }); 3608 3609
vendor: 407 bytes, lines 3609-3621
3609// node_modules/lodash/_listCacheGet.js 3610 var require_listCacheGet = __commonJS({ 3611 "node_modules/lodash/_listCacheGet.js"(exports, module) { 3612 var assocIndexOf = require_assocIndexOf(); 3613 function listCacheGet(key) { 3614 var data = this.__data__, index = assocIndexOf(data, key); 3615 return index < 0 ? void 0 : data[index][1]; 3616 } 3617 module.exports = listCacheGet; 3618 } 3619 }); 3620 3621
vendor: 342 bytes, lines 3621-3632
3621// node_modules/lodash/_listCacheHas.js 3622 var require_listCacheHas = __commonJS({ 3623 "node_modules/lodash/_listCacheHas.js"(exports, module) { 3624 var assocIndexOf = require_assocIndexOf(); 3625 function listCacheHas(key) { 3626 return assocIndexOf(this.__data__, key) > -1; 3627 } 3628 module.exports = listCacheHas; 3629 } 3630 }); 3631 3632
vendor: 527 bytes, lines 3632-3650
3632// node_modules/lodash/_listCacheSet.js 3633 var require_listCacheSet = __commonJS({ 3634 "node_modules/lodash/_listCacheSet.js"(exports, module) { 3635 var assocIndexOf = require_assocIndexOf(); 3636 function listCacheSet(key, value) { 3637 var data = this.__data__, index = assocIndexOf(data, key); 3638 if (index < 0) { 3639 ++this.size; 3640 data.push([key, value]); 3641 } else { 3642 data[index][1] = value; 3643 } 3644 return this; 3645 } 3646 module.exports = listCacheSet; 3647 } 3648 }); 3649 3650
vendor: 942 bytes, lines 3650-3675
3650// node_modules/lodash/_ListCache.js 3651 var require_ListCache = __commonJS({ 3652 "node_modules/lodash/_ListCache.js"(exports, module) { 3653 var listCacheClear = require_listCacheClear(); 3654 var listCacheDelete = require_listCacheDelete(); 3655 var listCacheGet = require_listCacheGet(); 3656 var listCacheHas = require_listCacheHas(); 3657 var listCacheSet = require_listCacheSet(); 3658 function ListCache(entries) { 3659 var index = -1, length = entries == null ? 0 : entries.length; 3660 this.clear(); 3661 while (++index < length) { 3662 var entry = entries[index]; 3663 this.set(entry[0], entry[1]); 3664 } 3665 } 3666 ListCache.prototype.clear = listCacheClear; 3667 ListCache.prototype["delete"] = listCacheDelete; 3668 ListCache.prototype.get = listCacheGet; 3669 ListCache.prototype.has = listCacheHas; 3670 ListCache.prototype.set = listCacheSet; 3671 module.exports = ListCache; 3672 } 3673 }); 3674 3675
vendor: 333 bytes, lines 3675-3687
3675// node_modules/lodash/_stackClear.js 3676 var require_stackClear = __commonJS({ 3677 "node_modules/lodash/_stackClear.js"(exports, module) { 3678 var ListCache = require_ListCache(); 3679 function stackClear() { 3680 this.__data__ = new ListCache(); 3681 this.size = 0; 3682 } 3683 module.exports = stackClear; 3684 } 3685 }); 3686 3687
vendor: 352 bytes, lines 3687-3699
3687// node_modules/lodash/_stackDelete.js 3688 var require_stackDelete = __commonJS({ 3689 "node_modules/lodash/_stackDelete.js"(exports, module) { 3690 function stackDelete(key) { 3691 var data = this.__data__, result = data["delete"](key); 3692 this.size = data.size; 3693 return result; 3694 } 3695 module.exports = stackDelete; 3696 } 3697 }); 3698 3699
vendor: 258 bytes, lines 3699-3709
3699// node_modules/lodash/_stackGet.js 3700 var require_stackGet = __commonJS({ 3701 "node_modules/lodash/_stackGet.js"(exports, module) { 3702 function stackGet(key) { 3703 return this.__data__.get(key); 3704 } 3705 module.exports = stackGet; 3706 } 3707 }); 3708 3709
vendor: 258 bytes, lines 3709-3719
3709// node_modules/lodash/_stackHas.js 3710 var require_stackHas = __commonJS({ 3711 "node_modules/lodash/_stackHas.js"(exports, module) { 3712 function stackHas(key) { 3713 return this.__data__.has(key); 3714 } 3715 module.exports = stackHas; 3716 } 3717 }); 3718 3719
vendor: 326 bytes, lines 3719-3730
3719// node_modules/lodash/isObject.js 3720 var require_isObject = __commonJS({ 3721 "node_modules/lodash/isObject.js"(exports, module) { 3722 function isObject(value) { 3723 var type = typeof value; 3724 return value != null && (type == "object" || type == "function"); 3725 } 3726 module.exports = isObject; 3727 } 3728 }); 3729 3730
vendor: 680 bytes, lines 3730-3750
3730// node_modules/lodash/isFunction.js 3731 var require_isFunction = __commonJS({ 3732 "node_modules/lodash/isFunction.js"(exports, module) { 3733 var baseGetTag = require_baseGetTag(); 3734 var isObject = require_isObject(); 3735 var asyncTag = "[object AsyncFunction]"; 3736 var funcTag = "[object Function]"; 3737 var genTag = "[object GeneratorFunction]"; 3738 var proxyTag = "[object Proxy]"; 3739 function isFunction(value) { 3740 if (!isObject(value)) { 3741 return false; 3742 } 3743 var tag = baseGetTag(value); 3744 return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; 3745 } 3746 module.exports = isFunction; 3747 } 3748 }); 3749 3750
vendor: 272 bytes, lines 3750-3759
3750// node_modules/lodash/_coreJsData.js 3751 var require_coreJsData = __commonJS({ 3752 "node_modules/lodash/_coreJsData.js"(exports, module) { 3753 var root = require_root(); 3754 var coreJsData = root["__core-js_shared__"]; 3755 module.exports = coreJsData; 3756 } 3757 }); 3758 3759
vendor: 511 bytes, lines 3759-3774
3759// node_modules/lodash/_isMasked.js 3760 var require_isMasked = __commonJS({ 3761 "node_modules/lodash/_isMasked.js"(exports, module) { 3762 var coreJsData = require_coreJsData(); 3763 var maskSrcKey = function() { 3764 var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ""); 3765 return uid ? "Symbol(src)_1." + uid : ""; 3766 }(); 3767 function isMasked(func) { 3768 return !!maskSrcKey && maskSrcKey in func; 3769 } 3770 module.exports = isMasked; 3771 } 3772 }); 3773 3774
vendor: 542 bytes, lines 3774-3796
3774// node_modules/lodash/_toSource.js 3775 var require_toSource = __commonJS({ 3776 "node_modules/lodash/_toSource.js"(exports, module) { 3777 var funcProto = Function.prototype; 3778 var funcToString = funcProto.toString; 3779 function toSource(func) { 3780 if (func != null) { 3781 try { 3782 return funcToString.call(func); 3783 } catch (e) { 3784 } 3785 try { 3786 return func + ""; 3787 } catch (e) { 3788 } 3789 } 3790 return ""; 3791 } 3792 module.exports = toSource; 3793 } 3794 }); 3795 3796
vendor: 1,096 bytes, lines 3796-3823
3796// node_modules/lodash/_baseIsNative.js 3797 var require_baseIsNative = __commonJS({ 3798 "node_modules/lodash/_baseIsNative.js"(exports, module) { 3799 var isFunction = require_isFunction(); 3800 var isMasked = require_isMasked(); 3801 var isObject = require_isObject(); 3802 var toSource = require_toSource(); 3803 var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; 3804 var reIsHostCtor = /^\[object .+?Constructor\]$/; 3805 var funcProto = Function.prototype; 3806 var objectProto = Object.prototype; 3807 var funcToString = funcProto.toString; 3808 var hasOwnProperty = objectProto.hasOwnProperty; 3809 var reIsNative = RegExp( 3810 "^" + funcToString.call(hasOwnProperty).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$" 3811 ); 3812 function baseIsNative(value) { 3813 if (!isObject(value) || isMasked(value)) { 3814 return false; 3815 } 3816 var pattern = isFunction(value) ? reIsNative : reIsHostCtor; 3817 return pattern.test(toSource(value)); 3818 } 3819 module.exports = baseIsNative; 3820 } 3821 }); 3822 3823
vendor: 281 bytes, lines 3823-3833
3823// node_modules/lodash/_getValue.js 3824 var require_getValue = __commonJS({ 3825 "node_modules/lodash/_getValue.js"(exports, module) { 3826 function getValue(object, key) { 3827 return object == null ? void 0 : object[key]; 3828 } 3829 module.exports = getValue; 3830 } 3831 }); 3832 3833
vendor: 418 bytes, lines 3833-3846
3833// node_modules/lodash/_getNative.js 3834 var require_getNative = __commonJS({ 3835 "node_modules/lodash/_getNative.js"(exports, module) { 3836 var baseIsNative = require_baseIsNative(); 3837 var getValue = require_getValue(); 3838 function getNative(object, key) { 3839 var value = getValue(object, key); 3840 return baseIsNative(value) ? value : void 0; 3841 } 3842 module.exports = getNative; 3843 } 3844 }); 3845 3846
vendor: 278 bytes, lines 3846-3856
3846// node_modules/lodash/_Map.js 3847 var require_Map = __commonJS({ 3848 "node_modules/lodash/_Map.js"(exports, module) { 3849 var getNative = require_getNative(); 3850 var root = require_root(); 3851 var Map2 = getNative(root, "Map"); 3852 module.exports = Map2; 3853 } 3854 }); 3855 3856
vendor: 293 bytes, lines 3856-3865
3856// node_modules/lodash/_nativeCreate.js 3857 var require_nativeCreate = __commonJS({ 3858 "node_modules/lodash/_nativeCreate.js"(exports, module) { 3859 var getNative = require_getNative(); 3860 var nativeCreate = getNative(Object, "create"); 3861 module.exports = nativeCreate; 3862 } 3863 }); 3864 3865
vendor: 357 bytes, lines 3865-3877
3865// node_modules/lodash/_hashClear.js 3866 var require_hashClear = __commonJS({ 3867 "node_modules/lodash/_hashClear.js"(exports, module) { 3868 var nativeCreate = require_nativeCreate(); 3869 function hashClear() { 3870 this.__data__ = nativeCreate ? nativeCreate(null) : {}; 3871 this.size = 0; 3872 } 3873 module.exports = hashClear; 3874 } 3875 }); 3876 3877
vendor: 354 bytes, lines 3877-3889
3877// node_modules/lodash/_hashDelete.js 3878 var require_hashDelete = __commonJS({ 3879 "node_modules/lodash/_hashDelete.js"(exports, module) { 3880 function hashDelete(key) { 3881 var result = this.has(key) && delete this.__data__[key]; 3882 this.size -= result ? 1 : 0; 3883 return result; 3884 } 3885 module.exports = hashDelete; 3886 } 3887 }); 3888 3889
vendor: 652 bytes, lines 3889-3908
3889// node_modules/lodash/_hashGet.js 3890 var require_hashGet = __commonJS({ 3891 "node_modules/lodash/_hashGet.js"(exports, module) { 3892 var nativeCreate = require_nativeCreate(); 3893 var HASH_UNDEFINED = "__lodash_hash_undefined__"; 3894 var objectProto = Object.prototype; 3895 var hasOwnProperty = objectProto.hasOwnProperty; 3896 function hashGet(key) { 3897 var data = this.__data__; 3898 if (nativeCreate) { 3899 var result = data[key]; 3900 return result === HASH_UNDEFINED ? void 0 : result; 3901 } 3902 return hasOwnProperty.call(data, key) ? data[key] : void 0; 3903 } 3904 module.exports = hashGet; 3905 } 3906 }); 3907 3908
vendor: 479 bytes, lines 3908-3922
3908// node_modules/lodash/_hashHas.js 3909 var require_hashHas = __commonJS({ 3910 "node_modules/lodash/_hashHas.js"(exports, module) { 3911 var nativeCreate = require_nativeCreate(); 3912 var objectProto = Object.prototype; 3913 var hasOwnProperty = objectProto.hasOwnProperty; 3914 function hashHas(key) { 3915 var data = this.__data__; 3916 return nativeCreate ? data[key] !== void 0 : hasOwnProperty.call(data, key); 3917 } 3918 module.exports = hashHas; 3919 } 3920 }); 3921 3922
vendor: 504 bytes, lines 3922-3937
3922// node_modules/lodash/_hashSet.js 3923 var require_hashSet = __commonJS({ 3924 "node_modules/lodash/_hashSet.js"(exports, module) { 3925 var nativeCreate = require_nativeCreate(); 3926 var HASH_UNDEFINED = "__lodash_hash_undefined__"; 3927 function hashSet(key, value) { 3928 var data = this.__data__; 3929 this.size += this.has(key) ? 0 : 1; 3930 data[key] = nativeCreate && value === void 0 ? HASH_UNDEFINED : value; 3931 return this; 3932 } 3933 module.exports = hashSet; 3934 } 3935 }); 3936 3937
vendor: 817 bytes, lines 3937-3962
3937// node_modules/lodash/_Hash.js 3938 var require_Hash = __commonJS({ 3939 "node_modules/lodash/_Hash.js"(exports, module) { 3940 var hashClear = require_hashClear(); 3941 var hashDelete = require_hashDelete(); 3942 var hashGet = require_hashGet(); 3943 var hashHas = require_hashHas(); 3944 var hashSet = require_hashSet(); 3945 function Hash(entries) { 3946 var index = -1, length = entries == null ? 0 : entries.length; 3947 this.clear(); 3948 while (++index < length) { 3949 var entry = entries[index]; 3950 this.set(entry[0], entry[1]); 3951 } 3952 } 3953 Hash.prototype.clear = hashClear; 3954 Hash.prototype["delete"] = hashDelete; 3955 Hash.prototype.get = hashGet; 3956 Hash.prototype.has = hashHas; 3957 Hash.prototype.set = hashSet; 3958 module.exports = Hash; 3959 } 3960 }); 3961 3962
vendor: 514 bytes, lines 3962-3980
3962// node_modules/lodash/_mapCacheClear.js 3963 var require_mapCacheClear = __commonJS({ 3964 "node_modules/lodash/_mapCacheClear.js"(exports, module) { 3965 var Hash = require_Hash(); 3966 var ListCache = require_ListCache(); 3967 var Map2 = require_Map(); 3968 function mapCacheClear() { 3969 this.size = 0; 3970 this.__data__ = { 3971 "hash": new Hash(), 3972 "map": new (Map2 || ListCache)(), 3973 "string": new Hash() 3974 }; 3975 } 3976 module.exports = mapCacheClear; 3977 } 3978 }); 3979 3980
vendor: 394 bytes, lines 3980-3991
3980// node_modules/lodash/_isKeyable.js 3981 var require_isKeyable = __commonJS({ 3982 "node_modules/lodash/_isKeyable.js"(exports, module) { 3983 function isKeyable(value) { 3984 var type = typeof value; 3985 return type == "string" || type == "number" || type == "symbol" || type == "boolean" ? value !== "__proto__" : value === null; 3986 } 3987 module.exports = isKeyable; 3988 } 3989 }); 3990 3991
vendor: 403 bytes, lines 3991-4003
3991// node_modules/lodash/_getMapData.js 3992 var require_getMapData = __commonJS({ 3993 "node_modules/lodash/_getMapData.js"(exports, module) { 3994 var isKeyable = require_isKeyable(); 3995 function getMapData(map, key) { 3996 var data = map.__data__; 3997 return isKeyable(key) ? data[typeof key == "string" ? "string" : "hash"] : data.map; 3998 } 3999 module.exports = getMapData; 4000 } 4001 }); 4002 4003
vendor: 413 bytes, lines 4003-4016
4003// node_modules/lodash/_mapCacheDelete.js 4004 var require_mapCacheDelete = __commonJS({ 4005 "node_modules/lodash/_mapCacheDelete.js"(exports, module) { 4006 var getMapData = require_getMapData(); 4007 function mapCacheDelete(key) { 4008 var result = getMapData(this, key)["delete"](key); 4009 this.size -= result ? 1 : 0; 4010 return result; 4011 } 4012 module.exports = mapCacheDelete; 4013 } 4014 }); 4015 4016
vendor: 326 bytes, lines 4016-4027
4016// node_modules/lodash/_mapCacheGet.js 4017 var require_mapCacheGet = __commonJS({ 4018 "node_modules/lodash/_mapCacheGet.js"(exports, module) { 4019 var getMapData = require_getMapData(); 4020 function mapCacheGet(key) { 4021 return getMapData(this, key).get(key); 4022 } 4023 module.exports = mapCacheGet; 4024 } 4025 }); 4026 4027
vendor: 326 bytes, lines 4027-4038
4027// node_modules/lodash/_mapCacheHas.js 4028 var require_mapCacheHas = __commonJS({ 4029 "node_modules/lodash/_mapCacheHas.js"(exports, module) { 4030 var getMapData = require_getMapData(); 4031 function mapCacheHas(key) { 4032 return getMapData(this, key).has(key); 4033 } 4034 module.exports = mapCacheHas; 4035 } 4036 }); 4037 4038
vendor: 447 bytes, lines 4038-4052
4038// node_modules/lodash/_mapCacheSet.js 4039 var require_mapCacheSet = __commonJS({ 4040 "node_modules/lodash/_mapCacheSet.js"(exports, module) { 4041 var getMapData = require_getMapData(); 4042 function mapCacheSet(key, value) { 4043 var data = getMapData(this, key), size2 = data.size; 4044 data.set(key, value); 4045 this.size += data.size == size2 ? 0 : 1; 4046 return this; 4047 } 4048 module.exports = mapCacheSet; 4049 } 4050 }); 4051 4052
vendor: 917 bytes, lines 4052-4077
4052// node_modules/lodash/_MapCache.js 4053 var require_MapCache = __commonJS({ 4054 "node_modules/lodash/_MapCache.js"(exports, module) { 4055 var mapCacheClear = require_mapCacheClear(); 4056 var mapCacheDelete = require_mapCacheDelete(); 4057 var mapCacheGet = require_mapCacheGet(); 4058 var mapCacheHas = require_mapCacheHas(); 4059 var mapCacheSet = require_mapCacheSet(); 4060 function MapCache(entries) { 4061 var index = -1, length = entries == null ? 0 : entries.length; 4062 this.clear(); 4063 while (++index < length) { 4064 var entry = entries[index]; 4065 this.set(entry[0], entry[1]); 4066 } 4067 } 4068 MapCache.prototype.clear = mapCacheClear; 4069 MapCache.prototype["delete"] = mapCacheDelete; 4070 MapCache.prototype.get = mapCacheGet; 4071 MapCache.prototype.has = mapCacheHas; 4072 MapCache.prototype.set = mapCacheSet; 4073 module.exports = MapCache; 4074 } 4075 }); 4076 4077
vendor: 808 bytes, lines 4077-4103
4077// node_modules/lodash/_stackSet.js 4078 var require_stackSet = __commonJS({ 4079 "node_modules/lodash/_stackSet.js"(exports, module) { 4080 var ListCache = require_ListCache(); 4081 var Map2 = require_Map(); 4082 var MapCache = require_MapCache(); 4083 var LARGE_ARRAY_SIZE = 200; 4084 function stackSet(key, value) { 4085 var data = this.__data__; 4086 if (data instanceof ListCache) { 4087 var pairs = data.__data__; 4088 if (!Map2 || pairs.length < LARGE_ARRAY_SIZE - 1) { 4089 pairs.push([key, value]); 4090 this.size = ++data.size; 4091 return this; 4092 } 4093 data = this.__data__ = new MapCache(pairs); 4094 } 4095 data.set(key, value); 4096 this.size = data.size; 4097 return this; 4098 } 4099 module.exports = stackSet; 4100 } 4101 }); 4102 4103
vendor: 759 bytes, lines 4103-4125
4103// node_modules/lodash/_Stack.js 4104 var require_Stack = __commonJS({ 4105 "node_modules/lodash/_Stack.js"(exports, module) { 4106 var ListCache = require_ListCache(); 4107 var stackClear = require_stackClear(); 4108 var stackDelete = require_stackDelete(); 4109 var stackGet = require_stackGet(); 4110 var stackHas = require_stackHas(); 4111 var stackSet = require_stackSet(); 4112 function Stack(entries) { 4113 var data = this.__data__ = new ListCache(entries); 4114 this.size = data.size; 4115 } 4116 Stack.prototype.clear = stackClear; 4117 Stack.prototype["delete"] = stackDelete; 4118 Stack.prototype.get = stackGet; 4119 Stack.prototype.has = stackHas; 4120 Stack.prototype.set = stackSet; 4121 module.exports = Stack; 4122 } 4123 }); 4124 4125
vendor: 363 bytes, lines 4125-4137
4125// node_modules/lodash/_setCacheAdd.js 4126 var require_setCacheAdd = __commonJS({ 4127 "node_modules/lodash/_setCacheAdd.js"(exports, module) { 4128 var HASH_UNDEFINED = "__lodash_hash_undefined__"; 4129 function setCacheAdd(value) { 4130 this.__data__.set(value, HASH_UNDEFINED); 4131 return this; 4132 } 4133 module.exports = setCacheAdd; 4134 } 4135 }); 4136 4137
vendor: 277 bytes, lines 4137-4147
4137// node_modules/lodash/_setCacheHas.js 4138 var require_setCacheHas = __commonJS({ 4139 "node_modules/lodash/_setCacheHas.js"(exports, module) { 4140 function setCacheHas(value) { 4141 return this.__data__.has(value); 4142 } 4143 module.exports = setCacheHas; 4144 } 4145 }); 4146 4147
vendor: 660 bytes, lines 4147-4166
4147// node_modules/lodash/_SetCache.js 4148 var require_SetCache = __commonJS({ 4149 "node_modules/lodash/_SetCache.js"(exports, module) { 4150 var MapCache = require_MapCache(); 4151 var setCacheAdd = require_setCacheAdd(); 4152 var setCacheHas = require_setCacheHas(); 4153 function SetCache(values) { 4154 var index = -1, length = values == null ? 0 : values.length; 4155 this.__data__ = new MapCache(); 4156 while (++index < length) { 4157 this.add(values[index]); 4158 } 4159 } 4160 SetCache.prototype.add = SetCache.prototype.push = setCacheAdd; 4161 SetCache.prototype.has = setCacheHas; 4162 module.exports = SetCache; 4163 } 4164 }); 4165 4166
vendor: 463 bytes, lines 4166-4182
4166// node_modules/lodash/_arraySome.js 4167 var require_arraySome = __commonJS({ 4168 "node_modules/lodash/_arraySome.js"(exports, module) { 4169 function arraySome(array, predicate) { 4170 var index = -1, length = array == null ? 0 : array.length; 4171 while (++index < length) { 4172 if (predicate(array[index], index, array)) { 4173 return true; 4174 } 4175 } 4176 return false; 4177 } 4178 module.exports = arraySome; 4179 } 4180 }); 4181 4182
vendor: 257 bytes, lines 4182-4192
4182// node_modules/lodash/_cacheHas.js 4183 var require_cacheHas = __commonJS({ 4184 "node_modules/lodash/_cacheHas.js"(exports, module) { 4185 function cacheHas(cache, key) { 4186 return cache.has(key); 4187 } 4188 module.exports = cacheHas; 4189 } 4190 }); 4191 4192
vendor: 2,169 bytes, lines 4192-4247
4192// node_modules/lodash/_equalArrays.js 4193 var require_equalArrays = __commonJS({ 4194 "node_modules/lodash/_equalArrays.js"(exports, module) { 4195 var SetCache = require_SetCache(); 4196 var arraySome = require_arraySome(); 4197 var cacheHas = require_cacheHas(); 4198 var COMPARE_PARTIAL_FLAG = 1; 4199 var COMPARE_UNORDERED_FLAG = 2; 4200 function equalArrays(array, other, bitmask, customizer, equalFunc, stack) { 4201 var isPartial = bitmask & COMPARE_PARTIAL_FLAG, arrLength = array.length, othLength = other.length; 4202 if (arrLength != othLength && !(isPartial && othLength > arrLength)) { 4203 return false; 4204 } 4205 var arrStacked = stack.get(array); 4206 var othStacked = stack.get(other); 4207 if (arrStacked && othStacked) { 4208 return arrStacked == other && othStacked == array; 4209 } 4210 var index = -1, result = true, seen = bitmask & COMPARE_UNORDERED_FLAG ? new SetCache() : void 0; 4211 stack.set(array, other); 4212 stack.set(other, array); 4213 while (++index < arrLength) { 4214 var arrValue = array[index], othValue = other[index]; 4215 if (customizer) { 4216 var compared = isPartial ? customizer(othValue, arrValue, index, other, array, stack) : customizer(arrValue, othValue, index, array, other, stack); 4217 } 4218 if (compared !== void 0) { 4219 if (compared) { 4220 continue; 4221 } 4222 result = false; 4223 break; 4224 } 4225 if (seen) { 4226 if (!arraySome(other, function(othValue2, othIndex) { 4227 if (!cacheHas(seen, othIndex) && (arrValue === othValue2 || equalFunc(arrValue, othValue2, bitmask, customizer, stack))) { 4228 return seen.push(othIndex); 4229 } 4230 })) { 4231 result = false; 4232 break; 4233 } 4234 } else if (!(arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) { 4235 result = false; 4236 break; 4237 } 4238 } 4239 stack["delete"](array); 4240 stack["delete"](other); 4241 return result; 4242 } 4243 module.exports = equalArrays; 4244 } 4245 }); 4246 4247
vendor: 263 bytes, lines 4247-4256
4247// node_modules/lodash/_Uint8Array.js 4248 var require_Uint8Array = __commonJS({ 4249 "node_modules/lodash/_Uint8Array.js"(exports, module) { 4250 var root = require_root(); 4251 var Uint8Array2 = root.Uint8Array; 4252 module.exports = Uint8Array2; 4253 } 4254 }); 4255 4256
vendor: 399 bytes, lines 4256-4270
4256// node_modules/lodash/_mapToArray.js 4257 var require_mapToArray = __commonJS({ 4258 "node_modules/lodash/_mapToArray.js"(exports, module) { 4259 function mapToArray(map) { 4260 var index = -1, result = Array(map.size); 4261 map.forEach(function(value, key) { 4262 result[++index] = [key, value]; 4263 }); 4264 return result; 4265 } 4266 module.exports = mapToArray; 4267 } 4268 }); 4269 4270
vendor: 390 bytes, lines 4270-4284
4270// node_modules/lodash/_setToArray.js 4271 var require_setToArray = __commonJS({ 4272 "node_modules/lodash/_setToArray.js"(exports, module) { 4273 function setToArray(set3) { 4274 var index = -1, result = Array(set3.size); 4275 set3.forEach(function(value) { 4276 result[++index] = value; 4277 }); 4278 return result; 4279 } 4280 module.exports = setToArray; 4281 } 4282 }); 4283 4284
vendor: 2,836 bytes, lines 4284-4358
4284// node_modules/lodash/_equalByTag.js 4285 var require_equalByTag = __commonJS({ 4286 "node_modules/lodash/_equalByTag.js"(exports, module) { 4287 var Symbol2 = require_Symbol(); 4288 var Uint8Array2 = require_Uint8Array(); 4289 var eq = require_eq(); 4290 var equalArrays = require_equalArrays(); 4291 var mapToArray = require_mapToArray(); 4292 var setToArray = require_setToArray(); 4293 var COMPARE_PARTIAL_FLAG = 1; 4294 var COMPARE_UNORDERED_FLAG = 2; 4295 var boolTag = "[object Boolean]"; 4296 var dateTag = "[object Date]"; 4297 var errorTag = "[object Error]"; 4298 var mapTag = "[object Map]"; 4299 var numberTag = "[object Number]"; 4300 var regexpTag = "[object RegExp]"; 4301 var setTag = "[object Set]"; 4302 var stringTag = "[object String]"; 4303 var symbolTag = "[object Symbol]"; 4304 var arrayBufferTag = "[object ArrayBuffer]"; 4305 var dataViewTag = "[object DataView]"; 4306 var symbolProto = Symbol2 ? Symbol2.prototype : void 0; 4307 var symbolValueOf = symbolProto ? symbolProto.valueOf : void 0; 4308 function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) { 4309 switch (tag) { 4310 case dataViewTag: 4311 if (object.byteLength != other.byteLength || object.byteOffset != other.byteOffset) { 4312 return false; 4313 } 4314 object = object.buffer; 4315 other = other.buffer; 4316 case arrayBufferTag: 4317 if (object.byteLength != other.byteLength || !equalFunc(new Uint8Array2(object), new Uint8Array2(other))) { 4318 return false; 4319 } 4320 return true; 4321 case boolTag: 4322 case dateTag: 4323 case numberTag: 4324 return eq(+object, +other); 4325 case errorTag: 4326 return object.name == other.name && object.message == other.message; 4327 case regexpTag: 4328 case stringTag: 4329 return object == other + ""; 4330 case mapTag: 4331 var convert = mapToArray; 4332 case setTag: 4333 var isPartial = bitmask & COMPARE_PARTIAL_FLAG; 4334 convert || (convert = setToArray); 4335 if (object.size != other.size && !isPartial) { 4336 return false; 4337 } 4338 var stacked = stack.get(object); 4339 if (stacked) { 4340 return stacked == other; 4341 } 4342 bitmask |= COMPARE_UNORDERED_FLAG; 4343 stack.set(object, other); 4344 var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack); 4345 stack["delete"](object); 4346 return result; 4347 case symbolTag: 4348 if (symbolValueOf) { 4349 return symbolValueOf.call(object) == symbolValueOf.call(other); 4350 } 4351 } 4352 return false; 4353 } 4354 module.exports = equalByTag; 4355 } 4356 }); 4357 4358
vendor: 421 bytes, lines 4358-4372
4358// node_modules/lodash/_arrayPush.js 4359 var require_arrayPush = __commonJS({ 4360 "node_modules/lodash/_arrayPush.js"(exports, module) { 4361 function arrayPush(array, values) { 4362 var index = -1, length = values.length, offset = array.length; 4363 while (++index < length) { 4364 array[offset + index] = values[index]; 4365 } 4366 return array; 4367 } 4368 module.exports = arrayPush; 4369 } 4370 }); 4371 4372
vendor: 209 bytes, lines 4372-4380
4372// node_modules/lodash/isArray.js 4373 var require_isArray = __commonJS({ 4374 "node_modules/lodash/isArray.js"(exports, module) { 4375 var isArray = Array.isArray; 4376 module.exports = isArray; 4377 } 4378 }); 4379 4380
vendor: 478 bytes, lines 4380-4393
4380// node_modules/lodash/_baseGetAllKeys.js 4381 var require_baseGetAllKeys = __commonJS({ 4382 "node_modules/lodash/_baseGetAllKeys.js"(exports, module) { 4383 var arrayPush = require_arrayPush(); 4384 var isArray = require_isArray(); 4385 function baseGetAllKeys(object, keysFunc, symbolsFunc) { 4386 var result = keysFunc(object); 4387 return isArray(object) ? result : arrayPush(result, symbolsFunc(object)); 4388 } 4389 module.exports = baseGetAllKeys; 4390 } 4391 }); 4392 4393
vendor: 545 bytes, lines 4393-4410
4393// node_modules/lodash/_arrayFilter.js 4394 var require_arrayFilter = __commonJS({ 4395 "node_modules/lodash/_arrayFilter.js"(exports, module) { 4396 function arrayFilter(array, predicate) { 4397 var index = -1, length = array == null ? 0 : array.length, resIndex = 0, result = []; 4398 while (++index < length) { 4399 var value = array[index]; 4400 if (predicate(value, index, array)) { 4401 result[resIndex++] = value; 4402 } 4403 } 4404 return result; 4405 } 4406 module.exports = arrayFilter; 4407 } 4408 }); 4409 4410
vendor: 238 bytes, lines 4410-4420
4410// node_modules/lodash/stubArray.js 4411 var require_stubArray = __commonJS({ 4412 "node_modules/lodash/stubArray.js"(exports, module) { 4413 function stubArray() { 4414 return []; 4415 } 4416 module.exports = stubArray; 4417 } 4418 }); 4419 4420
vendor: 767 bytes, lines 4420-4441
4420// node_modules/lodash/_getSymbols.js 4421 var require_getSymbols = __commonJS({ 4422 "node_modules/lodash/_getSymbols.js"(exports, module) { 4423 var arrayFilter = require_arrayFilter(); 4424 var stubArray = require_stubArray(); 4425 var objectProto = Object.prototype; 4426 var propertyIsEnumerable = objectProto.propertyIsEnumerable; 4427 var nativeGetSymbols = Object.getOwnPropertySymbols; 4428 var getSymbols = !nativeGetSymbols ? stubArray : function(object) { 4429 if (object == null) { 4430 return []; 4431 } 4432 object = Object(object); 4433 return arrayFilter(nativeGetSymbols(object), function(symbol) { 4434 return propertyIsEnumerable.call(object, symbol); 4435 }); 4436 }; 4437 module.exports = getSymbols; 4438 } 4439 }); 4440 4441
vendor: 381 bytes, lines 4441-4455
4441// node_modules/lodash/_baseTimes.js 4442 var require_baseTimes = __commonJS({ 4443 "node_modules/lodash/_baseTimes.js"(exports, module) { 4444 function baseTimes(n, iteratee) { 4445 var index = -1, result = Array(n); 4446 while (++index < n) { 4447 result[index] = iteratee(index); 4448 } 4449 return result; 4450 } 4451 module.exports = baseTimes; 4452 } 4453 }); 4454 4455
vendor: 460 bytes, lines 4455-4468
4455// node_modules/lodash/_baseIsArguments.js 4456 var require_baseIsArguments = __commonJS({ 4457 "node_modules/lodash/_baseIsArguments.js"(exports, module) { 4458 var baseGetTag = require_baseGetTag(); 4459 var isObjectLike = require_isObjectLike(); 4460 var argsTag = "[object Arguments]"; 4461 function baseIsArguments(value) { 4462 return isObjectLike(value) && baseGetTag(value) == argsTag; 4463 } 4464 module.exports = baseIsArguments; 4465 } 4466 }); 4467 4468
vendor: 718 bytes, lines 4468-4485
4468// node_modules/lodash/isArguments.js 4469 var require_isArguments = __commonJS({ 4470 "node_modules/lodash/isArguments.js"(exports, module) { 4471 var baseIsArguments = require_baseIsArguments(); 4472 var isObjectLike = require_isObjectLike(); 4473 var objectProto = Object.prototype; 4474 var hasOwnProperty = objectProto.hasOwnProperty; 4475 var propertyIsEnumerable = objectProto.propertyIsEnumerable; 4476 var isArguments = baseIsArguments(function() { 4477 return arguments; 4478 }()) ? baseIsArguments : function(value) { 4479 return isObjectLike(value) && hasOwnProperty.call(value, "callee") && !propertyIsEnumerable.call(value, "callee"); 4480 }; 4481 module.exports = isArguments; 4482 } 4483 }); 4484 4485
vendor: 241 bytes, lines 4485-4495
4485// node_modules/lodash/stubFalse.js 4486 var require_stubFalse = __commonJS({ 4487 "node_modules/lodash/stubFalse.js"(exports, module) { 4488 function stubFalse() { 4489 return false; 4490 } 4491 module.exports = stubFalse; 4492 } 4493 }); 4494 4495
vendor: 702 bytes, lines 4495-4510
4495// node_modules/lodash/isBuffer.js 4496 var require_isBuffer = __commonJS({ 4497 "node_modules/lodash/isBuffer.js"(exports, module) { 4498 var root = require_root(); 4499 var stubFalse = require_stubFalse(); 4500 var freeExports = typeof exports == "object" && exports && !exports.nodeType && exports; 4501 var freeModule = freeExports && typeof module == "object" && module && !module.nodeType && module; 4502 var moduleExports = freeModule && freeModule.exports === freeExports; 4503 var Buffer2 = moduleExports ? root.Buffer : void 0; 4504 var nativeIsBuffer = Buffer2 ? Buffer2.isBuffer : void 0; 4505 var isBuffer = nativeIsBuffer || stubFalse; 4506 module.exports = isBuffer; 4507 } 4508 }); 4509 4510
vendor: 549 bytes, lines 4510-4524
4510// node_modules/lodash/_isIndex.js 4511 var require_isIndex = __commonJS({ 4512 "node_modules/lodash/_isIndex.js"(exports, module) { 4513 var MAX_SAFE_INTEGER = 9007199254740991; 4514 var reIsUint = /^(?:0|[1-9]\d*)$/; 4515 function isIndex(value, length) { 4516 var type = typeof value; 4517 length = length == null ? MAX_SAFE_INTEGER : length; 4518 return !!length && (type == "number" || type != "symbol" && reIsUint.test(value)) && (value > -1 && value % 1 == 0 && value < length); 4519 } 4520 module.exports = isIndex; 4521 } 4522 }); 4523 4524
vendor: 368 bytes, lines 4524-4535
4524// node_modules/lodash/isLength.js 4525 var require_isLength = __commonJS({ 4526 "node_modules/lodash/isLength.js"(exports, module) { 4527 var MAX_SAFE_INTEGER = 9007199254740991; 4528 function isLength(value) { 4529 return typeof value == "number" && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; 4530 } 4531 module.exports = isLength; 4532 } 4533 }); 4534 4535
vendor: 2,251 bytes, lines 4535-4575
4535// node_modules/lodash/_baseIsTypedArray.js 4536 var require_baseIsTypedArray = __commonJS({ 4537 "node_modules/lodash/_baseIsTypedArray.js"(exports, module) { 4538 var baseGetTag = require_baseGetTag(); 4539 var isLength = require_isLength(); 4540 var isObjectLike = require_isObjectLike(); 4541 var argsTag = "[object Arguments]"; 4542 var arrayTag = "[object Array]"; 4543 var boolTag = "[object Boolean]"; 4544 var dateTag = "[object Date]"; 4545 var errorTag = "[object Error]"; 4546 var funcTag = "[object Function]"; 4547 var mapTag = "[object Map]"; 4548 var numberTag = "[object Number]"; 4549 var objectTag = "[object Object]"; 4550 var regexpTag = "[object RegExp]"; 4551 var setTag = "[object Set]"; 4552 var stringTag = "[object String]"; 4553 var weakMapTag = "[object WeakMap]"; 4554 var arrayBufferTag = "[object ArrayBuffer]"; 4555 var dataViewTag = "[object DataView]"; 4556 var float32Tag = "[object Float32Array]"; 4557 var float64Tag = "[object Float64Array]"; 4558 var int8Tag = "[object Int8Array]"; 4559 var int16Tag = "[object Int16Array]"; 4560 var int32Tag = "[object Int32Array]"; 4561 var uint8Tag = "[object Uint8Array]"; 4562 var uint8ClampedTag = "[object Uint8ClampedArray]"; 4563 var uint16Tag = "[object Uint16Array]"; 4564 var uint32Tag = "[object Uint32Array]"; 4565 var typedArrayTags = {}; 4566 typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = typedArrayTags[uint32Tag] = true; 4567 typedArrayTags[argsTag] = typedArrayTags[arrayTag] = typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] = typedArrayTags[dataViewTag] = typedArrayTags[dateTag] = typedArrayTags[errorTag] = typedArrayTags[funcTag] = typedArrayTags[mapTag] = typedArrayTags[numberTag] = typedArrayTags[objectTag] = typedArrayTags[regexpTag] = typedArrayTags[setTag] = typedArrayTags[stringTag] = typedArrayTags[weakMapTag] = false; 4568 function baseIsTypedArray(value) { 4569 return isObjectLike(value) && isLength(value.length) && !!typedArrayTags[baseGetTag(value)]; 4570 } 4571 module.exports = baseIsTypedArray; 4572 } 4573 }); 4574 4575
vendor: 299 bytes, lines 4575-4587
4575// node_modules/lodash/_baseUnary.js 4576 var require_baseUnary = __commonJS({ 4577 "node_modules/lodash/_baseUnary.js"(exports, module) { 4578 function baseUnary(func) { 4579 return function(value) { 4580 return func(value); 4581 }; 4582 } 4583 module.exports = baseUnary; 4584 } 4585 }); 4586 4587
vendor: 890 bytes, lines 4587-4609
4587// node_modules/lodash/_nodeUtil.js 4588 var require_nodeUtil = __commonJS({ 4589 "node_modules/lodash/_nodeUtil.js"(exports, module) { 4590 var freeGlobal = require_freeGlobal(); 4591 var freeExports = typeof exports == "object" && exports && !exports.nodeType && exports; 4592 var freeModule = freeExports && typeof module == "object" && module && !module.nodeType && module; 4593 var moduleExports = freeModule && freeModule.exports === freeExports; 4594 var freeProcess = moduleExports && freeGlobal.process; 4595 var nodeUtil = function() { 4596 try { 4597 var types = freeModule && freeModule.require && freeModule.require("util").types; 4598 if (types) { 4599 return types; 4600 } 4601 return freeProcess && freeProcess.binding && freeProcess.binding("util"); 4602 } catch (e) { 4603 } 4604 }(); 4605 module.exports = nodeUtil; 4606 } 4607 }); 4608 4609
vendor: 491 bytes, lines 4609-4621
4609// node_modules/lodash/isTypedArray.js 4610 var require_isTypedArray = __commonJS({ 4611 "node_modules/lodash/isTypedArray.js"(exports, module) { 4612 var baseIsTypedArray = require_baseIsTypedArray(); 4613 var baseUnary = require_baseUnary(); 4614 var nodeUtil = require_nodeUtil(); 4615 var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray; 4616 var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray; 4617 module.exports = isTypedArray; 4618 } 4619 }); 4620 4621
vendor: 1,550 bytes, lines 4621-4649
4621// node_modules/lodash/_arrayLikeKeys.js 4622 var require_arrayLikeKeys = __commonJS({ 4623 "node_modules/lodash/_arrayLikeKeys.js"(exports, module) { 4624 var baseTimes = require_baseTimes(); 4625 var isArguments = require_isArguments(); 4626 var isArray = require_isArray(); 4627 var isBuffer = require_isBuffer(); 4628 var isIndex = require_isIndex(); 4629 var isTypedArray = require_isTypedArray(); 4630 var objectProto = Object.prototype; 4631 var hasOwnProperty = objectProto.hasOwnProperty; 4632 function arrayLikeKeys(value, inherited) { 4633 var isArr = isArray(value), isArg = !isArr && isArguments(value), isBuff = !isArr && !isArg && isBuffer(value), isType = !isArr && !isArg && !isBuff && isTypedArray(value), skipIndexes = isArr || isArg || isBuff || isType, result = skipIndexes ? baseTimes(value.length, String) : [], length = result.length; 4634 for (var key in value) { 4635 if ((inherited || hasOwnProperty.call(value, key)) && !(skipIndexes && // Safari 9 has enumerable `arguments.length` in strict mode. 4636 (key == "length" || // Node.js 0.10 has enumerable non-index properties on buffers. 4637 isBuff && (key == "offset" || key == "parent") || // PhantomJS 2 has enumerable non-index properties on typed arrays. 4638 isType && (key == "buffer" || key == "byteLength" || key == "byteOffset") || // Skip index properties. 4639 isIndex(key, length)))) { 4640 result.push(key); 4641 } 4642 } 4643 return result; 4644 } 4645 module.exports = arrayLikeKeys; 4646 } 4647 }); 4648 4649
vendor: 425 bytes, lines 4649-4661
4649// node_modules/lodash/_isPrototype.js 4650 var require_isPrototype = __commonJS({ 4651 "node_modules/lodash/_isPrototype.js"(exports, module) { 4652 var objectProto = Object.prototype; 4653 function isPrototype(value) { 4654 var Ctor = value && value.constructor, proto = typeof Ctor == "function" && Ctor.prototype || objectProto; 4655 return value === proto; 4656 } 4657 module.exports = isPrototype; 4658 } 4659 }); 4660 4661
vendor: 280 bytes, lines 4661-4670
4661// node_modules/lodash/_nativeKeys.js 4662 var require_nativeKeys = __commonJS({ 4663 "node_modules/lodash/_nativeKeys.js"(exports, module) { 4664 var overArg = require_overArg(); 4665 var nativeKeys = overArg(Object.keys, Object); 4666 module.exports = nativeKeys; 4667 } 4668 }); 4669 4670
vendor: 710 bytes, lines 4670-4693
4670// node_modules/lodash/_baseKeys.js 4671 var require_baseKeys = __commonJS({ 4672 "node_modules/lodash/_baseKeys.js"(exports, module) { 4673 var isPrototype = require_isPrototype(); 4674 var nativeKeys = require_nativeKeys(); 4675 var objectProto = Object.prototype; 4676 var hasOwnProperty = objectProto.hasOwnProperty; 4677 function baseKeys(object) { 4678 if (!isPrototype(object)) { 4679 return nativeKeys(object); 4680 } 4681 var result = []; 4682 for (var key in Object(object)) { 4683 if (hasOwnProperty.call(object, key) && key != "constructor") { 4684 result.push(key); 4685 } 4686 } 4687 return result; 4688 } 4689 module.exports = baseKeys; 4690 } 4691 }); 4692 4693
vendor: 398 bytes, lines 4693-4705
4693// node_modules/lodash/isArrayLike.js 4694 var require_isArrayLike = __commonJS({ 4695 "node_modules/lodash/isArrayLike.js"(exports, module) { 4696 var isFunction = require_isFunction(); 4697 var isLength = require_isLength(); 4698 function isArrayLike(value) { 4699 return value != null && isLength(value.length) && !isFunction(value); 4700 } 4701 module.exports = isArrayLike; 4702 } 4703 }); 4704 4705
vendor: 418 bytes, lines 4705-4718
4705// node_modules/lodash/keys.js 4706 var require_keys = __commonJS({ 4707 "node_modules/lodash/keys.js"(exports, module) { 4708 var arrayLikeKeys = require_arrayLikeKeys(); 4709 var baseKeys = require_baseKeys(); 4710 var isArrayLike = require_isArrayLike(); 4711 function keys(object) { 4712 return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object); 4713 } 4714 module.exports = keys; 4715 } 4716 }); 4717 4718
vendor: 420 bytes, lines 4718-4731
4718// node_modules/lodash/_getAllKeys.js 4719 var require_getAllKeys = __commonJS({ 4720 "node_modules/lodash/_getAllKeys.js"(exports, module) { 4721 var baseGetAllKeys = require_baseGetAllKeys(); 4722 var getSymbols = require_getSymbols(); 4723 var keys = require_keys(); 4724 function getAllKeys(object) { 4725 return baseGetAllKeys(object, keys, getSymbols); 4726 } 4727 module.exports = getAllKeys; 4728 } 4729 }); 4730 4731
vendor: 2,332 bytes, lines 4731-4785
4731// node_modules/lodash/_equalObjects.js 4732 var require_equalObjects = __commonJS({ 4733 "node_modules/lodash/_equalObjects.js"(exports, module) { 4734 var getAllKeys = require_getAllKeys(); 4735 var COMPARE_PARTIAL_FLAG = 1; 4736 var objectProto = Object.prototype; 4737 var hasOwnProperty = objectProto.hasOwnProperty; 4738 function equalObjects(object, other, bitmask, customizer, equalFunc, stack) { 4739 var isPartial = bitmask & COMPARE_PARTIAL_FLAG, objProps = getAllKeys(object), objLength = objProps.length, othProps = getAllKeys(other), othLength = othProps.length; 4740 if (objLength != othLength && !isPartial) { 4741 return false; 4742 } 4743 var index = objLength; 4744 while (index--) { 4745 var key = objProps[index]; 4746 if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) { 4747 return false; 4748 } 4749 } 4750 var objStacked = stack.get(object); 4751 var othStacked = stack.get(other); 4752 if (objStacked && othStacked) { 4753 return objStacked == other && othStacked == object; 4754 } 4755 var result = true; 4756 stack.set(object, other); 4757 stack.set(other, object); 4758 var skipCtor = isPartial; 4759 while (++index < objLength) { 4760 key = objProps[index]; 4761 var objValue = object[key], othValue = other[key]; 4762 if (customizer) { 4763 var compared = isPartial ? customizer(othValue, objValue, key, other, object, stack) : customizer(objValue, othValue, key, object, other, stack); 4764 } 4765 if (!(compared === void 0 ? objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack) : compared)) { 4766 result = false; 4767 break; 4768 } 4769 skipCtor || (skipCtor = key == "constructor"); 4770 } 4771 if (result && !skipCtor) { 4772 var objCtor = object.constructor, othCtor = other.constructor; 4773 if (objCtor != othCtor && ("constructor" in object && "constructor" in other) && !(typeof objCtor == "function" && objCtor instanceof objCtor && typeof othCtor == "function" && othCtor instanceof othCtor)) { 4774 result = false; 4775 } 4776 } 4777 stack["delete"](object); 4778 stack["delete"](other); 4779 return result; 4780 } 4781 module.exports = equalObjects; 4782 } 4783 }); 4784 4785
vendor: 306 bytes, lines 4785-4795
4785// node_modules/lodash/_DataView.js 4786 var require_DataView = __commonJS({ 4787 "node_modules/lodash/_DataView.js"(exports, module) { 4788 var getNative = require_getNative(); 4789 var root = require_root(); 4790 var DataView = getNative(root, "DataView"); 4791 module.exports = DataView; 4792 } 4793 }); 4794 4795
vendor: 302 bytes, lines 4795-4805
4795// node_modules/lodash/_Promise.js 4796 var require_Promise = __commonJS({ 4797 "node_modules/lodash/_Promise.js"(exports, module) { 4798 var getNative = require_getNative(); 4799 var root = require_root(); 4800 var Promise2 = getNative(root, "Promise"); 4801 module.exports = Promise2; 4802 } 4803 }); 4804 4805
vendor: 276 bytes, lines 4805-4815
4805// node_modules/lodash/_Set.js 4806 var require_Set = __commonJS({ 4807 "node_modules/lodash/_Set.js"(exports, module) { 4808 var getNative = require_getNative(); 4809 var root = require_root(); 4810 var Set = getNative(root, "Set"); 4811 module.exports = Set; 4812 } 4813 }); 4814 4815
vendor: 302 bytes, lines 4815-4825
4815// node_modules/lodash/_WeakMap.js 4816 var require_WeakMap = __commonJS({ 4817 "node_modules/lodash/_WeakMap.js"(exports, module) { 4818 var getNative = require_getNative(); 4819 var root = require_root(); 4820 var WeakMap2 = getNative(root, "WeakMap"); 4821 module.exports = WeakMap2; 4822 } 4823 }); 4824 4825
vendor: 1,874 bytes, lines 4825-4871
4825// node_modules/lodash/_getTag.js 4826 var require_getTag = __commonJS({ 4827 "node_modules/lodash/_getTag.js"(exports, module) { 4828 var DataView = require_DataView(); 4829 var Map2 = require_Map(); 4830 var Promise2 = require_Promise(); 4831 var Set = require_Set(); 4832 var WeakMap2 = require_WeakMap(); 4833 var baseGetTag = require_baseGetTag(); 4834 var toSource = require_toSource(); 4835 var mapTag = "[object Map]"; 4836 var objectTag = "[object Object]"; 4837 var promiseTag = "[object Promise]"; 4838 var setTag = "[object Set]"; 4839 var weakMapTag = "[object WeakMap]"; 4840 var dataViewTag = "[object DataView]"; 4841 var dataViewCtorString = toSource(DataView); 4842 var mapCtorString = toSource(Map2); 4843 var promiseCtorString = toSource(Promise2); 4844 var setCtorString = toSource(Set); 4845 var weakMapCtorString = toSource(WeakMap2); 4846 var getTag = baseGetTag; 4847 if (DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag || Map2 && getTag(new Map2()) != mapTag || Promise2 && getTag(Promise2.resolve()) != promiseTag || Set && getTag(new Set()) != setTag || WeakMap2 && getTag(new WeakMap2()) != weakMapTag) { 4848 getTag = function(value) { 4849 var result = baseGetTag(value), Ctor = result == objectTag ? value.constructor : void 0, ctorString = Ctor ? toSource(Ctor) : ""; 4850 if (ctorString) { 4851 switch (ctorString) { 4852 case dataViewCtorString: 4853 return dataViewTag; 4854 case mapCtorString: 4855 return mapTag; 4856 case promiseCtorString: 4857 return promiseTag; 4858 case setCtorString: 4859 return setTag; 4860 case weakMapCtorString: 4861 return weakMapTag; 4862 } 4863 } 4864 return result; 4865 }; 4866 } 4867 module.exports = getTag; 4868 } 4869 }); 4870 4871
vendor: 2,455 bytes, lines 4871-4922
4871// node_modules/lodash/_baseIsEqualDeep.js 4872 var require_baseIsEqualDeep = __commonJS({ 4873 "node_modules/lodash/_baseIsEqualDeep.js"(exports, module) { 4874 var Stack = require_Stack(); 4875 var equalArrays = require_equalArrays(); 4876 var equalByTag = require_equalByTag(); 4877 var equalObjects = require_equalObjects(); 4878 var getTag = require_getTag(); 4879 var isArray = require_isArray(); 4880 var isBuffer = require_isBuffer(); 4881 var isTypedArray = require_isTypedArray(); 4882 var COMPARE_PARTIAL_FLAG = 1; 4883 var argsTag = "[object Arguments]"; 4884 var arrayTag = "[object Array]"; 4885 var objectTag = "[object Object]"; 4886 var objectProto = Object.prototype; 4887 var hasOwnProperty = objectProto.hasOwnProperty; 4888 function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) { 4889 var objIsArr = isArray(object), othIsArr = isArray(other), objTag = objIsArr ? arrayTag : getTag(object), othTag = othIsArr ? arrayTag : getTag(other); 4890 objTag = objTag == argsTag ? objectTag : objTag; 4891 othTag = othTag == argsTag ? objectTag : othTag; 4892 var objIsObj = objTag == objectTag, othIsObj = othTag == objectTag, isSameTag = objTag == othTag; 4893 if (isSameTag && isBuffer(object)) { 4894 if (!isBuffer(other)) { 4895 return false; 4896 } 4897 objIsArr = true; 4898 objIsObj = false; 4899 } 4900 if (isSameTag && !objIsObj) { 4901 stack || (stack = new Stack()); 4902 return objIsArr || isTypedArray(object) ? equalArrays(object, other, bitmask, customizer, equalFunc, stack) : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack); 4903 } 4904 if (!(bitmask & COMPARE_PARTIAL_FLAG)) { 4905 var objIsWrapped = objIsObj && hasOwnProperty.call(object, "__wrapped__"), othIsWrapped = othIsObj && hasOwnProperty.call(other, "__wrapped__"); 4906 if (objIsWrapped || othIsWrapped) { 4907 var objUnwrapped = objIsWrapped ? object.value() : object, othUnwrapped = othIsWrapped ? other.value() : other; 4908 stack || (stack = new Stack()); 4909 return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack); 4910 } 4911 } 4912 if (!isSameTag) { 4913 return false; 4914 } 4915 stack || (stack = new Stack()); 4916 return equalObjects(object, other, bitmask, customizer, equalFunc, stack); 4917 } 4918 module.exports = baseIsEqualDeep; 4919 } 4920 }); 4921 4922
vendor: 683 bytes, lines 4922-4940
4922// node_modules/lodash/_baseIsEqual.js 4923 var require_baseIsEqual = __commonJS({ 4924 "node_modules/lodash/_baseIsEqual.js"(exports, module) { 4925 var baseIsEqualDeep = require_baseIsEqualDeep(); 4926 var isObjectLike = require_isObjectLike(); 4927 function baseIsEqual(value, other, bitmask, customizer, stack) { 4928 if (value === other) { 4929 return true; 4930 } 4931 if (value == null || other == null || !isObjectLike(value) && !isObjectLike(other)) { 4932 return value !== value && other !== other; 4933 } 4934 return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack); 4935 } 4936 module.exports = baseIsEqual; 4937 } 4938 }); 4939 4940
vendor: 1,518 bytes, lines 4940-4982
4940// node_modules/lodash/_baseIsMatch.js 4941 var require_baseIsMatch = __commonJS({ 4942 "node_modules/lodash/_baseIsMatch.js"(exports, module) { 4943 var Stack = require_Stack(); 4944 var baseIsEqual = require_baseIsEqual(); 4945 var COMPARE_PARTIAL_FLAG = 1; 4946 var COMPARE_UNORDERED_FLAG = 2; 4947 function baseIsMatch(object, source, matchData, customizer) { 4948 var index = matchData.length, length = index, noCustomizer = !customizer; 4949 if (object == null) { 4950 return !length; 4951 } 4952 object = Object(object); 4953 while (index--) { 4954 var data = matchData[index]; 4955 if (noCustomizer && data[2] ? data[1] !== object[data[0]] : !(data[0] in object)) { 4956 return false; 4957 } 4958 } 4959 while (++index < length) { 4960 data = matchData[index]; 4961 var key = data[0], objValue = object[key], srcValue = data[1]; 4962 if (noCustomizer && data[2]) { 4963 if (objValue === void 0 && !(key in object)) { 4964 return false; 4965 } 4966 } else { 4967 var stack = new Stack(); 4968 if (customizer) { 4969 var result = customizer(objValue, srcValue, key, object, source, stack); 4970 } 4971 if (!(result === void 0 ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack) : result)) { 4972 return false; 4973 } 4974 } 4975 } 4976 return true; 4977 } 4978 module.exports = baseIsMatch; 4979 } 4980 }); 4981 4982
vendor: 364 bytes, lines 4982-4993
4982// node_modules/lodash/_isStrictComparable.js 4983 var require_isStrictComparable = __commonJS({ 4984 "node_modules/lodash/_isStrictComparable.js"(exports, module) { 4985 var isObject = require_isObject(); 4986 function isStrictComparable(value) { 4987 return value === value && !isObject(value); 4988 } 4989 module.exports = isStrictComparable; 4990 } 4991 }); 4992 4993
vendor: 580 bytes, lines 4993-5010
4993// node_modules/lodash/_getMatchData.js 4994 var require_getMatchData = __commonJS({ 4995 "node_modules/lodash/_getMatchData.js"(exports, module) { 4996 var isStrictComparable = require_isStrictComparable(); 4997 var keys = require_keys(); 4998 function getMatchData(object) { 4999 var result = keys(object), length = result.length; 5000 while (length--) { 5001 var key = result[length], value = object[key]; 5002 result[length] = [key, value, isStrictComparable(value)]; 5003 } 5004 return result; 5005 } 5006 module.exports = getMatchData; 5007 } 5008 }); 5009 5010
vendor: 512 bytes, lines 5010-5025
5010// node_modules/lodash/_matchesStrictComparable.js 5011 var require_matchesStrictComparable = __commonJS({ 5012 "node_modules/lodash/_matchesStrictComparable.js"(exports, module) { 5013 function matchesStrictComparable(key, srcValue) { 5014 return function(object) { 5015 if (object == null) { 5016 return false; 5017 } 5018 return object[key] === srcValue && (srcValue !== void 0 || key in Object(object)); 5019 }; 5020 } 5021 module.exports = matchesStrictComparable; 5022 } 5023 }); 5024 5025
vendor: 715 bytes, lines 5025-5044
5025// node_modules/lodash/_baseMatches.js 5026 var require_baseMatches = __commonJS({ 5027 "node_modules/lodash/_baseMatches.js"(exports, module) { 5028 var baseIsMatch = require_baseIsMatch(); 5029 var getMatchData = require_getMatchData(); 5030 var matchesStrictComparable = require_matchesStrictComparable(); 5031 function baseMatches(source) { 5032 var matchData = getMatchData(source); 5033 if (matchData.length == 1 && matchData[0][2]) { 5034 return matchesStrictComparable(matchData[0][0], matchData[0][1]); 5035 } 5036 return function(object) { 5037 return object === source || baseIsMatch(object, source, matchData); 5038 }; 5039 } 5040 module.exports = baseMatches; 5041 } 5042 }); 5043 5044
vendor: 452 bytes, lines 5044-5057
5044// node_modules/lodash/isSymbol.js 5045 var require_isSymbol = __commonJS({ 5046 "node_modules/lodash/isSymbol.js"(exports, module) { 5047 var baseGetTag = require_baseGetTag(); 5048 var isObjectLike = require_isObjectLike(); 5049 var symbolTag = "[object Symbol]"; 5050 function isSymbol(value) { 5051 return typeof value == "symbol" || isObjectLike(value) && baseGetTag(value) == symbolTag; 5052 } 5053 module.exports = isSymbol; 5054 } 5055 }); 5056 5057
vendor: 761 bytes, lines 5057-5078
5057// node_modules/lodash/_isKey.js 5058 var require_isKey = __commonJS({ 5059 "node_modules/lodash/_isKey.js"(exports, module) { 5060 var isArray = require_isArray(); 5061 var isSymbol = require_isSymbol(); 5062 var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/; 5063 var reIsPlainProp = /^\w*$/; 5064 function isKey(value, object) { 5065 if (isArray(value)) { 5066 return false; 5067 } 5068 var type = typeof value; 5069 if (type == "number" || type == "symbol" || type == "boolean" || value == null || isSymbol(value)) { 5070 return true; 5071 } 5072 return reIsPlainProp.test(value) || !reIsDeepProp.test(value) || object != null && value in Object(object); 5073 } 5074 module.exports = isKey; 5075 } 5076 }); 5077 5078
vendor: 953 bytes, lines 5078-5104
5078// node_modules/lodash/memoize.js 5079 var require_memoize = __commonJS({ 5080 "node_modules/lodash/memoize.js"(exports, module) { 5081 var MapCache = require_MapCache(); 5082 var FUNC_ERROR_TEXT = "Expected a function"; 5083 function memoize(func, resolver) { 5084 if (typeof func != "function" || resolver != null && typeof resolver != "function") { 5085 throw new TypeError(FUNC_ERROR_TEXT); 5086 } 5087 var memoized = function() { 5088 var args = arguments, key = resolver ? resolver.apply(this, args) : args[0], cache = memoized.cache; 5089 if (cache.has(key)) { 5090 return cache.get(key); 5091 } 5092 var result = func.apply(this, args); 5093 memoized.cache = cache.set(key, result) || cache; 5094 return result; 5095 }; 5096 memoized.cache = new (memoize.Cache || MapCache)(); 5097 return memoized; 5098 } 5099 memoize.Cache = MapCache; 5100 module.exports = memoize; 5101 } 5102 }); 5103 5104
vendor: 548 bytes, lines 5104-5123
5104// node_modules/lodash/_memoizeCapped.js 5105 var require_memoizeCapped = __commonJS({ 5106 "node_modules/lodash/_memoizeCapped.js"(exports, module) { 5107 var memoize = require_memoize(); 5108 var MAX_MEMOIZE_SIZE = 500; 5109 function memoizeCapped(func) { 5110 var result = memoize(func, function(key) { 5111 if (cache.size === MAX_MEMOIZE_SIZE) { 5112 cache.clear(); 5113 } 5114 return key; 5115 }); 5116 var cache = result.cache; 5117 return result; 5118 } 5119 module.exports = memoizeCapped; 5120 } 5121 }); 5122 5123
vendor: 782 bytes, lines 5123-5143
5123// node_modules/lodash/_stringToPath.js 5124 var require_stringToPath = __commonJS({ 5125 "node_modules/lodash/_stringToPath.js"(exports, module) { 5126 var memoizeCapped = require_memoizeCapped(); 5127 var rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; 5128 var reEscapeChar = /\\(\\)?/g; 5129 var stringToPath = memoizeCapped(function(string) { 5130 var result = []; 5131 if (string.charCodeAt(0) === 46) { 5132 result.push(""); 5133 } 5134 string.replace(rePropName, function(match, number, quote, subString) { 5135 result.push(quote ? subString.replace(reEscapeChar, "$1") : number || match); 5136 }); 5137 return result; 5138 }); 5139 module.exports = stringToPath; 5140 } 5141 }); 5142 5143
vendor: 454 bytes, lines 5143-5157
5143// node_modules/lodash/_arrayMap.js 5144 var require_arrayMap = __commonJS({ 5145 "node_modules/lodash/_arrayMap.js"(exports, module) { 5146 function arrayMap(array, iteratee) { 5147 var index = -1, length = array == null ? 0 : array.length, result = Array(length); 5148 while (++index < length) { 5149 result[index] = iteratee(array[index], index, array); 5150 } 5151 return result; 5152 } 5153 module.exports = arrayMap; 5154 } 5155 }); 5156 5157
vendor: 942 bytes, lines 5157-5184
5157// node_modules/lodash/_baseToString.js 5158 var require_baseToString = __commonJS({ 5159 "node_modules/lodash/_baseToString.js"(exports, module) { 5160 var Symbol2 = require_Symbol(); 5161 var arrayMap = require_arrayMap(); 5162 var isArray = require_isArray(); 5163 var isSymbol = require_isSymbol(); 5164 var INFINITY = 1 / 0; 5165 var symbolProto = Symbol2 ? Symbol2.prototype : void 0; 5166 var symbolToString = symbolProto ? symbolProto.toString : void 0; 5167 function baseToString(value) { 5168 if (typeof value == "string") { 5169 return value; 5170 } 5171 if (isArray(value)) { 5172 return arrayMap(value, baseToString) + ""; 5173 } 5174 if (isSymbol(value)) { 5175 return symbolToString ? symbolToString.call(value) : ""; 5176 } 5177 var result = value + ""; 5178 return result == "0" && 1 / value == -INFINITY ? "-0" : result; 5179 } 5180 module.exports = baseToString; 5181 } 5182 }); 5183 5184
vendor: 325 bytes, lines 5184-5195
5184// node_modules/lodash/toString.js 5185 var require_toString = __commonJS({ 5186 "node_modules/lodash/toString.js"(exports, module) { 5187 var baseToString = require_baseToString(); 5188 function toString(value) { 5189 return value == null ? "" : baseToString(value); 5190 } 5191 module.exports = toString; 5192 } 5193 }); 5194 5195
vendor: 536 bytes, lines 5195-5212
5195// node_modules/lodash/_castPath.js 5196 var require_castPath = __commonJS({ 5197 "node_modules/lodash/_castPath.js"(exports, module) { 5198 var isArray = require_isArray(); 5199 var isKey = require_isKey(); 5200 var stringToPath = require_stringToPath(); 5201 var toString = require_toString(); 5202 function castPath(value, object) { 5203 if (isArray(value)) { 5204 return value; 5205 } 5206 return isKey(value, object) ? [value] : stringToPath(toString(value)); 5207 } 5208 module.exports = castPath; 5209 } 5210 }); 5211 5212
vendor: 473 bytes, lines 5212-5228
5212// node_modules/lodash/_toKey.js 5213 var require_toKey = __commonJS({ 5214 "node_modules/lodash/_toKey.js"(exports, module) { 5215 var isSymbol = require_isSymbol(); 5216 var INFINITY = 1 / 0; 5217 function toKey(value) { 5218 if (typeof value == "string" || isSymbol(value)) { 5219 return value; 5220 } 5221 var result = value + ""; 5222 return result == "0" && 1 / value == -INFINITY ? "-0" : result; 5223 } 5224 module.exports = toKey; 5225 } 5226 }); 5227 5228
vendor: 552 bytes, lines 5228-5245
5228// node_modules/lodash/_baseGet.js 5229 var require_baseGet = __commonJS({ 5230 "node_modules/lodash/_baseGet.js"(exports, module) { 5231 var castPath = require_castPath(); 5232 var toKey = require_toKey(); 5233 function baseGet(object, path) { 5234 path = castPath(path, object); 5235 var index = 0, length = path.length; 5236 while (object != null && index < length) { 5237 object = object[toKey(path[index++])]; 5238 } 5239 return index && index == length ? object : void 0; 5240 } 5241 module.exports = baseGet; 5242 } 5243 }); 5244 5245
vendor: 384 bytes, lines 5245-5257
5245// node_modules/lodash/get.js 5246 var require_get = __commonJS({ 5247 "node_modules/lodash/get.js"(exports, module) { 5248 var baseGet = require_baseGet(); 5249 function get3(object, path, defaultValue) { 5250 var result = object == null ? void 0 : baseGet(object, path); 5251 return result === void 0 ? defaultValue : result; 5252 } 5253 module.exports = get3; 5254 } 5255 }); 5256 5257
vendor: 288 bytes, lines 5257-5267
5257// node_modules/lodash/_baseHasIn.js 5258 var require_baseHasIn = __commonJS({ 5259 "node_modules/lodash/_baseHasIn.js"(exports, module) { 5260 function baseHasIn(object, key) { 5261 return object != null && key in Object(object); 5262 } 5263 module.exports = baseHasIn; 5264 } 5265 }); 5266 5267
vendor: 1,035 bytes, lines 5267-5296
5267// node_modules/lodash/_hasPath.js 5268 var require_hasPath = __commonJS({ 5269 "node_modules/lodash/_hasPath.js"(exports, module) { 5270 var castPath = require_castPath(); 5271 var isArguments = require_isArguments(); 5272 var isArray = require_isArray(); 5273 var isIndex = require_isIndex(); 5274 var isLength = require_isLength(); 5275 var toKey = require_toKey(); 5276 function hasPath(object, path, hasFunc) { 5277 path = castPath(path, object); 5278 var index = -1, length = path.length, result = false; 5279 while (++index < length) { 5280 var key = toKey(path[index]); 5281 if (!(result = object != null && hasFunc(object, key))) { 5282 break; 5283 } 5284 object = object[key]; 5285 } 5286 if (result || ++index != length) { 5287 return result; 5288 } 5289 length = object == null ? 0 : object.length; 5290 return !!length && isLength(length) && isIndex(key, length) && (isArray(object) || isArguments(object)); 5291 } 5292 module.exports = hasPath; 5293 } 5294 }); 5295 5296
vendor: 360 bytes, lines 5296-5308
5296// node_modules/lodash/hasIn.js 5297 var require_hasIn = __commonJS({ 5298 "node_modules/lodash/hasIn.js"(exports, module) { 5299 var baseHasIn = require_baseHasIn(); 5300 var hasPath = require_hasPath(); 5301 function hasIn(object, path) { 5302 return object != null && hasPath(object, path, baseHasIn); 5303 } 5304 module.exports = hasIn; 5305 } 5306 }); 5307 5308
vendor: 1,065 bytes, lines 5308-5333
5308// node_modules/lodash/_baseMatchesProperty.js 5309 var require_baseMatchesProperty = __commonJS({ 5310 "node_modules/lodash/_baseMatchesProperty.js"(exports, module) { 5311 var baseIsEqual = require_baseIsEqual(); 5312 var get3 = require_get(); 5313 var hasIn = require_hasIn(); 5314 var isKey = require_isKey(); 5315 var isStrictComparable = require_isStrictComparable(); 5316 var matchesStrictComparable = require_matchesStrictComparable(); 5317 var toKey = require_toKey(); 5318 var COMPARE_PARTIAL_FLAG = 1; 5319 var COMPARE_UNORDERED_FLAG = 2; 5320 function baseMatchesProperty(path, srcValue) { 5321 if (isKey(path) && isStrictComparable(srcValue)) { 5322 return matchesStrictComparable(toKey(path), srcValue); 5323 } 5324 return function(object) { 5325 var objValue = get3(object, path); 5326 return objValue === void 0 && objValue === srcValue ? hasIn(object, path) : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG); 5327 }; 5328 } 5329 module.exports = baseMatchesProperty; 5330 } 5331 }); 5332 5333
vendor: 241 bytes, lines 5333-5343
5333// node_modules/lodash/identity.js 5334 var require_identity = __commonJS({ 5335 "node_modules/lodash/identity.js"(exports, module) { 5336 function identity(value) { 5337 return value; 5338 } 5339 module.exports = identity; 5340 } 5341 }); 5342 5343
vendor: 340 bytes, lines 5343-5355
5343// node_modules/lodash/_baseProperty.js 5344 var require_baseProperty = __commonJS({ 5345 "node_modules/lodash/_baseProperty.js"(exports, module) { 5346 function baseProperty(key) { 5347 return function(object) { 5348 return object == null ? void 0 : object[key]; 5349 }; 5350 } 5351 module.exports = baseProperty; 5352 } 5353 }); 5354 5355
vendor: 384 bytes, lines 5355-5368
5355// node_modules/lodash/_basePropertyDeep.js 5356 var require_basePropertyDeep = __commonJS({ 5357 "node_modules/lodash/_basePropertyDeep.js"(exports, module) { 5358 var baseGet = require_baseGet(); 5359 function basePropertyDeep(path) { 5360 return function(object) { 5361 return baseGet(object, path); 5362 }; 5363 } 5364 module.exports = basePropertyDeep; 5365 } 5366 }); 5367 5368
vendor: 475 bytes, lines 5368-5382
5368// node_modules/lodash/property.js 5369 var require_property = __commonJS({ 5370 "node_modules/lodash/property.js"(exports, module) { 5371 var baseProperty = require_baseProperty(); 5372 var basePropertyDeep = require_basePropertyDeep(); 5373 var isKey = require_isKey(); 5374 var toKey = require_toKey(); 5375 function property(path) { 5376 return isKey(path) ? baseProperty(toKey(path)) : basePropertyDeep(path); 5377 } 5378 module.exports = property; 5379 } 5380 }); 5381 5382
vendor: 792 bytes, lines 5382-5406
5382// node_modules/lodash/_baseIteratee.js 5383 var require_baseIteratee = __commonJS({ 5384 "node_modules/lodash/_baseIteratee.js"(exports, module) { 5385 var baseMatches = require_baseMatches(); 5386 var baseMatchesProperty = require_baseMatchesProperty(); 5387 var identity = require_identity(); 5388 var isArray = require_isArray(); 5389 var property = require_property(); 5390 function baseIteratee(value) { 5391 if (typeof value == "function") { 5392 return value; 5393 } 5394 if (value == null) { 5395 return identity; 5396 } 5397 if (typeof value == "object") { 5398 return isArray(value) ? baseMatchesProperty(value[0], value[1]) : baseMatches(value); 5399 } 5400 return property(value); 5401 } 5402 module.exports = baseIteratee; 5403 } 5404 }); 5405 5406
vendor: 910 bytes, lines 5406-5430
5406// node_modules/lodash/_createFind.js 5407 var require_createFind = __commonJS({ 5408 "node_modules/lodash/_createFind.js"(exports, module) { 5409 var baseIteratee = require_baseIteratee(); 5410 var isArrayLike = require_isArrayLike(); 5411 var keys = require_keys(); 5412 function createFind(findIndexFunc) { 5413 return function(collection, predicate, fromIndex) { 5414 var iterable = Object(collection); 5415 if (!isArrayLike(collection)) { 5416 var iteratee = baseIteratee(predicate, 3); 5417 collection = keys(collection); 5418 predicate = function(key) { 5419 return iteratee(iterable[key], key, iterable); 5420 }; 5421 } 5422 var index = findIndexFunc(collection, predicate, fromIndex); 5423 return index > -1 ? iterable[iteratee ? collection[index] : index] : void 0; 5424 }; 5425 } 5426 module.exports = createFind; 5427 } 5428 }); 5429 5430
vendor: 535 bytes, lines 5430-5446
5430// node_modules/lodash/_baseFindIndex.js 5431 var require_baseFindIndex = __commonJS({ 5432 "node_modules/lodash/_baseFindIndex.js"(exports, module) { 5433 function baseFindIndex(array, predicate, fromIndex, fromRight) { 5434 var length = array.length, index = fromIndex + (fromRight ? 1 : -1); 5435 while (fromRight ? index-- : ++index < length) { 5436 if (predicate(array[index], index, array)) { 5437 return index; 5438 } 5439 } 5440 return -1; 5441 } 5442 module.exports = baseFindIndex; 5443 } 5444 }); 5445 5446
vendor: 424 bytes, lines 5446-5460
5446// node_modules/lodash/_trimmedEndIndex.js 5447 var require_trimmedEndIndex = __commonJS({ 5448 "node_modules/lodash/_trimmedEndIndex.js"(exports, module) { 5449 var reWhitespace = /\s/; 5450 function trimmedEndIndex(string) { 5451 var index = string.length; 5452 while (index-- && reWhitespace.test(string.charAt(index))) { 5453 } 5454 return index; 5455 } 5456 module.exports = trimmedEndIndex; 5457 } 5458 }); 5459 5460
vendor: 413 bytes, lines 5460-5472
5460// node_modules/lodash/_baseTrim.js 5461 var require_baseTrim = __commonJS({ 5462 "node_modules/lodash/_baseTrim.js"(exports, module) { 5463 var trimmedEndIndex = require_trimmedEndIndex(); 5464 var reTrimStart = /^\s+/; 5465 function baseTrim(string) { 5466 return string ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, "") : string; 5467 } 5468 module.exports = baseTrim; 5469 } 5470 }); 5471 5472
vendor: 1,153 bytes, lines 5472-5505
5472// node_modules/lodash/toNumber.js 5473 var require_toNumber = __commonJS({ 5474 "node_modules/lodash/toNumber.js"(exports, module) { 5475 var baseTrim = require_baseTrim(); 5476 var isObject = require_isObject(); 5477 var isSymbol = require_isSymbol(); 5478 var NAN = 0 / 0; 5479 var reIsBadHex = /^[-+]0x[0-9a-f]+$/i; 5480 var reIsBinary = /^0b[01]+$/i; 5481 var reIsOctal = /^0o[0-7]+$/i; 5482 var freeParseInt = parseInt; 5483 function toNumber(value) { 5484 if (typeof value == "number") { 5485 return value; 5486 } 5487 if (isSymbol(value)) { 5488 return NAN; 5489 } 5490 if (isObject(value)) { 5491 var other = typeof value.valueOf == "function" ? value.valueOf() : value; 5492 value = isObject(other) ? other + "" : other; 5493 } 5494 if (typeof value != "string") { 5495 return value === 0 ? value : +value; 5496 } 5497 value = baseTrim(value); 5498 var isBinary = reIsBinary.test(value); 5499 return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value; 5500 } 5501 module.exports = toNumber; 5502 } 5503 }); 5504 5505
vendor: 631 bytes, lines 5505-5526
5505// node_modules/lodash/toFinite.js 5506 var require_toFinite = __commonJS({ 5507 "node_modules/lodash/toFinite.js"(exports, module) { 5508 var toNumber = require_toNumber(); 5509 var INFINITY = 1 / 0; 5510 var MAX_INTEGER = 17976931348623157e292; 5511 function toFinite(value) { 5512 if (!value) { 5513 return value === 0 ? value : 0; 5514 } 5515 value = toNumber(value); 5516 if (value === INFINITY || value === -INFINITY) { 5517 var sign = value < 0 ? -1 : 1; 5518 return sign * MAX_INTEGER; 5519 } 5520 return value === value ? value : 0; 5521 } 5522 module.exports = toFinite; 5523 } 5524 }); 5525 5526
vendor: 407 bytes, lines 5526-5538
5526// node_modules/lodash/toInteger.js 5527 var require_toInteger = __commonJS({ 5528 "node_modules/lodash/toInteger.js"(exports, module) { 5529 var toFinite = require_toFinite(); 5530 function toInteger(value) { 5531 var result = toFinite(value), remainder = result % 1; 5532 return result === result ? remainder ? result - remainder : result : 0; 5533 } 5534 module.exports = toInteger; 5535 } 5536 }); 5537 5538
vendor: 751 bytes, lines 5538-5560
5538// node_modules/lodash/findIndex.js 5539 var require_findIndex = __commonJS({ 5540 "node_modules/lodash/findIndex.js"(exports, module) { 5541 var baseFindIndex = require_baseFindIndex(); 5542 var baseIteratee = require_baseIteratee(); 5543 var toInteger = require_toInteger(); 5544 var nativeMax = Math.max; 5545 function findIndex(array, predicate, fromIndex) { 5546 var length = array == null ? 0 : array.length; 5547 if (!length) { 5548 return -1; 5549 } 5550 var index = fromIndex == null ? 0 : toInteger(fromIndex); 5551 if (index < 0) { 5552 index = nativeMax(length + index, 0); 5553 } 5554 return baseFindIndex(array, baseIteratee(predicate, 3), index); 5555 } 5556 module.exports = findIndex; 5557 } 5558 }); 5559 5560
vendor: 292 bytes, lines 5560-5570
5560// node_modules/lodash/find.js 5561 var require_find = __commonJS({ 5562 "node_modules/lodash/find.js"(exports, module) { 5563 var createFind = require_createFind(); 5564 var findIndex = require_findIndex(); 5565 var find3 = createFind(findIndex); 5566 module.exports = find3; 5567 } 5568 }); 5569 5570
5570// packages/systems/ix2/shared/logic/IX2BrowserSupport.ts 5571 var IX2BrowserSupport_exports = {}; 5572 __export(IX2BrowserSupport_exports, { 5573 ELEMENT_MATCHES: () => ELEMENT_MATCHES, 5574 FLEX_PREFIXED: () => FLEX_PREFIXED, 5575 IS_BROWSER_ENV: () => IS_BROWSER_ENV, 5576 TRANSFORM_PREFIXED: () => TRANSFORM_PREFIXED, 5577 TRANSFORM_STYLE_PREFIXED: () => TRANSFORM_STYLE_PREFIXED, 5578 withBrowser: () => withBrowser 5579 }); 5580 var import_find, IS_BROWSER_ENV, withBrowser, ELEMENT_MATCHES, FLEX_PREFIXED, TRANSFORM_PREFIXED, TRANSFORM_PREFIX, TRANSFORM_STYLE_PREFIXED; 5581 var init_IX2BrowserSupport = __esm({ 5582 "packages/systems/ix2/shared/logic/IX2BrowserSupport.ts"() { 5583 "use strict"; 5584 import_find = __toESM(require_find()); 5585 IS_BROWSER_ENV = typeof window !== "undefined"; 5586 withBrowser = (fn, fallback) => { 5587 if (IS_BROWSER_ENV) { 5588 return fn(); 5589 } 5590 return fallback; 5591 }; 5592 ELEMENT_MATCHES = withBrowser(() => { 5593 return (0, import_find.default)( 5594 [ 5595 "matches", 5596 "matchesSelector", 5597 "mozMatchesSelector", 5598 "msMatchesSelector", 5599 "oMatchesSelector", 5600 "webkitMatchesSelector" 5601 ], 5602 (key) => key in Element.prototype 5603 ); 5604 }); 5605 FLEX_PREFIXED = withBrowser(() => { 5606 const el = document.createElement("i"); 5607 const values = [ 5608 "flex", 5609 "-webkit-flex", 5610 "-ms-flexbox", 5611 "-moz-box", 5612 "-webkit-box" 5613 ]; 5614 const none = ""; 5615 try { 5616 const { length } = values; 5617 for (let i = 0; i < length; i++) { 5618 const value = values[i]; 5619 el.style.display = value; 5620 if (el.style.display === value) { 5621 return value; 5622 } 5623 } 5624 return none; 5625 } catch (err) { 5626 return none; 5627 } 5628 }, "flex"); 5629 TRANSFORM_PREFIXED = withBrowser(() => { 5630 const el = document.createElement("i"); 5631 if (el.style.transform == null) { 5632 const prefixes = ["Webkit", "Moz", "ms"]; 5633 const suffix = "Transform"; 5634 const { length } = prefixes; 5635 for (let i = 0; i < length; i++) { 5636 const prop = prefixes[i] + suffix; 5637 if (el.style[prop] !== void 0) { 5638 return prop; 5639 } 5640 } 5641 } 5642 return "transform"; 5643 }, "transform"); 5644 TRANSFORM_PREFIX = TRANSFORM_PREFIXED.split("transform")[0]; 5645 TRANSFORM_STYLE_PREFIXED = TRANSFORM_PREFIX ? TRANSFORM_PREFIX + "TransformStyle" : "transformStyle"; 5646 } 5647 }); 5648 5649
vendor: 3,496 bytes, lines 5649-5743
5649// node_modules/bezier-easing/src/index.js 5650 var require_src = __commonJS({ 5651 "node_modules/bezier-easing/src/index.js"(exports, module) { 5652 var NEWTON_ITERATIONS = 4; 5653 var NEWTON_MIN_SLOPE = 1e-3; 5654 var SUBDIVISION_PRECISION = 1e-7; 5655 var SUBDIVISION_MAX_ITERATIONS = 10; 5656 var kSplineTableSize = 11; 5657 var kSampleStepSize = 1 / (kSplineTableSize - 1); 5658 var float32ArraySupported = typeof Float32Array === "function"; 5659 function A(aA1, aA2) { 5660 return 1 - 3 * aA2 + 3 * aA1; 5661 } 5662 function B(aA1, aA2) { 5663 return 3 * aA2 - 6 * aA1; 5664 } 5665 function C(aA1) { 5666 return 3 * aA1; 5667 } 5668 function calcBezier(aT, aA1, aA2) { 5669 return ((A(aA1, aA2) * aT + B(aA1, aA2)) * aT + C(aA1)) * aT; 5670 } 5671 function getSlope(aT, aA1, aA2) { 5672 return 3 * A(aA1, aA2) * aT * aT + 2 * B(aA1, aA2) * aT + C(aA1); 5673 } 5674 function binarySubdivide(aX, aA, aB, mX1, mX2) { 5675 var currentX, currentT, i = 0; 5676 do { 5677 currentT = aA + (aB - aA) / 2; 5678 currentX = calcBezier(currentT, mX1, mX2) - aX; 5679 if (currentX > 0) { 5680 aB = currentT; 5681 } else { 5682 aA = currentT; 5683 } 5684 } while (Math.abs(currentX) > SUBDIVISION_PRECISION && ++i < SUBDIVISION_MAX_ITERATIONS); 5685 return currentT; 5686 } 5687 function newtonRaphsonIterate(aX, aGuessT, mX1, mX2) { 5688 for (var i = 0; i < NEWTON_ITERATIONS; ++i) { 5689 var currentSlope = getSlope(aGuessT, mX1, mX2); 5690 if (currentSlope === 0) { 5691 return aGuessT; 5692 } 5693 var currentX = calcBezier(aGuessT, mX1, mX2) - aX; 5694 aGuessT -= currentX / currentSlope; 5695 } 5696 return aGuessT; 5697 } 5698 module.exports = function bezier(mX1, mY1, mX2, mY2) { 5699 if (!(0 <= mX1 && mX1 <= 1 && 0 <= mX2 && mX2 <= 1)) { 5700 throw new Error("bezier x values must be in [0, 1] range"); 5701 } 5702 var sampleValues = float32ArraySupported ? new Float32Array(kSplineTableSize) : new Array(kSplineTableSize); 5703 if (mX1 !== mY1 || mX2 !== mY2) { 5704 for (var i = 0; i < kSplineTableSize; ++i) { 5705 sampleValues[i] = calcBezier(i * kSampleStepSize, mX1, mX2); 5706 } 5707 } 5708 function getTForX(aX) { 5709 var intervalStart = 0; 5710 var currentSample = 1; 5711 var lastSample = kSplineTableSize - 1; 5712 for (; currentSample !== lastSample && sampleValues[currentSample] <= aX; ++currentSample) { 5713 intervalStart += kSampleStepSize; 5714 } 5715 --currentSample; 5716 var dist = (aX - sampleValues[currentSample]) / (sampleValues[currentSample + 1] - sampleValues[currentSample]); 5717 var guessForT = intervalStart + dist * kSampleStepSize; 5718 var initialSlope = getSlope(guessForT, mX1, mX2); 5719 if (initialSlope >= NEWTON_MIN_SLOPE) { 5720 return newtonRaphsonIterate(aX, guessForT, mX1, mX2); 5721 } else if (initialSlope === 0) { 5722 return guessForT; 5723 } else { 5724 return binarySubdivide(aX, intervalStart, intervalStart + kSampleStepSize, mX1, mX2); 5725 } 5726 } 5727 return function BezierEasing3(x) { 5728 if (mX1 === mY1 && mX2 === mY2) { 5729 return x; 5730 } 5731 if (x === 0) { 5732 return 0; 5733 } 5734 if (x === 1) { 5735 return 1; 5736 } 5737 return calcBezier(getTForX(x), mY1, mY2); 5738 }; 5739 }; 5740 } 5741 }); 5742 5743
5743// packages/systems/ix2/shared/logic/IX2Easings.ts 5744 var IX2Easings_exports = {}; 5745 __export(IX2Easings_exports, { 5746 bounce: () => bounce, 5747 bouncePast: () => bouncePast, 5748 ease: () => ease, 5749 easeIn: () => easeIn, 5750 easeInOut: () => easeInOut, 5751 easeOut: () => easeOut, 5752 inBack: () => inBack, 5753 inCirc: () => inCirc, 5754 inCubic: () => inCubic, 5755 inElastic: () => inElastic, 5756 inExpo: () => inExpo, 5757 inOutBack: () => inOutBack, 5758 inOutCirc: () => inOutCirc, 5759 inOutCubic: () => inOutCubic, 5760 inOutElastic: () => inOutElastic, 5761 inOutExpo: () => inOutExpo, 5762 inOutQuad: () => inOutQuad, 5763 inOutQuart: () => inOutQuart, 5764 inOutQuint: () => inOutQuint, 5765 inOutSine: () => inOutSine, 5766 inQuad: () => inQuad, 5767 inQuart: () => inQuart, 5768 inQuint: () => inQuint, 5769 inSine: () => inSine, 5770 outBack: () => outBack, 5771 outBounce: () => outBounce, 5772 outCirc: () => outCirc, 5773 outCubic: () => outCubic, 5774 outElastic: () => outElastic, 5775 outExpo: () => outExpo, 5776 outQuad: () => outQuad, 5777 outQuart: () => outQuart, 5778 outQuint: () => outQuint, 5779 outSine: () => outSine, 5780 swingFrom: () => swingFrom, 5781 swingFromTo: () => swingFromTo, 5782 swingTo: () => swingTo 5783 }); 5784 function inQuad(pos) { 5785 return Math.pow(pos, 2); 5786 } 5787 function outQuad(pos) { 5788 return -(Math.pow(pos - 1, 2) - 1); 5789 } 5790 function inOutQuad(pos) { 5791 if ((pos /= 0.5) < 1) { 5792 return 0.5 * Math.pow(pos, 2); 5793 } 5794 return -0.5 * ((pos -= 2) * pos - 2); 5795 } 5796 function inCubic(pos) { 5797 return Math.pow(pos, 3); 5798 } 5799 function outCubic(pos) { 5800 return Math.pow(pos - 1, 3) + 1; 5801 } 5802 function inOutCubic(pos) { 5803 if ((pos /= 0.5) < 1) { 5804 return 0.5 * Math.pow(pos, 3); 5805 } 5806 return 0.5 * (Math.pow(pos - 2, 3) + 2); 5807 } 5808 function inQuart(pos) { 5809 return Math.pow(pos, 4); 5810 } 5811 function outQuart(pos) { 5812 return -(Math.pow(pos - 1, 4) - 1); 5813 } 5814 function inOutQuart(pos) { 5815 if ((pos /= 0.5) < 1) { 5816 return 0.5 * Math.pow(pos, 4); 5817 } 5818 return -0.5 * ((pos -= 2) * Math.pow(pos, 3) - 2); 5819 } 5820 function inQuint(pos) { 5821 return Math.pow(pos, 5); 5822 } 5823 function outQuint(pos) { 5824 return Math.pow(pos - 1, 5) + 1; 5825 } 5826 function inOutQuint(pos) { 5827 if ((pos /= 0.5) < 1) { 5828 return 0.5 * Math.pow(pos, 5); 5829 } 5830 return 0.5 * (Math.pow(pos - 2, 5) + 2); 5831 } 5832 function inSine(pos) { 5833 return -Math.cos(pos * (Math.PI / 2)) + 1; 5834 } 5835 function outSine(pos) { 5836 return Math.sin(pos * (Math.PI / 2)); 5837 } 5838 function inOutSine(pos) { 5839 return -0.5 * (Math.cos(Math.PI * pos) - 1); 5840 } 5841 function inExpo(pos) { 5842 return pos === 0 ? 0 : Math.pow(2, 10 * (pos - 1)); 5843 } 5844 function outExpo(pos) { 5845 return pos === 1 ? 1 : -Math.pow(2, -10 * pos) + 1; 5846 } 5847 function inOutExpo(pos) { 5848 if (pos === 0) { 5849 return 0; 5850 } 5851 if (pos === 1) { 5852 return 1; 5853 } 5854 if ((pos /= 0.5) < 1) { 5855 return 0.5 * Math.pow(2, 10 * (pos - 1)); 5856 } 5857 return 0.5 * (-Math.pow(2, -10 * --pos) + 2); 5858 } 5859 function inCirc(pos) { 5860 return -(Math.sqrt(1 - pos * pos) - 1); 5861 } 5862 function outCirc(pos) { 5863 return Math.sqrt(1 - Math.pow(pos - 1, 2)); 5864 } 5865 function inOutCirc(pos) { 5866 if ((pos /= 0.5) < 1) { 5867 return -0.5 * (Math.sqrt(1 - pos * pos) - 1); 5868 } 5869 return 0.5 * (Math.sqrt(1 - (pos -= 2) * pos) + 1); 5870 } 5871 function outBounce(pos) { 5872 if (pos < 1 / 2.75) { 5873 return 7.5625 * pos * pos; 5874 } else if (pos < 2 / 2.75) { 5875 return 7.5625 * (pos -= 1.5 / 2.75) * pos + 0.75; 5876 } else if (pos < 2.5 / 2.75) { 5877 return 7.5625 * (pos -= 2.25 / 2.75) * pos + 0.9375; 5878 } else { 5879 return 7.5625 * (pos -= 2.625 / 2.75) * pos + 0.984375; 5880 } 5881 } 5882 function inBack(pos) { 5883 const s = magicSwing; 5884 return pos * pos * ((s + 1) * pos - s); 5885 } 5886 function outBack(pos) { 5887 const s = magicSwing; 5888 return (pos -= 1) * pos * ((s + 1) * pos + s) + 1; 5889 } 5890 function inOutBack(pos) { 5891 let s = magicSwing; 5892 if ((pos /= 0.5) < 1) { 5893 return 0.5 * (pos * pos * (((s *= 1.525) + 1) * pos - s)); 5894 } 5895 return 0.5 * ((pos -= 2) * pos * (((s *= 1.525) + 1) * pos + s) + 2); 5896 } 5897 function inElastic(pos) { 5898 let s = magicSwing; 5899 let p = 0; 5900 let a = 1; 5901 if (pos === 0) { 5902 return 0; 5903 } 5904 if (pos === 1) { 5905 return 1; 5906 } 5907 if (!p) { 5908 p = 0.3; 5909 } 5910 if (a < 1) { 5911 a = 1; 5912 s = p / 4; 5913 } else { 5914 s = p / (2 * Math.PI) * Math.asin(1 / a); 5915 } 5916 return -(a * Math.pow(2, 10 * (pos -= 1)) * Math.sin((pos - s
5916) * (2 * Math.PI) / p)); 5917 } 5918 function outElastic(pos) { 5919 let s = magicSwing; 5920 let p = 0; 5921 let a = 1; 5922 if (pos === 0) { 5923 return 0; 5924 } 5925 if (pos === 1) { 5926 return 1; 5927 } 5928 if (!p) { 5929 p = 0.3; 5930 } 5931 if (a < 1) { 5932 a = 1; 5933 s = p / 4; 5934 } else { 5935 s = p / (2 * Math.PI) * Math.asin(1 / a); 5936 } 5937 return a * Math.pow(2, -10 * pos) * Math.sin((pos - s) * (2 * Math.PI) / p) + 1; 5938 } 5939 function inOutElastic(pos) { 5940 let s = magicSwing; 5941 let p = 0; 5942 let a = 1; 5943 if (pos === 0) { 5944 return 0; 5945 } 5946 if ((pos /= 1 / 2) === 2) { 5947 return 1; 5948 } 5949 if (!p) { 5950 p = 0.3 * 1.5; 5951 } 5952 if (a < 1) { 5953 a = 1; 5954 s = p / 4; 5955 } else { 5956 s = p / (2 * Math.PI) * Math.asin(1 / a); 5957 } 5958 if (pos < 1) { 5959 return -0.5 * (a * Math.pow(2, 10 * (pos -= 1)) * Math.sin((pos - s) * (2 * Math.PI) / p)); 5960 } 5961 return a * Math.pow(2, -10 * (pos -= 1)) * Math.sin((pos - s) * (2 * Math.PI) / p) * 0.5 + 1; 5962 } 5963 function swingFromTo(pos) { 5964 let s = magicSwing; 5965 return (pos /= 0.5) < 1 ? 0.5 * (pos * pos * (((s *= 1.525) + 1) * pos - s)) : 0.5 * ((pos -= 2) * pos * (((s *= 1.525) + 1) * pos + s) + 2); 5966 } 5967 function swingFrom(pos) { 5968 const s = magicSwing; 5969 return pos * pos * ((s + 1) * pos - s); 5970 } 5971 function swingTo(pos) { 5972 const s = magicSwing; 5973 return (pos -= 1) * pos * ((s + 1) * pos + s) + 1; 5974 } 5975 function bounce(pos) { 5976 if (pos < 1 / 2.75) { 5977 return 7.5625 * pos * pos; 5978 } else if (pos < 2 / 2.75) { 5979 return 7.5625 * (pos -= 1.5 / 2.75) * pos + 0.75; 5980 } else if (pos < 2.5 / 2.75) { 5981 return 7.5625 * (pos -= 2.25 / 2.75) * pos + 0.9375; 5982 } else { 5983 return 7.5625 * (pos -= 2.625 / 2.75) * pos + 0.984375; 5984 } 5985 } 5986 function bouncePast(pos) { 5987 if (pos < 1 / 2.75) { 5988 return 7.5625 * pos * pos; 5989 } else if (pos < 2 / 2.75) { 5990 return 2 - (7.5625 * (pos -= 1.5 / 2.75) * pos + 0.75); 5991 } else if (pos < 2.5 / 2.75) { 5992 return 2 - (7.5625 * (pos -= 2.25 / 2.75) * pos + 0.9375); 5993 } else { 5994 return 2 - (7.5625 * (pos -= 2.625 / 2.75) * pos + 0.984375); 5995 } 5996 } 5997 var import_bezier_easing, magicSwing, ease, easeIn, easeOut, easeInOut; 5998 var init_IX2Easings = __esm({ 5999 "packages/systems/ix2/shared/logic/IX2Easings.ts"() { 6000 "use strict"; 6001 import_bezier_easing = __toESM(require_src()); 6002 magicSwing = 1.70158; 6003 ease = (0, import_bezier_easing.default)(0.25, 0.1, 0.25, 1); 6004 easeIn = (0, import_bezier_easing.default)(0.42, 0, 1, 1); 6005 easeOut = (0, import_bezier_easing.default)(0, 0, 0.58, 1); 6006 easeInOut = (0, import_bezier_easing.default)(0.42, 0, 0.58, 1); 6007 } 6008 }); 6009 6010
6010// packages/systems/ix2/shared/logic/IX2EasingUtils.ts 6011 var IX2EasingUtils_exports = {}; 6012 __export(IX2EasingUtils_exports, { 6013 applyEasing: () => applyEasing, 6014 createBezierEasing: () => createBezierEasing, 6015 optimizeFloat: () => optimizeFloat 6016 }); 6017 function optimizeFloat(value, digits = 5, base = 10) { 6018 const pow = Math.pow(base, digits); 6019 const float = Number(Math.round(value * pow) / pow); 6020 return Math.abs(float) > 1e-4 ? float : 0; 6021 } 6022 function createBezierEasing(easing) { 6023 return (0, import_bezier_easing2.default)(...easing); 6024 } 6025 function applyEasing(easing, position, customEasingFn) { 6026 if (position === 0) { 6027 return 0; 6028 } 6029 if (position === 1) { 6030 return 1; 6031 } 6032 if (customEasingFn) { 6033 return optimizeFloat(position > 0 ? customEasingFn(position) : position); 6034 } 6035 return optimizeFloat( 6036 position > 0 && easing && IX2Easings_exports[easing] ? IX2Easings_exports[easing](position) : position 6037 ); 6038 } 6039 var import_bezier_easing2; 6040 var init_IX2EasingUtils = __esm({ 6041 "packages/systems/ix2/shared/logic/IX2EasingUtils.ts"() { 6042 "use strict"; 6043 init_IX2Easings(); 6044 import_bezier_easing2 = __toESM(require_src()); 6045 } 6046 }); 6047 6048
6048// packages/systems/ix2/shared/reducers/IX2ElementsReducer.ts 6049 var IX2ElementsReducer_exports = {}; 6050 __export(IX2ElementsReducer_exports, { 6051 createElementState: () => createElementState, 6052 ixElements: () => ixElements, 6053 mergeActionState: () => mergeActionState 6054 }); 6055 function createElementState(state, ref, refType, elementId, actionItem) { 6056 const refId = refType === PLAIN_OBJECT2 ? (0, import_timm3.getIn)(actionItem, ["config", "target", "objectId"]) : null; 6057 return (0, import_timm3.mergeIn)(state, [elementId], { 6058 id: elementId, 6059 ref, 6060 refId, 6061 refType 6062 }); 6063 } 6064 function mergeActionState(state, elementId, actionTypeId, actionState, actionItem) { 6065 const units = pickUnits(actionItem); 6066 const mergePath = [elementId, refState, actionTypeId]; 6067 return (0, import_timm3.mergeIn)(state, mergePath, actionState, units); 6068 } 6069 function pickUnits(actionItem) { 6070 const { config } = actionItem; 6071 return valueUnitPairs.reduce((result, pair) => { 6072 const valueKey = pair[0]; 6073 const unitKey = pair[1]; 6074 const configValue = config[valueKey]; 6075 const configUnit = config[unitKey]; 6076 if (configValue != null && configUnit != null) { 6077 result[unitKey] = configUnit; 6078 } 6079 return result; 6080 }, {}); 6081 } 6082 var import_timm3, HTML_ELEMENT2, PLAIN_OBJECT2, ABSTRACT_NODE2, CONFIG_X_VALUE2, CONFIG_Y_VALUE2, CONFIG_Z_VALUE2, CONFIG_VALUE2, CONFIG_X_UNIT2, CONFIG_Y_UNIT2, CONFIG_Z_UNIT2, CONFIG_UNIT2, IX2_SESSION_STOPPED3, IX2_INSTANCE_ADDED2, IX2_ELEMENT_STATE_CHANGED2, initialState3, refState, ixElements, valueUnitPairs; 6083 var init_IX2ElementsReducer = __esm({ 6084 "packages/systems/ix2/shared/reducers/IX2ElementsReducer.ts"() { 6085 "use strict"; 6086 import_timm3 = __toESM(require_timm()); 6087 init_shared_constants(); 6088 ({ 6089 HTML_ELEMENT: HTML_ELEMENT2, 6090 PLAIN_OBJECT: PLAIN_OBJECT2, 6091 ABSTRACT_NODE: ABSTRACT_NODE2, 6092 CONFIG_X_VALUE: CONFIG_X_VALUE2, 6093 CONFIG_Y_VALUE: CONFIG_Y_VALUE2, 6094 CONFIG_Z_VALUE: CONFIG_Z_VALUE2, 6095 CONFIG_VALUE: CONFIG_VALUE2, 6096 CONFIG_X_UNIT: CONFIG_X_UNIT2, 6097 CONFIG_Y_UNIT: CONFIG_Y_UNIT2, 6098 CONFIG_Z_UNIT: CONFIG_Z_UNIT2, 6099 CONFIG_UNIT: CONFIG_UNIT2 6100 } = IX2EngineConstants_exports); 6101 ({ IX2_SESSION_STOPPED: IX2_SESSION_STOPPED3, IX2_INSTANCE_ADDED: IX2_INSTANCE_ADDED2, IX2_ELEMENT_STATE_CHANGED: IX2_ELEMENT_STATE_CHANGED2 } = IX2EngineActionTypes_exports); 6102 initialState3 = {}; 6103 refState = "refState"; 6104 ixElements = (state = initialState3, action = {}) => { 6105 switch (action.type) { 6106 case IX2_SESSION_STOPPED3: { 6107 return initialState3; 6108 } 6109 case IX2_INSTANCE_ADDED2: { 6110 const { 6111 elementId, 6112 element: ref, 6113 origin, 6114 actionItem, 6115 refType 6116 } = action.payload; 6117 const { actionTypeId } = actionItem; 6118 let newState = state; 6119 if ((0, import_timm3.getIn)(newState, [elementId, ref]) !== ref) { 6120 newState = createElementState( 6121 newState, 6122 ref, 6123 refType, 6124 elementId, 6125 actionItem 6126 ); 6127 } 6128 return mergeActionState( 6129 newState, 6130 elementId, 6131 actionTypeId, 6132 origin, 6133 actionItem 6134 ); 6135 } 6136 case IX2_ELEMENT_STATE_CHANGED2: { 6137 const { elementId, actionTypeId, current, actionItem } = action.payload; 6138 return mergeActionState( 6139 state, 6140 elementId, 6141 actionTypeId, 6142 current, 6143 actionItem 6144 ); 6145 } 6146 default: { 6147 return state; 6148 } 6149 } 6150 }; 6151 valueUnitPairs = [ 6152 [CONFIG_X_VALUE2, CONFIG_X_UNIT2], 6153 [CONFIG_Y_VALUE2, CONFIG_Y_UNIT2], 6154 [CONFIG_Z_VALUE2, CONFIG_Z_UNIT2], 6155 [CONFIG_VALUE2, CONFIG_UNIT2] 6156 ]; 6157 } 6158 }); 6159 6160
6160// packages/systems/ix2/plugins/IX2Lottie.js 6161 var require_IX2Lottie = __commonJS({ 6162 "packages/systems/ix2/plugins/IX2Lottie.js"(exports) { 6163 "use strict"; 6164 Object.defineProperty(exports, "__esModule", { 6165 value: true 6166 }); 6167 function _export(target, all) { 6168 for (var name in all) 6169 Object.defineProperty(target, name, { 6170 enumerable: true, 6171 get: all[name] 6172 }); 6173 } 6174 _export(exports, { 6175 clearPlugin: function() { 6176 return clearPlugin2; 6177 }, 6178 createPluginInstance: function() { 6179 return createPluginInstance3; 6180 }, 6181 getPluginConfig: function() { 6182 return getPluginConfig2; 6183 }, 6184 getPluginDestination: function() { 6185 return getPluginDestination2; 6186 }, 6187 getPluginDuration: function() { 6188 return getPluginDuration3; 6189 }, 6190 getPluginOrigin: function() { 6191 return getPluginOrigin2; 6192 }, 6193 renderPlugin: function() { 6194 return renderPlugin2; 6195 } 6196 }); 6197 var getPluginConfig2 = (actionItemConfig) => { 6198 return actionItemConfig.value; 6199 }; 6200 var getPluginDuration3 = (element, actionItem) => { 6201 if (actionItem.config.duration !== "auto") { 6202 return null; 6203 } 6204 const duration = parseFloat(element.getAttribute("data-duration")); 6205 if (duration > 0) { 6206 return duration * 1e3; 6207 } 6208 return parseFloat(element.getAttribute("data-default-duration")) * 1e3; 6209 }; 6210 var getPluginOrigin2 = (refState2) => { 6211 return refState2 || { 6212 value: 0 6213 }; 6214 }; 6215 var getPluginDestination2 = (actionItemConfig) => { 6216 return { 6217 value: actionItemConfig.value 6218 }; 6219 }; 6220 var createPluginInstance3 = (element) => { 6221 const instance = window.Webflow.require("lottie").createInstance(element); 6222 instance.stop(); 6223 instance.setSubframe(true); 6224 return instance; 6225 }; 6226 var renderPlugin2 = (pluginInstance, refState2, actionItem) => { 6227 if (!pluginInstance) { 6228 return; 6229 } 6230 const percent = refState2[actionItem.actionTypeId].value / 100; 6231 pluginInstance.goToFrame(pluginInstance.frames * percent); 6232 }; 6233 var clearPlugin2 = (element) => { 6234 const instance = window.Webflow.require("lottie").createInstance(element); 6235 instance.stop(); 6236 }; 6237 } 6238 }); 6239 6240
6240// packages/systems/ix2/plugins/IX2Spline.js 6241 var require_IX2Spline = __commonJS({ 6242 "packages/systems/ix2/plugins/IX2Spline.js"(exports) { 6243 "use strict"; 6244 Object.defineProperty(exports, "__esModule", { 6245 value: true 6246 }); 6247 function _export(target, all) { 6248 for (var name in all) 6249 Object.defineProperty(target, name, { 6250 enumerable: true, 6251 get: all[name] 6252 }); 6253 } 6254 _export(exports, { 6255 clearPlugin: function() { 6256 return clearPlugin2; 6257 }, 6258 createPluginInstance: function() { 6259 return createPluginInstance3; 6260 }, 6261 getPluginConfig: function() { 6262 return getPluginConfig2; 6263 }, 6264 getPluginDestination: function() { 6265 return getPluginDestination2; 6266 }, 6267 getPluginDuration: function() { 6268 return getPluginDuration3; 6269 }, 6270 getPluginOrigin: function() { 6271 return getPluginOrigin2; 6272 }, 6273 renderPlugin: function() { 6274 return renderPlugin2; 6275 } 6276 }); 6277 var queryContainerElement = (elementId) => document.querySelector(`[data-w-id="${elementId}"]`); 6278 var getFrontendModule = () => window.Webflow.require("spline"); 6279 var difference = (arr1, arr2) => arr1.filter((x) => !arr2.includes(x)); 6280 var getPluginConfig2 = (actionItemConfig, key) => { 6281 return actionItemConfig.value[key]; 6282 }; 6283 var getPluginDuration3 = () => { 6284 return null; 6285 }; 6286 var DEFAULT_VALUES = Object.freeze({ 6287 positionX: 0, 6288 positionY: 0, 6289 positionZ: 0, 6290 rotationX: 0, 6291 rotationY: 0, 6292 rotationZ: 0, 6293 scaleX: 1, 6294 scaleY: 1, 6295 scaleZ: 1 6296 }); 6297 var getPluginOrigin2 = (refState2, actionItem) => { 6298 const destination = actionItem.config.value; 6299 const destinationKeys = Object.keys(destination); 6300 if (refState2) { 6301 const stateKeys2 = Object.keys(refState2); 6302 const diffKeys = difference(destinationKeys, stateKeys2); 6303 if (diffKeys.length) { 6304 const origin2 = diffKeys.reduce((result, key) => { 6305 result[key] = DEFAULT_VALUES[key]; 6306 return result; 6307 }, refState2); 6308 return origin2; 6309 } 6310 return refState2; 6311 } 6312 const origin = destinationKeys.reduce((result, key) => { 6313 result[key] = DEFAULT_VALUES[key]; 6314 return result; 6315 }, {}); 6316 return origin; 6317 }; 6318 var getPluginDestination2 = (actionItemConfig) => { 6319 return actionItemConfig.value; 6320 }; 6321 var createPluginInstance3 = (element, actionItem) => { 6322 const pluginElementId = actionItem?.config?.target?.pluginElement; 6323 return pluginElementId ? queryContainerElement(pluginElementId) : null; 6324 }; 6325 var renderPlugin2 = (containerElement, refState2, actionItem) => { 6326 const frontendModule = getFrontendModule(); 6327 const instance = frontendModule.getInstance(containerElement); 6328 const objectId = actionItem.config.target.objectId; 6329 const renderSpline = (spline) => { 6330 if (!spline) { 6331 throw new Error("Invalid spline app passed to renderSpline"); 6332 } 6333 const obj = objectId && spline.findObjectById(objectId); 6334 if (!obj) { 6335 return; 6336 } 6337 const { PLUGIN_SPLINE: props } = refState2; 6338 if (props.positionX != null) { 6339 obj.position.x = props.positionX; 6340 } 6341 if (props.positionY != null) { 6342 obj.position.y = props.positionY; 6343 } 6344 if (props.positionZ != null) { 6345 obj.position.z = props.positionZ; 6346 } 6347 if (props.rotationX != null) { 6348 obj.rotation.x = props.rotationX; 6349 } 6350 if (props.rotationY != null) { 6351 obj.rotation.y = props.rotationY; 6352 } 6353 if (props.rotationZ != null) { 6354 obj.rotation.z = props.rotationZ; 6355 } 6356 if (props.scaleX != null) { 6357 obj.scale.x = props.scaleX; 6358 } 6359 if (props.scaleY != null) { 6360 obj.scale.y = props.scaleY; 6361 } 6362 if (props.scaleZ != null) { 6363 obj.scale.z = props.scaleZ; 6364 } 6365 }; 6366 if (instance) { 6367 renderSpline(instance.spline); 6368 } else { 6369 frontendModule.setLoadHandler(containerElement, renderSpline); 6370 } 6371 }; 6372 var clearPlugin2 = () => { 6373 return null; 6374 }; 6375 } 6376 }); 6377 6378
6378// packages/systems/ix2/shared-utils/normalizeColor.js 6379 var require_normalizeColor = __commonJS({ 6380 "packages/systems/ix2/shared-utils/normalizeColor.js"(exports) { 6381 "use strict"; 6382 Object.defineProperty(exports, "__esModule", { 6383 value: true 6384 }); 6385 Object.defineProperty(exports, "normalizeColor", { 6386 enumerable: true, 6387 get: function() { 6388 return normalizeColor2; 6389 } 6390 }); 6391 var colorNamesObj = { 6392 aliceblue: "#F0F8FF", 6393 antiquewhite: "#FAEBD7", 6394 aqua: "#00FFFF", 6395 aquamarine: "#7FFFD4", 6396 azure: "#F0FFFF", 6397 beige: "#F5F5DC", 6398 bisque: "#FFE4C4", 6399 black: "#000000", 6400 blanchedalmond: "#FFEBCD", 6401 blue: "#0000FF", 6402 blueviolet: "#8A2BE2", 6403 brown: "#A52A2A", 6404 burlywood: "#DEB887", 6405 cadetblue: "#5F9EA0", 6406 chartreuse: "#7FFF00", 6407 chocolate: "#D2691E", 6408 coral: "#FF7F50", 6409 cornflowerblue: "#6495ED", 6410 cornsilk: "#FFF8DC", 6411 crimson: "#DC143C", 6412 cyan: "#00FFFF", 6413 darkblue: "#00008B", 6414 darkcyan: "#008B8B", 6415 darkgoldenrod: "#B8860B", 6416 darkgray: "#A9A9A9", 6417 darkgreen: "#006400", 6418 darkgrey: "#A9A9A9", 6419 darkkhaki: "#BDB76B", 6420 darkmagenta: "#8B008B", 6421 darkolivegreen: "#556B2F", 6422 darkorange: "#FF8C00", 6423 darkorchid: "#9932CC", 6424 darkred: "#8B0000", 6425 darksalmon: "#E9967A", 6426 darkseagreen: "#8FBC8F", 6427 darkslateblue: "#483D8B", 6428 darkslategray: "#2F4F4F", 6429 darkslategrey: "#2F4F4F", 6430 darkturquoise: "#00CED1", 6431 darkviolet: "#9400D3", 6432 deeppink: "#FF1493", 6433 deepskyblue: "#00BFFF", 6434 dimgray: "#696969", 6435 dimgrey: "#696969", 6436 dodgerblue: "#1E90FF", 6437 firebrick: "#B22222", 6438 floralwhite: "#FFFAF0", 6439 forestgreen: "#228B22", 6440 fuchsia: "#FF00FF", 6441 gainsboro: "#DCDCDC", 6442 ghostwhite: "#F8F8FF", 6443 gold: "#FFD700", 6444 goldenrod: "#DAA520", 6445 gray: "#808080", 6446 green: "#008000", 6447 greenyellow: "#ADFF2F", 6448 grey: "#808080", 6449 honeydew: "#F0FFF0", 6450 hotpink: "#FF69B4", 6451 indianred: "#CD5C5C", 6452 indigo: "#4B0082", 6453 ivory: "#FFFFF0", 6454 khaki: "#F0E68C", 6455 lavender: "#E6E6FA", 6456 lavenderblush: "#FFF0F5", 6457 lawngreen: "#7CFC00", 6458 lemonchiffon: "#FFFACD", 6459 lightblue: "#ADD8E6", 6460 lightcoral: "#F08080", 6461 lightcyan: "#E0FFFF", 6462 lightgoldenrodyellow: "#FAFAD2", 6463 lightgray: "#D3D3D3", 6464 lightgreen: "#90EE90", 6465 lightgrey: "#D3D3D3", 6466 lightpink: "#FFB6C1", 6467 lightsalmon: "#FFA07A", 6468 lightseagreen: "#20B2AA", 6469 lightskyblue: "#87CEFA", 6470 lightslategray: "#778899", 6471 lightslategrey: "#778899", 6472 lightsteelblue: "#B0C4DE", 6473 lightyellow: "#FFFFE0", 6474 lime: "#00FF00", 6475 limegreen: "#32CD32", 6476 linen: "#FAF0E6", 6477 magenta: "#FF00FF", 6478 maroon: "#800000", 6479 mediumaquamarine: "#66CDAA", 6480 mediumblue: "#0000CD", 6481 mediumorchid: "#BA55D3", 6482 mediumpurple: "#9370DB", 6483 mediumseagreen: "#3CB371", 6484 mediumslateblue: "#7B68EE", 6485 mediumspringgreen: "#00FA9A", 6486 mediumturquoise: "#48D1CC", 6487 mediumvioletred: "#C71585", 6488 midnightblue: "#191970", 6489 mintcream: "#F5FFFA", 6490 mistyrose: "#FFE4E1", 6491 moccasin: "#FFE4B5", 6492 navajowhite: "#FFDEAD", 6493 navy: "#000080", 6494 oldlace: "#FDF5E6", 6495 olive: "#808000", 6496 olivedrab: "#6B8E23", 6497 orange: "#FFA500", 6498 orangered: "#FF4500", 6499 orchid: "#DA70D6", 6500 palegoldenrod: "#EEE8AA", 6501 palegreen: "#98FB98", 6502 paleturquoise: "#AFEEEE", 6503 palevioletred: "#DB7093", 6504 papayawhip: "#FFEFD5", 6505 peachpuff: "#FFDAB9", 6506 peru: "#CD853F", 6507 pink: "#FFC0CB", 6508 plum: "#DDA0DD", 6509 powderblue: "#B0E0E6", 6510 purple: "#800080", 6511 rebeccapurple: "#663399", 6512 red: "#FF0000", 6513 rosybrown: "#BC8F8F", 6514 royalblue: "#4169E1", 6515 saddlebrown: "#8B4513", 6516 salmon: "#FA8072", 6517 sandybrown: "#F4A460", 6518 seagreen: "#2E8B57", 6519 seashell: "#FFF5EE", 6520 sienna: "#A0522D", 6521 silver: "#C0C0C0", 6522 skyblue: "#87CEEB", 6523 slateblue: "#6A5ACD", 6524 slategray: "#708090", 6525 slategrey: "#708090", 6526 snow: "#FFFAFA", 6527 springgreen: "#00FF7F", 6528 steelblue: "#4682B4", 6529 tan: "#D2B48C", 6530 teal: "#008080", 6531 thistle: "#D8BFD8", 6532 tomato: "#FF6347", 6533 turquoise: "#40E0D0", 6534 violet: "#EE82EE", 6535 wheat: "#F5DEB3", 6536 white: "#FFFFFF", 6537 whitesmoke: "#F5F5F5", 6538 yellow: "#FFFF00", 6539 yellowgreen: "#9ACD32" 6540 }; 6541 function normalizeColor2(inputColor) { 6542 let red; 6543 let green; 6544 let blue; 6545 let alpha = 1; 6546 const rawColor = inputColor.replace(/\s/g, "").toLowerCase(); 6547 const namedColor = typeof colorNamesObj[rawColor] === "string" ? colorNamesObj[rawColor].toLowerCase() : null; 6548 const cleanColor = namedColor || rawColor; 6549 if (cleanColor.startsWith("#")) { 6550 const hex = cleanColor.substring(1); 6551 if (hex.length === 3 || hex.length === 4) { 6552 red = parseInt(hex[0] + hex[0], 16); 6553 green = parseInt(hex[1] + hex[1], 16); 6554 blue = parseInt(hex[2] + hex[2], 16); 6555 if (hex.length === 4) {
6556 alpha = parseInt(hex[3] + hex[3], 16) / 255; 6557 } 6558 } else if (hex.length === 6 || hex.length === 8) { 6559 red = parseInt(hex.substring(0, 2), 16); 6560 green = parseInt(hex.substring(2, 4), 16); 6561 blue = parseInt(hex.substring(4, 6), 16); 6562 if (hex.length === 8) { 6563 alpha = parseInt(hex.substring(6, 8), 16) / 255; 6564 } 6565 } 6566 } else if (cleanColor.startsWith("rgba")) { 6567 const rgbaValues = cleanColor.match(/rgba\(([^)]+)\)/)[1].split(","); 6568 red = parseInt(rgbaValues[0], 10); 6569 green = parseInt(rgbaValues[1], 10); 6570 blue = parseInt(rgbaValues[2], 10); 6571 alpha = parseFloat(rgbaValues[3]); 6572 } else if (cleanColor.startsWith("rgb")) { 6573 const rgbValues = cleanColor.match(/rgb\(([^)]+)\)/)[1].split(","); 6574 red = parseInt(rgbValues[0], 10); 6575 green = parseInt(rgbValues[1], 10); 6576 blue = parseInt(rgbValues[2], 10); 6577 } else if (cleanColor.startsWith("hsla")) { 6578 const hslaValues = cleanColor.match(/hsla\(([^)]+)\)/)[1].split(","); 6579 const h = parseFloat(hslaValues[0]); 6580 const s = parseFloat(hslaValues[1].replace("%", "")) / 100; 6581 const l = parseFloat(hslaValues[2].replace("%", "")) / 100; 6582 alpha = parseFloat(hslaValues[3]); 6583 const C = (1 - Math.abs(2 * l - 1)) * s; 6584 const X = C * (1 - Math.abs(h / 60 % 2 - 1)); 6585 const m = l - C / 2; 6586 let R; 6587 let G; 6588 let B; 6589 if (h >= 0 && h < 60) { 6590 R = C; 6591 G = X; 6592 B = 0; 6593 } else if (h >= 60 && h < 120) { 6594 R = X; 6595 G = C; 6596 B = 0; 6597 } else if (h >= 120 && h < 180) { 6598 R = 0; 6599 G = C; 6600 B = X; 6601 } else if (h >= 180 && h < 240) { 6602 R = 0; 6603 G = X; 6604 B = C; 6605 } else if (h >= 240 && h < 300) { 6606 R = X; 6607 G = 0; 6608 B = C; 6609 } else { 6610 R = C; 6611 G = 0; 6612 B = X; 6613 } 6614 red = Math.round((R + m) * 255); 6615 green = Math.round((G + m) * 255); 6616 blue = Math.round((B + m) * 255); 6617 } else if (cleanColor.startsWith("hsl")) { 6618 const hslValues = cleanColor.match(/hsl\(([^)]+)\)/)[1].split(","); 6619 const h = parseFloat(hslValues[0]); 6620 const s = parseFloat(hslValues[1].replace("%", "")) / 100; 6621 const l = parseFloat(hslValues[2].replace("%", "")) / 100; 6622 const C = (1 - Math.abs(2 * l - 1)) * s; 6623 const X = C * (1 - Math.abs(h / 60 % 2 - 1)); 6624 const m = l - C / 2; 6625 let R; 6626 let G; 6627 let B; 6628 if (h >= 0 && h < 60) { 6629 R = C; 6630 G = X; 6631 B = 0; 6632 } else if (h >= 60 && h < 120) { 6633 R = X; 6634 G = C; 6635 B = 0; 6636 } else if (h >= 120 && h < 180) { 6637 R = 0; 6638 G = C; 6639 B = X; 6640 } else if (h >= 180 && h < 240) { 6641 R = 0; 6642 G = X; 6643 B = C; 6644 } else if (h >= 240 && h < 300) { 6645 R = X; 6646 G = 0; 6647 B = C; 6648 } else { 6649 R = C; 6650 G = 0; 6651 B = X; 6652 } 6653 red = Math.round((R + m) * 255); 6654 green = Math.round((G + m) * 255); 6655 blue = Math.round((B + m) * 255); 6656 } 6657 if (Number.isNaN(red) || Number.isNaN(green) || Number.isNaN(blue)) { 6658 throw new Error(`Invalid color in [ix2/shared/utils/normalizeColor.js] '${inputColor}'`); 6659 } 6660 return { 6661 red, 6662 green, 6663 blue, 6664 alpha 6665 }; 6666 } 6667 } 6668 }); 6669 6670
6670// packages/systems/ix2/plugins/IX2Variable.js 6671 var require_IX2Variable = __commonJS({ 6672 "packages/systems/ix2/plugins/IX2Variable.js"(exports) { 6673 "use strict"; 6674 Object.defineProperty(exports, "__esModule", { 6675 value: true 6676 }); 6677 function _export(target, all) { 6678 for (var name in all) 6679 Object.defineProperty(target, name, { 6680 enumerable: true, 6681 get: all[name] 6682 }); 6683 } 6684 _export(exports, { 6685 clearPlugin: function() { 6686 return clearPlugin2; 6687 }, 6688 createPluginInstance: function() { 6689 return createPluginInstance3; 6690 }, 6691 getPluginConfig: function() { 6692 return getPluginConfig2; 6693 }, 6694 getPluginDestination: function() { 6695 return getPluginDestination2; 6696 }, 6697 getPluginDuration: function() { 6698 return getPluginDuration3; 6699 }, 6700 getPluginOrigin: function() { 6701 return getPluginOrigin2; 6702 }, 6703 renderPlugin: function() { 6704 return renderPlugin2; 6705 } 6706 }); 6707 var _normalizeColor = require_normalizeColor(); 6708 var getPluginConfig2 = (actionItemConfig, key) => { 6709 return actionItemConfig.value[key]; 6710 }; 6711 var getPluginDuration3 = () => { 6712 return null; 6713 }; 6714 var getPluginOrigin2 = (refState2, actionItem) => { 6715 if (refState2) { 6716 return refState2; 6717 } 6718 const destination = actionItem.config.value; 6719 const objectId = actionItem.config.target.objectId; 6720 const computedValue = getComputedStyle(document.documentElement).getPropertyValue(objectId); 6721 if (destination.size != null) { 6722 return { 6723 size: parseInt(computedValue, 10) 6724 }; 6725 } 6726 if (destination.red != null && destination.green != null && destination.blue != null) { 6727 return (0, _normalizeColor.normalizeColor)(computedValue); 6728 } 6729 }; 6730 var getPluginDestination2 = (actionItemConfig) => { 6731 return actionItemConfig.value; 6732 }; 6733 var createPluginInstance3 = () => { 6734 return null; 6735 }; 6736 var renderPlugin2 = (_, refState2, actionItem) => { 6737 const objectId = actionItem.config.target.objectId; 6738 const unit = actionItem.config.value.unit; 6739 const { PLUGIN_VARIABLE: props } = refState2; 6740 const { size: size2, red, green, blue, alpha } = props; 6741 let value; 6742 if (size2 != null) { 6743 value = size2 + unit; 6744 } 6745 if (red != null && blue != null && green != null && alpha != null) { 6746 value = `rgba(${red}, ${green}, ${blue}, ${alpha})`; 6747 } 6748 if (value != null) { 6749 document.documentElement.style.setProperty(objectId, value); 6750 } 6751 }; 6752 var clearPlugin2 = (ref, actionItem) => { 6753 const objectId = actionItem.config.target.objectId; 6754 document.documentElement.style.removeProperty(objectId); 6755 }; 6756 } 6757 }); 6758 6759
6759// packages/systems/ix2/plugins/index.js 6760 var require_plugins = __commonJS({ 6761 "packages/systems/ix2/plugins/index.js"(exports) { 6762 "use strict"; 6763 Object.defineProperty(exports, "__esModule", { 6764 value: true 6765 }); 6766 Object.defineProperty(exports, "pluginMethodMap", { 6767 enumerable: true, 6768 get: function() { 6769 return pluginMethodMap2; 6770 } 6771 }); 6772 var _sharedconstants = (init_shared_constants(), __toCommonJS(shared_constants_exports)); 6773 var _IX2Lottie = /* @__PURE__ */ _interop_require_wildcard(require_IX2Lottie()); 6774 var _IX2Spline = /* @__PURE__ */ _interop_require_wildcard(require_IX2Spline()); 6775 var _IX2Variable = /* @__PURE__ */ _interop_require_wildcard(require_IX2Variable()); 6776 function _getRequireWildcardCache(nodeInterop) { 6777 if (typeof WeakMap !== "function") 6778 return null; 6779 var cacheBabelInterop = /* @__PURE__ */ new WeakMap(); 6780 var cacheNodeInterop = /* @__PURE__ */ new WeakMap(); 6781 return (_getRequireWildcardCache = function(nodeInterop2) { 6782 return nodeInterop2 ? cacheNodeInterop : cacheBabelInterop; 6783 })(nodeInterop); 6784 } 6785 function _interop_require_wildcard(obj, nodeInterop) { 6786 if (!nodeInterop && obj && obj.__esModule) { 6787 return obj; 6788 } 6789 if (obj === null || typeof obj !== "object" && typeof obj !== "function") { 6790 return { 6791 default: obj 6792 }; 6793 } 6794 var cache = _getRequireWildcardCache(nodeInterop); 6795 if (cache && cache.has(obj)) { 6796 return cache.get(obj); 6797 } 6798 var newObj = { 6799 __proto__: null 6800 }; 6801 var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; 6802 for (var key in obj) { 6803 if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { 6804 var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; 6805 if (desc && (desc.get || desc.set)) { 6806 Object.defineProperty(newObj, key, desc); 6807 } else { 6808 newObj[key] = obj[key]; 6809 } 6810 } 6811 } 6812 newObj.default = obj; 6813 if (cache) { 6814 cache.set(obj, newObj); 6815 } 6816 return newObj; 6817 } 6818 var pluginMethodMap2 = /* @__PURE__ */ new Map([ 6819 [ 6820 _sharedconstants.ActionTypeConsts.PLUGIN_LOTTIE, 6821 { 6822 ..._IX2Lottie 6823 } 6824 ], 6825 [ 6826 _sharedconstants.ActionTypeConsts.PLUGIN_SPLINE, 6827 { 6828 ..._IX2Spline 6829 } 6830 ], 6831 [ 6832 _sharedconstants.ActionTypeConsts.PLUGIN_VARIABLE, 6833 { 6834 ..._IX2Variable 6835 } 6836 ] 6837 ]); 6838 } 6839 }); 6840 6841
6841// packages/systems/ix2/shared/logic/IX2VanillaPlugins.ts 6842 var IX2VanillaPlugins_exports = {}; 6843 __export(IX2VanillaPlugins_exports, { 6844 clearPlugin: () => clearPlugin, 6845 createPluginInstance: () => createPluginInstance, 6846 getPluginConfig: () => getPluginConfig, 6847 getPluginDestination: () => getPluginDestination, 6848 getPluginDuration: () => getPluginDuration, 6849 getPluginOrigin: () => getPluginOrigin, 6850 isPluginType: () => isPluginType, 6851 renderPlugin: () => renderPlugin 6852 }); 6853 function isPluginType(actionTypeId) { 6854 return import_plugins.pluginMethodMap.has(actionTypeId); 6855 } 6856 var import_plugins, pluginMethod, getPluginConfig, getPluginOrigin, getPluginDuration, getPluginDestination, createPluginInstance, renderPlugin, clearPlugin; 6857 var init_IX2VanillaPlugins = __esm({ 6858 "packages/systems/ix2/shared/logic/IX2VanillaPlugins.ts"() { 6859 "use strict"; 6860 init_IX2BrowserSupport(); 6861 import_plugins = __toESM(require_plugins()); 6862 pluginMethod = (methodName) => (actionTypeId) => { 6863 if (!IS_BROWSER_ENV) { 6864 return () => null; 6865 } 6866 const plugin = import_plugins.pluginMethodMap.get(actionTypeId); 6867 if (!plugin) { 6868 throw new Error(`IX2 no plugin configured for: ${actionTypeId}`); 6869 } 6870 const method = plugin[methodName]; 6871 if (!method) { 6872 throw new Error(`IX2 invalid plugin method: ${methodName}`); 6873 } 6874 return method; 6875 }; 6876 getPluginConfig = pluginMethod("getPluginConfig"); 6877 getPluginOrigin = pluginMethod("getPluginOrigin"); 6878 getPluginDuration = pluginMethod("getPluginDuration"); 6879 getPluginDestination = pluginMethod("getPluginDestination"); 6880 createPluginInstance = pluginMethod("createPluginInstance"); 6881 renderPlugin = pluginMethod("renderPlugin"); 6882 clearPlugin = pluginMethod("clearPlugin"); 6883 } 6884 }); 6885 6886
vendor: 312 bytes, lines 6886-6896
6886// node_modules/lodash/defaultTo.js 6887 var require_defaultTo = __commonJS({ 6888 "node_modules/lodash/defaultTo.js"(exports, module) { 6889 function defaultTo2(value, defaultValue) { 6890 return value == null || value !== value ? defaultValue : value; 6891 } 6892 module.exports = defaultTo2; 6893 } 6894 }); 6895 6896
vendor: 570 bytes, lines 6896-6913
6896// node_modules/lodash/_arrayReduce.js 6897 var require_arrayReduce = __commonJS({ 6898 "node_modules/lodash/_arrayReduce.js"(exports, module) { 6899 function arrayReduce(array, iteratee, accumulator, initAccum) { 6900 var index = -1, length = array == null ? 0 : array.length; 6901 if (initAccum && length) { 6902 accumulator = array[++index]; 6903 } 6904 while (++index < length) { 6905 accumulator = iteratee(accumulator, array[index], index, array); 6906 } 6907 return accumulator; 6908 } 6909 module.exports = arrayReduce; 6910 } 6911 }); 6912 6913
vendor: 645 bytes, lines 6913-6932
6913// node_modules/lodash/_createBaseFor.js 6914 var require_createBaseFor = __commonJS({ 6915 "node_modules/lodash/_createBaseFor.js"(exports, module) { 6916 function createBaseFor(fromRight) { 6917 return function(object, iteratee, keysFunc) { 6918 var index = -1, iterable = Object(object), props = keysFunc(object), length = props.length; 6919 while (length--) { 6920 var key = props[fromRight ? length : ++index]; 6921 if (iteratee(iterable[key], key, iterable) === false) { 6922 break; 6923 } 6924 } 6925 return object; 6926 }; 6927 } 6928 module.exports = createBaseFor; 6929 } 6930 }); 6931 6932
vendor: 264 bytes, lines 6932-6941
6932// node_modules/lodash/_baseFor.js 6933 var require_baseFor = __commonJS({ 6934 "node_modules/lodash/_baseFor.js"(exports, module) { 6935 var createBaseFor = require_createBaseFor(); 6936 var baseFor = createBaseFor(); 6937 module.exports = baseFor; 6938 } 6939 }); 6940 6941
vendor: 372 bytes, lines 6941-6953
6941// node_modules/lodash/_baseForOwn.js 6942 var require_baseForOwn = __commonJS({ 6943 "node_modules/lodash/_baseForOwn.js"(exports, module) { 6944 var baseFor = require_baseFor(); 6945 var keys = require_keys(); 6946 function baseForOwn(object, iteratee) { 6947 return object && baseFor(object, iteratee, keys); 6948 } 6949 module.exports = baseForOwn; 6950 } 6951 }); 6952 6953
vendor: 868 bytes, lines 6953-6978
6953// node_modules/lodash/_createBaseEach.js 6954 var require_createBaseEach = __commonJS({ 6955 "node_modules/lodash/_createBaseEach.js"(exports, module) { 6956 var isArrayLike = require_isArrayLike(); 6957 function createBaseEach(eachFunc, fromRight) { 6958 return function(collection, iteratee) { 6959 if (collection == null) { 6960 return collection; 6961 } 6962 if (!isArrayLike(collection)) { 6963 return eachFunc(collection, iteratee); 6964 } 6965 var length = collection.length, index = fromRight ? length : -1, iterable = Object(collection); 6966 while (fromRight ? index-- : ++index < length) { 6967 if (iteratee(iterable[index], index, iterable) === false) { 6968 break; 6969 } 6970 } 6971 return collection; 6972 }; 6973 } 6974 module.exports = createBaseEach; 6975 } 6976 }); 6977 6978
vendor: 327 bytes, lines 6978-6988
6978// node_modules/lodash/_baseEach.js 6979 var require_baseEach = __commonJS({ 6980 "node_modules/lodash/_baseEach.js"(exports, module) { 6981 var baseForOwn = require_baseForOwn(); 6982 var createBaseEach = require_createBaseEach(); 6983 var baseEach = createBaseEach(baseForOwn); 6984 module.exports = baseEach; 6985 } 6986 }); 6987 6988
vendor: 502 bytes, lines 6988-7001
6988// node_modules/lodash/_baseReduce.js 6989 var require_baseReduce = __commonJS({ 6990 "node_modules/lodash/_baseReduce.js"(exports, module) { 6991 function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) { 6992 eachFunc(collection, function(value, index, collection2) { 6993 accumulator = initAccum ? (initAccum = false, value) : iteratee(accumulator, value, index, collection2); 6994 }); 6995 return accumulator; 6996 } 6997 module.exports = baseReduce; 6998 } 6999 }); 7000 7001
vendor: 655 bytes, lines 7001-7017
7001// node_modules/lodash/reduce.js 7002 var require_reduce = __commonJS({ 7003 "node_modules/lodash/reduce.js"(exports, module) { 7004 var arrayReduce = require_arrayReduce(); 7005 var baseEach = require_baseEach(); 7006 var baseIteratee = require_baseIteratee(); 7007 var baseReduce = require_baseReduce(); 7008 var isArray = require_isArray(); 7009 function reduce2(collection, iteratee, accumulator) { 7010 var func = isArray(collection) ? arrayReduce : baseReduce, initAccum = arguments.length < 3; 7011 return func(collection, baseIteratee(iteratee, 4), accumulator, initAccum, baseEach); 7012 } 7013 module.exports = reduce2; 7014 } 7015 }); 7016 7017
vendor: 873 bytes, lines 7017-7041
7017// node_modules/lodash/findLastIndex.js 7018 var require_findLastIndex = __commonJS({ 7019 "node_modules/lodash/findLastIndex.js"(exports, module) { 7020 var baseFindIndex = require_baseFindIndex(); 7021 var baseIteratee = require_baseIteratee(); 7022 var toInteger = require_toInteger(); 7023 var nativeMax = Math.max; 7024 var nativeMin = Math.min; 7025 function findLastIndex(array, predicate, fromIndex) { 7026 var length = array == null ? 0 : array.length; 7027 if (!length) { 7028 return -1; 7029 } 7030 var index = length - 1; 7031 if (fromIndex !== void 0) { 7032 index = toInteger(fromIndex); 7033 index = fromIndex < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1); 7034 } 7035 return baseFindIndex(array, baseIteratee(predicate, 3), index, true); 7036 } 7037 module.exports = findLastIndex; 7038 } 7039 }); 7040 7041
vendor: 324 bytes, lines 7041-7051
7041// node_modules/lodash/findLast.js 7042 var require_findLast = __commonJS({ 7043 "node_modules/lodash/findLast.js"(exports, module) { 7044 var createFind = require_createFind(); 7045 var findLastIndex = require_findLastIndex(); 7046 var findLast2 = createFind(findLastIndex); 7047 module.exports = findLast2; 7048 } 7049 }); 7050 7051
7051// packages/systems/ix2/shared/logic/shallowEqual.ts 7052 function is(x, y) { 7053 if (x === y) { 7054 return x !== 0 || y !== 0 || 1 / x === 1 / y; 7055 } 7056 return x !== x && y !== y; 7057 } 7058 function shallowEqual(objA, objB) { 7059 if (is(objA, objB)) { 7060 return true; 7061 } 7062 if (typeof objA !== "object" || objA === null || typeof objB !== "object" || objB === null) { 7063 return false; 7064 } 7065 const keysA = Object.keys(objA); 7066 const keysB = Object.keys(objB); 7067 if (keysA.length !== keysB.length) { 7068 return false; 7069 } 7070 for (let i = 0; i < keysA.length; i++) { 7071 if (!Object.hasOwn( 7072 objB, 7073 // @ts-expect-error - TS2345 - Argument of type 'string | undefined' is not assignable to parameter of type 'PropertyKey'. 7074 keysA[i] 7075 ) || // @ts-expect-error - TS2538 - Type 'undefined' cannot be used as an index type. | TS2538 - Type 'undefined' cannot be used as an index type. 7076 !is(objA[keysA[i]], objB[keysA[i]])) { 7077 return false; 7078 } 7079 } 7080 return true; 7081 } 7082 var shallowEqual_default; 7083 var init_shallowEqual = __esm({ 7084 "packages/systems/ix2/shared/logic/shallowEqual.ts"() { 7085 "use strict"; 7086 shallowEqual_default = shallowEqual; 7087 } 7088 }); 7089 7090
7090// packages/systems/ix2/shared/logic/IX2VanillaUtils.ts 7091 var IX2VanillaUtils_exports = {}; 7092 __export(IX2VanillaUtils_exports, { 7093 cleanupHTMLElement: () => cleanupHTMLElement, 7094 clearAllStyles: () => clearAllStyles, 7095 clearObjectCache: () => clearObjectCache, 7096 getActionListProgress: () => getActionListProgress, 7097 getAffectedElements: () => getAffectedElements, 7098 getComputedStyle: () => getComputedStyle2, 7099 getDestinationValues: () => getDestinationValues, 7100 getElementId: () => getElementId, 7101 getInstanceId: () => getInstanceId, 7102 getInstanceOrigin: () => getInstanceOrigin, 7103 getItemConfigByKey: () => getItemConfigByKey, 7104 getMaxDurationItemIndex: () => getMaxDurationItemIndex, 7105 getNamespacedParameterId: () => getNamespacedParameterId, 7106 getRenderType: () => getRenderType, 7107 getStyleProp: () => getStyleProp, 7108 mediaQueriesEqual: () => mediaQueriesEqual, 7109 observeStore: () => observeStore, 7110 reduceListToGroup: () => reduceListToGroup, 7111 reifyState: () => reifyState, 7112 renderHTMLElement: () => renderHTMLElement, 7113 shallowEqual: () => shallowEqual_default, 7114 shouldAllowMediaQuery: () => shouldAllowMediaQuery, 7115 shouldNamespaceEventParameter: () => shouldNamespaceEventParameter, 7116 stringifyTarget: () => stringifyTarget 7117 }); 7118 function clearObjectCache() { 7119 objectCache.clear(); 7120 } 7121 function getInstanceId() { 7122 return "i" + instanceCount++; 7123 } 7124 function getElementId(ixElements3, ref) { 7125 for (const key in ixElements3) { 7126 const ixEl = ixElements3[key]; 7127 if (ixEl && ixEl.ref === ref) { 7128 return ixEl.id; 7129 } 7130 } 7131 return "e" + elementCount++; 7132 } 7133 function reifyState({ 7134 events, 7135 actionLists, 7136 site 7137 } = {}) { 7138 const eventTypeMap = (0, import_reduce.default)( 7139 events, 7140 (result, event) => { 7141 const { eventTypeId } = event; 7142 if (!result[eventTypeId]) { 7143 result[eventTypeId] = {}; 7144 } 7145 result[eventTypeId][event.id] = event; 7146 return result; 7147 }, 7148 {} 7149 ); 7150 let mediaQueries = site && site.mediaQueries; 7151 let mediaQueryKeys = []; 7152 if (mediaQueries) { 7153 mediaQueryKeys = mediaQueries.map((mq) => mq.key); 7154 } else { 7155 mediaQueries = []; 7156 console.warn(`IX2 missing mediaQueries in site data`); 7157 } 7158 return { 7159 ixData: { 7160 events, 7161 actionLists, 7162 eventTypeMap, 7163 mediaQueries, 7164 mediaQueryKeys 7165 } 7166 }; 7167 } 7168 function observeStore({ 7169 // @ts-expect-error - TS7031 - Binding element 'store' implicitly has an 'any' type. 7170 store, 7171 // @ts-expect-error - TS7031 - Binding element 'select' implicitly has an 'any' type. 7172 select, 7173 // @ts-expect-error - TS7031 - Binding element 'onChange' implicitly has an 'any' type. 7174 onChange, 7175 comparator = strictEqual 7176 }) { 7177 const { getState, subscribe } = store; 7178 const unsubscribe = subscribe(handleChange); 7179 let currentState = select(getState()); 7180 function handleChange() { 7181 const nextState = select(getState()); 7182 if (nextState == null) { 7183 unsubscribe(); 7184 return; 7185 } 7186 if (!comparator(nextState, currentState)) { 7187 currentState = nextState; 7188 onChange(currentState, store); 7189 } 7190 } 7191 return unsubscribe; 7192 } 7193 function normalizeTarget(target) { 7194 const type = typeof target; 7195 if (type === "string") { 7196 return { id: target }; 7197 } else if (target != null && type === "object") { 7198 const { id, objectId, selector, selectorGuids, appliesTo, useEventTarget } = target; 7199 return { id, objectId, selector, selectorGuids, appliesTo, useEventTarget }; 7200 } 7201 return {}; 7202 } 7203 function getAffectedElements({ 7204 config, 7205 event, 7206 eventTarget, 7207 elementRoot, 7208 elementApi 7209 }) { 7210 if (!elementApi) { 7211 throw new Error("IX2 missing elementApi"); 7212 } 7213 const { targets } = config; 7214 if (Array.isArray(targets) && targets.length > 0) { 7215 return targets.reduce( 7216 (accumulator, target2) => accumulator.concat( 7217 getAffectedElements({ 7218 config: { target: target2 }, 7219 event, 7220 eventTarget, 7221 elementRoot, 7222 elementApi 7223 }) 7224 ), 7225 [] 7226 ); 7227 } 7228 const { 7229 getValidDocument: getValidDocument2, 7230 getQuerySelector: getQuerySelector2, 7231 queryDocument: queryDocument2, 7232 getChildElements: getChildElements2, 7233 getSiblingElements: getSiblingElements2, 7234 matchSelector: matchSelector2, 7235 elementContains: elementContains2, 7236 isSiblingNode: isSiblingNode2 7237 } = elementApi; 7238 const { target } = config; 7239 if (!target) { 7240 return []; 7241 } 7242 const { 7243 id, 7244 objectId, 7245 selector, 7246 selectorGuids, 7247 appliesTo, 7248 useEventTarget 7249 } = normalizeTarget(target); 7250 if (objectId) { 7251 const ref = objectCache.has(objectId) ? objectCache.get(objectId) : objectCache.set(objectId, {}).get(objectId); 7252 return [ref]; 7253 } 7254 if (appliesTo === EventAppliesTo.PAGE) { 7255 const doc = getValidDocument2(id); 7256 return doc ? [doc] : []; 7257 } 7258 const overrides = event?.action?.config?.affectedElements ?? {}; 7259 const override = overrides[id || selector] || {}; 7260 const validOverride = Boolean(override.id || override.selector); 7261 let limitAffectedElements; 7262 let baseSelector; 7263 let finalSelector; 7264 const eventTargetSelector = event && getQuerySelector2(normalizeTarget(event.target)); 7265 if (validOverride) { 7266 limitAffectedElements = override.limitAffectedElements; 7267 baseSelector = eventTargetSelector; 7268 finalSelector = getQuerySelector2(override); 7269 } else { 7270 baseSelector = finalSelector = getQuerySelector2({ 7271 id, 7272 selector, 7273 selectorGuids 7274 }); 7275 } 7276 if (event && useEventTarget) { 7277 const eventTargets = eventTarget && (finalSelector || useEventTarget === true) ? [eventTarget] : queryDocument2(eventTargetSelector); 7278 if (finalSelector) { 7279 if (useEventTarget === PARENT2) { 7280 return queryDocument2(finalSelector).filter( 7281 (parentElement) => eventTargets.some( 7282 (targetElement) => elementContains2(parentElement, targetElement) 7283 ) 7284 ); 7285 } 7286 if (useEventTarget === CHILDREN2) { 7287 return queryDocument2(finalSelector).filter( 7288 (childElement) => eventTargets.some( 7289 (targetElement) => elementContains2(targetElement, childElement) 7290 ) 7291 ); 7292 } 7293 if (useEventTarget === SIBLINGS2) { 7294 return queryDocument2(finalSelector).filter( 7295 (siblingElement) => eventTargets.some( 7296 (targetElement) => isSiblingNode2(targetElement, siblingElement) 7297 ) 7298 ); 7299 } 7300 } 7301 return eventTargets; 7302 } 7303 if (baseSelector == null || finalSelector == null) { 7304 return []; 7305 } 7306 if (IS_BROWSER_ENV && elementRoot) { 7307 return queryDocument2(finalSelector).filter( 7308 (element) => elementRoot.contains(element) 7309 ); 7310 } 7311 if (limitAffectedElements === CHILDREN2) { 7312 return queryDocument2(baseSelector, finalSelector); 7313 } else if (limitAffectedElements === IMMEDIATE_CHILDREN2) { 7314 return getChildElements2(queryDocument2(baseSelector)).filter( 7315 matchSelector2(finalSelector) 7316 ); 7317 } else if (limitAffectedElements === SIBLINGS2) { 7318 return getSiblingElements2(queryDocument2(baseSelector)).filter( 7319 matchSelector2(finalSelector) 7320 ); 7321 } else { 7322 return queryDocument2(finalSelector); 7323 } 7324 } 7325 function getComputedStyle2({ element, actionItem }) { 7326 if (!IS_BROWSER_ENV) { 7327 return {}; 7328 } 7329 const { actionTypeId } = actionItem; 7330 switch (actionTypeId) { 7331 case STYLE_SIZE2: 7332 case STYLE_BACKGROUND_COLOR: 7333 case STYLE_BORDER: 7334 case STYLE_TEXT_COLOR: 7335 case GENERAL_DISPLAY: 7336 return window.getComputedStyle(element); 7337 default: 7338 return {}; 7339 } 7340 } 7341 function getInstanceOrigin(element, refState2 = {}, computedStyle = {}, actionItem, elementApi) { 7342 const { getStyle: getStyle2 }
7342 = elementApi; 7343 const { actionTypeId } = actionItem; 7344 if (isPluginType(actionTypeId)) { 7345 return getPluginOrigin(actionTypeId)(refState2[actionTypeId], actionItem); 7346 } 7347 switch (actionItem.actionTypeId) { 7348 case TRANSFORM_MOVE2: 7349 case TRANSFORM_SCALE2: 7350 case TRANSFORM_ROTATE2: 7351 case TRANSFORM_SKEW2: { 7352 return ( 7353 // @ts-expect-error - TS7053 - Element implicitly has an 'any' type because expression of type '"TRANSFORM_MOVE" | "TRANSFORM_SCALE" | "TRANSFORM_ROTATE" | "TRANSFORM_SKEW"' can't be used to index type '{}'. 7354 refState2[actionItem.actionTypeId] || transformDefaults[actionItem.actionTypeId] 7355 ); 7356 } 7357 case STYLE_FILTER2: 7358 return getFilterDefaults( 7359 // @ts-expect-error - TS7053 - Element implicitly has an 'any' type because expression of type '"STYLE_FILTER"' can't be used to index type '{}'. 7360 refState2[actionItem.actionTypeId], 7361 actionItem.config.filters 7362 ); 7363 case STYLE_FONT_VARIATION2: 7364 return getFontVariationDefaults( 7365 // @ts-expect-error - TS7053 - Element implicitly has an 'any' type because expression of type '"STYLE_FONT_VARIATION"' can't be used to index type '{}'. 7366 refState2[actionItem.actionTypeId], 7367 actionItem.config.fontVariations 7368 ); 7369 case STYLE_OPACITY: 7370 return { value: (0, import_defaultTo.default)(parseFloat(getStyle2(element, OPACITY2)), 1) }; 7371 case STYLE_SIZE2: { 7372 const inlineWidth = getStyle2(element, WIDTH2); 7373 const inlineHeight = getStyle2(element, HEIGHT2); 7374 let widthValue; 7375 let heightValue; 7376 if (actionItem.config.widthUnit === AUTO2) { 7377 widthValue = pxValueRegex.test(inlineWidth) ? parseFloat(inlineWidth) : ( 7378 // @ts-expect-error - TS18047 - 'computedStyle' is possibly 'null'. 7379 parseFloat(computedStyle.width) 7380 ); 7381 } else { 7382 widthValue = (0, import_defaultTo.default)( 7383 parseFloat(inlineWidth), 7384 // @ts-expect-error - TS18047 - 'computedStyle' is possibly 'null'. 7385 parseFloat(computedStyle.width) 7386 ); 7387 } 7388 if (actionItem.config.heightUnit === AUTO2) { 7389 heightValue = pxValueRegex.test(inlineHeight) ? parseFloat(inlineHeight) : ( 7390 // @ts-expect-error - TS18047 - 'computedStyle' is possibly 'null'. 7391 parseFloat(computedStyle.height) 7392 ); 7393 } else { 7394 heightValue = (0, import_defaultTo.default)( 7395 parseFloat(inlineHeight), 7396 // @ts-expect-error - TS18047 - 'computedStyle' is possibly 'null'. 7397 parseFloat(computedStyle.height) 7398 ); 7399 } 7400 return { 7401 widthValue, 7402 heightValue 7403 }; 7404 } 7405 case STYLE_BACKGROUND_COLOR: 7406 case STYLE_BORDER: 7407 case STYLE_TEXT_COLOR: 7408 return parseColor({ 7409 element, 7410 actionTypeId: actionItem.actionTypeId, 7411 computedStyle, 7412 getStyle: getStyle2 7413 }); 7414 case GENERAL_DISPLAY: 7415 return { 7416 // @ts-expect-error - TS18047 - 'computedStyle' is possibly 'null'. 7417 value: (0, import_defaultTo.default)(getStyle2(element, DISPLAY2), computedStyle.display) 7418 }; 7419 case OBJECT_VALUE: 7420 return refState2[actionItem.actionTypeId] || { value: 0 }; 7421 default: { 7422 return; 7423 } 7424 } 7425 } 7426 function getDestinationValues({ 7427 element, 7428 actionItem, 7429 elementApi 7430 }) { 7431 if (isPluginType(actionItem.actionTypeId)) { 7432 return getPluginDestination(actionItem.actionTypeId)(actionItem.config); 7433 } 7434 switch (actionItem.actionTypeId) { 7435 case TRANSFORM_MOVE2: 7436 case TRANSFORM_SCALE2: 7437 case TRANSFORM_ROTATE2: 7438 case TRANSFORM_SKEW2: { 7439 const { xValue, yValue, zValue } = actionItem.config; 7440 return { xValue, yValue, zValue }; 7441 } 7442 case STYLE_SIZE2: { 7443 const { getStyle: getStyle2, setStyle: setStyle2, getProperty: getProperty2 } = elementApi; 7444 const { widthUnit, heightUnit } = actionItem.config; 7445 let { widthValue, heightValue } = actionItem.config; 7446 if (!IS_BROWSER_ENV) { 7447 return { widthValue, heightValue }; 7448 } 7449 if (widthUnit === AUTO2) { 7450 const temp = getStyle2(element, WIDTH2); 7451 setStyle2(element, WIDTH2, ""); 7452 widthValue = getProperty2(element, "offsetWidth"); 7453 setStyle2(element, WIDTH2, temp); 7454 } 7455 if (heightUnit === AUTO2) { 7456 const temp = getStyle2(element, HEIGHT2); 7457 setStyle2(element, HEIGHT2, ""); 7458 heightValue = getProperty2(element, "offsetHeight"); 7459 setStyle2(element, HEIGHT2, temp); 7460 } 7461 return { widthValue, heightValue }; 7462 } 7463 case STYLE_BACKGROUND_COLOR: 7464 case STYLE_BORDER: 7465 case STYLE_TEXT_COLOR: { 7466 const { rValue, gValue, bValue, aValue, globalSwatchId } = actionItem.config; 7467 if (globalSwatchId && globalSwatchId.startsWith("--")) { 7468 const { getStyle: getStyle2 }
7468 = elementApi; 7469 const value = getStyle2(element, globalSwatchId); 7470 const normalizedValue = (0, import_normalizeColor.normalizeColor)(value); 7471 return { 7472 rValue: normalizedValue.red, 7473 gValue: normalizedValue.green, 7474 bValue: normalizedValue.blue, 7475 aValue: normalizedValue.alpha 7476 }; 7477 } 7478 return { rValue, gValue, bValue, aValue }; 7479 } 7480 case STYLE_FILTER2: { 7481 return actionItem.config.filters.reduce( 7482 reduceFilters, 7483 {} 7484 ); 7485 } 7486 case STYLE_FONT_VARIATION2: { 7487 return actionItem.config.fontVariations.reduce( 7488 reduceFontVariations, 7489 {} 7490 ); 7491 } 7492 default: { 7493 const { value } = actionItem.config; 7494 return { value }; 7495 } 7496 } 7497 } 7498 function getRenderType(actionTypeId) { 7499 if (/^TRANSFORM_/.test(actionTypeId)) { 7500 return RENDER_TRANSFORM2; 7501 } 7502 if (/^STYLE_/.test(actionTypeId)) { 7503 return RENDER_STYLE2; 7504 } 7505 if (/^GENERAL_/.test(actionTypeId)) { 7506 return RENDER_GENERAL2; 7507 } 7508 if (/^PLUGIN_/.test(actionTypeId)) { 7509 return RENDER_PLUGIN2; 7510 } 7511 } 7512 function getStyleProp(renderType, actionTypeId) { 7513 return renderType === RENDER_STYLE2 ? actionTypeId.replace("STYLE_", "").toLowerCase() : null; 7514 } 7515 function renderHTMLElement(element, refState2, actionState, eventId, actionItem, styleProp, elementApi, renderType, pluginInstance) { 7516 switch (renderType) { 7517 case RENDER_TRANSFORM2: { 7518 return renderTransform( 7519 element, 7520 refState2, 7521 actionState, 7522 actionItem, 7523 elementApi 7524 ); 7525 } 7526 case RENDER_STYLE2: { 7527 return renderStyle( 7528 element, 7529 refState2, 7530 actionState, 7531 actionItem, 7532 styleProp, 7533 elementApi 7534 ); 7535 } 7536 case RENDER_GENERAL2: { 7537 return renderGeneral(element, actionItem, elementApi); 7538 } 7539 case RENDER_PLUGIN2: { 7540 const { actionTypeId } = actionItem; 7541 if (isPluginType(actionTypeId)) { 7542 return renderPlugin(actionTypeId)(pluginInstance, refState2, actionItem); 7543 } 7544 } 7545 } 7546 } 7547 function renderTransform(element, refState2, actionState, actionItem, elementApi) { 7548 const newTransform = transformKeys.map((actionTypeId) => { 7549 const defaults = transformDefaults[actionTypeId]; 7550 const { 7551 xValue = defaults.xValue, 7552 yValue = defaults.yValue, 7553 zValue = defaults.zValue, 7554 xUnit = "", 7555 yUnit = "", 7556 zUnit = "" 7557 } = refState2[actionTypeId] || {}; 7558 switch (actionTypeId) { 7559 case TRANSFORM_MOVE2: 7560 return `${TRANSLATE_3D2}(${xValue}${xUnit}, ${yValue}${yUnit}, ${zValue}${zUnit})`; 7561 case TRANSFORM_SCALE2: 7562 return `${SCALE_3D2}(${xValue}${xUnit}, ${yValue}${yUnit}, ${zValue}${zUnit})`; 7563 case TRANSFORM_ROTATE2: 7564 return `${ROTATE_X2}(${xValue}${xUnit}) ${ROTATE_Y2}(${yValue}${yUnit}) ${ROTATE_Z2}(${zValue}${zUnit})`; 7565 case TRANSFORM_SKEW2: 7566 return `${SKEW2}(${xValue}${xUnit}, ${yValue}${yUnit})`; 7567 default: 7568 return ""; 7569 } 7570 }).join(" "); 7571 const { setStyle: setStyle2 } = elementApi; 7572 addWillChange(element, TRANSFORM_PREFIXED, elementApi); 7573 setStyle2(element, TRANSFORM_PREFIXED, newTransform); 7574 if (hasDefined3dTransform(actionItem, actionState)) { 7575 setStyle2(element, TRANSFORM_STYLE_PREFIXED, PRESERVE_3D2); 7576 } 7577 } 7578 function renderFilter(element, actionState, actionItemConfig, elementApi) { 7579 const filterValue = (0, import_reduce.default)( 7580 actionState, 7581 (result, value, type) => `${result} ${type}(${value}${getFilterUnit(type, actionItemConfig)})`, 7582 "" 7583 ); 7584 const { setStyle: setStyle2 } = elementApi; 7585 addWillChange(element, FILTER2, elementApi); 7586 setStyle2(element, FILTER2, filterValue); 7587 } 7588 function renderFontVariation(element, actionState, actionItemConfig, elementApi) { 7589 const fontVariationValue = (0, import_reduce.default)( 7590 actionState, 7591 (result, value, type) => { 7592 result.push(`"${type}" ${value}`); 7593 return result; 7594 }, 7595 [] 7596 ).join(", "); 7597 const { setStyle: setStyle2 }
7597 = elementApi; 7598 addWillChange(element, FONT_VARIATION_SETTINGS2, elementApi); 7599 setStyle2(element, FONT_VARIATION_SETTINGS2, fontVariationValue); 7600 } 7601 function hasDefined3dTransform({ actionTypeId }, { xValue, yValue, zValue }) { 7602 return actionTypeId === TRANSFORM_MOVE2 && zValue !== void 0 || // SCALE_Z 7603 actionTypeId === TRANSFORM_SCALE2 && zValue !== void 0 || // ROTATE_X or ROTATE_Y 7604 actionTypeId === TRANSFORM_ROTATE2 && (xValue !== void 0 || yValue !== void 0); 7605 } 7606 function getFirstMatch(regex, value) { 7607 const match = regex.exec(value); 7608 return match ? match[1] : ""; 7609 } 7610 function parseColor({ element, actionTypeId, computedStyle, getStyle: getStyle2 }) { 7611 const prop = colorStyleProps[actionTypeId]; 7612 const inlineValue = getStyle2(element, prop); 7613 const value = rgbValidRegex.test(inlineValue) ? inlineValue : computedStyle[prop]; 7614 const matches = getFirstMatch(rgbMatchRegex, value).split(COMMA_DELIMITER2); 7615 return { 7616 // @ts-expect-error - TS2345 - Argument of type 'string | undefined' is not assignable to parameter of type 'string'. 7617 rValue: (0, import_defaultTo.default)(parseInt(matches[0], 10), 255), 7618 // @ts-expect-error - TS2345 - Argument of type 'string | undefined' is not assignable to parameter of type 'string'. 7619 gValue: (0, import_defaultTo.default)(parseInt(matches[1], 10), 255), 7620 // @ts-expect-error - TS2345 - Argument of type 'string | undefined' is not assignable to parameter of type 'string'. 7621 bValue: (0, import_defaultTo.default)(parseInt(matches[2], 10), 255), 7622 // @ts-expect-error - TS2345 - Argument of type 'string | undefined' is not assignable to parameter of type 'string'. 7623 aValue: (0, import_defaultTo.default)(parseFloat(matches[3]), 1) 7624 }; 7625 }
7626 function renderStyle(element, refState2, actionState, actionItem, styleProp, elementApi) { 7627 const { setStyle: setStyle2 } = elementApi; 7628 switch (actionItem.actionTypeId) { 7629 case STYLE_SIZE2: { 7630 let { widthUnit = "", heightUnit = "" } = actionItem.config; 7631 const { widthValue, heightValue } = actionState; 7632 if (widthValue !== void 0) { 7633 if (widthUnit === AUTO2) { 7634 widthUnit = "px"; 7635 } 7636 addWillChange(element, WIDTH2, elementApi); 7637 setStyle2(element, WIDTH2, widthValue + widthUnit); 7638 } 7639 if (heightValue !== void 0) { 7640 if (heightUnit === AUTO2) { 7641 heightUnit = "px"; 7642 } 7643 addWillChange(element, HEIGHT2, elementApi); 7644 setStyle2(element, HEIGHT2, heightValue + heightUnit); 7645 } 7646 break; 7647 } 7648 case STYLE_FILTER2: { 7649 renderFilter(element, actionState, actionItem.config, elementApi); 7650 break; 7651 } 7652 case STYLE_FONT_VARIATION2: { 7653 renderFontVariation(element, actionState, actionItem.config, elementApi); 7654 break; 7655 } 7656 case STYLE_BACKGROUND_COLOR: 7657 case STYLE_BORDER: 7658 case STYLE_TEXT_COLOR: { 7659 const prop = colorStyleProps[actionItem.actionTypeId]; 7660 const rValue = Math.round(actionState.rValue); 7661 const gValue = Math.round(actionState.gValue); 7662 const bValue = Math.round(actionState.bValue); 7663 const aValue = actionState.aValue; 7664 addWillChange(element, prop, elementApi); 7665 setStyle2( 7666 element, 7667 prop, 7668 aValue >= 1 ? `rgb(${rValue},${gValue},${bValue})` : `rgba(${rValue},${gValue},${bValue},${aValue})` 7669 ); 7670 break; 7671 } 7672 default: { 7673 const { unit = "" } = actionItem.config; 7674 addWillChange(element, styleProp, elementApi); 7675 setStyle2(element, styleProp, actionState.value + unit); 7676 break; 7677 } 7678 } 7679 } 7680 function renderGeneral(element, actionItem, elementApi) { 7681 const { setStyle: setStyle2 } = elementApi; 7682 switch (actionItem.actionTypeId) { 7683 case GENERAL_DISPLAY: { 7684 const { value } = actionItem.config; 7685 if (value === FLEX2 && IS_BROWSER_ENV) { 7686 setStyle2(element, DISPLAY2, FLEX_PREFIXED); 7687 } else { 7688 setStyle2(element, DISPLAY2, value); 7689 } 7690 return; 7691 } 7692 } 7693 } 7694 function addWillChange(element, prop, elementApi) { 7695 if (!IS_BROWSER_ENV) { 7696 return; 7697 } 7698 const validProp = willChangeProps[prop]; 7699 if (!validProp) { 7700 return; 7701 } 7702 const { getStyle: getStyle2, setStyle: setStyle2 } = elementApi; 7703 const value = getStyle2(element, WILL_CHANGE2); 7704 if (!value) { 7705 setStyle2(element, WILL_CHANGE2, validProp); 7706 return; 7707 } 7708 const values = value.split(COMMA_DELIMITER2).map(trim); 7709 if (values.indexOf(validProp) === -1) { 7710 setStyle2( 7711 element, 7712 WILL_CHANGE2, 7713 values.concat(validProp).join(COMMA_DELIMITER2) 7714 ); 7715 } 7716 } 7717 function removeWillChange(element, prop, elementApi) { 7718 if (!IS_BROWSER_ENV) { 7719 return; 7720 } 7721 const validProp = willChangeProps[prop]; 7722 if (!validProp) { 7723 return; 7724 } 7725 const { getStyle: getStyle2, setStyle: setStyle2 } = elementApi; 7726 const value = getStyle2(element, WILL_CHANGE2); 7727 if (!value || value.indexOf(validProp) === -1) { 7728 return; 7729 } 7730 setStyle2( 7731 element, 7732 WILL_CHANGE2, 7733 value.split(COMMA_DELIMITER2).map(trim).filter((v) => v !== validProp).join(COMMA_DELIMITER2) 7734 ); 7735 } 7736 function clearAllStyles({ store, elementApi }) { 7737 const { ixData: ixData2 } = store.getState(); 7738 const { events = {}, actionLists = {} } = ixData2; 7739 Object.keys(events).forEach((eventId) => { 7740 const event = events[eventId]; 7741 const { config } = event.action; 7742 const { actionListId } = config; 7743 const actionList = actionLists[actionListId]; 7744 if (actionList) { 7745 clearActionListStyles({ actionList, event, elementApi }); 7746 } 7747 }); 7748 Object.keys(actionLists).forEach((actionListId) => { 7749 clearActionListStyles({ actionList: actionLists[actionListId], elementApi }); 7750 }); 7751 } 7752 function clearActionListStyles({ actionList = {}, event, elementApi }) { 7753 const { actionItemGroups, continuousParameterGroups } = actionList; 7754 actionItemGroups && // @ts-expect-error - TS7006 - Parameter 'actionGroup' implicitly has an 'any' type. 7755 actionItemGroups.forEach((actionGroup) => { 7756 clearActionGroupStyles({ actionGroup, event, elementApi }); 7757 }); 7758 continuousParameterGroups && // @ts-expect-error - TS7006 - Parameter 'paramGroup' implicitly has an 'any' type. 7759 continuousParameterGroups.forEach((paramGroup) => { 7760 const { continuousActionGroups } = paramGroup; 7761 continuousActionGroups.forEach((actionGroup) => { 7762 clearActionGroupStyles({ actionGroup, event, elementApi }); 7763 }); 7764 }); 7765 } 7766 function clearActionGroupStyles({ actionGroup, event, elementApi }) { 7767 const { actionItems } = actionGroup;
7768 actionItems.forEach((actionItem) => { 7769 const { actionTypeId, config } = actionItem; 7770 let clearElement; 7771 if (isPluginType(actionTypeId)) { 7772 clearElement = (ref) => clearPlugin(actionTypeId)(ref, actionItem); 7773 } else { 7774 clearElement = processElementByType({ 7775 effect: clearStyleProp, 7776 actionTypeId, 7777 elementApi 7778 }); 7779 } 7780 getAffectedElements({ config, event, elementApi }).forEach(clearElement); 7781 }); 7782 } 7783 function cleanupHTMLElement(element, actionItem, elementApi) { 7784 const { setStyle: setStyle2, getStyle: getStyle2 } = elementApi; 7785 const { actionTypeId } = actionItem; 7786 if (actionTypeId === STYLE_SIZE2) { 7787 const { config } = actionItem; 7788 if (config.widthUnit === AUTO2) { 7789 setStyle2(element, WIDTH2, ""); 7790 } 7791 if (config.heightUnit === AUTO2) { 7792 setStyle2(element, HEIGHT2, ""); 7793 } 7794 } 7795 if (getStyle2(element, WILL_CHANGE2)) { 7796 processElementByType({ effect: removeWillChange, actionTypeId, elementApi })( 7797 element 7798 ); 7799 } 7800 } 7801 function clearStyleProp(element, prop, elementApi) { 7802 const { setStyle: setStyle2 } = elementApi; 7803 removeWillChange(element, prop, elementApi); 7804 setStyle2(element, prop, ""); 7805 if (prop === TRANSFORM_PREFIXED) { 7806 setStyle2(element, TRANSFORM_STYLE_PREFIXED, ""); 7807 } 7808 } 7809 function getMaxDurationItemIndex(actionItems) { 7810 let maxDuration = 0; 7811 let resultIndex = 0; 7812 actionItems.forEach((actionItem, index) => { 7813 const { config } = actionItem; 7814 const total = config.delay + config.duration; 7815 if (total >= maxDuration) { 7816 maxDuration = total; 7817 resultIndex = index; 7818 } 7819 }); 7820 return resultIndex; 7821 } 7822 function getActionListProgress(actionList, instance) { 7823 const { actionItemGroups, useFirstGroupAsInitialState } = actionList; 7824 const { actionItem: instanceItem, verboseTimeElapsed = 0 } = instance; 7825 let totalDuration = 0; 7826 let elapsedDuration = 0; 7827 actionItemGroups.forEach((group, index) => { 7828 if (useFirstGroupAsInitialState && index === 0) { 7829 return; 7830 } 7831 const { actionItems } = group; 7832 const carrierItem = actionItems[getMaxDurationItemIndex(actionItems)]; 7833 const { config, actionTypeId } = carrierItem; 7834 if (instanceItem.id === carrierItem.id) { 7835 elapsedDuration = totalDuration + verboseTimeElapsed; 7836 } 7837 const duration = getRenderType(actionTypeId) === RENDER_GENERAL2 ? 0 : config.duration; 7838 totalDuration += config.delay + duration; 7839 }); 7840 return totalDuration > 0 ? optimizeFloat(elapsedDuration / totalDuration) : 0; 7841 } 7842 function reduceListToGroup({ 7843 actionList, 7844 actionItemId, 7845 rawData 7846 }) { 7847 const { actionItemGroups, continuousParameterGroups } = actionList; 7848 const newActionItems = []; 7849 const takeItemUntilMatch = (actionItem) => { 7850 newActionItems.push( 7851 (0, import_timm4.mergeIn)(actionItem, ["config"], { 7852 delay: 0, 7853 duration: 0 7854 }) 7855 ); 7856 return actionItem.id === actionItemId; 7857 }; 7858 actionItemGroups && actionItemGroups.some(({ actionItems }) => { 7859 return actionItems.some(takeItemUntilMatch); 7860 }); 7861 continuousParameterGroups && continuousParameterGroups.some( 7862 (paramGroup) => { 7863 const { continuousActionGroups } = paramGroup; 7864 return continuousActionGroups.some( 7865 ({ actionItems }) => { 7866 return actionItems.some(takeItemUntilMatch); 7867 } 7868 ); 7869 } 7870 ); 7871 return (0, import_timm4.setIn)(rawData, ["actionLists"], { 7872 [actionList.id]: { 7873 id: actionList.id, 7874 actionItemGroups: [ 7875 { 7876 actionItems: newActionItems 7877 } 7878 ] 7879 } 7880 }); 7881 } 7882 function shouldNamespaceEventParameter(eventTypeId, { basedOn }) { 7883 return eventTypeId === EventTypeConsts.SCROLLING_IN_VIEW && (basedOn === EventBasedOn.ELEMENT || basedOn == null) || eventTypeId === EventTypeConsts.MOUSE_MOVE && basedOn === EventBasedOn.ELEMENT; 7884 } 7885 function getNamespacedParameterId(eventStateKey, continuousParameterGroupId) { 7886 const namespacedParameterId = eventStateKey + COLON_DELIMITER2 + continuousParameterGroupId; 7887 return namespacedParameterId; 7888 } 7889 function shouldAllowMediaQuery(mediaQueries, mediaQueryKey) { 7890 if (mediaQueryKey == null) { 7891 return true; 7892 } 7893 return mediaQueries.indexOf(mediaQueryKey) !== -1; 7894 } 7895 function mediaQueriesEqual(listA, listB) { 7896 return shallowEqual_default(listA && listA.sort(), listB && listB.sort()); 7897 } 7898 function stringifyTarget(target) { 7899 if (typeof target === "string") { 7900 return target; 7901 } 7902 if (target.pluginElement && target.objectId) { 7903 return target.pluginElement + BAR_DELIMITER2 + target.objectId; 7904 } 7905 if (target.objectId) { 7906 return target.objectId; 7907 } 7908 const { id = "", selector = "", useEventTarget = "" } = target; 7909 return id + BAR_DELIMITER2 + selector + BAR_DELIMITER2 + useEventTarget; 7910 } 7911 var import_defaultTo, import_reduce, import_findLast, import_timm4, import_normalizeColor, BACKGROUND2, TRANSFORM2, TRANSLATE_3D2, SCALE_3D2, ROTATE_X2, ROTATE_Y2, ROTATE_Z2, SKEW2, PRESERVE_3D2, FLEX2, OPACITY2, FILTER2, FONT_VARIATION_SETTINGS2, WIDTH2, HEIGHT2, BACKGROUND_COLOR2, BORDER_COLOR2, COLOR2, CHILDREN2, IMMEDIATE_CHILDREN2, SIBLINGS2, PARENT2, DISPLAY2, WILL_CHANGE2, AUTO2, COMMA_DELIMITER2, COLON_DELIMITER2, BAR_DELIMITER2, RENDER_TRANSFORM2, RENDER_GENERAL2, RENDER_STYLE2, RENDER_PLUGIN2, TRANSFORM_MOVE2, TRANSFORM_SCALE2, TRANSFORM_ROTATE2, TRANSFORM_SKEW2, STYLE_OPACITY, STYLE_FILTER2, STYLE_FONT_VARIATION2, STYLE_SIZE2, STYLE_BACKGROUND_COLOR, STYLE_BORDER, STYLE_TEXT_COLOR, GENERAL_DISPLAY, OBJECT_VALUE, trim, colorStyleProps, willChangeProps, objectCache, instanceCount, elementCount, strictEqual, pxValueRegex, getFilterDefaults, getFontVariationDefaults, reduceFilters, reduceFontVariations, getItemConfigByKey, transformDefaults, filterDefaults, fontVariationDefaults, getFilterUnit, transformKeys, paramCapture, rgbValidRegex, rgbMatchRegex, processElementByType; 7912 var init_IX2VanillaUtils = __esm({ 7913 "packages/systems/ix2/shared/logic/IX2VanillaUtils.ts"() { 7914 "use strict"; 7915 import_defaultTo = __toESM(require_defaultTo()); 7916 import_reduce = __toESM(require_reduce()); 7917 import_findLast = __toESM(require_findLast()); 7918 import_timm4 = __toESM(require_timm()); 7919 init_shared_constants(); 7920 init_shallowEqual(); 7921 init_IX2EasingUtils(); 7922 import_normalizeColor = __toESM(require_normalizeColor()); 7923 init_IX2VanillaPlugins(); 7924 init_IX2BrowserSupport(); 7925 ({ 7926 BACKGROUND: BACKGROUND2, 7927 TRANSFORM: TRANSFORM2, 7928 TRANSLATE_3D: TRANSLATE_3D2, 7929 SCALE_3D: SCALE_3D2, 7930 ROTATE_X: ROTATE_X2, 7931 ROTATE_Y: ROTATE_Y2, 7932 ROTATE_Z: ROTATE_Z2, 7933 SKEW: SKEW2, 7934 PRESERVE_3D: PRESERVE_3D2, 7935 FLEX: FLEX2, 7936 OPACITY: OPACITY2, 7937 FILTER: FILTER2, 7938 FONT_VARIATION_SETTINGS: FONT_VARIATION_SETTINGS2, 7939 WIDTH: WIDTH2, 7940 HEIGHT: HEIGHT2, 7941 BACKGROUND_COLOR: BACKGROUND_COLOR2, 7942 BORDER_COLOR: BORDER_COLOR2, 7943 COLOR: COLOR2, 7944 CHILDREN: CHILDREN2, 7945 IMMEDIATE_CHILDREN: IMMEDIATE_CHILDREN2, 7946 SIBLINGS: SIBLINGS2, 7947 PARENT: PARENT2, 7948 DISPLAY: DISPLAY2, 7949 WILL_CHANGE: WILL_CHANGE2, 7950 AUTO: AUTO2, 7951 COMMA_DELIMITER: COMMA_DELIMITER2, 7952 COLON_DELIMITER: COLON_DELIMITER2, 7953 BAR_DELIMITER: BAR_DELIMITER2, 7954 RENDER_TRANSFORM: RENDER_TRANSFORM2, 7955 RENDER_GENERAL: RENDER_GENERAL2, 7956 RENDER_STYLE: RENDER_STYLE2, 7957 RENDER_PLUGIN: RENDER_PLUGIN2 7958 } = IX2EngineConstants_exports); 7959 ({ 7960 TRANSFORM_MOVE: TRANSFORM_MOVE2, 7961 TRANSFORM_SCALE: TRANSFORM_SCALE2, 7962 TRANSFORM_ROTATE: TRANSFORM_ROTATE2, 7963 TRANSFORM_SKEW: TRANSFORM_SKEW2, 7964 STYLE_OPACITY, 7965 STYLE_FILTER: STYLE_FILTER2, 7966 STYLE_FONT_VARIATION: STYLE_FONT_VARIATION2, 7967 STYLE_SIZE: STYLE_SIZE2, 7968 STYLE_BACKGROUND_COLOR, 7969 STYLE_BORDER, 7970 STYLE_TEXT_COLOR, 7971 GENERAL_DISPLAY, 7972 OBJECT_VALUE 7973 } = ActionTypeConsts); 7974 trim = (v) => v.trim(); 7975 colorStyleProps = Object.freeze({ 7976 [STYLE_BACKGROUND_COLOR]: BACKGROUND_COLOR2, 7977 [STYLE_BORDER]: BORDER_COLOR2, 7978 [STYLE_TEXT_COLOR]: COLOR2 7979 }); 7980 willChangeProps = Object.freeze({ 7981 [TRANSFORM_PREFIXED]: TRANSFORM2, 7982 [BACKGROUND_COLOR2]: BACKGROUND2, 7983 [OPACITY2]: OPACITY2, 7984 [FILTER2]: FILTER2, 7985 [WIDTH2]: WIDTH2, 7986 [HEIGHT2]: HEIGHT2, 7987 [FONT_VARIATION_SETTINGS2]: FONT_VARIATION_SETTINGS2 7988 }); 7989 objectCache = /* @__PURE__ */ new Map(); 7990 instanceCount = 1; 7991 elementCount = 1;
7992 strictEqual = (a, b) => a === b; 7993 pxValueRegex = /px/; 7994 getFilterDefaults = (actionState, filters) => ( 7995 // @ts-expect-error - TS7006 - Parameter 'result' implicitly has an 'any' type. | TS7006 - Parameter 'filter' implicitly has an 'any' type. 7996 filters.reduce((result, filter) => { 7997 if (result[filter.type] == null) { 7998 result[filter.type] = // @ts-expect-error - TS7053 - Element implicitly has an 'any' type because expression of type 'any' can't be used to index type 'Readonly<{ blur: 0; 'hue-rotate': 0; invert: 0; grayscale: 0; saturate: 100; sepia: 0; contrast: 100; brightness: 100; }>'. 7999 filterDefaults[filter.type]; 8000 } 8001 return result; 8002 }, actionState || {}) 8003 ); 8004 getFontVariationDefaults = (actionState, fontVariations) => fontVariations.reduce((result, fontVariation) => { 8005 if (result[fontVariation.type] == null) { 8006 result[fontVariation.type] = // @ts-expect-error - TS7053 - Element implicitly has an 'any' type because expression of type 'string' can't be used to index type 'Readonly<{ wght: 0; opsz: 0; wdth: 0; slnt: 0; }>'. 8007 fontVariationDefaults[fontVariation.type] || // @ts-expect-error - TS2339 - Property 'defaultValue' does not exist on type 'FontVariationItemConfigType'. 8008 fontVariation.defaultValue || 0; 8009 } 8010 return result; 8011 }, actionState || {}); 8012 reduceFilters = (result, filter) => { 8013 if (filter) { 8014 result[filter.type] = filter.value || 0; 8015 } 8016 return result; 8017 }; 8018 reduceFontVariations = (result, fontVariation) => { 8019 if (fontVariation) { 8020 result[fontVariation.type] = fontVariation.value || 0; 8021 } 8022 return result; 8023 }; 8024 getItemConfigByKey = (actionTypeId, key, config) => { 8025 if (isPluginType(actionTypeId)) { 8026 return getPluginConfig(actionTypeId)(config, key); 8027 } 8028 switch (actionTypeId) { 8029 case STYLE_FILTER2: { 8030 const filter = (0, import_findLast.default)(config.filters, ({ type }) => type === key); 8031 return filter ? filter.value : 0; 8032 } 8033 case STYLE_FONT_VARIATION2: { 8034 const fontVariation = (0, import_findLast.default)( 8035 config.fontVariations, 8036 ({ type }) => type === key 8037 ); 8038 return fontVariation ? fontVariation.value : 0; 8039 } 8040 default: 8041 return config[key]; 8042 } 8043 }; 8044 transformDefaults = { 8045 [TRANSFORM_MOVE2]: Object.freeze({ 8046 xValue: 0, 8047 yValue: 0, 8048 zValue: 0 8049 }), 8050 [TRANSFORM_SCALE2]: Object.freeze({ 8051 xValue: 1, 8052 yValue: 1, 8053 zValue: 1 8054 }), 8055 [TRANSFORM_ROTATE2]: Object.freeze({ 8056 xValue: 0, 8057 yValue: 0, 8058 zValue: 0 8059 }), 8060 [TRANSFORM_SKEW2]: Object.freeze({ 8061 xValue: 0, 8062 yValue: 0 8063 }) 8064 }; 8065 filterDefaults = Object.freeze({ 8066 blur: 0, 8067 "hue-rotate": 0, 8068 invert: 0, 8069 grayscale: 0, 8070 saturate: 100, 8071 sepia: 0, 8072 contrast: 100, 8073 brightness: 100 8074 }); 8075 fontVariationDefaults = Object.freeze({ 8076 wght: 0, 8077 opsz: 0, 8078 wdth: 0, 8079 slnt: 0 8080 }); 8081 getFilterUnit = (filterType, actionItemConfig) => { 8082 const filter = (0, import_findLast.default)( 8083 actionItemConfig.filters, 8084 ({ type }) => type === filterType 8085 ); 8086 if (filter && filter.unit) { 8087 return filter.unit; 8088 } 8089 switch (filterType) { 8090 case "blur": 8091 return "px"; 8092 case "hue-rotate": 8093 return "deg"; 8094 default: 8095 return "%"; 8096 } 8097 }; 8098 transformKeys = Object.keys(transformDefaults); 8099 paramCapture = "\\(([^)]+)\\)"; 8100 rgbValidRegex = /^rgb/; 8101 rgbMatchRegex = RegExp(`rgba?${paramCapture}`); 8102 processElementByType = ({ 8103 effect, 8104 actionTypeId, 8105 elementApi 8106 }) => (
8107 // @ts-expect-error - TS7006 - Parameter 'element' implicitly has an 'any' type. 8108 (element) => { 8109 switch (actionTypeId) { 8110 case TRANSFORM_MOVE2: 8111 case TRANSFORM_SCALE2: 8112 case TRANSFORM_ROTATE2: 8113 case TRANSFORM_SKEW2: 8114 effect(element, TRANSFORM_PREFIXED, elementApi); 8115 break; 8116 case STYLE_FILTER2: 8117 effect(element, FILTER2, elementApi); 8118 break; 8119 case STYLE_FONT_VARIATION2: 8120 effect(element, FONT_VARIATION_SETTINGS2, elementApi); 8121 break; 8122 case STYLE_OPACITY: 8123 effect(element, OPACITY2, elementApi); 8124 break; 8125 case STYLE_SIZE2: 8126 effect(element, WIDTH2, elementApi); 8127 effect(element, HEIGHT2, elementApi); 8128 break; 8129 case STYLE_BACKGROUND_COLOR: 8130 case STYLE_BORDER: 8131 case STYLE_TEXT_COLOR: 8132 effect(element, colorStyleProps[actionTypeId], elementApi); 8133 break; 8134 case GENERAL_DISPLAY: 8135 effect(element, DISPLAY2, elementApi); 8136 break; 8137 } 8138 } 8139 ); 8140 } 8141 }); 8142 8143
8143// packages/systems/ix2/shared/index.js 8144 var require_shared = __commonJS({ 8145 "packages/systems/ix2/shared/index.js"(exports) { 8146 "use strict"; 8147 Object.defineProperty(exports, "__esModule", { 8148 value: true 8149 }); 8150 function _export(target, all) { 8151 for (var name in all) 8152 Object.defineProperty(target, name, { 8153 enumerable: true, 8154 get: all[name] 8155 }); 8156 } 8157 _export(exports, { 8158 // IX2Actions, 8159 IX2BrowserSupport: function() { 8160 return _IX2BrowserSupport; 8161 }, 8162 IX2EasingUtils: function() { 8163 return _IX2EasingUtils; 8164 }, 8165 IX2Easings: function() { 8166 return _IX2Easings; 8167 }, 8168 IX2ElementsReducer: function() { 8169 return _IX2ElementsReducer; 8170 }, 8171 IX2VanillaPlugins: function() { 8172 return _IX2VanillaPlugins; 8173 }, 8174 IX2VanillaUtils: function() { 8175 return _IX2VanillaUtils; 8176 } 8177 }); 8178 var _IX2BrowserSupport = /* @__PURE__ */ _interop_require_wildcard((init_IX2BrowserSupport(), __toCommonJS(IX2BrowserSupport_exports))); 8179 var _IX2Easings = /* @__PURE__ */ _interop_require_wildcard((init_IX2Easings(), __toCommonJS(IX2Easings_exports))); 8180 var _IX2EasingUtils = /* @__PURE__ */ _interop_require_wildcard((init_IX2EasingUtils(), __toCommonJS(IX2EasingUtils_exports))); 8181 var _IX2ElementsReducer = /* @__PURE__ */ _interop_require_wildcard((init_IX2ElementsReducer(), __toCommonJS(IX2ElementsReducer_exports))); 8182 var _IX2VanillaPlugins = /* @__PURE__ */ _interop_require_wildcard((init_IX2VanillaPlugins(), __toCommonJS(IX2VanillaPlugins_exports))); 8183 var _IX2VanillaUtils = /* @__PURE__ */ _interop_require_wildcard((init_IX2VanillaUtils(), __toCommonJS(IX2VanillaUtils_exports))); 8184 function _getRequireWildcardCache(nodeInterop) { 8185 if (typeof WeakMap !== "function") 8186 return null; 8187 var cacheBabelInterop = /* @__PURE__ */ new WeakMap(); 8188 var cacheNodeInterop = /* @__PURE__ */ new WeakMap(); 8189 return (_getRequireWildcardCache = function(nodeInterop2) { 8190 return nodeInterop2 ? cacheNodeInterop : cacheBabelInterop; 8191 })(nodeInterop); 8192 } 8193 function _interop_require_wildcard(obj, nodeInterop) { 8194 if (!nodeInterop && obj && obj.__esModule) { 8195 return obj; 8196 } 8197 if (obj === null || typeof obj !== "object" && typeof obj !== "function") { 8198 return { 8199 default: obj 8200 }; 8201 } 8202 var cache = _getRequireWildcardCache(nodeInterop); 8203 if (cache && cache.has(obj)) { 8204 return cache.get(obj); 8205 } 8206 var newObj = { 8207 __proto__: null 8208 }; 8209 var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; 8210 for (var key in obj) { 8211 if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { 8212 var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; 8213 if (desc && (desc.get || desc.set)) { 8214 Object.defineProperty(newObj, key, desc); 8215 } else { 8216 newObj[key] = obj[key]; 8217 } 8218 } 8219 } 8220 newObj.default = obj; 8221 if (cache) { 8222 cache.set(obj, newObj); 8223 } 8224 return newObj; 8225 } 8226 } 8227 }); 8228 8229
8229// packages/systems/ix2/engine/reducers/IX2InstancesReducer.ts 8230 var import_shared, import_timm5, IX2_RAW_DATA_IMPORTED3, IX2_SESSION_STOPPED4, IX2_INSTANCE_ADDED3, IX2_INSTANCE_STARTED2, IX2_INSTANCE_REMOVED2, IX2_ANIMATION_FRAME_CHANGED3, optimizeFloat2, applyEasing2, createBezierEasing2, RENDER_GENERAL3, getItemConfigByKey2, getRenderType2, getStyleProp2, continuousInstance, timedInstance, ixInstances; 8231 var init_IX2InstancesReducer = __esm({ 8232 "packages/systems/ix2/engine/reducers/IX2InstancesReducer.ts"() { 8233 "use strict"; 8234 init_shared_constants(); 8235 import_shared = __toESM(require_shared()); 8236 import_timm5 = __toESM(require_timm()); 8237 ({ 8238 IX2_RAW_DATA_IMPORTED: IX2_RAW_DATA_IMPORTED3, 8239 IX2_SESSION_STOPPED: IX2_SESSION_STOPPED4, 8240 IX2_INSTANCE_ADDED: IX2_INSTANCE_ADDED3, 8241 IX2_INSTANCE_STARTED: IX2_INSTANCE_STARTED2, 8242 IX2_INSTANCE_REMOVED: IX2_INSTANCE_REMOVED2, 8243 IX2_ANIMATION_FRAME_CHANGED: IX2_ANIMATION_FRAME_CHANGED3 8244 } = IX2EngineActionTypes_exports); 8245 ({ optimizeFloat: optimizeFloat2, applyEasing: applyEasing2, createBezierEasing: createBezierEasing2 } = import_shared.IX2EasingUtils); 8246 ({ RENDER_GENERAL: RENDER_GENERAL3 } = IX2EngineConstants_exports); 8247 ({ getItemConfigByKey: getItemConfigByKey2, getRenderType: getRenderType2, getStyleProp: getStyleProp2 } = import_shared.IX2VanillaUtils); 8248 continuousInstance = (state, action) => { 8249 const { 8250 position: lastPosition, 8251 parameterId, 8252 actionGroups, 8253 destinationKeys, 8254 smoothing, 8255 restingValue, 8256 actionTypeId, 8257 customEasingFn, 8258 skipMotion, 8259 skipToValue 8260 } = state; 8261 const { parameters } = action.payload; 8262 let velocity = Math.max(1 - smoothing, 0.01); 8263 let paramValue = parameters[parameterId]; 8264 if (paramValue == null) { 8265 velocity = 1; 8266 paramValue = restingValue; 8267 } 8268 const nextPosition = Math.max(paramValue, 0) || 0; 8269 const positionDiff = optimizeFloat2(nextPosition - lastPosition); 8270 const position = skipMotion ? skipToValue : optimizeFloat2(lastPosition + positionDiff * velocity); 8271 const keyframePosition = position * 100; 8272 if (position === lastPosition && state.current) { 8273 return state; 8274 } 8275 let fromActionItem; 8276 let toActionItem; 8277 let positionOffset; 8278 let positionRange; 8279 for (let i = 0, { length } = actionGroups; i < length; i++) { 8280 const { keyframe, actionItems } = actionGroups[i]; 8281 if (i === 0) { 8282 fromActionItem = actionItems[0]; 8283 } 8284 if (keyframePosition >= keyframe) { 8285 fromActionItem = actionItems[0]; 8286 const nextGroup = actionGroups[i + 1]; 8287 const hasNextItem = nextGroup && keyframePosition !== keyframe; 8288 toActionItem = hasNextItem ? nextGroup.actionItems[0] : null; 8289 if (hasNextItem) { 8290 positionOffset = keyframe / 100; 8291 positionRange = (nextGroup.keyframe - keyframe) / 100; 8292 } 8293 } 8294 } 8295 const current = {}; 8296 if (fromActionItem && !toActionItem) { 8297 for (let i = 0, { length } = destinationKeys; i < length; i++) { 8298 const key = destinationKeys[i]; 8299 current[key] = getItemConfigByKey2( 8300 actionTypeId, 8301 key, 8302 fromActionItem.config 8303 ); 8304 } 8305 } else if (fromActionItem && toActionItem && positionOffset !== void 0 && positionRange !== void 0) { 8306 const localPosition = (position - positionOffset) / positionRange; 8307 const easing = fromActionItem.config.easing; 8308 const eased = applyEasing2(easing, localPosition, customEasingFn); 8309 for (let i = 0, { length } = destinationKeys; i < length; i++) { 8310 const key = destinationKeys[i]; 8311 const fromVal = getItemConfigByKey2( 8312 actionTypeId, 8313 key, 8314 fromActionItem.config 8315 ); 8316 const toVal = getItemConfigByKey2(actionTypeId, key, toActionItem.config); 8317 const diff = toVal - fromVal; 8318 const value = diff * eased + fromVal;
8319 current[key] = value; 8320 } 8321 } 8322 return (0, import_timm5.merge)(state, { 8323 position, 8324 current 8325 }); 8326 }; 8327 timedInstance = (state, action) => { 8328 const { 8329 active, 8330 origin, 8331 start, 8332 immediate, 8333 renderType, 8334 verbose, 8335 actionItem, 8336 destination, 8337 destinationKeys, 8338 pluginDuration, 8339 instanceDelay, 8340 customEasingFn, 8341 skipMotion 8342 } = state; 8343 const easing = actionItem.config.easing; 8344 let { duration, delay } = actionItem.config; 8345 if (pluginDuration != null) { 8346 duration = pluginDuration; 8347 } 8348 delay = instanceDelay != null ? instanceDelay : delay; 8349 if (renderType === RENDER_GENERAL3) { 8350 duration = 0; 8351 } else if (immediate || skipMotion) { 8352 duration = delay = 0; 8353 } 8354 const { now } = action.payload; 8355 if (active && origin) { 8356 const delta = now - (start + delay); 8357 if (verbose) { 8358 const verboseDelta = now - start; 8359 const verboseDuration = duration + delay; 8360 const verbosePosition = optimizeFloat2( 8361 Math.min(Math.max(0, verboseDelta / verboseDuration), 1) 8362 ); 8363 state = (0, import_timm5.set)( 8364 state, 8365 "verboseTimeElapsed", 8366 verboseDuration * verbosePosition 8367 ); 8368 } 8369 if (delta < 0) { 8370 return state; 8371 } 8372 const position = optimizeFloat2(Math.min(Math.max(0, delta / duration), 1)); 8373 const eased = applyEasing2(easing, position, customEasingFn); 8374 const newProps = {}; 8375 let current = null; 8376 if (destinationKeys.length) { 8377 current = destinationKeys.reduce((result, key) => { 8378 const destValue = destination[key]; 8379 const originVal = parseFloat(origin[key]) || 0; 8380 const diff = parseFloat(destValue) - originVal; 8381 const value = diff * eased + originVal; 8382 result[key] = value; 8383 return result; 8384 }, {}); 8385 } 8386 newProps.current = current; 8387 newProps.position = position; 8388 if (position === 1) { 8389 newProps.active = false; 8390 newProps.complete = true; 8391 } 8392 return (0, import_timm5.merge)(state, newProps); 8393 } 8394 return state; 8395 }; 8396 ixInstances = (state = Object.freeze({}), action) => { 8397 switch (action.type) { 8398 case IX2_RAW_DATA_IMPORTED3: { 8399 return action.payload.ixInstances || Object.freeze({}); 8400 } 8401 case IX2_SESSION_STOPPED4: { 8402 return Object.freeze({}); 8403 } 8404 case IX2_INSTANCE_ADDED3: { 8405 const { 8406 instanceId, 8407 elementId, 8408 actionItem, 8409 eventId, 8410 eventTarget, 8411 eventStateKey, 8412 actionListId, 8413 groupIndex, 8414 isCarrier, 8415 origin, 8416 destination, 8417 immediate, 8418 verbose, 8419 continuous, 8420 parameterId, 8421 actionGroups, 8422 smoothing, 8423 restingValue, 8424 pluginInstance, 8425 pluginDuration, 8426 instanceDelay, 8427 skipMotion, 8428 skipToValue 8429 } = action.payload; 8430 const { actionTypeId } = actionItem; 8431 const renderType = getRenderType2(actionTypeId); 8432 const styleProp = getStyleProp2(renderType, actionTypeId); 8433 const destinationKeys = Object.keys(destination).filter( 8434 (key) => ( 8435 // Skip null destination values 8436 destination[key] != null && // Skip string destination values 8437 typeof destination[key] !== "string" 8438 ) 8439 ); 8440 const { easing } = actionItem.config; 8441 return (0, import_timm5.set)(state, instanceId, { 8442 id: instanceId, 8443 elementId, 8444 active: false, 8445 position: 0, 8446 start: 0, 8447 origin, 8448 destination, 8449 destinationKeys, 8450 immediate, 8451 verbose, 8452 current: null, 8453 actionItem, 8454 actionTypeId, 8455 eventId, 8456 eventTarget, 8457 eventStateKey, 8458 actionListId, 8459 groupIndex, 8460 renderType, 8461 isCarrier, 8462 styleProp, 8463 continuous, 8464 parameterId, 8465 actionGroups, 8466 smoothing, 8467 restingValue, 8468 pluginInstance, 8469 pluginDuration, 8470 instanceDelay, 8471 skipMotion, 8472 skipToValue, 8473 customEasingFn: Array.isArray(easing) && easing.length === 4 ? ( 8474 // @ts-expect-error - TS2345 - Argument of type 'any[]' is not assignable to parameter of type 'IX2EasingCustomType'. 8475 createBezierEasing2(easing) 8476 ) : void 0 8477 }); 8478 } 8479 case IX2_INSTANCE_STARTED2: { 8480 const { instanceId, time } = action.payload; 8481 return (0, import_timm5.mergeIn)(state, [instanceId], { 8482 active: true, 8483 complete: false, 8484 start: time 8485 }); 8486 } 8487 case IX2_INSTANCE_REMOVED2: { 8488 const { instanceId } = action.payload; 8489 if (!state[instanceId]) { 8490 return state; 8491 } 8492 const newState = {};
8493 const keys = Object.keys(state); 8494 const { length } = keys; 8495 for (let i = 0; i < length; i++) { 8496 const key = keys[i]; 8497 if (key !== instanceId) { 8498 newState[key] = state[key]; 8499 } 8500 } 8501 return newState; 8502 } 8503 case IX2_ANIMATION_FRAME_CHANGED3: { 8504 let newState = state; 8505 const keys = Object.keys(state); 8506 const { length } = keys; 8507 for (let i = 0; i < length; i++) { 8508 const key = keys[i]; 8509 const instance = state[key]; 8510 const reducer = instance.continuous ? continuousInstance : timedInstance; 8511 newState = (0, import_timm5.set)(newState, key, reducer(instance, action)); 8512 } 8513 return newState; 8514 } 8515 default: { 8516 return state; 8517 } 8518 } 8519 }; 8520 } 8521 }); 8522 8523
8523// packages/systems/ix2/engine/reducers/IX2ParametersReducer.ts 8524 var IX2_RAW_DATA_IMPORTED4, IX2_SESSION_STOPPED5, IX2_PARAMETER_CHANGED2, ixParameters; 8525 var init_IX2ParametersReducer = __esm({ 8526 "packages/systems/ix2/engine/reducers/IX2ParametersReducer.ts"() { 8527 "use strict"; 8528 init_shared_constants(); 8529 ({ IX2_RAW_DATA_IMPORTED: IX2_RAW_DATA_IMPORTED4, IX2_SESSION_STOPPED: IX2_SESSION_STOPPED5, IX2_PARAMETER_CHANGED: IX2_PARAMETER_CHANGED2 } = IX2EngineActionTypes_exports); 8530 ixParameters = (state = { 8531 /*mutable flat state*/ 8532 }, action) => { 8533 switch (action.type) { 8534 case IX2_RAW_DATA_IMPORTED4: { 8535 return ( 8536 // @ts-expect-error - Further investigation is needed as looks like IX2_RAW_DATA_IMPORTED is never triggered with ixParameters 8537 action.payload.ixParameters || { 8538 /*mutable flat state*/ 8539 } 8540 ); 8541 } 8542 case IX2_SESSION_STOPPED5: { 8543 return { 8544 /*mutable flat state*/ 8545 }; 8546 } 8547 case IX2_PARAMETER_CHANGED2: { 8548 const { key, value } = action.payload; 8549 state[key] = value; 8550 return state; 8551 } 8552 default: { 8553 return state; 8554 } 8555 } 8556 }; 8557 } 8558 }); 8559 8560
8560// packages/systems/ix2/engine/reducers/IX2Reducer.ts 8561 var IX2Reducer_exports = {}; 8562 __export(IX2Reducer_exports, { 8563 default: () => IX2Reducer_default 8564 }); 8565 var import_redux, import_shared2, ixElements2, IX2Reducer_default; 8566 var init_IX2Reducer = __esm({ 8567 "packages/systems/ix2/engine/reducers/IX2Reducer.ts"() { 8568 "use strict"; 8569 import_redux = __toESM(require_lib2()); 8570 init_IX2DataReducer(); 8571 init_IX2RequestReducer(); 8572 init_IX2SessionReducer(); 8573 import_shared2 = __toESM(require_shared()); 8574 init_IX2InstancesReducer(); 8575 init_IX2ParametersReducer(); 8576 ({ ixElements: ixElements2 } = import_shared2.IX2ElementsReducer); 8577 IX2Reducer_default = (0, import_redux.combineReducers)({ 8578 ixData, 8579 ixRequest, 8580 ixSession, 8581 ixElements: ixElements2, 8582 ixInstances, 8583 ixParameters 8584 }); 8585 } 8586 }); 8587 8588
vendor: 510 bytes, lines 8588-8602
8588// node_modules/lodash/isString.js 8589 var require_isString = __commonJS({ 8590 "node_modules/lodash/isString.js"(exports, module) { 8591 var baseGetTag = require_baseGetTag(); 8592 var isArray = require_isArray(); 8593 var isObjectLike = require_isObjectLike(); 8594 var stringTag = "[object String]"; 8595 function isString(value) { 8596 return typeof value == "string" || !isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag; 8597 } 8598 module.exports = isString; 8599 } 8600 }); 8601 8602
vendor: 279 bytes, lines 8602-8611
8602// node_modules/lodash/_asciiSize.js 8603 var require_asciiSize = __commonJS({ 8604 "node_modules/lodash/_asciiSize.js"(exports, module) { 8605 var baseProperty = require_baseProperty(); 8606 var asciiSize = baseProperty("length"); 8607 module.exports = asciiSize; 8608 } 8609 }); 8610 8611
vendor: 728 bytes, lines 8611-8629
8611// node_modules/lodash/_hasUnicode.js 8612 var require_hasUnicode = __commonJS({ 8613 "node_modules/lodash/_hasUnicode.js"(exports, module) { 8614 var rsAstralRange = "\\ud800-\\udfff"; 8615 var rsComboMarksRange = "\\u0300-\\u036f"; 8616 var reComboHalfMarksRange = "\\ufe20-\\ufe2f"; 8617 var rsComboSymbolsRange = "\\u20d0-\\u20ff"; 8618 var rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange; 8619 var rsVarRange = "\\ufe0e\\ufe0f"; 8620 var rsZWJ = "\\u200d"; 8621 var reHasUnicode = RegExp("[" + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + "]"); 8622 function hasUnicode(string) { 8623 return reHasUnicode.test(string); 8624 } 8625 module.exports = hasUnicode; 8626 } 8627 }); 8628 8629
vendor: 1,579 bytes, lines 8629-8663
8629// node_modules/lodash/_unicodeSize.js 8630 var require_unicodeSize = __commonJS({ 8631 "node_modules/lodash/_unicodeSize.js"(exports, module) { 8632 var rsAstralRange = "\\ud800-\\udfff"; 8633 var rsComboMarksRange = "\\u0300-\\u036f"; 8634 var reComboHalfMarksRange = "\\ufe20-\\ufe2f"; 8635 var rsComboSymbolsRange = "\\u20d0-\\u20ff"; 8636 var rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange; 8637 var rsVarRange = "\\ufe0e\\ufe0f"; 8638 var rsAstral = "[" + rsAstralRange + "]"; 8639 var rsCombo = "[" + rsComboRange + "]"; 8640 var rsFitz = "\\ud83c[\\udffb-\\udfff]"; 8641 var rsModifier = "(?:" + rsCombo + "|" + rsFitz + ")"; 8642 var rsNonAstral = "[^" + rsAstralRange + "]"; 8643 var rsRegional = "(?:\\ud83c[\\udde6-\\uddff]){2}"; 8644 var rsSurrPair = "[\\ud800-\\udbff][\\udc00-\\udfff]"; 8645 var rsZWJ = "\\u200d"; 8646 var reOptMod = rsModifier + "?"; 8647 var rsOptVar = "[" + rsVarRange + "]?"; 8648 var rsOptJoin = "(?:" + rsZWJ + "(?:" + [rsNonAstral, rsRegional, rsSurrPair].join("|") + ")" + rsOptVar + reOptMod + ")*"; 8649 var rsSeq = rsOptVar + reOptMod + rsOptJoin; 8650 var rsSymbol = "(?:" + [rsNonAstral + rsCombo + "?", rsCombo, rsRegional, rsSurrPair, rsAstral].join("|") + ")"; 8651 var reUnicode = RegExp(rsFitz + "(?=" + rsFitz + ")|" + rsSymbol + rsSeq, "g"); 8652 function unicodeSize(string) { 8653 var result = reUnicode.lastIndex = 0; 8654 while (reUnicode.test(string)) { 8655 ++result; 8656 } 8657 return result; 8658 } 8659 module.exports = unicodeSize; 8660 } 8661 }); 8662 8663
vendor: 444 bytes, lines 8663-8676
8663// node_modules/lodash/_stringSize.js 8664 var require_stringSize = __commonJS({ 8665 "node_modules/lodash/_stringSize.js"(exports, module) { 8666 var asciiSize = require_asciiSize(); 8667 var hasUnicode = require_hasUnicode(); 8668 var unicodeSize = require_unicodeSize(); 8669 function stringSize(string) { 8670 return hasUnicode(string) ? unicodeSize(string) : asciiSize(string); 8671 } 8672 module.exports = stringSize; 8673 } 8674 }); 8675 8676
vendor: 856 bytes, lines 8676-8703
8676// node_modules/lodash/size.js 8677 var require_size = __commonJS({ 8678 "node_modules/lodash/size.js"(exports, module) { 8679 var baseKeys = require_baseKeys(); 8680 var getTag = require_getTag(); 8681 var isArrayLike = require_isArrayLike(); 8682 var isString = require_isString(); 8683 var stringSize = require_stringSize(); 8684 var mapTag = "[object Map]"; 8685 var setTag = "[object Set]"; 8686 function size2(collection) { 8687 if (collection == null) { 8688 return 0; 8689 } 8690 if (isArrayLike(collection)) { 8691 return isString(collection) ? stringSize(collection) : collection.length; 8692 } 8693 var tag = getTag(collection); 8694 if (tag == mapTag || tag == setTag) { 8695 return collection.size; 8696 } 8697 return baseKeys(collection).length; 8698 } 8699 module.exports = size2; 8700 } 8701 }); 8702 8703
vendor: 841 bytes, lines 8703-8730
8703// node_modules/lodash/negate.js 8704 var require_negate = __commonJS({ 8705 "node_modules/lodash/negate.js"(exports, module) { 8706 var FUNC_ERROR_TEXT = "Expected a function"; 8707 function negate(predicate) { 8708 if (typeof predicate != "function") { 8709 throw new TypeError(FUNC_ERROR_TEXT); 8710 } 8711 return function() { 8712 var args = arguments; 8713 switch (args.length) { 8714 case 0: 8715 return !predicate.call(this); 8716 case 1: 8717 return !predicate.call(this, args[0]); 8718 case 2: 8719 return !predicate.call(this, args[0], args[1]); 8720 case 3: 8721 return !predicate.call(this, args[0], args[1], args[2]); 8722 } 8723 return !predicate.apply(this, args); 8724 }; 8725 } 8726 module.exports = negate; 8727 } 8728 }); 8729 8730
vendor: 453 bytes, lines 8730-8746
8730// node_modules/lodash/_defineProperty.js 8731 var require_defineProperty = __commonJS({ 8732 "node_modules/lodash/_defineProperty.js"(exports, module) { 8733 var getNative = require_getNative(); 8734 var defineProperty = function() { 8735 try { 8736 var func = getNative(Object, "defineProperty"); 8737 func({}, "", {}); 8738 return func; 8739 } catch (e) { 8740 } 8741 }(); 8742 module.exports = defineProperty; 8743 } 8744 }); 8745 8746
vendor: 609 bytes, lines 8746-8766
8746// node_modules/lodash/_baseAssignValue.js 8747 var require_baseAssignValue = __commonJS({ 8748 "node_modules/lodash/_baseAssignValue.js"(exports, module) { 8749 var defineProperty = require_defineProperty(); 8750 function baseAssignValue(object, key, value) { 8751 if (key == "__proto__" && defineProperty) { 8752 defineProperty(object, key, { 8753 "configurable": true, 8754 "enumerable": true, 8755 "value": value, 8756 "writable": true 8757 }); 8758 } else { 8759 object[key] = value; 8760 } 8761 } 8762 module.exports = baseAssignValue; 8763 } 8764 }); 8765 8766
vendor: 637 bytes, lines 8766-8783
8766// node_modules/lodash/_assignValue.js 8767 var require_assignValue = __commonJS({ 8768 "node_modules/lodash/_assignValue.js"(exports, module) { 8769 var baseAssignValue = require_baseAssignValue(); 8770 var eq = require_eq(); 8771 var objectProto = Object.prototype; 8772 var hasOwnProperty = objectProto.hasOwnProperty; 8773 function assignValue(object, key, value) { 8774 var objValue = object[key]; 8775 if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) || value === void 0 && !(key in object)) { 8776 baseAssignValue(object, key, value); 8777 } 8778 } 8779 module.exports = assignValue; 8780 } 8781 }); 8782 8783
vendor: 1,299 bytes, lines 8783-8818
8783// node_modules/lodash/_baseSet.js 8784 var require_baseSet = __commonJS({ 8785 "node_modules/lodash/_baseSet.js"(exports, module) { 8786 var assignValue = require_assignValue(); 8787 var castPath = require_castPath(); 8788 var isIndex = require_isIndex(); 8789 var isObject = require_isObject(); 8790 var toKey = require_toKey(); 8791 function baseSet(object, path, value, customizer) { 8792 if (!isObject(object)) { 8793 return object; 8794 } 8795 path = castPath(path, object); 8796 var index = -1, length = path.length, lastIndex = length - 1, nested = object; 8797 while (nested != null && ++index < length) { 8798 var key = toKey(path[index]), newValue = value; 8799 if (key === "__proto__" || key === "constructor" || key === "prototype") { 8800 return object; 8801 } 8802 if (index != lastIndex) { 8803 var objValue = nested[key]; 8804 newValue = customizer ? customizer(objValue, key, nested) : void 0; 8805 if (newValue === void 0) { 8806 newValue = isObject(objValue) ? objValue : isIndex(path[index + 1]) ? [] : {}; 8807 } 8808 } 8809 assignValue(nested, key, newValue); 8810 nested = nested[key]; 8811 } 8812 return object; 8813 } 8814 module.exports = baseSet; 8815 } 8816 }); 8817 8818
vendor: 675 bytes, lines 8818-8838
8818// node_modules/lodash/_basePickBy.js 8819 var require_basePickBy = __commonJS({ 8820 "node_modules/lodash/_basePickBy.js"(exports, module) { 8821 var baseGet = require_baseGet(); 8822 var baseSet = require_baseSet(); 8823 var castPath = require_castPath(); 8824 function basePickBy(object, paths, predicate) { 8825 var index = -1, length = paths.length, result = {}; 8826 while (++index < length) { 8827 var path = paths[index], value = baseGet(object, path); 8828 if (predicate(value, path)) { 8829 baseSet(result, castPath(path, object), value); 8830 } 8831 } 8832 return result; 8833 } 8834 module.exports = basePickBy; 8835 } 8836 }); 8837 8838
vendor: 693 bytes, lines 8838-8858
8838// node_modules/lodash/_getSymbolsIn.js 8839 var require_getSymbolsIn = __commonJS({ 8840 "node_modules/lodash/_getSymbolsIn.js"(exports, module) { 8841 var arrayPush = require_arrayPush(); 8842 var getPrototype = require_getPrototype(); 8843 var getSymbols = require_getSymbols(); 8844 var stubArray = require_stubArray(); 8845 var nativeGetSymbols = Object.getOwnPropertySymbols; 8846 var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) { 8847 var result = []; 8848 while (object) { 8849 arrayPush(result, getSymbols(object)); 8850 object = getPrototype(object); 8851 } 8852 return result; 8853 }; 8854 module.exports = getSymbolsIn; 8855 } 8856 }); 8857 8858
vendor: 416 bytes, lines 8858-8874
8858// node_modules/lodash/_nativeKeysIn.js 8859 var require_nativeKeysIn = __commonJS({ 8860 "node_modules/lodash/_nativeKeysIn.js"(exports, module) { 8861 function nativeKeysIn(object) { 8862 var result = []; 8863 if (object != null) { 8864 for (var key in Object(object)) { 8865 result.push(key); 8866 } 8867 } 8868 return result; 8869 } 8870 module.exports = nativeKeysIn; 8871 } 8872 }); 8873 8874
vendor: 804 bytes, lines 8874-8898
8874// node_modules/lodash/_baseKeysIn.js 8875 var require_baseKeysIn = __commonJS({ 8876 "node_modules/lodash/_baseKeysIn.js"(exports, module) { 8877 var isObject = require_isObject(); 8878 var isPrototype = require_isPrototype(); 8879 var nativeKeysIn = require_nativeKeysIn(); 8880 var objectProto = Object.prototype; 8881 var hasOwnProperty = objectProto.hasOwnProperty; 8882 function baseKeysIn(object) { 8883 if (!isObject(object)) { 8884 return nativeKeysIn(object); 8885 } 8886 var isProto = isPrototype(object), result = []; 8887 for (var key in object) { 8888 if (!(key == "constructor" && (isProto || !hasOwnProperty.call(object, key)))) { 8889 result.push(key); 8890 } 8891 } 8892 return result; 8893 } 8894 module.exports = baseKeysIn; 8895 } 8896 }); 8897 8898
vendor: 440 bytes, lines 8898-8911
8898// node_modules/lodash/keysIn.js 8899 var require_keysIn = __commonJS({ 8900 "node_modules/lodash/keysIn.js"(exports, module) { 8901 var arrayLikeKeys = require_arrayLikeKeys(); 8902 var baseKeysIn = require_baseKeysIn(); 8903 var isArrayLike = require_isArrayLike(); 8904 function keysIn(object) { 8905 return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object); 8906 } 8907 module.exports = keysIn; 8908 } 8909 }); 8910 8911
vendor: 442 bytes, lines 8911-8924
8911// node_modules/lodash/_getAllKeysIn.js 8912 var require_getAllKeysIn = __commonJS({ 8913 "node_modules/lodash/_getAllKeysIn.js"(exports, module) { 8914 var baseGetAllKeys = require_baseGetAllKeys(); 8915 var getSymbolsIn = require_getSymbolsIn(); 8916 var keysIn = require_keysIn(); 8917 function getAllKeysIn(object) { 8918 return baseGetAllKeys(object, keysIn, getSymbolsIn); 8919 } 8920 module.exports = getAllKeysIn; 8921 } 8922 }); 8923 8924
vendor: 737 bytes, lines 8924-8947
8924// node_modules/lodash/pickBy.js 8925 var require_pickBy = __commonJS({ 8926 "node_modules/lodash/pickBy.js"(exports, module) { 8927 var arrayMap = require_arrayMap(); 8928 var baseIteratee = require_baseIteratee(); 8929 var basePickBy = require_basePickBy(); 8930 var getAllKeysIn = require_getAllKeysIn(); 8931 function pickBy(object, predicate) { 8932 if (object == null) { 8933 return {}; 8934 } 8935 var props = arrayMap(getAllKeysIn(object), function(prop) { 8936 return [prop]; 8937 }); 8938 predicate = baseIteratee(predicate); 8939 return basePickBy(object, props, function(value, path) { 8940 return predicate(value, path[0]); 8941 }); 8942 } 8943 module.exports = pickBy; 8944 } 8945 }); 8946 8947
vendor: 410 bytes, lines 8947-8960
8947// node_modules/lodash/omitBy.js 8948 var require_omitBy = __commonJS({ 8949 "node_modules/lodash/omitBy.js"(exports, module) { 8950 var baseIteratee = require_baseIteratee(); 8951 var negate = require_negate(); 8952 var pickBy = require_pickBy(); 8953 function omitBy2(object, predicate) { 8954 return pickBy(object, negate(baseIteratee(predicate))); 8955 } 8956 module.exports = omitBy2; 8957 } 8958 }); 8959 8960
vendor: 1,374 bytes, lines 8960-9000
8960// node_modules/lodash/isEmpty.js 8961 var require_isEmpty = __commonJS({ 8962 "node_modules/lodash/isEmpty.js"(exports, module) { 8963 var baseKeys = require_baseKeys(); 8964 var getTag = require_getTag(); 8965 var isArguments = require_isArguments(); 8966 var isArray = require_isArray(); 8967 var isArrayLike = require_isArrayLike(); 8968 var isBuffer = require_isBuffer(); 8969 var isPrototype = require_isPrototype(); 8970 var isTypedArray = require_isTypedArray(); 8971 var mapTag = "[object Map]"; 8972 var setTag = "[object Set]"; 8973 var objectProto = Object.prototype; 8974 var hasOwnProperty = objectProto.hasOwnProperty; 8975 function isEmpty2(value) { 8976 if (value == null) { 8977 return true; 8978 } 8979 if (isArrayLike(value) && (isArray(value) || typeof value == "string" || typeof value.splice == "function" || isBuffer(value) || isTypedArray(value) || isArguments(value))) { 8980 return !value.length; 8981 } 8982 var tag = getTag(value); 8983 if (tag == mapTag || tag == setTag) { 8984 return !value.size; 8985 } 8986 if (isPrototype(value)) { 8987 return !baseKeys(value).length; 8988 } 8989 for (var key in value) { 8990 if (hasOwnProperty.call(value, key)) { 8991 return false; 8992 } 8993 } 8994 return true; 8995 } 8996 module.exports = isEmpty2; 8997 } 8998 }); 8999 9000
vendor: 622 bytes, lines 9000-9018
9000// node_modules/lodash/mapValues.js 9001 var require_mapValues = __commonJS({ 9002 "node_modules/lodash/mapValues.js"(exports, module) { 9003 var baseAssignValue = require_baseAssignValue(); 9004 var baseForOwn = require_baseForOwn(); 9005 var baseIteratee = require_baseIteratee(); 9006 function mapValues2(object, iteratee) { 9007 var result = {}; 9008 iteratee = baseIteratee(iteratee, 3); 9009 baseForOwn(object, function(value, key, object2) { 9010 baseAssignValue(result, key, iteratee(value, key, object2)); 9011 }); 9012 return result; 9013 } 9014 module.exports = mapValues2; 9015 } 9016 }); 9017 9018
vendor: 465 bytes, lines 9018-9034
9018// node_modules/lodash/_arrayEach.js 9019 var require_arrayEach = __commonJS({ 9020 "node_modules/lodash/_arrayEach.js"(exports, module) { 9021 function arrayEach(array, iteratee) { 9022 var index = -1, length = array == null ? 0 : array.length; 9023 while (++index < length) { 9024 if (iteratee(array[index], index, array) === false) { 9025 break; 9026 } 9027 } 9028 return array; 9029 } 9030 module.exports = arrayEach; 9031 } 9032 }); 9033 9034
vendor: 344 bytes, lines 9034-9045
9034// node_modules/lodash/_castFunction.js 9035 var require_castFunction = __commonJS({ 9036 "node_modules/lodash/_castFunction.js"(exports, module) { 9037 var identity = require_identity(); 9038 function castFunction(value) { 9039 return typeof value == "function" ? value : identity; 9040 } 9041 module.exports = castFunction; 9042 } 9043 }); 9044 9045
vendor: 523 bytes, lines 9045-9060
9045// node_modules/lodash/forEach.js 9046 var require_forEach = __commonJS({ 9047 "node_modules/lodash/forEach.js"(exports, module) { 9048 var arrayEach = require_arrayEach(); 9049 var baseEach = require_baseEach(); 9050 var castFunction = require_castFunction(); 9051 var isArray = require_isArray(); 9052 function forEach2(collection, iteratee) { 9053 var func = isArray(collection) ? arrayEach : baseEach; 9054 return func(collection, castFunction(iteratee)); 9055 } 9056 module.exports = forEach2; 9057 } 9058 }); 9059 9060
vendor: 261 bytes, lines 9060-9071
9060// node_modules/lodash/now.js 9061 var require_now = __commonJS({ 9062 "node_modules/lodash/now.js"(exports, module) { 9063 var root = require_root(); 9064 var now = function() { 9065 return root.Date.now(); 9066 }; 9067 module.exports = now; 9068 } 9069 }); 9070 9071
vendor: 3,532 bytes, lines 9071-9165
9071// node_modules/lodash/debounce.js 9072 var require_debounce = __commonJS({ 9073 "node_modules/lodash/debounce.js"(exports, module) { 9074 var isObject = require_isObject(); 9075 var now = require_now(); 9076 var toNumber = require_toNumber(); 9077 var FUNC_ERROR_TEXT = "Expected a function"; 9078 var nativeMax = Math.max; 9079 var nativeMin = Math.min; 9080 function debounce(func, wait, options) { 9081 var lastArgs, lastThis, maxWait, result, timerId, lastCallTime, lastInvokeTime = 0, leading = false, maxing = false, trailing = true; 9082 if (typeof func != "function") { 9083 throw new TypeError(FUNC_ERROR_TEXT); 9084 } 9085 wait = toNumber(wait) || 0; 9086 if (isObject(options)) { 9087 leading = !!options.leading; 9088 maxing = "maxWait" in options; 9089 maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait; 9090 trailing = "trailing" in options ? !!options.trailing : trailing; 9091 } 9092 function invokeFunc(time) { 9093 var args = lastArgs, thisArg = lastThis; 9094 lastArgs = lastThis = void 0; 9095 lastInvokeTime = time; 9096 result = func.apply(thisArg, args); 9097 return result; 9098 } 9099 function leadingEdge(time) { 9100 lastInvokeTime = time; 9101 timerId = setTimeout(timerExpired, wait); 9102 return leading ? invokeFunc(time) : result; 9103 } 9104 function remainingWait(time) { 9105 var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime, timeWaiting = wait - timeSinceLastCall; 9106 return maxing ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke) : timeWaiting; 9107 } 9108 function shouldInvoke(time) { 9109 var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime; 9110 return lastCallTime === void 0 || timeSinceLastCall >= wait || timeSinceLastCall < 0 || maxing && timeSinceLastInvoke >= maxWait; 9111 } 9112 function timerExpired() { 9113 var time = now(); 9114 if (shouldInvoke(time)) { 9115 return trailingEdge(time); 9116 } 9117 timerId = setTimeout(timerExpired, remainingWait(time)); 9118 } 9119 function trailingEdge(time) { 9120 timerId = void 0; 9121 if (trailing && lastArgs) { 9122 return invokeFunc(time); 9123 } 9124 lastArgs = lastThis = void 0; 9125 return result; 9126 } 9127 function cancel() { 9128 if (timerId !== void 0) { 9129 clearTimeout(timerId); 9130 } 9131 lastInvokeTime = 0; 9132 lastArgs = lastCallTime = lastThis = timerId = void 0; 9133 } 9134 function flush() { 9135 return timerId === void 0 ? result : trailingEdge(now()); 9136 } 9137 function debounced() { 9138 var time = now(), isInvoking = shouldInvoke(time); 9139 lastArgs = arguments; 9140 lastThis = this; 9141 lastCallTime = time; 9142 if (isInvoking) { 9143 if (timerId === void 0) { 9144 return leadingEdge(lastCallTime); 9145 } 9146 if (maxing) { 9147 clearTimeout(timerId); 9148 timerId = setTimeout(timerExpired, wait); 9149 return invokeFunc(lastCallTime); 9150 } 9151 } 9152 if (timerId === void 0) { 9153 timerId = setTimeout(timerExpired, wait); 9154 } 9155 return result; 9156 } 9157 debounced.cancel = cancel; 9158 debounced.flush = flush; 9159 return debounced; 9160 } 9161 module.exports = debounce; 9162 } 9163 }); 9164 9165
vendor: 841 bytes, lines 9165-9190
9165// node_modules/lodash/throttle.js 9166 var require_throttle = __commonJS({ 9167 "node_modules/lodash/throttle.js"(exports, module) { 9168 var debounce = require_debounce(); 9169 var isObject = require_isObject(); 9170 var FUNC_ERROR_TEXT = "Expected a function"; 9171 function throttle2(func, wait, options) { 9172 var leading = true, trailing = true; 9173 if (typeof func != "function") { 9174 throw new TypeError(FUNC_ERROR_TEXT); 9175 } 9176 if (isObject(options)) { 9177 leading = "leading" in options ? !!options.leading : leading; 9178 trailing = "trailing" in options ? !!options.trailing : trailing; 9179 } 9180 return debounce(func, wait, { 9181 "leading": leading, 9182 "maxWait": wait, 9183 "trailing": trailing 9184 }); 9185 } 9186 module.exports = throttle2; 9187 } 9188 }); 9189 9190
9190// packages/systems/ix2/engine/actions/IX2EngineActions.ts 9191 var IX2EngineActions_exports = {}; 9192 __export(IX2EngineActions_exports, { 9193 actionListPlaybackChanged: () => actionListPlaybackChanged, 9194 animationFrameChanged: () => animationFrameChanged, 9195 clearRequested: () => clearRequested, 9196 elementStateChanged: () => elementStateChanged, 9197 eventListenerAdded: () => eventListenerAdded, 9198 eventStateChanged: () => eventStateChanged, 9199 instanceAdded: () => instanceAdded, 9200 instanceRemoved: () => instanceRemoved, 9201 instanceStarted: () => instanceStarted, 9202 mediaQueriesDefined: () => mediaQueriesDefined, 9203 parameterChanged: () => parameterChanged, 9204 playbackRequested: () => playbackRequested, 9205 previewRequested: () => previewRequested, 9206 rawDataImported: () => rawDataImported, 9207 sessionInitialized: () => sessionInitialized, 9208 sessionStarted: () => sessionStarted, 9209 sessionStopped: () => sessionStopped, 9210 stopRequested: () => stopRequested, 9211 testFrameRendered: () => testFrameRendered, 9212 viewportWidthChanged: () => viewportWidthChanged 9213 }); 9214 var import_shared3, IX2_RAW_DATA_IMPORTED5, IX2_SESSION_INITIALIZED3, IX2_SESSION_STARTED3, IX2_SESSION_STOPPED6, IX2_PREVIEW_REQUESTED3, IX2_PLAYBACK_REQUESTED3, IX2_STOP_REQUESTED3, IX2_CLEAR_REQUESTED3, IX2_EVENT_LISTENER_ADDED3, IX2_TEST_FRAME_RENDERED3, IX2_EVENT_STATE_CHANGED3, IX2_ANIMATION_FRAME_CHANGED4, IX2_PARAMETER_CHANGED3, IX2_INSTANCE_ADDED4, IX2_INSTANCE_STARTED3, IX2_INSTANCE_REMOVED3, IX2_ELEMENT_STATE_CHANGED3, IX2_ACTION_LIST_PLAYBACK_CHANGED3, IX2_VIEWPORT_WIDTH_CHANGED3, IX2_MEDIA_QUERIES_DEFINED3, reifyState2, rawDataImported, sessionInitialized, sessionStarted, sessionStopped, previewRequested, playbackRequested, stopRequested, clearRequested, eventListenerAdded, testFrameRendered, eventStateChanged, animationFrameChanged, parameterChanged, instanceAdded, instanceStarted, instanceRemoved, elementStateChanged, actionListPlaybackChanged, viewportWidthChanged, mediaQueriesDefined; 9215 var init_IX2EngineActions = __esm({ 9216 "packages/systems/ix2/engine/actions/IX2EngineActions.ts"() { 9217 "use strict"; 9218 init_shared_constants(); 9219 import_shared3 = __toESM(require_shared()); 9220 ({ 9221 IX2_RAW_DATA_IMPORTED: IX2_RAW_DATA_IMPORTED5, 9222 IX2_SESSION_INITIALIZED: IX2_SESSION_INITIALIZED3, 9223 IX2_SESSION_STARTED: IX2_SESSION_STARTED3, 9224 IX2_SESSION_STOPPED: IX2_SESSION_STOPPED6, 9225 IX2_PREVIEW_REQUESTED: IX2_PREVIEW_REQUESTED3, 9226 IX2_PLAYBACK_REQUESTED: IX2_PLAYBACK_REQUESTED3, 9227 IX2_STOP_REQUESTED: IX2_STOP_REQUESTED3, 9228 IX2_CLEAR_REQUESTED: IX2_CLEAR_REQUESTED3, 9229 IX2_EVENT_LISTENER_ADDED: IX2_EVENT_LISTENER_ADDED3, 9230 IX2_TEST_FRAME_RENDERED: IX2_TEST_FRAME_RENDERED3, 9231 IX2_EVENT_STATE_CHANGED: IX2_EVENT_STATE_CHANGED3, 9232 IX2_ANIMATION_FRAME_CHANGED: IX2_ANIMATION_FRAME_CHANGED4, 9233 IX2_PARAMETER_CHANGED: IX2_PARAMETER_CHANGED3, 9234 IX2_INSTANCE_ADDED: IX2_INSTANCE_ADDED4, 9235 IX2_INSTANCE_STARTED: IX2_INSTANCE_STARTED3, 9236 IX2_INSTANCE_REMOVED: IX2_INSTANCE_REMOVED3, 9237 IX2_ELEMENT_STATE_CHANGED: IX2_ELEMENT_STATE_CHANGED3, 9238 IX2_ACTION_LIST_PLAYBACK_CHANGED: IX2_ACTION_LIST_PLAYBACK_CHANGED3, 9239 IX2_VIEWPORT_WIDTH_CHANGED: IX2_VIEWPORT_WIDTH_CHANGED3, 9240 IX2_MEDIA_QUERIES_DEFINED: IX2_MEDIA_QUERIES_DEFINED3 9241 } = IX2EngineActionTypes_exports); 9242 ({ reifyState: reifyState2 } = import_shared3.IX2VanillaUtils); 9243 rawDataImported = (rawData) => ({ 9244 type: IX2_RAW_DATA_IMPORTED5, 9245 payload: { 9246 ...reifyState2(rawData) 9247 } 9248 }); 9249 sessionInitialized = ({ 9250 hasBoundaryNodes, 9251 reducedMotion 9252 }) => ({ 9253 type: IX2_SESSION_INITIALIZED3, 9254 payload: { 9255 hasBoundaryNodes, 9256 reducedMotion 9257 } 9258 }); 9259 sessionStarted = () => ({ 9260 type: IX2_SESSION_STARTED3 9261 }); 9262 sessionStopped = () => ({ 9263 type: IX2_SESSION_STOPPED6 9264 }); 9265 previewRequested = ({ 9266 rawData, 9267 defer 9268 }) => ({ 9269 type: IX2_PREVIEW_REQUESTED3, 9270 payload: { 9271 defer, 9272 rawData 9273 } 9274 }); 9275 playbackRequested = ({ 9276 actionTypeId = ActionTypeConsts.GENERAL_START_ACTION, 9277 actionListId, 9278 actionItemId, 9279 eventId, 9280 allowEvents, 9281 immediate, 9282 testManual, 9283 verbose, 9284 rawData 9285 }) => ({ 9286 type: IX2_PLAYBACK_REQUESTED3, 9287 payload: { 9288 actionTypeId, 9289 actionListId, 9290 actionItemId, 9291 testManual, 9292 eventId, 9293 allowEvents, 9294 immediate, 9295 verbose, 9296 rawData 9297 } 9298 }); 9299 stopRequested = (actionListId) => ({ 9300 type: IX2_STOP_REQUESTED3, 9301 payload: { 9302 actionListId 9303 } 9304 }); 9305 clearRequested = () => ({ 9306 type: IX2_CLEAR_REQUESTED3 9307 }); 9308 eventListenerAdded = (target, listenerParams) => ({ 9309 type: IX2_EVENT_LISTENER_ADDED3, 9310 payload: { 9311 target, 9312 listenerParams 9313 } 9314 }); 9315 testFrameRendered = (step = 1) => ({ 9316 type: IX2_TEST_FRAME_RENDERED3, 9317 payload: { 9318 step 9319 } 9320 }); 9321 eventStateChanged = (stateKey, newState) => ({ 9322 type: IX2_EVENT_STATE_CHANGED3, 9323 payload: { 9324 stateKey, 9325 newState 9326 } 9327 }); 9328 animationFrameChanged = (now, parameters) => ({ 9329 type: IX2_ANIMATION_FRAME_CHANGED4, 9330 payload: { 9331 now, 9332 parameters 9333 } 9334 }); 9335 parameterChanged = (key, value) => ({ 9336 type: IX2_PARAMETER_CHANGED3, 9337 payload: { 9338 key, 9339 value 9340 } 9341 }); 9342 instanceAdded = (options) => ({ 9343 type: IX2_INSTANCE_ADDED4, 9344 payload: { 9345 ...options 9346 } 9347 }); 9348 instanceStarted = (instanceId, time) => ({ 9349 type: IX2_INSTANCE_STARTED3, 9350 payload: { 9351 instanceId, 9352 time 9353 } 9354 }); 9355 instanceRemoved = (instanceId) => ({ 9356 type: IX2_INSTANCE_REMOVED3, 9357 payload: { 9358 instanceId 9359 } 9360 }); 9361 elementStateChanged = (elementId, actionTypeId, current, actionItem) => ({ 9362 type: IX2_ELEMENT_STATE_CHANGED3, 9363 payload: { 9364 elementId, 9365 actionTypeId, 9366 current, 9367 actionItem 9368 } 9369 }); 9370 actionListPlaybackChanged = ({ 9371 actionListId, 9372 isPlaying 9373 }) => ({ 9374 type: IX2_ACTION_LIST_PLAYBACK_CHANGED3, 9375 payload: { 9376 actionListId, 9377 isPlaying 9378 } 9379 }); 9380 viewportWidthChanged = ({ 9381 width, 9382 mediaQueries 9383 }) => ({ 9384 type: IX2_VIEWPORT_WIDTH_CHANGED3, 9385 payload: { 9386 width, 9387 mediaQueries 9388 } 9389 }); 9390 mediaQueriesDefined = () => ({ 9391 type: IX2_MEDIA_QUERIES_DEFINED3 9392 }); 9393 } 9394 }); 9395 9396
9396// packages/systems/ix2/engine/logic/IX2BrowserApi.ts 9397 var IX2BrowserApi_exports = {}; 9398 __export(IX2BrowserApi_exports, { 9399 elementContains: () => elementContains, 9400 getChildElements: () => getChildElements, 9401 getClosestElement: () => getClosestElement, 9402 getProperty: () => getProperty, 9403 getQuerySelector: () => getQuerySelector, 9404 getRefType: () => getRefType, 9405 getSiblingElements: () => getSiblingElements, 9406 getStyle: () => getStyle, 9407 getValidDocument: () => getValidDocument, 9408 isSiblingNode: () => isSiblingNode, 9409 matchSelector: () => matchSelector, 9410 queryDocument: () => queryDocument, 9411 setStyle: () => setStyle 9412 }); 9413 function setStyle(element, prop, value) { 9414 element.style[prop] = value; 9415 } 9416 function getStyle(element, prop) { 9417 if (prop.startsWith("--")) { 9418 return window.getComputedStyle(document.documentElement).getPropertyValue(prop); 9419 } 9420 return element.style[prop]; 9421 } 9422 function getProperty(element, prop) { 9423 return element[prop]; 9424 } 9425 function matchSelector(selector) { 9426 return (element) => element[ELEMENT_MATCHES2](selector); 9427 } 9428 function getQuerySelector({ 9429 id, 9430 selector 9431 }) { 9432 if (id) { 9433 let nodeId = id; 9434 if (id.indexOf(IX2_ID_DELIMITER2) !== -1) { 9435 const pair = id.split(IX2_ID_DELIMITER2); 9436 const pageId = pair[0]; 9437 nodeId = pair[1]; 9438 if (pageId !== document.documentElement.getAttribute(WF_PAGE2)) { 9439 return null; 9440 } 9441 } 9442 return `[data-w-id="${nodeId}"], [data-w-id^="${nodeId}_instance"]`; 9443 } 9444 return selector; 9445 } 9446 function getValidDocument(pageId) { 9447 if (pageId == null || pageId === document.documentElement.getAttribute(WF_PAGE2)) { 9448 return document; 9449 } 9450 return null; 9451 } 9452 function queryDocument(baseSelector, descendantSelector) { 9453 return Array.prototype.slice.call( 9454 document.querySelectorAll( 9455 descendantSelector ? baseSelector + " " + descendantSelector : baseSelector 9456 ) 9457 ); 9458 } 9459 function elementContains(parent, child) { 9460 return parent.contains(child); 9461 } 9462 function isSiblingNode(a, b) { 9463 return a !== b && a.parentNode === b.parentNode; 9464 } 9465 function getChildElements(sourceElements) { 9466 const childElements = []; 9467 for (let i = 0, { length } = sourceElements || []; i < length; i++) { 9468 const { children } = sourceElements[i]; 9469 const { length: childCount } = children; 9470 if (!childCount) { 9471 continue; 9472 } 9473 for (let j = 0; j < childCount; j++) { 9474 childElements.push(children[j]); 9475 } 9476 } 9477 return childElements; 9478 } 9479 function getSiblingElements(sourceElements = []) { 9480 const elements = []; 9481 const parentCache = []; 9482 for (let i = 0, { length } = sourceElements; i < length; i++) { 9483 const { parentNode } = sourceElements[i]; 9484 if (!parentNode || !parentNode.children || !parentNode.children.length) { 9485 continue; 9486 } 9487 if (parentCache.indexOf(parentNode) !== -1) { 9488 continue; 9489 } 9490 parentCache.push(parentNode); 9491 let el = parentNode.firstElementChild; 9492 while (el != null) { 9493 if (sourceElements.indexOf(el) === -1) { 9494 elements.push(el); 9495 } 9496 el = el.nextElementSibling; 9497 } 9498 } 9499 return elements; 9500 } 9501 function getRefType(ref) { 9502 if (ref != null && typeof ref == "object") { 9503 return ref instanceof Element ? HTML_ELEMENT3 : PLAIN_OBJECT3; 9504 } 9505 return null; 9506 } 9507 var import_shared4, ELEMENT_MATCHES2, IX2_ID_DELIMITER2, HTML_ELEMENT3, PLAIN_OBJECT3, WF_PAGE2, getClosestElement; 9508 var init_IX2BrowserApi = __esm({ 9509 "packages/systems/ix2/engine/logic/IX2BrowserApi.ts"() { 9510 "use strict"; 9511 import_shared4 = __toESM(require_shared()); 9512 init_shared_constants(); 9513 ({ ELEMENT_MATCHES: ELEMENT_MATCHES2 } = import_shared4.IX2BrowserSupport); 9514 ({ IX2_ID_DELIMITER: IX2_ID_DELIMITER2, HTML_ELEMENT: HTML_ELEMENT3, PLAIN_OBJECT: PLAIN_OBJECT3, WF_PAGE: WF_PAGE2 } = IX2EngineConstants_exports); 9515 getClosestElement = Element.prototype.closest ? (element, selector) => { 9516 if (!document.documentElement.contains(element)) { 9517 return null; 9518 } 9519 return element.closest(selector); 9520 } : (element, selector) => { 9521 if (!document.documentElement.contains(element)) { 9522 return null; 9523 } 9524 let el = element; 9525 do { 9526 if (el[ELEMENT_MATCHES2] && el[ELEMENT_MATCHES2](selector)) { 9527 return el; 9528 } 9529 el = el.parentNode; 9530 } while (el != null); 9531 return null; 9532 }; 9533 } 9534 }); 9535 9536
vendor: 684 bytes, lines 9536-9561
9536// node_modules/lodash/_baseCreate.js 9537 var require_baseCreate = __commonJS({ 9538 "node_modules/lodash/_baseCreate.js"(exports, module) { 9539 var isObject = require_isObject(); 9540 var objectCreate = Object.create; 9541 var baseCreate = function() { 9542 function object() { 9543 } 9544 return function(proto) { 9545 if (!isObject(proto)) { 9546 return {}; 9547 } 9548 if (objectCreate) { 9549 return objectCreate(proto); 9550 } 9551 object.prototype = proto; 9552 var result = new object(); 9553 object.prototype = void 0; 9554 return result; 9555 }; 9556 }(); 9557 module.exports = baseCreate; 9558 } 9559 }); 9560 9561
vendor: 226 bytes, lines 9561-9570
9561// node_modules/lodash/_baseLodash.js 9562 var require_baseLodash = __commonJS({ 9563 "node_modules/lodash/_baseLodash.js"(exports, module) { 9564 function baseLodash() { 9565 } 9566 module.exports = baseLodash; 9567 } 9568 }); 9569 9570
vendor: 635 bytes, lines 9570-9588
9570// node_modules/lodash/_LodashWrapper.js 9571 var require_LodashWrapper = __commonJS({ 9572 "node_modules/lodash/_LodashWrapper.js"(exports, module) { 9573 var baseCreate = require_baseCreate(); 9574 var baseLodash = require_baseLodash(); 9575 function LodashWrapper(value, chainAll) { 9576 this.__wrapped__ = value; 9577 this.__actions__ = []; 9578 this.__chain__ = !!chainAll; 9579 this.__index__ = 0; 9580 this.__values__ = void 0; 9581 } 9582 LodashWrapper.prototype = baseCreate(baseLodash.prototype); 9583 LodashWrapper.prototype.constructor = LodashWrapper; 9584 module.exports = LodashWrapper; 9585 } 9586 }); 9587 9588
vendor: 559 bytes, lines 9588-9602
9588// node_modules/lodash/_isFlattenable.js 9589 var require_isFlattenable = __commonJS({ 9590 "node_modules/lodash/_isFlattenable.js"(exports, module) { 9591 var Symbol2 = require_Symbol(); 9592 var isArguments = require_isArguments(); 9593 var isArray = require_isArray(); 9594 var spreadableSymbol = Symbol2 ? Symbol2.isConcatSpreadable : void 0; 9595 function isFlattenable(value) { 9596 return isArray(value) || isArguments(value) || !!(spreadableSymbol && value && value[spreadableSymbol]); 9597 } 9598 module.exports = isFlattenable; 9599 } 9600 }); 9601 9602
vendor: 914 bytes, lines 9602-9629
9602// node_modules/lodash/_baseFlatten.js 9603 var require_baseFlatten = __commonJS({ 9604 "node_modules/lodash/_baseFlatten.js"(exports, module) { 9605 var arrayPush = require_arrayPush(); 9606 var isFlattenable = require_isFlattenable(); 9607 function baseFlatten(array, depth, predicate, isStrict, result) { 9608 var index = -1, length = array.length; 9609 predicate || (predicate = isFlattenable); 9610 result || (result = []); 9611 while (++index < length) { 9612 var value = array[index]; 9613 if (depth > 0 && predicate(value)) { 9614 if (depth > 1) { 9615 baseFlatten(value, depth - 1, predicate, isStrict, result); 9616 } else { 9617 arrayPush(result, value); 9618 } 9619 } else if (!isStrict) { 9620 result[result.length] = value; 9621 } 9622 } 9623 return result; 9624 } 9625 module.exports = baseFlatten; 9626 } 9627 }); 9628 9629
vendor: 368 bytes, lines 9629-9641
9629// node_modules/lodash/flatten.js 9630 var require_flatten = __commonJS({ 9631 "node_modules/lodash/flatten.js"(exports, module) { 9632 var baseFlatten = require_baseFlatten(); 9633 function flatten(array) { 9634 var length = array == null ? 0 : array.length; 9635 return length ? baseFlatten(array, 1) : []; 9636 } 9637 module.exports = flatten; 9638 } 9639 }); 9640 9641
vendor: 585 bytes, lines 9641-9661
9641// node_modules/lodash/_apply.js 9642 var require_apply = __commonJS({ 9643 "node_modules/lodash/_apply.js"(exports, module) { 9644 function apply(func, thisArg, args) { 9645 switch (args.length) { 9646 case 0: 9647 return func.call(thisArg); 9648 case 1: 9649 return func.call(thisArg, args[0]); 9650 case 2: 9651 return func.call(thisArg, args[0], args[1]); 9652 case 3: 9653 return func.call(thisArg, args[0], args[1], args[2]); 9654 } 9655 return func.apply(thisArg, args); 9656 } 9657 module.exports = apply; 9658 } 9659 }); 9660 9661
vendor: 878 bytes, lines 9661-9686
9661// node_modules/lodash/_overRest.js 9662 var require_overRest = __commonJS({ 9663 "node_modules/lodash/_overRest.js"(exports, module) { 9664 var apply = require_apply(); 9665 var nativeMax = Math.max; 9666 function overRest(func, start, transform) { 9667 start = nativeMax(start === void 0 ? func.length - 1 : start, 0); 9668 return function() { 9669 var args = arguments, index = -1, length = nativeMax(args.length - start, 0), array = Array(length); 9670 while (++index < length) { 9671 array[index] = args[start + index]; 9672 } 9673 index = -1; 9674 var otherArgs = Array(start + 1); 9675 while (++index < start) { 9676 otherArgs[index] = args[index]; 9677 } 9678 otherArgs[start] = transform(array); 9679 return apply(func, this, otherArgs); 9680 }; 9681 } 9682 module.exports = overRest; 9683 } 9684 }); 9685 9686
vendor: 282 bytes, lines 9686-9698
9686// node_modules/lodash/constant.js 9687 var require_constant = __commonJS({ 9688 "node_modules/lodash/constant.js"(exports, module) { 9689 function constant(value) { 9690 return function() { 9691 return value; 9692 }; 9693 } 9694 module.exports = constant; 9695 } 9696 }); 9697 9698
vendor: 623 bytes, lines 9698-9716
9698// node_modules/lodash/_baseSetToString.js 9699 var require_baseSetToString = __commonJS({ 9700 "node_modules/lodash/_baseSetToString.js"(exports, module) { 9701 var constant = require_constant(); 9702 var defineProperty = require_defineProperty(); 9703 var identity = require_identity(); 9704 var baseSetToString = !defineProperty ? identity : function(func, string) { 9705 return defineProperty(func, "toString", { 9706 "configurable": true, 9707 "enumerable": false, 9708 "value": constant(string), 9709 "writable": true 9710 }); 9711 }; 9712 module.exports = baseSetToString; 9713 } 9714 }); 9715 9716
vendor: 714 bytes, lines 9716-9741
9716// node_modules/lodash/_shortOut.js 9717 var require_shortOut = __commonJS({ 9718 "node_modules/lodash/_shortOut.js"(exports, module) { 9719 var HOT_COUNT = 800; 9720 var HOT_SPAN = 16; 9721 var nativeNow = Date.now; 9722 function shortOut(func) { 9723 var count = 0, lastCalled = 0; 9724 return function() { 9725 var stamp = nativeNow(), remaining = HOT_SPAN - (stamp - lastCalled); 9726 lastCalled = stamp; 9727 if (remaining > 0) { 9728 if (++count >= HOT_COUNT) { 9729 return arguments[0]; 9730 } 9731 } else { 9732 count = 0; 9733 } 9734 return func.apply(void 0, arguments); 9735 }; 9736 } 9737 module.exports = shortOut; 9738 } 9739 }); 9740 9741
vendor: 339 bytes, lines 9741-9751
9741// node_modules/lodash/_setToString.js 9742 var require_setToString = __commonJS({ 9743 "node_modules/lodash/_setToString.js"(exports, module) { 9744 var baseSetToString = require_baseSetToString(); 9745 var shortOut = require_shortOut(); 9746 var setToString = shortOut(baseSetToString); 9747 module.exports = setToString; 9748 } 9749 }); 9750 9751
vendor: 419 bytes, lines 9751-9764
9751// node_modules/lodash/_flatRest.js 9752 var require_flatRest = __commonJS({ 9753 "node_modules/lodash/_flatRest.js"(exports, module) { 9754 var flatten = require_flatten(); 9755 var overRest = require_overRest(); 9756 var setToString = require_setToString(); 9757 function flatRest(func) { 9758 return setToString(overRest(func, void 0, flatten), func + ""); 9759 } 9760 module.exports = flatRest; 9761 } 9762 }); 9763 9764
vendor: 264 bytes, lines 9764-9773
9764// node_modules/lodash/_metaMap.js 9765 var require_metaMap = __commonJS({ 9766 "node_modules/lodash/_metaMap.js"(exports, module) { 9767 var WeakMap2 = require_WeakMap(); 9768 var metaMap = WeakMap2 && new WeakMap2(); 9769 module.exports = metaMap; 9770 } 9771 }); 9772 9773
vendor: 194 bytes, lines 9773-9782
9773// node_modules/lodash/noop.js 9774 var require_noop = __commonJS({ 9775 "node_modules/lodash/noop.js"(exports, module) { 9776 function noop() { 9777 } 9778 module.exports = noop; 9779 } 9780 }); 9781 9782
vendor: 346 bytes, lines 9782-9794
9782// node_modules/lodash/_getData.js 9783 var require_getData = __commonJS({ 9784 "node_modules/lodash/_getData.js"(exports, module) { 9785 var metaMap = require_metaMap(); 9786 var noop = require_noop(); 9787 var getData = !metaMap ? noop : function(func) { 9788 return metaMap.get(func); 9789 }; 9790 module.exports = getData; 9791 } 9792 }); 9793 9794
vendor: 210 bytes, lines 9794-9802
9794// node_modules/lodash/_realNames.js 9795 var require_realNames = __commonJS({ 9796 "node_modules/lodash/_realNames.js"(exports, module) { 9797 var realNames = {}; 9798 module.exports = realNames; 9799 } 9800 }); 9801 9802
vendor: 724 bytes, lines 9802-9822
9802// node_modules/lodash/_getFuncName.js 9803 var require_getFuncName = __commonJS({ 9804 "node_modules/lodash/_getFuncName.js"(exports, module) { 9805 var realNames = require_realNames(); 9806 var objectProto = Object.prototype; 9807 var hasOwnProperty = objectProto.hasOwnProperty; 9808 function getFuncName(func) { 9809 var result = func.name + "", array = realNames[result], length = hasOwnProperty.call(realNames, result) ? array.length : 0; 9810 while (length--) { 9811 var data = array[length], otherFunc = data.func; 9812 if (otherFunc == null || otherFunc == func) { 9813 return data.name; 9814 } 9815 } 9816 return result; 9817 } 9818 module.exports = getFuncName; 9819 } 9820 }); 9821 9822
vendor: 721 bytes, lines 9822-9843
9822// node_modules/lodash/_LazyWrapper.js 9823 var require_LazyWrapper = __commonJS({ 9824 "node_modules/lodash/_LazyWrapper.js"(exports, module) { 9825 var baseCreate = require_baseCreate(); 9826 var baseLodash = require_baseLodash(); 9827 var MAX_ARRAY_LENGTH = 4294967295; 9828 function LazyWrapper(value) { 9829 this.__wrapped__ = value; 9830 this.__actions__ = []; 9831 this.__dir__ = 1; 9832 this.__filtered__ = false; 9833 this.__iteratees__ = []; 9834 this.__takeCount__ = MAX_ARRAY_LENGTH; 9835 this.__views__ = []; 9836 } 9837 LazyWrapper.prototype = baseCreate(baseLodash.prototype); 9838 LazyWrapper.prototype.constructor = LazyWrapper; 9839 module.exports = LazyWrapper; 9840 } 9841 }); 9842 9843
vendor: 431 bytes, lines 9843-9858
9843// node_modules/lodash/_copyArray.js 9844 var require_copyArray = __commonJS({ 9845 "node_modules/lodash/_copyArray.js"(exports, module) { 9846 function copyArray(source, array) { 9847 var index = -1, length = source.length; 9848 array || (array = Array(length)); 9849 while (++index < length) { 9850 array[index] = source[index]; 9851 } 9852 return array; 9853 } 9854 module.exports = copyArray; 9855 } 9856 }); 9857 9858
vendor: 732 bytes, lines 9858-9878
9858// node_modules/lodash/_wrapperClone.js 9859 var require_wrapperClone = __commonJS({ 9860 "node_modules/lodash/_wrapperClone.js"(exports, module) { 9861 var LazyWrapper = require_LazyWrapper(); 9862 var LodashWrapper = require_LodashWrapper(); 9863 var copyArray = require_copyArray(); 9864 function wrapperClone(wrapper) { 9865 if (wrapper instanceof LazyWrapper) { 9866 return wrapper.clone(); 9867 } 9868 var result = new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__); 9869 result.__actions__ = copyArray(wrapper.__actions__); 9870 result.__index__ = wrapper.__index__; 9871 result.__values__ = wrapper.__values__; 9872 return result; 9873 } 9874 module.exports = wrapperClone; 9875 } 9876 }); 9877 9878
vendor: 1,036 bytes, lines 9878-9906
9878// node_modules/lodash/wrapperLodash.js 9879 var require_wrapperLodash = __commonJS({ 9880 "node_modules/lodash/wrapperLodash.js"(exports, module) { 9881 var LazyWrapper = require_LazyWrapper(); 9882 var LodashWrapper = require_LodashWrapper(); 9883 var baseLodash = require_baseLodash(); 9884 var isArray = require_isArray(); 9885 var isObjectLike = require_isObjectLike(); 9886 var wrapperClone = require_wrapperClone(); 9887 var objectProto = Object.prototype; 9888 var hasOwnProperty = objectProto.hasOwnProperty; 9889 function lodash(value) { 9890 if (isObjectLike(value) && !isArray(value) && !(value instanceof LazyWrapper)) { 9891 if (value instanceof LodashWrapper) { 9892 return value; 9893 } 9894 if (hasOwnProperty.call(value, "__wrapped__")) { 9895 return wrapperClone(value); 9896 } 9897 } 9898 return new LodashWrapper(value); 9899 } 9900 lodash.prototype = baseLodash.prototype; 9901 lodash.prototype.constructor = lodash; 9902 module.exports = lodash; 9903 } 9904 }); 9905 9906
vendor: 732 bytes, lines 9906-9928
9906// node_modules/lodash/_isLaziable.js 9907 var require_isLaziable = __commonJS({ 9908 "node_modules/lodash/_isLaziable.js"(exports, module) { 9909 var LazyWrapper = require_LazyWrapper(); 9910 var getData = require_getData(); 9911 var getFuncName = require_getFuncName(); 9912 var lodash = require_wrapperLodash(); 9913 function isLaziable(func) { 9914 var funcName = getFuncName(func), other = lodash[funcName]; 9915 if (typeof other != "function" || !(funcName in LazyWrapper.prototype)) { 9916 return false; 9917 } 9918 if (func === other) { 9919 return true; 9920 } 9921 var data = getData(other); 9922 return !!data && func === data[0]; 9923 } 9924 module.exports = isLaziable; 9925 } 9926 }); 9927 9928
vendor: 2,285 bytes, lines 9928-9984
9928// node_modules/lodash/_createFlow.js 9929 var require_createFlow = __commonJS({ 9930 "node_modules/lodash/_createFlow.js"(exports, module) { 9931 var LodashWrapper = require_LodashWrapper(); 9932 var flatRest = require_flatRest(); 9933 var getData = require_getData(); 9934 var getFuncName = require_getFuncName(); 9935 var isArray = require_isArray(); 9936 var isLaziable = require_isLaziable(); 9937 var FUNC_ERROR_TEXT = "Expected a function"; 9938 var WRAP_CURRY_FLAG = 8; 9939 var WRAP_PARTIAL_FLAG = 32; 9940 var WRAP_ARY_FLAG = 128; 9941 var WRAP_REARG_FLAG = 256; 9942 function createFlow(fromRight) { 9943 return flatRest(function(funcs) { 9944 var length = funcs.length, index = length, prereq = LodashWrapper.prototype.thru; 9945 if (fromRight) { 9946 funcs.reverse(); 9947 } 9948 while (index--) { 9949 var func = funcs[index]; 9950 if (typeof func != "function") { 9951 throw new TypeError(FUNC_ERROR_TEXT); 9952 } 9953 if (prereq && !wrapper && getFuncName(func) == "wrapper") { 9954 var wrapper = new LodashWrapper([], true); 9955 } 9956 } 9957 index = wrapper ? index : length; 9958 while (++index < length) { 9959 func = funcs[index]; 9960 var funcName = getFuncName(func), data = funcName == "wrapper" ? getData(func) : void 0; 9961 if (data && isLaziable(data[0]) && data[1] == (WRAP_ARY_FLAG | WRAP_CURRY_FLAG | WRAP_PARTIAL_FLAG | WRAP_REARG_FLAG) && !data[4].length && data[9] == 1) { 9962 wrapper = wrapper[getFuncName(data[0])].apply(wrapper, data[3]); 9963 } else { 9964 wrapper = func.length == 1 && isLaziable(func) ? wrapper[funcName]() : wrapper.thru(func); 9965 } 9966 } 9967 return function() { 9968 var args = arguments, value = args[0]; 9969 if (wrapper && args.length == 1 && isArray(value)) { 9970 return wrapper.plant(value).value(); 9971 } 9972 var index2 = 0, result = length ? funcs[index2].apply(this, args) : value; 9973 while (++index2 < length) { 9974 result = funcs[index2].call(this, result); 9975 } 9976 return result; 9977 }; 9978 }); 9979 } 9980 module.exports = createFlow; 9981 } 9982 }); 9983 9984
vendor: 240 bytes, lines 9984-9993
9984// node_modules/lodash/flow.js 9985 var require_flow = __commonJS({ 9986 "node_modules/lodash/flow.js"(exports, module) { 9987 var createFlow = require_createFlow(); 9988 var flow2 = createFlow(); 9989 module.exports = flow2; 9990 } 9991 }); 9992 9993
vendor: 509 bytes, lines 9993-10011
9993// node_modules/lodash/_baseClamp.js 9994 var require_baseClamp = __commonJS({ 9995 "node_modules/lodash/_baseClamp.js"(exports, module) { 9996 function baseClamp(number, lower, upper) { 9997 if (number === number) { 9998 if (upper !== void 0) { 9999 number = number <= upper ? number : upper; 10000 } 10001 if (lower !== void 0) { 10002 number = number >= lower ? number : lower; 10003 } 10004 } 10005 return number; 10006 } 10007 module.exports = baseClamp; 10008 } 10009 }); 10010 10011
vendor: 704 bytes, lines 10011-10035
10011// node_modules/lodash/clamp.js 10012 var require_clamp = __commonJS({ 10013 "node_modules/lodash/clamp.js"(exports, module) { 10014 var baseClamp = require_baseClamp(); 10015 var toNumber = require_toNumber(); 10016 function clamp2(number, lower, upper) { 10017 if (upper === void 0) { 10018 upper = lower; 10019 lower = void 0; 10020 } 10021 if (upper !== void 0) { 10022 upper = toNumber(upper); 10023 upper = upper === upper ? upper : 0; 10024 } 10025 if (lower !== void 0) { 10026 lower = toNumber(lower); 10027 lower = lower === lower ? lower : 0; 10028 } 10029 return baseClamp(toNumber(number), lower, upper); 10030 } 10031 module.exports = clamp2; 10032 } 10033 }); 10034 10035
10035// packages/systems/ix2/engine/logic/IX2VanillaEvents.ts 10036 var import_flow, import_get, import_clamp, import_shared5, MOUSE_CLICK, MOUSE_SECOND_CLICK, MOUSE_DOWN, MOUSE_UP, MOUSE_OVER, MOUSE_OUT, DROPDOWN_CLOSE, DROPDOWN_OPEN, SLIDER_ACTIVE, SLIDER_INACTIVE, TAB_ACTIVE, TAB_INACTIVE, NAVBAR_CLOSE, NAVBAR_OPEN, MOUSE_MOVE, PAGE_SCROLL_DOWN, SCROLL_INTO_VIEW, SCROLL_OUT_OF_VIEW, PAGE_SCROLL_UP, SCROLLING_IN_VIEW, PAGE_FINISH, ECOMMERCE_CART_CLOSE, ECOMMERCE_CART_OPEN, PAGE_START, PAGE_SCROLL, COMPONENT_ACTIVE, COMPONENT_INACTIVE, COLON_DELIMITER3, getNamespacedParameterId2, composableFilter, isElement, containsElement, isOrContainsElement, getAutoStopEvent, hasAutoStopEvent, actionGroupCreator, withFilter, baseActionGroupOptions, baseActivityActionGroupOptions, SCROLL_EVENT_TYPES, MOUSE_OVER_OUT_TYPES, baseScrollActionGroupOptions, AUTO_STOP_DISABLED_EVENTS, getDocumentState, areBoxesIntersecting, isElementHovered, isElementVisible, whenComponentActiveChange, whenElementHoverChange, whenElementVisibiltyChange, whenScrollDirectionChange, pointIntersects, whenPageLoadFinish, whenPageLoadStart, whenClickCountChange, getComponentActiveOptions, getComponentInactiveOptions, scrollIntoOutOfViewOptions, MOUSE_OUT_ROUND_THRESHOLD, IX2VanillaEvents_default; 10037 var init_IX2VanillaEvents = __esm({ 10038 "packages/systems/ix2/engine/logic/IX2VanillaEvents.ts"() { 10039 "use strict"; 10040 import_flow = __toESM(require_flow()); 10041 import_get = __toESM(require_get()); 10042 import_clamp = __toESM(require_clamp()); 10043 init_shared_constants(); 10044 init_IX2VanillaEngine(); 10045 init_IX2EngineActions(); 10046 import_shared5 = __toESM(require_shared()); 10047 ({ 10048 MOUSE_CLICK, 10049 MOUSE_SECOND_CLICK, 10050 MOUSE_DOWN, 10051 MOUSE_UP, 10052 MOUSE_OVER, 10053 MOUSE_OUT, 10054 DROPDOWN_CLOSE, 10055 DROPDOWN_OPEN, 10056 SLIDER_ACTIVE, 10057 SLIDER_INACTIVE, 10058 TAB_ACTIVE, 10059 TAB_INACTIVE, 10060 NAVBAR_CLOSE, 10061 NAVBAR_OPEN, 10062 MOUSE_MOVE, 10063 PAGE_SCROLL_DOWN, 10064 SCROLL_INTO_VIEW, 10065 SCROLL_OUT_OF_VIEW, 10066 PAGE_SCROLL_UP, 10067 SCROLLING_IN_VIEW, 10068 PAGE_FINISH, 10069 ECOMMERCE_CART_CLOSE, 10070 ECOMMERCE_CART_OPEN, 10071 PAGE_START, 10072 PAGE_SCROLL 10073 } = EventTypeConsts); 10074 COMPONENT_ACTIVE = "COMPONENT_ACTIVE"; 10075 COMPONENT_INACTIVE = "COMPONENT_INACTIVE"; 10076 ({ COLON_DELIMITER: COLON_DELIMITER3 } = IX2EngineConstants_exports); 10077 ({ getNamespacedParameterId: getNamespacedParameterId2 } = import_shared5.IX2VanillaUtils); 10078 composableFilter = (predicate) => (options) => { 10079 if (typeof options === "object" && predicate(options)) { 10080 return true; 10081 } 10082 return options; 10083 }; 10084 isElement = composableFilter(({ element, nativeEvent }) => { 10085 return element === nativeEvent.target; 10086 }); 10087 containsElement = composableFilter(({ element, nativeEvent }) => { 10088 return element.contains(nativeEvent.target); 10089 }); 10090 isOrContainsElement = (0, import_flow.default)([isElement, containsElement]); 10091 getAutoStopEvent = (store, autoStopEventId) => { 10092 if (autoStopEventId) { 10093 const { ixData: ixData2 } = store.getState(); 10094 const { events } = ixData2; 10095 const eventToStop = events[autoStopEventId]; 10096 if (eventToStop && !AUTO_STOP_DISABLED_EVENTS[eventToStop.eventTypeId]) { 10097 return eventToStop; 10098 } 10099 } 10100 return null; 10101 }; 10102 hasAutoStopEvent = ({ store, event }) => { 10103 const { action: eventAction } = event; 10104 const { autoStopEventId } = eventAction.config; 10105 return Boolean(getAutoStopEvent(store, autoStopEventId)); 10106 }; 10107 actionGroupCreator = ({ store, event, element, eventStateKey }, state) => { 10108 const { action: eventAction, id: eventId } = event; 10109 const { actionListId, autoStopEventId } = eventAction.config; 10110 const eventToStop = getAutoStopEvent(store, autoStopEventId); 10111 if (eventToStop) { 10112 stopActionGroup({ 10113 store, 10114 eventId: autoStopEventId, 10115 eventTarget: element, 10116 eventStateKey: autoStopEventId + COLON_DELIMITER3 + eventStateKey.split(COLON_DELIMITER3)[1], 10117 actionListId: (0, import_get.default)(eventToStop, "action.config.actionListId") 10118 }); 10119 } 10120 stopActionGroup({ 10121 store, 10122 eventId, 10123 eventTarget: element, 10124 eventStateKey, 10125 actionListId 10126 }); 10127 startActionGroup({ 10128 store, 10129 eventId, 10130 eventTarget: element, 10131 eventStateKey, 10132 actionListId 10133 }); 10134 return state; 10135 }; 10136 withFilter = (filter, handler) => (options, state) =>
10136 filter(options, state) === true ? handler(options, state) : state; 10137 baseActionGroupOptions = { 10138 handler: withFilter(isOrContainsElement, actionGroupCreator) 10139 }; 10140 baseActivityActionGroupOptions = { 10141 ...baseActionGroupOptions, 10142 types: [COMPONENT_ACTIVE, COMPONENT_INACTIVE].join(" ") 10143 }; 10144 SCROLL_EVENT_TYPES = [ 10145 { target: window, types: "resize orientationchange", throttle: true }, 10146 { 10147 target: document, 10148 types: "scroll wheel readystatechange IX2_PAGE_UPDATE", 10149 throttle: true 10150 } 10151 ]; 10152 MOUSE_OVER_OUT_TYPES = "mouseover mouseout"; 10153 baseScrollActionGroupOptions = { 10154 types: SCROLL_EVENT_TYPES 10155 }; 10156 AUTO_STOP_DISABLED_EVENTS = { 10157 PAGE_START, 10158 PAGE_FINISH 10159 }; 10160 getDocumentState = (() => { 10161 const supportOffset = window.pageXOffset !== void 0; 10162 const isCSS1Compat = document.compatMode === "CSS1Compat"; 10163 const rootElement = isCSS1Compat ? document.documentElement : document.body; 10164 return () => ({ 10165 scrollLeft: supportOffset ? window.pageXOffset : rootElement.scrollLeft, 10166 scrollTop: supportOffset ? window.pageYOffset : rootElement.scrollTop, 10167 // required to remove elasticity in Safari scrolling. 10168 stiffScrollTop: (0, import_clamp.default)( 10169 supportOffset ? window.pageYOffset : rootElement.scrollTop, 10170 0, 10171 rootElement.scrollHeight - window.innerHeight 10172 ), 10173 scrollWidth: rootElement.scrollWidth, 10174 scrollHeight: rootElement.scrollHeight, 10175 clientWidth: rootElement.clientWidth, 10176 clientHeight: rootElement.clientHeight, 10177 innerWidth: window.innerWidth, 10178 innerHeight: window.innerHeight 10179 }); 10180 })(); 10181 areBoxesIntersecting = (a, b) => !(a.left > b.right || a.right < b.left || a.top > b.bottom || a.bottom < b.top); 10182 isElementHovered = ({ element, nativeEvent }) => { 10183 const { type, target, relatedTarget } = nativeEvent; 10184 const containsTarget = element.contains(target); 10185 if (type === "mouseover" && containsTarget) { 10186 return true; 10187 } 10188 const containsRelated = element.contains(relatedTarget); 10189 if (type === "mouseout" && containsTarget && containsRelated) { 10190 return true; 10191 } 10192 return false; 10193 }; 10194 isElementVisible = (options) => { 10195 const { 10196 element, 10197 event: { config } 10198 } = options; 10199 const { clientWidth, clientHeight } = getDocumentState(); 10200 const scrollOffsetValue = config.scrollOffsetValue; 10201 const scrollOffsetUnit = config.scrollOffsetUnit; 10202 const isPX = scrollOffsetUnit === "PX"; 10203 const offsetPadding = isPX ? scrollOffsetValue : clientHeight * (scrollOffsetValue || 0) / 100; 10204 return areBoxesIntersecting(element.getBoundingClientRect(), { 10205 left: 0, 10206 top: offsetPadding, 10207 right: clientWidth, 10208 bottom: clientHeight - offsetPadding 10209 }); 10210 }; 10211 whenComponentActiveChange = // @ts-expect-error - TS7006 - Parameter 'handler' implicitly has an 'any' type. 10212 (handler) => (options, oldState) => { 10213 const { type } = options.nativeEvent; 10214 const isActive = [COMPONENT_ACTIVE, COMPONENT_INACTIVE].indexOf(type) !== -1 ? type === COMPONENT_ACTIVE : oldState.isActive; 10215 const newState = { 10216 ...oldState, 10217 isActive 10218 }; 10219 if (!oldState || newState.isActive !== oldState.isActive) { 10220 return handler(options, newState) || newState; 10221 } 10222 return newState; 10223 }; 10224 whenElementHoverChange = (handler) => (options, oldState) => { 10225 const newState = { 10226 elementHovered: isElementHovered(options) 10227 }; 10228 if (oldState ? newState.elementHovered !== oldState.elementHovered : newState.elementHovered) { 10229 return handler(options, newState) || newState; 10230 } 10231 return newState; 10232 }; 10233 whenElementVisibiltyChange = (handler) => (options, oldState) => { 10234 const newState = { 10235 ...oldState, 10236 elementVisible: isElementVisible(options) 10237 }; 10238 if (oldState ? newState.elementVisible !== oldState.elementVisible : newState.elementVisible) { 10239 return handler(options, newState) || newState; 10240 } 10241 return newState; 10242 }; 10243 whenScrollDirectionChange = // @ts-expect-error - TS7006 - Parameter 'handler' implicitly has an 'any' type. 10244 (handler) => (options, oldState = {}) => { 10245 const { 10246 stiffScrollTop: scrollTop, 10247 scrollHeight, 10248 innerHeight 10249 } = getDocumentState(); 10250 const { 10251 event: { config, eventTypeId } 10252 } = options; 10253 const { scrollOffsetValue, scrollOffsetUnit } = config; 10254 const isPX = scrollOffsetUnit === "PX";
10255 const scrollHeightBounds = scrollHeight - innerHeight; 10256 const percentTop = Number((scrollTop / scrollHeightBounds).toFixed(2)); 10257 if (oldState && oldState.percentTop === percentTop) { 10258 return oldState; 10259 } 10260 const scrollTopPadding = (isPX ? scrollOffsetValue : innerHeight * (scrollOffsetValue || 0) / 100) / scrollHeightBounds; 10261 let scrollingDown; 10262 let scrollDirectionChanged; 10263 let anchorTop = 0; 10264 if (oldState) { 10265 scrollingDown = percentTop > oldState.percentTop; 10266 scrollDirectionChanged = oldState.scrollingDown !== scrollingDown; 10267 anchorTop = scrollDirectionChanged ? percentTop : oldState.anchorTop; 10268 } 10269 const inBounds = eventTypeId === PAGE_SCROLL_DOWN ? percentTop >= anchorTop + scrollTopPadding : percentTop <= anchorTop - scrollTopPadding; 10270 const newState = { 10271 ...oldState, 10272 percentTop, 10273 inBounds, 10274 anchorTop, 10275 scrollingDown 10276 }; 10277 if (oldState && inBounds && // @ts-expect-error - TS2339 - Property 'inBounds' does not exist on type '{}'. 10278 (scrollDirectionChanged || newState.inBounds !== oldState.inBounds)) { 10279 return handler(options, newState) || newState; 10280 } 10281 return newState; 10282 }; 10283 pointIntersects = (point, rect) => point.left > rect.left && point.left < rect.right && point.top > rect.top && point.top < rect.bottom; 10284 whenPageLoadFinish = (handler) => (options, oldState) => { 10285 const newState = { 10286 finished: document.readyState === "complete" 10287 }; 10288 if (newState.finished && !(oldState && oldState.finshed)) { 10289 handler(options); 10290 } 10291 return newState; 10292 }; 10293 whenPageLoadStart = (handler) => (options, oldState) => { 10294 const newState = { 10295 started: true 10296 }; 10297 if (!oldState) { 10298 handler(options); 10299 } 10300 return newState; 10301 }; 10302 whenClickCountChange = (handler) => (options, oldState = { clickCount: 0 }) => { 10303 const newState = { 10304 clickCount: oldState.clickCount % 2 + 1 10305 }; 10306 if (newState.clickCount !== oldState.clickCount) { 10307 return handler(options, newState) || newState; 10308 } 10309 return newState; 10310 }; 10311 getComponentActiveOptions = (allowNestedChildrenEvents = true) => ({ 10312 ...baseActivityActionGroupOptions, 10313 handler: withFilter( 10314 allowNestedChildrenEvents ? isOrContainsElement : isElement, 10315 // @ts-expect-error - TS7006 - Parameter 'options' implicitly has an 'any' type. | TS7006 - Parameter 'state' implicitly has an 'any' type. 10316 whenComponentActiveChange((options, state) => { 10317 return state.isActive ? baseActionGroupOptions.handler(options, state) : state; 10318 }) 10319 ) 10320 }); 10321 getComponentInactiveOptions = (allowNestedChildrenEvents = true) => ({ 10322 ...baseActivityActionGroupOptions, 10323 handler: withFilter( 10324 allowNestedChildrenEvents ? isOrContainsElement : isElement, 10325 // @ts-expect-error - TS7006 - Parameter 'options' implicitly has an 'any' type. | TS7006 - Parameter 'state' implicitly has an 'any' type. 10326 whenComponentActiveChange((options, state) => { 10327 return !state.isActive ? baseActionGroupOptions.handler(options, state) : state; 10328 }) 10329 ) 10330 }); 10331 scrollIntoOutOfViewOptions = { 10332 ...baseScrollActionGroupOptions, 10333 handler: whenElementVisibiltyChange((options, state) => { 10334 const { elementVisible } = state; 10335 const { event, store } = options; 10336 const { ixData: ixData2 } = store.getState(); 10337 const { events } = ixData2; 10338 if (!events[event.action.config.autoStopEventId] && state.triggered) { 10339 return state; 10340 } 10341 if (event.eventTypeId === SCROLL_INTO_VIEW === elementVisible) { 10342 actionGroupCreator(options); 10343 return { 10344 ...state, 10345 triggered: true 10346 }; 10347 } else { 10348 return state; 10349 } 10350 }) 10351 }; 10352 MOUSE_OUT_ROUND_THRESHOLD = 0.05; 10353 IX2VanillaEvents_default = { 10354 [SLIDER_ACTIVE]: getComponentActiveOptions(), 10355 [SLIDER_INACTIVE]: getComponentInactiveOptions(), 10356 [DROPDOWN_OPEN]: getComponentActiveOptions(), 10357 [DROPDOWN_CLOSE]: getComponentInactiveOptions(), 10358 // navbar elements may contain nested components in the menu. To prevent activity misfires, only listed for activity 10359 // events where the target is the navbar element, and ignore children that dispatch activitiy events. 10360 [NAVBAR_OPEN]: getComponentActiveOptions(false), 10361 [NAVBAR_CLOSE]: getComponentInactiveOptions(false), 10362 [TAB_ACTIVE]: getComponentActiveOptions(), 10363 [TAB_INACTIVE]: getComponentInactiveOptions(), 10364 [ECOMMERCE_CART_OPEN]: { 10365 types: "ecommerce-cart-open", 10366 handler: withFilter(isOrContainsElement, actionGroupCreator) 10367 }, 10368 [ECOMMERCE_CART_CLOSE]: { 10369 types: "ecommerce-cart-close", 10370 handler: withFilter(isOrContainsElement, actionGroupCreator) 10371 },
10372 [MOUSE_CLICK]: { 10373 types: "click", 10374 handler: withFilter( 10375 isOrContainsElement, 10376 whenClickCountChange((options, { clickCount }) => { 10377 if (hasAutoStopEvent(options)) { 10378 clickCount === 1 && actionGroupCreator(options); 10379 } else { 10380 actionGroupCreator(options); 10381 } 10382 }) 10383 ) 10384 }, 10385 [MOUSE_SECOND_CLICK]: { 10386 types: "click", 10387 handler: withFilter( 10388 isOrContainsElement, 10389 whenClickCountChange((options, { clickCount }) => { 10390 if (clickCount === 2) { 10391 actionGroupCreator(options); 10392 } 10393 }) 10394 ) 10395 }, 10396 [MOUSE_DOWN]: { 10397 ...baseActionGroupOptions, 10398 types: "mousedown" 10399 }, 10400 [MOUSE_UP]: { 10401 ...baseActionGroupOptions, 10402 types: "mouseup" 10403 }, 10404 [MOUSE_OVER]: { 10405 types: MOUSE_OVER_OUT_TYPES, 10406 handler: withFilter( 10407 isOrContainsElement, 10408 whenElementHoverChange((options, state) => { 10409 if (state.elementHovered) { 10410 actionGroupCreator(options); 10411 } 10412 }) 10413 ) 10414 }, 10415 [MOUSE_OUT]: { 10416 types: MOUSE_OVER_OUT_TYPES, 10417 handler: withFilter( 10418 isOrContainsElement, 10419 whenElementHoverChange((options, state) => { 10420 if (!state.elementHovered) { 10421 actionGroupCreator(options); 10422 } 10423 }) 10424 ) 10425 }, 10426 [MOUSE_MOVE]: { 10427 types: "mousemove mouseout scroll", 10428 handler: ({ store, element, eventConfig, nativeEvent, eventStateKey }, state = { clientX: 0, clientY: 0, pageX: 0, pageY: 0 }) => { 10429 const { 10430 basedOn, 10431 selectedAxis, 10432 continuousParameterGroupId, 10433 reverse, 10434 restingState = 0 10435 } = eventConfig; 10436 const { 10437 clientX = state.clientX, 10438 clientY = state.clientY, 10439 pageX = state.pageX, 10440 pageY = state.pageY 10441 } = nativeEvent; 10442 const isXAxis = selectedAxis === "X_AXIS"; 10443 const isMouseOut = nativeEvent.type === "mouseout"; 10444 let value = restingState / 100; 10445 let namespacedParameterId = continuousParameterGroupId; 10446 let elementHovered = false; 10447 switch (basedOn) { 10448 case EventBasedOn.VIEWPORT: { 10449 value = isXAxis ? Math.min(clientX, window.innerWidth) / window.innerWidth : Math.min(clientY, window.innerHeight) / window.innerHeight; 10450 break; 10451 } 10452 case EventBasedOn.PAGE: { 10453 const { scrollLeft, scrollTop, scrollWidth, scrollHeight } = getDocumentState(); 10454 value = isXAxis ? Math.min(scrollLeft + pageX, scrollWidth) / scrollWidth : Math.min(scrollTop + pageY, scrollHeight) / scrollHeight; 10455 break; 10456 } 10457 case EventBasedOn.ELEMENT: 10458 default: { 10459 namespacedParameterId = getNamespacedParameterId2( 10460 eventStateKey, 10461 continuousParameterGroupId 10462 ); 10463 const isMouseEvent = nativeEvent.type.indexOf("mouse") === 0; 10464 if (isMouseEvent && isOrContainsElement({ element, nativeEvent }) !== true) { 10465 break; 10466 } 10467 const rect = element.getBoundingClientRect(); 10468 const { left, top, width, height } = rect; 10469 if (!isMouseEvent && !pointIntersects({ left: clientX, top: clientY }, rect)) { 10470 break; 10471 } 10472 elementHovered = true; 10473 value = isXAxis ? (clientX - left) / width : (clientY - top) / height; 10474 break; 10475 } 10476 } 10477 if (isMouseOut && (value > 1 - MOUSE_OUT_ROUND_THRESHOLD || value < MOUSE_OUT_ROUND_THRESHOLD)) { 10478 value = Math.round(value); 10479 } 10480 if (basedOn !== EventBasedOn.ELEMENT || elementHovered || // eslint-disable-next-line @typescript-eslint/ban-ts-comment 10481 // @ts-expect-error 10482 elementHovered !== state.elementHovered) { 10483 value = reverse ? 1 - value : value; 10484 store.dispatch(parameterChanged(namespacedParameterId, value)); 10485 } 10486 return { 10487 elementHovered, 10488 clientX, 10489 clientY, 10490 pageX, 10491 pageY 10492 }; 10493 } 10494 }, 10495 [PAGE_SCROLL]: { 10496 types: SCROLL_EVENT_TYPES, 10497 // eslint-disable-next-line @typescript-eslint/ban-ts-comment 10498 // @ts-expect-error 10499 handler: ({ store, eventConfig }) => { 10500 const { continuousParameterGroupId, reverse } = eventConfig; 10501 const { scrollTop, scrollHeight, clientHeight } = getDocumentState(); 10502 let value = scrollTop / (scrollHeight - clientHeight); 10503 value = reverse ? 1 - value : value; 10504 store.dispatch(parameterChanged(continuousParameterGroupId, value)); 10505 } 10506 }, 10507 [SCROLLING_IN_VIEW]: { 10508 types: SCROLL_EVENT_TYPES, 10509 handler: ({ element, store, eventConfig, eventStateKey }, state = { scrollPercent: 0 }) => { 10510 const { 10511 scrollLeft, 10512 scrollTop, 10513 scrollWidth, 10514 scrollHeight, 10515 clientHeight: visibleHeight 10516 } = getDocumentState(); 10517 const { 10518 basedOn, 10519 selectedAxis, 10520 continuousParameterGroupId, 10521 startsEntering, 10522 startsExiting, 10523 addEndOffset, 10524 addStartOffset, 10525 addOffsetValue = 0, 10526 endOffsetValue = 0 10527 } = eventConfig; 10528 const isXAxis = selectedAxis === "X_AXIS"; 10529 if (basedOn === EventBasedOn.VIEWPORT) { 10530 const value = isXAxis ? scrollLeft / scrollWidth : scrollTop / scrollHeight; 10531 if (value !== state.scrollPercent) { 10532 store.dispatch(parameterChanged(continuousParameterGroupId, value)); 10533 } 10534 return { 10535 scrollPercent: value 10536 }; 10537 } else { 10538 const namespacedParameterId = getNamespacedParameterId2( 10539 eventStateKey, 10540 continuousParameterGroupId 10541 ); 10542 const elementRect = element.getBoundingClientRect(); 10543 let offsetStartPerc = (addStartOffset ? addOffsetValue : 0) / 100; 10544 let offsetEndPerc = (addEndOffset ? endOffsetValue : 0) / 100; 10545 offsetStartPerc = startsEntering ? offsetStartPerc : 1 - offsetStartPerc; 10546 offsetEndPerc = startsExiting ? offsetEndPerc : 1 - offsetEndPerc; 10547 const offsetElementTop = elementRect.top + Math.min(elementRect.height * offsetStartPerc, visibleHeight); 10548 const offsetElementBottom = elementRect.top + elementRect.height * offsetEndPerc; 10549 const offsetHeight = offsetElementBottom - offsetElementTop; 10550 const fixedScrollHeight = Math.min( 10551 visibleHeight + offsetHeight, 10552 scrollHeight 10553 ); 10554 const fixedScrollTop = Math.min( 10555 Math.max(0, visibleHeight - offsetElementTop), 10556 fixedScrollHeight 10557 ); 10558 const fixedScrollPerc = fixedScrollTop / fixedScrollHeight; 10559 if (fixedScrollPerc !== state.scrollPercent) { 10560 store.dispatch( 10561 parameterChanged(namespacedParameterId, fixedScrollPerc) 10562 ); 10563 } 10564 return { 10565 scrollPercent: fixedScrollPerc 10566 }; 10567 } 10568 } 10569 }, 10570 [SCROLL_INTO_VIEW]: scrollIntoOutOfViewOptions,
10571 [SCROLL_OUT_OF_VIEW]: scrollIntoOutOfViewOptions, 10572 [PAGE_SCROLL_DOWN]: { 10573 ...baseScrollActionGroupOptions, 10574 // @ts-expect-error - TS7006 - Parameter 'options' implicitly has an 'any' type. | TS7006 - Parameter 'state' implicitly has an 'any' type. 10575 handler: whenScrollDirectionChange((options, state) => { 10576 if (state.scrollingDown) { 10577 actionGroupCreator(options); 10578 } 10579 }) 10580 }, 10581 [PAGE_SCROLL_UP]: { 10582 ...baseScrollActionGroupOptions, 10583 // @ts-expect-error - TS7006 - Parameter 'options' implicitly has an 'any' type. | TS7006 - Parameter 'state' implicitly has an 'any' type. 10584 handler: whenScrollDirectionChange((options, state) => { 10585 if (!state.scrollingDown) { 10586 actionGroupCreator(options); 10587 } 10588 }) 10589 }, 10590 [PAGE_FINISH]: { 10591 types: "readystatechange IX2_PAGE_UPDATE", 10592 handler: withFilter(isElement, whenPageLoadFinish(actionGroupCreator)) 10593 }, 10594 [PAGE_START]: { 10595 types: "readystatechange IX2_PAGE_UPDATE", 10596 handler: withFilter(isElement, whenPageLoadStart(actionGroupCreator)) 10597 } 10598 }; 10599 } 10600 }); 10601 10602
10602// packages/systems/ix2/engine/logic/IX2VanillaEngine.ts 10603 var IX2VanillaEngine_exports = {}; 10604 __export(IX2VanillaEngine_exports, { 10605 observeRequests: () => observeRequests, 10606 startActionGroup: () => startActionGroup, 10607 startEngine: () => startEngine, 10608 stopActionGroup: () => stopActionGroup, 10609 stopAllActionGroups: () => stopAllActionGroups, 10610 stopEngine: () => stopEngine 10611 }); 10612 function observeRequests(store) { 10613 observeStore2({ 10614 store, 10615 select: ({ 10616 ixRequest: ixRequest2 10617 }) => ixRequest2.preview, 10618 onChange: handlePreviewRequest 10619 }); 10620 observeStore2({ 10621 store, 10622 select: ({ 10623 ixRequest: ixRequest2 10624 }) => ixRequest2.playback, 10625 onChange: handlePlaybackRequest 10626 }); 10627 observeStore2({ 10628 store, 10629 select: ({ 10630 ixRequest: ixRequest2 10631 }) => ixRequest2.stop, 10632 onChange: handleStopRequest 10633 }); 10634 observeStore2({ 10635 store, 10636 select: ({ 10637 ixRequest: ixRequest2 10638 }) => ixRequest2.clear, 10639 onChange: handleClearRequest 10640 }); 10641 } 10642 function observeMediaQueryChange(store) { 10643 observeStore2({ 10644 store, 10645 select: ({ 10646 ixSession: ixSession2 10647 }) => ixSession2.mediaQueryKey, 10648 onChange: () => { 10649 stopEngine(store); 10650 clearAllStyles2({ store, elementApi: IX2BrowserApi_exports }); 10651 startEngine({ store, allowEvents: true }); 10652 dispatchPageUpdateEvent(); 10653 } 10654 }); 10655 } 10656 function observeOneRenderTick(store, onTick) { 10657 const unsubscribe = observeStore2({ 10658 store, 10659 select: ({ 10660 ixSession: ixSession2 10661 }) => ixSession2.tick, 10662 // @ts-expect-error - TS7006 - Parameter 'tick' implicitly has an 'any' type. 10663 onChange: (tick) => { 10664 onTick(tick); 10665 unsubscribe(); 10666 } 10667 }); 10668 } 10669 function handlePreviewRequest({ rawData, defer }, store) { 10670 const start = () => { 10671 startEngine({ store, rawData, allowEvents: true }); 10672 dispatchPageUpdateEvent(); 10673 }; 10674 defer ? setTimeout(start, 0) : start(); 10675 } 10676 function dispatchPageUpdateEvent() { 10677 document.dispatchEvent(new CustomEvent("IX2_PAGE_UPDATE")); 10678 } 10679 function handlePlaybackRequest(playback, store) { 10680 const { 10681 actionTypeId, 10682 actionListId, 10683 actionItemId, 10684 eventId, 10685 allowEvents, 10686 immediate, 10687 testManual, 10688 verbose = true 10689 } = playback; 10690 let { rawData } = playback; 10691 if (actionListId && actionItemId && rawData && immediate) { 10692 const actionList = rawData.actionLists[actionListId]; 10693 if (actionList) { 10694 rawData = reduceListToGroup2({ 10695 actionList, 10696 actionItemId, 10697 rawData 10698 }); 10699 } 10700 } 10701 startEngine({ store, rawData, allowEvents, testManual }); 10702 if (actionListId && actionTypeId === ActionTypeConsts.GENERAL_START_ACTION || isQuickEffect(actionTypeId)) { 10703 stopActionGroup({ store, actionListId }); 10704 renderInitialGroup({ store, actionListId, eventId }); 10705 const started = startActionGroup({ 10706 store, 10707 eventId, 10708 actionListId, 10709 immediate, 10710 verbose 10711 }); 10712 if (verbose && started) { 10713 store.dispatch( 10714 actionListPlaybackChanged({ actionListId, isPlaying: !immediate }) 10715 ); 10716 } 10717 } 10718 } 10719 function handleStopRequest({ actionListId }, store) { 10720 if (actionListId) { 10721 stopActionGroup({ store, actionListId }); 10722 } else { 10723 stopAllActionGroups({ store }); 10724 } 10725 stopEngine(store); 10726 } 10727 function handleClearRequest(state, store) { 10728 stopEngine(store); 10729 clearAllStyles2({ store, elementApi: IX2BrowserApi_exports }); 10730 } 10731 function startEngine({ 10732 store, 10733 rawData, 10734 allowEvents, 10735 testManual 10736 }) { 10737 const { ixSession: ixSession2 } = store.getState(); 10738 if (rawData) { 10739 store.dispatch(rawDataImported(rawData)); 10740 } 10741 if (!ixSession2.active) { 10742 store.dispatch( 10743 sessionInitialized({ 10744 hasBoundaryNodes: Boolean(document.querySelector(BOUNDARY_SELECTOR2)), 10745 reducedMotion: document.body.hasAttribute("data-wf-ix-vacation") && window.matchMedia("(prefers-reduced-motion)").matches 10746 }) 10747 ); 10748 if (allowEvents) { 10749 bindEvents(store); 10750 addDocumentClass(); 10751 if (store.getState().ixSession.hasDefinedMediaQueries) { 10752 observeMediaQueryChange(store); 10753 } 10754 } 10755 store.dispatch(sessionStarted()); 10756 startRenderLoop(store, testManual); 10757 } 10758 } 10759 function addDocumentClass() { 10760 const { documentElement } = document; 10761 if (documentElement.className.indexOf(W_MOD_IX2) === -1) { 10762 documentElement.className += ` ${W_MOD_IX2}`; 10763 } 10764 } 10765 function startRenderLoop(store, testManual) { 10766 const handleFrame = (now) => { 10767 const { ixSession: ixSession2, ixParameters: ixParameters2 } = store.getState(); 10768 if (ixSession2.active) { 10769 store.dispatch(animationFrameChanged(now, ixParameters2)); 10770 if (testManual) { 10771 observeOneRenderTick(store, handleFrame); 10772 } else { 10773 requestAnimationFrame(handleFrame); 10774 } 10775 } 10776 }; 10777 handleFrame(window.performance.now()); 10778 } 10779 function stopEngine(store) { 10780 const { ixSession: ixSession2 } = store.getState(); 10781 if (ixSession2.active) { 10782 const { eventListeners } = ixSession2;
10783 eventListeners.forEach(clearEventListener); 10784 clearObjectCache2(); 10785 store.dispatch(sessionStopped()); 10786 } 10787 } 10788 function clearEventListener({ target, listenerParams }) { 10789 target.removeEventListener.apply(target, listenerParams); 10790 } 10791 function createGroupInstances({ 10792 // @ts-expect-error - TS7031 - Binding element 'store' implicitly has an 'any' type. 10793 store, 10794 // @ts-expect-error - TS7031 - Binding element 'eventStateKey' implicitly has an 'any' type. 10795 eventStateKey, 10796 // @ts-expect-error - TS7031 - Binding element 'eventTarget' implicitly has an 'any' type. 10797 eventTarget, 10798 // @ts-expect-error - TS7031 - Binding element 'eventId' implicitly has an 'any' type. 10799 eventId, 10800 // @ts-expect-error - TS7031 - Binding element 'eventConfig' implicitly has an 'any' type. 10801 eventConfig, 10802 // @ts-expect-error - TS7031 - Binding element 'actionListId' implicitly has an 'any' type. 10803 actionListId, 10804 // @ts-expect-error - TS7031 - Binding element 'parameterGroup' implicitly has an 'any' type. 10805 parameterGroup, 10806 // @ts-expect-error - TS7031 - Binding element 'smoothing' implicitly has an 'any' type. 10807 smoothing, 10808 // @ts-expect-error - TS7031 - Binding element 'restingValue' implicitly has an 'any' type. 10809 restingValue 10810 }) { 10811 const { ixData: ixData2, ixSession: ixSession2 } = store.getState(); 10812 const { events } = ixData2; 10813 const event = events[eventId]; 10814 const { eventTypeId } = event; 10815 const targetCache = {}; 10816 const instanceActionGroups = {}; 10817 const instanceConfigs = []; 10818 const { continuousActionGroups } = parameterGroup; 10819 let { id: parameterId } = parameterGroup; 10820 if (shouldNamespaceEventParameter2(eventTypeId, eventConfig)) { 10821 parameterId = getNamespacedParameterId3(eventStateKey, parameterId); 10822 } 10823 const eventElementRoot = ixSession2.hasBoundaryNodes && eventTarget ? getClosestElement(eventTarget, BOUNDARY_SELECTOR2) : null; 10824 continuousActionGroups.forEach((actionGroup) => { 10825 const { keyframe, actionItems } = actionGroup; 10826 actionItems.forEach((actionItem) => { 10827 const { actionTypeId } = actionItem; 10828 const { target } = actionItem.config; 10829 if (!target) { 10830 return; 10831 } 10832 const elementRoot = target.boundaryMode ? eventElementRoot : null; 10833 const key = stringifyTarget2(target) + COLON_DELIMITER4 + actionTypeId; 10834 instanceActionGroups[key] = appendActionItem( 10835 instanceActionGroups[key], 10836 keyframe, 10837 actionItem 10838 ); 10839 if (!targetCache[key]) { 10840 targetCache[key] = true; 10841 const { config } = actionItem; 10842 getAffectedElements2({ 10843 config, 10844 event, 10845 eventTarget, 10846 elementRoot, 10847 elementApi: IX2BrowserApi_exports 10848 }
10848).forEach((element) => { 10849 instanceConfigs.push({ element, key }); 10850 }); 10851 } 10852 }); 10853 }); 10854 instanceConfigs.forEach(({ element, key }) => { 10855 const actionGroups = instanceActionGroups[key]; 10856 const actionItem = (0, import_get2.default)(actionGroups, `[0].actionItems[0]`, {}); 10857 const { actionTypeId } = actionItem; 10858 const pluginInstance = isPluginType2(actionTypeId) ? createPluginInstance2(actionTypeId)(element, actionItem) : null; 10859 const destination = getDestinationValues2( 10860 { element, actionItem, elementApi: IX2BrowserApi_exports }, 10861 // eslint-disable-next-line @typescript-eslint/ban-ts-comment 10862 // @ts-expect-error 10863 pluginInstance 10864 ); 10865 createInstance({ 10866 store, 10867 element, 10868 eventId, 10869 actionListId, 10870 actionItem, 10871 destination, 10872 continuous: true, 10873 parameterId, 10874 actionGroups, 10875 smoothing, 10876 restingValue, 10877 pluginInstance 10878 }); 10879 }); 10880 } 10881 function appendActionItem(actionGroups = [], keyframe, actionItem) { 10882 const newActionGroups = [...actionGroups]; 10883 let groupIndex; 10884 newActionGroups.some((group, index) => { 10885 if (group.keyframe === keyframe) { 10886 groupIndex = index; 10887 return true; 10888 } 10889 return false; 10890 }); 10891 if (groupIndex == null) { 10892 groupIndex = newActionGroups.length; 10893 newActionGroups.push({ 10894 keyframe, 10895 actionItems: [] 10896 }); 10897 } 10898 newActionGroups[groupIndex].actionItems.push(actionItem); 10899 return newActionGroups; 10900 } 10901 function bindEvents(store) { 10902 const { ixData: ixData2 } = store.getState(); 10903 const { eventTypeMap } = ixData2; 10904 updateViewportWidth(store); 10905 (0, import_forEach.default)(eventTypeMap, (events, key) => { 10906 const logic = IX2VanillaEvents_default[key]; 10907 if (!logic) { 10908 console.warn(`IX2 event type not configured: ${key}`); 10909 return; 10910 } 10911 bindEventType({ 10912 // @ts-expect-error - TS7031 - Binding element 'logic' implicitly has an 'any' type. 10913 logic, 10914 store, 10915 events 10916 }); 10917 }); 10918 const { ixSession: ixSession2 } = store.getState(); 10919 if (ixSession2.eventListeners.length) { 10920 bindResizeEvents(store); 10921 } 10922 } 10923 function bindResizeEvents(store) { 10924 const handleResize = () => { 10925 updateViewportWidth(store); 10926 }; 10927 WINDOW_RESIZE_EVENTS.forEach((type) => { 10928 window.addEventListener(type, handleResize); 10929 store.dispatch(eventListenerAdded(window, [type, handleResize])); 10930 }); 10931 handleResize(); 10932 } 10933 function updateViewportWidth(store) { 10934 const { ixSession: ixSession2, ixData: ixData2 } = store.getState(); 10935 const width = window.innerWidth; 10936 if (width !== ixSession2.viewportWidth) { 10937 const { mediaQueries } = ixData2; 10938 store.dispatch(viewportWidthChanged({ width, mediaQueries })); 10939 } 10940 } 10941 function bindEventType({ logic, store, events }) { 10942 injectBehaviorCSSFixes(events); 10943 const { types: eventTypes, handler: eventHandler } = logic; 10944 const { ixData: ixData2 } = store.getState(); 10945 const { actionLists } = ixData2; 10946 const eventTargets = mapFoundValues(events, getAffectedForEvent); 10947 if (!(0, import_size.default)(eventTargets)) { 10948 return; 10949 } 10950 (0, import_forEach.default)(eventTargets, (elements, key) => { 10951 const event = events[key]; 10952 const { 10953 action: eventAction, 10954 id: eventId, 10955 mediaQueries = ixData2.mediaQueryKeys 10956 } = event; 10957 const { actionListId } = eventAction.config; 10958 if (!mediaQueriesEqual2(mediaQueries, ixData2.mediaQueryKeys)) { 10959 store.dispatch(mediaQueriesDefined()); 10960 } 10961 if (eventAction.actionTypeId === ActionTypeConsts.GENERAL_CONTINUOUS_ACTION) { 10962 const configs = Array.isArray(event.config) ? event.config : [event.config]; 10963 configs.forEach((eventConfig) => { 10964 const { continuousParameterGroupId } = eventConfig; 10965 const paramGroups = (0, import_get2.default)( 10966 actionLists, 10967 `${actionListId}.continuousParameterGroups`, 10968 [] 10969 ); 10970 const parameterGroup = (0, import_find2.default)( 10971 paramGroups, 10972 ({ id }) => id === continuousParameterGroupId 10973 ); 10974 const smoothing = (eventConfig.smoothing || 0) / 100; 10975 const restingValue = (eventConfig.restingState || 0) / 100; 10976 if (!parameterGroup) { 10977 return; 10978 }
10979 elements.forEach((eventTarget, index) => { 10980 const eventStateKey = eventId + COLON_DELIMITER4 + index; 10981 createGroupInstances({ 10982 store, 10983 eventStateKey, 10984 eventTarget, 10985 eventId, 10986 eventConfig, 10987 actionListId, 10988 parameterGroup, 10989 smoothing, 10990 restingValue 10991 }); 10992 }); 10993 }); 10994 } 10995 if (eventAction.actionTypeId === ActionTypeConsts.GENERAL_START_ACTION || isQuickEffect(eventAction.actionTypeId)) { 10996 renderInitialGroup({ store, actionListId, eventId }); 10997 } 10998 }); 10999 const handleEvent = (nativeEvent) => { 11000 const { ixSession: ixSession2 } = store.getState(); 11001 forEachEventTarget(eventTargets, (element, eventId, eventStateKey) => { 11002 const event = events[eventId]; 11003 const oldState = ixSession2.eventState[eventStateKey]; 11004 const { action: eventAction, mediaQueries = ixData2.mediaQueryKeys } = event; 11005 if (!shouldAllowMediaQuery2(mediaQueries, ixSession2.mediaQueryKey)) { 11006 return; 11007 } 11008 const handleEventWithConfig = (eventConfig = {}) => { 11009 const newState = eventHandler( 11010 { 11011 store, 11012 element, 11013 event, 11014 eventConfig, 11015 nativeEvent, 11016 eventStateKey 11017 }, 11018 oldState 11019 ); 11020 if (!shallowEqual2(newState, oldState)) { 11021 store.dispatch(eventStateChanged(eventStateKey, newState)); 11022 } 11023 }; 11024 if (eventAction.actionTypeId === ActionTypeConsts.GENERAL_CONTINUOUS_ACTION) { 11025 const configs = Array.isArray(event.config) ? event.config : [event.config]; 11026 configs.forEach(handleEventWithConfig); 11027 } else { 11028 handleEventWithConfig(); 11029 } 11030 }); 11031 }; 11032 const handleEventThrottled = (0, import_throttle.default)(handleEvent, THROTTLED_EVENT_WAIT); 11033 const addListeners = ({ 11034 target = document, 11035 // @ts-expect-error - TS7031 - Binding element 'types' implicitly has an 'any' type. 11036 types, 11037 // @ts-expect-error - TS7031 - Binding element 'shouldThrottle' implicitly has an 'any' type. 11038 throttle: shouldThrottle 11039 }) => { 11040 types.split(" ").filter(Boolean).forEach((type) => { 11041 const handlerFunc = shouldThrottle ? handleEventThrottled : handleEvent; 11042 target.addEventListener(type, handlerFunc); 11043 store.dispatch(eventListenerAdded(target, [type, handlerFunc])); 11044 }); 11045 }; 11046 if (Array.isArray(eventTypes)) { 11047 eventTypes.forEach(addListeners); 11048 } else if (typeof eventTypes === "string") { 11049 addListeners(logic); 11050 } 11051 } 11052 function injectBehaviorCSSFixes(events) { 11053 if (!IS_MOBILE_SAFARI) { 11054 return; 11055 } 11056 const injectedSelectors = {}; 11057 let cssText = ""; 11058 for (const eventId in events) { 11059 const { eventTypeId, target } = events[eventId]; 11060 const selector = getQuerySelector(target); 11061 if (injectedSelectors[selector]) { 11062 continue; 11063 } 11064 if (eventTypeId === EventTypeConsts.MOUSE_CLICK || eventTypeId === EventTypeConsts.MOUSE_SECOND_CLICK) { 11065 injectedSelectors[selector] = true; 11066 cssText += selector + "{cursor: pointer;touch-action: manipulation;}"; 11067 } 11068 } 11069 if (cssText) { 11070 const style = document.createElement("style"); 11071 style.textContent = cssText; 11072 document.body.appendChild(style); 11073 } 11074 } 11075 function renderInitialGroup({ 11076 store, 11077 actionListId, 11078 eventId 11079 }) { 11080 const { ixData: ixData2, ixSession: ixSession2 } = store.getState(); 11081 const { actionLists, events } = ixData2; 11082 const event = events[eventId]; 11083 const actionList = actionLists[actionListId]; 11084 if (actionList && actionList.useFirstGroupAsInitialState) { 11085 const initialStateItems = (0, import_get2.default)( 11086 actionList, 11087 "actionItemGroups[0].actionItems", 11088 [] 11089 ); 11090 const mediaQueries = (0, import_get2.default)(event, "mediaQueries", ixData2.mediaQueryKeys); 11091 if (!shouldAllowMediaQuery2(mediaQueries, ixSession2.mediaQueryKey)) { 11092 return; 11093 }
11094 initialStateItems.forEach((actionItem) => { 11095 const { config: itemConfig, actionTypeId } = actionItem; 11096 const config = ( 11097 // When useEventTarget is explicitly true, use event target/targets to query elements 11098 // However, skip this condition when objectId is defined 11099 // @ts-expect-error - Property 'target' does not exist on type 'never'. 11100 itemConfig?.target?.useEventTarget === true && // @ts-expect-error - Property 'target' does not exist on type 'never'. 11101 itemConfig?.target?.objectId == null ? ( 11102 // @ts-expect-error - TS18048 - 'event' is possibly 'undefined'. 11103 { target: event.target, targets: event.targets } 11104 ) : itemConfig 11105 ); 11106 const itemElements = getAffectedElements2({ config, event, elementApi: IX2BrowserApi_exports }); 11107 const shouldUsePlugin = isPluginType2(actionTypeId); 11108 itemElements.forEach((element) => { 11109 const pluginInstance = shouldUsePlugin ? createPluginInstance2(actionTypeId)(element, actionItem) : null; 11110 createInstance({ 11111 destination: getDestinationValues2( 11112 { element, actionItem, elementApi: IX2BrowserApi_exports }, 11113 // eslint-disable-next-line @typescript-eslint/ban-ts-comment 11114 // @ts-expect-error 11115 pluginInstance 11116 ), 11117 immediate: true, 11118 store, 11119 element, 11120 eventId, 11121 actionItem, 11122 actionListId, 11123 pluginInstance 11124 }); 11125 }); 11126 }); 11127 } 11128 } 11129 function stopAllActionGroups({ store }) { 11130 const { ixInstances: ixInstances2 } = store.getState(); 11131 (0, import_forEach.default)(ixInstances2, (instance) => { 11132 if (!instance.continuous) { 11133 const { actionListId, verbose } = instance; 11134 removeInstance(instance, store); 11135 if (verbose) { 11136 store.dispatch( 11137 actionListPlaybackChanged({ actionListId, isPlaying: false }) 11138 ); 11139 } 11140 } 11141 }); 11142 } 11143 function stopActionGroup({ 11144 // @ts-expect-error - TS7031 - Binding element 'store' implicitly has an 'any' type. 11145 store, 11146 // eslint-disable-next-line @typescript-eslint/ban-ts-comment 11147 // @ts-expect-error 11148 eventId, 11149 // eslint-disable-next-line @typescript-eslint/ban-ts-comment 11150 // @ts-expect-error 11151 eventTarget, 11152 // eslint-disable-next-line @typescript-eslint/ban-ts-comment 11153 // @ts-expect-error 11154 eventStateKey, 11155 // @ts-expect-error - TS7031 - Binding element 'actionListId' implicitly has an 'any' type. 11156 actionListId 11157 }) { 11158 const { ixInstances: ixInstances2, ixSession: ixSession2 } = store.getState(); 11159 const eventElementRoot = ixSession2.hasBoundaryNodes && eventTarget ? getClosestElement(eventTarget, BOUNDARY_SELECTOR2) : null; 11160 (0, import_forEach.default)(ixInstances2, (instance) => { 11161 const boundaryMode = (0, import_get2.default)(instance, "actionItem.config.target.boundaryMode"); 11162 const validEventKey = eventStateKey ? instance.eventStateKey === eventStateKey : true; 11163 if (instance.actionListId === actionListId && instance.eventId === eventId && validEventKey) { 11164 if (eventElementRoot && boundaryMode && !elementContains(eventElementRoot, instance.element)) { 11165 return; 11166 } 11167 removeInstance(instance, store); 11168 if (instance.verbose) { 11169 store.dispatch( 11170 actionListPlaybackChanged({ actionListId, isPlaying: false }) 11171 ); 11172 } 11173 } 11174 }); 11175 } 11176 function startActionGroup({ 11177 // @ts-expect-error - TS7031 - Binding element 'store' implicitly has an 'any' type. 11178 store, 11179 // @ts-expect-error - TS7031 - Binding element 'eventId' implicitly has an 'any' type. 11180 eventId, 11181 // eslint-disable-next-line @typescript-eslint/ban-ts-comment 11182 // @ts-expect-error 11183 eventTarget, 11184 // eslint-disable-next-line @typescript-eslint/ban-ts-comment 11185 // @ts-expect-error 11186 eventStateKey, 11187 // @ts-expect-error - TS7031 - Binding element 'actionListId' implicitly has an 'any' type. 11188 actionListId, 11189 groupIndex = 0, 11190 // eslint-disable-next-line @typescript-eslint/ban-ts-comment 11191 // @ts-expect-error 11192 immediate, 11193 // eslint-disable-next-line @typescript-eslint/ban-ts-comment 11194 // @ts-expect-error 11195 verbose 11196 }) {
11197 const { ixData: ixData2, ixSession: ixSession2 } = store.getState(); 11198 const { events } = ixData2; 11199 const event = events[eventId] || {}; 11200 const { mediaQueries = ixData2.mediaQueryKeys } = event; 11201 const actionList = (0, import_get2.default)(ixData2, `actionLists.${actionListId}`, {}); 11202 const { actionItemGroups, useFirstGroupAsInitialState } = actionList; 11203 if (!actionItemGroups || !actionItemGroups.length) { 11204 return false; 11205 } 11206 if (groupIndex >= actionItemGroups.length && (0, import_get2.default)(event, "config.loop")) { 11207 groupIndex = 0; 11208 } 11209 if (groupIndex === 0 && useFirstGroupAsInitialState) { 11210 groupIndex++; 11211 } 11212 const isFirstGroup = groupIndex === 0 || groupIndex === 1 && useFirstGroupAsInitialState; 11213 const instanceDelay = isFirstGroup && isQuickEffect(event.action?.actionTypeId) ? event.config.delay : void 0; 11214 const actionItems = (0, import_get2.default)(actionItemGroups, [groupIndex, "actionItems"], []); 11215 if (!actionItems.length) { 11216 return false; 11217 } 11218 if (!shouldAllowMediaQuery2(mediaQueries, ixSession2.mediaQueryKey)) { 11219 return false; 11220 } 11221 const eventElementRoot = ixSession2.hasBoundaryNodes && eventTarget ? getClosestElement(eventTarget, BOUNDARY_SELECTOR2) : null; 11222 const carrierIndex = getMaxDurationItemIndex2(actionItems); 11223 let groupStartResult = false;
11224 actionItems.forEach((actionItem, actionIndex) => { 11225 const { config, actionTypeId } = actionItem; 11226 const shouldUsePlugin = isPluginType2(actionTypeId); 11227 const { target } = config; 11228 if (!target) { 11229 return; 11230 } 11231 const elementRoot = target.boundaryMode ? eventElementRoot : null; 11232 const elements = getAffectedElements2({ 11233 config, 11234 event, 11235 eventTarget, 11236 elementRoot, 11237 elementApi: IX2BrowserApi_exports 11238 }); 11239 elements.forEach((element, elementIndex) => { 11240 const pluginInstance = shouldUsePlugin ? createPluginInstance2(actionTypeId)(element, actionItem) : null; 11241 const pluginDuration = shouldUsePlugin ? getPluginDuration2(actionTypeId)(element, actionItem) : null; 11242 groupStartResult = true; 11243 const isCarrier = carrierIndex === actionIndex && elementIndex === 0; 11244 const computedStyle = getComputedStyle3({ element, actionItem }); 11245 const destination = getDestinationValues2( 11246 { element, actionItem, elementApi: IX2BrowserApi_exports }, 11247 // eslint-disable-next-line @typescript-eslint/ban-ts-comment 11248 // @ts-expect-error 11249 pluginInstance 11250 ); 11251 createInstance({ 11252 store, 11253 element, 11254 actionItem, 11255 eventId, 11256 eventTarget, 11257 eventStateKey, 11258 actionListId, 11259 groupIndex, 11260 isCarrier, 11261 computedStyle, 11262 destination, 11263 immediate, 11264 verbose, 11265 pluginInstance, 11266 pluginDuration, 11267 instanceDelay 11268 }); 11269 }); 11270 }); 11271 return groupStartResult; 11272 } 11273 function createInstance(options) { 11274 const { store, computedStyle, ...rest } = options; 11275 const { 11276 element, 11277 actionItem, 11278 immediate, 11279 pluginInstance, 11280 continuous, 11281 restingValue, 11282 eventId 11283 } = rest; 11284 const autoStart = !continuous; 11285 const instanceId = getInstanceId2(); 11286 const { ixElements: ixElements3, ixSession: ixSession2, ixData: ixData2 } = store.getState(); 11287 const elementId = getElementId2(ixElements3, element); 11288 const { refState: refState2 } = ixElements3[elementId] || {}; 11289 const refType = getRefType(element); 11290 const skipMotion = ( 11291 // @ts-expect-error - TS7053 - Element implicitly has an 'any' type because expression of type 'any' can't be used to index type '{ readonly TRANSFORM_MOVE: true; readonly TRANSFORM_SCALE: true; readonly TRANSFORM_ROTATE: true; readonly TRANSFORM_SKEW: true; readonly STYLE_SIZE: true; readonly STYLE_FILTER: true; readonly STYLE_FONT_VARIATION: true; }'. 11292 ixSession2.reducedMotion && ReducedMotionTypes[actionItem.actionTypeId] 11293 ); 11294 let skipToValue; 11295 if (skipMotion && continuous) { 11296 switch (ixData2.events[eventId]?.eventTypeId) { 11297 case EventTypeConsts.MOUSE_MOVE: 11298 case EventTypeConsts.MOUSE_MOVE_IN_VIEWPORT: 11299 skipToValue = restingValue; 11300 break; 11301 default: 11302 skipToValue = 0.5; 11303 break; 11304 } 11305 } 11306 const origin = getInstanceOrigin2( 11307 element, 11308 refState2, 11309 computedStyle, 11310 actionItem, 11311 IX2BrowserApi_exports, 11312 // eslint-disable-next-line @typescript-eslint/ban-ts-comment 11313 // @ts-expect-error 11314 pluginInstance 11315 ); 11316 store.dispatch( 11317 instanceAdded({ 11318 instanceId, 11319 elementId, 11320 origin, 11321 refType, 11322 skipMotion, 11323 skipToValue, 11324 ...rest 11325 }) 11326 ); 11327 dispatchCustomEvent(document.body, "ix2-animation-started", instanceId); 11328 if (immediate) { 11329 renderImmediateInstance(store, instanceId); 11330 return; 11331 } 11332 observeStore2({ 11333 store, 11334 // @ts-expect-error - TS7031 - Binding element 'ixInstances' implicitly has an 'any' type. 11335 select: ({ ixInstances: ixInstances2 }) => ixInstances2[instanceId], 11336 onChange: handleInstanceChange 11337 }); 11338 if (autoStart) { 11339 store.dispatch(instanceStarted(instanceId, ixSession2.tick)); 11340 } 11341 } 11342 function removeInstance(instance, store) { 11343 dispatchCustomEvent(document.body, "ix2-animation-stopping", { 11344 instanceId: instance.id, 11345 state: store.getState() 11346 }); 11347 const { elementId, actionItem } = instance;
11348 const { ixElements: ixElements3 } = store.getState(); 11349 const { ref, refType } = ixElements3[elementId] || {}; 11350 if (refType === HTML_ELEMENT4) { 11351 cleanupHTMLElement2(ref, actionItem, IX2BrowserApi_exports); 11352 } 11353 store.dispatch(instanceRemoved(instance.id)); 11354 } 11355 function dispatchCustomEvent(element, eventName, detail) { 11356 const event = document.createEvent("CustomEvent"); 11357 event.initCustomEvent(eventName, true, true, detail); 11358 element.dispatchEvent(event); 11359 } 11360 function renderImmediateInstance(store, instanceId) { 11361 const { ixParameters: ixParameters2 } = store.getState(); 11362 store.dispatch(instanceStarted(instanceId, 0)); 11363 store.dispatch(animationFrameChanged(performance.now(), ixParameters2)); 11364 const { ixInstances: ixInstances2 } = store.getState(); 11365 handleInstanceChange(ixInstances2[instanceId], store); 11366 } 11367 function handleInstanceChange(instance, store) { 11368 const { 11369 active, 11370 continuous, 11371 complete, 11372 elementId, 11373 actionItem, 11374 actionTypeId, 11375 renderType, 11376 current, 11377 groupIndex, 11378 eventId, 11379 eventTarget, 11380 eventStateKey, 11381 actionListId, 11382 isCarrier, 11383 styleProp, 11384 verbose, 11385 pluginInstance 11386 } = instance; 11387 const { ixData: ixData2, ixSession: ixSession2 } = store.getState(); 11388 const { events } = ixData2; 11389 const event = events && events[eventId] ? events[eventId] : {}; 11390 const { mediaQueries = ixData2.mediaQueryKeys } = event; 11391 if (!shouldAllowMediaQuery2(mediaQueries, ixSession2.mediaQueryKey)) { 11392 return; 11393 } 11394 if (continuous || active || complete) { 11395 if (current || renderType === RENDER_GENERAL4 && complete) { 11396 store.dispatch( 11397 elementStateChanged(elementId, actionTypeId, current, actionItem) 11398 ); 11399 const { ixElements: ixElements3 } = store.getState(); 11400 const { ref, refType, refState: refState2 } = ixElements3[elementId] || {}; 11401 const actionState = refState2 && refState2[actionTypeId]; 11402 if (refType === HTML_ELEMENT4 || isPluginType2(actionTypeId)) { 11403 renderHTMLElement2( 11404 ref, 11405 refState2, 11406 actionState, 11407 eventId, 11408 actionItem, 11409 styleProp, 11410 IX2BrowserApi_exports, 11411 renderType, 11412 pluginInstance 11413 ); 11414 } 11415 } 11416 if (complete) { 11417 if (isCarrier) { 11418 const started = startActionGroup({ 11419 store, 11420 eventId, 11421 eventTarget, 11422 eventStateKey, 11423 actionListId, 11424 groupIndex: groupIndex + 1, 11425 verbose 11426 }); 11427 if (verbose && !started) { 11428 store.dispatch( 11429 actionListPlaybackChanged({ actionListId, isPlaying: false }) 11430 ); 11431 } 11432 } 11433 removeInstance(instance, store); 11434 } 11435 } 11436 } 11437 var import_find2, import_get2, import_size, import_omitBy, import_isEmpty, import_mapValues, import_forEach, import_throttle, import_shared6, QuickEffectsIdList, isQuickEffect, COLON_DELIMITER4, BOUNDARY_SELECTOR2, HTML_ELEMENT4, RENDER_GENERAL4, W_MOD_IX2, getAffectedElements2, getElementId2, getDestinationValues2, observeStore2, getInstanceId2, renderHTMLElement2, clearAllStyles2, getMaxDurationItemIndex2, getComputedStyle3, getInstanceOrigin2, reduceListToGroup2, shouldNamespaceEventParameter2, getNamespacedParameterId3, shouldAllowMediaQuery2, cleanupHTMLElement2, clearObjectCache2, stringifyTarget2, mediaQueriesEqual2, shallowEqual2, isPluginType2, createPluginInstance2, getPluginDuration2, ua, IS_MOBILE_SAFARI, THROTTLED_EVENT_WAIT, WINDOW_RESIZE_EVENTS, mapFoundValues, forEachEventTarget, getAffectedForEvent; 11438 var init_IX2VanillaEngine = __esm({ 11439 "packages/systems/ix2/engine/logic/IX2VanillaEngine.ts"() { 11440 "use strict"; 11441 import_find2 = __toESM(require_find()); 11442 import_get2 = __toESM(require_get()); 11443 import_size = __toESM(require_size()); 11444 import_omitBy = __toESM(require_omitBy()); 11445 import_isEmpty = __toESM(require_isEmpty()); 11446 import_mapValues = __toESM(require_mapValues());
11447 import_forEach = __toESM(require_forEach()); 11448 import_throttle = __toESM(require_throttle()); 11449 init_shared_constants(); 11450 import_shared6 = __toESM(require_shared()); 11451 init_IX2EngineActions(); 11452 init_IX2BrowserApi(); 11453 init_IX2VanillaEvents(); 11454 QuickEffectsIdList = Object.keys(QuickEffectIds); 11455 isQuickEffect = (actionTypeId) => QuickEffectsIdList.includes(actionTypeId); 11456 ({ 11457 COLON_DELIMITER: COLON_DELIMITER4, 11458 BOUNDARY_SELECTOR: BOUNDARY_SELECTOR2, 11459 HTML_ELEMENT: HTML_ELEMENT4, 11460 RENDER_GENERAL: RENDER_GENERAL4, 11461 W_MOD_IX: W_MOD_IX2 11462 } = IX2EngineConstants_exports); 11463 ({ 11464 getAffectedElements: getAffectedElements2, 11465 getElementId: getElementId2, 11466 getDestinationValues: getDestinationValues2, 11467 observeStore: observeStore2, 11468 getInstanceId: getInstanceId2, 11469 renderHTMLElement: renderHTMLElement2, 11470 clearAllStyles: clearAllStyles2, 11471 getMaxDurationItemIndex: getMaxDurationItemIndex2, 11472 getComputedStyle: getComputedStyle3, 11473 getInstanceOrigin: getInstanceOrigin2, 11474 reduceListToGroup: reduceListToGroup2, 11475 shouldNamespaceEventParameter: shouldNamespaceEventParameter2, 11476 getNamespacedParameterId: getNamespacedParameterId3, 11477 shouldAllowMediaQuery: shouldAllowMediaQuery2, 11478 cleanupHTMLElement: cleanupHTMLElement2, 11479 clearObjectCache: clearObjectCache2, 11480 stringifyTarget: stringifyTarget2, 11481 mediaQueriesEqual: mediaQueriesEqual2, 11482 shallowEqual: shallowEqual2 11483 } = import_shared6.IX2VanillaUtils); 11484 ({ isPluginType: isPluginType2, createPluginInstance: createPluginInstance2, getPluginDuration: getPluginDuration2 } = import_shared6.IX2VanillaPlugins); 11485 ua = navigator.userAgent; 11486 IS_MOBILE_SAFARI = ua.match(/iPad/i) || ua.match(/iPhone/); 11487 THROTTLED_EVENT_WAIT = 12; 11488 WINDOW_RESIZE_EVENTS = ["resize", "orientationchange"]; 11489 mapFoundValues = (object, iteratee) => (0, import_omitBy.default)((0, import_mapValues.default)(object, iteratee), import_isEmpty.default); 11490 forEachEventTarget = (eventTargets, eventCallback) => { 11491 (0, import_forEach.default)(eventTargets, (elements, eventId) => { 11492 elements.forEach((element, index) => { 11493 const eventStateKey = eventId + COLON_DELIMITER4 + index; 11494 eventCallback(element, eventId, eventStateKey); 11495 }); 11496 }); 11497 }; 11498 getAffectedForEvent = (event) => { 11499 const config = { target: event.target, targets: event.targets }; 11500 return getAffectedElements2({ config, elementApi: IX2BrowserApi_exports }); 11501 }; 11502 } 11503 }); 11504 11505
11505// packages/systems/ix2/engine/index.js 11506 var require_engine = __commonJS({ 11507 "packages/systems/ix2/engine/index.js"(exports) { 11508 "use strict"; 11509 Object.defineProperty(exports, "__esModule", { 11510 value: true 11511 }); 11512 function _export(target, all) { 11513 for (var name in all) 11514 Object.defineProperty(target, name, { 11515 enumerable: true, 11516 get: all[name] 11517 }); 11518 } 11519 _export(exports, { 11520 actions: function() { 11521 return _IX2EngineActions; 11522 }, 11523 destroy: function() { 11524 return destroy; 11525 }, 11526 init: function() { 11527 return init; 11528 }, 11529 setEnv: function() { 11530 return setEnv; 11531 }, 11532 store: function() { 11533 return store; 11534 } 11535 }); 11536 var _redux = require_lib2(); 11537 var _IX2Reducer = /* @__PURE__ */ _interop_require_default((init_IX2Reducer(), __toCommonJS(IX2Reducer_exports))); 11538 var _IX2VanillaEngine = (init_IX2VanillaEngine(), __toCommonJS(IX2VanillaEngine_exports
11538)); 11539 var _IX2EngineActions = /* @__PURE__ */ _interop_require_wildcard((init_IX2EngineActions(), __toCommonJS(IX2EngineActions_exports))); 11540 function _interop_require_default(obj) { 11541 return obj && obj.__esModule ? obj : { 11542 default: obj 11543 }; 11544 } 11545 function _getRequireWildcardCache(nodeInterop) { 11546 if (typeof WeakMap !== "function") 11547 return null; 11548 var cacheBabelInterop = /* @__PURE__ */ new WeakMap(); 11549 var cacheNodeInterop = /* @__PURE__ */ new WeakMap(); 11550 return (_getRequireWildcardCache = function(nodeInterop2) { 11551 return nodeInterop2 ? cacheNodeInterop : cacheBabelInterop; 11552 })(nodeInterop); 11553 } 11554 function _interop_require_wildcard(obj, nodeInterop) { 11555 if (!nodeInterop && obj && obj.__esModule) { 11556 return obj; 11557 } 11558 if (obj === null || typeof obj !== "object" && typeof obj !== "function") { 11559 return { 11560 default: obj 11561 }; 11562 } 11563 var cache = _getRequireWildcardCache(nodeInterop); 11564 if (cache && cache.has(obj)) { 11565 return cache.get(obj); 11566 } 11567 var newObj = { 11568 __proto__: null 11569 }; 11570 var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; 11571 for (var key in obj) { 11572 if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { 11573 var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; 11574 if (desc && (desc.get || desc.set)) { 11575 Object.defineProperty(newObj, key, desc); 11576 } else { 11577 newObj[key] = obj[key]; 11578 } 11579 } 11580 } 11581 newObj.default = obj; 11582 if (cache) { 11583 cache.set(obj, newObj); 11584 } 11585 return newObj; 11586 } 11587 var store = (0, _redux.createStore)(_IX2Reducer.default); 11588 function setEnv(env) { 11589 if (env()) { 11590 (0, _IX2VanillaEngine.observeRequests)(store); 11591 } 11592 } 11593 function init(rawData) { 11594 destroy(); 11595 (0, _IX2VanillaEngine.startEngine)({ 11596 store, 11597 rawData, 11598 allowEvents: true 11599 }); 11600 } 11601 function destroy() { 11602 (0, _IX2VanillaEngine.stopEngine)(store); 11603 } 11604 } 11605 }); 11606 11607
11607// packages/shared/render/plugins/BaseSiteModules/webflow-ix2.js 11608 var require_webflow_ix2 = __commonJS({ 11609 "packages/shared/render/plugins/BaseSiteModules/webflow-ix2.js"(exports, module) { 11610 "use strict"; 11611 var Webflow2 = require_webflow_lib(); 11612 var ix2 = require_engine(); 11613 ix2.setEnv(Webflow2.env); 11614 Webflow2.define("ix2", module.exports = function() { 11615 return ix2; 11616 }); 11617 } 11618 }); 11619 11620
11620// packages/shared/render/plugins/BaseSiteModules/webflow-links.js 11621 var require_webflow_links = __commonJS({ 11622 "packages/shared/render/plugins/BaseSiteModules/webflow-links.js"(exports, module) { 11623 "use strict"; 11624 var Webflow2 = require_webflow_lib(); 11625 Webflow2.define("links", module.exports = function($2, _) { 11626 var api = {}; 11627 var $win = $2(window); 11628 var designer; 11629 var inApp = Webflow2.env(); 11630 var location = window.location; 11631 var tempLink = document.createElement("a"); 11632 var linkCurrent = "w--current"; 11633 var indexPage = /index\.(html|php)$/; 11634 var dirList = /\/$/; 11635 var anchors; 11636 var slug; 11637 api.ready = api.design = api.preview = init; 11638 function init() { 11639 designer = inApp && Webflow2.env("design"); 11640 slug = Webflow2.env("slug") || location.pathname || ""; 11641 Webflow2.scroll.off(scroll); 11642 anchors = []; 11643 var links = document.links; 11644 for (var i = 0; i < links.length; ++i) { 11645 select(links[i]); 11646 } 11647 if (anchors.length) { 11648 Webflow2.scroll.on(scroll); 11649 scroll(); 11650 } 11651 } 11652 function select(link) { 11653 if (link.getAttribute("hreflang")) { 11654 return; 11655 } 11656 var href = designer && link.getAttribute("href-disabled") || link.getAttribute("href"); 11657 tempLink.href = href; 11658 if (href.indexOf(":") >= 0) { 11659 return; 11660 } 11661 var $link = $2(link); 11662 if (tempLink.hash.length > 1 && tempLink.host + tempLink.pathname === location.host + location.pathname) { 11663 if (!/^#[a-zA-Z0-9\-\_]+$/.test(tempLink.hash)) { 11664 return; 11665 } 11666 var $section = $2(tempLink.hash); 11667 $section.length && anchors.push({ 11668 link: $link, 11669 sec: $section, 11670 active: false 11671 }); 11672 return; 11673 } 11674 if (href === "#" || href === "") { 11675 return; 11676 } 11677 var match = tempLink.href === location.href || href === slug || indexPage.test(href) && dirList.test(slug); 11678 setClass($link, linkCurrent, match); 11679 } 11680 function scroll() { 11681 var viewTop = $win.scrollTop(); 11682 var viewHeight = $win.height(); 11683 _.each(anchors, function(anchor) { 11684 if (anchor.link.attr("hreflang")) { 11685 return; 11686 } 11687 var $link = anchor.link; 11688 var $section = anchor.sec; 11689 var top = $section.offset().top; 11690 var height = $section.outerHeight(); 11691 var offset = viewHeight * 0.5; 11692 var active = $section.is(":visible") && top + height - offset >= viewTop && top + offset <= viewTop + viewHeight; 11693 if (anchor.active === active) { 11694 return; 11695 } 11696 anchor.active = active; 11697 setClass($link, linkCurrent, active); 11698 }); 11699 } 11700 function setClass($elem, className, add) { 11701 var exists = $elem.hasClass(className); 11702 if (add && exists) { 11703 return; 11704 } 11705 if (!add && !exists) { 11706 return; 11707 } 11708 add ? $elem.addClass(className) : $elem.removeClass(className); 11709 } 11710 return api; 11711 }); 11712 } 11713 }); 11714 11715
11715// packages/shared/render/plugins/BaseSiteModules/webflow-scroll.js 11716 var require_webflow_scroll = __commonJS({ 11717 "packages/shared/render/plugins/BaseSiteModules/webflow-scroll.js"(exports, module) { 11718 "use strict"; 11719 var Webflow2 = require_webflow_lib(); 11720 Webflow2.define("scroll", module.exports = function($2) { 11721 var NS_EVENTS = { 11722 WF_CLICK_EMPTY: "click.wf-empty-link", 11723 WF_CLICK_SCROLL: "click.wf-scroll" 11724 }; 11725 var loc = window.location; 11726 var history = inIframe() ? null : window.history; 11727 var $win = $2(window); 11728 var $doc = $2(document); 11729 var $body = $2(document.body); 11730 var animate = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || function(fn) { 11731 window.setTimeout(fn, 15); 11732 }; 11733 var rootTag = Webflow2.env("editor") ? ".w-editor-body" : "body"; 11734 var headerSelector = "header, " + rootTag + " > .header, " + rootTag + " > .w-nav:not([data-no-scroll])"; 11735 var emptyHrefSelector = 'a[href="#"]'; 11736 var localHrefSelector = 'a[href*="#"]:not(.w-tab-link):not(' + emptyHrefSelector + ")"; 11737 var scrollTargetOutlineCSS = '.wf-force-outline-none[tabindex="-1"]:focus{outline:none;}'; 11738 var focusStylesEl = document.createElement("style"); 11739 focusStylesEl.appendChild(document.createTextNode(scrollTargetOutlineCSS)); 11740 function inIframe() { 11741 try { 11742 return Boolean(window.frameElement); 11743 } catch (e) { 11744 return true; 11745 } 11746 } 11747 var validHash = /^#[a-zA-Z0-9][\w:.-]*$/; 11748 function linksToCurrentPage(link) { 11749 return validHash.test(link.hash) && link.host + link.pathname === loc.host + loc.pathname; 11750 } 11751 const reducedMotionMediaQuery = typeof window.matchMedia === "function" && window.matchMedia("(prefers-reduced-motion: reduce)"); 11752 function reducedMotionEnabled() { 11753 return document.body.getAttribute("data-wf-scroll-motion") === "none" || reducedMotionMediaQuery.matches; 11754 } 11755 function setFocusable($el, action) { 11756 var initialTabindex; 11757 switch (action) { 11758 case "add": 11759 initialTabindex = $el.attr("tabindex"); 11760 if (initialTabindex) { 11761 $el.attr("data-wf-tabindex-swap", initialTabindex); 11762 } else { 11763 $el.attr("tabindex", "-1"); 11764 } 11765 break; 11766 case "remove": 11767 initialTabindex = $el.attr("data-wf-tabindex-swap"); 11768 if (initialTabindex) { 11769 $el.attr("tabindex", initialTabindex); 11770 $el.removeAttr("data-wf-tabindex-swap"); 11771 } else { 11772 $el.removeAttr("tabindex"); 11773 } 11774 break; 11775 } 11776 $el.toggleClass("wf-force-outline-none", action === "add"); 11777 } 11778 function validateScroll(evt) { 11779 var target = evt.currentTarget; 11780 if ( 11781 // Bail if in Designer 11782 Webflow2.env("design") || // Ignore links being used by jQuery mobile 11783 window.$.mobile && /(?:^|\s)ui-link(?:$|\s)/.test(target.className) 11784 ) { 11785 return; 11786 } 11787 var hash = linksToCurrentPage(target) ? target.hash : ""; 11788 if (hash === "") 11789 return; 11790 var $el = $2(hash); 11791 if (!$el.length) { 11792 return; 11793 } 11794 if (evt) { 11795 evt.preventDefault(); 11796 evt.stopPropagation(); 11797 } 11798 updateHistory(hash, evt); 11799 window.setTimeout(function() { 11800 scroll($el, function setFocus() { 11801 setFocusable($el, "add"); 11802 $el.get(0).focus({ 11803 preventScroll: true 11804 }); 11805 setFocusable($el, "remove"); 11806 }); 11807 }, evt ? 0 : 300); 11808 } 11809 function updateHistory(hash) { 11810 if (loc.hash !== hash && history && history.pushState && // Navigation breaks Chrome when the protocol is `file:`. 11811 !(Webflow2.env.chrome && loc.protocol === "file:")) { 11812 var oldHash = history.state && history.state.hash; 11813 if (oldHash !== hash) { 11814 history.pushState({ 11815 hash 11816 }, "", hash); 11817 } 11818 } 11819 } 11820 function scroll($targetEl, cb) { 11821 var start = $win.scrollTop(); 11822 var end = calculateScrollEndPosition($targetEl); 11823 if (start === end) 11824 return; 11825 var duration = calculateScrollDuration($targetEl, start, end); 11826 var clock = Date.now(); 11827 var step = function() {
11828 var elapsed = Date.now() - clock; 11829 window.scroll(0, getY(start, end, elapsed, duration)); 11830 if (elapsed <= duration) { 11831 animate(step); 11832 } else if (typeof cb === "function") { 11833 cb(); 11834 } 11835 }; 11836 animate(step); 11837 } 11838 function calculateScrollEndPosition($targetEl) { 11839 var $header = $2(headerSelector); 11840 var offsetY = $header.css("position") === "fixed" ? $header.outerHeight() : 0; 11841 var end = $targetEl.offset().top - offsetY; 11842 if ($targetEl.data("scroll") === "mid") { 11843 var available = $win.height() - offsetY; 11844 var elHeight = $targetEl.outerHeight(); 11845 if (elHeight < available) { 11846 end -= Math.round((available - elHeight) / 2); 11847 } 11848 } 11849 return end; 11850 } 11851 function calculateScrollDuration($targetEl, start, end) { 11852 if (reducedMotionEnabled()) 11853 return 0; 11854 var mult = 1; 11855 $body.add($targetEl).each(function(_, el) { 11856 var time = parseFloat(el.getAttribute("data-scroll-time")); 11857 if (!isNaN(time) && time >= 0) { 11858 mult = time; 11859 } 11860 }); 11861 return (472.143 * Math.log(Math.abs(start - end) + 125) - 2e3) * mult; 11862 } 11863 function getY(start, end, elapsed, duration) { 11864 if (elapsed > duration) { 11865 return end; 11866 } 11867 return start + (end - start) * ease2(elapsed / duration); 11868 } 11869 function ease2(t) { 11870 return t < 0.5 ? 4 * t * t * t : (t - 1) * (2 * t - 2) * (2 * t - 2) + 1; 11871 } 11872 function ready() { 11873 var { WF_CLICK_EMPTY, WF_CLICK_SCROLL } = NS_EVENTS; 11874 $doc.on(WF_CLICK_SCROLL, localHrefSelector, validateScroll); 11875 $doc.on(WF_CLICK_EMPTY, emptyHrefSelector, function(e) { 11876 e.preventDefault(); 11877 }); 11878 document.head.insertBefore(focusStylesEl, document.head.firstChild); 11879 } 11880 return { 11881 ready 11882 }; 11883 }); 11884 } 11885 }); 11886 11887
11887// packages/shared/render/plugins/BaseSiteModules/webflow-touch.js 11888 var require_webflow_touch = __commonJS({ 11889 "packages/shared/render/plugins/BaseSiteModules/webflow-touch.js"(exports, module) { 11890 "use strict"; 11891 var Webflow2 = require_webflow_lib(); 11892 Webflow2.define("touch", module.exports = function($2) { 11893 var api = {}; 11894 var getSelection = window.getSelection; 11895 $2.event.special.tap = { 11896 bindType: "click", 11897 delegateType: "click" 11898 }; 11899 api.init = function(el) { 11900 el = typeof el === "string" ? $2(el).get(0) : el; 11901 return el ? new Touch(el) : null; 11902 }; 11903 function Touch(el) { 11904 var active = false; 11905 var useTouch = false; 11906 var thresholdX = Math.min(Math.round(window.innerWidth * 0.04), 40); 11907 var startX; 11908 var lastX; 11909 el.addEventListener("touchstart", start, false); 11910 el.addEventListener("touchmove", move, false); 11911 el.addEventListener("touchend", end, false); 11912 el.addEventListener("touchcancel", cancel, false); 11913 el.addEventListener("mousedown", start, false); 11914 el.addEventListener("mousemove", move, false); 11915 el.addEventListener("mouseup", end, false); 11916 el.addEventListener("mouseout", cancel, false); 11917 function start(evt) { 11918 var touches = evt.touches; 11919 if (touches && touches.length > 1) { 11920 return; 11921 } 11922 active = true; 11923 if (touches) { 11924 useTouch = true; 11925 startX = touches[0].clientX; 11926 } else { 11927 startX = evt.clientX; 11928 } 11929 lastX = startX; 11930 } 11931 function move(evt) { 11932 if (!active) { 11933 return; 11934 } 11935 if (useTouch && evt.type === "mousemove") { 11936 evt.preventDefault(); 11937 evt.stopPropagation(); 11938 return; 11939 } 11940 var touches = evt.touches; 11941 var x = touches ? touches[0].clientX : evt.clientX; 11942 var velocityX = x - lastX; 11943 lastX = x; 11944 if (Math.abs(velocityX) > thresholdX && getSelection && String(getSelection()) === "") { 11945 triggerEvent("swipe", evt, { 11946 direction: velocityX > 0 ? "right" : "left" 11947 }); 11948 cancel(); 11949 } 11950 } 11951 function end(evt) { 11952 if (!active) { 11953 return; 11954 } 11955 active = false; 11956 if (useTouch && evt.type === "mouseup") { 11957 evt.preventDefault(); 11958 evt.stopPropagation(); 11959 useTouch = false; 11960 return; 11961 } 11962 } 11963 function cancel() { 11964 active = false; 11965 } 11966 function destroy() { 11967 el.removeEventListener("touchstart", start, false); 11968 el.removeEventListener("touchmove", move, false); 11969 el.removeEventListener("touchend", end, false); 11970 el.removeEventListener("touchcancel", cancel, false); 11971 el.removeEventListener("mousedown", start, false); 11972 el.removeEventListener("mousemove", move, false); 11973 el.removeEventListener("mouseup", end, false); 11974 el.removeEventListener("mouseout", cancel, false); 11975 el = null; 11976 } 11977 this.destroy = destroy; 11978 } 11979 function triggerEvent(type, evt, data) { 11980 var newEvent = $2.Event(type, { 11981 originalEvent: evt 11982 }); 11983 $2(evt.target).trigger(newEvent, data); 11984 } 11985 api.instance = api.init(document); 11986 return api; 11987 }); 11988 } 11989 }); 11990 11991
11991// packages/shared/render/plugins/Form/webflow-forms-hosted.js 11992 var require_webflow_forms_hosted = __commonJS({ 11993 "packages/shared/render/plugins/Form/webflow-forms-hosted.js"(exports) { 11994 "use strict"; 11995 Object.defineProperty(exports, "__esModule", { 11996 value: true 11997 }); 11998 Object.defineProperty(exports, "default", { 11999 enumerable: true, 12000 get: function() { 12001 return hostedSubmitWebflow; 12002 } 12003 }); 12004 function hostedSubmitWebflow(reset, loc, Webflow2, collectEnterpriseTrackingCookies, preventDefault, findFields, alert, findFileUploads, disableBtn, siteId, afterSubmit, $2, formUrl) { 12005 return function(data) { 12006 reset(data); 12007 var form = data.form; 12008 var payload = { 12009 name: form.attr("data-name") || form.attr("name") || "Untitled Form", 12010 pageId: form.attr("data-wf-page-id") || "", 12011 elementId: form.attr("data-wf-element-id") || "", 12012 source: loc.href, 12013 test: Webflow2.env(), 12014 fields: {}, 12015 fileUploads: {}, 12016 dolphin: /pass[\s-_]?(word|code)|secret|login|credentials/i.test(form.html()), 12017 trackingCookies: collectEnterpriseTrackingCookies() 12018 }; 12019 const wfFlow = form.attr("data-wf-flow"); 12020 if (wfFlow) { 12021 payload.wfFlow = wfFlow; 12022 } 12023 preventDefault(data); 12024 var status = findFields(form, payload.fields); 12025 if (status) { 12026 return alert(status); 12027 } 12028 payload.fileUploads = findFileUploads(form); 12029 disableBtn(data); 12030 if (!siteId) { 12031 afterSubmit(data); 12032 return; 12033 } 12034 $2.ajax({ 12035 url: formUrl, 12036 type: "POST", 12037 data: payload, 12038 dataType: "json", 12039 crossDomain: true 12040 }).done(function(response) { 12041 if (response && response.code === 200) { 12042 data.success = true; 12043 } 12044 afterSubmit(data); 12045 }).fail(function() { 12046 afterSubmit(data); 12047 }); 12048 }; 12049 } 12050 } 12051 }); 12052 12053
12053// packages/shared/render/plugins/Form/webflow-forms.js 12054 var require_webflow_forms = __commonJS({ 12055 "packages/shared/render/plugins/Form/webflow-forms.js"(exports, module) { 12056 "use strict"; 12057 var Webflow2 = require_webflow_lib(); 12058 Webflow2.define("forms", module.exports = function($2, _) { 12059 var api = {}; 12060 var $doc = $2(document); 12061 var $forms; 12062 var loc = window.location; 12063 var retro = window.XDomainRequest && !window.atob; 12064 var namespace = ".w-form"; 12065 var siteId; 12066 var emailField = /e(-)?mail/i; 12067 var emailValue = /^\S+@\S+$/; 12068 var alert = window.alert; 12069 var inApp = Webflow2.env(); 12070 var listening; 12071 var formUrl; 12072 var signFileUrl; 12073 var chimpRegex = /list-manage[1-9]?.com/i; 12074 var disconnected = _.debounce(function() { 12075 alert("Oops! This page has improperly configured forms. Please contact your website administrator to fix this issue."); 12076 }, 100); 12077 api.ready = api.design = api.preview = function() { 12078 init(); 12079 if (!inApp && !listening) { 12080 addListeners(); 12081 } 12082 }; 12083 function init() { 12084 siteId = $2("html").attr("data-wf-site"); 12085 formUrl = "https://webflow.com/api/v1/form/" + siteId; 12086 if (retro && formUrl.indexOf("https://webflow.com") >= 0) { 12087 formUrl = formUrl.replace("https://webflow.com", "https://formdata.webflow.com"); 12088 } 12089 signFileUrl = `${formUrl}/signFile`; 12090 $forms = $2(namespace + " form"); 12091 if (!$forms.length) { 12092 return; 12093 } 12094 $forms.each(build); 12095 } 12096 function build(i, el) { 12097 var $el = $2(el); 12098 var data = $2.data(el, namespace); 12099 if (!data) { 12100 data = $2.data(el, namespace, { 12101 form: $el 12102 }); 12103 } 12104 reset(data); 12105 var wrap = $el.closest("div.w-form"); 12106 data.done = wrap.find("> .w-form-done"); 12107 data.fail = wrap.find("> .w-form-fail"); 12108 data.fileUploads = wrap.find(".w-file-upload"); 12109 data.fileUploads.each(function(j) { 12110 initFileUpload(j, data); 12111 }); 12112 var formName = data.form.attr("aria-label") || data.form.attr("data-name") || "Form"; 12113 if (!data.done.attr("aria-label")) { 12114 data.form.attr("aria-label", formName); 12115 } 12116 data.done.attr("tabindex", "-1"); 12117 data.done.attr("role", "region"); 12118 if (!data.done.attr("aria-label")) { 12119 data.done.attr("aria-label", formName + " success"); 12120 } 12121 data.fail.attr("tabindex", "-1"); 12122 data.fail.attr("role", "region"); 12123 if (!data.fail.attr("aria-label")) { 12124 data.fail.attr("aria-label", formName + " failure"); 12125 } 12126 var action = data.action = $el.attr("action"); 12127 data.handler = null; 12128 data.redirect = $el.attr("data-redirect"); 12129 if (chimpRegex.test(action)) { 12130 data.handler = submitMailChimp; 12131 return; 12132 } 12133 if (action) { 12134 return; 12135 } 12136 if (siteId) { 12137 data.handler = false ? exportedSubmitWebflow : (() => { 12138 const hostedSubmitHandler = require_webflow_forms_hosted().default; 12139 return hostedSubmitHandler(reset, loc, Webflow2, collectEnterpriseTrackingCookies, preventDefault, findFields, alert, findFileUploads, disableBtn, siteId, afterSubmit, $2, formUrl); 12140 })(); 12141 return; 12142 } 12143 disconnected(); 12144 } 12145 function addListeners() { 12146 listening = true; 12147 $doc.on("submit", namespace + " form", function(evt) { 12148 var data = $2.data(this, namespace); 12149 if (data.handler) { 12150 data.evt = evt; 12151 data.handler(data); 12152 } 12153 }); 12154 const CHECKBOX_CLASS_NAME = ".w-checkbox-input"; 12155 const RADIO_INPUT_CLASS_NAME = ".w-radio-input"; 12156 const CHECKED_CLASS = "w--redirected-checked"; 12157 const FOCUSED_CLASS = "w--redirected-focus"; 12158 const FOCUSED_VISIBLE_CLASS = "w--redirected-focus-visible"; 12159 const focusVisibleSelectors = ":focus-visible, [data-wf-focus-visible]"; 12160 const CUSTOM_CONTROLS = [ 12161 [ 12162 "checkbox", 12163 CHECKBOX_CLASS_NAME 12164 ], 12165 [ 12166 "radio", 12167 RADIO_INPUT_CLASS_NAME 12168 ] 12169 ]; 12170 $doc.on("change", namespace + ` form input[type="checkbox"]:not(` + CHECKBOX_CLASS_NAME + ")", (evt) => { 12171 $2(evt.target).siblings(CHECKBOX_CLASS_NAME).toggleClass(CHECKED_CLASS); 12172 }); 12173 $doc.on("change", namespace + ` form input[type="radio"]`, (evt) => { 12174 $2(`input[name="${evt.target.name}"]:not(${CHECKBOX_CLASS_NAME})`).map((i, el) => $2(el).siblings(RADIO_INPUT_CLASS_NAME).removeClass(CHECKED_CLASS)); 12175 const $target = $2(evt.target); 12176 if (!$target.hasClass("w-radio-input")) { 12177 $target.siblings(RADIO_INPUT_CLASS_NAME).addClass(CHECKED_CLASS); 12178 } 12179 }); 12180 CUSTOM_CONTROLS.forEach(([controlType, customControlClassName]) => { 12181 $doc.on("focus", namespace + ` form input[type="${controlType}"]:not(` + customControlClassName + ")", (evt) => { 12182 $2(evt.target).siblings(customControlClassName).addClass(FOCUSED_CLASS); 12183 $2(evt.target).filter(focusVisibleSelectors).siblings(customControlClassName).addClass(FOCUSED_VISIBLE_CLASS); 12184 }); 12185 $doc.on("blur", namespace + ` form input[type="${controlType}"]:not(` + customControlClassName + ")", (evt) => { 12186 $2(evt.target).siblings(customControlClassName).removeClass(`${FOCUSED_CLASS} ${FOCUSED_VISIBLE_CLASS}`); 12187 }); 12188 }); 12189 } 12190 function reset(data) { 12191 var btn = data.btn = data.form.find(':input[type="submit"]'); 12192 data.wait = data.btn.attr("data-wait") || null; 12193 data.success = false;
12194 btn.prop("disabled", false); 12195 data.label && btn.val(data.label); 12196 } 12197 function disableBtn(data) { 12198 var btn = data.btn; 12199 var wait = data.wait; 12200 btn.prop("disabled", true); 12201 if (wait) { 12202 data.label = btn.val(); 12203 btn.val(wait); 12204 } 12205 } 12206 function findFields(form, result) { 12207 var status = null; 12208 result = result || {}; 12209 form.find(':input:not([type="submit"]):not([type="file"])').each(function(i, el) { 12210 var field = $2(el); 12211 var type = field.attr("type"); 12212 var name = field.attr("data-name") || field.attr("name") || "Field " + (i + 1); 12213 name = encodeURIComponent(name); 12214 var value = field.val(); 12215 if (type === "checkbox") { 12216 value = field.is(":checked"); 12217 } else if (type === "radio") { 12218 if (result[name] === null || typeof result[name] === "string") { 12219 return; 12220 } 12221 value = form.find('input[name="' + field.attr("name") + '"]:checked').val() || null; 12222 } 12223 if (typeof value === "string") { 12224 value = $2.trim(value); 12225 } 12226 result[name] = value; 12227 status = status || getStatus(field, type, name, value); 12228 }); 12229 return status; 12230 } 12231 function findFileUploads(form) { 12232 var result = {}; 12233 form.find(':input[type="file"]').each(function(i, el) { 12234 var field = $2(el); 12235 var name = field.attr("data-name") || field.attr("name") || "File " + (i + 1); 12236 var value = field.attr("data-value"); 12237 if (typeof value === "string") { 12238 value = $2.trim(value); 12239 } 12240 result[name] = value; 12241 }); 12242 return result; 12243 } 12244 const trackingCookieNameMap = { 12245 _mkto_trk: "marketo" 12246 }; 12247 function collectEnterpriseTrackingCookies() { 12248 const cookies = document.cookie.split("; ").reduce(function(acc, cookie) { 12249 const splitCookie = cookie.split("="); 12250 const name = splitCookie[0]; 12251 if (name in trackingCookieNameMap) { 12252 const mappedName = trackingCookieNameMap[name]; 12253 const value = splitCookie.slice(1).join("="); 12254 acc[mappedName] = value; 12255 } 12256 return acc; 12257 }, {}); 12258 return cookies; 12259 } 12260 function getStatus(field, type, name, value) { 12261 var status = null; 12262 if (type === "password") { 12263 status = "Passwords cannot be submitted."; 12264 } else if (field.attr("required")) { 12265 if (!value) { 12266 status = "Please fill out the required field: " + name; 12267 } else if (emailField.test(field.attr("type"))) { 12268 if (!emailValue.test(value)) { 12269 status = "Please enter a valid email address for: " + name; 12270 } 12271 } 12272 } else if (name === "g-recaptcha-response" && !value) { 12273 status = "Please confirm you\u2019re not a robot."; 12274 } 12275 return status; 12276 } 12277 function exportedSubmitWebflow(data) { 12278 preventDefault(data); 12279 afterSubmit(data); 12280 } 12281 function submitMailChimp(data) { 12282 reset(data); 12283 var form = data.form; 12284 var payload = {}; 12285 if (/^https/.test(loc.href) && !/^https/.test(data.action)) { 12286 form.attr("method", "post"); 12287 return; 12288 } 12289 preventDefault(data); 12290 var status = findFields(form, payload); 12291 if (status) { 12292 return alert(status); 12293 } 12294 disableBtn(data); 12295 var fullName; 12296 _.each(payload, function(value, key) { 12297 if (emailField.test(key)) { 12298 payload.EMAIL = value; 12299 } 12300 if (/^((full[ _-]?)?name)$/i.test(key)) { 12301 fullName = value; 12302 } 12303 if (/^(first[ _-]?name)$/i.test(key)) { 12304 payload.FNAME = value; 12305 } 12306 if (/^(last[ _-]?name)$/i.test(key)) { 12307 payload.LNAME = value; 12308 } 12309 }); 12310 if (fullName && !payload.FNAME) { 12311 fullName = fullName.split(" "); 12312 payload.FNAME = fullName[0]; 12313 payload.LNAME = payload.LNAME || fullName[1]; 12314 } 12315 var url = data.action.replace("/post?", "/post-json?") + "&c=?"; 12316 var userId = url.indexOf("u=") + 2; 12317 userId = url.substring(userId, url.indexOf("&", userId)); 12318 var listId = url.indexOf("id=") + 3; 12319 listId = url.substring(listId, url.indexOf("&", listId)); 12320 payload["b_" + userId + "_" + listId] = ""; 12321 $2.ajax({ 12322 url, 12323 data: payload, 12324 dataType: "jsonp" 12325 }).done(function(resp) { 12326 data.success = resp.result === "success" || /already/.test(resp.msg); 12327 if (!data.success) { 12328 console.info("MailChimp error: " + resp.msg); 12329 } 12330 afterSubmit(data); 12331 }).fail(function() { 12332 afterSubmit(data); 12333 }); 12334 } 12335 function afterSubmit(data) { 12336 var form = data.form; 12337 var redirect = data.redirect; 12338 var success = data.success; 12339 if (success && redirect) { 12340 Webflow2.location(redirect); 12341 return; 12342 } 12343 data.done.toggle(success); 12344 data.fail.toggle(!success); 12345 if (success) { 12346 data.done.focus(); 12347 } else { 12348 data.fail.focus(); 12349 } 12350 form.toggle(!success); 12351 reset(data); 12352 } 12353 function preventDefault(data) { 12354 data.evt && data.evt.preventDefault(); 12355 data.evt = null; 12356 } 12357 function initFileUpload(i, form) { 12358 if (!form.fileUploads || !form.fileUploads[i]) { 12359 return; 12360 } 12361 var file; 12362 var $el = $2(form.fileUploads[i]); 12363 var $defaultWrap = $el.find("> .w-file-upload-default"); 12364 var $uploadingWrap = $el.find("> .w-file-upload-uploading"); 12365 var $successWrap = $el.find("> .w-file-upload-success"); 12366 var $errorWrap = $el.find("> .w-file-upload-error"); 12367 var $input = $defaultWrap.find(".w-file-upload-input"); 12368 var $label = $defaultWrap.find(".w-file-upload-label"); 12369 var $labelChildren = $label.children(); 12370 var $errorMsgEl = $errorWrap.find(".w-file-upload-error-msg"); 12371 var $fileEl = $successWrap.find(".w-file-upload-file"); 12372 var $removeEl = $successWrap.find(".w-file-remove-link"); 12373 var $fileNameEl = $fileEl.find(".w-file-upload-file-name"); 12374 var sizeErrMsg = $errorMsgEl.attr("data-w-size-error"); 12375 var typeErrMsg = $errorMsgEl.attr("data-w-type-error"); 12376 var genericErrMsg = $errorMsgEl.attr("data-w-generic-error"); 12377 if (!inApp) { 12378 $label.on("click keydown", function(e) { 12379 if (e.type === "keydown" && e.which !== 13 && e.which !== 32) { 12380 return; 12381 } 12382 e.preventDefault(); 12383 $input.click(); 12384 }); 12385 } 12386 $label.find(".w-icon-file-upload-icon").attr("aria-hidden", "true"); 12387 $removeEl.find(".w-icon-file-upload-remove").attr("aria-hidden", "true"); 12388 if (!inApp) { 12389 $removeEl.on("click keydown", function(e) { 12390 if (e.type === "keydown") { 12391 if (e.which !== 13 && e.which !== 32) { 12392 return; 12393 } 12394 e.preventDefault(); 12395 } 12396 $input.removeAttr("data-value"); 12397 $input.val(""); 12398 $fileNameEl.html(""); 12399 $defaultWrap.toggle(true); 12400 $successWrap.toggle(false); 12401 $label.focus(); 12402 }); 12403 $input.on("change", function(e) { 12404 file = e.target && e.target.files && e.target.files[0]; 12405 if (!file) { 12406 return; 12407 } 12408 $defaultWrap.toggle(false); 12409 $errorWrap.toggle(false); 12410 $uploadingWrap.toggle(true); 12411 $uploadingWrap.focus(); 12412 $fileNameEl.text(file.name); 12413 if (!isUploading()) { 12414 disableBtn(form); 12415 } 12416 form.fileUploads[i].uploading = true; 12417 signFile(file, afterSign); 12418 }); 12419 var height = $label.outerHeight(); 12420 $input.height(height); 12421 $input.width(1); 12422 } else { 12423 $input.on("click", function(e) { 12424 e.preventDefault(); 12425 }); 12426 $label.on("click", function(e) { 12427 e.preventDefault(); 12428 }); 12429 $labelChildren.on("click", function(e) { 12430 e.preventDefault(); 12431 }); 12432 } 12433 function parseError(err) { 12434 var errorMsg = err.responseJSON && err.responseJSON.msg; 12435 var userError = genericErrMsg; 12436 if (typeof errorMsg === "string" && errorMsg.indexOf("InvalidFileTypeError") === 0) { 12437 userError = typeErrMsg; 12438 } else if (typeof errorMsg === "string" && errorMsg.indexOf("MaxFileSizeError") === 0) { 12439 userError = sizeErrMsg; 12440 } 12441 $errorMsgEl.text(userError); 12442 $input.removeAttr("data-value"); 12443 $input.val(""); 12444 $uploadingWrap.toggle(false); 12445 $defaultWrap.toggle(true); 12446 $errorWrap.toggle(true); 12447 $errorWrap.focus(); 12448 form.fileUploads[i].uploading = false;
12449 if (!isUploading()) { 12450 reset(form); 12451 } 12452 } 12453 function afterSign(err, data) { 12454 if (err) { 12455 return parseError(err); 12456 } 12457 var fileName = data.fileName; 12458 var postData = data.postData; 12459 var fileId = data.fileId; 12460 var s3Url = data.s3Url; 12461 $input.attr("data-value", fileId); 12462 uploadS3(s3Url, postData, file, fileName, afterUpload); 12463 } 12464 function afterUpload(err) { 12465 if (err) { 12466 return parseError(err); 12467 } 12468 $uploadingWrap.toggle(false); 12469 $successWrap.css("display", "inline-block"); 12470 $successWrap.focus(); 12471 form.fileUploads[i].uploading = false; 12472 if (!isUploading()) { 12473 reset(form); 12474 } 12475 } 12476 function isUploading() { 12477 var uploads = form.fileUploads && form.fileUploads.toArray() || []; 12478 return uploads.some(function(value) { 12479 return value.uploading; 12480 }); 12481 } 12482 } 12483 function signFile(file, cb) { 12484 var payload = new URLSearchParams({ 12485 name: file.name, 12486 size: file.size 12487 }); 12488 $2.ajax({ 12489 type: "GET", 12490 url: `${signFileUrl}?${payload}`, 12491 crossDomain: true 12492 }).done(function(data) { 12493 cb(null, data); 12494 }).fail(function(err) { 12495 cb(err); 12496 }); 12497 } 12498 function uploadS3(url, data, file, fileName, cb) { 12499 var formData = new FormData(); 12500 for (var k in data) { 12501 formData.append(k, data[k]); 12502 } 12503 formData.append("file", file, fileName); 12504 $2.ajax({ 12505 type: "POST", 12506 url, 12507 data: formData, 12508 processData: false, 12509 contentType: false 12510 }).done(function() { 12511 cb(null); 12512 }).fail(function(err) { 12513 cb(err); 12514 }); 12515 } 12516 return api; 12517 }); 12518 } 12519 }); 12520 12521
12521// packages/shared/render/plugins/Navbar/webflow-navbar.js 12522 var require_webflow_navbar = __commonJS({ 12523 "packages/shared/render/plugins/Navbar/webflow-navbar.js"(exports, module) { 12524 "use strict"; 12525 var Webflow2 = require_webflow_lib(); 12526 var IXEvents = require_webflow_ix2_events(); 12527 var KEY_CODES = { 12528 ARROW_LEFT: 37, 12529 ARROW_UP: 38, 12530 ARROW_RIGHT: 39, 12531 ARROW_DOWN: 40, 12532 ESCAPE: 27, 12533 SPACE: 32, 12534 ENTER: 13, 12535 HOME: 36, 12536 END: 35 12537 }; 12538 Webflow2.define("navbar", module.exports = function($2, _) { 12539 var api = {}; 12540 var tram = $2.tram; 12541 var $win = $2(window); 12542 var $doc = $2(document); 12543 var debounce = _.debounce; 12544 var $body; 12545 var $navbars; 12546 var designer; 12547 var inEditor; 12548 var inApp = Webflow2.env(); 12549 var overlay = '<div class="w-nav-overlay" data-wf-ignore />'; 12550 var namespace = ".w-nav"; 12551 var navbarOpenedButton = "w--open"; 12552 var navbarOpenedDropdown = "w--nav-dropdown-open"; 12553 var navbarOpenedDropdownToggle = "w--nav-dropdown-toggle-open"; 12554 var navbarOpenedDropdownList = "w--nav-dropdown-list-open"; 12555 var navbarOpenedLink = "w--nav-link-open"; 12556 var ix = IXEvents.triggers; 12557 var menuSibling = $2(); 12558 api.ready = api.design = api.preview = init; 12559 api.destroy = function() { 12560 menuSibling = $2(); 12561 removeListeners(); 12562 if ($navbars && $navbars.length) { 12563 $navbars.each(teardown); 12564 } 12565 }; 12566 function init() { 12567 designer = inApp && Webflow2.env("design"); 12568 inEditor = Webflow2.env("editor"); 12569 $body = $2(document.body); 12570 $navbars = $doc.find(namespace); 12571 if (!$navbars.length) { 12572 return; 12573 } 12574 $navbars.each(build); 12575 removeListeners(); 12576 addListeners(); 12577 } 12578 function removeListeners() { 12579 Webflow2.resize.off(resizeAll); 12580 } 12581 function addListeners() { 12582 Webflow2.resize.on(resizeAll); 12583 } 12584 function resizeAll() { 12585 $navbars.each(resize); 12586 } 12587 function build(i, el) { 12588 var $el = $2(el); 12589 var data = $2.data(el, namespace); 12590 if (!data) { 12591 data = $2.data(el, namespace, { 12592 open: false, 12593 el: $el, 12594 config: {}, 12595 selectedIdx: -1 12596 }); 12597 } 12598 data.menu = $el.find(".w-nav-menu"); 12599 data.links = data.menu.find(".w-nav-link"); 12600 data.dropdowns = data.menu.find(".w-dropdown"); 12601 data.dropdownToggle = data.menu.find(".w-dropdown-toggle"); 12602 data.dropdownList = data.menu.find(".w-dropdown-list"); 12603 data.button = $el.find(".w-nav-button"); 12604 data.container = $el.find(".w-container"); 12605 data.overlayContainerId = "w-nav-overlay-" + i; 12606 data.outside = outside(data); 12607 var navBrandLink = $el.find(".w-nav-brand"); 12608 if (navBrandLink && navBrandLink.attr("href") === "/" && navBrandLink.attr("aria-label") == null) { 12609 navBrandLink.attr("aria-label", "home"); 12610 } 12611 data.button.attr("style", "-webkit-user-select: text;"); 12612 if (data.button.attr("aria-label") == null) { 12613 data.button.attr("aria-label", "menu"); 12614 } 12615 data.button.attr("role", "button"); 12616 data.button.attr("tabindex", "0"); 12617 data.button.attr("aria-controls", data.overlayContainerId); 12618 data.button.attr("aria-haspopup", "menu"); 12619 data.button.attr("aria-expanded", "false"); 12620 data.el.off(namespace); 12621 data.button.off(namespace); 12622 data.menu.off(namespace); 12623 configure(data); 12624 if (designer) { 12625 removeOverlay(data); 12626 data.el.on("setting" + namespace, handler(data)); 12627 } else { 12628 addOverlay(data); 12629 data.button.on("click" + namespace, toggle(data)); 12630 data.menu.on("click" + namespace, "a", navigate(data)); 12631 data.button.on("keydown" + namespace, makeToggleButtonKeyboardHandler(data));
12632 data.el.on("keydown" + namespace, makeLinksKeyboardHandler(data)); 12633 } 12634 resize(i, el); 12635 } 12636 function teardown(i, el) { 12637 var data = $2.data(el, namespace); 12638 if (data) { 12639 removeOverlay(data); 12640 $2.removeData(el, namespace); 12641 } 12642 } 12643 function removeOverlay(data) { 12644 if (!data.overlay) { 12645 return; 12646 } 12647 close(data, true); 12648 data.overlay.remove(); 12649 data.overlay = null; 12650 } 12651 function addOverlay(data) { 12652 if (data.overlay) { 12653 return; 12654 } 12655 data.overlay = $2(overlay).appendTo(data.el); 12656 data.overlay.attr("id", data.overlayContainerId); 12657 data.parent = data.menu.parent(); 12658 close(data, true); 12659 } 12660 function configure(data) { 12661 var config = {}; 12662 var old = data.config || {}; 12663 var animation = config.animation = data.el.attr("data-animation") || "default"; 12664 config.animOver = /^over/.test(animation); 12665 config.animDirect = /left$/.test(animation) ? -1 : 1; 12666 if (old.animation !== animation) { 12667 data.open && _.defer(reopen, data); 12668 } 12669 config.easing = data.el.attr("data-easing") || "ease"; 12670 config.easing2 = data.el.attr("data-easing2") || "ease"; 12671 var duration = data.el.attr("data-duration"); 12672 config.duration = duration != null ? Number(duration) : 400; 12673 config.docHeight = data.el.attr("data-doc-height"); 12674 data.config = config; 12675 } 12676 function handler(data) { 12677 return function(evt, options) { 12678 options = options || {}; 12679 var winWidth = $win.width(); 12680 configure(data); 12681 options.open === true && open(data, true); 12682 options.open === false && close(data, true); 12683 data.open && _.defer(function() { 12684 if (winWidth !== $win.width()) { 12685 reopen(data); 12686 } 12687 }); 12688 }; 12689 } 12690 function makeToggleButtonKeyboardHandler(data) { 12691 return function(evt) { 12692 switch (evt.keyCode) { 12693 case KEY_CODES.SPACE: 12694 case KEY_CODES.ENTER: { 12695 toggle(data)(); 12696 evt.preventDefault(); 12697 return evt.stopPropagation(); 12698 } 12699 case KEY_CODES.ESCAPE: { 12700 close(data); 12701 evt.preventDefault(); 12702 return evt.stopPropagation(); 12703 } 12704 case KEY_CODES.ARROW_RIGHT: 12705 case KEY_CODES.ARROW_DOWN: 12706 case KEY_CODES.HOME: 12707 case KEY_CODES.END: { 12708 if (!data.open) { 12709 evt.preventDefault(); 12710 return evt.stopPropagation(); 12711 } 12712 if (evt.keyCode === KEY_CODES.END) { 12713 data.selectedIdx = data.links.length - 1; 12714 } else { 12715 data.selectedIdx = 0; 12716 } 12717 focusSelectedLink(data); 12718 evt.preventDefault(); 12719 return evt.stopPropagation(); 12720 } 12721 } 12722 }; 12723 } 12724 function makeLinksKeyboardHandler(data) { 12725 return function(evt) { 12726 if (!data.open) { 12727 return; 12728 } 12729 data.selectedIdx = data.links.index(document.activeElement); 12730 switch (evt.keyCode) { 12731 case KEY_CODES.HOME: 12732 case KEY_CODES.END: { 12733 if (evt.keyCode === KEY_CODES.END) { 12734 data.selectedIdx = data.links.length - 1; 12735 } else { 12736 data.selectedIdx = 0; 12737 } 12738 focusSelectedLink(data); 12739 evt.preventDefault(); 12740 return evt.stopPropagation(); 12741 } 12742 case KEY_CODES.ESCAPE: { 12743 close(data); 12744 data.button.focus(); 12745 evt.preventDefault(); 12746 return evt.stopPropagation(); 12747 } 12748 case KEY_CODES.ARROW_LEFT: 12749 case KEY_CODES.ARROW_UP: { 12750 data.selectedIdx = Math.max(-1, data.selectedIdx
12750- 1); 12751 focusSelectedLink(data); 12752 evt.preventDefault(); 12753 return evt.stopPropagation(); 12754 } 12755 case KEY_CODES.ARROW_RIGHT: 12756 case KEY_CODES.ARROW_DOWN: { 12757 data.selectedIdx = Math.min(data.links.length - 1, data.selectedIdx + 1); 12758 focusSelectedLink(data); 12759 evt.preventDefault(); 12760 return evt.stopPropagation(); 12761 } 12762 } 12763 }; 12764 } 12765 function focusSelectedLink(data) { 12766 if (data.links[data.selectedIdx]) { 12767 var selectedElement = data.links[data.selectedIdx]; 12768 selectedElement.focus(); 12769 navigate(selectedElement); 12770 } 12771 } 12772 function reopen(data) { 12773 if (!data.open) { 12774 return; 12775 } 12776 close(data, true); 12777 open(data, true); 12778 } 12779 function toggle(data) { 12780 return debounce(function() { 12781 data.open ? close(data) : open(data); 12782 }); 12783 } 12784 function navigate(data) { 12785 return function(evt) { 12786 var link = $2(this); 12787 var href = link.attr("href"); 12788 if (!Webflow2.validClick(evt.currentTarget)) { 12789 evt.preventDefault(); 12790 return; 12791 } 12792 if (href && href.indexOf("#") === 0 && data.open) { 12793 close(data); 12794 } 12795 }; 12796 } 12797 function outside(data) { 12798 if (data.outside) { 12799 $doc.off("click" + namespace, data.outside); 12800 } 12801 return function(evt) { 12802 var $target = $2(evt.target); 12803 if (inEditor && $target.closest(".w-editor-bem-EditorOverlay").length) { 12804 return; 12805 } 12806 outsideDebounced(data, $target); 12807 }; 12808 } 12809 var outsideDebounced = debounce(function(data, $target) { 12810 if (!data.open) { 12811 return; 12812 } 12813 var menu = $target.closest(".w-nav-menu"); 12814 if (!data.menu.is(menu)) { 12815 close(data); 12816 } 12817 }); 12818 function resize(i, el) { 12819 var data = $2.data(el, namespace); 12820 var collapsed = data.collapsed = data.button.css("display") !== "none"; 12821 if (data.open && !collapsed && !designer) { 12822 close(data, true); 12823 } 12824 if (data.container.length) { 12825 var updateEachMax = updateMax(data); 12826 data.links.each(updateEachMax); 12827 data.dropdowns.each(updateEachMax); 12828 } 12829 if (data.open) { 12830 setOverlayHeight(data); 12831 } 12832 } 12833 var maxWidth = "max-width"; 12834 function updateMax(data) { 12835 var containMax = data.container.css(maxWidth); 12836 if (containMax === "none") { 12837 containMax = ""; 12838 } 12839 return function(i, link) { 12840 link = $2(link); 12841 link.css(maxWidth, ""); 12842 if (link.css(maxWidth) === "none") { 12843 link.css(maxWidth, containMax); 12844 } 12845 }; 12846 } 12847 function addMenuOpen(i, el) { 12848 el.setAttribute("data-nav-menu-open", ""); 12849 } 12850 function removeMenuOpen(i, el) { 12851 el.removeAttribute("data-nav-menu-open"); 12852 } 12853 function open(data, immediate) { 12854 if (data.open) { 12855 return; 12856 } 12857 data.open = true; 12858 data.menu.each(addMenuOpen); 12859 data.links.addClass(navbarOpenedLink); 12860 data.dropdowns.addClass(navbarOpenedDropdown); 12861 data.dropdownToggle.addClass(navbarOpenedDropdownToggle); 12862 data.dropdownList.addClass(navbarOpenedDropdownList); 12863 data.button.addClass(navbarOpenedButton); 12864 var config = data.config; 12865 var animation = config.animation; 12866 if (animation === "none" || !tram.support.transform || config.duration <= 0) { 12867 immediate = true; 12868 } 12869 var bodyHeight = setOverlayHeight(data); 12870 var menuHeight = data.menu.outerHeight(true); 12871 var menuWidth = data.menu.outerWidth(true); 12872 var navHeight = data.el.height(); 12873 var navbarEl = data.el[0]; 12874 resize(0, navbarEl); 12875 ix.intro(0, navbarEl); 12876 Webflow2.redraw.up(); 12877 if (!designer) { 12878 $doc.on("click" + namespace, data.outside); 12879 } 12880 if (immediate) { 12881 complete(); 12882 return; 12883 } 12884 var transConfig = "transform " + config.duration + "ms " + config.easing; 12885 if (data.overlay) { 12886 menuSibling = data.menu.prev(); 12887 data.overlay.show().append(data.menu); 12888 } 12889 if (config.animOver) { 12890 tram(data.menu).add(transConfig).set({ 12891 x: config.animDirect * menuWidth, 12892 height: bodyHeight 12893 }).start({ 12894 x: 0 12895 }).then(complete); 12896 data.overlay && data.overlay.width(menuWidth); 12897 return; 12898 } 12899 var offsetY = navHeight + menuHeight; 12900 tram(data.menu).add(transConfig).set({ 12901 y: -offsetY 12902 }).start({ 12903 y: 0 12904 }).then(complete); 12905 function complete() { 12906 data.button.attr("aria-expanded", "true"); 12907 } 12908 } 12909 function setOverlayHeight(data) { 12910 var config = data.config; 12911 var bodyHeight = config.docHeight ? $doc.height() : $body.height(); 12912 if (config.animOver) { 12913 data.menu.height(bodyHeight); 12914 } else if (data.el.css("position") !== "fixed") { 12915 bodyHeight -= data.el.outerHeight(true); 12916 } 12917 data.overlay && data.overlay.height(bodyHeight); 12918 return bodyHeight; 12919 } 12920 function close(data, immediate) { 12921 if (!data.open) { 12922 return; 12923 } 12924 data.open = false;
12925 data.button.removeClass(navbarOpenedButton); 12926 var config = data.config; 12927 if (config.animation === "none" || !tram.support.transform || config.duration <= 0) { 12928 immediate = true; 12929 } 12930 ix.outro(0, data.el[0]); 12931 $doc.off("click" + namespace, data.outside); 12932 if (immediate) { 12933 tram(data.menu).stop(); 12934 complete(); 12935 return; 12936 } 12937 var transConfig = "transform " + config.duration + "ms " + config.easing2; 12938 var menuHeight = data.menu.outerHeight(true); 12939 var menuWidth = data.menu.outerWidth(true); 12940 var navHeight = data.el.height(); 12941 if (config.animOver) { 12942 tram(data.menu).add(transConfig).start({ 12943 x: menuWidth * config.animDirect 12944 }).then(complete); 12945 return; 12946 } 12947 var offsetY = navHeight + menuHeight; 12948 tram(data.menu).add(transConfig).start({ 12949 y: -offsetY 12950 }).then(complete); 12951 function complete() { 12952 data.menu.height(""); 12953 tram(data.menu).set({ 12954 x: 0, 12955 y: 0 12956 }); 12957 data.menu.each(removeMenuOpen); 12958 data.links.removeClass(navbarOpenedLink); 12959 data.dropdowns.removeClass(navbarOpenedDropdown); 12960 data.dropdownToggle.removeClass(navbarOpenedDropdownToggle); 12961 data.dropdownList.removeClass(navbarOpenedDropdownList); 12962 if (data.overlay && data.overlay.children().length) { 12963 menuSibling.length ? data.menu.insertAfter(menuSibling) : data.menu.prependTo(data.parent); 12964 data.overlay.attr("style", "").hide(); 12965 } 12966 data.el.triggerHandler("w-close"); 12967 data.button.attr("aria-expanded", "false"); 12968 } 12969 } 12970 return api; 12971 }); 12972 } 12973 }); 12974 12975
12975// packages/shared/render/plugins/Slider/webflow-slider.js 12976 var require_webflow_slider = __commonJS({ 12977 "packages/shared/render/plugins/Slider/webflow-slider.js"(exports, module) { 12978 "use strict"; 12979 var Webflow2 = require_webflow_lib(); 12980 var IXEvents = require_webflow_ix2_events(); 12981 var KEY_CODES = { 12982 ARROW_LEFT: 37, 12983 ARROW_UP: 38, 12984 ARROW_RIGHT: 39, 12985 ARROW_DOWN: 40, 12986 SPACE: 32, 12987 ENTER: 13, 12988 HOME: 36, 12989 END: 35 12990 }; 12991 var FOCUSABLE_SELECTOR = 'a[href], area[href], [role="button"], input, select, textarea, button, iframe, object, embed, *[tabindex], *[contenteditable]'; 12992 Webflow2.define("slider", module.exports = function($2, _) { 12993 var api = {}; 12994 var tram = $2.tram; 12995 var $doc = $2(document); 12996 var $sliders; 12997 var designer; 12998 var inApp = Webflow2.env(); 12999 var namespace = ".w-slider"; 13000 var dot = '<div class="w-slider-dot" data-wf-ignore />'; 13001 var ariaLiveLabelHtml = '<div aria-live="off" aria-atomic="true" class="w-slider-aria-label" data-wf-ignore />'; 13002 var forceShow = "w-slider-force-show"; 13003 var ix = IXEvents.triggers; 13004 var fallback; 13005 var inRedraw = false; 13006 api.ready = function() { 13007 designer = Webflow2.env("design"); 13008 init(); 13009 }; 13010 api.design = function() { 13011 designer = true; 13012 setTimeout(init, 1e3); 13013 }; 13014 api.preview = function() { 13015 designer = false;
13016 init(); 13017 }; 13018 api.redraw = function() { 13019 inRedraw = true; 13020 init(); 13021 inRedraw = false; 13022 }; 13023 api.destroy = removeListeners; 13024 function init() { 13025 $sliders = $doc.find(namespace); 13026 if (!$sliders.length) { 13027 return; 13028 } 13029 $sliders.each(build); 13030 if (fallback) { 13031 return; 13032 } 13033 removeListeners(); 13034 addListeners(); 13035 } 13036 function removeListeners() { 13037 Webflow2.resize.off(renderAll); 13038 Webflow2.redraw.off(api.redraw); 13039 } 13040 function addListeners() { 13041 Webflow2.resize.on(renderAll); 13042 Webflow2.redraw.on(api.redraw); 13043 } 13044 function renderAll() { 13045 $sliders.filter(":visible").each(render); 13046 } 13047 function build(i, el) { 13048 var $el = $2(el); 13049 var data = $2.data(el, namespace); 13050 if (!data) { 13051 data = $2.data(el, namespace, { 13052 index: 0, 13053 depth: 1, 13054 hasFocus: { 13055 keyboard: false, 13056 mouse: false 13057 }, 13058 el: $el, 13059 config: {} 13060 }); 13061 } 13062 data.mask = $el.children(".w-slider-mask"); 13063 data.left = $el.children(".w-slider-arrow-left"); 13064 data.right = $el.children(".w-slider-arrow-right"); 13065 data.nav = $el.children(".w-slider-nav"); 13066 data.slides = data.mask.children(".w-slide"); 13067 data.slides.each(ix.reset); 13068 if (inRedraw) { 13069 data.maskWidth = 0; 13070 } 13071 if ($el.attr("role") === void 0) { 13072 $el.attr("role", "region"); 13073 } 13074 if ($el.attr("aria-label") === void 0) { 13075 $el.attr("aria-label", "carousel"); 13076 } 13077 var slideViewId = data.mask.attr("id"); 13078 if (!slideViewId) { 13079 slideViewId = "w-slider-mask-" + i; 13080 data.mask.attr("id", slideViewId); 13081 } 13082 if (!designer && !data.ariaLiveLabel) { 13083 data.ariaLiveLabel = $2(ariaLiveLabelHtml).appendTo(data.mask); 13084 } 13085 data.left.attr("role", "button"); 13086 data.left.attr("tabindex", "0"); 13087 data.left.attr("aria-controls", slideViewId); 13088 if (data.left.attr("aria-label") === void 0) { 13089 data.left.attr("aria-label", "previous slide"); 13090 } 13091 data.right.attr("role", "button"); 13092 data.right.attr("tabindex", "0"); 13093 data.right.attr("aria-controls", slideViewId); 13094 if (data.right.attr("aria-label") === void 0) { 13095 data.right.attr("aria-label", "next slide"); 13096 } 13097 if (!tram.support.transform) { 13098 data.left.hide(); 13099 data.right.hide(); 13100 data.nav.hide(); 13101 fallback = true; 13102 return; 13103 } 13104 data.el.off(namespace); 13105 data.left.off(namespace); 13106 data.right.off(namespace); 13107 data.nav.off(namespace); 13108 configure(data); 13109 if (designer) { 13110 data.el.on("setting" + namespace, handler(data)); 13111 stopTimer(data); 13112 data.hasTimer = false; 13113 } else { 13114 data.el.on("swipe" + namespace, handler(data)); 13115 data.left.on("click" + namespace, previousFunction(data)); 13116 data.right.on("click" + namespace, next(data)); 13117 data.left.on("keydown" + namespace, keyboardSlideButtonsFunction(data, previousFunction)); 13118 data.right.on("keydown" + namespace, keyboardSlideButtonsFunction(data, next)); 13119 data.nav.on("keydown" + namespace, "> div", handler(data)); 13120 if (data.config.autoplay && !data.hasTimer) { 13121 data.hasTimer = true; 13122 data.timerCount = 1; 13123 startTimer(data); 13124 } 13125 data.el.on("mouseenter" + namespace, hasFocus(data, true, "mouse")); 13126 data.el.on("focusin" + namespace, hasFocus(data, true, "keyboard")); 13127 data.el.on("mouseleave" + namespace, hasFocus(data, false, "mouse")); 13128 data.el.on("focusout" + namespace, hasFocus(data, false, "keyboard")); 13129 } 13130 data.nav.on("click" + namespace, "> div", handler(data)); 13131 if (!inApp) { 13132 data.mask.contents().filter(function() { 13133 return this.nodeType === 3; 13134 }).remove(); 13135 } 13136 var $elHidden = $el.filter(":hidden"); 13137 $elHidden.addClass(forceShow); 13138 var $elHiddenParents = $el.parents(":hidden"); 13139 $elHiddenParents.addClass(forceShow); 13140 if (!inRedraw) { 13141 render(i, el); 13142 } 13143 $elHidden.removeClass(forceShow); 13144 $elHiddenParents.removeClass(forceShow); 13145 } 13146 function configure(data) { 13147 var config = {}; 13148 config.crossOver = 0; 13149 config.animation = data.el.attr("data-animation") || "slide"; 13150 if (config.animation === "outin") { 13151 config.animation = "cross"; 13152 config.crossOver = 0.5; 13153 } 13154 config.easing = data.el.attr("data-easing") || "ease"; 13155 var duration = data.el.attr("data-duration"); 13156 config.duration = duration != null ? parseInt(duration, 10) : 500; 13157 if (isAttrTrue(data.el.attr("data-infinite"))) { 13158 config.infinite = true; 13159 } 13160 if (isAttrTrue(data.el.attr("data-disable-swipe"))) { 13161 config.disableSwipe = true; 13162 } 13163 if (isAttrTrue(data.el.attr("data-hide-arrows"))) { 13164 config.hideArrows = true; 13165 } else if (data.config.hideArrows) { 13166 data.left.show(); 13167 data.right.show(); 13168 } 13169 if (isAttrTrue(data.el.attr("data-autoplay"))) {
13170 config.autoplay = true; 13171 config.delay = parseInt(data.el.attr("data-delay"), 10) || 2e3; 13172 config.timerMax = parseInt(data.el.attr("data-autoplay-limit"), 10); 13173 var touchEvents = "mousedown" + namespace + " touchstart" + namespace; 13174 if (!designer) { 13175 data.el.off(touchEvents).one(touchEvents, function() { 13176 stopTimer(data); 13177 }); 13178 } 13179 } 13180 var arrowWidth = data.right.width(); 13181 config.edge = arrowWidth ? arrowWidth + 40 : 100; 13182 data.config = config; 13183 } 13184 function isAttrTrue(value) { 13185 return value === "1" || value === "true"; 13186 } 13187 function hasFocus(data, focusIn, eventType) { 13188 return function(evt) { 13189 if (!focusIn) { 13190 if ($2.contains(data.el.get(0), evt.relatedTarget)) { 13191 return; 13192 } 13193 data.hasFocus[eventType] = focusIn; 13194 if (data.hasFocus.mouse && eventType === "keyboard" || data.hasFocus.keyboard && eventType === "mouse") { 13195 return; 13196 } 13197 } else { 13198 data.hasFocus[eventType] = focusIn; 13199 } 13200 if (focusIn) { 13201 data.ariaLiveLabel.attr("aria-live", "polite"); 13202 if (data.hasTimer) { 13203 stopTimer(data); 13204 } 13205 } else { 13206 data.ariaLiveLabel.attr("aria-live", "off"); 13207 if (data.hasTimer) { 13208 startTimer(data); 13209 } 13210 } 13211 return; 13212 }; 13213 } 13214 function keyboardSlideButtonsFunction(data, directionFunction) { 13215 return function(evt) { 13216 switch (evt.keyCode) { 13217 case KEY_CODES.SPACE: 13218 case KEY_CODES.ENTER: { 13219 directionFunction(data)(); 13220 evt.preventDefault(); 13221 return evt.stopPropagation(); 13222 } 13223 } 13224 }; 13225 } 13226 function previousFunction(data) { 13227 return function() { 13228 change(data, { 13229 index: data.index - 1, 13230 vector: -1 13231 }); 13232 }; 13233 } 13234 function next(data) { 13235 return function() { 13236 change(data, { 13237 index: data.index + 1, 13238 vector: 1 13239 }); 13240 }; 13241 } 13242 function select(data, value) { 13243 var found = null; 13244 if (value === data.slides.length) { 13245 init(); 13246 layout(data); 13247 } 13248 _.each(data.anchors, function(anchor, index) { 13249 $2(anchor.els).each(function(i, el) { 13250 if ($2(el).index() === value) { 13251 found = index; 13252 } 13253 }); 13254 }); 13255 if (found != null) { 13256 change(data, { 13257 index: found, 13258 immediate: true 13259 }); 13260 } 13261 } 13262 function startTimer(data) { 13263 stopTimer(data); 13264 var config = data.config; 13265 var timerMax = config.timerMax; 13266 if (timerMax && data.timerCount++ > timerMax) { 13267 return; 13268 } 13269 data.timerId = window.setTimeout(function() { 13270 if (data.timerId == null || designer) { 13271 return; 13272 } 13273 next(data)(); 13274 startTimer(data); 13275 }, config.delay); 13276 } 13277 function stopTimer(data) { 13278 window.clearTimeout(data.timerId); 13279 data.timerId = null; 13280 } 13281 function handler(data) { 13282 return function(evt, options) { 13283 options = options || {}; 13284 var config = data.config; 13285 if (designer && evt.type === "setting") { 13286 if (options.select === "prev") { 13287 return previousFunction(data)(); 13288 } 13289 if (options.select === "next") { 13290 return next(data)(); 13291 } 13292 configure(data); 13293 layout(data); 13294 if (options.select == null) { 13295 return; 13296 } 13297 select(data, options.select); 13298 return; 13299 } 13300 if (evt.type === "swipe") { 13301 if (config.disableSwipe) { 13302 return; 13303 } 13304 if (Webflow2.env("editor")) { 13305 return; 13306 } 13307 if (options.direction === "left") { 13308 return next(data)(); 13309 } 13310 if (options.direction === "right") { 13311 return previousFunction(data)(); 13312 } 13313 return; 13314 } 13315 if (data.nav.has(evt.target).length) { 13316 var index = $2(evt.target).index(); 13317 if (evt.type === "click") { 13318 change(data, { 13319 index 13320 }); 13321 } 13322 if (evt.type === "keydown") { 13323 switch (evt.keyCode) { 13324 case KEY_CODES.ENTER: 13325 case KEY_CODES.SPACE: { 13326 change(data, { 13327 index 13328 }); 13329 evt.preventDefault(); 13330 break; 13331 } 13332 case KEY_CODES.ARROW_LEFT: 13333 case KEY_CODES.ARROW_UP: { 13334 focusDot(data.nav, Math.max(index - 1, 0)); 13335 evt.preventDefault(); 13336 break; 13337 } 13338 case KEY_CODES.ARROW_RIGHT: 13339 case KEY_CODES.ARROW_DOWN: { 13340 focusDot(data.nav, Math.min(index + 1, data.pages)); 13341 evt.preventDefault(); 13342 break; 13343 } 13344 case KEY_CODES.HOME: { 13345 focusDot(data.nav, 0); 13346 evt.preventDefault(); 13347 break; 13348 } 13349 case KEY_CODES.END: { 13350 focusDot(data.nav, data.pages); 13351 evt.preventDefault(); 13352 break; 13353 } 13354 default: { 13355 return; 13356 } 13357 } 13358 } 13359 } 13360 }; 13361 } 13362 function focusDot($nav, index) { 13363 var $active = $nav.children().eq(index).focus(); 13364 $nav.children().not($active); 13365 } 13366 function change(data, options) { 13367 options = options || {}; 13368 var config = data.config; 13369 var anchors = data.anchors; 13370 data.previous = data.index; 13371 var index = options.index; 13372 var shift = {}; 13373 if (index < 0) { 13374 index = anchors.length - 1; 13375 if (config.infinite) { 13376 shift.x = -data.endX; 13377 shift.from = 0; 13378 shift.to = anchors[0].width; 13379 } 13380 } else if (index >= anchors.length) { 13381 index = 0; 13382 if (config.infinite) {
13383 shift.x = anchors[anchors.length - 1].width; 13384 shift.from = -anchors[anchors.length - 1].x; 13385 shift.to = shift.from - shift.x; 13386 } 13387 } 13388 data.index = index; 13389 var $active = data.nav.children().eq(index).addClass("w-active").attr("aria-pressed", "true").attr("tabindex", "0"); 13390 data.nav.children().not($active).removeClass("w-active").attr("aria-pressed", "false").attr("tabindex", "-1"); 13391 if (config.hideArrows) { 13392 data.index === anchors.length - 1 ? data.right.hide() : data.right.show(); 13393 data.index === 0 ? data.left.hide() : data.left.show(); 13394 } 13395 var lastOffsetX = data.offsetX || 0; 13396 var offsetX = data.offsetX = -anchors[data.index].x; 13397 var resetConfig = { 13398 x: offsetX, 13399 opacity: 1, 13400 visibility: "" 13401 }; 13402 var targets = $2(anchors[data.index].els); 13403 var prevTargs = $2(anchors[data.previous] && anchors[data.previous].els); 13404 var others = data.slides.not(targets); 13405 var animation = config.animation; 13406 var easing = config.easing; 13407 var duration = Math.round(config.duration); 13408 var vector = options.vector || (data.index > data.previous ? 1 : -1); 13409 var fadeRule = "opacity " + duration + "ms " + easing; 13410 var slideRule = "transform " + duration + "ms " + easing; 13411 targets.find(FOCUSABLE_SELECTOR).removeAttr("tabindex"); 13412 targets.removeAttr("aria-hidden"); 13413 targets.find("*").removeAttr("aria-hidden"); 13414 others.find(FOCUSABLE_SELECTOR).attr("tabindex", "-1"); 13415 others.attr("aria-hidden", "true"); 13416 others.find("*").attr("aria-hidden", "true"); 13417 if (!designer) { 13418 targets.each(ix.intro); 13419 others.each(ix.outro); 13420 } 13421 if (options.immediate && !inRedraw) { 13422 tram(targets).set(resetConfig); 13423 resetOthers(); 13424 return; 13425 } 13426 if (data.index === data.previous) { 13427 return; 13428 } 13429 if (!designer) { 13430 data.ariaLiveLabel.text(`Slide ${index + 1} of ${anchors.length}.`); 13431 } 13432 if (animation === "cross") { 13433 var reduced = Math.round(duration - duration * config.crossOver); 13434 var wait = Math.round(duration - reduced); 13435 fadeRule = "opacity " + reduced + "ms " + easing; 13436 tram(prevTargs).set({ 13437 visibility: "" 13438 }).add(fadeRule).start({ 13439 opacity: 0 13440 }); 13441 tram(targets).set({ 13442 visibility: "", 13443 x: offsetX, 13444 opacity: 0, 13445 zIndex: data.depth++ 13446 }).add(fadeRule).wait(wait).then({ 13447 opacity: 1 13448 }).then(resetOthers); 13449 return; 13450 } 13451 if (animation === "fade") { 13452 tram(prevTargs).set({ 13453 visibility: "" 13454 }).stop(); 13455 tram(targets).set({ 13456 visibility: "", 13457 x: offsetX, 13458 opacity: 0, 13459 zIndex: data.depth++ 13460 }).add(fadeRule).start({ 13461 opacity: 1 13462 }).then(resetOthers); 13463 return; 13464 } 13465 if (animation === "over") { 13466 resetConfig = { 13467 x: data.endX 13468 }; 13469 tram(prevTargs).set({ 13470 visibility: "" 13471 }).stop(); 13472 tram(targets).set({ 13473 visibility: "", 13474 zIndex: data.depth++, 13475 x: offsetX + anchors[data.index].width * vector 13476 }).add(slideRule).start({ 13477 x: offsetX 13478 }).then(resetOthers); 13479 return; 13480 } 13481 if (config.infinite && shift.x) { 13482 tram(data.slides.not(prevTargs)).set({ 13483 visibility: "", 13484 x: shift.x 13485 }).add(slideRule).start({ 13486 x: offsetX 13487 }); 13488 tram(prevTargs).set({ 13489 visibility: "", 13490 x: shift.from 13491 }).add(slideRule).start({ 13492 x: shift.to 13493 }); 13494 data.shifted = prevTargs; 13495 } else { 13496 if (config.infinite && data.shifted) { 13497 tram(data.shifted).set({ 13498 visibility: "", 13499 x: lastOffsetX 13500 }); 13501 data.shifted = null; 13502 } 13503 tram(data.slides).set({ 13504 visibility: "" 13505 }).add(slideRule).start({ 13506 x: offsetX 13507 }); 13508 } 13509 function resetOthers() { 13510 targets = $2(anchors[data.index].els); 13511 others = data.slides.not(targets); 13512 if (animation !== "slide") { 13513 resetConfig.visibility = "hidden"; 13514 } 13515 tram(others).set(resetConfig); 13516 } 13517 } 13518 function render(i, el) { 13519 var data = $2.data(el, namespace); 13520 if (!data) { 13521 return; 13522 } 13523 if (maskChanged(data)) { 13524 return layout(data); 13525 } 13526 if (designer && slidesChanged(data)) { 13527 layout(data); 13528 } 13529 } 13530 function layout(data) { 13531 var pages = 1; 13532 var offset = 0; 13533 var anchor = 0; 13534 var width = 0; 13535 var maskWidth = data.maskWidth; 13536 var threshold = maskWidth - data.config.edge; 13537 if (threshold < 0) { 13538 threshold = 0; 13539 } 13540 data.anchors = [ 13541 { 13542 els: [], 13543 x: 0, 13544 width: 0 13545 } 13546 ]; 13547 data.slides.each(function(i, el) { 13548 if (anchor - offset > threshold) { 13549 pages++; 13550 offset += maskWidth; 13551 data.anchors[pages - 1] = { 13552 els: [], 13553 x: anchor, 13554 width: 0 13555 }; 13556 } 13557 width = $2(el).outerWidth(true); 13558 anchor += width; 13559 data.anchors[pages - 1].width += width; 13560 data.anchors[pages - 1].els.push(el); 13561 var ariaLabel = i + 1 + " of " + data.slides.length; 13562 $2(el).attr("aria-label", ariaLabel); 13563 $2(el).attr("role", "group"); 13564 }); 13565 data.endX = anchor; 13566 if (designer) { 13567 data.pages = null; 13568 } 13569 if (data.nav.length && data.pages !== pages) { 13570 data.pages = pages; 13571 buildNav(data); 13572 } 13573 var index = data.index; 13574 if (index >= pages) { 13575 index = pages - 1; 13576 } 13577 change(data, { 13578 immediate: true, 13579 index 13580 }); 13581 } 13582 function buildNav(data) { 13583 var dots = []; 13584 var $dot; 13585 var spacing = data.el.attr("data-nav-spacing"); 13586 if (spacing) { 13587 spacing = parseFloat(spacing) + "px"; 13588 } 13589 for (var i = 0, len = data.pages; i < len; i++) { 13590 $dot = $2(dot); 13591 $dot.attr("aria-label", "Show slide " + (i + 1) + " of " + len).attr("aria-pressed", "false").attr("role", "button").attr("tabindex", "-1"); 13592 if (data.nav.hasClass("w-num")) { 13593 $dot.text(i + 1); 13594 } 13595 if (spacing != null) { 13596 $dot.css({ 13597 "margin-left": spacing, 13598 "margin-right": spacing 13599 }); 13600 } 13601 dots.push($dot); 13602 } 13603 data.nav.empty().append(dots); 13604 } 13605 function maskChanged(data) { 13606 var maskWidth = data.mask.width(); 13607 if (data.maskWidth !== maskWidth) { 13608 data.maskWidth = maskWidth; 13609 return true; 13610 } 13611 return false;
13612 } 13613 function slidesChanged(data) { 13614 var slidesWidth = 0; 13615 data.slides.each(function(i, el) { 13616 slidesWidth += $2(el).outerWidth(true); 13617 }); 13618 if (data.slidesWidth !== slidesWidth) { 13619 data.slidesWidth = slidesWidth; 13620 return true; 13621 } 13622 return false; 13623 } 13624 return api; 13625 }); 13626 } 13627 }); 13628 13629 // <stdin> 13630 require_objectFitPolyfill_basic(); 13631 require_webflow_bgvideo(); 13632 require_webflow_brand(); 13633 require_webflow_edit(); 13634 require_webflow_focus_visible(); 13635 require_webflow_focus(); 13636 require_webflow_ix2_events(); 13637 require_webflow_ix2(); 13638 require_webflow_links(); 13639 require_webflow_scroll(); 13640 require_webflow_touch(); 13641 require_webflow_forms(); 13642 require_webflow_navbar(); 13643 require_webflow_slider(); 13644})(); 13645/*! 13646* tram.js v0.8.2-global 13647* Cross-browser CSS3 transitions in JavaScript 13648* https://github.com/bkwld/tram 13649* MIT License 13650*/ 13651/*! 13652 * Webflow._ (aka) Underscore.js 1.6.0 (custom build) 13653 * 13654 * http://underscorejs.org 13655 * (c) 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors 13656 * Underscore may be freely distributed under the MIT license. 13657 * @license MIT 13658 */ 13659/*! Bundled license information: 13660 13661timm/lib/timm.js: 13662 (*! 13663 * Timm 13664 * 13665 * Immutability helpers with fast reads and acceptable writes. 13666 * 13667 * @copyright Guillermo Grau Panea 2016 13668 * @license MIT 13669 *) 13670*/ 13671/** 13672 * ---------------------------------------------------------------------- 13673 * Webflow: Interactions 2.0: Init 13674 */ 13675Webflow.require('ix2').init( 13676{"events":{"e":{"id":"e","name":"","animationType":"custom","eventTypeId":"MOUSE_OVER","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-2"}},"mediaQueries":["main","medium","small","tiny"],"target":{"selector":".button","originalId":"664b027037a9f506ff125a2a|9770f072-9910-f511-a5a9-6d4ccd01f68f","appliesTo":"CLASS"},"targets":[{"selector":".button","originalId":"664b027037a9f506ff125a2a|9770f072-9910-f511-a5a9-6d4ccd01f68f","appliesTo":"CLASS"}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1715936571762},"e-2":{"id":"e-2","name":"","animationType":"custom","eventTypeId":"MOUSE_OUT","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-2","affectedElements":{},"playInReverse":false,"autoStopEventId":"e"}},"mediaQueries":["main","medium","small","tiny"],"target":{"selector":".button","originalId":"664b027037a9f506ff125a2a|9770f072-9910-f511-a5a9-6d4ccd01f68f","appliesTo":"CLASS"},"targets":[{"selector":".button","originalId":"664b027037a9f506ff125a2a|9770f072-9910-f511-a5a9-6d4ccd01f68f","appliesTo":"CLASS"}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1715936571764},"e-3":{"id":"e-3","name":"","animationType":"custom","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-4","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-4"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"664b027037a9f506ff125a2a|6e28bcf0-438a-76e2-5041-4d2637f9d216","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"664b027037a9f506ff125a2a|6e28bcf0-438a-76e2-5041-4d2637f9d216","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1715949778209},"e-5":{"id":"e-5","name":"","animationType":"custom","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-3","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-6"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"664b027037a9f506ff125a2a|56516ea1-9321-48ad-6fb7-015068b9a76d","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"664b027037a9f506ff125a2a|56516ea1-9321-48ad-6fb7-015068b9a76d","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1715949947232},"e-7":{"id":"e-7","name":"","animationType":"custom","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-5","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-8"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"664b027037a9f506ff125a2a|8dbda0c0-a3e9-17a2-e967-f21577a80913","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"664b027037a9f506ff125a2a|8dbda0c0-a3e9-17a2-e967-f21577a80913","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1715951768428}
13676,"e-9":{"id":"e-9","name":"","animationType":"custom","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-5","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-10"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"664b027037a9f506ff125a2a|333cd019-dd5e-4dab-7440-b0fdb3be39ca","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"664b027037a9f506ff125a2a|333cd019-dd5e-4dab-7440-b0fdb3be39ca","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1715954191768},"e-11":{"id":"e-11","name":"","animationType":"custom","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-5","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-12"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"664b027037a9f506ff125a2a|a3206eae-95a6-43e2-563e-6c4955b89df0","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"664b027037a9f506ff125a2a|a3206eae-95a6-43e2-563e-6c4955b89df0","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1715955846715},"e-13":{"id":"e-13","name":"","animationType":"custom","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-6","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-14"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"664b027037a9f506ff125a2a|ad7ee193-541a-cce8-4b31-18b2bad16231","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"664b027037a9f506ff125a2a|ad7ee193-541a-cce8-4b31-18b2bad16231","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1715958519485},"e-15":{"id":"e-15","name":"","animationType":"preset","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-8","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-16"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"664b027037a9f506ff125a2a|f6de4238-591b-5f18-a0d9-596aad8411bf","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"664b027037a9f506ff125a2a|f6de4238-591b-5f18-a0d9-596aad8411bf","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1715967740179},"e-17":{"id":"e-17","name":"","animationType":"preset","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-8","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-18"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"664b027037a9f506ff125a2a|f6de4238-591b-5f18-a0d9-596aad8411f8","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"664b027037a9f506ff125a2a|f6de4238-591b-5f18-a0d9-596aad8411f8","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1715967740179},"e-19":{"id":"e-19","name":"","animationType":"preset","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-8","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-20"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"664b027037a9f506ff125a2a|f6de4238-591b-5f18-a0d9-596aad841206","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"664b027037a9f506ff125a2a|f6de4238-591b-5f18-a0d9-596aad841206","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1715967740179},"e-21":{"id":"e-21","name":"","animationType":"custom","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-7","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-22"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"664b027037a9f506ff125a2a|9770f072-9910-f511-a5a9-6d4ccd01f68f","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"664b027037a9f506ff125a2a|9770f072-9910-f511-a5a9-6d4ccd01f68f","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1715972021649}
13676,"e-23":{"id":"e-23","name":"","animationType":"preset","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-6","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-24"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"664b027037a9f506ff125a2a|bb9db7c4-a819-51d6-91ca-4a4f73eb6509","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"664b027037a9f506ff125a2a|bb9db7c4-a819-51d6-91ca-4a4f73eb6509","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1716040896966},"e-25":{"id":"e-25","name":"","animationType":"custom","eventTypeId":"NAVBAR_OPEN","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-9","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-26"}},"mediaQueries":["main","medium","small","tiny"],"target":{"selector":".navbar","originalId":"664b027037a9f506ff125a2a|e41b95fc-eca1-76a1-0b86-6a8f82d64280","appliesTo":"CLASS"},"targets":[{"selector":".navbar","originalId":"664b027037a9f506ff125a2a|e41b95fc-eca1-76a1-0b86-6a8f82d64280","appliesTo":"CLASS"}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1716044724508},"e-26":{"id":"e-26","name":"","animationType":"custom","eventTypeId":"NAVBAR_CLOSE","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-10","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-25"}},"mediaQueries":["main","medium","small","tiny"],"target":{"selector":".navbar","originalId":"664b027037a9f506ff125a2a|e41b95fc-eca1-76a1-0b86-6a8f82d64280","appliesTo":"CLASS"},"targets":[{"selector":".navbar","originalId":"664b027037a9f506ff125a2a|e41b95fc-eca1-76a1-0b86-6a8f82d64280","appliesTo":"CLASS"}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1716044724510},"e-37":{"id":"e-37","name":"","animationType":"preset","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-6","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-38"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"66978dc29649cf4c761dca19|ad7ee193-541a-cce8-4b31-18b2bad16231","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"66978dc29649cf4c761dca19|ad7ee193-541a-cce8-4b31-18b2bad16231","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1721208260491},"e-47":{"id":"e-47","name":"","animationType":"preset","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-6","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-48"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"66978dc29649cf4c761dca19|bb9db7c4-a819-51d6-91ca-4a4f73eb6509","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"66978dc29649cf4c761dca19|bb9db7c4-a819-51d6-91ca-4a4f73eb6509","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1721208260491},"e-49":{"id":"e-49","name":"","animationType":"preset","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-4","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-50"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"669e50a3156a914a31a2c6d9|6e28bcf0-438a-76e2-5041-4d2637f9d216","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"669e50a3156a914a31a2c6d9|6e28bcf0-438a-76e2-5041-4d2637f9d216","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1721651363797},"e-51":{"id":"e-51","name":"","animationType":"preset","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-3","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-52"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"669e50a3156a914a31a2c6d9|56516ea1-9321-48ad-6fb7-015068b9a76d","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"669e50a3156a914a31a2c6d9|56516ea1-9321-48ad-6fb7-015068b9a76d","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1721651363797},"e-53":{"id":"e-53","name":"","animationType":"preset","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-5","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-54"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"669e50a3156a914a31a2c6d9|8dbda0c0-a3e9-17a2-e967-f21577a80913","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"669e50a3156a914a31a2c6d9|8dbda0c0-a3e9-17a2-e967-f21577a80913","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1721651363797},"e-55":{"id":"e-55","name":"","animationType":"preset","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-5","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-56"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"669e50a3156a914a31a2c6d9|333cd019-dd5e-4dab-7440-b0fdb3be39ca","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"669e50a3156a914a31a2c6d9|333cd019-dd5e-4dab-7440-b0fdb3be39ca","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1721651363797},"e-57":{"id":"e-57","name":"","animationType":"preset","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-5","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-58"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"669e50a3156a914a31a2c6d9|a3206eae-95a6-43e2-563e-6c4955b89df0","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"669e50a3156a914a31a2c6d9|a3206eae-95a6-43e2-563e-6c4955b89df0","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1721651363797},"e-59":{"id":"e-59","name":"","animationType":"preset","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-6","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-60"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"669e50a3156a914a31a2c6d9|ad7ee193-541a-cce8-4b31-18b2bad16231","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"669e50a3156a914a31a2c6d9|ad7ee193-541a-cce8-4b31-18b2bad16231","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1721651363797},"e-61":{"id":"e-61","name":"","animationType":"preset","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-8","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-62"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"669e50a3156a914a31a2c6d9|f6de4238-591b-5f18-a0d9-596aad8411bf","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"669e50a3156a914a31a2c6d9|f6de4238-591b-5f18-a0d9-596aad8411bf","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1721651363797},"e-63":{"id":"e-63","name":"","animationType":"preset","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-8","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-64"}}
13676,"mediaQueries":["main","medium","small","tiny"],"target":{"id":"669e50a3156a914a31a2c6d9|f6de4238-591b-5f18-a0d9-596aad8411f8","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"669e50a3156a914a31a2c6d9|f6de4238-591b-5f18-a0d9-596aad8411f8","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1721651363797},"e-65":{"id":"e-65","name":"","animationType":"preset","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-8","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-66"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"669e50a3156a914a31a2c6d9|f6de4238-591b-5f18-a0d9-596aad841206","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"669e50a3156a914a31a2c6d9|f6de4238-591b-5f18-a0d9-596aad841206","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1721651363797},"e-67":{"id":"e-67","name":"","animationType":"preset","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-7","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-68"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"669e50a3156a914a31a2c6d9|9770f072-9910-f511-a5a9-6d4ccd01f68f","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"669e50a3156a914a31a2c6d9|9770f072-9910-f511-a5a9-6d4ccd01f68f","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1721651363797},"e-69":{"id":"e-69","name":"","animationType":"preset","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-6","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-70"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"669e50a3156a914a31a2c6d9|bb9db7c4-a819-51d6-91ca-4a4f73eb6509","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"669e50a3156a914a31a2c6d9|bb9db7c4-a819-51d6-91ca-4a4f73eb6509","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1721651363797},"e-71":{"id":"e-71","name":"","animationType":"custom","eventTypeId":"PAGE_START","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-11","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-72"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"669e50a3156a914a31a2c6d9","appliesTo":"PAGE","styleBlockIds":[]},"targets":[{"id":"669e50a3156a914a31a2c6d9","appliesTo":"PAGE","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1721816232447},"e-73":{"id":"e-73","name":"","animationType":"custom","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-4","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-74"}},"mediaQueries":["main","medium","small","tiny"],"target":{"selector":".div-block-3","originalId":"669e50a3156a914a31a2c6d9|442cae5c-d294-26a1-306d-e71ecc1f2c84","appliesTo":"CLASS"},"targets":[{"selector":".div-block-3","originalId":"669e50a3156a914a31a2c6d9|442cae5c-d294-26a1-306d-e71ecc1f2c84","appliesTo":"CLASS"}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1722347547371},"e-75":{"id":"e-75","name":"","animationType":"preset","eventTypeId":"MOUSE_CLICK","action":{"id":"","actionTypeId":"GENERAL_START_ACTION","config":{"delay":0,"easing":"","duration":0,"actionListId":"a-7","affectedElements":{},"playInReverse":false,"autoStopEventId":"e-76"}},"mediaQueries":["main","medium","small","tiny"],"target":{"id":"664b027037a9f506ff125a2a|aa428cd0-054a-96b0-aaf8-2fe043698338","appliesTo":"ELEMENT","styleBlockIds":[]},"targets":[{"id":"664b027037a9f506ff125a2a|aa428cd0-054a-96b0-aaf8-2fe043698338","appliesTo":"ELEMENT","styleBlockIds":[]}],"config":{"loop":false,"playInReverse":false,"scrollOffsetValue":null,"scrollOffsetUnit":null,"delay":null,"direction":null,"effectIn":null},"createdOn":1724314750308}},"actionLists":{"a":{"id":"a","title":"Button Hover in","actionItemGroups":[{"actionItems":[{"id":"a-n","actionTypeId":"STYLE_SIZE","config":{"delay":0,"easing":"","duration":500,"target":{"useEventTarget":"CHILDREN","selector":".button-hover-show","selectorGuids":["8d2b7c00-8135-a211-b94a-4aa38501537b"]},"widthValue":12,"widthUnit":"rem","heightUnit":"PX","locked":false}}]},{"actionItems":[{"id":"a-n-2","actionTypeId":"STYLE_SIZE","config":{"delay":0,"easing":"ease","duration":500,"target":{"useEventTarget":"CHILDREN","selector":".button-hover-show","selectorGuids":["8d2b7c00-8135-a211-b94a-4aa38501537b"]},"widthUnit":"AUTO","heightUnit":"PX","locked":false}}]}],"useFirstGroupAsInitialState":true,"createdOn":1715936598519}
13676,"a-2":{"id":"a-2","title":"Button Hover out","actionItemGroups":[{"actionItems":[{"id":"a-2-n","actionTypeId":"STYLE_SIZE","config":{"delay":0,"easing":"ease","duration":500,"target":{"useEventTarget":"CHILDREN","selector":".button-hover-show","selectorGuids":["8d2b7c00-8135-a211-b94a-4aa38501537b"]},"widthValue":12,"widthUnit":"rem","heightUnit":"PX","locked":false}}]}],"useFirstGroupAsInitialState":false,"createdOn":1715936598519},"a-4":{"id":"a-4","title":"1440 opoup Hide","actionItemGroups":[{"actionItems":[{"id":"a-4-n","actionTypeId":"STYLE_OPACITY","config":{"delay":0,"easing":"ease","duration":500,"target":{"useEventTarget":"PARENT","selector":".popup-1440","selectorGuids":["736c267e-9897-98a3-c4a5-85b86e8724d1"]},"value":0,"unit":""}}]},{"actionItems":[{"id":"a-4-n-2","actionTypeId":"GENERAL_DISPLAY","config":{"delay":0,"easing":"","duration":0,"target":{"useEventTarget":"PARENT","selector":".popup-1440","selectorGuids":["736c267e-9897-98a3-c4a5-85b86e8724d1"]},"value":"none"}}]}],"useFirstGroupAsInitialState":false,"createdOn":1715949804421},"a-3":{"id":"a-3","title":"1440 opoup Show","actionItemGroups":[{"actionItems":[{"id":"a-3-n-3","actionTypeId":"GENERAL_DISPLAY","config":{"delay":0,"easing":"","duration":0,"target":{"selector":".popup-1440","selectorGuids":["736c267e-9897-98a3-c4a5-85b86e8724d1"]},"value":"none"}},{"id":"a-3-n-4","actionTypeId":"STYLE_OPACITY","config":{"delay":0,"easing":"","duration":500,"target":{"selector":".popup-1440","selectorGuids":["736c267e-9897-98a3-c4a5-85b86e8724d1"]},"value":0,"unit":""}}]},{"actionItems":[{"id":"a-3-n-2","actionTypeId":"GENERAL_DISPLAY","config":{"delay":0,"easing":"","duration":0,"target":{"selector":".popup-1440","selectorGuids":["736c267e-9897-98a3-c4a5-85b86e8724d1"]},"value":"block"}}]},{"actionItems":[{"id":"a-3-n","actionTypeId":"STYLE_OPACITY","config":{"delay":0,"easing":"ease","duration":500,"target":{"selector":".popup-1440","selectorGuids":["736c267e-9897-98a3-c4a5-85b86e8724d1"]},"value":1,"unit":""}}]}],"useFirstGroupAsInitialState":true,"createdOn":1715949804421},"a-5":{"id":"a-5","title":"Order popup Hide","actionItemGroups":[{"actionItems":[{"id":"a-5-n","actionTypeId":"STYLE_OPACITY","config":{"delay":0,"easing":"ease","duration":500,"target":{"useEventTarget":"PARENT","selector":".poup-order","selectorGuids":["d6785ac2-dbe0-1c30-1bcc-84354446f70f"]},"value":0,"unit":""}}]},{"actionItems":[{"id":"a-5-n-2","actionTypeId":"GENERAL_DISPLAY","config":{"delay":0,"easing":"","duration":0,"target":{"useEventTarget":"PARENT","selector":".poup-order","selectorGuids":["d6785ac2-dbe0-1c30-1bcc-84354446f70f"]},"value":"none"}}]}],"useFirstGroupAsInitialState":false,"createdOn":1715951791741},"a-6":{"id":"a-6","title":"Order popup Show","actionItemGroups":[{"actionItems":[{"id":"a-6-n-3","actionTypeId":"GENERAL_DISPLAY","config":{"delay":0,"easing":"","duration":0,"target":{"selector":".poup-order","selectorGuids":["d6785ac2-dbe0-1c30-1bcc-84354446f70f"]},"value":"none"}},{"id":"a-6-n-4","actionTypeId":"STYLE_OPACITY","config":{"delay":0,"easing":"","duration":500,"target":{"selector":".poup-order","selectorGuids":["d6785ac2-dbe0-1c30-1bcc-84354446f70f"]},"value":0,"unit":""}}]},{"actionItems":[{"id":"a-6-n-2","actionTypeId":"GENERAL_DISPLAY","config":{"delay":0,"easing":"","duration":0,"target":{"selector":".poup-order","selectorGuids":["d6785ac2-dbe0-1c30-1bcc-84354446f70f"]},"value":"block"}}]},{"actionItems":[{"id":"a-6-n","actionTypeId":"STYLE_OPACITY","config":{"delay":0,"easing":"ease","duration":500,"target":{"selector":".poup-order","selectorGuids":["d6785ac2-dbe0-1c30-1bcc-84354446f70f"]},"value":1,"unit":""}}]}],"useFirstGroupAsInitialState":true,"createdOn":1715951791741},"a-8":{"id":"a-8","title":"Team popup Hide","actionItemGroups":[{"actionItems":[{"id":"a-8-n","actionTypeId":"STYLE_OPACITY","config":{"delay":0,"easing":"ease","duration":500,"target":{"useEventTarget":"PARENT","selector":".poup-team","selectorGuids":["04f4cd4a-099c-bf38-c2f6-47d374225b7d"]},"value":0,"unit":""}}]},{"actionItems":[{"id":"a-8-n-2","actionTypeId":"GENERAL_DISPLAY","config":{"delay":0,"easing":"","duration":0,"target":{"useEventTarget":"PARENT","selector":".poup-team","selectorGuids":["04f4cd4a-099c-bf38-c2f6-47d374225b7d"]},"value":"none"}}]}],"useFirstGroupAsInitialState":false,"createdOn":1715951791741},"a-7":{"id":"a-7","title":"Team popup Show","actionItemGroups":[{"actionItems":[{"id":"a-7-n","actionTypeId":"GENERAL_DISPLAY","config":{"delay":0,"easing":"","duration":0,"target":{"selector":".poup-team","selectorGuids":["04f4cd4a-099c-bf38-c2f6-47d374225b7d"]},"value":"none"}},{"id":"a-7-n-2","actionTypeId":"STYLE_OPACITY","config":{"delay":0,"easing":"","duration":500,"target":{"selector":".poup-team","selectorGuids":["04f4cd4a-099c-bf38-c2f6-47d374225b7d"]},"value":0,"unit":""}}]},{"actionItems":[{"id":"a-7-n-3","actionTypeId":"GENERAL_DISPLAY","config":{"delay":0,"easing":"","duration":0,"target":{"selector":".poup-team","selectorGuids":["04f4cd4a-099c-bf38-c2f6-47d374225b7d"]},"value":"block"}}]},{"actionItems":[{"id":"a-7-n-4","actionTypeId":"STYLE_OPACITY","config":{"delay":0,"easing":"ease","duration":500,"target":{"selector":".poup-team","selectorGuids":["04f4cd4a-099c-bf38-c2f6-47d374225b7d"]},"value":1,"unit":""}}]}],"useFirstGroupAsInitialState":true,"createdOn":1715972049703},"a-9":{"id":"a-9","title":"Navbar Opens","actionItemGroups":[{"actionItems":[{"id":"a-9-n","actionTypeId":"STYLE_SIZE","config":{"delay":0,"easing":"","duration":500,"target":{"useEventTarget":"CHILDREN","selector":".burger-square1","selectorGuids":["fafa6e34-b59b-dde6-a4f6-17289a54dc2c"]},"widthValue":4,"heightValue":4,"widthUnit":"rem","heightUnit":"rem","locked":false}},{"id":"a-9-n-2","actionTypeId":"STYLE_SIZE","config":{"delay":0,"easing":"","duration":500,"target":{"useEventTarget":"CHILDREN","selector":".burger-square2","selectorGuids":["ee58b72a-2896-061d-733a-6ae2037b8c4d"]},"widthValue":4,"heightValue":4,"widthUnit":"rem","heightUnit":"rem","locked":false}},{"id":"a-9-n-3","actionTypeId":"STYLE_SIZE","config":{"delay":0,"easing":"","duration":500,"target":{"useEventTarget":"CHILDREN","selector":".burger-square3","selectorGuids":["e8d12d2d-6d3a-d89f-1d22-788c206844c4"]},"widthValue":4,"heightValue":4,"widthUnit":"rem","heightUnit":"rem","locked":false}},{"id":"a-9-n-4","actionTypeId":"STYLE_SIZE","config":{"delay":0,"easing":"","duration":500,"target":{"useEventTarget":"CHILDREN","selector":".burger-square4","selectorGuids":["3205d5e9-d311-2480-6f63-4729c7587172"]},"widthValue":4,"heightValue":4,"widthUnit":"rem","heightUnit":"rem","locked":false}},{"id":"a-9-n-16","actionTypeId":"STYLE_SIZE","config":{"delay":0,"easing":"","duration":500,"target":{"useEventTarget":"CHILDREN","selector":".burger","selectorGuids":["a22ad241-fd89-23b0-7c7a-19b972a007c8"]},"widthValue":16,"heightValue":16,"widthUnit":"rem","heightUnit":"rem","locked":false}}]},{"actionItems":[{"id":"a-9-n-9","actionTypeId":"STYLE_SIZE","config":{"delay":0,"easing":"ease","duration":400,"target":{"useEventTarget":"CHILDREN","selector":".burger-square1","selectorGuids":["fafa6e34-b59b-dde6-a4f6-17289a54dc2c"]},"widthValue":8,"heightValue":1,"widthUnit":"rem","heightUnit":"rem","locked":false}},{"id":"a-9-n-15","actionTypeId":"STYLE_SIZE","config":{"delay":0,"easing":"ease","duration":400,"target":{"useEventTarget":"CHILDREN","selector":".burger-square4","selectorGuids":["3205d5e9-d311-2480-6f63-4729c7587172"]},"widthValue":8,"heightValue":0,"widthUnit":"rem","heightUnit":"rem","locked":false}},{"id":"a-9-n-13","actionTypeId":"STYLE_SIZE","config":{"delay":0,"easing":"ease","duration":400,"target":{"useEventTarget":"CHILDREN","selector":".burger-square3","selectorGuids":["e8d12d2d-6d3a-d89f-1d22-788c206844c4"]},"widthValue":8,"heightValue":0,"widthUnit":"rem","heightUnit":"rem","locked":false}},{"id":"a-9-n-11","actionTypeId":"STYLE_SIZE","config":{"delay":0,"easing":"ease","duration":400,"target":{"useEventTarget":"CHILDREN","selector":".burger-square2","selectorGuids":["ee58b72a-2896-061d-733a-6ae2037b8c4d"]},"widthValue":8,"heightValue":1,"widthUnit":"rem","heightUnit":"rem","locked":false}},{"id":"a-9-n-17","actionTypeId":"STYLE_SIZE","config":{"delay":0,"easing":"ease","duration":400,"target":{"useEventTarget":"CHILDREN","selector":".burger","selectorGuids":["a22ad241-fd89-23b0-7c7a-19b972a007c8"]},"widthValue":16,"heightValue":1,"widthUnit":"rem","heightUnit":"rem","locked":false}}]}],"useFirstGroupAsInitialState":true,"createdOn":1716044734388},"a-10":{"id":"a-10","title":"Navbar Closes","actionItemGroups":[{"actionItems":[{"id":"a-10-n","actionTypeId":"STYLE_SIZE","config":{"delay":0,"easing":"ease","duration":400,"target":{"useEventTarget":"CHILDREN","selector":".burger-square1","selectorGuids":["fafa6e34-b59b-dde6-a4f6-17289a54dc2c"]},"widthValue":4,"heightValue":4,"widthUnit":"rem","heightUnit":"rem","locked":false}},{"id":"a-10-n-2","actionTypeId":"STYLE_SIZE","config":{"delay":0,"easing":"ease","duration":400,"target":{"useEventTarget":"CHILDREN","selector":".burger-square2","selectorGuids":["ee58b72a-2896-061d-733a-6ae2037b8c4d"]},"widthValue":4,"heightValue":4,"widthUnit":"rem","heightUnit":"rem","locked":false}},{"id":"a-10-n-3","actionTypeId":"STYLE_SIZE","config":{"delay":0,"easing":"ease","duration":400,"target":{"useEventTarget":"CHILDREN","selector":".burger-square3","selectorGuids":["e8d12d2d-6d3a-d89f-1d22-788c206844c4"]},"widthValue":4,"heightValue":4,"widthUnit":"rem","heightUnit":"rem","locked":false}},{"id":"a-10-n-4","actionTypeId":"STYLE_SIZE","config":{"delay":0,"easing":"ease","duration":400,"target":{"useEventTarget":"CHILDREN","selector":".burger-square4","selectorGuids":["3205d5e9-d311-2480-6f63-4729c7587172"]},"widthValue":4,"heightValue":4,"widthUnit":"rem","heightUnit":"rem","locked":false}},{"id":"a-10-n-5","actionTypeId":"STYLE_SIZE","config":{"delay":0,"easing":"ease","duration":400,"target":{"useEventTarget":"CHILDREN","selector":".burger","selectorGuids":["a22ad241-fd89-23b0-7c7a-19b972a007c8"]},"widthValue":16,"heightValue":16,"widthUnit":"rem","heightUnit":"rem","locked":false}}]}],"useFirstGroupAsInitialState":false,"createdOn":1716044734388},"a-11":{"id":"a-11","title":"load-img","actionItemGroups":[{"actionItems":[{"id":"a-11-n","actionTypeId":"TRANSFORM_SCALE","config":{"delay":0,"easing":"","duration":20000,"target":{"selector":".image-cover.hero-image","selectorGuids":["c89b4d7d-8b0c-b00c-6acb-d532f5d6377f","bd6ff17d-5fc9-c67c-cb9e-1249e736a2de"]},"xValue":1.2,"yValue":1.2,"locked":true}}]}],"useFirstGroupAsInitialState":false,"createdOn":1721816237306}},"site":{"mediaQueries":[{"key":"main","min":992,"max":10000},{"key":"medium","min":768,"max":991},{"key":"small","min":480,"max":767},{"key":"tiny","min":0,"max":479}]}} 13677);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.