PluginProbe
Elementor Website Builder – more than just a page builder / 3.35.0-dev2
Elementor Website Builder – more than just a page builder v3.35.0-dev2
4.3.2 4.3.1 4.3.0 4.3.0-beta3 4.3.0-beta2 4.3.0-beta1 4.2.4 4.2.3 4.2.2 4.2.1 4.2.0 4.1.5 4.2.0-beta2 4.2.0-dev2 4.2.0-beta1 4.1.4 4.1.3 4.1.2 4.1.1 4.1.0 4.1.0-beta3 4.1.0-dev3 4.0.9 4.1.0-beta2 4.1.0-dev2 All 455 releases
← All changes | assets/js/packages/alpinejs/alpinejs.js +2 -3642 4.3.0 → 3.35.0-dev2 View file →
@@ -1,3643 +1,3 @@
1 -(function() {
2 -
3 -//#region \0rolldown/runtime.js
4 - var __defProp = Object.defineProperty;
5 - var __name = (target, value) => __defProp(target, "name", {
6 - value,
7 - configurable: true
8 - });
9 - var __exportAll = (all, no_symbols) => {
10 - let target = {};
11 - for (var name in all) {
12 - __defProp(target, name, {
13 - get: all[name],
14 - enumerable: true
15 - });
16 - }
17 - if (!no_symbols) {
18 - __defProp(target, Symbol.toStringTag, { value: "Module" });
19 - }
20 - return target;
21 - };
22 -
23 -//#endregion
24 -
25 -//#region node_modules/@alpinejs/csp/dist/module.esm.js
26 - var flushPending = false;
27 - var flushing = false;
28 - var queue = [];
29 - var lastFlushedIndex = -1;
30 - function scheduler(callback) {
31 - queueJob(callback);
32 - }
33 - function queueJob(job) {
34 - if (!queue.includes(job)) queue.push(job);
35 - queueFlush();
36 - }
37 - function dequeueJob(job) {
38 - let index = queue.indexOf(job);
39 - if (index !== -1 && index > lastFlushedIndex) queue.splice(index, 1);
40 - }
41 - function queueFlush() {
42 - if (!flushing && !flushPending) {
43 - flushPending = true;
44 - queueMicrotask(flushJobs);
45 - }
46 - }
47 - function flushJobs() {
48 - flushPending = false;
49 - flushing = true;
50 - for (let i = 0; i < queue.length; i++) {
51 - queue[i]();
52 - lastFlushedIndex = i;
53 - }
54 - queue.length = 0;
55 - lastFlushedIndex = -1;
56 - flushing = false;
57 - }
58 - var reactive;
59 - var effect;
60 - var release;
61 - var raw;
62 - var shouldSchedule = true;
63 - function disableEffectScheduling(callback) {
64 - shouldSchedule = false;
65 - callback();
66 - shouldSchedule = true;
67 - }
68 - function setReactivityEngine(engine) {
69 - reactive = engine.reactive;
70 - release = engine.release;
71 - effect = (callback) => engine.effect(callback, { scheduler: (task) => {
72 - if (shouldSchedule) scheduler(task);
73 - else task();
74 - } });
75 - raw = engine.raw;
76 - }
77 - function overrideEffect(override) {
78 - effect = override;
79 - }
80 - function elementBoundEffect(el) {
81 - let cleanup2 = () => {};
82 - let wrappedEffect = (callback) => {
83 - let effectReference = effect(callback);
84 - if (!el._x_effects) {
85 - el._x_effects = /* @__PURE__ */ new Set();
86 - el._x_runEffects = () => {
87 - el._x_effects.forEach((i) => i());
88 - };
89 - }
90 - el._x_effects.add(effectReference);
91 - cleanup2 = () => {
92 - if (effectReference === void 0) return;
93 - el._x_effects.delete(effectReference);
94 - release(effectReference);
95 - };
96 - return effectReference;
97 - };
98 - return [wrappedEffect, () => {
99 - cleanup2();
100 - }];
101 - }
102 - function watch(getter, callback) {
103 - let firstTime = true;
104 - let oldValue;
105 - let effectReference = effect(() => {
106 - let value = getter();
107 - JSON.stringify(value);
108 - if (!firstTime) queueMicrotask(() => {
109 - callback(value, oldValue);
110 - oldValue = value;
111 - });
112 - else oldValue = value;
113 - firstTime = false;
114 - });
115 - return () => release(effectReference);
116 - }
117 - var onAttributeAddeds = [];
118 - var onElRemoveds = [];
119 - var onElAddeds = [];
120 - function onElAdded(callback) {
121 - onElAddeds.push(callback);
122 - }
123 - function onElRemoved(el, callback) {
124 - if (typeof callback === "function") {
125 - if (!el._x_cleanups) el._x_cleanups = [];
126 - el._x_cleanups.push(callback);
127 - } else {
128 - callback = el;
129 - onElRemoveds.push(callback);
130 - }
131 - }
132 - function onAttributesAdded(callback) {
133 - onAttributeAddeds.push(callback);
134 - }
135 - function onAttributeRemoved(el, name, callback) {
136 - if (!el._x_attributeCleanups) el._x_attributeCleanups = {};
137 - if (!el._x_attributeCleanups[name]) el._x_attributeCleanups[name] = [];
138 - el._x_attributeCleanups[name].push(callback);
139 - }
140 - function cleanupAttributes(el, names) {
141 - if (!el._x_attributeCleanups) return;
142 - Object.entries(el._x_attributeCleanups).forEach(([name, value]) => {
143 - if (names === void 0 || names.includes(name)) {
144 - value.forEach((i) => i());
145 - delete el._x_attributeCleanups[name];
146 - }
147 - });
148 - }
149 - function cleanupElement(el) {
150 - el._x_effects?.forEach(dequeueJob);
151 - while (el._x_cleanups?.length) el._x_cleanups.pop()();
152 - }
153 - var observer = new MutationObserver(onMutate);
154 - var currentlyObserving = false;
155 - function startObservingMutations() {
156 - observer.observe(document, {
157 - subtree: true,
158 - childList: true,
159 - attributes: true,
160 - attributeOldValue: true
161 - });
162 - currentlyObserving = true;
163 - }
164 - function stopObservingMutations() {
165 - flushObserver();
166 - observer.disconnect();
167 - currentlyObserving = false;
168 - }
169 - var queuedMutations = [];
170 - function flushObserver() {
171 - let records = observer.takeRecords();
172 - queuedMutations.push(() => records.length > 0 && onMutate(records));
173 - let queueLengthWhenTriggered = queuedMutations.length;
174 - queueMicrotask(() => {
175 - if (queuedMutations.length === queueLengthWhenTriggered) while (queuedMutations.length > 0) queuedMutations.shift()();
176 - });
177 - }
178 - function mutateDom(callback) {
179 - if (!currentlyObserving) return callback();
180 - stopObservingMutations();
181 - let result = callback();
182 - startObservingMutations();
183 - return result;
184 - }
185 - var isCollecting = false;
186 - var deferredMutations = [];
187 - function deferMutations() {
188 - isCollecting = true;
189 - }
190 - function flushAndStopDeferringMutations() {
191 - isCollecting = false;
192 - onMutate(deferredMutations);
193 - deferredMutations = [];
194 - }
195 - function onMutate(mutations) {
196 - if (isCollecting) {
197 - deferredMutations = deferredMutations.concat(mutations);
198 - return;
199 - }
200 - let addedNodes = [];
201 - let removedNodes = /* @__PURE__ */ new Set();
202 - let addedAttributes = /* @__PURE__ */ new Map();
203 - let removedAttributes = /* @__PURE__ */ new Map();
204 - for (let i = 0; i < mutations.length; i++) {
205 - if (mutations[i].target._x_ignoreMutationObserver) continue;
206 - if (mutations[i].type === "childList") {
207 - mutations[i].removedNodes.forEach((node) => {
208 - if (node.nodeType !== 1) return;
209 - if (!node._x_marker) return;
210 - removedNodes.add(node);
211 - });
212 - mutations[i].addedNodes.forEach((node) => {
213 - if (node.nodeType !== 1) return;
214 - if (removedNodes.has(node)) {
215 - removedNodes.delete(node);
216 - return;
217 - }
218 - if (node._x_marker) return;
219 - addedNodes.push(node);
220 - });
221 - }
222 - if (mutations[i].type === "attributes") {
223 - let el = mutations[i].target;
224 - let name = mutations[i].attributeName;
225 - let oldValue = mutations[i].oldValue;
226 - let add2 = () => {
227 - if (!addedAttributes.has(el)) addedAttributes.set(el, []);
228 - addedAttributes.get(el).push({
229 - name,
230 - value: el.getAttribute(name)
231 - });
232 - };
233 - let remove = () => {
234 - if (!removedAttributes.has(el)) removedAttributes.set(el, []);
235 - removedAttributes.get(el).push(name);
236 - };
237 - if (el.hasAttribute(name) && oldValue === null) add2();
238 - else if (el.hasAttribute(name)) {
239 - remove();
240 - add2();
241 - } else remove();
242 - }
243 - }
244 - removedAttributes.forEach((attrs, el) => {
245 - cleanupAttributes(el, attrs);
246 - });
247 - addedAttributes.forEach((attrs, el) => {
248 - onAttributeAddeds.forEach((i) => i(el, attrs));
249 - });
250 - for (let node of removedNodes) {
251 - if (addedNodes.some((i) => i.contains(node))) continue;
252 - onElRemoveds.forEach((i) => i(node));
253 - }
254 - for (let node of addedNodes) {
255 - if (!node.isConnected) continue;
256 - onElAddeds.forEach((i) => i(node));
257 - }
258 - addedNodes = null;
259 - removedNodes = null;
260 - addedAttributes = null;
261 - removedAttributes = null;
262 - }
263 - function scope(node) {
264 - return mergeProxies(closestDataStack(node));
265 - }
266 - function addScopeToNode(node, data2, referenceNode) {
267 - node._x_dataStack = [data2, ...closestDataStack(referenceNode || node)];
268 - return () => {
269 - node._x_dataStack = node._x_dataStack.filter((i) => i !== data2);
270 - };
271 - }
272 - function closestDataStack(node) {
273 - if (node._x_dataStack) return node._x_dataStack;
274 - if (typeof ShadowRoot === "function" && node instanceof ShadowRoot) return closestDataStack(node.host);
275 - if (!node.parentNode) return [];
276 - return closestDataStack(node.parentNode);
277 - }
278 - function mergeProxies(objects) {
279 - return new Proxy({ objects }, mergeProxyTrap);
280 - }
281 - var mergeProxyTrap = {
282 - ownKeys({ objects }) {
283 - return Array.from(new Set(objects.flatMap((i) => Object.keys(i))));
284 - },
285 - has({ objects }, name) {
286 - if (name == Symbol.unscopables) return false;
287 - return objects.some((obj) => Object.prototype.hasOwnProperty.call(obj, name) || Reflect.has(obj, name));
288 - },
289 - get({ objects }, name, thisProxy) {
290 - if (name == "toJSON") return collapseProxies;
291 - return Reflect.get(objects.find((obj) => Reflect.has(obj, name)) || {}, name, thisProxy);
292 - },
293 - set({ objects }, name, value, thisProxy) {
294 - const target = objects.find((obj) => Object.prototype.hasOwnProperty.call(obj, name)) || objects[objects.length - 1];
295 - const descriptor = Object.getOwnPropertyDescriptor(target, name);
296 - if (descriptor?.set && descriptor?.get) return descriptor.set.call(thisProxy, value) || true;
297 - return Reflect.set(target, name, value);
298 - }
299 - };
300 - function collapseProxies() {
301 - return Reflect.ownKeys(this).reduce((acc, key) => {
302 - acc[key] = Reflect.get(this, key);
303 - return acc;
304 - }, {});
305 - }
306 - function initInterceptors(data2) {
307 - let isObject2 = (val) => typeof val === "object" && !Array.isArray(val) && val !== null;
308 - let recurse = (obj, basePath = "") => {
309 - Object.entries(Object.getOwnPropertyDescriptors(obj)).forEach(([key, { value, enumerable }]) => {
310 - if (enumerable === false || value === void 0) return;
311 - if (typeof value === "object" && value !== null && value.__v_skip) return;
312 - let path = basePath === "" ? key : `${basePath}.${key}`;
313 - if (typeof value === "object" && value !== null && value._x_interceptor) obj[key] = value.initialize(data2, path, key);
314 - else if (isObject2(value) && value !== obj && !(value instanceof Element)) recurse(value, path);
315 - });
316 - };
317 - return recurse(data2);
318 - }
319 - function interceptor(callback, mutateObj = () => {}) {
320 - let obj = {
321 - initialValue: void 0,
322 - _x_interceptor: true,
323 - initialize(data2, path, key) {
324 - return callback(this.initialValue, () => get(data2, path), (value) => set(data2, path, value), path, key);
325 - }
326 - };
327 - mutateObj(obj);
328 - return (initialValue) => {
329 - if (typeof initialValue === "object" && initialValue !== null && initialValue._x_interceptor) {
330 - let initialize = obj.initialize.bind(obj);
331 - obj.initialize = (data2, path, key) => {
332 - let innerValue = initialValue.initialize(data2, path, key);
333 - obj.initialValue = innerValue;
334 - return initialize(data2, path, key);
335 - };
336 - } else obj.initialValue = initialValue;
337 - return obj;
338 - };
339 - }
340 - function get(obj, path) {
341 - return path.split(".").reduce((carry, segment) => carry[segment], obj);
342 - }
343 - function set(obj, path, value) {
344 - if (typeof path === "string") path = path.split(".");
345 - if (path.length === 1) obj[path[0]] = value;
346 - else if (path.length === 0) throw error;
347 - else if (obj[path[0]]) return set(obj[path[0]], path.slice(1), value);
348 - else {
349 - obj[path[0]] = {};
350 - return set(obj[path[0]], path.slice(1), value);
351 - }
352 - }
353 - var magics = {};
354 - function magic(name, callback) {
355 - magics[name] = callback;
356 - }
357 - function injectMagics(obj, el) {
358 - let memoizedUtilities = getUtilities(el);
359 - Object.entries(magics).forEach(([name, callback]) => {
360 - Object.defineProperty(obj, `$${name}`, {
361 - get() {
362 - return callback(el, memoizedUtilities);
363 - },
364 - enumerable: false
365 - });
366 - });
367 - return obj;
368 - }
369 - function getUtilities(el) {
370 - let [utilities, cleanup2] = getElementBoundUtilities(el);
371 - let utils = {
372 - interceptor,
373 - ...utilities
374 - };
375 - onElRemoved(el, cleanup2);
376 - return utils;
377 - }
378 - function tryCatch(el, expression, callback, ...args) {
379 - try {
380 - return callback(...args);
381 - } catch (e) {
382 - handleError(e, el, expression);
383 - }
384 - }
385 - function handleError(error2, el, expression = void 0) {
386 - error2 = Object.assign(error2 ?? { message: "No error message given." }, {
387 - el,
388 - expression
389 - });
390 - console.warn(`Alpine Expression Error: ${error2.message}
391 -
392 -${expression ? "Expression: \"" + expression + "\"\n\n" : ""}`, el);
393 - setTimeout(() => {
394 - throw error2;
395 - }, 0);
396 - }
397 - var shouldAutoEvaluateFunctions = true;
398 - function dontAutoEvaluateFunctions(callback) {
399 - let cache = shouldAutoEvaluateFunctions;
400 - shouldAutoEvaluateFunctions = false;
401 - let result = callback();
402 - shouldAutoEvaluateFunctions = cache;
403 - return result;
404 - }
405 - function evaluate(el, expression, extras = {}) {
406 - let result;
407 - evaluateLater(el, expression)((value) => result = value, extras);
408 - return result;
409 - }
410 - function evaluateLater(...args) {
411 - return theEvaluatorFunction(...args);
412 - }
413 - var theEvaluatorFunction = normalEvaluator;
414 - function setEvaluator(newEvaluator) {
415 - theEvaluatorFunction = newEvaluator;
416 - }
417 - function normalEvaluator(el, expression) {
418 - let overriddenMagics = {};
419 - injectMagics(overriddenMagics, el);
420 - let dataStack = [overriddenMagics, ...closestDataStack(el)];
421 - let evaluator = typeof expression === "function" ? generateEvaluatorFromFunction(dataStack, expression) : generateEvaluatorFromString(dataStack, expression, el);
422 - return tryCatch.bind(null, el, expression, evaluator);
423 - }
424 - function generateEvaluatorFromFunction(dataStack, func) {
425 - return (receiver = () => {}, { scope: scope2 = {}, params = [], context } = {}) => {
426 - runIfTypeOfFunction(receiver, func.apply(mergeProxies([scope2, ...dataStack]), params));
427 - };
428 - }
429 - var evaluatorMemo = {};
430 - function generateFunctionFromString(expression, el) {
431 - if (evaluatorMemo[expression]) return evaluatorMemo[expression];
432 - let AsyncFunction = Object.getPrototypeOf(async function() {}).constructor;
433 - let rightSideSafeExpression = /^[\n\s]*if.*\(.*\)/.test(expression.trim()) || /^(let|const)\s/.test(expression.trim()) ? `(async()=>{ ${expression} })()` : expression;
434 - const safeAsyncFunction = () => {
435 - try {
436 - let func2 = new AsyncFunction(["__self", "scope"], `with (scope) { __self.result = ${rightSideSafeExpression} }; __self.finished = true; return __self.result;`);
437 - Object.defineProperty(func2, "name", { value: `[Alpine] ${expression}` });
438 - return func2;
439 - } catch (error2) {
440 - handleError(error2, el, expression);
441 - return Promise.resolve();
442 - }
443 - };
444 - let func = safeAsyncFunction();
445 - evaluatorMemo[expression] = func;
446 - return func;
447 - }
448 - function generateEvaluatorFromString(dataStack, expression, el) {
449 - let func = generateFunctionFromString(expression, el);
450 - return (receiver = () => {}, { scope: scope2 = {}, params = [], context } = {}) => {
451 - func.result = void 0;
452 - func.finished = false;
453 - let completeScope = mergeProxies([scope2, ...dataStack]);
454 - if (typeof func === "function") {
455 - let promise = func.call(context, func, completeScope).catch((error2) => handleError(error2, el, expression));
456 - if (func.finished) {
457 - runIfTypeOfFunction(receiver, func.result, completeScope, params, el);
458 - func.result = void 0;
459 - } else promise.then((result) => {
460 - runIfTypeOfFunction(receiver, result, completeScope, params, el);
461 - }).catch((error2) => handleError(error2, el, expression)).finally(() => func.result = void 0);
462 - }
463 - };
464 - }
465 - function runIfTypeOfFunction(receiver, value, scope2, params, el) {
466 - if (shouldAutoEvaluateFunctions && typeof value === "function") {
467 - let result = value.apply(scope2, params);
468 - if (result instanceof Promise) result.then((i) => runIfTypeOfFunction(receiver, i, scope2, params)).catch((error2) => handleError(error2, el, value));
469 - else receiver(result);
470 - } else if (typeof value === "object" && value instanceof Promise) value.then((i) => receiver(i));
471 - else receiver(value);
472 - }
473 - var prefixAsString = "x-";
474 - function prefix(subject = "") {
475 - return prefixAsString + subject;
476 - }
477 - function setPrefix(newPrefix) {
478 - prefixAsString = newPrefix;
479 - }
480 - var directiveHandlers = {};
481 - function directive(name, callback) {
482 - directiveHandlers[name] = callback;
483 - return { before(directive2) {
484 - if (!directiveHandlers[directive2]) {
485 - console.warn(String.raw`Cannot find directive \`${directive2}\`. \`${name}\` will use the default order of execution`);
486 - return;
487 - }
488 - const pos = directiveOrder.indexOf(directive2);
489 - directiveOrder.splice(pos >= 0 ? pos : directiveOrder.indexOf("DEFAULT"), 0, name);
490 - } };
491 - }
492 - function directiveExists(name) {
493 - return Object.keys(directiveHandlers).includes(name);
494 - }
495 - function directives(el, attributes, originalAttributeOverride) {
496 - attributes = Array.from(attributes);
497 - if (el._x_virtualDirectives) {
498 - let vAttributes = Object.entries(el._x_virtualDirectives).map(([name, value]) => ({
499 - name,
500 - value
501 - }));
502 - let staticAttributes = attributesOnly(vAttributes);
503 - vAttributes = vAttributes.map((attribute) => {
504 - if (staticAttributes.find((attr) => attr.name === attribute.name)) return {
505 - name: `x-bind:${attribute.name}`,
506 - value: `"${attribute.value}"`
507 - };
508 - return attribute;
509 - });
510 - attributes = attributes.concat(vAttributes);
511 - }
512 - let transformedAttributeMap = {};
513 - return attributes.map(toTransformedAttributes((newName, oldName) => transformedAttributeMap[newName] = oldName)).filter(outNonAlpineAttributes).map(toParsedDirectives(transformedAttributeMap, originalAttributeOverride)).sort(byPriority).map((directive2) => {
514 - return getDirectiveHandler(el, directive2);
515 - });
516 - }
517 - function attributesOnly(attributes) {
518 - return Array.from(attributes).map(toTransformedAttributes()).filter((attr) => !outNonAlpineAttributes(attr));
519 - }
520 - var isDeferringHandlers = false;
521 - var directiveHandlerStacks = /* @__PURE__ */ new Map();
522 - var currentHandlerStackKey = Symbol();
523 - function deferHandlingDirectives(callback) {
524 - isDeferringHandlers = true;
525 - let key = Symbol();
526 - currentHandlerStackKey = key;
527 - directiveHandlerStacks.set(key, []);
528 - let flushHandlers = () => {
529 - while (directiveHandlerStacks.get(key).length) directiveHandlerStacks.get(key).shift()();
530 - directiveHandlerStacks.delete(key);
531 - };
532 - let stopDeferring = () => {
533 - isDeferringHandlers = false;
534 - flushHandlers();
535 - };
536 - callback(flushHandlers);
537 - stopDeferring();
538 - }
539 - function getElementBoundUtilities(el) {
540 - let cleanups = [];
541 - let cleanup2 = (callback) => cleanups.push(callback);
542 - let [effect3, cleanupEffect] = elementBoundEffect(el);
543 - cleanups.push(cleanupEffect);
544 - let utilities = {
545 - Alpine: alpine_default,
546 - effect: effect3,
547 - cleanup: cleanup2,
548 - evaluateLater: evaluateLater.bind(evaluateLater, el),
549 - evaluate: evaluate.bind(evaluate, el)
550 - };
551 - let doCleanup = () => cleanups.forEach((i) => i());
552 - return [utilities, doCleanup];
553 - }
554 - function getDirectiveHandler(el, directive2) {
555 - let noop = () => {};
556 - let handler4 = directiveHandlers[directive2.type] || noop;
557 - let [utilities, cleanup2] = getElementBoundUtilities(el);
558 - onAttributeRemoved(el, directive2.original, cleanup2);
559 - let fullHandler = () => {
560 - if (el._x_ignore || el._x_ignoreSelf) return;
561 - handler4.inline && handler4.inline(el, directive2, utilities);
562 - handler4 = handler4.bind(handler4, el, directive2, utilities);
563 - isDeferringHandlers ? directiveHandlerStacks.get(currentHandlerStackKey).push(handler4) : handler4();
564 - };
565 - fullHandler.runCleanups = cleanup2;
566 - return fullHandler;
567 - }
568 - var startingWith = (subject, replacement) => ({ name, value }) => {
569 - if (name.startsWith(subject)) name = name.replace(subject, replacement);
570 - return {
571 - name,
572 - value
573 - };
574 - };
575 - var into = (i) => i;
576 - function toTransformedAttributes(callback = () => {}) {
577 - return ({ name, value }) => {
578 - let { name: newName, value: newValue } = attributeTransformers.reduce((carry, transform) => {
579 - return transform(carry);
580 - }, {
581 - name,
582 - value
583 - });
584 - if (newName !== name) callback(newName, name);
585 - return {
586 - name: newName,
587 - value: newValue
588 - };
589 - };
590 - }
591 - var attributeTransformers = [];
592 - function mapAttributes(callback) {
593 - attributeTransformers.push(callback);
594 - }
595 - function outNonAlpineAttributes({ name }) {
596 - return alpineAttributeRegex().test(name);
597 - }
598 - var alpineAttributeRegex = () => new RegExp(`^${prefixAsString}([^:^.]+)\\b`);
599 - function toParsedDirectives(transformedAttributeMap, originalAttributeOverride) {
600 - return ({ name, value }) => {
601 - let typeMatch = name.match(alpineAttributeRegex());
602 - let valueMatch = name.match(/:([a-zA-Z0-9\-_:]+)/);
603 - let modifiers = name.match(/\.[^.\]]+(?=[^\]]*$)/g) || [];
604 - let original = originalAttributeOverride || transformedAttributeMap[name] || name;
605 - return {
606 - type: typeMatch ? typeMatch[1] : null,
607 - value: valueMatch ? valueMatch[1] : null,
608 - modifiers: modifiers.map((i) => i.replace(".", "")),
609 - expression: value,
610 - original
611 - };
612 - };
613 - }
614 - var DEFAULT = "DEFAULT";
615 - var directiveOrder = [
616 - "ignore",
617 - "ref",
618 - "data",
619 - "id",
620 - "anchor",
621 - "bind",
622 - "init",
623 - "for",
624 - "model",
625 - "modelable",
626 - "transition",
627 - "show",
628 - "if",
629 - DEFAULT,
630 - "teleport"
631 - ];
632 - function byPriority(a, b) {
633 - let typeA = directiveOrder.indexOf(a.type) === -1 ? DEFAULT : a.type;
634 - let typeB = directiveOrder.indexOf(b.type) === -1 ? DEFAULT : b.type;
635 - return directiveOrder.indexOf(typeA) - directiveOrder.indexOf(typeB);
636 - }
637 - function dispatch(el, name, detail = {}) {
638 - el.dispatchEvent(new CustomEvent(name, {
639 - detail,
640 - bubbles: true,
641 - composed: true,
642 - cancelable: true
643 - }));
644 - }
645 - function walk(el, callback) {
646 - if (typeof ShadowRoot === "function" && el instanceof ShadowRoot) {
647 - Array.from(el.children).forEach((el2) => walk(el2, callback));
648 - return;
649 - }
650 - let skip = false;
651 - callback(el, () => skip = true);
652 - if (skip) return;
653 - let node = el.firstElementChild;
654 - while (node) {
655 - walk(node, callback, false);
656 - node = node.nextElementSibling;
657 - }
658 - }
659 - function warn(message, ...args) {
660 - console.warn(`Alpine Warning: ${message}`, ...args);
661 - }
662 - var started = false;
663 - function start() {
664 - if (started) warn("Alpine has already been initialized on this page. Calling Alpine.start() more than once can cause problems.");
665 - started = true;
666 - if (!document.body) warn("Unable to initialize. Trying to load Alpine before `<body>` is available. Did you forget to add `defer` in Alpine's `<script>` tag?");
667 - dispatch(document, "alpine:init");
668 - dispatch(document, "alpine:initializing");
669 - startObservingMutations();
670 - onElAdded((el) => initTree(el, walk));
671 - onElRemoved((el) => destroyTree(el));
672 - onAttributesAdded((el, attrs) => {
673 - directives(el, attrs).forEach((handle) => handle());
674 - });
675 - let outNestedComponents = (el) => !closestRoot(el.parentElement, true);
676 - Array.from(document.querySelectorAll(allSelectors().join(","))).filter(outNestedComponents).forEach((el) => {
677 - initTree(el);
678 - });
679 - dispatch(document, "alpine:initialized");
680 - setTimeout(() => {
681 - warnAboutMissingPlugins();
682 - });
683 - }
684 - var rootSelectorCallbacks = [];
685 - var initSelectorCallbacks = [];
686 - function rootSelectors() {
687 - return rootSelectorCallbacks.map((fn) => fn());
688 - }
689 - function allSelectors() {
690 - return rootSelectorCallbacks.concat(initSelectorCallbacks).map((fn) => fn());
691 - }
692 - function addRootSelector(selectorCallback) {
693 - rootSelectorCallbacks.push(selectorCallback);
694 - }
695 - function addInitSelector(selectorCallback) {
696 - initSelectorCallbacks.push(selectorCallback);
697 - }
698 - function closestRoot(el, includeInitSelectors = false) {
699 - return findClosest(el, (element) => {
700 - if ((includeInitSelectors ? allSelectors() : rootSelectors()).some((selector) => element.matches(selector))) return true;
701 - });
702 - }
703 - function findClosest(el, callback) {
704 - if (!el) return;
705 - if (callback(el)) return el;
706 - if (el._x_teleportBack) el = el._x_teleportBack;
707 - if (!el.parentElement) return;
708 - return findClosest(el.parentElement, callback);
709 - }
710 - function isRoot(el) {
711 - return rootSelectors().some((selector) => el.matches(selector));
712 - }
713 - var initInterceptors2 = [];
714 - function interceptInit(callback) {
715 - initInterceptors2.push(callback);
716 - }
717 - var markerDispenser = 1;
718 - function initTree(el, walker = walk, intercept = () => {}) {
719 - if (findClosest(el, (i) => i._x_ignore)) return;
720 - deferHandlingDirectives(() => {
721 - walker(el, (el2, skip) => {
722 - if (el2._x_marker) return;
723 - intercept(el2, skip);
724 - initInterceptors2.forEach((i) => i(el2, skip));
725 - directives(el2, el2.attributes).forEach((handle) => handle());
726 - if (!el2._x_ignore) el2._x_marker = markerDispenser++;
727 - el2._x_ignore && skip();
728 - });
729 - });
730 - }
731 - function destroyTree(root, walker = walk) {
732 - walker(root, (el) => {
733 - cleanupElement(el);
734 - cleanupAttributes(el);
735 - delete el._x_marker;
736 - });
737 - }
738 - function warnAboutMissingPlugins() {
739 - [
740 - [
741 - "ui",
742 - "dialog",
743 - ["[x-dialog], [x-popover]"]
744 - ],
745 - [
746 - "anchor",
747 - "anchor",
748 - ["[x-anchor]"]
749 - ],
750 - [
751 - "sort",
752 - "sort",
753 - ["[x-sort]"]
754 - ]
755 - ].forEach(([plugin2, directive2, selectors]) => {
756 - if (directiveExists(directive2)) return;
757 - selectors.some((selector) => {
758 - if (document.querySelector(selector)) {
759 - warn(`found "${selector}", but missing ${plugin2} plugin`);
760 - return true;
761 - }
762 - });
763 - });
764 - }
765 - var tickStack = [];
766 - var isHolding = false;
767 - function nextTick(callback = () => {}) {
768 - queueMicrotask(() => {
769 - isHolding || setTimeout(() => {
770 - releaseNextTicks();
771 - });
772 - });
773 - return new Promise((res) => {
774 - tickStack.push(() => {
775 - callback();
776 - res();
777 - });
778 - });
779 - }
780 - function releaseNextTicks() {
781 - isHolding = false;
782 - while (tickStack.length) tickStack.shift()();
783 - }
784 - function holdNextTicks() {
785 - isHolding = true;
786 - }
787 - function setClasses(el, value) {
788 - if (Array.isArray(value)) return setClassesFromString(el, value.join(" "));
789 - else if (typeof value === "object" && value !== null) return setClassesFromObject(el, value);
790 - else if (typeof value === "function") return setClasses(el, value());
791 - return setClassesFromString(el, value);
792 - }
793 - function setClassesFromString(el, classString) {
794 - let missingClasses = (classString2) => classString2.split(" ").filter((i) => !el.classList.contains(i)).filter(Boolean);
795 - let addClassesAndReturnUndo = (classes) => {
796 - el.classList.add(...classes);
797 - return () => {
798 - el.classList.remove(...classes);
799 - };
800 - };
801 - classString = classString === true ? classString = "" : classString || "";
802 - return addClassesAndReturnUndo(missingClasses(classString));
803 - }
804 - function setClassesFromObject(el, classObject) {
805 - let split = (classString) => classString.split(" ").filter(Boolean);
806 - let forAdd = Object.entries(classObject).flatMap(([classString, bool]) => bool ? split(classString) : false).filter(Boolean);
807 - let forRemove = Object.entries(classObject).flatMap(([classString, bool]) => !bool ? split(classString) : false).filter(Boolean);
808 - let added = [];
809 - let removed = [];
810 - forRemove.forEach((i) => {
811 - if (el.classList.contains(i)) {
812 - el.classList.remove(i);
813 - removed.push(i);
814 - }
815 - });
816 - forAdd.forEach((i) => {
817 - if (!el.classList.contains(i)) {
818 - el.classList.add(i);
819 - added.push(i);
820 - }
821 - });
822 - return () => {
823 - removed.forEach((i) => el.classList.add(i));
824 - added.forEach((i) => el.classList.remove(i));
825 - };
826 - }
827 - function setStyles(el, value) {
828 - if (typeof value === "object" && value !== null) return setStylesFromObject(el, value);
829 - return setStylesFromString(el, value);
830 - }
831 - function setStylesFromObject(el, value) {
832 - let previousStyles = {};
833 - Object.entries(value).forEach(([key, value2]) => {
834 - previousStyles[key] = el.style[key];
835 - if (!key.startsWith("--")) key = kebabCase(key);
836 - el.style.setProperty(key, value2);
837 - });
838 - setTimeout(() => {
839 - if (el.style.length === 0) el.removeAttribute("style");
840 - });
841 - return () => {
842 - setStyles(el, previousStyles);
843 - };
844 - }
845 - function setStylesFromString(el, value) {
846 - let cache = el.getAttribute("style", value);
847 - el.setAttribute("style", value);
848 - return () => {
849 - el.setAttribute("style", cache || "");
850 - };
851 - }
852 - function kebabCase(subject) {
853 - return subject.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase();
854 - }
855 - function once(callback, fallback = () => {}) {
856 - let called = false;
857 - return function() {
858 - if (!called) {
859 - called = true;
860 - callback.apply(this, arguments);
861 - } else fallback.apply(this, arguments);
862 - };
863 - }
864 - directive("transition", (el, { value, modifiers, expression }, { evaluate: evaluate2 }) => {
865 - if (typeof expression === "function") expression = evaluate2(expression);
866 - if (expression === false) return;
867 - if (!expression || typeof expression === "boolean") registerTransitionsFromHelper(el, modifiers, value);
868 - else registerTransitionsFromClassString(el, expression, value);
869 - });
870 - function registerTransitionsFromClassString(el, classString, stage) {
871 - registerTransitionObject(el, setClasses, "");
872 - ({
873 - "enter": (classes) => {
874 - el._x_transition.enter.during = classes;
875 - },
876 - "enter-start": (classes) => {
877 - el._x_transition.enter.start = classes;
878 - },
879 - "enter-end": (classes) => {
880 - el._x_transition.enter.end = classes;
881 - },
882 - "leave": (classes) => {
883 - el._x_transition.leave.during = classes;
884 - },
885 - "leave-start": (classes) => {
886 - el._x_transition.leave.start = classes;
887 - },
888 - "leave-end": (classes) => {
889 - el._x_transition.leave.end = classes;
890 - }
891 - })[stage](classString);
892 - }
893 - function registerTransitionsFromHelper(el, modifiers, stage) {
894 - registerTransitionObject(el, setStyles);
895 - let doesntSpecify = !modifiers.includes("in") && !modifiers.includes("out") && !stage;
896 - let transitioningIn = doesntSpecify || modifiers.includes("in") || ["enter"].includes(stage);
897 - let transitioningOut = doesntSpecify || modifiers.includes("out") || ["leave"].includes(stage);
898 - if (modifiers.includes("in") && !doesntSpecify) modifiers = modifiers.filter((i, index) => index < modifiers.indexOf("out"));
899 - if (modifiers.includes("out") && !doesntSpecify) modifiers = modifiers.filter((i, index) => index > modifiers.indexOf("out"));
900 - let wantsAll = !modifiers.includes("opacity") && !modifiers.includes("scale");
901 - let wantsOpacity = wantsAll || modifiers.includes("opacity");
902 - let wantsScale = wantsAll || modifiers.includes("scale");
903 - let opacityValue = wantsOpacity ? 0 : 1;
904 - let scaleValue = wantsScale ? modifierValue(modifiers, "scale", 95) / 100 : 1;
905 - let delay = modifierValue(modifiers, "delay", 0) / 1e3;
906 - let origin = modifierValue(modifiers, "origin", "center");
907 - let property = "opacity, transform";
908 - let durationIn = modifierValue(modifiers, "duration", 150) / 1e3;
909 - let durationOut = modifierValue(modifiers, "duration", 75) / 1e3;
910 - let easing = `cubic-bezier(0.4, 0.0, 0.2, 1)`;
911 - if (transitioningIn) {
912 - el._x_transition.enter.during = {
913 - transformOrigin: origin,
914 - transitionDelay: `${delay}s`,
915 - transitionProperty: property,
916 - transitionDuration: `${durationIn}s`,
917 - transitionTimingFunction: easing
918 - };
919 - el._x_transition.enter.start = {
920 - opacity: opacityValue,
921 - transform: `scale(${scaleValue})`
922 - };
923 - el._x_transition.enter.end = {
924 - opacity: 1,
925 - transform: `scale(1)`
926 - };
927 - }
928 - if (transitioningOut) {
929 - el._x_transition.leave.during = {
930 - transformOrigin: origin,
931 - transitionDelay: `${delay}s`,
932 - transitionProperty: property,
933 - transitionDuration: `${durationOut}s`,
934 - transitionTimingFunction: easing
935 - };
936 - el._x_transition.leave.start = {
937 - opacity: 1,
938 - transform: `scale(1)`
939 - };
940 - el._x_transition.leave.end = {
941 - opacity: opacityValue,
942 - transform: `scale(${scaleValue})`
943 - };
944 - }
945 - }
946 - function registerTransitionObject(el, setFunction, defaultValue = {}) {
947 - if (!el._x_transition) el._x_transition = {
948 - enter: {
949 - during: defaultValue,
950 - start: defaultValue,
951 - end: defaultValue
952 - },
953 - leave: {
954 - during: defaultValue,
955 - start: defaultValue,
956 - end: defaultValue
957 - },
958 - in(before = () => {}, after = () => {}) {
959 - transition(el, setFunction, {
960 - during: this.enter.during,
961 - start: this.enter.start,
962 - end: this.enter.end
963 - }, before, after);
964 - },
965 - out(before = () => {}, after = () => {}) {
966 - transition(el, setFunction, {
967 - during: this.leave.during,
968 - start: this.leave.start,
969 - end: this.leave.end
970 - }, before, after);
971 - }
972 - };
973 - }
974 - window.Element.prototype._x_toggleAndCascadeWithTransitions = function(el, value, show, hide) {
975 - const nextTick2 = document.visibilityState === "visible" ? requestAnimationFrame : setTimeout;
976 - let clickAwayCompatibleShow = () => nextTick2(show);
977 - if (value) {
978 - if (el._x_transition && (el._x_transition.enter || el._x_transition.leave)) el._x_transition.enter && (Object.entries(el._x_transition.enter.during).length || Object.entries(el._x_transition.enter.start).length || Object.entries(el._x_transition.enter.end).length) ? el._x_transition.in(show) : clickAwayCompatibleShow();
979 - else el._x_transition ? el._x_transition.in(show) : clickAwayCompatibleShow();
980 - return;
981 - }
982 - el._x_hidePromise = el._x_transition ? new Promise((resolve, reject) => {
983 - el._x_transition.out(() => {}, () => resolve(hide));
984 - el._x_transitioning && el._x_transitioning.beforeCancel(() => reject({ isFromCancelledTransition: true }));
985 - }) : Promise.resolve(hide);
986 - queueMicrotask(() => {
987 - let closest = closestHide(el);
988 - if (closest) {
989 - if (!closest._x_hideChildren) closest._x_hideChildren = [];
990 - closest._x_hideChildren.push(el);
991 - } else nextTick2(() => {
992 - let hideAfterChildren = (el2) => {
993 - let carry = Promise.all([el2._x_hidePromise, ...(el2._x_hideChildren || []).map(hideAfterChildren)]).then(([i]) => i?.());
994 - delete el2._x_hidePromise;
995 - delete el2._x_hideChildren;
996 - return carry;
997 - };
998 - hideAfterChildren(el).catch((e) => {
999 - if (!e.isFromCancelledTransition) throw e;
1000 - });
1001 - });
1002 - });
1003 - };
1004 - function closestHide(el) {
1005 - let parent = el.parentNode;
1006 - if (!parent) return;
1007 - return parent._x_hidePromise ? parent : closestHide(parent);
1008 - }
1009 - function transition(el, setFunction, { during, start: start2, end } = {}, before = () => {}, after = () => {}) {
1010 - if (el._x_transitioning) el._x_transitioning.cancel();
1011 - if (Object.keys(during).length === 0 && Object.keys(start2).length === 0 && Object.keys(end).length === 0) {
1012 - before();
1013 - after();
1014 - return;
1015 - }
1016 - let undoStart;
1017 - let undoDuring;
1018 - let undoEnd;
1019 - performTransition(el, {
1020 - start() {
1021 - undoStart = setFunction(el, start2);
1022 - },
1023 - during() {
1024 - undoDuring = setFunction(el, during);
1025 - },
1026 - before,
1027 - end() {
1028 - undoStart();
1029 - undoEnd = setFunction(el, end);
1030 - },
1031 - after,
1032 - cleanup() {
1033 - undoDuring();
1034 - undoEnd();
1035 - }
1036 - });
1037 - }
1038 - function performTransition(el, stages) {
1039 - let interrupted;
1040 - let reachedBefore;
1041 - let reachedEnd;
1042 - let finish = once(() => {
1043 - mutateDom(() => {
1044 - interrupted = true;
1045 - if (!reachedBefore) stages.before();
1046 - if (!reachedEnd) {
1047 - stages.end();
1048 - releaseNextTicks();
1049 - }
1050 - stages.after();
1051 - if (el.isConnected) stages.cleanup();
1052 - delete el._x_transitioning;
1053 - });
1054 - });
1055 - el._x_transitioning = {
1056 - beforeCancels: [],
1057 - beforeCancel(callback) {
1058 - this.beforeCancels.push(callback);
1059 - },
1060 - cancel: once(function() {
1061 - while (this.beforeCancels.length) this.beforeCancels.shift()();
1062 - finish();
1063 - }),
1064 - finish
1065 - };
1066 - mutateDom(() => {
1067 - stages.start();
1068 - stages.during();
1069 - });
1070 - holdNextTicks();
1071 - requestAnimationFrame(() => {
1072 - if (interrupted) return;
1073 - let duration = Number(getComputedStyle(el).transitionDuration.replace(/,.*/, "").replace("s", "")) * 1e3;
1074 - let delay = Number(getComputedStyle(el).transitionDelay.replace(/,.*/, "").replace("s", "")) * 1e3;
1075 - if (duration === 0) duration = Number(getComputedStyle(el).animationDuration.replace("s", "")) * 1e3;
1076 - mutateDom(() => {
1077 - stages.before();
1078 - });
1079 - reachedBefore = true;
1080 - requestAnimationFrame(() => {
1081 - if (interrupted) return;
1082 - mutateDom(() => {
1083 - stages.end();
1084 - });
1085 - releaseNextTicks();
1086 - setTimeout(el._x_transitioning.finish, duration + delay);
1087 - reachedEnd = true;
1088 - });
1089 - });
1090 - }
1091 - function modifierValue(modifiers, key, fallback) {
1092 - if (modifiers.indexOf(key) === -1) return fallback;
1093 - const rawValue = modifiers[modifiers.indexOf(key) + 1];
1094 - if (!rawValue) return fallback;
1095 - if (key === "scale") {
1096 - if (isNaN(rawValue)) return fallback;
1097 - }
1098 - if (key === "duration" || key === "delay") {
1099 - let match = rawValue.match(/([0-9]+)ms/);
1100 - if (match) return match[1];
1101 - }
1102 - if (key === "origin") {
1103 - if ([
1104 - "top",
1105 - "right",
1106 - "left",
1107 - "center",
1108 - "bottom"
1109 - ].includes(modifiers[modifiers.indexOf(key) + 2])) return [rawValue, modifiers[modifiers.indexOf(key) + 2]].join(" ");
1110 - }
1111 - return rawValue;
1112 - }
1113 - var isCloning = false;
1114 - function skipDuringClone(callback, fallback = () => {}) {
1115 - return (...args) => isCloning ? fallback(...args) : callback(...args);
1116 - }
1117 - function onlyDuringClone(callback) {
1118 - return (...args) => isCloning && callback(...args);
1119 - }
1120 - var interceptors = [];
1121 - function interceptClone(callback) {
1122 - interceptors.push(callback);
1123 - }
1124 - function cloneNode(from, to) {
1125 - interceptors.forEach((i) => i(from, to));
1126 - isCloning = true;
1127 - dontRegisterReactiveSideEffects(() => {
1128 - initTree(to, (el, callback) => {
1129 - callback(el, () => {});
1130 - });
1131 - });
1132 - isCloning = false;
1133 - }
1134 - var isCloningLegacy = false;
1135 - function clone(oldEl, newEl) {
1136 - if (!newEl._x_dataStack) newEl._x_dataStack = oldEl._x_dataStack;
1137 - isCloning = true;
1138 - isCloningLegacy = true;
1139 - dontRegisterReactiveSideEffects(() => {
1140 - cloneTree(newEl);
1141 - });
1142 - isCloning = false;
1143 - isCloningLegacy = false;
1144 - }
1145 - function cloneTree(el) {
1146 - let hasRunThroughFirstEl = false;
1147 - let shallowWalker = (el2, callback) => {
1148 - walk(el2, (el3, skip) => {
1149 - if (hasRunThroughFirstEl && isRoot(el3)) return skip();
1150 - hasRunThroughFirstEl = true;
1151 - callback(el3, skip);
1152 - });
1153 - };
1154 - initTree(el, shallowWalker);
1155 - }
1156 - function dontRegisterReactiveSideEffects(callback) {
1157 - let cache = effect;
1158 - overrideEffect((callback2, el) => {
1159 - let storedEffect = cache(callback2);
1160 - release(storedEffect);
1161 - return () => {};
1162 - });
1163 - callback();
1164 - overrideEffect(cache);
1165 - }
1166 - function bind(el, name, value, modifiers = []) {
1167 - if (!el._x_bindings) el._x_bindings = reactive({});
1168 - el._x_bindings[name] = value;
1169 - name = modifiers.includes("camel") ? camelCase(name) : name;
1170 - switch (name) {
1171 - case "value":
1172 - bindInputValue(el, value);
1173 - break;
1174 - case "style":
1175 - bindStyles(el, value);
1176 - break;
1177 - case "class":
1178 - bindClasses(el, value);
1179 - break;
1180 - case "selected":
1181 - case "checked":
1182 - bindAttributeAndProperty(el, name, value);
1183 - break;
1184 - default:
1185 - bindAttribute(el, name, value);
1186 - break;
1187 - }
1188 - }
1189 - function bindInputValue(el, value) {
1190 - if (isRadio(el)) {
1191 - if (el.attributes.value === void 0) el.value = value;
1192 - if (window.fromModel) if (typeof value === "boolean") el.checked = safeParseBoolean(el.value) === value;
1193 - else el.checked = checkedAttrLooseCompare(el.value, value);
1194 - } else if (isCheckbox(el)) if (Number.isInteger(value)) el.value = value;
1195 - else if (!Array.isArray(value) && typeof value !== "boolean" && ![null, void 0].includes(value)) el.value = String(value);
1196 - else if (Array.isArray(value)) el.checked = value.some((val) => checkedAttrLooseCompare(val, el.value));
1197 - else el.checked = !!value;
1198 - else if (el.tagName === "SELECT") updateSelect(el, value);
1199 - else {
1200 - if (el.value === value) return;
1201 - el.value = value === void 0 ? "" : value;
1202 - }
1203 - }
1204 - function bindClasses(el, value) {
1205 - if (el._x_undoAddedClasses) el._x_undoAddedClasses();
1206 - el._x_undoAddedClasses = setClasses(el, value);
1207 - }
1208 - function bindStyles(el, value) {
1209 - if (el._x_undoAddedStyles) el._x_undoAddedStyles();
1210 - el._x_undoAddedStyles = setStyles(el, value);
1211 - }
1212 - function bindAttributeAndProperty(el, name, value) {
1213 - bindAttribute(el, name, value);
1214 - setPropertyIfChanged(el, name, value);
1215 - }
1216 - function bindAttribute(el, name, value) {
1217 - if ([
1218 - null,
1219 - void 0,
1220 - false
1221 - ].includes(value) && attributeShouldntBePreservedIfFalsy(name)) el.removeAttribute(name);
1222 - else {
1223 - if (isBooleanAttr(name)) value = name;
1224 - setIfChanged(el, name, value);
1225 - }
1226 - }
1227 - function setIfChanged(el, attrName, value) {
1228 - if (el.getAttribute(attrName) != value) el.setAttribute(attrName, value);
1229 - }
1230 - function setPropertyIfChanged(el, propName, value) {
1231 - if (el[propName] !== value) el[propName] = value;
1232 - }
1233 - function updateSelect(el, value) {
1234 - const arrayWrappedValue = [].concat(value).map((value2) => {
1235 - return value2 + "";
1236 - });
1237 - Array.from(el.options).forEach((option) => {
1238 - option.selected = arrayWrappedValue.includes(option.value);
1239 - });
1240 - }
1241 - function camelCase(subject) {
1242 - return subject.toLowerCase().replace(/-(\w)/g, (match, char) => char.toUpperCase());
1243 - }
1244 - function checkedAttrLooseCompare(valueA, valueB) {
1245 - return valueA == valueB;
1246 - }
1247 - function safeParseBoolean(rawValue) {
1248 - if ([
1249 - 1,
1250 - "1",
1251 - "true",
1252 - "on",
1253 - "yes",
1254 - true
1255 - ].includes(rawValue)) return true;
1256 - if ([
1257 - 0,
1258 - "0",
1259 - "false",
1260 - "off",
1261 - "no",
1262 - false
1263 - ].includes(rawValue)) return false;
1264 - return rawValue ? Boolean(rawValue) : null;
1265 - }
1266 - var booleanAttributes = /* @__PURE__ */ new Set([
1267 - "allowfullscreen",
1268 - "async",
1269 - "autofocus",
1270 - "autoplay",
1271 - "checked",
1272 - "controls",
1273 - "default",
1274 - "defer",
1275 - "disabled",
1276 - "formnovalidate",
1277 - "inert",
1278 - "ismap",
1279 - "itemscope",
1280 - "loop",
1281 - "multiple",
1282 - "muted",
1283 - "nomodule",
1284 - "novalidate",
1285 - "open",
1286 - "playsinline",
1287 - "readonly",
1288 - "required",
1289 - "reversed",
1290 - "selected",
1291 - "shadowrootclonable",
1292 - "shadowrootdelegatesfocus",
1293 - "shadowrootserializable"
1294 - ]);
1295 - function isBooleanAttr(attrName) {
1296 - return booleanAttributes.has(attrName);
1297 - }
1298 - function attributeShouldntBePreservedIfFalsy(name) {
1299 - return ![
1300 - "aria-pressed",
1301 - "aria-checked",
1302 - "aria-expanded",
1303 - "aria-selected"
1304 - ].includes(name);
1305 - }
1306 - function getBinding(el, name, fallback) {
1307 - if (el._x_bindings && el._x_bindings[name] !== void 0) return el._x_bindings[name];
1308 - return getAttributeBinding(el, name, fallback);
1309 - }
1310 - function extractProp(el, name, fallback, extract = true) {
1311 - if (el._x_bindings && el._x_bindings[name] !== void 0) return el._x_bindings[name];
1312 - if (el._x_inlineBindings && el._x_inlineBindings[name] !== void 0) {
1313 - let binding = el._x_inlineBindings[name];
1314 - binding.extract = extract;
1315 - return dontAutoEvaluateFunctions(() => {
1316 - return evaluate(el, binding.expression);
1317 - });
1318 - }
1319 - return getAttributeBinding(el, name, fallback);
1320 - }
1321 - function getAttributeBinding(el, name, fallback) {
1322 - let attr = el.getAttribute(name);
1323 - if (attr === null) return typeof fallback === "function" ? fallback() : fallback;
1324 - if (attr === "") return true;
1325 - if (isBooleanAttr(name)) return !![name, "true"].includes(attr);
1326 - return attr;
1327 - }
1328 - function isCheckbox(el) {
1329 - return el.type === "checkbox" || el.localName === "ui-checkbox" || el.localName === "ui-switch";
1330 - }
1331 - function isRadio(el) {
1332 - return el.type === "radio" || el.localName === "ui-radio";
1333 - }
1334 - function debounce(func, wait) {
1335 - let timeout;
1336 - return function() {
1337 - const context = this;
1338 - const args = arguments;
1339 - const later = function() {
1340 - timeout = null;
1341 - func.apply(context, args);
1342 - };
1343 - clearTimeout(timeout);
1344 - timeout = setTimeout(later, wait);
1345 - };
1346 - }
1347 - function throttle(func, limit) {
1348 - let inThrottle;
1349 - return function() {
1350 - let context = this;
1351 - let args = arguments;
1352 - if (!inThrottle) {
1353 - func.apply(context, args);
1354 - inThrottle = true;
1355 - setTimeout(() => inThrottle = false, limit);
1356 - }
1357 - };
1358 - }
1359 - function entangle({ get: outerGet, set: outerSet }, { get: innerGet, set: innerSet }) {
1360 - let firstRun = true;
1361 - let outerHash;
1362 - let reference = effect(() => {
1363 - let outer = outerGet();
1364 - let inner = innerGet();
1365 - if (firstRun) {
1366 - innerSet(cloneIfObject(outer));
1367 - firstRun = false;
1368 - } else {
1369 - let outerHashLatest = JSON.stringify(outer);
1370 - let innerHashLatest = JSON.stringify(inner);
1371 - if (outerHashLatest !== outerHash) innerSet(cloneIfObject(outer));
1372 - else if (outerHashLatest !== innerHashLatest) outerSet(cloneIfObject(inner));
1373 - }
1374 - outerHash = JSON.stringify(outerGet());
1375 - JSON.stringify(innerGet());
1376 - });
1377 - return () => {
1378 - release(reference);
1379 - };
1380 - }
1381 - function cloneIfObject(value) {
1382 - return typeof value === "object" ? JSON.parse(JSON.stringify(value)) : value;
1383 - }
1384 - function plugin(callback) {
1385 - (Array.isArray(callback) ? callback : [callback]).forEach((i) => i(alpine_default));
1386 - }
1387 - var stores = {};
1388 - var isReactive = false;
1389 - function store(name, value) {
1390 - if (!isReactive) {
1391 - stores = reactive(stores);
1392 - isReactive = true;
1393 - }
1394 - if (value === void 0) return stores[name];
1395 - stores[name] = value;
1396 - initInterceptors(stores[name]);
1397 - if (typeof value === "object" && value !== null && value.hasOwnProperty("init") && typeof value.init === "function") stores[name].init();
1398 - }
1399 - function getStores() {
1400 - return stores;
1401 - }
1402 - var binds = {};
1403 - function bind2(name, bindings) {
1404 - let getBindings = typeof bindings !== "function" ? () => bindings : bindings;
1405 - if (name instanceof Element) return applyBindingsObject(name, getBindings());
1406 - else binds[name] = getBindings;
1407 - return () => {};
1408 - }
1409 - function injectBindingProviders(obj) {
1410 - Object.entries(binds).forEach(([name, callback]) => {
1411 - Object.defineProperty(obj, name, { get() {
1412 - return (...args) => {
1413 - return callback(...args);
1414 - };
1415 - } });
1416 - });
1417 - return obj;
1418 - }
1419 - function applyBindingsObject(el, obj, original) {
1420 - let cleanupRunners = [];
1421 - while (cleanupRunners.length) cleanupRunners.pop()();
1422 - let attributes = Object.entries(obj).map(([name, value]) => ({
1423 - name,
1424 - value
1425 - }));
1426 - let staticAttributes = attributesOnly(attributes);
1427 - attributes = attributes.map((attribute) => {
1428 - if (staticAttributes.find((attr) => attr.name === attribute.name)) return {
1429 - name: `x-bind:${attribute.name}`,
1430 - value: `"${attribute.value}"`
1431 - };
1432 - return attribute;
1433 - });
1434 - directives(el, attributes, original).map((handle) => {
1435 - cleanupRunners.push(handle.runCleanups);
1436 - handle();
1437 - });
1438 - return () => {
1439 - while (cleanupRunners.length) cleanupRunners.pop()();
1440 - };
1441 - }
1442 - var datas = {};
1443 - function data(name, callback) {
1444 - datas[name] = callback;
1445 - }
1446 - function injectDataProviders(obj, context) {
1447 - Object.entries(datas).forEach(([name, callback]) => {
1448 - Object.defineProperty(obj, name, {
1449 - get() {
1450 - return (...args) => {
1451 - return callback.bind(context)(...args);
1452 - };
1453 - },
1454 - enumerable: false
1455 - });
1456 - });
1457 - return obj;
1458 - }
1459 - var alpine_default = {
1460 - get reactive() {
1461 - return reactive;
1462 - },
1463 - get release() {
1464 - return release;
1465 - },
1466 - get effect() {
1467 - return effect;
1468 - },
1469 - get raw() {
1470 - return raw;
1471 - },
1472 - version: "3.15.0",
1473 - flushAndStopDeferringMutations,
1474 - dontAutoEvaluateFunctions,
1475 - disableEffectScheduling,
1476 - startObservingMutations,
1477 - stopObservingMutations,
1478 - setReactivityEngine,
1479 - onAttributeRemoved,
1480 - onAttributesAdded,
1481 - closestDataStack,
1482 - skipDuringClone,
1483 - onlyDuringClone,
1484 - addRootSelector,
1485 - addInitSelector,
1486 - interceptClone,
1487 - addScopeToNode,
1488 - deferMutations,
1489 - mapAttributes,
1490 - evaluateLater,
1491 - interceptInit,
1492 - setEvaluator,
1493 - mergeProxies,
1494 - extractProp,
1495 - findClosest,
1496 - onElRemoved,
1497 - closestRoot,
1498 - destroyTree,
1499 - interceptor,
1500 - transition,
1501 - setStyles,
1502 - mutateDom,
1503 - directive,
1504 - entangle,
1505 - throttle,
1506 - debounce,
1507 - evaluate,
1508 - initTree,
1509 - nextTick,
1510 - prefixed: prefix,
1511 - prefix: setPrefix,
1512 - plugin,
1513 - magic,
1514 - store,
1515 - start,
1516 - clone,
1517 - cloneNode,
1518 - bound: getBinding,
1519 - $data: scope,
1520 - watch,
1521 - walk,
1522 - data,
1523 - bind: bind2
1524 - };
1525 - var Token = class {
1526 - constructor(type, value, start2, end) {
1527 - this.type = type;
1528 - this.value = value;
1529 - this.start = start2;
1530 - this.end = end;
1531 - }
1532 - };
1533 - var Tokenizer = class {
1534 - constructor(input) {
1535 - this.input = input;
1536 - this.position = 0;
1537 - this.tokens = [];
1538 - }
1539 - tokenize() {
1540 - while (this.position < this.input.length) {
1541 - this.skipWhitespace();
1542 - if (this.position >= this.input.length) break;
1543 - const char = this.input[this.position];
1544 - if (this.isDigit(char)) this.readNumber();
1545 - else if (this.isAlpha(char) || char === "_" || char === "$") this.readIdentifierOrKeyword();
1546 - else if (char === "\"" || char === "'") this.readString();
1547 - else if (char === "/" && this.peek() === "/") this.skipLineComment();
1548 - else this.readOperatorOrPunctuation();
1549 - }
1550 - this.tokens.push(new Token("EOF", null, this.position, this.position));
1551 - return this.tokens;
1552 - }
1553 - skipWhitespace() {
1554 - while (this.position < this.input.length && /\s/.test(this.input[this.position])) this.position++;
1555 - }
1556 - skipLineComment() {
1557 - while (this.position < this.input.length && this.input[this.position] !== "\n") this.position++;
1558 - }
1559 - isDigit(char) {
1560 - return /[0-9]/.test(char);
1561 - }
1562 - isAlpha(char) {
1563 - return /[a-zA-Z]/.test(char);
1564 - }
1565 - isAlphaNumeric(char) {
1566 - return /[a-zA-Z0-9_$]/.test(char);
1567 - }
1568 - peek(offset = 1) {
1569 - return this.input[this.position + offset] || "";
1570 - }
1571 - readNumber() {
1572 - const start2 = this.position;
1573 - let hasDecimal = false;
1574 - while (this.position < this.input.length) {
1575 - const char = this.input[this.position];
1576 - if (this.isDigit(char)) this.position++;
1577 - else if (char === "." && !hasDecimal) {
1578 - hasDecimal = true;
1579 - this.position++;
1580 - } else break;
1581 - }
1582 - const value = this.input.slice(start2, this.position);
1583 - this.tokens.push(new Token("NUMBER", parseFloat(value), start2, this.position));
1584 - }
1585 - readIdentifierOrKeyword() {
1586 - const start2 = this.position;
1587 - while (this.position < this.input.length && this.isAlphaNumeric(this.input[this.position])) this.position++;
1588 - const value = this.input.slice(start2, this.position);
1589 - if ([
1590 - "true",
1591 - "false",
1592 - "null",
1593 - "undefined",
1594 - "new",
1595 - "typeof",
1596 - "void",
1597 - "delete",
1598 - "in",
1599 - "instanceof"
1600 - ].includes(value)) if (value === "true" || value === "false") this.tokens.push(new Token("BOOLEAN", value === "true", start2, this.position));
1601 - else if (value === "null") this.tokens.push(new Token("NULL", null, start2, this.position));
1602 - else if (value === "undefined") this.tokens.push(new Token("UNDEFINED", void 0, start2, this.position));
1603 - else this.tokens.push(new Token("KEYWORD", value, start2, this.position));
1604 - else this.tokens.push(new Token("IDENTIFIER", value, start2, this.position));
1605 - }
1606 - readString() {
1607 - const start2 = this.position;
1608 - const quote = this.input[this.position];
1609 - this.position++;
1610 - let value = "";
1611 - let escaped = false;
1612 - while (this.position < this.input.length) {
1613 - const char = this.input[this.position];
1614 - if (escaped) {
1615 - switch (char) {
1616 - case "n":
1617 - value += "\n";
1618 - break;
1619 - case "t":
1620 - value += " ";
1621 - break;
1622 - case "r":
1623 - value += "\r";
1624 - break;
1625 - case "\\":
1626 - value += "\\";
1627 - break;
1628 - case quote:
1629 - value += quote;
1630 - break;
1631 - default: value += char;
1632 - }
1633 - escaped = false;
1634 - } else if (char === "\\") escaped = true;
1635 - else if (char === quote) {
1636 - this.position++;
1637 - this.tokens.push(new Token("STRING", value, start2, this.position));
1638 - return;
1639 - } else value += char;
1640 - this.position++;
1641 - }
1642 - throw new Error(`Unterminated string starting at position ${start2}`);
1643 - }
1644 - readOperatorOrPunctuation() {
1645 - const start2 = this.position;
1646 - const char = this.input[this.position];
1647 - const next = this.peek();
1648 - const nextNext = this.peek(2);
1649 - if (char === "=" && next === "=" && nextNext === "=") {
1650 - this.position += 3;
1651 - this.tokens.push(new Token("OPERATOR", "===", start2, this.position));
1652 - } else if (char === "!" && next === "=" && nextNext === "=") {
1653 - this.position += 3;
1654 - this.tokens.push(new Token("OPERATOR", "!==", start2, this.position));
1655 - } else if (char === "=" && next === "=") {
1656 - this.position += 2;
1657 - this.tokens.push(new Token("OPERATOR", "==", start2, this.position));
1658 - } else if (char === "!" && next === "=") {
1659 - this.position += 2;
1660 - this.tokens.push(new Token("OPERATOR", "!=", start2, this.position));
1661 - } else if (char === "<" && next === "=") {
1662 - this.position += 2;
1663 - this.tokens.push(new Token("OPERATOR", "<=", start2, this.position));
1664 - } else if (char === ">" && next === "=") {
1665 - this.position += 2;
1666 - this.tokens.push(new Token("OPERATOR", ">=", start2, this.position));
1667 - } else if (char === "&" && next === "&") {
1668 - this.position += 2;
1669 - this.tokens.push(new Token("OPERATOR", "&&", start2, this.position));
1670 - } else if (char === "|" && next === "|") {
1671 - this.position += 2;
1672 - this.tokens.push(new Token("OPERATOR", "||", start2, this.position));
1673 - } else if (char === "+" && next === "+") {
1674 - this.position += 2;
1675 - this.tokens.push(new Token("OPERATOR", "++", start2, this.position));
1676 - } else if (char === "-" && next === "-") {
1677 - this.position += 2;
1678 - this.tokens.push(new Token("OPERATOR", "--", start2, this.position));
1679 - } else {
1680 - this.position++;
1681 - const type = "()[]{},.;:?".includes(char) ? "PUNCTUATION" : "OPERATOR";
1682 - this.tokens.push(new Token(type, char, start2, this.position));
1683 - }
1684 - }
1685 - };
1686 - var Parser = class {
1687 - constructor(tokens) {
1688 - this.tokens = tokens;
1689 - this.position = 0;
1690 - }
1691 - parse() {
1692 - if (this.isAtEnd()) throw new Error("Empty expression");
1693 - const expr = this.parseExpression();
1694 - this.match("PUNCTUATION", ";");
1695 - if (!this.isAtEnd()) throw new Error(`Unexpected token: ${this.current().value}`);
1696 - return expr;
1697 - }
1698 - parseExpression() {
1699 - return this.parseAssignment();
1700 - }
1701 - parseAssignment() {
1702 - const expr = this.parseTernary();
1703 - if (this.match("OPERATOR", "=")) {
1704 - const value = this.parseAssignment();
1705 - if (expr.type === "Identifier" || expr.type === "MemberExpression") return {
1706 - type: "AssignmentExpression",
1707 - left: expr,
1708 - operator: "=",
1709 - right: value
1710 - };
1711 - throw new Error("Invalid assignment target");
1712 - }
1713 - return expr;
1714 - }
1715 - parseTernary() {
1716 - const expr = this.parseLogicalOr();
1717 - if (this.match("PUNCTUATION", "?")) {
1718 - const consequent = this.parseExpression();
1719 - this.consume("PUNCTUATION", ":");
1720 - return {
1721 - type: "ConditionalExpression",
1722 - test: expr,
1723 - consequent,
1724 - alternate: this.parseExpression()
1725 - };
1726 - }
1727 - return expr;
1728 - }
1729 - parseLogicalOr() {
1730 - let expr = this.parseLogicalAnd();
1731 - while (this.match("OPERATOR", "||")) {
1732 - const operator = this.previous().value;
1733 - const right = this.parseLogicalAnd();
1734 - expr = {
1735 - type: "BinaryExpression",
1736 - operator,
1737 - left: expr,
1738 - right
1739 - };
1740 - }
1741 - return expr;
1742 - }
1743 - parseLogicalAnd() {
1744 - let expr = this.parseEquality();
1745 - while (this.match("OPERATOR", "&&")) {
1746 - const operator = this.previous().value;
1747 - const right = this.parseEquality();
1748 - expr = {
1749 - type: "BinaryExpression",
1750 - operator,
1751 - left: expr,
1752 - right
1753 - };
1754 - }
1755 - return expr;
1756 - }
1757 - parseEquality() {
1758 - let expr = this.parseRelational();
1759 - while (this.match("OPERATOR", "==", "!=", "===", "!==")) {
1760 - const operator = this.previous().value;
1761 - const right = this.parseRelational();
1762 - expr = {
1763 - type: "BinaryExpression",
1764 - operator,
1765 - left: expr,
1766 - right
1767 - };
1768 - }
1769 - return expr;
1770 - }
1771 - parseRelational() {
1772 - let expr = this.parseAdditive();
1773 - while (this.match("OPERATOR", "<", ">", "<=", ">=")) {
1774 - const operator = this.previous().value;
1775 - const right = this.parseAdditive();
1776 - expr = {
1777 - type: "BinaryExpression",
1778 - operator,
1779 - left: expr,
1780 - right
1781 - };
1782 - }
1783 - return expr;
1784 - }
1785 - parseAdditive() {
1786 - let expr = this.parseMultiplicative();
1787 - while (this.match("OPERATOR", "+", "-")) {
1788 - const operator = this.previous().value;
1789 - const right = this.parseMultiplicative();
1790 - expr = {
1791 - type: "BinaryExpression",
1792 - operator,
1793 - left: expr,
1794 - right
1795 - };
1796 - }
1797 - return expr;
1798 - }
1799 - parseMultiplicative() {
1800 - let expr = this.parseUnary();
1801 - while (this.match("OPERATOR", "*", "/", "%")) {
1802 - const operator = this.previous().value;
1803 - const right = this.parseUnary();
1804 - expr = {
1805 - type: "BinaryExpression",
1806 - operator,
1807 - left: expr,
1808 - right
1809 - };
1810 - }
1811 - return expr;
1812 - }
1813 - parseUnary() {
1814 - if (this.match("OPERATOR", "++", "--")) return {
1815 - type: "UpdateExpression",
1816 - operator: this.previous().value,
1817 - argument: this.parseUnary(),
1818 - prefix: true
1819 - };
1820 - if (this.match("OPERATOR", "!", "-", "+")) return {
1821 - type: "UnaryExpression",
1822 - operator: this.previous().value,
1823 - argument: this.parseUnary(),
1824 - prefix: true
1825 - };
1826 - return this.parsePostfix();
1827 - }
1828 - parsePostfix() {
1829 - let expr = this.parseMember();
1830 - if (this.match("OPERATOR", "++", "--")) return {
1831 - type: "UpdateExpression",
1832 - operator: this.previous().value,
1833 - argument: expr,
1834 - prefix: false
1835 - };
1836 - return expr;
1837 - }
1838 - parseMember() {
1839 - let expr = this.parsePrimary();
1840 - while (true) if (this.match("PUNCTUATION", ".")) {
1841 - const property = this.consume("IDENTIFIER");
1842 - expr = {
1843 - type: "MemberExpression",
1844 - object: expr,
1845 - property: {
1846 - type: "Identifier",
1847 - name: property.value
1848 - },
1849 - computed: false
1850 - };
1851 - } else if (this.match("PUNCTUATION", "[")) {
1852 - const property = this.parseExpression();
1853 - this.consume("PUNCTUATION", "]");
1854 - expr = {
1855 - type: "MemberExpression",
1856 - object: expr,
1857 - property,
1858 - computed: true
1859 - };
1860 - } else if (this.match("PUNCTUATION", "(")) {
1861 - const args = this.parseArguments();
1862 - expr = {
1863 - type: "CallExpression",
1864 - callee: expr,
1865 - arguments: args
1866 - };
1867 - } else break;
1868 - return expr;
1869 - }
1870 - parseArguments() {
1871 - const args = [];
1872 - if (!this.check("PUNCTUATION", ")")) do
1873 - args.push(this.parseExpression());
1874 - while (this.match("PUNCTUATION", ","));
1875 - this.consume("PUNCTUATION", ")");
1876 - return args;
1877 - }
1878 - parsePrimary() {
1879 - if (this.match("NUMBER")) return {
1880 - type: "Literal",
1881 - value: this.previous().value
1882 - };
1883 - if (this.match("STRING")) return {
1884 - type: "Literal",
1885 - value: this.previous().value
1886 - };
1887 - if (this.match("BOOLEAN")) return {
1888 - type: "Literal",
1889 - value: this.previous().value
1890 - };
1891 - if (this.match("NULL")) return {
1892 - type: "Literal",
1893 - value: null
1894 - };
1895 - if (this.match("UNDEFINED")) return {
1896 - type: "Literal",
1897 - value: void 0
1898 - };
1899 - if (this.match("IDENTIFIER")) return {
1900 - type: "Identifier",
1901 - name: this.previous().value
1902 - };
1903 - if (this.match("PUNCTUATION", "(")) {
1904 - const expr = this.parseExpression();
1905 - this.consume("PUNCTUATION", ")");
1906 - return expr;
1907 - }
1908 - if (this.match("PUNCTUATION", "[")) return this.parseArrayLiteral();
1909 - if (this.match("PUNCTUATION", "{")) return this.parseObjectLiteral();
1910 - throw new Error(`Unexpected token: ${this.current().type} "${this.current().value}"`);
1911 - }
1912 - parseArrayLiteral() {
1913 - const elements = [];
1914 - while (!this.check("PUNCTUATION", "]") && !this.isAtEnd()) {
1915 - elements.push(this.parseExpression());
1916 - if (this.match("PUNCTUATION", ",")) {
1917 - if (this.check("PUNCTUATION", "]")) break;
1918 - } else break;
1919 - }
1920 - this.consume("PUNCTUATION", "]");
1921 - return {
1922 - type: "ArrayExpression",
1923 - elements
1924 - };
1925 - }
1926 - parseObjectLiteral() {
1927 - const properties = [];
1928 - while (!this.check("PUNCTUATION", "}") && !this.isAtEnd()) {
1929 - let key;
1930 - let computed = false;
1931 - if (this.match("STRING")) key = {
1932 - type: "Literal",
1933 - value: this.previous().value
1934 - };
1935 - else if (this.match("IDENTIFIER")) key = {
1936 - type: "Identifier",
1937 - name: this.previous().value
1938 - };
1939 - else if (this.match("PUNCTUATION", "[")) {
1940 - key = this.parseExpression();
1941 - computed = true;
1942 - this.consume("PUNCTUATION", "]");
1943 - } else throw new Error("Expected property key");
1944 - this.consume("PUNCTUATION", ":");
1945 - const value = this.parseExpression();
1946 - properties.push({
1947 - type: "Property",
1948 - key,
1949 - value,
1950 - computed,
1951 - shorthand: false
1952 - });
1953 - if (this.match("PUNCTUATION", ",")) {
1954 - if (this.check("PUNCTUATION", "}")) break;
1955 - } else break;
1956 - }
1957 - this.consume("PUNCTUATION", "}");
1958 - return {
1959 - type: "ObjectExpression",
1960 - properties
1961 - };
1962 - }
1963 - match(...args) {
1964 - for (let i = 0; i < args.length; i++) {
1965 - const arg = args[i];
1966 - if (i === 0 && args.length > 1) {
1967 - const type = arg;
1968 - for (let j = 1; j < args.length; j++) if (this.check(type, args[j])) {
1969 - this.advance();
1970 - return true;
1971 - }
1972 - return false;
1973 - } else if (args.length === 1) {
1974 - if (this.checkType(arg)) {
1975 - this.advance();
1976 - return true;
1977 - }
1978 - return false;
1979 - }
1980 - }
1981 - return false;
1982 - }
1983 - check(type, value) {
1984 - if (this.isAtEnd()) return false;
1985 - if (value !== void 0) return this.current().type === type && this.current().value === value;
1986 - return this.current().type === type;
1987 - }
1988 - checkType(type) {
1989 - if (this.isAtEnd()) return false;
1990 - return this.current().type === type;
1991 - }
1992 - advance() {
1993 - if (!this.isAtEnd()) this.position++;
1994 - return this.previous();
1995 - }
1996 - isAtEnd() {
1997 - return this.current().type === "EOF";
1998 - }
1999 - current() {
2000 - return this.tokens[this.position];
2001 - }
2002 - previous() {
2003 - return this.tokens[this.position - 1];
2004 - }
2005 - consume(type, value) {
2006 - if (value !== void 0) {
2007 - if (this.check(type, value)) return this.advance();
2008 - throw new Error(`Expected ${type} "${value}" but got ${this.current().type} "${this.current().value}"`);
2009 - }
2010 - if (this.check(type)) return this.advance();
2011 - throw new Error(`Expected ${type} but got ${this.current().type} "${this.current().value}"`);
2012 - }
2013 - };
2014 - var Evaluator = class {
2015 - evaluate({ node, scope: scope2 = {}, context = null, allowGlobal = false, forceBindingRootScopeToFunctions = true }) {
2016 - switch (node.type) {
2017 - case "Literal": return node.value;
2018 - case "Identifier":
2019 - if (node.name in scope2) {
2020 - const value2 = scope2[node.name];
2021 - if (typeof value2 === "function") return value2.bind(scope2);
2022 - return value2;
2023 - }
2024 - if (allowGlobal && typeof globalThis[node.name] !== "undefined") {
2025 - const value2 = globalThis[node.name];
2026 - if (typeof value2 === "function") return value2.bind(globalThis);
2027 - return value2;
2028 - }
2029 - throw new Error(`Undefined variable: ${node.name}`);
2030 - case "MemberExpression":
2031 - const object = this.evaluate({
2032 - node: node.object,
2033 - scope: scope2,
2034 - context,
2035 - allowGlobal,
2036 - forceBindingRootScopeToFunctions
2037 - });
2038 - if (object == null) throw new Error("Cannot read property of null or undefined");
2039 - let memberValue;
2040 - if (node.computed) memberValue = object[this.evaluate({
2041 - node: node.property,
2042 - scope: scope2,
2043 - context,
2044 - allowGlobal,
2045 - forceBindingRootScopeToFunctions
2046 - })];
2047 - else memberValue = object[node.property.name];
2048 - if (typeof memberValue === "function") if (forceBindingRootScopeToFunctions) return memberValue.bind(scope2);
2049 - else return memberValue.bind(object);
2050 - return memberValue;
2051 - case "CallExpression":
2052 - const args = node.arguments.map((arg) => this.evaluate({
2053 - node: arg,
2054 - scope: scope2,
2055 - context,
2056 - allowGlobal,
2057 - forceBindingRootScopeToFunctions
2058 - }));
2059 - if (node.callee.type === "MemberExpression") {
2060 - const obj = this.evaluate({
2061 - node: node.callee.object,
2062 - scope: scope2,
2063 - context,
2064 - allowGlobal,
2065 - forceBindingRootScopeToFunctions
2066 - });
2067 - let func;
2068 - if (node.callee.computed) func = obj[this.evaluate({
2069 - node: node.callee.property,
2070 - scope: scope2,
2071 - context,
2072 - allowGlobal,
2073 - forceBindingRootScopeToFunctions
2074 - })];
2075 - else func = obj[node.callee.property.name];
2076 - if (typeof func !== "function") throw new Error("Value is not a function");
2077 - return func.apply(obj, args);
2078 - } else if (node.callee.type === "Identifier") {
2079 - const name = node.callee.name;
2080 - let func;
2081 - if (name in scope2) func = scope2[name];
2082 - else if (allowGlobal && typeof globalThis[name] !== "undefined") func = globalThis[name];
2083 - else throw new Error(`Undefined variable: ${name}`);
2084 - if (typeof func !== "function") throw new Error("Value is not a function");
2085 - const thisContext = context !== null ? context : scope2;
2086 - return func.apply(thisContext, args);
2087 - } else {
2088 - const callee = this.evaluate({
2089 - node: node.callee,
2090 - scope: scope2,
2091 - context,
2092 - allowGlobal,
2093 - forceBindingRootScopeToFunctions
2094 - });
2095 - if (typeof callee !== "function") throw new Error("Value is not a function");
2096 - return callee.apply(context, args);
2097 - }
2098 - case "UnaryExpression":
2099 - const argument = this.evaluate({
2100 - node: node.argument,
2101 - scope: scope2,
2102 - context,
2103 - allowGlobal,
2104 - forceBindingRootScopeToFunctions
2105 - });
2106 - switch (node.operator) {
2107 - case "!": return !argument;
2108 - case "-": return -argument;
2109 - case "+": return +argument;
2110 - default: throw new Error(`Unknown unary operator: ${node.operator}`);
2111 - }
2112 - case "UpdateExpression":
2113 - if (node.argument.type === "Identifier") {
2114 - const name = node.argument.name;
2115 - if (!(name in scope2)) throw new Error(`Undefined variable: ${name}`);
2116 - const oldValue = scope2[name];
2117 - if (node.operator === "++") scope2[name] = oldValue + 1;
2118 - else if (node.operator === "--") scope2[name] = oldValue - 1;
2119 - return node.prefix ? scope2[name] : oldValue;
2120 - } else if (node.argument.type === "MemberExpression") {
2121 - const obj = this.evaluate({
2122 - node: node.argument.object,
2123 - scope: scope2,
2124 - context,
2125 - allowGlobal,
2126 - forceBindingRootScopeToFunctions
2127 - });
2128 - const prop = node.argument.computed ? this.evaluate({
2129 - node: node.argument.property,
2130 - scope: scope2,
2131 - context,
2132 - allowGlobal,
2133 - forceBindingRootScopeToFunctions
2134 - }) : node.argument.property.name;
2135 - const oldValue = obj[prop];
2136 - if (node.operator === "++") obj[prop] = oldValue + 1;
2137 - else if (node.operator === "--") obj[prop] = oldValue - 1;
2138 - return node.prefix ? obj[prop] : oldValue;
2139 - }
2140 - throw new Error("Invalid update expression target");
2141 - case "BinaryExpression":
2142 - const left = this.evaluate({
2143 - node: node.left,
2144 - scope: scope2,
2145 - context,
2146 - allowGlobal,
2147 - forceBindingRootScopeToFunctions
2148 - });
2149 - const right = this.evaluate({
2150 - node: node.right,
2151 - scope: scope2,
2152 - context,
2153 - allowGlobal,
2154 - forceBindingRootScopeToFunctions
2155 - });
2156 - switch (node.operator) {
2157 - case "+": return left + right;
2158 - case "-": return left - right;
2159 - case "*": return left * right;
2160 - case "/": return left / right;
2161 - case "%": return left % right;
2162 - case "==": return left == right;
2163 - case "!=": return left != right;
2164 - case "===": return left === right;
2165 - case "!==": return left !== right;
2166 - case "<": return left < right;
2167 - case ">": return left > right;
2168 - case "<=": return left <= right;
2169 - case ">=": return left >= right;
2170 - case "&&": return left && right;
2171 - case "||": return left || right;
2172 - default: throw new Error(`Unknown binary operator: ${node.operator}`);
2173 - }
2174 - case "ConditionalExpression": return this.evaluate({
2175 - node: node.test,
2176 - scope: scope2,
2177 - context,
2178 - allowGlobal,
2179 - forceBindingRootScopeToFunctions
2180 - }) ? this.evaluate({
2181 - node: node.consequent,
2182 - scope: scope2,
2183 - context,
2184 - allowGlobal,
2185 - forceBindingRootScopeToFunctions
2186 - }) : this.evaluate({
2187 - node: node.alternate,
2188 - scope: scope2,
2189 - context,
2190 - allowGlobal,
2191 - forceBindingRootScopeToFunctions
2192 - });
2193 - case "AssignmentExpression":
2194 - const value = this.evaluate({
2195 - node: node.right,
2196 - scope: scope2,
2197 - context,
2198 - allowGlobal,
2199 - forceBindingRootScopeToFunctions
2200 - });
2201 - if (node.left.type === "Identifier") {
2202 - scope2[node.left.name] = value;
2203 - return value;
2204 - } else if (node.left.type === "MemberExpression") {
2205 - const obj = this.evaluate({
2206 - node: node.left.object,
2207 - scope: scope2,
2208 - context,
2209 - allowGlobal,
2210 - forceBindingRootScopeToFunctions
2211 - });
2212 - if (node.left.computed) {
2213 - const prop = this.evaluate({
2214 - node: node.left.property,
2215 - scope: scope2,
2216 - context,
2217 - allowGlobal,
2218 - forceBindingRootScopeToFunctions
2219 - });
2220 - obj[prop] = value;
2221 - } else obj[node.left.property.name] = value;
2222 - return value;
2223 - }
2224 - throw new Error("Invalid assignment target");
2225 - case "ArrayExpression": return node.elements.map((el) => this.evaluate({
2226 - node: el,
2227 - scope: scope2,
2228 - context,
2229 - allowGlobal,
2230 - forceBindingRootScopeToFunctions
2231 - }));
2232 - case "ObjectExpression":
2233 - const result = {};
2234 - for (const prop of node.properties) {
2235 - const key = prop.computed ? this.evaluate({
2236 - node: prop.key,
2237 - scope: scope2,
2238 - context,
2239 - allowGlobal,
2240 - forceBindingRootScopeToFunctions
2241 - }) : prop.key.type === "Identifier" ? prop.key.name : this.evaluate({
2242 - node: prop.key,
2243 - scope: scope2,
2244 - context,
2245 - allowGlobal,
2246 - forceBindingRootScopeToFunctions
2247 - });
2248 - result[key] = this.evaluate({
2249 - node: prop.value,
2250 - scope: scope2,
2251 - context,
2252 - allowGlobal,
2253 - forceBindingRootScopeToFunctions
2254 - });
2255 - }
2256 - return result;
2257 - default: throw new Error(`Unknown node type: ${node.type}`);
2258 - }
2259 - }
2260 - };
2261 - function generateRuntimeFunction(expression) {
2262 - try {
2263 - const ast = new Parser(new Tokenizer(expression).tokenize()).parse();
2264 - const evaluator = new Evaluator();
2265 - return function(options = {}) {
2266 - const { scope: scope2 = {}, context = null, allowGlobal = false, forceBindingRootScopeToFunctions = false } = options;
2267 - return evaluator.evaluate({
2268 - node: ast,
2269 - scope: scope2,
2270 - context,
2271 - allowGlobal,
2272 - forceBindingRootScopeToFunctions
2273 - });
2274 - };
2275 - } catch (error2) {
2276 - throw new Error(`CSP Parser Error: ${error2.message}`);
2277 - }
2278 - }
2279 - function cspEvaluator(el, expression) {
2280 - let dataStack = generateDataStack(el);
2281 - if (typeof expression === "function") return generateEvaluatorFromFunction(dataStack, expression);
2282 - let evaluator = generateEvaluator(el, expression, dataStack);
2283 - return tryCatch.bind(null, el, expression, evaluator);
2284 - }
2285 - function generateDataStack(el) {
2286 - let overriddenMagics = {};
2287 - injectMagics(overriddenMagics, el);
2288 - return [overriddenMagics, ...closestDataStack(el)];
2289 - }
2290 - function generateEvaluator(el, expression, dataStack) {
2291 - return (receiver = () => {}, { scope: scope2 = {}, params = [] } = {}) => {
2292 - let completeScope = mergeProxies([scope2, ...dataStack]);
2293 - let returnValue = generateRuntimeFunction(expression)({
2294 - scope: completeScope,
2295 - allowGlobal: true,
2296 - forceBindingRootScopeToFunctions: true
2297 - });
2298 - if (shouldAutoEvaluateFunctions && typeof returnValue === "function") {
2299 - let nextReturnValue = returnValue.apply(returnValue, params);
2300 - if (nextReturnValue instanceof Promise) nextReturnValue.then((i) => receiver(i));
2301 - else receiver(nextReturnValue);
2302 - } else if (typeof returnValue === "object" && returnValue instanceof Promise) returnValue.then((i) => receiver(i));
2303 - else receiver(returnValue);
2304 - };
2305 - }
2306 - function makeMap(str, expectsLowerCase) {
2307 - const map = /* @__PURE__ */ Object.create(null);
2308 - const list = str.split(",");
2309 - for (let i = 0; i < list.length; i++) map[list[i]] = true;
2310 - return expectsLowerCase ? (val) => !!map[val.toLowerCase()] : (val) => !!map[val];
2311 - }
2312 - var EMPTY_OBJ = Object.freeze({});
2313 - Object.freeze([]);
2314 - var hasOwnProperty = Object.prototype.hasOwnProperty;
2315 - var hasOwn = (val, key) => hasOwnProperty.call(val, key);
2316 - var isArray = Array.isArray;
2317 - var isMap = (val) => toTypeString(val) === "[object Map]";
2318 - var isString = (val) => typeof val === "string";
2319 - var isSymbol = (val) => typeof val === "symbol";
2320 - var isObject = (val) => val !== null && typeof val === "object";
2321 - var objectToString = Object.prototype.toString;
2322 - var toTypeString = (value) => objectToString.call(value);
2323 - var toRawType = (value) => {
2324 - return toTypeString(value).slice(8, -1);
2325 - };
2326 - var isIntegerKey = (key) => isString(key) && key !== "NaN" && key[0] !== "-" && "" + parseInt(key, 10) === key;
2327 - var cacheStringFunction = (fn) => {
2328 - const cache = /* @__PURE__ */ Object.create(null);
2329 - return (str) => {
2330 - return cache[str] || (cache[str] = fn(str));
2331 - };
2332 - };
2333 - var capitalize = cacheStringFunction((str) => str.charAt(0).toUpperCase() + str.slice(1));
2334 - var hasChanged = (value, oldValue) => value !== oldValue && (value === value || oldValue === oldValue);
2335 - var targetMap = /* @__PURE__ */ new WeakMap();
2336 - var effectStack = [];
2337 - var activeEffect;
2338 - var ITERATE_KEY = Symbol("iterate");
2339 - var MAP_KEY_ITERATE_KEY = Symbol("Map key iterate");
2340 - function isEffect(fn) {
2341 - return fn && fn._isEffect === true;
2342 - }
2343 - function effect2(fn, options = EMPTY_OBJ) {
2344 - if (isEffect(fn)) fn = fn.raw;
2345 - const effect3 = createReactiveEffect(fn, options);
2346 - if (!options.lazy) effect3();
2347 - return effect3;
2348 - }
2349 - function stop(effect3) {
2350 - if (effect3.active) {
2351 - cleanup(effect3);
2352 - if (effect3.options.onStop) effect3.options.onStop();
2353 - effect3.active = false;
2354 - }
2355 - }
2356 - var uid = 0;
2357 - function createReactiveEffect(fn, options) {
2358 - const effect3 = function reactiveEffect() {
2359 - if (!effect3.active) return fn();
2360 - if (!effectStack.includes(effect3)) {
2361 - cleanup(effect3);
2362 - try {
2363 - enableTracking();
2364 - effectStack.push(effect3);
2365 - activeEffect = effect3;
2366 - return fn();
2367 - } finally {
2368 - effectStack.pop();
2369 - resetTracking();
2370 - activeEffect = effectStack[effectStack.length - 1];
2371 - }
2372 - }
2373 - };
2374 - effect3.id = uid++;
2375 - effect3.allowRecurse = !!options.allowRecurse;
2376 - effect3._isEffect = true;
2377 - effect3.active = true;
2378 - effect3.raw = fn;
2379 - effect3.deps = [];
2380 - effect3.options = options;
2381 - return effect3;
2382 - }
2383 - function cleanup(effect3) {
2384 - const { deps } = effect3;
2385 - if (deps.length) {
2386 - for (let i = 0; i < deps.length; i++) deps[i].delete(effect3);
2387 - deps.length = 0;
2388 - }
2389 - }
2390 - var shouldTrack = true;
2391 - var trackStack = [];
2392 - function pauseTracking() {
2393 - trackStack.push(shouldTrack);
2394 - shouldTrack = false;
2395 - }
2396 - function enableTracking() {
2397 - trackStack.push(shouldTrack);
2398 - shouldTrack = true;
2399 - }
2400 - function resetTracking() {
2401 - const last = trackStack.pop();
2402 - shouldTrack = last === void 0 ? true : last;
2403 - }
2404 - function track(target, type, key) {
2405 - if (!shouldTrack || activeEffect === void 0) return;
2406 - let depsMap = targetMap.get(target);
2407 - if (!depsMap) targetMap.set(target, depsMap = /* @__PURE__ */ new Map());
2408 - let dep = depsMap.get(key);
2409 - if (!dep) depsMap.set(key, dep = /* @__PURE__ */ new Set());
2410 - if (!dep.has(activeEffect)) {
2411 - dep.add(activeEffect);
2412 - activeEffect.deps.push(dep);
2413 - if (activeEffect.options.onTrack) activeEffect.options.onTrack({
2414 - effect: activeEffect,
2415 - target,
2416 - type,
2417 - key
2418 - });
2419 - }
2420 - }
2421 - function trigger(target, type, key, newValue, oldValue, oldTarget) {
2422 - const depsMap = targetMap.get(target);
2423 - if (!depsMap) return;
2424 - const effects = /* @__PURE__ */ new Set();
2425 - const add2 = (effectsToAdd) => {
2426 - if (effectsToAdd) effectsToAdd.forEach((effect3) => {
2427 - if (effect3 !== activeEffect || effect3.allowRecurse) effects.add(effect3);
2428 - });
2429 - };
2430 - if (type === "clear") depsMap.forEach(add2);
2431 - else if (key === "length" && isArray(target)) depsMap.forEach((dep, key2) => {
2432 - if (key2 === "length" || key2 >= newValue) add2(dep);
2433 - });
2434 - else {
2435 - if (key !== void 0) add2(depsMap.get(key));
2436 - switch (type) {
2437 - case "add":
2438 - if (!isArray(target)) {
2439 - add2(depsMap.get(ITERATE_KEY));
2440 - if (isMap(target)) add2(depsMap.get(MAP_KEY_ITERATE_KEY));
2441 - } else if (isIntegerKey(key)) add2(depsMap.get("length"));
2442 - break;
2443 - case "delete":
2444 - if (!isArray(target)) {
2445 - add2(depsMap.get(ITERATE_KEY));
2446 - if (isMap(target)) add2(depsMap.get(MAP_KEY_ITERATE_KEY));
2447 - }
2448 - break;
2449 - case "set":
2450 - if (isMap(target)) add2(depsMap.get(ITERATE_KEY));
2451 - break;
2452 - }
2453 - }
2454 - const run = (effect3) => {
2455 - if (effect3.options.onTrigger) effect3.options.onTrigger({
2456 - effect: effect3,
2457 - target,
2458 - key,
2459 - type,
2460 - newValue,
2461 - oldValue,
2462 - oldTarget
2463 - });
2464 - if (effect3.options.scheduler) effect3.options.scheduler(effect3);
2465 - else effect3();
2466 - };
2467 - effects.forEach(run);
2468 - }
2469 - var isNonTrackableKeys = /* @__PURE__ */ makeMap(`__proto__,__v_isRef,__isVue`);
2470 - var builtInSymbols = new Set(Object.getOwnPropertyNames(Symbol).map((key) => Symbol[key]).filter(isSymbol));
2471 - var get2 = /* @__PURE__ */ createGetter();
2472 - var readonlyGet = /* @__PURE__ */ createGetter(true);
2473 - var arrayInstrumentations = /* @__PURE__ */ createArrayInstrumentations();
2474 - function createArrayInstrumentations() {
2475 - const instrumentations = {};
2476 - [
2477 - "includes",
2478 - "indexOf",
2479 - "lastIndexOf"
2480 - ].forEach((key) => {
2481 - instrumentations[key] = function(...args) {
2482 - const arr = toRaw(this);
2483 - for (let i = 0, l = this.length; i < l; i++) track(arr, "get", i + "");
2484 - const res = arr[key](...args);
2485 - if (res === -1 || res === false) return arr[key](...args.map(toRaw));
2486 - else return res;
2487 - };
2488 - });
2489 - [
2490 - "push",
2491 - "pop",
2492 - "shift",
2493 - "unshift",
2494 - "splice"
2495 - ].forEach((key) => {
2496 - instrumentations[key] = function(...args) {
2497 - pauseTracking();
2498 - const res = toRaw(this)[key].apply(this, args);
2499 - resetTracking();
2500 - return res;
2501 - };
2502 - });
2503 - return instrumentations;
2504 - }
2505 - function createGetter(isReadonly = false, shallow = false) {
2506 - return function get3(target, key, receiver) {
2507 - if (key === "__v_isReactive") return !isReadonly;
2508 - else if (key === "__v_isReadonly") return isReadonly;
2509 - else if (key === "__v_raw" && receiver === (isReadonly ? shallow ? shallowReadonlyMap : readonlyMap : shallow ? shallowReactiveMap : reactiveMap).get(target)) return target;
2510 - const targetIsArray = isArray(target);
2511 - if (!isReadonly && targetIsArray && hasOwn(arrayInstrumentations, key)) return Reflect.get(arrayInstrumentations, key, receiver);
2512 - const res = Reflect.get(target, key, receiver);
2513 - if (isSymbol(key) ? builtInSymbols.has(key) : isNonTrackableKeys(key)) return res;
2514 - if (!isReadonly) track(target, "get", key);
2515 - if (shallow) return res;
2516 - if (isRef(res)) return !targetIsArray || !isIntegerKey(key) ? res.value : res;
2517 - if (isObject(res)) return isReadonly ? readonly(res) : reactive2(res);
2518 - return res;
2519 - };
2520 - }
2521 - var set2 = /* @__PURE__ */ createSetter();
2522 - function createSetter(shallow = false) {
2523 - return function set3(target, key, value, receiver) {
2524 - let oldValue = target[key];
2525 - if (!shallow) {
2526 - value = toRaw(value);
2527 - oldValue = toRaw(oldValue);
2528 - if (!isArray(target) && isRef(oldValue) && !isRef(value)) {
2529 - oldValue.value = value;
2530 - return true;
2531 - }
2532 - }
2533 - const hadKey = isArray(target) && isIntegerKey(key) ? Number(key) < target.length : hasOwn(target, key);
2534 - const result = Reflect.set(target, key, value, receiver);
2535 - if (target === toRaw(receiver)) {
2536 - if (!hadKey) trigger(target, "add", key, value);
2537 - else if (hasChanged(value, oldValue)) trigger(target, "set", key, value, oldValue);
2538 - }
2539 - return result;
2540 - };
2541 - }
2542 - function deleteProperty(target, key) {
2543 - const hadKey = hasOwn(target, key);
2544 - const oldValue = target[key];
2545 - const result = Reflect.deleteProperty(target, key);
2546 - if (result && hadKey) trigger(target, "delete", key, void 0, oldValue);
2547 - return result;
2548 - }
2549 - function has(target, key) {
2550 - const result = Reflect.has(target, key);
2551 - if (!isSymbol(key) || !builtInSymbols.has(key)) track(target, "has", key);
2552 - return result;
2553 - }
2554 - function ownKeys(target) {
2555 - track(target, "iterate", isArray(target) ? "length" : ITERATE_KEY);
2556 - return Reflect.ownKeys(target);
2557 - }
2558 - var mutableHandlers = {
2559 - get: get2,
2560 - set: set2,
2561 - deleteProperty,
2562 - has,
2563 - ownKeys
2564 - };
2565 - var readonlyHandlers = {
2566 - get: readonlyGet,
2567 - set(target, key) {
2568 - console.warn(`Set operation on key "${String(key)}" failed: target is readonly.`, target);
2569 - return true;
2570 - },
2571 - deleteProperty(target, key) {
2572 - console.warn(`Delete operation on key "${String(key)}" failed: target is readonly.`, target);
2573 - return true;
2574 - }
2575 - };
2576 - var toReactive = (value) => isObject(value) ? reactive2(value) : value;
2577 - var toReadonly = (value) => isObject(value) ? readonly(value) : value;
2578 - var toShallow = (value) => value;
2579 - var getProto = (v) => Reflect.getPrototypeOf(v);
2580 - function get$1(target, key, isReadonly = false, isShallow = false) {
2581 - target = target["__v_raw"];
2582 - const rawTarget = toRaw(target);
2583 - const rawKey = toRaw(key);
2584 - if (key !== rawKey) !isReadonly && track(rawTarget, "get", key);
2585 - !isReadonly && track(rawTarget, "get", rawKey);
2586 - const { has: has2 } = getProto(rawTarget);
2587 - const wrap = isShallow ? toShallow : isReadonly ? toReadonly : toReactive;
2588 - if (has2.call(rawTarget, key)) return wrap(target.get(key));
2589 - else if (has2.call(rawTarget, rawKey)) return wrap(target.get(rawKey));
2590 - else if (target !== rawTarget) target.get(key);
2591 - }
2592 - function has$1(key, isReadonly = false) {
2593 - const target = this["__v_raw"];
2594 - const rawTarget = toRaw(target);
2595 - const rawKey = toRaw(key);
2596 - if (key !== rawKey) !isReadonly && track(rawTarget, "has", key);
2597 - !isReadonly && track(rawTarget, "has", rawKey);
2598 - return key === rawKey ? target.has(key) : target.has(key) || target.has(rawKey);
2599 - }
2600 - function size(target, isReadonly = false) {
2601 - target = target["__v_raw"];
2602 - !isReadonly && track(toRaw(target), "iterate", ITERATE_KEY);
2603 - return Reflect.get(target, "size", target);
2604 - }
2605 - function add(value) {
2606 - value = toRaw(value);
2607 - const target = toRaw(this);
2608 - if (!getProto(target).has.call(target, value)) {
2609 - target.add(value);
2610 - trigger(target, "add", value, value);
2611 - }
2612 - return this;
2613 - }
2614 - function set$1(key, value) {
2615 - value = toRaw(value);
2616 - const target = toRaw(this);
2617 - const { has: has2, get: get3 } = getProto(target);
2618 - let hadKey = has2.call(target, key);
2619 - if (!hadKey) {
2620 - key = toRaw(key);
2621 - hadKey = has2.call(target, key);
2622 - } else checkIdentityKeys(target, has2, key);
2623 - const oldValue = get3.call(target, key);
2624 - target.set(key, value);
2625 - if (!hadKey) trigger(target, "add", key, value);
2626 - else if (hasChanged(value, oldValue)) trigger(target, "set", key, value, oldValue);
2627 - return this;
2628 - }
2629 - function deleteEntry(key) {
2630 - const target = toRaw(this);
2631 - const { has: has2, get: get3 } = getProto(target);
2632 - let hadKey = has2.call(target, key);
2633 - if (!hadKey) {
2634 - key = toRaw(key);
2635 - hadKey = has2.call(target, key);
2636 - } else checkIdentityKeys(target, has2, key);
2637 - const oldValue = get3 ? get3.call(target, key) : void 0;
2638 - const result = target.delete(key);
2639 - if (hadKey) trigger(target, "delete", key, void 0, oldValue);
2640 - return result;
2641 - }
2642 - function clear() {
2643 - const target = toRaw(this);
2644 - const hadItems = target.size !== 0;
2645 - const oldTarget = isMap(target) ? new Map(target) : new Set(target);
2646 - const result = target.clear();
2647 - if (hadItems) trigger(target, "clear", void 0, void 0, oldTarget);
2648 - return result;
2649 - }
2650 - function createForEach(isReadonly, isShallow) {
2651 - return function forEach(callback, thisArg) {
2652 - const observed = this;
2653 - const target = observed["__v_raw"];
2654 - const rawTarget = toRaw(target);
2655 - const wrap = isShallow ? toShallow : isReadonly ? toReadonly : toReactive;
2656 - !isReadonly && track(rawTarget, "iterate", ITERATE_KEY);
2657 - return target.forEach((value, key) => {
2658 - return callback.call(thisArg, wrap(value), wrap(key), observed);
2659 - });
2660 - };
2661 - }
2662 - function createIterableMethod(method, isReadonly, isShallow) {
2663 - return function(...args) {
2664 - const target = this["__v_raw"];
2665 - const rawTarget = toRaw(target);
2666 - const targetIsMap = isMap(rawTarget);
2667 - const isPair = method === "entries" || method === Symbol.iterator && targetIsMap;
2668 - const isKeyOnly = method === "keys" && targetIsMap;
2669 - const innerIterator = target[method](...args);
2670 - const wrap = isShallow ? toShallow : isReadonly ? toReadonly : toReactive;
2671 - !isReadonly && track(rawTarget, "iterate", isKeyOnly ? MAP_KEY_ITERATE_KEY : ITERATE_KEY);
2672 - return {
2673 - next() {
2674 - const { value, done } = innerIterator.next();
2675 - return done ? {
2676 - value,
2677 - done
2678 - } : {
2679 - value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value),
2680 - done
2681 - };
2682 - },
2683 - [Symbol.iterator]() {
2684 - return this;
2685 - }
2686 - };
2687 - };
2688 - }
2689 - function createReadonlyMethod(type) {
2690 - return function(...args) {
2691 - {
2692 - const key = args[0] ? `on key "${args[0]}" ` : ``;
2693 - console.warn(`${capitalize(type)} operation ${key}failed: target is readonly.`, toRaw(this));
2694 - }
2695 - return type === "delete" ? false : this;
2696 - };
2697 - }
2698 - function createInstrumentations() {
2699 - const mutableInstrumentations2 = {
2700 - get(key) {
2701 - return get$1(this, key);
2702 - },
2703 - get size() {
2704 - return size(this);
2705 - },
2706 - has: has$1,
2707 - add,
2708 - set: set$1,
2709 - delete: deleteEntry,
2710 - clear,
2711 - forEach: createForEach(false, false)
2712 - };
2713 - const shallowInstrumentations2 = {
2714 - get(key) {
2715 - return get$1(this, key, false, true);
2716 - },
2717 - get size() {
2718 - return size(this);
2719 - },
2720 - has: has$1,
2721 - add,
2722 - set: set$1,
2723 - delete: deleteEntry,
2724 - clear,
2725 - forEach: createForEach(false, true)
2726 - };
2727 - const readonlyInstrumentations2 = {
2728 - get(key) {
2729 - return get$1(this, key, true);
2730 - },
2731 - get size() {
2732 - return size(this, true);
2733 - },
2734 - has(key) {
2735 - return has$1.call(this, key, true);
2736 - },
2737 - add: createReadonlyMethod("add"),
2738 - set: createReadonlyMethod("set"),
2739 - delete: createReadonlyMethod("delete"),
2740 - clear: createReadonlyMethod("clear"),
2741 - forEach: createForEach(true, false)
2742 - };
2743 - const shallowReadonlyInstrumentations2 = {
2744 - get(key) {
2745 - return get$1(this, key, true, true);
2746 - },
2747 - get size() {
2748 - return size(this, true);
2749 - },
2750 - has(key) {
2751 - return has$1.call(this, key, true);
2752 - },
2753 - add: createReadonlyMethod("add"),
2754 - set: createReadonlyMethod("set"),
2755 - delete: createReadonlyMethod("delete"),
2756 - clear: createReadonlyMethod("clear"),
2757 - forEach: createForEach(true, true)
2758 - };
2759 - [
2760 - "keys",
2761 - "values",
2762 - "entries",
2763 - Symbol.iterator
2764 - ].forEach((method) => {
2765 - mutableInstrumentations2[method] = createIterableMethod(method, false, false);
2766 - readonlyInstrumentations2[method] = createIterableMethod(method, true, false);
2767 - shallowInstrumentations2[method] = createIterableMethod(method, false, true);
2768 - shallowReadonlyInstrumentations2[method] = createIterableMethod(method, true, true);
2769 - });
2770 - return [
2771 - mutableInstrumentations2,
2772 - readonlyInstrumentations2,
2773 - shallowInstrumentations2,
2774 - shallowReadonlyInstrumentations2
2775 - ];
2776 - }
2777 - var [mutableInstrumentations, readonlyInstrumentations, shallowInstrumentations, shallowReadonlyInstrumentations] = /* @__PURE__ */ createInstrumentations();
2778 - function createInstrumentationGetter(isReadonly, shallow) {
2779 - const instrumentations = shallow ? isReadonly ? shallowReadonlyInstrumentations : shallowInstrumentations : isReadonly ? readonlyInstrumentations : mutableInstrumentations;
2780 - return (target, key, receiver) => {
2781 - if (key === "__v_isReactive") return !isReadonly;
2782 - else if (key === "__v_isReadonly") return isReadonly;
2783 - else if (key === "__v_raw") return target;
2784 - return Reflect.get(hasOwn(instrumentations, key) && key in target ? instrumentations : target, key, receiver);
2785 - };
2786 - }
2787 - var mutableCollectionHandlers = { get: /* @__PURE__ */ createInstrumentationGetter(false, false) };
2788 - var readonlyCollectionHandlers = { get: /* @__PURE__ */ createInstrumentationGetter(true, false) };
2789 - function checkIdentityKeys(target, has2, key) {
2790 - const rawKey = toRaw(key);
2791 - if (rawKey !== key && has2.call(target, rawKey)) {
2792 - const type = toRawType(target);
2793 - console.warn(`Reactive ${type} contains both the raw and reactive versions of the same object${type === `Map` ? ` as keys` : ``}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`);
2794 - }
2795 - }
2796 - var reactiveMap = /* @__PURE__ */ new WeakMap();
2797 - var shallowReactiveMap = /* @__PURE__ */ new WeakMap();
2798 - var readonlyMap = /* @__PURE__ */ new WeakMap();
2799 - var shallowReadonlyMap = /* @__PURE__ */ new WeakMap();
2800 - function targetTypeMap(rawType) {
2801 - switch (rawType) {
2802 - case "Object":
2803 - case "Array": return 1;
2804 - case "Map":
2805 - case "Set":
2806 - case "WeakMap":
2807 - case "WeakSet": return 2;
2808 - default: return 0;
2809 - }
2810 - }
2811 - function getTargetType(value) {
2812 - return value["__v_skip"] || !Object.isExtensible(value) ? 0 : targetTypeMap(toRawType(value));
2813 - }
2814 - function reactive2(target) {
2815 - if (target && target["__v_isReadonly"]) return target;
2816 - return createReactiveObject(target, false, mutableHandlers, mutableCollectionHandlers, reactiveMap);
2817 - }
2818 - function readonly(target) {
2819 - return createReactiveObject(target, true, readonlyHandlers, readonlyCollectionHandlers, readonlyMap);
2820 - }
2821 - function createReactiveObject(target, isReadonly, baseHandlers, collectionHandlers, proxyMap) {
2822 - if (!isObject(target)) {
2823 - console.warn(`value cannot be made reactive: ${String(target)}`);
2824 - return target;
2825 - }
2826 - if (target["__v_raw"] && !(isReadonly && target["__v_isReactive"])) return target;
2827 - const existingProxy = proxyMap.get(target);
2828 - if (existingProxy) return existingProxy;
2829 - const targetType = getTargetType(target);
2830 - if (targetType === 0) return target;
2831 - const proxy = new Proxy(target, targetType === 2 ? collectionHandlers : baseHandlers);
2832 - proxyMap.set(target, proxy);
2833 - return proxy;
2834 - }
2835 - function toRaw(observed) {
2836 - return observed && toRaw(observed["__v_raw"]) || observed;
2837 - }
2838 - function isRef(r) {
2839 - return Boolean(r && r.__v_isRef === true);
2840 - }
2841 - magic("nextTick", () => nextTick);
2842 - magic("dispatch", (el) => dispatch.bind(dispatch, el));
2843 - magic("watch", (el, { evaluateLater: evaluateLater2, cleanup: cleanup2 }) => (key, callback) => {
2844 - let evaluate2 = evaluateLater2(key);
2845 - let getter = () => {
2846 - let value;
2847 - evaluate2((i) => value = i);
2848 - return value;
2849 - };
2850 - cleanup2(watch(getter, callback));
2851 - });
2852 - magic("store", getStores);
2853 - magic("data", (el) => scope(el));
2854 - magic("root", (el) => closestRoot(el));
2855 - magic("refs", (el) => {
2856 - if (el._x_refs_proxy) return el._x_refs_proxy;
2857 - el._x_refs_proxy = mergeProxies(getArrayOfRefObject(el));
2858 - return el._x_refs_proxy;
2859 - });
2860 - function getArrayOfRefObject(el) {
2861 - let refObjects = [];
2862 - findClosest(el, (i) => {
2863 - if (i._x_refs) refObjects.push(i._x_refs);
2864 - });
2865 - return refObjects;
2866 - }
2867 - var globalIdMemo = {};
2868 - function findAndIncrementId(name) {
2869 - if (!globalIdMemo[name]) globalIdMemo[name] = 0;
2870 - return ++globalIdMemo[name];
2871 - }
2872 - function closestIdRoot(el, name) {
2873 - return findClosest(el, (element) => {
2874 - if (element._x_ids && element._x_ids[name]) return true;
2875 - });
2876 - }
2877 - function setIdRoot(el, name) {
2878 - if (!el._x_ids) el._x_ids = {};
2879 - if (!el._x_ids[name]) el._x_ids[name] = findAndIncrementId(name);
2880 - }
2881 - magic("id", (el, { cleanup: cleanup2 }) => (name, key = null) => {
2882 - return cacheIdByNameOnElement(el, `${name}${key ? `-${key}` : ""}`, cleanup2, () => {
2883 - let root = closestIdRoot(el, name);
2884 - let id = root ? root._x_ids[name] : findAndIncrementId(name);
2885 - return key ? `${name}-${id}-${key}` : `${name}-${id}`;
2886 - });
2887 - });
2888 - interceptClone((from, to) => {
2889 - if (from._x_id) to._x_id = from._x_id;
2890 - });
2891 - function cacheIdByNameOnElement(el, cacheKey, cleanup2, callback) {
2892 - if (!el._x_id) el._x_id = {};
2893 - if (el._x_id[cacheKey]) return el._x_id[cacheKey];
2894 - let output = callback();
2895 - el._x_id[cacheKey] = output;
2896 - cleanup2(() => {
2897 - delete el._x_id[cacheKey];
2898 - });
2899 - return output;
2900 - }
2901 - magic("el", (el) => el);
2902 - warnMissingPluginMagic("Focus", "focus", "focus");
2903 - warnMissingPluginMagic("Persist", "persist", "persist");
2904 - function warnMissingPluginMagic(name, magicName, slug) {
2905 - magic(magicName, (el) => warn(`You can't use [$${magicName}] without first installing the "${name}" plugin here: https://alpinejs.dev/plugins/${slug}`, el));
2906 - }
2907 - directive("modelable", (el, { expression }, { effect: effect3, evaluateLater: evaluateLater2, cleanup: cleanup2 }) => {
2908 - let func = evaluateLater2(expression);
2909 - let innerGet = () => {
2910 - let result;
2911 - func((i) => result = i);
2912 - return result;
2913 - };
2914 - let evaluateInnerSet = evaluateLater2(`${expression} = __placeholder`);
2915 - let innerSet = (val) => evaluateInnerSet(() => {}, { scope: { "__placeholder": val } });
2916 - innerSet(innerGet());
2917 - queueMicrotask(() => {
2918 - if (!el._x_model) return;
2919 - el._x_removeModelListeners["default"]();
2920 - let outerGet = el._x_model.get;
2921 - let outerSet = el._x_model.set;
2922 - cleanup2(entangle({
2923 - get() {
2924 - return outerGet();
2925 - },
2926 - set(value) {
2927 - outerSet(value);
2928 - }
2929 - }, {
2930 - get() {
2931 - return innerGet();
2932 - },
2933 - set(value) {
2934 - innerSet(value);
2935 - }
2936 - }));
2937 - });
2938 - });
2939 - directive("teleport", (el, { modifiers, expression }, { cleanup: cleanup2 }) => {
2940 - if (el.tagName.toLowerCase() !== "template") warn("x-teleport can only be used on a <template> tag", el);
2941 - let target = getTarget(expression);
2942 - let clone2 = el.content.cloneNode(true).firstElementChild;
2943 - el._x_teleport = clone2;
2944 - clone2._x_teleportBack = el;
2945 - el.setAttribute("data-teleport-template", true);
2946 - clone2.setAttribute("data-teleport-target", true);
2947 - if (el._x_forwardEvents) el._x_forwardEvents.forEach((eventName) => {
2948 - clone2.addEventListener(eventName, (e) => {
2949 - e.stopPropagation();
2950 - el.dispatchEvent(new e.constructor(e.type, e));
2951 - });
2952 - });
2953 - addScopeToNode(clone2, {}, el);
2954 - let placeInDom = (clone3, target2, modifiers2) => {
2955 - if (modifiers2.includes("prepend")) target2.parentNode.insertBefore(clone3, target2);
2956 - else if (modifiers2.includes("append")) target2.parentNode.insertBefore(clone3, target2.nextSibling);
2957 - else target2.appendChild(clone3);
2958 - };
2959 - mutateDom(() => {
2960 - placeInDom(clone2, target, modifiers);
2961 - skipDuringClone(() => {
2962 - initTree(clone2);
2963 - })();
2964 - });
2965 - el._x_teleportPutBack = () => {
2966 - let target2 = getTarget(expression);
2967 - mutateDom(() => {
2968 - placeInDom(el._x_teleport, target2, modifiers);
2969 - });
2970 - };
2971 - cleanup2(() => mutateDom(() => {
2972 - clone2.remove();
2973 - destroyTree(clone2);
2974 - }));
2975 - });
2976 - var teleportContainerDuringClone = document.createElement("div");
2977 - function getTarget(expression) {
2978 - let target = skipDuringClone(() => {
2979 - return document.querySelector(expression);
2980 - }, () => {
2981 - return teleportContainerDuringClone;
2982 - })();
2983 - if (!target) warn(`Cannot find x-teleport element for selector: "${expression}"`);
2984 - return target;
2985 - }
2986 - var handler = () => {};
2987 - handler.inline = (el, { modifiers }, { cleanup: cleanup2 }) => {
2988 - modifiers.includes("self") ? el._x_ignoreSelf = true : el._x_ignore = true;
2989 - cleanup2(() => {
2990 - modifiers.includes("self") ? delete el._x_ignoreSelf : delete el._x_ignore;
2991 - });
2992 - };
2993 - directive("ignore", handler);
2994 - directive("effect", skipDuringClone((el, { expression }, { effect: effect3 }) => {
2995 - effect3(evaluateLater(el, expression));
2996 - }));
2997 - function on(el, event, modifiers, callback) {
2998 - let listenerTarget = el;
2999 - let handler4 = (e) => callback(e);
3000 - let options = {};
3001 - let wrapHandler = (callback2, wrapper) => (e) => wrapper(callback2, e);
3002 - if (modifiers.includes("dot")) event = dotSyntax(event);
3003 - if (modifiers.includes("camel")) event = camelCase2(event);
3004 - if (modifiers.includes("passive")) options.passive = true;
3005 - if (modifiers.includes("capture")) options.capture = true;
3006 - if (modifiers.includes("window")) listenerTarget = window;
3007 - if (modifiers.includes("document")) listenerTarget = document;
3008 - if (modifiers.includes("debounce")) {
3009 - let nextModifier = modifiers[modifiers.indexOf("debounce") + 1] || "invalid-wait";
3010 - let wait = isNumeric(nextModifier.split("ms")[0]) ? Number(nextModifier.split("ms")[0]) : 250;
3011 - handler4 = debounce(handler4, wait);
3012 - }
3013 - if (modifiers.includes("throttle")) {
3014 - let nextModifier = modifiers[modifiers.indexOf("throttle") + 1] || "invalid-wait";
3015 - let wait = isNumeric(nextModifier.split("ms")[0]) ? Number(nextModifier.split("ms")[0]) : 250;
3016 - handler4 = throttle(handler4, wait);
3017 - }
3018 - if (modifiers.includes("prevent")) handler4 = wrapHandler(handler4, (next, e) => {
3019 - e.preventDefault();
3020 - next(e);
3021 - });
3022 - if (modifiers.includes("stop")) handler4 = wrapHandler(handler4, (next, e) => {
3023 - e.stopPropagation();
3024 - next(e);
3025 - });
3026 - if (modifiers.includes("once")) handler4 = wrapHandler(handler4, (next, e) => {
3027 - next(e);
3028 - listenerTarget.removeEventListener(event, handler4, options);
3029 - });
3030 - if (modifiers.includes("away") || modifiers.includes("outside")) {
3031 - listenerTarget = document;
3032 - handler4 = wrapHandler(handler4, (next, e) => {
3033 - if (el.contains(e.target)) return;
3034 - if (e.target.isConnected === false) return;
3035 - if (el.offsetWidth < 1 && el.offsetHeight < 1) return;
3036 - if (el._x_isShown === false) return;
3037 - next(e);
3038 - });
3039 - }
3040 - if (modifiers.includes("self")) handler4 = wrapHandler(handler4, (next, e) => {
3041 - e.target === el && next(e);
3042 - });
3043 - if (isKeyEvent(event) || isClickEvent(event)) handler4 = wrapHandler(handler4, (next, e) => {
3044 - if (isListeningForASpecificKeyThatHasntBeenPressed(e, modifiers)) return;
3045 - next(e);
3046 - });
3047 - listenerTarget.addEventListener(event, handler4, options);
3048 - return () => {
3049 - listenerTarget.removeEventListener(event, handler4, options);
3050 - };
3051 - }
3052 - function dotSyntax(subject) {
3053 - return subject.replace(/-/g, ".");
3054 - }
3055 - function camelCase2(subject) {
3056 - return subject.toLowerCase().replace(/-(\w)/g, (match, char) => char.toUpperCase());
3057 - }
3058 - function isNumeric(subject) {
3059 - return !Array.isArray(subject) && !isNaN(subject);
3060 - }
3061 - function kebabCase2(subject) {
3062 - if ([" ", "_"].includes(subject)) return subject;
3063 - return subject.replace(/([a-z])([A-Z])/g, "$1-$2").replace(/[_\s]/, "-").toLowerCase();
3064 - }
3065 - function isKeyEvent(event) {
3066 - return ["keydown", "keyup"].includes(event);
3067 - }
3068 - function isClickEvent(event) {
3069 - return [
3070 - "contextmenu",
3071 - "click",
3072 - "mouse"
3073 - ].some((i) => event.includes(i));
3074 - }
3075 - function isListeningForASpecificKeyThatHasntBeenPressed(e, modifiers) {
3076 - let keyModifiers = modifiers.filter((i) => {
3077 - return ![
3078 - "window",
3079 - "document",
3080 - "prevent",
3081 - "stop",
3082 - "once",
3083 - "capture",
3084 - "self",
3085 - "away",
3086 - "outside",
3087 - "passive",
3088 - "preserve-scroll"
3089 - ].includes(i);
3090 - });
3091 - if (keyModifiers.includes("debounce")) {
3092 - let debounceIndex = keyModifiers.indexOf("debounce");
3093 - keyModifiers.splice(debounceIndex, isNumeric((keyModifiers[debounceIndex + 1] || "invalid-wait").split("ms")[0]) ? 2 : 1);
3094 - }
3095 - if (keyModifiers.includes("throttle")) {
3096 - let debounceIndex = keyModifiers.indexOf("throttle");
3097 - keyModifiers.splice(debounceIndex, isNumeric((keyModifiers[debounceIndex + 1] || "invalid-wait").split("ms")[0]) ? 2 : 1);
3098 - }
3099 - if (keyModifiers.length === 0) return false;
3100 - if (keyModifiers.length === 1 && keyToModifiers(e.key).includes(keyModifiers[0])) return false;
3101 - const selectedSystemKeyModifiers = [
3102 - "ctrl",
3103 - "shift",
3104 - "alt",
3105 - "meta",
3106 - "cmd",
3107 - "super"
3108 - ].filter((modifier) => keyModifiers.includes(modifier));
3109 - keyModifiers = keyModifiers.filter((i) => !selectedSystemKeyModifiers.includes(i));
3110 - if (selectedSystemKeyModifiers.length > 0) {
3111 - if (selectedSystemKeyModifiers.filter((modifier) => {
3112 - if (modifier === "cmd" || modifier === "super") modifier = "meta";
3113 - return e[`${modifier}Key`];
3114 - }).length === selectedSystemKeyModifiers.length) {
3115 - if (isClickEvent(e.type)) return false;
3116 - if (keyToModifiers(e.key).includes(keyModifiers[0])) return false;
3117 - }
3118 - }
3119 - return true;
3120 - }
3121 - function keyToModifiers(key) {
3122 - if (!key) return [];
3123 - key = kebabCase2(key);
3124 - let modifierToKeyMap = {
3125 - "ctrl": "control",
3126 - "slash": "/",
3127 - "space": " ",
3128 - "spacebar": " ",
3129 - "cmd": "meta",
3130 - "esc": "escape",
3131 - "up": "arrow-up",
3132 - "down": "arrow-down",
3133 - "left": "arrow-left",
3134 - "right": "arrow-right",
3135 - "period": ".",
3136 - "comma": ",",
3137 - "equal": "=",
3138 - "minus": "-",
3139 - "underscore": "_"
3140 - };
3141 - modifierToKeyMap[key] = key;
3142 - return Object.keys(modifierToKeyMap).map((modifier) => {
3143 - if (modifierToKeyMap[modifier] === key) return modifier;
3144 - }).filter((modifier) => modifier);
3145 - }
3146 - directive("model", (el, { modifiers, expression }, { effect: effect3, cleanup: cleanup2 }) => {
3147 - let scopeTarget = el;
3148 - if (modifiers.includes("parent")) scopeTarget = el.parentNode;
3149 - let evaluateGet = evaluateLater(scopeTarget, expression);
3150 - let evaluateSet;
3151 - if (typeof expression === "string") evaluateSet = evaluateLater(scopeTarget, `${expression} = __placeholder`);
3152 - else if (typeof expression === "function" && typeof expression() === "string") evaluateSet = evaluateLater(scopeTarget, `${expression()} = __placeholder`);
3153 - else evaluateSet = () => {};
3154 - let getValue = () => {
3155 - let result;
3156 - evaluateGet((value) => result = value);
3157 - return isGetterSetter(result) ? result.get() : result;
3158 - };
3159 - let setValue = (value) => {
3160 - let result;
3161 - evaluateGet((value2) => result = value2);
3162 - if (isGetterSetter(result)) result.set(value);
3163 - else evaluateSet(() => {}, { scope: { "__placeholder": value } });
3164 - };
3165 - if (typeof expression === "string" && el.type === "radio") mutateDom(() => {
3166 - if (!el.hasAttribute("name")) el.setAttribute("name", expression);
3167 - });
3168 - let event = el.tagName.toLowerCase() === "select" || ["checkbox", "radio"].includes(el.type) || modifiers.includes("lazy") ? "change" : "input";
3169 - let removeListener = isCloning ? () => {} : on(el, event, modifiers, (e) => {
3170 - setValue(getInputValue(el, modifiers, e, getValue()));
3171 - });
3172 - if (modifiers.includes("fill")) {
3173 - if ([
3174 - void 0,
3175 - null,
3176 - ""
3177 - ].includes(getValue()) || isCheckbox(el) && Array.isArray(getValue()) || el.tagName.toLowerCase() === "select" && el.multiple) setValue(getInputValue(el, modifiers, { target: el }, getValue()));
3178 - }
3179 - if (!el._x_removeModelListeners) el._x_removeModelListeners = {};
3180 - el._x_removeModelListeners["default"] = removeListener;
3181 - cleanup2(() => el._x_removeModelListeners["default"]());
3182 - if (el.form) {
3183 - let removeResetListener = on(el.form, "reset", [], (e) => {
3184 - nextTick(() => el._x_model && el._x_model.set(getInputValue(el, modifiers, { target: el }, getValue())));
3185 - });
3186 - cleanup2(() => removeResetListener());
3187 - }
3188 - el._x_model = {
3189 - get() {
3190 - return getValue();
3191 - },
3192 - set(value) {
3193 - setValue(value);
3194 - }
3195 - };
3196 - el._x_forceModelUpdate = (value) => {
3197 - if (value === void 0 && typeof expression === "string" && expression.match(/\./)) value = "";
3198 - window.fromModel = true;
3199 - mutateDom(() => bind(el, "value", value));
3200 - delete window.fromModel;
3201 - };
3202 - effect3(() => {
3203 - let value = getValue();
3204 - if (modifiers.includes("unintrusive") && document.activeElement.isSameNode(el)) return;
3205 - el._x_forceModelUpdate(value);
3206 - });
3207 - });
3208 - function getInputValue(el, modifiers, event, currentValue) {
3209 - return mutateDom(() => {
3210 - if (event instanceof CustomEvent && event.detail !== void 0) return event.detail !== null && event.detail !== void 0 ? event.detail : event.target.value;
3211 - else if (isCheckbox(el)) if (Array.isArray(currentValue)) {
3212 - let newValue = null;
3213 - if (modifiers.includes("number")) newValue = safeParseNumber(event.target.value);
3214 - else if (modifiers.includes("boolean")) newValue = safeParseBoolean(event.target.value);
3215 - else newValue = event.target.value;
3216 - return event.target.checked ? currentValue.includes(newValue) ? currentValue : currentValue.concat([newValue]) : currentValue.filter((el2) => !checkedAttrLooseCompare2(el2, newValue));
3217 - } else return event.target.checked;
3218 - else if (el.tagName.toLowerCase() === "select" && el.multiple) {
3219 - if (modifiers.includes("number")) return Array.from(event.target.selectedOptions).map((option) => {
3220 - return safeParseNumber(option.value || option.text);
3221 - });
3222 - else if (modifiers.includes("boolean")) return Array.from(event.target.selectedOptions).map((option) => {
3223 - return safeParseBoolean(option.value || option.text);
3224 - });
3225 - return Array.from(event.target.selectedOptions).map((option) => {
3226 - return option.value || option.text;
3227 - });
3228 - } else {
3229 - let newValue;
3230 - if (isRadio(el)) if (event.target.checked) newValue = event.target.value;
3231 - else newValue = currentValue;
3232 - else newValue = event.target.value;
3233 - if (modifiers.includes("number")) return safeParseNumber(newValue);
3234 - else if (modifiers.includes("boolean")) return safeParseBoolean(newValue);
3235 - else if (modifiers.includes("trim")) return newValue.trim();
3236 - else return newValue;
3237 - }
3238 - });
3239 - }
3240 - function safeParseNumber(rawValue) {
3241 - let number = rawValue ? parseFloat(rawValue) : null;
3242 - return isNumeric2(number) ? number : rawValue;
3243 - }
3244 - function checkedAttrLooseCompare2(valueA, valueB) {
3245 - return valueA == valueB;
3246 - }
3247 - function isNumeric2(subject) {
3248 - return !Array.isArray(subject) && !isNaN(subject);
3249 - }
3250 - function isGetterSetter(value) {
3251 - return value !== null && typeof value === "object" && typeof value.get === "function" && typeof value.set === "function";
3252 - }
3253 - directive("cloak", (el) => queueMicrotask(() => mutateDom(() => el.removeAttribute(prefix("cloak")))));
3254 - addInitSelector(() => `[${prefix("init")}]`);
3255 - directive("init", skipDuringClone((el, { expression }, { evaluate: evaluate2 }) => {
3256 - if (typeof expression === "string") return !!expression.trim() && evaluate2(expression, {}, false);
3257 - return evaluate2(expression, {}, false);
3258 - }));
3259 - directive("text", (el, { expression }, { effect: effect3, evaluateLater: evaluateLater2 }) => {
3260 - let evaluate2 = evaluateLater2(expression);
3261 - effect3(() => {
3262 - evaluate2((value) => {
3263 - mutateDom(() => {
3264 - el.textContent = value;
3265 - });
3266 - });
3267 - });
3268 - });
3269 - directive("html", (el, { expression }, { effect: effect3, evaluateLater: evaluateLater2 }) => {
3270 - let evaluate2 = evaluateLater2(expression);
3271 - effect3(() => {
3272 - evaluate2((value) => {
3273 - mutateDom(() => {
3274 - el.innerHTML = value;
3275 - el._x_ignoreSelf = true;
3276 - initTree(el);
3277 - delete el._x_ignoreSelf;
3278 - });
3279 - });
3280 - });
3281 - });
3282 - mapAttributes(startingWith(":", into(prefix("bind:"))));
3283 - var handler2 = (el, { value, modifiers, expression, original }, { effect: effect3, cleanup: cleanup2 }) => {
3284 - if (!value) {
3285 - let bindingProviders = {};
3286 - injectBindingProviders(bindingProviders);
3287 - evaluateLater(el, expression)((bindings) => {
3288 - applyBindingsObject(el, bindings, original);
3289 - }, { scope: bindingProviders });
3290 - return;
3291 - }
3292 - if (value === "key") return storeKeyForXFor(el, expression);
3293 - if (el._x_inlineBindings && el._x_inlineBindings[value] && el._x_inlineBindings[value].extract) return;
3294 - let evaluate2 = evaluateLater(el, expression);
3295 - effect3(() => evaluate2((result) => {
3296 - if (result === void 0 && typeof expression === "string" && expression.match(/\./)) result = "";
3297 - mutateDom(() => bind(el, value, result, modifiers));
3298 - }));
3299 - cleanup2(() => {
3300 - el._x_undoAddedClasses && el._x_undoAddedClasses();
3301 - el._x_undoAddedStyles && el._x_undoAddedStyles();
3302 - });
3303 - };
3304 - handler2.inline = (el, { value, modifiers, expression }) => {
3305 - if (!value) return;
3306 - if (!el._x_inlineBindings) el._x_inlineBindings = {};
3307 - el._x_inlineBindings[value] = {
3308 - expression,
3309 - extract: false
3310 - };
3311 - };
3312 - directive("bind", handler2);
3313 - function storeKeyForXFor(el, expression) {
3314 - el._x_keyExpression = expression;
3315 - }
3316 - addRootSelector(() => `[${prefix("data")}]`);
3317 - directive("data", (el, { expression }, { cleanup: cleanup2 }) => {
3318 - if (shouldSkipRegisteringDataDuringClone(el)) return;
3319 - expression = expression === "" ? "{}" : expression;
3320 - let magicContext = {};
3321 - injectMagics(magicContext, el);
3322 - let dataProviderContext = {};
3323 - injectDataProviders(dataProviderContext, magicContext);
3324 - let data2 = evaluate(el, expression, { scope: dataProviderContext });
3325 - if (data2 === void 0 || data2 === true) data2 = {};
3326 - injectMagics(data2, el);
3327 - let reactiveData = reactive(data2);
3328 - initInterceptors(reactiveData);
3329 - let undo = addScopeToNode(el, reactiveData);
3330 - reactiveData["init"] && evaluate(el, reactiveData["init"]);
3331 - cleanup2(() => {
3332 - reactiveData["destroy"] && evaluate(el, reactiveData["destroy"]);
3333 - undo();
3334 - });
3335 - });
3336 - interceptClone((from, to) => {
3337 - if (from._x_dataStack) {
3338 - to._x_dataStack = from._x_dataStack;
3339 - to.setAttribute("data-has-alpine-state", true);
3340 - }
3341 - });
3342 - function shouldSkipRegisteringDataDuringClone(el) {
3343 - if (!isCloning) return false;
3344 - if (isCloningLegacy) return true;
3345 - return el.hasAttribute("data-has-alpine-state");
3346 - }
3347 - directive("show", (el, { modifiers, expression }, { effect: effect3 }) => {
3348 - let evaluate2 = evaluateLater(el, expression);
3349 - if (!el._x_doHide) el._x_doHide = () => {
3350 - mutateDom(() => {
3351 - el.style.setProperty("display", "none", modifiers.includes("important") ? "important" : void 0);
3352 - });
3353 - };
3354 - if (!el._x_doShow) el._x_doShow = () => {
3355 - mutateDom(() => {
3356 - if (el.style.length === 1 && el.style.display === "none") el.removeAttribute("style");
3357 - else el.style.removeProperty("display");
3358 - });
3359 - };
3360 - let hide = () => {
3361 - el._x_doHide();
3362 - el._x_isShown = false;
3363 - };
3364 - let show = () => {
3365 - el._x_doShow();
3366 - el._x_isShown = true;
3367 - };
3368 - let clickAwayCompatibleShow = () => setTimeout(show);
3369 - let toggle = once((value) => value ? show() : hide(), (value) => {
3370 - if (typeof el._x_toggleAndCascadeWithTransitions === "function") el._x_toggleAndCascadeWithTransitions(el, value, show, hide);
3371 - else value ? clickAwayCompatibleShow() : hide();
3372 - });
3373 - let oldValue;
3374 - let firstTime = true;
3375 - effect3(() => evaluate2((value) => {
3376 - if (!firstTime && value === oldValue) return;
3377 - if (modifiers.includes("immediate")) value ? clickAwayCompatibleShow() : hide();
3378 - toggle(value);
3379 - oldValue = value;
3380 - firstTime = false;
3381 - }));
3382 - });
3383 - directive("for", (el, { expression }, { effect: effect3, cleanup: cleanup2 }) => {
3384 - let iteratorNames = parseForExpression(expression);
3385 - let evaluateItems = evaluateLater(el, iteratorNames.items);
3386 - let evaluateKey = evaluateLater(el, el._x_keyExpression || "index");
3387 - el._x_prevKeys = [];
3388 - el._x_lookup = {};
3389 - effect3(() => loop(el, iteratorNames, evaluateItems, evaluateKey));
3390 - cleanup2(() => {
3391 - Object.values(el._x_lookup).forEach((el2) => mutateDom(() => {
3392 - destroyTree(el2);
3393 - el2.remove();
3394 - }));
3395 - delete el._x_prevKeys;
3396 - delete el._x_lookup;
3397 - });
3398 - });
3399 - function loop(el, iteratorNames, evaluateItems, evaluateKey) {
3400 - let isObject2 = (i) => typeof i === "object" && !Array.isArray(i);
3401 - let templateEl = el;
3402 - evaluateItems((items) => {
3403 - if (isNumeric3(items) && items >= 0) items = Array.from(Array(items).keys(), (i) => i + 1);
3404 - if (items === void 0) items = [];
3405 - let lookup = el._x_lookup;
3406 - let prevKeys = el._x_prevKeys;
3407 - let scopes = [];
3408 - let keys = [];
3409 - if (isObject2(items)) items = Object.entries(items).map(([key, value]) => {
3410 - let scope2 = getIterationScopeVariables(iteratorNames, value, key, items);
3411 - evaluateKey((value2) => {
3412 - if (keys.includes(value2)) warn("Duplicate key on x-for", el);
3413 - keys.push(value2);
3414 - }, { scope: {
3415 - index: key,
3416 - ...scope2
3417 - } });
3418 - scopes.push(scope2);
3419 - });
3420 - else for (let i = 0; i < items.length; i++) {
3421 - let scope2 = getIterationScopeVariables(iteratorNames, items[i], i, items);
3422 - evaluateKey((value) => {
3423 - if (keys.includes(value)) warn("Duplicate key on x-for", el);
3424 - keys.push(value);
3425 - }, { scope: {
3426 - index: i,
3427 - ...scope2
3428 - } });
3429 - scopes.push(scope2);
3430 - }
3431 - let adds = [];
3432 - let moves = [];
3433 - let removes = [];
3434 - let sames = [];
3435 - for (let i = 0; i < prevKeys.length; i++) {
3436 - let key = prevKeys[i];
3437 - if (keys.indexOf(key) === -1) removes.push(key);
3438 - }
3439 - prevKeys = prevKeys.filter((key) => !removes.includes(key));
3440 - let lastKey = "template";
3441 - for (let i = 0; i < keys.length; i++) {
3442 - let key = keys[i];
3443 - let prevIndex = prevKeys.indexOf(key);
3444 - if (prevIndex === -1) {
3445 - prevKeys.splice(i, 0, key);
3446 - adds.push([lastKey, i]);
3447 - } else if (prevIndex !== i) {
3448 - let keyInSpot = prevKeys.splice(i, 1)[0];
3449 - let keyForSpot = prevKeys.splice(prevIndex - 1, 1)[0];
3450 - prevKeys.splice(i, 0, keyForSpot);
3451 - prevKeys.splice(prevIndex, 0, keyInSpot);
3452 - moves.push([keyInSpot, keyForSpot]);
3453 - } else sames.push(key);
3454 - lastKey = key;
3455 - }
3456 - for (let i = 0; i < removes.length; i++) {
3457 - let key = removes[i];
3458 - if (!(key in lookup)) continue;
3459 - mutateDom(() => {
3460 - destroyTree(lookup[key]);
3461 - lookup[key].remove();
3462 - });
3463 - delete lookup[key];
3464 - }
3465 - for (let i = 0; i < moves.length; i++) {
3466 - let [keyInSpot, keyForSpot] = moves[i];
3467 - let elInSpot = lookup[keyInSpot];
3468 - let elForSpot = lookup[keyForSpot];
3469 - let marker = document.createElement("div");
3470 - mutateDom(() => {
3471 - if (!elForSpot) warn(`x-for ":key" is undefined or invalid`, templateEl, keyForSpot, lookup);
3472 - elForSpot.after(marker);
3473 - elInSpot.after(elForSpot);
3474 - elForSpot._x_currentIfEl && elForSpot.after(elForSpot._x_currentIfEl);
3475 - marker.before(elInSpot);
3476 - elInSpot._x_currentIfEl && elInSpot.after(elInSpot._x_currentIfEl);
3477 - marker.remove();
3478 - });
3479 - elForSpot._x_refreshXForScope(scopes[keys.indexOf(keyForSpot)]);
3480 - }
3481 - for (let i = 0; i < adds.length; i++) {
3482 - let [lastKey2, index] = adds[i];
3483 - let lastEl = lastKey2 === "template" ? templateEl : lookup[lastKey2];
3484 - if (lastEl._x_currentIfEl) lastEl = lastEl._x_currentIfEl;
3485 - let scope2 = scopes[index];
3486 - let key = keys[index];
3487 - let clone2 = document.importNode(templateEl.content, true).firstElementChild;
3488 - let reactiveScope = reactive(scope2);
3489 - addScopeToNode(clone2, reactiveScope, templateEl);
3490 - clone2._x_refreshXForScope = (newScope) => {
3491 - Object.entries(newScope).forEach(([key2, value]) => {
3492 - reactiveScope[key2] = value;
3493 - });
3494 - };
3495 - mutateDom(() => {
3496 - lastEl.after(clone2);
3497 - skipDuringClone(() => initTree(clone2))();
3498 - });
3499 - if (typeof key === "object") warn("x-for key cannot be an object, it must be a string or an integer", templateEl);
3500 - lookup[key] = clone2;
3501 - }
3502 - for (let i = 0; i < sames.length; i++) lookup[sames[i]]._x_refreshXForScope(scopes[keys.indexOf(sames[i])]);
3503 - templateEl._x_prevKeys = keys;
3504 - });
3505 - }
3506 - function parseForExpression(expression) {
3507 - let forIteratorRE = /,([^,\}\]]*)(?:,([^,\}\]]*))?$/;
3508 - let stripParensRE = /^\s*\(|\)\s*$/g;
3509 - let inMatch = expression.match(/([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/);
3510 - if (!inMatch) return;
3511 - let res = {};
3512 - res.items = inMatch[2].trim();
3513 - let item = inMatch[1].replace(stripParensRE, "").trim();
3514 - let iteratorMatch = item.match(forIteratorRE);
3515 - if (iteratorMatch) {
3516 - res.item = item.replace(forIteratorRE, "").trim();
3517 - res.index = iteratorMatch[1].trim();
3518 - if (iteratorMatch[2]) res.collection = iteratorMatch[2].trim();
3519 - } else res.item = item;
3520 - return res;
3521 - }
3522 - function getIterationScopeVariables(iteratorNames, item, index, items) {
3523 - let scopeVariables = {};
3524 - if (/^\[.*\]$/.test(iteratorNames.item) && Array.isArray(item)) iteratorNames.item.replace("[", "").replace("]", "").split(",").map((i) => i.trim()).forEach((name, i) => {
3525 - scopeVariables[name] = item[i];
3526 - });
3527 - else if (/^\{.*\}$/.test(iteratorNames.item) && !Array.isArray(item) && typeof item === "object") iteratorNames.item.replace("{", "").replace("}", "").split(",").map((i) => i.trim()).forEach((name) => {
3528 - scopeVariables[name] = item[name];
3529 - });
3530 - else scopeVariables[iteratorNames.item] = item;
3531 - if (iteratorNames.index) scopeVariables[iteratorNames.index] = index;
3532 - if (iteratorNames.collection) scopeVariables[iteratorNames.collection] = items;
3533 - return scopeVariables;
3534 - }
3535 - function isNumeric3(subject) {
3536 - return !Array.isArray(subject) && !isNaN(subject);
3537 - }
3538 - function handler3() {}
3539 - handler3.inline = (el, { expression }, { cleanup: cleanup2 }) => {
3540 - let root = closestRoot(el);
3541 - if (!root._x_refs) root._x_refs = {};
3542 - root._x_refs[expression] = el;
3543 - cleanup2(() => delete root._x_refs[expression]);
3544 - };
3545 - directive("ref", handler3);
3546 - directive("if", (el, { expression }, { effect: effect3, cleanup: cleanup2 }) => {
3547 - if (el.tagName.toLowerCase() !== "template") warn("x-if can only be used on a <template> tag", el);
3548 - let evaluate2 = evaluateLater(el, expression);
3549 - let show = () => {
3550 - if (el._x_currentIfEl) return el._x_currentIfEl;
3551 - let clone2 = el.content.cloneNode(true).firstElementChild;
3552 - addScopeToNode(clone2, {}, el);
3553 - mutateDom(() => {
3554 - el.after(clone2);
3555 - skipDuringClone(() => initTree(clone2))();
3556 - });
3557 - el._x_currentIfEl = clone2;
3558 - el._x_undoIf = () => {
3559 - mutateDom(() => {
3560 - destroyTree(clone2);
3561 - clone2.remove();
3562 - });
3563 - delete el._x_currentIfEl;
3564 - };
3565 - return clone2;
3566 - };
3567 - let hide = () => {
3568 - if (!el._x_undoIf) return;
3569 - el._x_undoIf();
3570 - delete el._x_undoIf;
3571 - };
3572 - effect3(() => evaluate2((value) => {
3573 - value ? show() : hide();
3574 - }));
3575 - cleanup2(() => el._x_undoIf && el._x_undoIf());
3576 - });
3577 - directive("id", (el, { expression }, { evaluate: evaluate2 }) => {
3578 - evaluate2(expression).forEach((name) => setIdRoot(el, name));
3579 - });
3580 - interceptClone((from, to) => {
3581 - if (from._x_ids) to._x_ids = from._x_ids;
3582 - });
3583 - mapAttributes(startingWith("@", into(prefix("on:"))));
3584 - directive("on", skipDuringClone((el, { value, modifiers, expression }, { cleanup: cleanup2 }) => {
3585 - let evaluate2 = expression ? evaluateLater(el, expression) : () => {};
3586 - if (el.tagName.toLowerCase() === "template") {
3587 - if (!el._x_forwardEvents) el._x_forwardEvents = [];
3588 - if (!el._x_forwardEvents.includes(value)) el._x_forwardEvents.push(value);
3589 - }
3590 - let removeListener = on(el, value, modifiers, (e) => {
3591 - evaluate2(() => {}, {
3592 - scope: { "$event": e },
3593 - params: [e]
3594 - });
3595 - });
3596 - cleanup2(() => removeListener());
3597 - }));
3598 - warnMissingPluginDirective("Collapse", "collapse", "collapse");
3599 - warnMissingPluginDirective("Intersect", "intersect", "intersect");
3600 - warnMissingPluginDirective("Focus", "trap", "focus");
3601 - warnMissingPluginDirective("Mask", "mask", "mask");
3602 - function warnMissingPluginDirective(name, directiveName, slug) {
3603 - directive(directiveName, (el) => warn(`You can't use [x-${directiveName}] without first installing the "${name}" plugin here: https://alpinejs.dev/plugins/${slug}`, el));
3604 - }
3605 - alpine_default.setEvaluator(cspEvaluator);
3606 - alpine_default.setReactivityEngine({
3607 - reactive: reactive2,
3608 - effect: effect2,
3609 - release: stop,
3610 - raw: toRaw
3611 - });
3612 - var src_default = alpine_default;
3613 -
3614 -//#endregion
3615 -//#region packages/packages/core/alpinejs/src/init.ts
3616 - function init() {
3617 - document.addEventListener("DOMContentLoaded", () => {
3618 - src_default.start();
3619 - }, { once: true });
3620 - }
3621 -
3622 -//#endregion
3623 -//#region packages/packages/core/alpinejs/src/index.ts
3624 - var src_exports = /* @__PURE__ */ __exportAll({
3625 - Alpine: () => src_default,
3626 - init: () => init,
3627 - refreshTree: () => refreshTree
3628 - });
3629 - var refreshTree = (element) => {
3630 - src_default.nextTick(() => {
3631 - src_default.destroyTree(element);
3632 - src_default.initTree(element);
3633 - });
3634 - };
3635 -
3636 -//#endregion
3637 -//#region \0elementor-package-library-entry
3638 - (window.elementorV2 = window.elementorV2 || {}).alpinejs = src_exports;
3639 -
3640 -//#endregion
3641 -})();
3642 -window.elementorV2.alpinejs?.init?.();
1 +/*! For license information please see alpinejs.js.LICENSE.txt */
2 +!function(){"use strict";var e={"./packages/node_modules/@alpinejs/csp/dist/module.esm.js":function(e,t,n){n.r(t),n.d(t,{Alpine:function(){return je},default:function(){return Me}});var i,r,o,s,a=!1,l=!1,c=[],u=-1;function scheduler(e){!function queueJob(e){c.includes(e)||c.push(e);!function queueFlush(){l||a||(a=!0,queueMicrotask(flushJobs))}()}(e)}function dequeueJob(e){let t=c.indexOf(e);-1!==t&&t>u&&c.splice(t,1)}function flushJobs(){a=!1,l=!0;for(let e=0;e<c.length;e++)c[e](),u=e;c.length=0,u=-1,l=!1}var d=!0;function overrideEffect(e){r=e}function watch(e,t){let n,i=!0,s=r(()=>{let r=e();JSON.stringify(r),i?n=r:queueMicrotask(()=>{t(r,n),n=r}),i=!1});return()=>o(s)}var p=[],f=[],h=[];function onElRemoved(e,t){"function"==typeof t?(e._x_cleanups||(e._x_cleanups=[]),e._x_cleanups.push(t)):(t=e,f.push(t))}function onAttributesAdded(e){p.push(e)}function onAttributeRemoved(e,t,n){e._x_attributeCleanups||(e._x_attributeCleanups={}),e._x_attributeCleanups[t]||(e._x_attributeCleanups[t]=[]),e._x_attributeCleanups[t].push(n)}function cleanupAttributes(e,t){e._x_attributeCleanups&&Object.entries(e._x_attributeCleanups).forEach(([n,i])=>{(void 0===t||t.includes(n))&&(i.forEach(e=>e()),delete e._x_attributeCleanups[n])})}var m=new MutationObserver(onMutate),_=!1;function startObservingMutations(){m.observe(document,{subtree:!0,childList:!0,attributes:!0,attributeOldValue:!0}),_=!0}function stopObservingMutations(){!function flushObserver(){let e=m.takeRecords();g.push(()=>e.length>0&&onMutate(e));let t=g.length;queueMicrotask(()=>{if(g.length===t)for(;g.length>0;)g.shift()()})}(),m.disconnect(),_=!1}var g=[];function mutateDom(e){if(!_)return e();stopObservingMutations();let t=e();return startObservingMutations(),t}var v=!1,y=[];function onMutate(e){if(v)return void(y=y.concat(e));let t=[],n=new Set,i=new Map,r=new Map;for(let o=0;o<e.length;o++)if(!e[o].target._x_ignoreMutationObserver&&("childList"===e[o].type&&(e[o].removedNodes.forEach(e=>{1===e.nodeType&&e._x_marker&&n.add(e)}),e[o].addedNodes.forEach(e=>{1===e.nodeType&&(n.has(e)?n.delete(e):e._x_marker||t.push(e))})),"attributes"===e[o].type)){let t=e[o].target,n=e[o].attributeName,s=e[o].oldValue,add2=()=>{i.has(t)||i.set(t,[]),i.get(t).push({name:n,value:t.getAttribute(n)})},remove=()=>{r.has(t)||r.set(t,[]),r.get(t).push(n)};t.hasAttribute(n)&&null===s?add2():t.hasAttribute(n)?(remove(),add2()):remove()}r.forEach((e,t)=>{cleanupAttributes(t,e)}),i.forEach((e,t)=>{p.forEach(n=>n(t,e))});for(let e of n)t.some(t=>t.contains(e))||f.forEach(t=>t(e));for(let e of t)e.isConnected&&h.forEach(t=>t(e));t=null,n=null,i=null,r=null}function scope(e){return mergeProxies(closestDataStack(e))}function addScopeToNode(e,t,n){return e._x_dataStack=[t,...closestDataStack(n||e)],()=>{e._x_dataStack=e._x_dataStack.filter(e=>e!==t)}}function closestDataStack(e){return e._x_dataStack?e._x_dataStack:"function"==typeof ShadowRoot&&e instanceof ShadowRoot?closestDataStack(e.host):e.parentNode?closestDataStack(e.parentNode):[]}function mergeProxies(e){return new Proxy({objects:e},x)}var x={ownKeys({objects:e}){return Array.from(new Set(e.flatMap(e=>Object.keys(e))))},has({objects:e},t){return t!=Symbol.unscopables&&e.some(e=>Object.prototype.hasOwnProperty.call(e,t)||Reflect.has(e,t))},get({objects:e},t,n){return"toJSON"==t?collapseProxies:Reflect.get(e.find(e=>Reflect.has(e,t))||{},t,n)},set({objects:e},t,n,i){const r=e.find(e=>Object.prototype.hasOwnProperty.call(e,t))||e[e.length-1],o=Object.getOwnPropertyDescriptor(r,t);return o?.set&&o?.get?o.set.call(i,n)||!0:Reflect.set(r,t,n)}};function collapseProxies(){return Reflect.ownKeys(this).reduce((e,t)=>(e[t]=Reflect.get(this,t),e),{})}function initInterceptors(e){let recurse=(t,n="")=>{Object.entries(Object.getOwnPropertyDescriptors(t)).forEach(([i,{value:r,enumerable:o}])=>{if(!1===o||void 0===r)return;if("object"==typeof r&&null!==r&&r.__v_skip)return;let s=""===n?i:`${n}.${i}`;var a;"object"==typeof r&&null!==r&&r._x_interceptor?t[i]=r.initialize(e,s,i):"object"!=typeof(a=r)||Array.isArray(a)||null===a||r===t||r instanceof Element||recurse(r,s)})};return recurse(e)}function interceptor(e,t=()=>{}){let n={initialValue:void 0,_x_interceptor:!0,initialize(t,n,i){return e(this.initialValue,()=>function get(e,t){return t.split(".").reduce((e,t)=>e[t],e)}(t,n),e=>set(t,n,e),n,i)}};return t(n),e=>{if("object"==typeof e&&null!==e&&e._x_interceptor){let t=n.initialize.bind(n);n.initialize=(i,r,o)=>{let s=e.initialize(i,r,o);return n.initialValue=s,t(i,r,o)}}else n.initialValue=e;return n}}function set(e,t,n){if("string"==typeof t&&(t=t.split(".")),1!==t.length){if(0===t.length)throw error;return e[t[0]]||(e[t[0]]={}),set(e[t[0]],t.slice(1),n)}e[t[0]]=n}var b={};function magic(e,t){b[e]=t}function injectMagics(e,t){let n=function getUtilities(e){let[t,n]=getElementBoundUtilities(e),i={interceptor:interceptor,...t};return onElRemoved(e,n),i}(t);return Object.entries(b).forEach(([i,r])=>{Object.defineProperty(e,`$${i}`,{get(){return r(t,n)},enumerable:!1})}),e}function tryCatch(e,t,n,...i){try{return n(...i)}catch(n){handleError(n,e,t)}}function handleError(e,t,n=void 0){e=Object.assign(e??{message:"No error message given."},{el:t,expression:n}),console.warn(`Alpine Expression Error: ${e.message}\n\n${n?'Expression: "'+n+'"\n\n':""}`,t),setTimeout(()=>{throw e},0)}var w=!0;function dontAutoEvaluateFunctions(e){let t=w;w=!1;let n=e();return w=t,n}function evaluate(e,t,n={}){let i;return evaluateLater(e,t)(e=>i=e,n),i}function evaluateLater(...e){return E(...e)}var E=function normalEvaluator(e,t){let n={};injectMagics(n,e);let i=[n,...closestDataStack(e)],r="function"==typeof t?generateEvaluatorFromFunction(i,t):function generateEvaluatorFromString(e,t,n){let i=function generateFunctionFromString(e,t){if(k[e])return k[e];let n=Object.getPrototypeOf(async function(){}).constructor,i=/^[\n\s]*if.*\(.*\)/.test(e.trim())||/^(let|const)\s/.test(e.trim())?`(async()=>{ ${e} })()`:e;const safeAsyncFunction=()=>{try{let t=new n(["__self","scope"],`with (scope) { __self.result = ${i} }; __self.finished = true; return __self.result;`);return Object.defineProperty(t,"name",{value:`[Alpine] ${e}`}),t}catch(n){return handleError(n,t,e),Promise.resolve()}};let r=safeAsyncFunction();return k[e]=r,r}(t,n);return(r=()=>{},{scope:o={},params:s=[],context:a}={})=>{i.result=void 0,i.finished=!1;let l=mergeProxies([o,...e]);if("function"==typeof i){let e=i.call(a,i,l).catch(e=>handleError(e,n,t));i.finished?(runIfTypeOfFunction(r,i.result,l,s,n),i.result=void 0):e.then(e=>{runIfTypeOfFunction(r,e,l,s,n)}).catch(e=>handleError(e,n,t)).finally(()=>i.result=void 0)}}}(i,t,e);return tryCatch.bind(null,e,t,r)};function generateEvaluatorFromFunction(e,t){return(n=()=>{},{scope:i={},params:r=[],context:o}={})=>{runIfTypeOfFunction(n,t.apply(mergeProxies([i,...e]),r))}}var k={};function runIfTypeOfFunction(e,t,n,i,r){if(w&&"function"==typeof t){let o=t.apply(n,i);o instanceof Promise?o.then(t=>runIfTypeOfFunction(e,t,n,i)).catch(e=>handleError(e,r,t)):e(o)}else"object"==typeof t&&t instanceof Promise?t.then(t=>e(t)):e(t)}var A="x-";function prefix(e=""){return A+e}var O={};function directive(e,t){return O[e]=t,{before(t){if(!O[t])return void console.warn(String.raw`Cannot find directive \`${t}\`. \`${e}\` will use the default order of execution`);const n=P.indexOf(t);P.splice(n>=0?n:P.indexOf("DEFAULT"),0,e)}}}function directives(e,t,n){if(t=Array.from(t),e._x_virtualDirectives){let n=Object.entries(e._x_virtualDirectives).map(([e,t])=>({name:e,value:t})),i=attributesOnly(n);n=n.map(e=>i.find(t=>t.name===e.name)?{name:`x-bind:${e.name}`,value:`"${e.value}"`}:e),t=t.concat(n)}let i={},r=t.map(toTransformedAttributes((e,t)=>i[e]=t)).filter(outNonAlpineAttributes).map(function toParsedDirectives(e,t){return({name:n,value:i})=>{let r=n.match(alpineAttributeRegex()),o=n.match(/:([a-zA-Z0-9\-_:]+)/),s=n.match(/\.[^.\]]+(?=[^\]]*$)/g)||[],a=t||e[n]||n;return{type:r?r[1]:null,value:o?o[1]:null,modifiers:s.map(e=>e.replace(".","")),expression:i,original:a}}}(i,n)).sort(byPriority);return r.map(t=>function getDirectiveHandler(e,t){let noop=()=>{},n=O[t.type]||noop,[i,r]=getElementBoundUtilities(e);onAttributeRemoved(e,t.original,r);let fullHandler=()=>{e._x_ignore||e._x_ignoreSelf||(n.inline&&n.inline(e,t,i),n=n.bind(n,e,t,i),T?R.get(S).push(n):n())};return fullHandler.runCleanups=r,fullHandler}(e,t))}function attributesOnly(e){return Array.from(e).map(toTransformedAttributes()).filter(e=>!outNonAlpineAttributes(e))}var T=!1,R=new Map,S=Symbol();function getElementBoundUtilities(e){let t=[],[n,i]=function elementBoundEffect(e){let cleanup2=()=>{};return[t=>{let n=r(t);return e._x_effects||(e._x_effects=new Set,e._x_runEffects=()=>{e._x_effects.forEach(e=>e())}),e._x_effects.add(n),cleanup2=()=>{void 0!==n&&(e._x_effects.delete(n),o(n))},n},()=>{cleanup2()}]}(e);t.push(i);return[{Alpine:J,effect:n,cleanup:e=>t.push(e),evaluateLater:evaluateLater.bind(evaluateLater,e),evaluate:evaluate.bind(evaluate,e)},()=>t.forEach(e=>e())]}var startingWith=(e,t)=>({name:n,value:i})=>(n.startsWith(e)&&(n=n.replace(e,t)),{name:n,value:i});function toTransformedAttributes(e=()=>{}){return({name:t,value:n})=>{let{name:i,value:r}=C.reduce((e,t)=>t(e),{name:t,value:n});return i!==t&&e(i,t),{name:i,value:r}}}var C=[];function mapAttributes(e){C.push(e)}function outNonAlpineAttributes({name:e}){return alpineAttributeRegex().test(e)}var alpineAttributeRegex=()=>new RegExp(`^${A}([^:^.]+)\\b`);var N="DEFAULT",P=["ignore","ref","data","id","anchor","bind","init","for","model","modelable","transition","show","if",N,"teleport"];function byPriority(e,t){let n=-1===P.indexOf(e.type)?N:e.type,i=-1===P.indexOf(t.type)?N:t.type;return P.indexOf(n)-P.indexOf(i)}function dispatch(e,t,n={}){e.dispatchEvent(new CustomEvent(t,{detail:n,bubbles:!0,composed:!0,cancelable:!0}))}function walk(e,t){if("function"==typeof ShadowRoot&&e instanceof ShadowRoot)return void Array.from(e.children).forEach(e=>walk(e,t));let n=!1;if(t(e,()=>n=!0),n)return;let i=e.firstElementChild;for(;i;)walk(i,t),i=i.nextElementSibling}function warn(e,...t){console.warn(`Alpine Warning: ${e}`,...t)}var I=!1;var j=[],M=[];function rootSelectors(){return j.map(e=>e())}function allSelectors(){return j.concat(M).map(e=>e())}function addRootSelector(e){j.push(e)}function addInitSelector(e){M.push(e)}function closestRoot(e,t=!1){return findClosest(e,e=>{if((t?allSelectors():rootSelectors()).some(t=>e.matches(t)))return!0})}function findClosest(e,t){if(e){if(t(e))return e;if(e._x_teleportBack&&(e=e._x_teleportBack),e.parentElement)return findClosest(e.parentElement,t)}}var $=[];var D=1;function initTree(e,t=walk,n=()=>{}){findClosest(e,e=>e._x_ignore)||function deferHandlingDirectives(e){T=!0;let t=Symbol();S=t,R.set(t,[]);let flushHandlers=()=>{for(;R.get(t).length;)R.get(t).shift()();R.delete(t)};e(flushHandlers),T=!1,flushHandlers()}(()=>{t(e,(e,t)=>{e._x_marker||(n(e,t),$.forEach(n=>n(e,t)),directives(e,e.attributes).forEach(e=>e()),e._x_ignore||(e._x_marker=D++),e._x_ignore&&t())})})}function destroyTree(e,t=walk){t(e,e=>{!function cleanupElement(e){for(e._x_effects?.forEach(dequeueJob);e._x_cleanups?.length;)e._x_cleanups.pop()()}(e),cleanupAttributes(e),delete e._x_marker})}var U=[],L=!1;function nextTick(e=()=>{}){return queueMicrotask(()=>{L||setTimeout(()=>{releaseNextTicks()})}),new Promise(t=>{U.push(()=>{e(),t()})})}function releaseNextTicks(){for(L=!1;U.length;)U.shift()()}function setClasses(e,t){return Array.isArray(t)?setClassesFromString(e,t.join(" ")):"object"==typeof t&&null!==t?function setClassesFromObject(e,t){let split=e=>e.split(" ").filter(Boolean),n=Object.entries(t).flatMap(([e,t])=>!!t&&split(e)).filter(Boolean),i=Object.entries(t).flatMap(([e,t])=>!t&&split(e)).filter(Boolean),r=[],o=[];return i.forEach(t=>{e.classList.contains(t)&&(e.classList.remove(t),o.push(t))}),n.forEach(t=>{e.classList.contains(t)||(e.classList.add(t),r.push(t))}),()=>{o.forEach(t=>e.classList.add(t)),r.forEach(t=>e.classList.remove(t))}}(e,t):"function"==typeof t?setClasses(e,t()):setClassesFromString(e,t)}function setClassesFromString(e,t){return t=!0===t?t="":t||"",n=t.split(" ").filter(t=>!e.classList.contains(t)).filter(Boolean),e.classList.add(...n),()=>{e.classList.remove(...n)};var n}function setStyles(e,t){return"object"==typeof t&&null!==t?function setStylesFromObject(e,t){let n={};return Object.entries(t).forEach(([t,i])=>{n[t]=e.style[t],t.startsWith("--")||(t=function kebabCase(e){return e.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}(t)),e.style.setProperty(t,i)}),setTimeout(()=>{0===e.style.length&&e.removeAttribute("style")}),()=>{setStyles(e,n)}}(e,t):function setStylesFromString(e,t){let n=e.getAttribute("style",t);return e.setAttribute("style",t),()=>{e.setAttribute("style",n||"")}}(e,t)}function once(e,t=()=>{}){let n=!1;return function(){n?t.apply(this,arguments):(n=!0,e.apply(this,arguments))}}function registerTransitionObject(e,t,n={}){e._x_transition||(e._x_transition={enter:{during:n,start:n,end:n},leave:{during:n,start:n,end:n},in(n=()=>{},i=()=>{}){transition(e,t,{during:this.enter.during,start:this.enter.start,end:this.enter.end},n,i)},out(n=()=>{},i=()=>{}){transition(e,t,{during:this.leave.during,start:this.leave.start,end:this.leave.end},n,i)}})}function closestHide(e){let t=e.parentNode;if(t)return t._x_hidePromise?t:closestHide(t)}function transition(e,t,{during:n,start:i,end:r}={},o=()=>{},s=()=>{}){if(e._x_transitioning&&e._x_transitioning.cancel(),0===Object.keys(n).length&&0===Object.keys(i).length&&0===Object.keys(r).length)return o(),void s();let a,l,c;!function performTransition(e,t){let n,i,r,o=once(()=>{mutateDom(()=>{n=!0,i||t.before(),r||(t.end(),releaseNextTicks()),t.after(),e.isConnected&&t.cleanup(),delete e._x_transitioning})});e._x_transitioning={beforeCancels:[],beforeCancel(e){this.beforeCancels.push(e)},cancel:once(function(){for(;this.beforeCancels.length;)this.beforeCancels.shift()();o()}),finish:o},mutateDom(()=>{t.start(),t.during()}),function holdNextTicks(){L=!0}(),requestAnimationFrame(()=>{if(n)return;let o=1e3*Number(getComputedStyle(e).transitionDuration.replace(/,.*/,"").replace("s","")),s=1e3*Number(getComputedStyle(e).transitionDelay.replace(/,.*/,"").replace("s",""));0===o&&(o=1e3*Number(getComputedStyle(e).animationDuration.replace("s",""))),mutateDom(()=>{t.before()}),i=!0,requestAnimationFrame(()=>{n||(mutateDom(()=>{t.end()}),releaseNextTicks(),setTimeout(e._x_transitioning.finish,o+s),r=!0)})})}(e,{start(){a=t(e,i)},during(){l=t(e,n)},before:o,end(){a(),c=t(e,r)},after:s,cleanup(){l(),c()}})}function modifierValue(e,t,n){if(-1===e.indexOf(t))return n;const i=e[e.indexOf(t)+1];if(!i)return n;if("scale"===t&&isNaN(i))return n;if("duration"===t||"delay"===t){let e=i.match(/([0-9]+)ms/);if(e)return e[1]}return"origin"===t&&["top","right","left","center","bottom"].includes(e[e.indexOf(t)+2])?[i,e[e.indexOf(t)+2]].join(" "):i}directive("transition",(e,{value:t,modifiers:n,expression:i},{evaluate:r})=>{"function"==typeof i&&(i=r(i)),!1!==i&&(i&&"boolean"!=typeof i?function registerTransitionsFromClassString(e,t,n){registerTransitionObject(e,setClasses,"");let i={enter:t=>{e._x_transition.enter.during=t},"enter-start":t=>{e._x_transition.enter.start=t},"enter-end":t=>{e._x_transition.enter.end=t},leave:t=>{e._x_transition.leave.during=t},"leave-start":t=>{e._x_transition.leave.start=t},"leave-end":t=>{e._x_transition.leave.end=t}};i[n](t)}(e,i,t):function registerTransitionsFromHelper(e,t,n){registerTransitionObject(e,setStyles);let i=!t.includes("in")&&!t.includes("out")&&!n,r=i||t.includes("in")||["enter"].includes(n),o=i||t.includes("out")||["leave"].includes(n);t.includes("in")&&!i&&(t=t.filter((e,n)=>n<t.indexOf("out")));t.includes("out")&&!i&&(t=t.filter((e,n)=>n>t.indexOf("out")));let s=!t.includes("opacity")&&!t.includes("scale"),a=s||t.includes("opacity"),l=s||t.includes("scale"),c=a?0:1,u=l?modifierValue(t,"scale",95)/100:1,d=modifierValue(t,"delay",0)/1e3,p=modifierValue(t,"origin","center"),f="opacity, transform",h=modifierValue(t,"duration",150)/1e3,m=modifierValue(t,"duration",75)/1e3,_="cubic-bezier(0.4, 0.0, 0.2, 1)";r&&(e._x_transition.enter.during={transformOrigin:p,transitionDelay:`${d}s`,transitionProperty:f,transitionDuration:`${h}s`,transitionTimingFunction:_},e._x_transition.enter.start={opacity:c,transform:`scale(${u})`},e._x_transition.enter.end={opacity:1,transform:"scale(1)"});o&&(e._x_transition.leave.during={transformOrigin:p,transitionDelay:`${d}s`,transitionProperty:f,transitionDuration:`${m}s`,transitionTimingFunction:_},e._x_transition.leave.start={opacity:1,transform:"scale(1)"},e._x_transition.leave.end={opacity:c,transform:`scale(${u})`})}(e,n,t))}),window.Element.prototype._x_toggleAndCascadeWithTransitions=function(e,t,n,i){const r="visible"===document.visibilityState?requestAnimationFrame:setTimeout;let clickAwayCompatibleShow=()=>r(n);t?e._x_transition&&(e._x_transition.enter||e._x_transition.leave)?e._x_transition.enter&&(Object.entries(e._x_transition.enter.during).length||Object.entries(e._x_transition.enter.start).length||Object.entries(e._x_transition.enter.end).length)?e._x_transition.in(n):clickAwayCompatibleShow():e._x_transition?e._x_transition.in(n):clickAwayCompatibleShow():(e._x_hidePromise=e._x_transition?new Promise((t,n)=>{e._x_transition.out(()=>{},()=>t(i)),e._x_transitioning&&e._x_transitioning.beforeCancel(()=>n({isFromCancelledTransition:!0}))}):Promise.resolve(i),queueMicrotask(()=>{let t=closestHide(e);t?(t._x_hideChildren||(t._x_hideChildren=[]),t._x_hideChildren.push(e)):r(()=>{let hideAfterChildren=e=>{let t=Promise.all([e._x_hidePromise,...(e._x_hideChildren||[]).map(hideAfterChildren)]).then(([e])=>e?.());return delete e._x_hidePromise,delete e._x_hideChildren,t};hideAfterChildren(e).catch(e=>{if(!e.isFromCancelledTransition)throw e})})}))};var F=!1;function skipDuringClone(e,t=()=>{}){return(...n)=>F?t(...n):e(...n)}var B=[];function interceptClone(e){B.push(e)}var G=!1;function dontRegisterReactiveSideEffects(e){let t=r;overrideEffect((e,n)=>{let i=t(e);return o(i),()=>{}}),e(),overrideEffect(t)}function bind(e,t,n,r=[]){switch(e._x_bindings||(e._x_bindings=i({})),e._x_bindings[t]=n,t=r.includes("camel")?function camelCase(e){return e.toLowerCase().replace(/-(\w)/g,(e,t)=>t.toUpperCase())}(t):t){case"value":!function bindInputValue(e,t){if(isRadio(e))void 0===e.attributes.value&&(e.value=t),window.fromModel&&(e.checked="boolean"==typeof t?safeParseBoolean(e.value)===t:checkedAttrLooseCompare(e.value,t));else if(isCheckbox(e))Number.isInteger(t)?e.value=t:Array.isArray(t)||"boolean"==typeof t||[null,void 0].includes(t)?Array.isArray(t)?e.checked=t.some(t=>checkedAttrLooseCompare(t,e.value)):e.checked=!!t:e.value=String(t);else if("SELECT"===e.tagName)!function updateSelect(e,t){const n=[].concat(t).map(e=>e+"");Array.from(e.options).forEach(e=>{e.selected=n.includes(e.value)})}(e,t);else{if(e.value===t)return;e.value=void 0===t?"":t}}(e,n);break;case"style":!function bindStyles(e,t){e._x_undoAddedStyles&&e._x_undoAddedStyles();e._x_undoAddedStyles=setStyles(e,t)}(e,n);break;case"class":!function bindClasses(e,t){e._x_undoAddedClasses&&e._x_undoAddedClasses();e._x_undoAddedClasses=setClasses(e,t)}(e,n);break;case"selected":case"checked":!function bindAttributeAndProperty(e,t,n){bindAttribute(e,t,n),function setPropertyIfChanged(e,t,n){e[t]!==n&&(e[t]=n)}(e,t,n)}(e,t,n);break;default:bindAttribute(e,t,n)}}function bindAttribute(e,t,n){[null,void 0,!1].includes(n)&&function attributeShouldntBePreservedIfFalsy(e){return!["aria-pressed","aria-checked","aria-expanded","aria-selected"].includes(e)}(t)?e.removeAttribute(t):(isBooleanAttr(t)&&(n=t),function setIfChanged(e,t,n){e.getAttribute(t)!=n&&e.setAttribute(t,n)}(e,t,n))}function checkedAttrLooseCompare(e,t){return e==t}function safeParseBoolean(e){return!![1,"1","true","on","yes",!0].includes(e)||![0,"0","false","off","no",!1].includes(e)&&(e?Boolean(e):null)}var q=new Set(["allowfullscreen","async","autofocus","autoplay","checked","controls","default","defer","disabled","formnovalidate","inert","ismap","itemscope","loop","multiple","muted","nomodule","novalidate","open","playsinline","readonly","required","reversed","selected","shadowrootclonable","shadowrootdelegatesfocus","shadowrootserializable"]);function isBooleanAttr(e){return q.has(e)}function getAttributeBinding(e,t,n){let i=e.getAttribute(t);return null===i?"function"==typeof n?n():n:""===i||(isBooleanAttr(t)?!![t,"true"].includes(i):i)}function isCheckbox(e){return"checkbox"===e.type||"ui-checkbox"===e.localName||"ui-switch"===e.localName}function isRadio(e){return"radio"===e.type||"ui-radio"===e.localName}function debounce(e,t){let n;return function(){const i=this,r=arguments;clearTimeout(n),n=setTimeout(function(){n=null,e.apply(i,r)},t)}}function throttle(e,t){let n;return function(){let i=this,r=arguments;n||(e.apply(i,r),n=!0,setTimeout(()=>n=!1,t))}}function entangle({get:e,set:t},{get:n,set:i}){let s,a,l=!0,c=r(()=>{let r=e(),o=n();if(l)i(cloneIfObject(r)),l=!1;else{let e=JSON.stringify(r),n=JSON.stringify(o);e!==s?i(cloneIfObject(r)):e!==n&&t(cloneIfObject(o))}s=JSON.stringify(e()),a=JSON.stringify(n())});return()=>{o(c)}}function cloneIfObject(e){return"object"==typeof e?JSON.parse(JSON.stringify(e)):e}var z={},V=!1;var K={};function applyBindingsObject(e,t,n){let i=[];for(;i.length;)i.pop()();let r=Object.entries(t).map(([e,t])=>({name:e,value:t})),o=attributesOnly(r);return r=r.map(e=>o.find(t=>t.name===e.name)?{name:`x-bind:${e.name}`,value:`"${e.value}"`}:e),directives(e,r,n).map(e=>{i.push(e.runCleanups),e()}),()=>{for(;i.length;)i.pop()()}}var W={};var J={get reactive(){return i},get release(){return o},get effect(){return r},get raw(){return s},version:"3.15.0",flushAndStopDeferringMutations:function flushAndStopDeferringMutations(){v=!1,onMutate(y),y=[]},dontAutoEvaluateFunctions:dontAutoEvaluateFunctions,disableEffectScheduling:function disableEffectScheduling(e){d=!1,e(),d=!0},startObservingMutations:startObservingMutations,stopObservingMutations:stopObservingMutations,setReactivityEngine:function setReactivityEngine(e){i=e.reactive,o=e.release,r=t=>e.effect(t,{scheduler:e=>{d?scheduler(e):e()}}),s=e.raw},onAttributeRemoved:onAttributeRemoved,onAttributesAdded:onAttributesAdded,closestDataStack:closestDataStack,skipDuringClone:skipDuringClone,onlyDuringClone:function onlyDuringClone(e){return(...t)=>F&&e(...t)},addRootSelector:addRootSelector,addInitSelector:addInitSelector,interceptClone:interceptClone,addScopeToNode:addScopeToNode,deferMutations:function deferMutations(){v=!0},mapAttributes:mapAttributes,evaluateLater:evaluateLater,interceptInit:function interceptInit(e){$.push(e)},setEvaluator:function setEvaluator(e){E=e},mergeProxies:mergeProxies,extractProp:function extractProp(e,t,n,i=!0){if(e._x_bindings&&void 0!==e._x_bindings[t])return e._x_bindings[t];if(e._x_inlineBindings&&void 0!==e._x_inlineBindings[t]){let n=e._x_inlineBindings[t];return n.extract=i,dontAutoEvaluateFunctions(()=>evaluate(e,n.expression))}return getAttributeBinding(e,t,n)},findClosest:findClosest,onElRemoved:onElRemoved,closestRoot:closestRoot,destroyTree:destroyTree,interceptor:interceptor,transition:transition,setStyles:setStyles,mutateDom:mutateDom,directive:directive,entangle:entangle,throttle:throttle,debounce:debounce,evaluate:evaluate,initTree:initTree,nextTick:nextTick,prefixed:prefix,prefix:function setPrefix(e){A=e},plugin:function plugin(e){(Array.isArray(e)?e:[e]).forEach(e=>e(J))},magic:magic,store:function store(e,t){if(V||(z=i(z),V=!0),void 0===t)return z[e];z[e]=t,initInterceptors(z[e]),"object"==typeof t&&null!==t&&t.hasOwnProperty("init")&&"function"==typeof t.init&&z[e].init()},start:function start(){I&&warn("Alpine has already been initialized on this page. Calling Alpine.start() more than once can cause problems."),I=!0,document.body||warn("Unable to initialize. Trying to load Alpine before `<body>` is available. Did you forget to add `defer` in Alpine's `<script>` tag?"),dispatch(document,"alpine:init"),dispatch(document,"alpine:initializing"),startObservingMutations(),function onElAdded(e){h.push(e)}(e=>initTree(e,walk)),onElRemoved(e=>destroyTree(e)),onAttributesAdded((e,t)=>{directives(e,t).forEach(e=>e())}),Array.from(document.querySelectorAll(allSelectors().join(","))).filter(e=>!closestRoot(e.parentElement,!0)).forEach(e=>{initTree(e)}),dispatch(document,"alpine:initialized"),setTimeout(()=>{!function warnAboutMissingPlugins(){[["ui","dialog",["[x-dialog], [x-popover]"]],["anchor","anchor",["[x-anchor]"]],["sort","sort",["[x-sort]"]]].forEach(([e,t,n])=>{(function directiveExists(e){return Object.keys(O).includes(e)})(t)||n.some(t=>{if(document.querySelector(t))return warn(`found "${t}", but missing ${e} plugin`),!0})})}()})},clone:function clone(e,t){t._x_dataStack||(t._x_dataStack=e._x_dataStack),F=!0,G=!0,dontRegisterReactiveSideEffects(()=>{!function cloneTree(e){let t=!1;initTree(e,(e,n)=>{walk(e,(e,i)=>{if(t&&function isRoot(e){return rootSelectors().some(t=>e.matches(t))}(e))return i();t=!0,n(e,i)})})}(t)}),F=!1,G=!1},cloneNode:function cloneNode(e,t){B.forEach(n=>n(e,t)),F=!0,dontRegisterReactiveSideEffects(()=>{initTree(t,(e,t)=>{t(e,()=>{})})}),F=!1},bound:function getBinding(e,t,n){return e._x_bindings&&void 0!==e._x_bindings[t]?e._x_bindings[t]:getAttributeBinding(e,t,n)},$data:scope,watch:watch,walk:walk,data:function data(e,t){W[e]=t},bind:function bind2(e,t){let n="function"!=typeof t?()=>t:t;return e instanceof Element?applyBindingsObject(e,n()):(K[e]=n,()=>{})}},H=class{constructor(e,t,n,i){this.type=e,this.value=t,this.start=n,this.end=i}},Z=class{constructor(e){this.input=e,this.position=0,this.tokens=[]}tokenize(){for(;this.position<this.input.length&&(this.skipWhitespace(),!(this.position>=this.input.length));){const e=this.input[this.position];this.isDigit(e)?this.readNumber():this.isAlpha(e)||"_"===e||"$"===e?this.readIdentifierOrKeyword():'"'===e||"'"===e?this.readString():"/"===e&&"/"===this.peek()?this.skipLineComment():this.readOperatorOrPunctuation()}return this.tokens.push(new H("EOF",null,this.position,this.position)),this.tokens}skipWhitespace(){for(;this.position<this.input.length&&/\s/.test(this.input[this.position]);)this.position++}skipLineComment(){for(;this.position<this.input.length&&"\n"!==this.input[this.position];)this.position++}isDigit(e){return/[0-9]/.test(e)}isAlpha(e){return/[a-zA-Z]/.test(e)}isAlphaNumeric(e){return/[a-zA-Z0-9_$]/.test(e)}peek(e=1){return this.input[this.position+e]||""}readNumber(){const e=this.position;let t=!1;for(;this.position<this.input.length;){const e=this.input[this.position];if(this.isDigit(e))this.position++;else{if("."!==e||t)break;t=!0,this.position++}}const n=this.input.slice(e,this.position);this.tokens.push(new H("NUMBER",parseFloat(n),e,this.position))}readIdentifierOrKeyword(){const e=this.position;for(;this.position<this.input.length&&this.isAlphaNumeric(this.input[this.position]);)this.position++;const t=this.input.slice(e,this.position);["true","false","null","undefined","new","typeof","void","delete","in","instanceof"].includes(t)?"true"===t||"false"===t?this.tokens.push(new H("BOOLEAN","true"===t,e,this.position)):"null"===t?this.tokens.push(new H("NULL",null,e,this.position)):"undefined"===t?this.tokens.push(new H("UNDEFINED",void 0,e,this.position)):this.tokens.push(new H("KEYWORD",t,e,this.position)):this.tokens.push(new H("IDENTIFIER",t,e,this.position))}readString(){const e=this.position,t=this.input[this.position];this.position++;let n="",i=!1;for(;this.position<this.input.length;){const r=this.input[this.position];if(i){switch(r){case"n":n+="\n";break;case"t":n+="\t";break;case"r":n+="\r";break;case"\\":n+="\\";break;case t:n+=t;break;default:n+=r}i=!1}else if("\\"===r)i=!0;else{if(r===t)return this.position++,void this.tokens.push(new H("STRING",n,e,this.position));n+=r}this.position++}throw new Error(`Unterminated string starting at position ${e}`)}readOperatorOrPunctuation(){const e=this.position,t=this.input[this.position],n=this.peek(),i=this.peek(2);if("="===t&&"="===n&&"="===i)this.position+=3,this.tokens.push(new H("OPERATOR","===",e,this.position));else if("!"===t&&"="===n&&"="===i)this.position+=3,this.tokens.push(new H("OPERATOR","!==",e,this.position));else if("="===t&&"="===n)this.position+=2,this.tokens.push(new H("OPERATOR","==",e,this.position));else if("!"===t&&"="===n)this.position+=2,this.tokens.push(new H("OPERATOR","!=",e,this.position));else if("<"===t&&"="===n)this.position+=2,this.tokens.push(new H("OPERATOR","<=",e,this.position));else if(">"===t&&"="===n)this.position+=2,this.tokens.push(new H("OPERATOR",">=",e,this.position));else if("&"===t&&"&"===n)this.position+=2,this.tokens.push(new H("OPERATOR","&&",e,this.position));else if("|"===t&&"|"===n)this.position+=2,this.tokens.push(new H("OPERATOR","||",e,this.position));else if("+"===t&&"+"===n)this.position+=2,this.tokens.push(new H("OPERATOR","++",e,this.position));else if("-"===t&&"-"===n)this.position+=2,this.tokens.push(new H("OPERATOR","--",e,this.position));else{this.position++;const n="()[]{},.;:?".includes(t)?"PUNCTUATION":"OPERATOR";this.tokens.push(new H(n,t,e,this.position))}}},X=class{constructor(e){this.tokens=e,this.position=0}parse(){if(this.isAtEnd())throw new Error("Empty expression");const e=this.parseExpression();if(this.match("PUNCTUATION",";"),!this.isAtEnd())throw new Error(`Unexpected token: ${this.current().value}`);return e}parseExpression(){return this.parseAssignment()}parseAssignment(){const e=this.parseTernary();if(this.match("OPERATOR","=")){const t=this.parseAssignment();if("Identifier"===e.type||"MemberExpression"===e.type)return{type:"AssignmentExpression",left:e,operator:"=",right:t};throw new Error("Invalid assignment target")}return e}parseTernary(){const e=this.parseLogicalOr();if(this.match("PUNCTUATION","?")){const t=this.parseExpression();this.consume("PUNCTUATION",":");return{type:"ConditionalExpression",test:e,consequent:t,alternate:this.parseExpression()}}return e}parseLogicalOr(){let e=this.parseLogicalAnd();for(;this.match("OPERATOR","||");){e={type:"BinaryExpression",operator:this.previous().value,left:e,right:this.parseLogicalAnd()}}return e}parseLogicalAnd(){let e=this.parseEquality();for(;this.match("OPERATOR","&&");){e={type:"BinaryExpression",operator:this.previous().value,left:e,right:this.parseEquality()}}return e}parseEquality(){let e=this.parseRelational();for(;this.match("OPERATOR","==","!=","===","!==");){e={type:"BinaryExpression",operator:this.previous().value,left:e,right:this.parseRelational()}}return e}parseRelational(){let e=this.parseAdditive();for(;this.match("OPERATOR","<",">","<=",">=");){e={type:"BinaryExpression",operator:this.previous().value,left:e,right:this.parseAdditive()}}return e}parseAdditive(){let e=this.parseMultiplicative();for(;this.match("OPERATOR","+","-");){e={type:"BinaryExpression",operator:this.previous().value,left:e,right:this.parseMultiplicative()}}return e}parseMultiplicative(){let e=this.parseUnary();for(;this.match("OPERATOR","*","/","%");){e={type:"BinaryExpression",operator:this.previous().value,left:e,right:this.parseUnary()}}return e}parseUnary(){if(this.match("OPERATOR","++","--")){return{type:"UpdateExpression",operator:this.previous().value,argument:this.parseUnary(),prefix:!0}}if(this.match("OPERATOR","!","-","+")){return{type:"UnaryExpression",operator:this.previous().value,argument:this.parseUnary(),prefix:!0}}return this.parsePostfix()}parsePostfix(){let e=this.parseMember();if(this.match("OPERATOR","++","--")){return{type:"UpdateExpression",operator:this.previous().value,argument:e,prefix:!1}}return e}parseMember(){let e=this.parsePrimary();for(;;)if(this.match("PUNCTUATION",".")){e={type:"MemberExpression",object:e,property:{type:"Identifier",name:this.consume("IDENTIFIER").value},computed:!1}}else if(this.match("PUNCTUATION","[")){const t=this.parseExpression();this.consume("PUNCTUATION","]"),e={type:"MemberExpression",object:e,property:t,computed:!0}}else{if(!this.match("PUNCTUATION","("))break;e={type:"CallExpression",callee:e,arguments:this.parseArguments()}}return e}parseArguments(){const e=[];if(!this.check("PUNCTUATION",")"))do{e.push(this.parseExpression())}while(this.match("PUNCTUATION",","));return this.consume("PUNCTUATION",")"),e}parsePrimary(){if(this.match("NUMBER"))return{type:"Literal",value:this.previous().value};if(this.match("STRING"))return{type:"Literal",value:this.previous().value};if(this.match("BOOLEAN"))return{type:"Literal",value:this.previous().value};if(this.match("NULL"))return{type:"Literal",value:null};if(this.match("UNDEFINED"))return{type:"Literal",value:void 0};if(this.match("IDENTIFIER"))return{type:"Identifier",name:this.previous().value};if(this.match("PUNCTUATION","(")){const e=this.parseExpression();return this.consume("PUNCTUATION",")"),e}if(this.match("PUNCTUATION","["))return this.parseArrayLiteral();if(this.match("PUNCTUATION","{"))return this.parseObjectLiteral();throw new Error(`Unexpected token: ${this.current().type} "${this.current().value}"`)}parseArrayLiteral(){const e=[];for(;!this.check("PUNCTUATION","]")&&!this.isAtEnd()&&(e.push(this.parseExpression()),this.match("PUNCTUATION",","))&&!this.check("PUNCTUATION","]"););return this.consume("PUNCTUATION","]"),{type:"ArrayExpression",elements:e}}parseObjectLiteral(){const e=[];for(;!this.check("PUNCTUATION","}")&&!this.isAtEnd();){let t,n=!1;if(this.match("STRING"))t={type:"Literal",value:this.previous().value};else if(this.match("IDENTIFIER")){t={type:"Identifier",name:this.previous().value}}else{if(!this.match("PUNCTUATION","["))throw new Error("Expected property key");t=this.parseExpression(),n=!0,this.consume("PUNCTUATION","]")}this.consume("PUNCTUATION",":");const i=this.parseExpression();if(e.push({type:"Property",key:t,value:i,computed:n,shorthand:!1}),!this.match("PUNCTUATION",","))break;if(this.check("PUNCTUATION","}"))break}return this.consume("PUNCTUATION","}"),{type:"ObjectExpression",properties:e}}match(...e){for(let t=0;t<e.length;t++){const n=e[t];if(0===t&&e.length>1){const t=n;for(let n=1;n<e.length;n++)if(this.check(t,e[n]))return this.advance(),!0;return!1}if(1===e.length)return!!this.checkType(n)&&(this.advance(),!0)}return!1}check(e,t){return!this.isAtEnd()&&(void 0!==t?this.current().type===e&&this.current().value===t:this.current().type===e)}checkType(e){return!this.isAtEnd()&&this.current().type===e}advance(){return this.isAtEnd()||this.position++,this.previous()}isAtEnd(){return"EOF"===this.current().type}current(){return this.tokens[this.position]}previous(){return this.tokens[this.position-1]}consume(e,t){if(void 0!==t){if(this.check(e,t))return this.advance();throw new Error(`Expected ${e} "${t}" but got ${this.current().type} "${this.current().value}"`)}if(this.check(e))return this.advance();throw new Error(`Expected ${e} but got ${this.current().type} "${this.current().value}"`)}},Y=class{evaluate({node:e,scope:t={},context:n=null,allowGlobal:i=!1,forceBindingRootScopeToFunctions:r=!0}){switch(e.type){case"Literal":return e.value;case"Identifier":if(e.name in t){const n=t[e.name];return"function"==typeof n?n.bind(t):n}if(i&&void 0!==globalThis[e.name]){const t=globalThis[e.name];return"function"==typeof t?t.bind(globalThis):t}throw new Error(`Undefined variable: ${e.name}`);case"MemberExpression":const o=this.evaluate({node:e.object,scope:t,context:n,allowGlobal:i,forceBindingRootScopeToFunctions:r});if(null==o)throw new Error("Cannot read property of null or undefined");let s;if(e.computed){s=o[this.evaluate({node:e.property,scope:t,context:n,allowGlobal:i,forceBindingRootScopeToFunctions:r})]}else s=o[e.property.name];return"function"==typeof s?r?s.bind(t):s.bind(o):s;case"CallExpression":const a=e.arguments.map(e=>this.evaluate({node:e,scope:t,context:n,allowGlobal:i,forceBindingRootScopeToFunctions:r}));if("MemberExpression"===e.callee.type){const o=this.evaluate({node:e.callee.object,scope:t,context:n,allowGlobal:i,forceBindingRootScopeToFunctions:r});let s;if(e.callee.computed){s=o[this.evaluate({node:e.callee.property,scope:t,context:n,allowGlobal:i,forceBindingRootScopeToFunctions:r})]}else s=o[e.callee.property.name];if("function"!=typeof s)throw new Error("Value is not a function");return s.apply(o,a)}if("Identifier"===e.callee.type){const r=e.callee.name;let o;if(r in t)o=t[r];else{if(!i||void 0===globalThis[r])throw new Error(`Undefined variable: ${r}`);o=globalThis[r]}if("function"!=typeof o)throw new Error("Value is not a function");const s=null!==n?n:t;return o.apply(s,a)}{const o=this.evaluate({node:e.callee,scope:t,context:n,allowGlobal:i,forceBindingRootScopeToFunctions:r});if("function"!=typeof o)throw new Error("Value is not a function");return o.apply(n,a)}case"UnaryExpression":const l=this.evaluate({node:e.argument,scope:t,context:n,allowGlobal:i,forceBindingRootScopeToFunctions:r});switch(e.operator){case"!":return!l;case"-":return-l;case"+":return+l;default:throw new Error(`Unknown unary operator: ${e.operator}`)}case"UpdateExpression":if("Identifier"===e.argument.type){const n=e.argument.name;if(!(n in t))throw new Error(`Undefined variable: ${n}`);const i=t[n];return"++"===e.operator?t[n]=i+1:"--"===e.operator&&(t[n]=i-1),e.prefix?t[n]:i}if("MemberExpression"===e.argument.type){const o=this.evaluate({node:e.argument.object,scope:t,context:n,allowGlobal:i,forceBindingRootScopeToFunctions:r}),s=e.argument.computed?this.evaluate({node:e.argument.property,scope:t,context:n,allowGlobal:i,forceBindingRootScopeToFunctions:r}):e.argument.property.name,a=o[s];return"++"===e.operator?o[s]=a+1:"--"===e.operator&&(o[s]=a-1),e.prefix?o[s]:a}throw new Error("Invalid update expression target");case"BinaryExpression":const c=this.evaluate({node:e.left,scope:t,context:n,allowGlobal:i,forceBindingRootScopeToFunctions:r}),u=this.evaluate({node:e.right,scope:t,context:n,allowGlobal:i,forceBindingRootScopeToFunctions:r});switch(e.operator){case"+":return c+u;case"-":return c-u;case"*":return c*u;case"/":return c/u;case"%":return c%u;case"==":return c==u;case"!=":return c!=u;case"===":return c===u;case"!==":return c!==u;case"<":return c<u;case">":return c>u;case"<=":return c<=u;case">=":return c>=u;case"&&":return c&&u;case"||":return c||u;default:throw new Error(`Unknown binary operator: ${e.operator}`)}case"ConditionalExpression":return this.evaluate({node:e.test,scope:t,context:n,allowGlobal:i,forceBindingRootScopeToFunctions:r})?this.evaluate({node:e.consequent,scope:t,context:n,allowGlobal:i,forceBindingRootScopeToFunctions:r}):this.evaluate({node:e.alternate,scope:t,context:n,allowGlobal:i,forceBindingRootScopeToFunctions:r});case"AssignmentExpression":const d=this.evaluate({node:e.right,scope:t,context:n,allowGlobal:i,forceBindingRootScopeToFunctions:r});if("Identifier"===e.left.type)return t[e.left.name]=d,d;if("MemberExpression"===e.left.type){const o=this.evaluate({node:e.left.object,scope:t,context:n,allowGlobal:i,forceBindingRootScopeToFunctions:r});if(e.left.computed){o[this.evaluate({node:e.left.property,scope:t,context:n,allowGlobal:i,forceBindingRootScopeToFunctions:r})]=d}else o[e.left.property.name]=d;return d}throw new Error("Invalid assignment target");case"ArrayExpression":return e.elements.map(e=>this.evaluate({node:e,scope:t,context:n,allowGlobal:i,forceBindingRootScopeToFunctions:r}));case"ObjectExpression":const p={};for(const o of e.properties){const e=o.computed?this.evaluate({node:o.key,scope:t,context:n,allowGlobal:i,forceBindingRootScopeToFunctions:r}):"Identifier"===o.key.type?o.key.name:this.evaluate({node:o.key,scope:t,context:n,allowGlobal:i,forceBindingRootScopeToFunctions:r}),s=this.evaluate({node:o.value,scope:t,context:n,allowGlobal:i,forceBindingRootScopeToFunctions:r});p[e]=s}return p;default:throw new Error(`Unknown node type: ${e.type}`)}}};function makeMap(e,t){const n=Object.create(null),i=e.split(",");for(let e=0;e<i.length;e++)n[i[e]]=!0;return t?e=>!!n[e.toLowerCase()]:e=>!!n[e]}var Q,ee=Object.freeze({}),te=(Object.freeze([]),Object.prototype.hasOwnProperty),hasOwn=(e,t)=>te.call(e,t),ne=Array.isArray,isMap=e=>"[object Map]"===toTypeString(e),isSymbol=e=>"symbol"==typeof e,isObject=e=>null!==e&&"object"==typeof e,ie=Object.prototype.toString,toTypeString=e=>ie.call(e),toRawType=e=>toTypeString(e).slice(8,-1),isIntegerKey=e=>"string"==typeof e&&"NaN"!==e&&"-"!==e[0]&&""+parseInt(e,10)===e,cacheStringFunction=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},re=/-(\w)/g,oe=(cacheStringFunction(e=>e.replace(re,(e,t)=>t?t.toUpperCase():"")),/\B([A-Z])/g),se=(cacheStringFunction(e=>e.replace(oe,"-$1").toLowerCase()),cacheStringFunction(e=>e.charAt(0).toUpperCase()+e.slice(1))),ae=(cacheStringFunction(e=>e?`on${se(e)}`:""),(e,t)=>e!==t&&(e==e||t==t)),le=new WeakMap,ce=[],ue=Symbol("iterate"),de=Symbol("Map key iterate");var pe=0;function cleanup(e){const{deps:t}=e;if(t.length){for(let n=0;n<t.length;n++)t[n].delete(e);t.length=0}}var fe=!0,he=[];function resetTracking(){const e=he.pop();fe=void 0===e||e}function track(e,t,n){if(!fe||void 0===Q)return;let i=le.get(e);i||le.set(e,i=new Map);let r=i.get(n);r||i.set(n,r=new Set),r.has(Q)||(r.add(Q),Q.deps.push(r),Q.options.onTrack&&Q.options.onTrack({effect:Q,target:e,type:t,key:n}))}function trigger(e,t,n,i,r,o){const s=le.get(e);if(!s)return;const a=new Set,add2=e=>{e&&e.forEach(e=>{(e!==Q||e.allowRecurse)&&a.add(e)})};if("clear"===t)s.forEach(add2);else if("length"===n&&ne(e))s.forEach((e,t)=>{("length"===t||t>=i)&&add2(e)});else switch(void 0!==n&&add2(s.get(n)),t){case"add":ne(e)?isIntegerKey(n)&&add2(s.get("length")):(add2(s.get(ue)),isMap(e)&&add2(s.get(de)));break;case"delete":ne(e)||(add2(s.get(ue)),isMap(e)&&add2(s.get(de)));break;case"set":isMap(e)&&add2(s.get(ue))}a.forEach(s=>{s.options.onTrigger&&s.options.onTrigger({effect:s,target:e,key:n,type:t,newValue:i,oldValue:r,oldTarget:o}),s.options.scheduler?s.options.scheduler(s):s()})}var me=makeMap("__proto__,__v_isRef,__isVue"),_e=new Set(Object.getOwnPropertyNames(Symbol).map(e=>Symbol[e]).filter(isSymbol)),ge=createGetter(),ve=createGetter(!0),ye=createArrayInstrumentations();function createArrayInstrumentations(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...e){const n=toRaw(this);for(let e=0,t=this.length;e<t;e++)track(n,"get",e+"");const i=n[t](...e);return-1===i||!1===i?n[t](...e.map(toRaw)):i}}),["push","pop","shift","unshift","splice"].forEach(t=>{e[t]=function(...e){!function pauseTracking(){he.push(fe),fe=!1}();const n=toRaw(this)[t].apply(this,e);return resetTracking(),n}}),e}function createGetter(e=!1,t=!1){return function get3(n,i,r){if("__v_isReactive"===i)return!e;if("__v_isReadonly"===i)return e;if("__v_raw"===i&&r===(e?t?Ne:Ce:t?Se:Re).get(n))return n;const o=ne(n);if(!e&&o&&hasOwn(ye,i))return Reflect.get(ye,i,r);const s=Reflect.get(n,i,r);if(isSymbol(i)?_e.has(i):me(i))return s;if(e||track(n,"get",i),t)return s;if(isRef(s)){return!o||!isIntegerKey(i)?s.value:s}return isObject(s)?e?readonly(s):reactive2(s):s}}function createSetter(e=!1){return function set3(t,n,i,r){let o=t[n];if(!e&&(i=toRaw(i),o=toRaw(o),!ne(t)&&isRef(o)&&!isRef(i)))return o.value=i,!0;const s=ne(t)&&isIntegerKey(n)?Number(n)<t.length:hasOwn(t,n),a=Reflect.set(t,n,i,r);return t===toRaw(r)&&(s?ae(i,o)&&trigger(t,"set",n,i,o):trigger(t,"add",n,i)),a}}var xe={get:ge,set:createSetter(),deleteProperty:function deleteProperty(e,t){const n=hasOwn(e,t),i=e[t],r=Reflect.deleteProperty(e,t);return r&&n&&trigger(e,"delete",t,void 0,i),r},has:function has(e,t){const n=Reflect.has(e,t);return isSymbol(t)&&_e.has(t)||track(e,"has",t),n},ownKeys:function ownKeys(e){return track(e,"iterate",ne(e)?"length":ue),Reflect.ownKeys(e)}},be={get:ve,set(e,t){return console.warn(`Set operation on key "${String(t)}" failed: target is readonly.`,e),!0},deleteProperty(e,t){return console.warn(`Delete operation on key "${String(t)}" failed: target is readonly.`,e),!0}},toReactive=e=>isObject(e)?reactive2(e):e,toReadonly=e=>isObject(e)?readonly(e):e,toShallow=e=>e,getProto=e=>Reflect.getPrototypeOf(e);function get$1(e,t,n=!1,i=!1){const r=toRaw(e=e.__v_raw),o=toRaw(t);t!==o&&!n&&track(r,"get",t),!n&&track(r,"get",o);const{has:s}=getProto(r),a=i?toShallow:n?toReadonly:toReactive;return s.call(r,t)?a(e.get(t)):s.call(r,o)?a(e.get(o)):void(e!==r&&e.get(t))}function has$1(e,t=!1){const n=this.__v_raw,i=toRaw(n),r=toRaw(e);return e!==r&&!t&&track(i,"has",e),!t&&track(i,"has",r),e===r?n.has(e):n.has(e)||n.has(r)}function size(e,t=!1){return e=e.__v_raw,!t&&track(toRaw(e),"iterate",ue),Reflect.get(e,"size",e)}function add(e){e=toRaw(e);const t=toRaw(this);return getProto(t).has.call(t,e)||(t.add(e),trigger(t,"add",e,e)),this}function set$1(e,t){t=toRaw(t);const n=toRaw(this),{has:i,get:r}=getProto(n);let o=i.call(n,e);o?checkIdentityKeys(n,i,e):(e=toRaw(e),o=i.call(n,e));const s=r.call(n,e);return n.set(e,t),o?ae(t,s)&&trigger(n,"set",e,t,s):trigger(n,"add",e,t),this}function deleteEntry(e){const t=toRaw(this),{has:n,get:i}=getProto(t);let r=n.call(t,e);r?checkIdentityKeys(t,n,e):(e=toRaw(e),r=n.call(t,e));const o=i?i.call(t,e):void 0,s=t.delete(e);return r&&trigger(t,"delete",e,void 0,o),s}function clear(){const e=toRaw(this),t=0!==e.size,n=isMap(e)?new Map(e):new Set(e),i=e.clear();return t&&trigger(e,"clear",void 0,void 0,n),i}function createForEach(e,t){return function forEach(n,i){const r=this,o=r.__v_raw,s=toRaw(o),a=t?toShallow:e?toReadonly:toReactive;return!e&&track(s,"iterate",ue),o.forEach((e,t)=>n.call(i,a(e),a(t),r))}}function createIterableMethod(e,t,n){return function(...i){const r=this.__v_raw,o=toRaw(r),s=isMap(o),a="entries"===e||e===Symbol.iterator&&s,l="keys"===e&&s,c=r[e](...i),u=n?toShallow:t?toReadonly:toReactive;return!t&&track(o,"iterate",l?de:ue),{next(){const{value:e,done:t}=c.next();return t?{value:e,done:t}:{value:a?[u(e[0]),u(e[1])]:u(e),done:t}},[Symbol.iterator](){return this}}}}function createReadonlyMethod(e){return function(...t){{const n=t[0]?`on key "${t[0]}" `:"";console.warn(`${se(e)} operation ${n}failed: target is readonly.`,toRaw(this))}return"delete"!==e&&this}}function createInstrumentations(){const e={get(e){return get$1(this,e)},get size(){return size(this)},has:has$1,add:add,set:set$1,delete:deleteEntry,clear:clear,forEach:createForEach(!1,!1)},t={get(e){return get$1(this,e,!1,!0)},get size(){return size(this)},has:has$1,add:add,set:set$1,delete:deleteEntry,clear:clear,forEach:createForEach(!1,!0)},n={get(e){return get$1(this,e,!0)},get size(){return size(this,!0)},has(e){return has$1.call(this,e,!0)},add:createReadonlyMethod("add"),set:createReadonlyMethod("set"),delete:createReadonlyMethod("delete"),clear:createReadonlyMethod("clear"),forEach:createForEach(!0,!1)},i={get(e){return get$1(this,e,!0,!0)},get size(){return size(this,!0)},has(e){return has$1.call(this,e,!0)},add:createReadonlyMethod("add"),set:createReadonlyMethod("set"),delete:createReadonlyMethod("delete"),clear:createReadonlyMethod("clear"),forEach:createForEach(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(r=>{e[r]=createIterableMethod(r,!1,!1),n[r]=createIterableMethod(r,!0,!1),t[r]=createIterableMethod(r,!1,!0),i[r]=createIterableMethod(r,!0,!0)}),[e,n,t,i]}var[we,Ee,ke,Ae]=createInstrumentations();function createInstrumentationGetter(e,t){const n=t?e?Ae:ke:e?Ee:we;return(t,i,r)=>"__v_isReactive"===i?!e:"__v_isReadonly"===i?e:"__v_raw"===i?t:Reflect.get(hasOwn(n,i)&&i in t?n:t,i,r)}var Oe={get:createInstrumentationGetter(!1,!1)},Te={get:createInstrumentationGetter(!0,!1)};function checkIdentityKeys(e,t,n){const i=toRaw(n);if(i!==n&&t.call(e,i)){const t=toRawType(e);console.warn(`Reactive ${t} contains both the raw and reactive versions of the same object${"Map"===t?" as keys":""}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`)}}var Re=new WeakMap,Se=new WeakMap,Ce=new WeakMap,Ne=new WeakMap;function reactive2(e){return e&&e.__v_isReadonly?e:createReactiveObject(e,!1,xe,Oe,Re)}function readonly(e){return createReactiveObject(e,!0,be,Te,Ce)}function createReactiveObject(e,t,n,i,r){if(!isObject(e))return console.warn(`value cannot be made reactive: ${String(e)}`),e;if(e.__v_raw&&(!t||!e.__v_isReactive))return e;const o=r.get(e);if(o)return o;const s=function getTargetType(e){return e.__v_skip||!Object.isExtensible(e)?0:function targetTypeMap(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}(toRawType(e))}(e);if(0===s)return e;const a=new Proxy(e,2===s?i:n);return r.set(e,a),a}function toRaw(e){return e&&toRaw(e.__v_raw)||e}function isRef(e){return Boolean(e&&!0===e.__v_isRef)}magic("nextTick",()=>nextTick),magic("dispatch",e=>dispatch.bind(dispatch,e)),magic("watch",(e,{evaluateLater:t,cleanup:n})=>(e,i)=>{let r=t(e),o=watch(()=>{let e;return r(t=>e=t),e},i);n(o)}),magic("store",function getStores(){return z}),magic("data",e=>scope(e)),magic("root",e=>closestRoot(e)),magic("refs",e=>(e._x_refs_proxy||(e._x_refs_proxy=mergeProxies(function getArrayOfRefObject(e){let t=[];return findClosest(e,e=>{e._x_refs&&t.push(e._x_refs)}),t}(e))),e._x_refs_proxy));var Pe={};function findAndIncrementId(e){return Pe[e]||(Pe[e]=0),++Pe[e]}function warnMissingPluginMagic(e,t,n){magic(t,i=>warn(`You can't use [$${t}] without first installing the "${e}" plugin here: https://alpinejs.dev/plugins/${n}`,i))}magic("id",(e,{cleanup:t})=>(n,i=null)=>function cacheIdByNameOnElement(e,t,n,i){e._x_id||(e._x_id={});if(e._x_id[t])return e._x_id[t];let r=i();return e._x_id[t]=r,n(()=>{delete e._x_id[t]}),r}(e,`${n}${i?`-${i}`:""}`,t,()=>{let t=function closestIdRoot(e,t){return findClosest(e,e=>{if(e._x_ids&&e._x_ids[t])return!0})}(e,n),r=t?t._x_ids[n]:findAndIncrementId(n);return i?`${n}-${r}-${i}`:`${n}-${r}`})),interceptClone((e,t)=>{e._x_id&&(t._x_id=e._x_id)}),magic("el",e=>e),warnMissingPluginMagic("Focus","focus","focus"),warnMissingPluginMagic("Persist","persist","persist"),directive("modelable",(e,{expression:t},{effect:n,evaluateLater:i,cleanup:r})=>{let o=i(t),innerGet=()=>{let e;return o(t=>e=t),e},s=i(`${t} = __placeholder`),innerSet=e=>s(()=>{},{scope:{__placeholder:e}}),a=innerGet();innerSet(a),queueMicrotask(()=>{if(!e._x_model)return;e._x_removeModelListeners.default();let t=e._x_model.get,n=e._x_model.set,i=entangle({get(){return t()},set(e){n(e)}},{get(){return innerGet()},set(e){innerSet(e)}});r(i)})}),directive("teleport",(e,{modifiers:t,expression:n},{cleanup:i})=>{"template"!==e.tagName.toLowerCase()&&warn("x-teleport can only be used on a <template> tag",e);let r=getTarget(n),o=e.content.cloneNode(!0).firstElementChild;e._x_teleport=o,o._x_teleportBack=e,e.setAttribute("data-teleport-template",!0),o.setAttribute("data-teleport-target",!0),e._x_forwardEvents&&e._x_forwardEvents.forEach(t=>{o.addEventListener(t,t=>{t.stopPropagation(),e.dispatchEvent(new t.constructor(t.type,t))})}),addScopeToNode(o,{},e);let placeInDom=(e,t,n)=>{n.includes("prepend")?t.parentNode.insertBefore(e,t):n.includes("append")?t.parentNode.insertBefore(e,t.nextSibling):t.appendChild(e)};mutateDom(()=>{placeInDom(o,r,t),skipDuringClone(()=>{initTree(o)})()}),e._x_teleportPutBack=()=>{let i=getTarget(n);mutateDom(()=>{placeInDom(e._x_teleport,i,t)})},i(()=>mutateDom(()=>{o.remove(),destroyTree(o)}))});var Ie=document.createElement("div");function getTarget(e){let t=skipDuringClone(()=>document.querySelector(e),()=>Ie)();return t||warn(`Cannot find x-teleport element for selector: "${e}"`),t}var handler=()=>{};function on(e,t,n,i){let r=e,handler4=e=>i(e),o={},wrapHandler=(e,t)=>n=>t(e,n);if(n.includes("dot")&&(t=function dotSyntax(e){return e.replace(/-/g,".")}(t)),n.includes("camel")&&(t=function camelCase2(e){return e.toLowerCase().replace(/-(\w)/g,(e,t)=>t.toUpperCase())}(t)),n.includes("passive")&&(o.passive=!0),n.includes("capture")&&(o.capture=!0),n.includes("window")&&(r=window),n.includes("document")&&(r=document),n.includes("debounce")){let e=n[n.indexOf("debounce")+1]||"invalid-wait",t=isNumeric(e.split("ms")[0])?Number(e.split("ms")[0]):250;handler4=debounce(handler4,t)}if(n.includes("throttle")){let e=n[n.indexOf("throttle")+1]||"invalid-wait",t=isNumeric(e.split("ms")[0])?Number(e.split("ms")[0]):250;handler4=throttle(handler4,t)}return n.includes("prevent")&&(handler4=wrapHandler(handler4,(e,t)=>{t.preventDefault(),e(t)})),n.includes("stop")&&(handler4=wrapHandler(handler4,(e,t)=>{t.stopPropagation(),e(t)})),n.includes("once")&&(handler4=wrapHandler(handler4,(e,n)=>{e(n),r.removeEventListener(t,handler4,o)})),(n.includes("away")||n.includes("outside"))&&(r=document,handler4=wrapHandler(handler4,(t,n)=>{e.contains(n.target)||!1!==n.target.isConnected&&(e.offsetWidth<1&&e.offsetHeight<1||!1!==e._x_isShown&&t(n))})),n.includes("self")&&(handler4=wrapHandler(handler4,(t,n)=>{n.target===e&&t(n)})),(function isKeyEvent(e){return["keydown","keyup"].includes(e)}(t)||isClickEvent(t))&&(handler4=wrapHandler(handler4,(e,t)=>{(function isListeningForASpecificKeyThatHasntBeenPressed(e,t){let n=t.filter(e=>!["window","document","prevent","stop","once","capture","self","away","outside","passive","preserve-scroll"].includes(e));if(n.includes("debounce")){let e=n.indexOf("debounce");n.splice(e,isNumeric((n[e+1]||"invalid-wait").split("ms")[0])?2:1)}if(n.includes("throttle")){let e=n.indexOf("throttle");n.splice(e,isNumeric((n[e+1]||"invalid-wait").split("ms")[0])?2:1)}if(0===n.length)return!1;if(1===n.length&&keyToModifiers(e.key).includes(n[0]))return!1;const i=["ctrl","shift","alt","meta","cmd","super"].filter(e=>n.includes(e));if(n=n.filter(e=>!i.includes(e)),i.length>0){if(i.filter(t=>("cmd"!==t&&"super"!==t||(t="meta"),e[`${t}Key`])).length===i.length){if(isClickEvent(e.type))return!1;if(keyToModifiers(e.key).includes(n[0]))return!1}}return!0})(t,n)||e(t)})),r.addEventListener(t,handler4,o),()=>{r.removeEventListener(t,handler4,o)}}function isNumeric(e){return!Array.isArray(e)&&!isNaN(e)}function isClickEvent(e){return["contextmenu","click","mouse"].some(t=>e.includes(t))}function keyToModifiers(e){if(!e)return[];e=function kebabCase2(e){return[" ","_"].includes(e)?e:e.replace(/([a-z])([A-Z])/g,"$1-$2").replace(/[_\s]/,"-").toLowerCase()}(e);let t={ctrl:"control",slash:"/",space:" ",spacebar:" ",cmd:"meta",esc:"escape",up:"arrow-up",down:"arrow-down",left:"arrow-left",right:"arrow-right",period:".",comma:",",equal:"=",minus:"-",underscore:"_"};return t[e]=e,Object.keys(t).map(n=>{if(t[n]===e)return n}).filter(e=>e)}function getInputValue(e,t,n,i){return mutateDom(()=>{if(n instanceof CustomEvent&&void 0!==n.detail)return null!==n.detail&&void 0!==n.detail?n.detail:n.target.value;if(isCheckbox(e)){if(Array.isArray(i)){let e=null;return e=t.includes("number")?safeParseNumber(n.target.value):t.includes("boolean")?safeParseBoolean(n.target.value):n.target.value,n.target.checked?i.includes(e)?i:i.concat([e]):i.filter(t=>!function checkedAttrLooseCompare2(e,t){return e==t}(t,e))}return n.target.checked}if("select"===e.tagName.toLowerCase()&&e.multiple)return t.includes("number")?Array.from(n.target.selectedOptions).map(e=>safeParseNumber(e.value||e.text)):t.includes("boolean")?Array.from(n.target.selectedOptions).map(e=>safeParseBoolean(e.value||e.text)):Array.from(n.target.selectedOptions).map(e=>e.value||e.text);{let r;return r=isRadio(e)?n.target.checked?n.target.value:i:n.target.value,t.includes("number")?safeParseNumber(r):t.includes("boolean")?safeParseBoolean(r):t.includes("trim")?r.trim():r}})}function safeParseNumber(e){let t=e?parseFloat(e):null;return function isNumeric2(e){return!Array.isArray(e)&&!isNaN(e)}(t)?t:e}function isGetterSetter(e){return null!==e&&"object"==typeof e&&"function"==typeof e.get&&"function"==typeof e.set}handler.inline=(e,{modifiers:t},{cleanup:n})=>{t.includes("self")?e._x_ignoreSelf=!0:e._x_ignore=!0,n(()=>{t.includes("self")?delete e._x_ignoreSelf:delete e._x_ignore})},directive("ignore",handler),directive("effect",skipDuringClone((e,{expression:t},{effect:n})=>{n(evaluateLater(e,t))})),directive("model",(e,{modifiers:t,expression:n},{effect:i,cleanup:r})=>{let o=e;t.includes("parent")&&(o=e.parentNode);let s,a=evaluateLater(o,n);s="string"==typeof n?evaluateLater(o,`${n} = __placeholder`):"function"==typeof n&&"string"==typeof n()?evaluateLater(o,`${n()} = __placeholder`):()=>{};let getValue=()=>{let e;return a(t=>e=t),isGetterSetter(e)?e.get():e},setValue=e=>{let t;a(e=>t=e),isGetterSetter(t)?t.set(e):s(()=>{},{scope:{__placeholder:e}})};"string"==typeof n&&"radio"===e.type&&mutateDom(()=>{e.hasAttribute("name")||e.setAttribute("name",n)});let l="select"===e.tagName.toLowerCase()||["checkbox","radio"].includes(e.type)||t.includes("lazy")?"change":"input",c=F?()=>{}:on(e,l,t,n=>{setValue(getInputValue(e,t,n,getValue()))});if(t.includes("fill")&&([void 0,null,""].includes(getValue())||isCheckbox(e)&&Array.isArray(getValue())||"select"===e.tagName.toLowerCase()&&e.multiple)&&setValue(getInputValue(e,t,{target:e},getValue())),e._x_removeModelListeners||(e._x_removeModelListeners={}),e._x_removeModelListeners.default=c,r(()=>e._x_removeModelListeners.default()),e.form){let n=on(e.form,"reset",[],n=>{nextTick(()=>e._x_model&&e._x_model.set(getInputValue(e,t,{target:e},getValue())))});r(()=>n())}e._x_model={get(){return getValue()},set(e){setValue(e)}},e._x_forceModelUpdate=t=>{void 0===t&&"string"==typeof n&&n.match(/\./)&&(t=""),window.fromModel=!0,mutateDom(()=>bind(e,"value",t)),delete window.fromModel},i(()=>{let n=getValue();t.includes("unintrusive")&&document.activeElement.isSameNode(e)||e._x_forceModelUpdate(n)})}),directive("cloak",e=>queueMicrotask(()=>mutateDom(()=>e.removeAttribute(prefix("cloak"))))),addInitSelector(()=>`[${prefix("init")}]`),directive("init",skipDuringClone((e,{expression:t},{evaluate:n})=>"string"==typeof t?!!t.trim()&&n(t,{},!1):n(t,{},!1))),directive("text",(e,{expression:t},{effect:n,evaluateLater:i})=>{let r=i(t);n(()=>{r(t=>{mutateDom(()=>{e.textContent=t})})})}),directive("html",(e,{expression:t},{effect:n,evaluateLater:i})=>{let r=i(t);n(()=>{r(t=>{mutateDom(()=>{e.innerHTML=t,e._x_ignoreSelf=!0,initTree(e),delete e._x_ignoreSelf})})})}),mapAttributes(startingWith(":",prefix("bind:")));var handler2=(e,{value:t,modifiers:n,expression:i,original:r},{effect:o,cleanup:s})=>{if(!t){let t={};return function injectBindingProviders(e){return Object.entries(K).forEach(([t,n])=>{Object.defineProperty(e,t,{get(){return(...e)=>n(...e)}})}),e}(t),void evaluateLater(e,i)(t=>{applyBindingsObject(e,t,r)},{scope:t})}if("key"===t)return function storeKeyForXFor(e,t){e._x_keyExpression=t}(e,i);if(e._x_inlineBindings&&e._x_inlineBindings[t]&&e._x_inlineBindings[t].extract)return;let a=evaluateLater(e,i);o(()=>a(r=>{void 0===r&&"string"==typeof i&&i.match(/\./)&&(r=""),mutateDom(()=>bind(e,t,r,n))})),s(()=>{e._x_undoAddedClasses&&e._x_undoAddedClasses(),e._x_undoAddedStyles&&e._x_undoAddedStyles()})};function getIterationScopeVariables(e,t,n,i){let r={};if(/^\[.*\]$/.test(e.item)&&Array.isArray(t)){e.item.replace("[","").replace("]","").split(",").map(e=>e.trim()).forEach((e,n)=>{r[e]=t[n]})}else if(/^\{.*\}$/.test(e.item)&&!Array.isArray(t)&&"object"==typeof t){e.item.replace("{","").replace("}","").split(",").map(e=>e.trim()).forEach(e=>{r[e]=t[e]})}else r[e.item]=t;return e.index&&(r[e.index]=n),e.collection&&(r[e.collection]=i),r}function handler3(){}function warnMissingPluginDirective(e,t,n){directive(t,i=>warn(`You can't use [x-${t}] without first installing the "${e}" plugin here: https://alpinejs.dev/plugins/${n}`,i))}handler2.inline=(e,{value:t,modifiers:n,expression:i})=>{t&&(e._x_inlineBindings||(e._x_inlineBindings={}),e._x_inlineBindings[t]={expression:i,extract:!1})},directive("bind",handler2),addRootSelector(()=>`[${prefix("data")}]`),directive("data",(e,{expression:t},{cleanup:n})=>{if(function shouldSkipRegisteringDataDuringClone(e){return!!F&&(!!G||e.hasAttribute("data-has-alpine-state"))}(e))return;t=""===t?"{}":t;let r={};injectMagics(r,e);let o={};!function injectDataProviders(e,t){return Object.entries(W).forEach(([n,i])=>{Object.defineProperty(e,n,{get(){return(...e)=>i.bind(t)(...e)},enumerable:!1})}),e}(o,r);let s=evaluate(e,t,{scope:o});void 0!==s&&!0!==s||(s={}),injectMagics(s,e);let a=i(s);initInterceptors(a);let l=addScopeToNode(e,a);a.init&&evaluate(e,a.init),n(()=>{a.destroy&&evaluate(e,a.destroy),l()})}),interceptClone((e,t)=>{e._x_dataStack&&(t._x_dataStack=e._x_dataStack,t.setAttribute("data-has-alpine-state",!0))}),directive("show",(e,{modifiers:t,expression:n},{effect:i})=>{let r=evaluateLater(e,n);e._x_doHide||(e._x_doHide=()=>{mutateDom(()=>{e.style.setProperty("display","none",t.includes("important")?"important":void 0)})}),e._x_doShow||(e._x_doShow=()=>{mutateDom(()=>{1===e.style.length&&"none"===e.style.display?e.removeAttribute("style"):e.style.removeProperty("display")})});let o,hide=()=>{e._x_doHide(),e._x_isShown=!1},show=()=>{e._x_doShow(),e._x_isShown=!0},clickAwayCompatibleShow=()=>setTimeout(show),s=once(e=>e?show():hide(),t=>{"function"==typeof e._x_toggleAndCascadeWithTransitions?e._x_toggleAndCascadeWithTransitions(e,t,show,hide):t?clickAwayCompatibleShow():hide()}),a=!0;i(()=>r(e=>{(a||e!==o)&&(t.includes("immediate")&&(e?clickAwayCompatibleShow():hide()),s(e),o=e,a=!1)}))}),directive("for",(e,{expression:t},{effect:n,cleanup:r})=>{let o=function parseForExpression(e){let t=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,n=/^\s*\(|\)\s*$/g,i=/([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/,r=e.match(i);if(!r)return;let o={};o.items=r[2].trim();let s=r[1].replace(n,"").trim(),a=s.match(t);a?(o.item=s.replace(t,"").trim(),o.index=a[1].trim(),a[2]&&(o.collection=a[2].trim())):o.item=s;return o}(t),s=evaluateLater(e,o.items),a=evaluateLater(e,e._x_keyExpression||"index");e._x_prevKeys=[],e._x_lookup={},n(()=>function loop(e,t,n,r){let isObject2=e=>"object"==typeof e&&!Array.isArray(e),o=e;n(n=>{(function isNumeric3(e){return!Array.isArray(e)&&!isNaN(e)})(n)&&n>=0&&(n=Array.from(Array(n).keys(),e=>e+1)),void 0===n&&(n=[]);let s=e._x_lookup,a=e._x_prevKeys,l=[],c=[];if(isObject2(n))n=Object.entries(n).map(([i,o])=>{let s=getIterationScopeVariables(t,o,i,n);r(t=>{c.includes(t)&&warn("Duplicate key on x-for",e),c.push(t)},{scope:{index:i,...s}}),l.push(s)});else for(let i=0;i<n.length;i++){let o=getIterationScopeVariables(t,n[i],i,n);r(t=>{c.includes(t)&&warn("Duplicate key on x-for",e),c.push(t)},{scope:{index:i,...o}}),l.push(o)}let u=[],d=[],p=[],f=[];for(let e=0;e<a.length;e++){let t=a[e];-1===c.indexOf(t)&&p.push(t)}a=a.filter(e=>!p.includes(e));let h="template";for(let e=0;e<c.length;e++){let t=c[e],n=a.indexOf(t);if(-1===n)a.splice(e,0,t),u.push([h,e]);else if(n!==e){let t=a.splice(e,1)[0],i=a.splice(n-1,1)[0];a.splice(e,0,i),a.splice(n,0,t),d.push([t,i])}else f.push(t);h=t}for(let e=0;e<p.length;e++){let t=p[e];t in s&&(mutateDom(()=>{destroyTree(s[t]),s[t].remove()}),delete s[t])}for(let e=0;e<d.length;e++){let[t,n]=d[e],i=s[t],r=s[n],a=document.createElement("div");mutateDom(()=>{r||warn('x-for ":key" is undefined or invalid',o,n,s),r.after(a),i.after(r),r._x_currentIfEl&&r.after(r._x_currentIfEl),a.before(i),i._x_currentIfEl&&i.after(i._x_currentIfEl),a.remove()}),r._x_refreshXForScope(l[c.indexOf(n)])}for(let e=0;e<u.length;e++){let[t,n]=u[e],r="template"===t?o:s[t];r._x_currentIfEl&&(r=r._x_currentIfEl);let a=l[n],d=c[n],p=document.importNode(o.content,!0).firstElementChild,f=i(a);addScopeToNode(p,f,o),p._x_refreshXForScope=e=>{Object.entries(e).forEach(([e,t])=>{f[e]=t})},mutateDom(()=>{r.after(p),skipDuringClone(()=>initTree(p))()}),"object"==typeof d&&warn("x-for key cannot be an object, it must be a string or an integer",o),s[d]=p}for(let e=0;e<f.length;e++)s[f[e]]._x_refreshXForScope(l[c.indexOf(f[e])]);o._x_prevKeys=c})}(e,o,s,a)),r(()=>{Object.values(e._x_lookup).forEach(e=>mutateDom(()=>{destroyTree(e),e.remove()})),delete e._x_prevKeys,delete e._x_lookup})}),handler3.inline=(e,{expression:t},{cleanup:n})=>{let i=closestRoot(e);i._x_refs||(i._x_refs={}),i._x_refs[t]=e,n(()=>delete i._x_refs[t])},directive("ref",handler3),directive("if",(e,{expression:t},{effect:n,cleanup:i})=>{"template"!==e.tagName.toLowerCase()&&warn("x-if can only be used on a <template> tag",e);let r=evaluateLater(e,t);n(()=>r(t=>{t?(()=>{if(e._x_currentIfEl)return e._x_currentIfEl;let t=e.content.cloneNode(!0).firstElementChild;addScopeToNode(t,{},e),mutateDom(()=>{e.after(t),skipDuringClone(()=>initTree(t))()}),e._x_currentIfEl=t,e._x_undoIf=()=>{mutateDom(()=>{destroyTree(t),t.remove()}),delete e._x_currentIfEl}})():e._x_undoIf&&(e._x_undoIf(),delete e._x_undoIf)})),i(()=>e._x_undoIf&&e._x_undoIf())}),directive("id",(e,{expression:t},{evaluate:n})=>{n(t).forEach(t=>function setIdRoot(e,t){e._x_ids||(e._x_ids={}),e._x_ids[t]||(e._x_ids[t]=findAndIncrementId(t))}(e,t))}),interceptClone((e,t)=>{e._x_ids&&(t._x_ids=e._x_ids)}),mapAttributes(startingWith("@",prefix("on:"))),directive("on",skipDuringClone((e,{value:t,modifiers:n,expression:i},{cleanup:r})=>{let o=i?evaluateLater(e,i):()=>{};"template"===e.tagName.toLowerCase()&&(e._x_forwardEvents||(e._x_forwardEvents=[]),e._x_forwardEvents.includes(t)||e._x_forwardEvents.push(t));let s=on(e,t,n,e=>{o(()=>{},{scope:{$event:e},params:[e]})});r(()=>s())})),warnMissingPluginDirective("Collapse","collapse","collapse"),warnMissingPluginDirective("Intersect","intersect","intersect"),warnMissingPluginDirective("Focus","trap","focus"),warnMissingPluginDirective("Mask","mask","mask"),J.setEvaluator(function cspEvaluator(e,t){let n=function generateDataStack(e){let t={};return injectMagics(t,e),[t,...closestDataStack(e)]}(e);if("function"==typeof t)return generateEvaluatorFromFunction(n,t);let i=function generateEvaluator(e,t,n){return(e=()=>{},{scope:i={},params:r=[]}={})=>{let o=mergeProxies([i,...n]),s=function generateRuntimeFunction(e){try{const t=new Z(e).tokenize(),n=new X(t).parse(),i=new Y;return function(e={}){const{scope:t={},context:r=null,allowGlobal:o=!1,forceBindingRootScopeToFunctions:s=!1}=e;return i.evaluate({node:n,scope:t,context:r,allowGlobal:o,forceBindingRootScopeToFunctions:s})}}catch(e){throw new Error(`CSP Parser Error: ${e.message}`)}}(t),a=s({scope:o,allowGlobal:!0,forceBindingRootScopeToFunctions:!0});if(w&&"function"==typeof a){let t=a.apply(a,r);t instanceof Promise?t.then(t=>e(t)):e(t)}else"object"==typeof a&&a instanceof Promise?a.then(t=>e(t)):e(a)}}(0,t,n);return tryCatch.bind(null,e,t,i)}),J.setReactivityEngine({reactive:reactive2,effect:function effect2(e,t=ee){(function isEffect(e){return e&&!0===e._isEffect})(e)&&(e=e.raw);const n=function createReactiveEffect(e,t){const n=function reactiveEffect(){if(!n.active)return e();if(!ce.includes(n)){cleanup(n);try{return function enableTracking(){he.push(fe),fe=!0}(),ce.push(n),Q=n,e()}finally{ce.pop(),resetTracking(),Q=ce[ce.length-1]}}};return n.id=pe++,n.allowRecurse=!!t.allowRecurse,n._isEffect=!0,n.active=!0,n.raw=e,n.deps=[],n.options=t,n}(e,t);return t.lazy||n(),n},release:function stop(e){e.active&&(cleanup(e),e.options.onStop&&e.options.onStop(),e.active=!1)},raw:toRaw});var je=J,Me=J},"./packages/packages/core/alpinejs/src/init.ts":function(e,t,n){n.r(t),n.d(t,{init:function(){return init}});var i=n("./packages/node_modules/@alpinejs/csp/dist/module.esm.js");function init(){document.addEventListener("DOMContentLoaded",()=>{i.Alpine.start()},{once:!0})}}},t={};function __webpack_require__(n){var i=t[n];if(void 0!==i)return i.exports;var r=t[n]={exports:{}};return e[n](r,r.exports,__webpack_require__),r.exports}__webpack_require__.d=function(e,t){for(var n in t)__webpack_require__.o(t,n)&&!__webpack_require__.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},__webpack_require__.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},__webpack_require__.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};!function(){__webpack_require__.r(n),__webpack_require__.d(n,{Alpine:function(){return e.Alpine},init:function(){return t.init},refreshTree:function(){return refreshTree}});var e=__webpack_require__("./packages/node_modules/@alpinejs/csp/dist/module.esm.js"),t=__webpack_require__("./packages/packages/core/alpinejs/src/init.ts");const refreshTree=t=>{e.Alpine.nextTick(()=>{e.Alpine.destroyTree(t),e.Alpine.initTree(t)})}}(),(window.elementorV2=window.elementorV2||{}).alpinejs=n}(),window.elementorV2.alpinejs?.init?.();
3643 3 //# sourceMappingURL=alpinejs.js.map