lookbook 2.3.11 → 2.3.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. checksums.yaml +4 -4
  2. data/app/components/lookbook/button/component.html.erb +11 -12
  3. data/app/components/lookbook/button/component.js +19 -31
  4. data/app/components/lookbook/button/component.rb +4 -0
  5. data/app/components/lookbook/button_group/component.html.erb +1 -1
  6. data/app/components/lookbook/code/component.html.erb +1 -1
  7. data/app/components/lookbook/copy_button/component.html.erb +1 -1
  8. data/app/components/lookbook/debug_menu/component.html.erb +1 -1
  9. data/app/components/lookbook/dimensions_display/component.html.erb +2 -2
  10. data/app/components/lookbook/display_options/editor/component.html.erb +2 -2
  11. data/app/components/lookbook/display_options/field/component.html.erb +1 -1
  12. data/app/components/lookbook/embed/component.html.erb +1 -1
  13. data/app/components/lookbook/file_source/component.html.erb +1 -1
  14. data/app/components/lookbook/icon_button/component.html.erb +2 -2
  15. data/app/components/lookbook/inspector_panel/component.html.erb +1 -1
  16. data/app/components/lookbook/logo/component.html.erb +1 -1
  17. data/app/components/lookbook/message/component.html.erb +1 -1
  18. data/app/components/lookbook/nav/component.html.erb +1 -1
  19. data/app/components/lookbook/nav/directory/component.html.erb +1 -1
  20. data/app/components/lookbook/nav/entity/component.html.erb +1 -1
  21. data/app/components/lookbook/page_tabs/component.html.erb +1 -1
  22. data/app/components/lookbook/params/editor/component.html.erb +1 -1
  23. data/app/components/lookbook/prose/component.html.erb +1 -1
  24. data/app/components/lookbook/split_layout/component.html.erb +1 -1
  25. data/app/components/lookbook/tab_panels/component.html.erb +1 -1
  26. data/app/components/lookbook/tab_panels/panel/component.html.erb +1 -1
  27. data/app/components/lookbook/tabs/component.html.erb +1 -1
  28. data/app/components/lookbook/tabs/dropdown_tab/component.html.erb +1 -1
  29. data/app/components/lookbook/tabs/tab/component.html.erb +1 -1
  30. data/app/components/lookbook/text_button/component.html.erb +2 -2
  31. data/app/components/lookbook/toolbar/component.html.erb +1 -1
  32. data/app/controllers/lookbook/application_controller.rb +17 -0
  33. data/app/views/layouts/lookbook/application.html.erb +3 -3
  34. data/app/views/layouts/lookbook/embed.html.erb +1 -1
  35. data/app/views/lookbook/embeds/show.html.erb +1 -1
  36. data/app/views/lookbook/errors/default.html.erb +1 -1
  37. data/app/views/lookbook/errors/not_found.html.erb +1 -1
  38. data/app/views/lookbook/index.html.erb +1 -1
  39. data/app/views/lookbook/inspector/inputs/_color.html.erb +1 -1
  40. data/app/views/lookbook/inspector/inputs/_range.html.erb +1 -1
  41. data/app/views/lookbook/inspector/inputs/_select.html.erb +1 -1
  42. data/app/views/lookbook/inspector/inputs/_text.html.erb +1 -1
  43. data/app/views/lookbook/inspector/inputs/_text_two_step.html.erb +1 -1
  44. data/app/views/lookbook/inspector/inputs/_textarea.html.erb +1 -1
  45. data/app/views/lookbook/inspector/panels/_notes.html.erb +1 -1
  46. data/app/views/lookbook/inspector/panels/_output.html.erb +1 -1
  47. data/app/views/lookbook/inspector/panels/_preview.html.erb +1 -1
  48. data/app/views/lookbook/inspector/panels/_source.html.erb +1 -1
  49. data/app/views/lookbook/inspector/show.html.erb +4 -4
  50. data/app/views/lookbook/pages/show.html.erb +1 -1
  51. data/app/views/lookbook/partials/_iframe_content_scripts.html.erb +1 -1
  52. data/app/views/lookbook/partials/_user_styles.html.erb +1 -1
  53. data/app/views/lookbook/previews/group.html.erb +1 -1
  54. data/app/views/lookbook/previews/preview.html.erb +3 -3
  55. data/app/views/lookbook/previews/show.html.erb +1 -1
  56. data/config/app.yml +0 -1
  57. data/lib/lookbook/preview_parser.rb +2 -4
  58. data/lib/lookbook/services/markdown_renderer.rb +12 -4
  59. data/lib/lookbook/tags/param_tag.rb +4 -1
  60. data/lib/lookbook/version.rb +1 -1
  61. data/public/lookbook-assets/css/lookbook.css +74 -99
  62. data/public/lookbook-assets/css/lookbook.css.map +1 -1
  63. data/public/lookbook-assets/js/iframe.js +15 -6
  64. data/public/lookbook-assets/js/iframe.js.map +1 -1
  65. data/public/lookbook-assets/js/index.js +510 -370
  66. data/public/lookbook-assets/js/index.js.map +1 -1
  67. data/public/lookbook-assets/js/lookbook.js +26 -8
  68. metadata +2 -2
@@ -94,104 +94,20 @@ function $caa9439642c6336c$var$elementBoundEffect(el) {
94
94
  }
95
95
  ];
96
96
  }
97
- // packages/alpinejs/src/utils/dispatch.js
98
- function $caa9439642c6336c$var$dispatch(el, name, detail = {}) {
99
- el.dispatchEvent(new CustomEvent(name, {
100
- detail: detail,
101
- bubbles: true,
102
- // Allows events to pass the shadow DOM barrier.
103
- composed: true,
104
- cancelable: true
105
- }));
106
- }
107
- // packages/alpinejs/src/utils/walk.js
108
- function $caa9439642c6336c$var$walk(el, callback) {
109
- if (typeof ShadowRoot === "function" && el instanceof ShadowRoot) {
110
- Array.from(el.children).forEach((el2)=>$caa9439642c6336c$var$walk(el2, callback));
111
- return;
112
- }
113
- let skip = false;
114
- callback(el, ()=>skip = true);
115
- if (skip) return;
116
- let node = el.firstElementChild;
117
- while(node){
118
- $caa9439642c6336c$var$walk(node, callback, false);
119
- node = node.nextElementSibling;
120
- }
121
- }
122
- // packages/alpinejs/src/utils/warn.js
123
- function $caa9439642c6336c$var$warn(message, ...args) {
124
- console.warn(`Alpine Warning: ${message}`, ...args);
125
- }
126
- // packages/alpinejs/src/lifecycle.js
127
- var $caa9439642c6336c$var$started = false;
128
- function $caa9439642c6336c$var$start() {
129
- if ($caa9439642c6336c$var$started) $caa9439642c6336c$var$warn("Alpine has already been initialized on this page. Calling Alpine.start() more than once can cause problems.");
130
- $caa9439642c6336c$var$started = true;
131
- if (!document.body) $caa9439642c6336c$var$warn("Unable to initialize. Trying to load Alpine before `<body>` is available. Did you forget to add `defer` in Alpine's `<script>` tag?");
132
- $caa9439642c6336c$var$dispatch(document, "alpine:init");
133
- $caa9439642c6336c$var$dispatch(document, "alpine:initializing");
134
- $caa9439642c6336c$var$startObservingMutations();
135
- $caa9439642c6336c$var$onElAdded((el)=>$caa9439642c6336c$var$initTree(el, $caa9439642c6336c$var$walk));
136
- $caa9439642c6336c$var$onElRemoved((el)=>$caa9439642c6336c$var$destroyTree(el));
137
- $caa9439642c6336c$var$onAttributesAdded((el, attrs)=>{
138
- $caa9439642c6336c$var$directives(el, attrs).forEach((handle)=>handle());
139
- });
140
- let outNestedComponents = (el)=>!$caa9439642c6336c$var$closestRoot(el.parentElement, true);
141
- Array.from(document.querySelectorAll($caa9439642c6336c$var$allSelectors().join(","))).filter(outNestedComponents).forEach((el)=>{
142
- $caa9439642c6336c$var$initTree(el);
143
- });
144
- $caa9439642c6336c$var$dispatch(document, "alpine:initialized");
145
- }
146
- var $caa9439642c6336c$var$rootSelectorCallbacks = [];
147
- var $caa9439642c6336c$var$initSelectorCallbacks = [];
148
- function $caa9439642c6336c$var$rootSelectors() {
149
- return $caa9439642c6336c$var$rootSelectorCallbacks.map((fn)=>fn());
150
- }
151
- function $caa9439642c6336c$var$allSelectors() {
152
- return $caa9439642c6336c$var$rootSelectorCallbacks.concat($caa9439642c6336c$var$initSelectorCallbacks).map((fn)=>fn());
153
- }
154
- function $caa9439642c6336c$var$addRootSelector(selectorCallback) {
155
- $caa9439642c6336c$var$rootSelectorCallbacks.push(selectorCallback);
156
- }
157
- function $caa9439642c6336c$var$addInitSelector(selectorCallback) {
158
- $caa9439642c6336c$var$initSelectorCallbacks.push(selectorCallback);
159
- }
160
- function $caa9439642c6336c$var$closestRoot(el, includeInitSelectors = false) {
161
- return $caa9439642c6336c$var$findClosest(el, (element)=>{
162
- const selectors = includeInitSelectors ? $caa9439642c6336c$var$allSelectors() : $caa9439642c6336c$var$rootSelectors();
163
- if (selectors.some((selector)=>element.matches(selector))) return true;
164
- });
165
- }
166
- function $caa9439642c6336c$var$findClosest(el, callback) {
167
- if (!el) return;
168
- if (callback(el)) return el;
169
- if (el._x_teleportBack) el = el._x_teleportBack;
170
- if (!el.parentElement) return;
171
- return $caa9439642c6336c$var$findClosest(el.parentElement, callback);
172
- }
173
- function $caa9439642c6336c$var$isRoot(el) {
174
- return $caa9439642c6336c$var$rootSelectors().some((selector)=>el.matches(selector));
175
- }
176
- var $caa9439642c6336c$var$initInterceptors = [];
177
- function $caa9439642c6336c$var$interceptInit(callback) {
178
- $caa9439642c6336c$var$initInterceptors.push(callback);
179
- }
180
- function $caa9439642c6336c$var$initTree(el, walker = $caa9439642c6336c$var$walk, intercept = ()=>{}) {
181
- $caa9439642c6336c$var$deferHandlingDirectives(()=>{
182
- walker(el, (el2, skip)=>{
183
- intercept(el2, skip);
184
- $caa9439642c6336c$var$initInterceptors.forEach((i)=>i(el2, skip));
185
- $caa9439642c6336c$var$directives(el2, el2.attributes).forEach((handle)=>handle());
186
- el2._x_ignore && skip();
97
+ function $caa9439642c6336c$var$watch(getter, callback) {
98
+ let firstTime = true;
99
+ let oldValue;
100
+ let effectReference = $caa9439642c6336c$var$effect(()=>{
101
+ let value = getter();
102
+ JSON.stringify(value);
103
+ if (!firstTime) queueMicrotask(()=>{
104
+ callback(value, oldValue);
105
+ oldValue = value;
187
106
  });
107
+ else oldValue = value;
108
+ firstTime = false;
188
109
  });
189
- }
190
- function $caa9439642c6336c$var$destroyTree(root) {
191
- $caa9439642c6336c$var$walk(root, (el)=>{
192
- $caa9439642c6336c$var$cleanupAttributes(el);
193
- $caa9439642c6336c$var$cleanupElement(el);
194
- });
110
+ return ()=>$caa9439642c6336c$var$release(effectReference);
195
111
  }
196
112
  // packages/alpinejs/src/mutation.js
197
113
  var $caa9439642c6336c$var$onAttributeAddeds = [];
@@ -227,7 +143,8 @@ function $caa9439642c6336c$var$cleanupAttributes(el, names) {
227
143
  });
228
144
  }
229
145
  function $caa9439642c6336c$var$cleanupElement(el) {
230
- if (el._x_cleanups) while(el._x_cleanups.length)el._x_cleanups.pop()();
146
+ el._x_effects?.forEach($caa9439642c6336c$var$dequeueJob);
147
+ while(el._x_cleanups?.length)el._x_cleanups.pop()();
231
148
  }
232
149
  var $caa9439642c6336c$var$observer = new MutationObserver($caa9439642c6336c$var$onMutate);
233
150
  var $caa9439642c6336c$var$currentlyObserving = false;
@@ -245,21 +162,14 @@ function $caa9439642c6336c$var$stopObservingMutations() {
245
162
  $caa9439642c6336c$var$observer.disconnect();
246
163
  $caa9439642c6336c$var$currentlyObserving = false;
247
164
  }
248
- var $caa9439642c6336c$var$recordQueue = [];
249
- var $caa9439642c6336c$var$willProcessRecordQueue = false;
165
+ var $caa9439642c6336c$var$queuedMutations = [];
250
166
  function $caa9439642c6336c$var$flushObserver() {
251
- $caa9439642c6336c$var$recordQueue = $caa9439642c6336c$var$recordQueue.concat($caa9439642c6336c$var$observer.takeRecords());
252
- if ($caa9439642c6336c$var$recordQueue.length && !$caa9439642c6336c$var$willProcessRecordQueue) {
253
- $caa9439642c6336c$var$willProcessRecordQueue = true;
254
- queueMicrotask(()=>{
255
- $caa9439642c6336c$var$processRecordQueue();
256
- $caa9439642c6336c$var$willProcessRecordQueue = false;
257
- });
258
- }
259
- }
260
- function $caa9439642c6336c$var$processRecordQueue() {
261
- $caa9439642c6336c$var$onMutate($caa9439642c6336c$var$recordQueue);
262
- $caa9439642c6336c$var$recordQueue.length = 0;
167
+ let records = $caa9439642c6336c$var$observer.takeRecords();
168
+ $caa9439642c6336c$var$queuedMutations.push(()=>records.length > 0 && $caa9439642c6336c$var$onMutate(records));
169
+ let queueLengthWhenTriggered = $caa9439642c6336c$var$queuedMutations.length;
170
+ queueMicrotask(()=>{
171
+ if ($caa9439642c6336c$var$queuedMutations.length === queueLengthWhenTriggered) while($caa9439642c6336c$var$queuedMutations.length > 0)$caa9439642c6336c$var$queuedMutations.shift()();
172
+ });
263
173
  }
264
174
  function $caa9439642c6336c$var$mutateDom(callback) {
265
175
  if (!$caa9439642c6336c$var$currentlyObserving) return callback();
@@ -284,14 +194,26 @@ function $caa9439642c6336c$var$onMutate(mutations) {
284
194
  return;
285
195
  }
286
196
  let addedNodes = [];
287
- let removedNodes = [];
197
+ let removedNodes = /* @__PURE__ */ new Set();
288
198
  let addedAttributes = /* @__PURE__ */ new Map();
289
199
  let removedAttributes = /* @__PURE__ */ new Map();
290
200
  for(let i = 0; i < mutations.length; i++){
291
201
  if (mutations[i].target._x_ignoreMutationObserver) continue;
292
202
  if (mutations[i].type === "childList") {
293
- mutations[i].addedNodes.forEach((node)=>node.nodeType === 1 && addedNodes.push(node));
294
- mutations[i].removedNodes.forEach((node)=>node.nodeType === 1 && removedNodes.push(node));
203
+ mutations[i].removedNodes.forEach((node)=>{
204
+ if (node.nodeType !== 1) return;
205
+ if (!node._x_marker) return;
206
+ removedNodes.add(node);
207
+ });
208
+ mutations[i].addedNodes.forEach((node)=>{
209
+ if (node.nodeType !== 1) return;
210
+ if (removedNodes.has(node)) {
211
+ removedNodes.delete(node);
212
+ return;
213
+ }
214
+ if (node._x_marker) return;
215
+ addedNodes.push(node);
216
+ });
295
217
  }
296
218
  if (mutations[i].type === "attributes") {
297
219
  let el = mutations[i].target;
@@ -322,27 +244,13 @@ function $caa9439642c6336c$var$onMutate(mutations) {
322
244
  $caa9439642c6336c$var$onAttributeAddeds.forEach((i)=>i(el, attrs));
323
245
  });
324
246
  for (let node of removedNodes){
325
- if (addedNodes.includes(node)) continue;
247
+ if (addedNodes.some((i)=>i.contains(node))) continue;
326
248
  $caa9439642c6336c$var$onElRemoveds.forEach((i)=>i(node));
327
- $caa9439642c6336c$var$destroyTree(node);
328
249
  }
329
- addedNodes.forEach((node)=>{
330
- node._x_ignoreSelf = true;
331
- node._x_ignore = true;
332
- });
333
250
  for (let node of addedNodes){
334
- if (removedNodes.includes(node)) continue;
335
251
  if (!node.isConnected) continue;
336
- delete node._x_ignoreSelf;
337
- delete node._x_ignore;
338
252
  $caa9439642c6336c$var$onElAddeds.forEach((i)=>i(node));
339
- node._x_ignore = true;
340
- node._x_ignoreSelf = true;
341
253
  }
342
- addedNodes.forEach((node)=>{
343
- delete node._x_ignoreSelf;
344
- delete node._x_ignore;
345
- });
346
254
  addedNodes = null;
347
255
  removedNodes = null;
348
256
  addedAttributes = null;
@@ -378,16 +286,16 @@ var $caa9439642c6336c$var$mergeProxyTrap = {
378
286
  },
379
287
  has ({ objects: objects }, name) {
380
288
  if (name == Symbol.unscopables) return false;
381
- return objects.some((obj)=>Object.prototype.hasOwnProperty.call(obj, name));
289
+ return objects.some((obj)=>Object.prototype.hasOwnProperty.call(obj, name) || Reflect.has(obj, name));
382
290
  },
383
291
  get ({ objects: objects }, name, thisProxy) {
384
292
  if (name == "toJSON") return $caa9439642c6336c$var$collapseProxies;
385
- return Reflect.get(objects.find((obj)=>Object.prototype.hasOwnProperty.call(obj, name)) || {}, name, thisProxy);
293
+ return Reflect.get(objects.find((obj)=>Reflect.has(obj, name)) || {}, name, thisProxy);
386
294
  },
387
295
  set ({ objects: objects }, name, value, thisProxy) {
388
296
  const target = objects.find((obj)=>Object.prototype.hasOwnProperty.call(obj, name)) || objects[objects.length - 1];
389
297
  const descriptor = Object.getOwnPropertyDescriptor(target, name);
390
- if (descriptor?.set && descriptor?.get) return Reflect.set(target, name, value, thisProxy);
298
+ if (descriptor?.set && descriptor?.get) return descriptor.set.call(thisProxy, value) || true;
391
299
  return Reflect.set(target, name, value);
392
300
  }
393
301
  };
@@ -399,11 +307,12 @@ function $caa9439642c6336c$var$collapseProxies() {
399
307
  }, {});
400
308
  }
401
309
  // packages/alpinejs/src/interceptor.js
402
- function $caa9439642c6336c$var$initInterceptors2(data2) {
310
+ function $caa9439642c6336c$var$initInterceptors(data2) {
403
311
  let isObject2 = (val)=>typeof val === "object" && !Array.isArray(val) && val !== null;
404
312
  let recurse = (obj, basePath = "")=>{
405
313
  Object.entries(Object.getOwnPropertyDescriptors(obj)).forEach(([key, { value: value, enumerable: enumerable }])=>{
406
314
  if (enumerable === false || value === void 0) return;
315
+ if (typeof value === "object" && value !== null && value.__v_skip) return;
407
316
  let path = basePath === "" ? key : `${basePath}.${key}`;
408
317
  if (typeof value === "object" && value !== null && value._x_interceptor) obj[key] = value.initialize(data2, path, key);
409
318
  else if (isObject2(value) && value !== obj && !(value instanceof Element)) recurse(value, path);
@@ -453,29 +362,26 @@ function $caa9439642c6336c$var$magic(name, callback) {
453
362
  $caa9439642c6336c$var$magics[name] = callback;
454
363
  }
455
364
  function $caa9439642c6336c$var$injectMagics(obj, el) {
365
+ let memoizedUtilities = $caa9439642c6336c$var$getUtilities(el);
456
366
  Object.entries($caa9439642c6336c$var$magics).forEach(([name, callback])=>{
457
- let memoizedUtilities = null;
458
- function getUtilities() {
459
- if (memoizedUtilities) return memoizedUtilities;
460
- else {
461
- let [utilities, cleanup2] = $caa9439642c6336c$var$getElementBoundUtilities(el);
462
- memoizedUtilities = {
463
- interceptor: $caa9439642c6336c$var$interceptor,
464
- ...utilities
465
- };
466
- $caa9439642c6336c$var$onElRemoved(el, cleanup2);
467
- return memoizedUtilities;
468
- }
469
- }
470
367
  Object.defineProperty(obj, `$${name}`, {
471
368
  get () {
472
- return callback(el, getUtilities());
369
+ return callback(el, memoizedUtilities);
473
370
  },
474
371
  enumerable: false
475
372
  });
476
373
  });
477
374
  return obj;
478
375
  }
376
+ function $caa9439642c6336c$var$getUtilities(el) {
377
+ let [utilities, cleanup2] = $caa9439642c6336c$var$getElementBoundUtilities(el);
378
+ let utils = {
379
+ interceptor: $caa9439642c6336c$var$interceptor,
380
+ ...utilities
381
+ };
382
+ $caa9439642c6336c$var$onElRemoved(el, cleanup2);
383
+ return utils;
384
+ }
479
385
  // packages/alpinejs/src/utils/error.js
480
386
  function $caa9439642c6336c$var$tryCatch(el, expression, callback, ...args) {
481
387
  try {
@@ -485,7 +391,9 @@ function $caa9439642c6336c$var$tryCatch(el, expression, callback, ...args) {
485
391
  }
486
392
  }
487
393
  function $caa9439642c6336c$var$handleError(error2, el, expression) {
488
- Object.assign(error2, {
394
+ error2 = Object.assign(error2 ?? {
395
+ message: "No error message given."
396
+ }, {
489
397
  el: el,
490
398
  expression: expression
491
399
  });
@@ -602,7 +510,7 @@ function $caa9439642c6336c$var$directive(name, callback) {
602
510
  return {
603
511
  before (directive2) {
604
512
  if (!$caa9439642c6336c$var$directiveHandlers[directive2]) {
605
- console.warn("Cannot find directive `${directive}`. `${name}` will use the default order of execution");
513
+ console.warn(String.raw`Cannot find directive \`${directive2}\`. \`${name}\` will use the default order of execution`);
606
514
  return;
607
515
  }
608
516
  const pos = $caa9439642c6336c$var$directiveOrder.indexOf(directive2);
@@ -610,6 +518,9 @@ function $caa9439642c6336c$var$directive(name, callback) {
610
518
  }
611
519
  };
612
520
  }
521
+ function $caa9439642c6336c$var$directiveExists(name) {
522
+ return Object.keys($caa9439642c6336c$var$directiveHandlers).includes(name);
523
+ }
613
524
  function $caa9439642c6336c$var$directives(el, attributes, originalAttributeOverride) {
614
525
  attributes = Array.from(attributes);
615
526
  if (el._x_virtualDirectives) {
@@ -756,6 +667,147 @@ function $caa9439642c6336c$var$byPriority(a, b) {
756
667
  let typeB = $caa9439642c6336c$var$directiveOrder.indexOf(b.type) === -1 ? $caa9439642c6336c$var$DEFAULT : b.type;
757
668
  return $caa9439642c6336c$var$directiveOrder.indexOf(typeA) - $caa9439642c6336c$var$directiveOrder.indexOf(typeB);
758
669
  }
670
+ // packages/alpinejs/src/utils/dispatch.js
671
+ function $caa9439642c6336c$var$dispatch(el, name, detail = {}) {
672
+ el.dispatchEvent(new CustomEvent(name, {
673
+ detail: detail,
674
+ bubbles: true,
675
+ // Allows events to pass the shadow DOM barrier.
676
+ composed: true,
677
+ cancelable: true
678
+ }));
679
+ }
680
+ // packages/alpinejs/src/utils/walk.js
681
+ function $caa9439642c6336c$var$walk(el, callback) {
682
+ if (typeof ShadowRoot === "function" && el instanceof ShadowRoot) {
683
+ Array.from(el.children).forEach((el2)=>$caa9439642c6336c$var$walk(el2, callback));
684
+ return;
685
+ }
686
+ let skip = false;
687
+ callback(el, ()=>skip = true);
688
+ if (skip) return;
689
+ let node = el.firstElementChild;
690
+ while(node){
691
+ $caa9439642c6336c$var$walk(node, callback, false);
692
+ node = node.nextElementSibling;
693
+ }
694
+ }
695
+ // packages/alpinejs/src/utils/warn.js
696
+ function $caa9439642c6336c$var$warn(message, ...args) {
697
+ console.warn(`Alpine Warning: ${message}`, ...args);
698
+ }
699
+ // packages/alpinejs/src/lifecycle.js
700
+ var $caa9439642c6336c$var$started = false;
701
+ function $caa9439642c6336c$var$start() {
702
+ if ($caa9439642c6336c$var$started) $caa9439642c6336c$var$warn("Alpine has already been initialized on this page. Calling Alpine.start() more than once can cause problems.");
703
+ $caa9439642c6336c$var$started = true;
704
+ if (!document.body) $caa9439642c6336c$var$warn("Unable to initialize. Trying to load Alpine before `<body>` is available. Did you forget to add `defer` in Alpine's `<script>` tag?");
705
+ $caa9439642c6336c$var$dispatch(document, "alpine:init");
706
+ $caa9439642c6336c$var$dispatch(document, "alpine:initializing");
707
+ $caa9439642c6336c$var$startObservingMutations();
708
+ $caa9439642c6336c$var$onElAdded((el)=>$caa9439642c6336c$var$initTree(el, $caa9439642c6336c$var$walk));
709
+ $caa9439642c6336c$var$onElRemoved((el)=>$caa9439642c6336c$var$destroyTree(el));
710
+ $caa9439642c6336c$var$onAttributesAdded((el, attrs)=>{
711
+ $caa9439642c6336c$var$directives(el, attrs).forEach((handle)=>handle());
712
+ });
713
+ let outNestedComponents = (el)=>!$caa9439642c6336c$var$closestRoot(el.parentElement, true);
714
+ Array.from(document.querySelectorAll($caa9439642c6336c$var$allSelectors().join(","))).filter(outNestedComponents).forEach((el)=>{
715
+ $caa9439642c6336c$var$initTree(el);
716
+ });
717
+ $caa9439642c6336c$var$dispatch(document, "alpine:initialized");
718
+ setTimeout(()=>{
719
+ $caa9439642c6336c$var$warnAboutMissingPlugins();
720
+ });
721
+ }
722
+ var $caa9439642c6336c$var$rootSelectorCallbacks = [];
723
+ var $caa9439642c6336c$var$initSelectorCallbacks = [];
724
+ function $caa9439642c6336c$var$rootSelectors() {
725
+ return $caa9439642c6336c$var$rootSelectorCallbacks.map((fn)=>fn());
726
+ }
727
+ function $caa9439642c6336c$var$allSelectors() {
728
+ return $caa9439642c6336c$var$rootSelectorCallbacks.concat($caa9439642c6336c$var$initSelectorCallbacks).map((fn)=>fn());
729
+ }
730
+ function $caa9439642c6336c$var$addRootSelector(selectorCallback) {
731
+ $caa9439642c6336c$var$rootSelectorCallbacks.push(selectorCallback);
732
+ }
733
+ function $caa9439642c6336c$var$addInitSelector(selectorCallback) {
734
+ $caa9439642c6336c$var$initSelectorCallbacks.push(selectorCallback);
735
+ }
736
+ function $caa9439642c6336c$var$closestRoot(el, includeInitSelectors = false) {
737
+ return $caa9439642c6336c$var$findClosest(el, (element)=>{
738
+ const selectors = includeInitSelectors ? $caa9439642c6336c$var$allSelectors() : $caa9439642c6336c$var$rootSelectors();
739
+ if (selectors.some((selector)=>element.matches(selector))) return true;
740
+ });
741
+ }
742
+ function $caa9439642c6336c$var$findClosest(el, callback) {
743
+ if (!el) return;
744
+ if (callback(el)) return el;
745
+ if (el._x_teleportBack) el = el._x_teleportBack;
746
+ if (!el.parentElement) return;
747
+ return $caa9439642c6336c$var$findClosest(el.parentElement, callback);
748
+ }
749
+ function $caa9439642c6336c$var$isRoot(el) {
750
+ return $caa9439642c6336c$var$rootSelectors().some((selector)=>el.matches(selector));
751
+ }
752
+ var $caa9439642c6336c$var$initInterceptors2 = [];
753
+ function $caa9439642c6336c$var$interceptInit(callback) {
754
+ $caa9439642c6336c$var$initInterceptors2.push(callback);
755
+ }
756
+ var $caa9439642c6336c$var$markerDispenser = 1;
757
+ function $caa9439642c6336c$var$initTree(el, walker = $caa9439642c6336c$var$walk, intercept = ()=>{}) {
758
+ if ($caa9439642c6336c$var$findClosest(el, (i)=>i._x_ignore)) return;
759
+ $caa9439642c6336c$var$deferHandlingDirectives(()=>{
760
+ walker(el, (el2, skip)=>{
761
+ if (el2._x_marker) return;
762
+ intercept(el2, skip);
763
+ $caa9439642c6336c$var$initInterceptors2.forEach((i)=>i(el2, skip));
764
+ $caa9439642c6336c$var$directives(el2, el2.attributes).forEach((handle)=>handle());
765
+ if (!el2._x_ignore) el2._x_marker = $caa9439642c6336c$var$markerDispenser++;
766
+ el2._x_ignore && skip();
767
+ });
768
+ });
769
+ }
770
+ function $caa9439642c6336c$var$destroyTree(root, walker = $caa9439642c6336c$var$walk) {
771
+ walker(root, (el)=>{
772
+ $caa9439642c6336c$var$cleanupElement(el);
773
+ $caa9439642c6336c$var$cleanupAttributes(el);
774
+ delete el._x_marker;
775
+ });
776
+ }
777
+ function $caa9439642c6336c$var$warnAboutMissingPlugins() {
778
+ let pluginDirectives = [
779
+ [
780
+ "ui",
781
+ "dialog",
782
+ [
783
+ "[x-dialog], [x-popover]"
784
+ ]
785
+ ],
786
+ [
787
+ "anchor",
788
+ "anchor",
789
+ [
790
+ "[x-anchor]"
791
+ ]
792
+ ],
793
+ [
794
+ "sort",
795
+ "sort",
796
+ [
797
+ "[x-sort]"
798
+ ]
799
+ ]
800
+ ];
801
+ pluginDirectives.forEach(([plugin2, directive2, selectors])=>{
802
+ if ($caa9439642c6336c$var$directiveExists(directive2)) return;
803
+ selectors.some((selector)=>{
804
+ if (document.querySelector(selector)) {
805
+ $caa9439642c6336c$var$warn(`found "${selector}", but missing ${plugin2} plugin`);
806
+ return true;
807
+ }
808
+ });
809
+ });
810
+ }
759
811
  // packages/alpinejs/src/nextTick.js
760
812
  var $caa9439642c6336c$var$tickStack = [];
761
813
  var $caa9439642c6336c$var$isHolding = false;
@@ -1000,7 +1052,7 @@ window.Element.prototype._x_toggleAndCascadeWithTransitions = function(el, value
1000
1052
  let carry = Promise.all([
1001
1053
  el2._x_hidePromise,
1002
1054
  ...(el2._x_hideChildren || []).map(hideAfterChildren)
1003
- ]).then(([i])=>i());
1055
+ ]).then(([i])=>i?.());
1004
1056
  delete el2._x_hidePromise;
1005
1057
  delete el2._x_hideChildren;
1006
1058
  return carry;
@@ -1198,13 +1250,13 @@ function $caa9439642c6336c$var$bind(el, name, value, modifiers = []) {
1198
1250
  }
1199
1251
  }
1200
1252
  function $caa9439642c6336c$var$bindInputValue(el, value) {
1201
- if (el.type === "radio") {
1253
+ if ($caa9439642c6336c$var$isRadio(el)) {
1202
1254
  if (el.attributes.value === void 0) el.value = value;
1203
1255
  if (window.fromModel) {
1204
1256
  if (typeof value === "boolean") el.checked = $caa9439642c6336c$var$safeParseBoolean(el.value) === value;
1205
1257
  else el.checked = $caa9439642c6336c$var$checkedAttrLooseCompare(el.value, value);
1206
1258
  }
1207
- } else if (el.type === "checkbox") {
1259
+ } else if ($caa9439642c6336c$var$isCheckbox(el)) {
1208
1260
  if (Number.isInteger(value)) el.value = value;
1209
1261
  else if (!Array.isArray(value) && typeof value !== "boolean" && ![
1210
1262
  null,
@@ -1280,35 +1332,37 @@ function $caa9439642c6336c$var$safeParseBoolean(rawValue) {
1280
1332
  ].includes(rawValue)) return false;
1281
1333
  return rawValue ? Boolean(rawValue) : null;
1282
1334
  }
1335
+ var $caa9439642c6336c$var$booleanAttributes = /* @__PURE__ */ new Set([
1336
+ "allowfullscreen",
1337
+ "async",
1338
+ "autofocus",
1339
+ "autoplay",
1340
+ "checked",
1341
+ "controls",
1342
+ "default",
1343
+ "defer",
1344
+ "disabled",
1345
+ "formnovalidate",
1346
+ "inert",
1347
+ "ismap",
1348
+ "itemscope",
1349
+ "loop",
1350
+ "multiple",
1351
+ "muted",
1352
+ "nomodule",
1353
+ "novalidate",
1354
+ "open",
1355
+ "playsinline",
1356
+ "readonly",
1357
+ "required",
1358
+ "reversed",
1359
+ "selected",
1360
+ "shadowrootclonable",
1361
+ "shadowrootdelegatesfocus",
1362
+ "shadowrootserializable"
1363
+ ]);
1283
1364
  function $caa9439642c6336c$var$isBooleanAttr(attrName) {
1284
- const booleanAttributes = [
1285
- "disabled",
1286
- "checked",
1287
- "required",
1288
- "readonly",
1289
- "hidden",
1290
- "open",
1291
- "selected",
1292
- "autofocus",
1293
- "itemscope",
1294
- "multiple",
1295
- "novalidate",
1296
- "allowfullscreen",
1297
- "allowpaymentrequest",
1298
- "formnovalidate",
1299
- "autoplay",
1300
- "controls",
1301
- "loop",
1302
- "muted",
1303
- "playsinline",
1304
- "default",
1305
- "ismap",
1306
- "reversed",
1307
- "async",
1308
- "defer",
1309
- "nomodule"
1310
- ];
1311
- return booleanAttributes.includes(attrName);
1365
+ return $caa9439642c6336c$var$booleanAttributes.has(attrName);
1312
1366
  }
1313
1367
  function $caa9439642c6336c$var$attributeShouldntBePreservedIfFalsy(name) {
1314
1368
  return ![
@@ -1343,6 +1397,12 @@ function $caa9439642c6336c$var$getAttributeBinding(el, name, fallback) {
1343
1397
  ].includes(attr);
1344
1398
  return attr;
1345
1399
  }
1400
+ function $caa9439642c6336c$var$isCheckbox(el) {
1401
+ return el.type === "checkbox" || el.localName === "ui-checkbox" || el.localName === "ui-switch";
1402
+ }
1403
+ function $caa9439642c6336c$var$isRadio(el) {
1404
+ return el.type === "radio" || el.localName === "ui-radio";
1405
+ }
1346
1406
  // packages/alpinejs/src/utils/debounce.js
1347
1407
  function $caa9439642c6336c$var$debounce(func, wait) {
1348
1408
  var timeout;
@@ -1372,25 +1432,21 @@ function $caa9439642c6336c$var$throttle(func, limit) {
1372
1432
  function $caa9439642c6336c$var$entangle({ get: outerGet, set: outerSet }, { get: innerGet, set: innerSet }) {
1373
1433
  let firstRun = true;
1374
1434
  let outerHash;
1435
+ let innerHash;
1375
1436
  let reference = $caa9439642c6336c$var$effect(()=>{
1376
- const outer = outerGet();
1377
- const inner = innerGet();
1437
+ let outer = outerGet();
1438
+ let inner = innerGet();
1378
1439
  if (firstRun) {
1379
1440
  innerSet($caa9439642c6336c$var$cloneIfObject(outer));
1380
1441
  firstRun = false;
1381
- outerHash = JSON.stringify(outer);
1382
1442
  } else {
1383
- const outerHashLatest = JSON.stringify(outer);
1384
- if (outerHashLatest !== outerHash) {
1385
- innerSet($caa9439642c6336c$var$cloneIfObject(outer));
1386
- outerHash = outerHashLatest;
1387
- } else {
1388
- outerSet($caa9439642c6336c$var$cloneIfObject(inner));
1389
- outerHash = JSON.stringify(inner);
1390
- }
1443
+ let outerHashLatest = JSON.stringify(outer);
1444
+ let innerHashLatest = JSON.stringify(inner);
1445
+ if (outerHashLatest !== outerHash) innerSet($caa9439642c6336c$var$cloneIfObject(outer));
1446
+ else if (outerHashLatest !== innerHashLatest) outerSet($caa9439642c6336c$var$cloneIfObject(inner));
1391
1447
  }
1392
- JSON.stringify(innerGet());
1393
- JSON.stringify(outerGet());
1448
+ outerHash = JSON.stringify(outerGet());
1449
+ innerHash = JSON.stringify(innerGet());
1394
1450
  });
1395
1451
  return ()=>{
1396
1452
  $caa9439642c6336c$var$release(reference);
@@ -1416,8 +1472,8 @@ function $caa9439642c6336c$var$store(name, value) {
1416
1472
  }
1417
1473
  if (value === void 0) return $caa9439642c6336c$var$stores[name];
1418
1474
  $caa9439642c6336c$var$stores[name] = value;
1475
+ $caa9439642c6336c$var$initInterceptors($caa9439642c6336c$var$stores[name]);
1419
1476
  if (typeof value === "object" && value !== null && value.hasOwnProperty("init") && typeof value.init === "function") $caa9439642c6336c$var$stores[name].init();
1420
- $caa9439642c6336c$var$initInterceptors2($caa9439642c6336c$var$stores[name]);
1421
1477
  }
1422
1478
  function $caa9439642c6336c$var$getStores() {
1423
1479
  return $caa9439642c6336c$var$stores;
@@ -1497,7 +1553,7 @@ var $caa9439642c6336c$var$Alpine = {
1497
1553
  get raw () {
1498
1554
  return $caa9439642c6336c$var$raw;
1499
1555
  },
1500
- version: "3.13.3",
1556
+ version: "3.14.9",
1501
1557
  flushAndStopDeferringMutations: $caa9439642c6336c$var$flushAndStopDeferringMutations,
1502
1558
  dontAutoEvaluateFunctions: $caa9439642c6336c$var$dontAutoEvaluateFunctions,
1503
1559
  disableEffectScheduling: $caa9439642c6336c$var$disableEffectScheduling,
@@ -1550,6 +1606,7 @@ var $caa9439642c6336c$var$Alpine = {
1550
1606
  // INTERNAL
1551
1607
  bound: $caa9439642c6336c$var$getBinding,
1552
1608
  $data: $caa9439642c6336c$var$scope,
1609
+ watch: $caa9439642c6336c$var$watch,
1553
1610
  walk: $caa9439642c6336c$var$walk,
1554
1611
  data: $caa9439642c6336c$var$data,
1555
1612
  bind: $caa9439642c6336c$var$bind2
@@ -2125,20 +2182,15 @@ $caa9439642c6336c$var$magic("nextTick", ()=>$caa9439642c6336c$var$nextTick);
2125
2182
  // packages/alpinejs/src/magics/$dispatch.js
2126
2183
  $caa9439642c6336c$var$magic("dispatch", (el)=>$caa9439642c6336c$var$dispatch.bind($caa9439642c6336c$var$dispatch, el));
2127
2184
  // packages/alpinejs/src/magics/$watch.js
2128
- $caa9439642c6336c$var$magic("watch", (el, { evaluateLater: evaluateLater2, effect: effect3 })=>(key, callback)=>{
2185
+ $caa9439642c6336c$var$magic("watch", (el, { evaluateLater: evaluateLater2, cleanup: cleanup2 })=>(key, callback)=>{
2129
2186
  let evaluate2 = evaluateLater2(key);
2130
- let firstTime = true;
2131
- let oldValue;
2132
- let effectReference = effect3(()=>evaluate2((value)=>{
2133
- JSON.stringify(value);
2134
- if (!firstTime) queueMicrotask(()=>{
2135
- callback(value, oldValue);
2136
- oldValue = value;
2137
- });
2138
- else oldValue = value;
2139
- firstTime = false;
2140
- }));
2141
- el._x_effects.delete(effectReference);
2187
+ let getter = ()=>{
2188
+ let value;
2189
+ evaluate2((i)=>value = i);
2190
+ return value;
2191
+ };
2192
+ let unwatch = $caa9439642c6336c$var$watch(getter, callback);
2193
+ cleanup2(unwatch);
2142
2194
  });
2143
2195
  // packages/alpinejs/src/magics/$store.js
2144
2196
  $caa9439642c6336c$var$magic("store", $caa9439642c6336c$var$getStores);
@@ -2154,11 +2206,9 @@ $caa9439642c6336c$var$magic("refs", (el)=>{
2154
2206
  });
2155
2207
  function $caa9439642c6336c$var$getArrayOfRefObject(el) {
2156
2208
  let refObjects = [];
2157
- let currentEl = el;
2158
- while(currentEl){
2159
- if (currentEl._x_refs) refObjects.push(currentEl._x_refs);
2160
- currentEl = currentEl.parentNode;
2161
- }
2209
+ $caa9439642c6336c$var$findClosest(el, (i)=>{
2210
+ if (i._x_refs) refObjects.push(i._x_refs);
2211
+ });
2162
2212
  return refObjects;
2163
2213
  }
2164
2214
  // packages/alpinejs/src/ids.js
@@ -2177,11 +2227,27 @@ function $caa9439642c6336c$var$setIdRoot(el, name) {
2177
2227
  if (!el._x_ids[name]) el._x_ids[name] = $caa9439642c6336c$var$findAndIncrementId(name);
2178
2228
  }
2179
2229
  // packages/alpinejs/src/magics/$id.js
2180
- $caa9439642c6336c$var$magic("id", (el)=>(name, key = null)=>{
2181
- let root = $caa9439642c6336c$var$closestIdRoot(el, name);
2182
- let id = root ? root._x_ids[name] : $caa9439642c6336c$var$findAndIncrementId(name);
2183
- return key ? `${name}-${id}-${key}` : `${name}-${id}`;
2230
+ $caa9439642c6336c$var$magic("id", (el, { cleanup: cleanup2 })=>(name, key = null)=>{
2231
+ let cacheKey = `${name}${key ? `-${key}` : ""}`;
2232
+ return $caa9439642c6336c$var$cacheIdByNameOnElement(el, cacheKey, cleanup2, ()=>{
2233
+ let root = $caa9439642c6336c$var$closestIdRoot(el, name);
2234
+ let id = root ? root._x_ids[name] : $caa9439642c6336c$var$findAndIncrementId(name);
2235
+ return key ? `${name}-${id}-${key}` : `${name}-${id}`;
2236
+ });
2237
+ });
2238
+ $caa9439642c6336c$var$interceptClone((from, to)=>{
2239
+ if (from._x_id) to._x_id = from._x_id;
2240
+ });
2241
+ function $caa9439642c6336c$var$cacheIdByNameOnElement(el, cacheKey, cleanup2, callback) {
2242
+ if (!el._x_id) el._x_id = {};
2243
+ if (el._x_id[cacheKey]) return el._x_id[cacheKey];
2244
+ let output = callback();
2245
+ el._x_id[cacheKey] = output;
2246
+ cleanup2(()=>{
2247
+ delete el._x_id[cacheKey];
2184
2248
  });
2249
+ return output;
2250
+ }
2185
2251
  // packages/alpinejs/src/magics/$el.js
2186
2252
  $caa9439642c6336c$var$magic("el", (el)=>el);
2187
2253
  // packages/alpinejs/src/magics/index.js
@@ -2252,8 +2318,9 @@ $caa9439642c6336c$var$directive("teleport", (el, { modifiers: modifiers, express
2252
2318
  };
2253
2319
  $caa9439642c6336c$var$mutateDom(()=>{
2254
2320
  placeInDom(clone2, target, modifiers);
2255
- $caa9439642c6336c$var$initTree(clone2);
2256
- clone2._x_ignore = true;
2321
+ $caa9439642c6336c$var$skipDuringClone(()=>{
2322
+ $caa9439642c6336c$var$initTree(clone2);
2323
+ })();
2257
2324
  });
2258
2325
  el._x_teleportPutBack = ()=>{
2259
2326
  let target2 = $caa9439642c6336c$var$getTarget(expression);
@@ -2261,7 +2328,10 @@ $caa9439642c6336c$var$directive("teleport", (el, { modifiers: modifiers, express
2261
2328
  placeInDom(el._x_teleport, target2, modifiers);
2262
2329
  });
2263
2330
  };
2264
- cleanup2(()=>clone2.remove());
2331
+ cleanup2(()=>$caa9439642c6336c$var$mutateDom(()=>{
2332
+ clone2.remove();
2333
+ $caa9439642c6336c$var$destroyTree(clone2);
2334
+ }));
2265
2335
  });
2266
2336
  var $caa9439642c6336c$var$teleportContainerDuringClone = document.createElement("div");
2267
2337
  function $caa9439642c6336c$var$getTarget(expression) {
@@ -2316,8 +2386,9 @@ function $caa9439642c6336c$var$on(el, event, modifiers, callback) {
2316
2386
  e.stopPropagation();
2317
2387
  next(e);
2318
2388
  });
2319
- if (modifiers.includes("self")) handler4 = wrapHandler(handler4, (next, e)=>{
2320
- e.target === el && next(e);
2389
+ if (modifiers.includes("once")) handler4 = wrapHandler(handler4, (next, e)=>{
2390
+ next(e);
2391
+ listenerTarget.removeEventListener(event, handler4, options);
2321
2392
  });
2322
2393
  if (modifiers.includes("away") || modifiers.includes("outside")) {
2323
2394
  listenerTarget = document;
@@ -2329,14 +2400,11 @@ function $caa9439642c6336c$var$on(el, event, modifiers, callback) {
2329
2400
  next(e);
2330
2401
  });
2331
2402
  }
2332
- if (modifiers.includes("once")) handler4 = wrapHandler(handler4, (next, e)=>{
2333
- next(e);
2334
- listenerTarget.removeEventListener(event, handler4, options);
2403
+ if (modifiers.includes("self")) handler4 = wrapHandler(handler4, (next, e)=>{
2404
+ e.target === el && next(e);
2335
2405
  });
2336
- handler4 = wrapHandler(handler4, (next, e)=>{
2337
- if ($caa9439642c6336c$var$isKeyEvent(event)) {
2338
- if ($caa9439642c6336c$var$isListeningForASpecificKeyThatHasntBeenPressed(e, modifiers)) return;
2339
- }
2406
+ if ($caa9439642c6336c$var$isKeyEvent(event) || $caa9439642c6336c$var$isClickEvent(event)) handler4 = wrapHandler(handler4, (next, e)=>{
2407
+ if ($caa9439642c6336c$var$isListeningForASpecificKeyThatHasntBeenPressed(e, modifiers)) return;
2340
2408
  next(e);
2341
2409
  });
2342
2410
  listenerTarget.addEventListener(event, handler4, options);
@@ -2366,6 +2434,13 @@ function $caa9439642c6336c$var$isKeyEvent(event) {
2366
2434
  "keyup"
2367
2435
  ].includes(event);
2368
2436
  }
2437
+ function $caa9439642c6336c$var$isClickEvent(event) {
2438
+ return [
2439
+ "contextmenu",
2440
+ "click",
2441
+ "mouse"
2442
+ ].some((i)=>event.includes(i));
2443
+ }
2369
2444
  function $caa9439642c6336c$var$isListeningForASpecificKeyThatHasntBeenPressed(e, modifiers) {
2370
2445
  let keyModifiers = modifiers.filter((i)=>{
2371
2446
  return ![
@@ -2374,7 +2449,11 @@ function $caa9439642c6336c$var$isListeningForASpecificKeyThatHasntBeenPressed(e,
2374
2449
  "prevent",
2375
2450
  "stop",
2376
2451
  "once",
2377
- "capture"
2452
+ "capture",
2453
+ "self",
2454
+ "away",
2455
+ "outside",
2456
+ "passive"
2378
2457
  ].includes(i);
2379
2458
  });
2380
2459
  if (keyModifiers.includes("debounce")) {
@@ -2403,6 +2482,7 @@ function $caa9439642c6336c$var$isListeningForASpecificKeyThatHasntBeenPressed(e,
2403
2482
  return e[`${modifier}Key`];
2404
2483
  });
2405
2484
  if (activelyPressedKeyModifiers.length === selectedSystemKeyModifiers.length) {
2485
+ if ($caa9439642c6336c$var$isClickEvent(e.type)) return false;
2406
2486
  if ($caa9439642c6336c$var$keyToModifiers(e.key).includes(keyModifiers[0])) return false;
2407
2487
  }
2408
2488
  }
@@ -2423,6 +2503,7 @@ function $caa9439642c6336c$var$keyToModifiers(key) {
2423
2503
  "left": "arrow-left",
2424
2504
  "right": "arrow-right",
2425
2505
  "period": ".",
2506
+ "comma": ",",
2426
2507
  "equal": "=",
2427
2508
  "minus": "-",
2428
2509
  "underscore": "_"
@@ -2468,16 +2549,21 @@ $caa9439642c6336c$var$directive("model", (el, { modifiers: modifiers, expression
2468
2549
  });
2469
2550
  if (modifiers.includes("fill")) {
2470
2551
  if ([
2552
+ void 0,
2471
2553
  null,
2472
2554
  ""
2473
- ].includes(getValue()) || el.type === "checkbox" && Array.isArray(getValue())) el.dispatchEvent(new Event(event, {}));
2555
+ ].includes(getValue()) || $caa9439642c6336c$var$isCheckbox(el) && Array.isArray(getValue()) || el.tagName.toLowerCase() === "select" && el.multiple) setValue($caa9439642c6336c$var$getInputValue(el, modifiers, {
2556
+ target: el
2557
+ }, getValue()));
2474
2558
  }
2475
2559
  if (!el._x_removeModelListeners) el._x_removeModelListeners = {};
2476
2560
  el._x_removeModelListeners["default"] = removeListener;
2477
2561
  cleanup2(()=>el._x_removeModelListeners["default"]());
2478
2562
  if (el.form) {
2479
2563
  let removeResetListener = $caa9439642c6336c$var$on(el.form, "reset", [], (e)=>{
2480
- $caa9439642c6336c$var$nextTick(()=>el._x_model && el._x_model.set(el.value));
2564
+ $caa9439642c6336c$var$nextTick(()=>el._x_model && el._x_model.set($caa9439642c6336c$var$getInputValue(el, modifiers, {
2565
+ target: el
2566
+ }, getValue())));
2481
2567
  });
2482
2568
  cleanup2(()=>removeResetListener());
2483
2569
  }
@@ -2504,13 +2590,13 @@ $caa9439642c6336c$var$directive("model", (el, { modifiers: modifiers, expression
2504
2590
  function $caa9439642c6336c$var$getInputValue(el, modifiers, event, currentValue) {
2505
2591
  return $caa9439642c6336c$var$mutateDom(()=>{
2506
2592
  if (event instanceof CustomEvent && event.detail !== void 0) return event.detail !== null && event.detail !== void 0 ? event.detail : event.target.value;
2507
- else if (el.type === "checkbox") {
2593
+ else if ($caa9439642c6336c$var$isCheckbox(el)) {
2508
2594
  if (Array.isArray(currentValue)) {
2509
2595
  let newValue = null;
2510
2596
  if (modifiers.includes("number")) newValue = $caa9439642c6336c$var$safeParseNumber(event.target.value);
2511
2597
  else if (modifiers.includes("boolean")) newValue = $caa9439642c6336c$var$safeParseBoolean(event.target.value);
2512
2598
  else newValue = event.target.value;
2513
- return event.target.checked ? currentValue.concat([
2599
+ return event.target.checked ? currentValue.includes(newValue) ? currentValue : currentValue.concat([
2514
2600
  newValue
2515
2601
  ]) : currentValue.filter((el2)=>!$caa9439642c6336c$var$checkedAttrLooseCompare2(el2, newValue));
2516
2602
  } else return event.target.checked;
@@ -2527,9 +2613,15 @@ function $caa9439642c6336c$var$getInputValue(el, modifiers, event, currentValue)
2527
2613
  return option.value || option.text;
2528
2614
  });
2529
2615
  } else {
2530
- if (modifiers.includes("number")) return $caa9439642c6336c$var$safeParseNumber(event.target.value);
2531
- else if (modifiers.includes("boolean")) return $caa9439642c6336c$var$safeParseBoolean(event.target.value);
2532
- return modifiers.includes("trim") ? event.target.value.trim() : event.target.value;
2616
+ let newValue;
2617
+ if ($caa9439642c6336c$var$isRadio(el)) {
2618
+ if (event.target.checked) newValue = event.target.value;
2619
+ else newValue = currentValue;
2620
+ } else newValue = event.target.value;
2621
+ if (modifiers.includes("number")) return $caa9439642c6336c$var$safeParseNumber(newValue);
2622
+ else if (modifiers.includes("boolean")) return $caa9439642c6336c$var$safeParseBoolean(newValue);
2623
+ else if (modifiers.includes("trim")) return newValue.trim();
2624
+ else return newValue;
2533
2625
  }
2534
2626
  });
2535
2627
  }
@@ -2581,7 +2673,7 @@ $caa9439642c6336c$var$directive("html", (el, { expression: expression }, { effec
2581
2673
  });
2582
2674
  // packages/alpinejs/src/directives/x-bind.js
2583
2675
  $caa9439642c6336c$var$mapAttributes($caa9439642c6336c$var$startingWith(":", $caa9439642c6336c$var$into($caa9439642c6336c$var$prefix("bind:"))));
2584
- var $caa9439642c6336c$var$handler2 = (el, { value: value, modifiers: modifiers, expression: expression, original: original }, { effect: effect3 })=>{
2676
+ var $caa9439642c6336c$var$handler2 = (el, { value: value, modifiers: modifiers, expression: expression, original: original }, { effect: effect3, cleanup: cleanup2 })=>{
2585
2677
  if (!value) {
2586
2678
  let bindingProviders = {};
2587
2679
  $caa9439642c6336c$var$injectBindingProviders(bindingProviders);
@@ -2600,6 +2692,10 @@ var $caa9439642c6336c$var$handler2 = (el, { value: value, modifiers: modifiers,
2600
2692
  if (result === void 0 && typeof expression === "string" && expression.match(/\./)) result = "";
2601
2693
  $caa9439642c6336c$var$mutateDom(()=>$caa9439642c6336c$var$bind(el, value, result, modifiers));
2602
2694
  }));
2695
+ cleanup2(()=>{
2696
+ el._x_undoAddedClasses && el._x_undoAddedClasses();
2697
+ el._x_undoAddedStyles && el._x_undoAddedStyles();
2698
+ });
2603
2699
  };
2604
2700
  $caa9439642c6336c$var$handler2.inline = (el, { value: value, modifiers: modifiers, expression: expression })=>{
2605
2701
  if (!value) return;
@@ -2628,7 +2724,7 @@ $caa9439642c6336c$var$directive("data", (el, { expression: expression }, { clean
2628
2724
  if (data2 === void 0 || data2 === true) data2 = {};
2629
2725
  $caa9439642c6336c$var$injectMagics(data2, el);
2630
2726
  let reactiveData = $caa9439642c6336c$var$reactive(data2);
2631
- $caa9439642c6336c$var$initInterceptors2(reactiveData);
2727
+ $caa9439642c6336c$var$initInterceptors(reactiveData);
2632
2728
  let undo = $caa9439642c6336c$var$addScopeToNode(el, reactiveData);
2633
2729
  reactiveData["init"] && $caa9439642c6336c$var$evaluate(el, reactiveData["init"]);
2634
2730
  cleanup2(()=>{
@@ -2694,7 +2790,10 @@ $caa9439642c6336c$var$directive("for", (el, { expression: expression }, { effect
2694
2790
  el._x_lookup = {};
2695
2791
  effect3(()=>$caa9439642c6336c$var$loop(el, iteratorNames, evaluateItems, evaluateKey));
2696
2792
  cleanup2(()=>{
2697
- Object.values(el._x_lookup).forEach((el2)=>el2.remove());
2793
+ Object.values(el._x_lookup).forEach((el2)=>$caa9439642c6336c$var$mutateDom(()=>{
2794
+ $caa9439642c6336c$var$destroyTree(el2);
2795
+ el2.remove();
2796
+ }));
2698
2797
  delete el._x_prevKeys;
2699
2798
  delete el._x_lookup;
2700
2799
  });
@@ -2711,7 +2810,10 @@ function $caa9439642c6336c$var$loop(el, iteratorNames, evaluateItems, evaluateKe
2711
2810
  let keys = [];
2712
2811
  if (isObject2(items)) items = Object.entries(items).map(([key, value])=>{
2713
2812
  let scope2 = $caa9439642c6336c$var$getIterationScopeVariables(iteratorNames, value, key, items);
2714
- evaluateKey((value2)=>keys.push(value2), {
2813
+ evaluateKey((value2)=>{
2814
+ if (keys.includes(value2)) $caa9439642c6336c$var$warn("Duplicate key on x-for", el);
2815
+ keys.push(value2);
2816
+ }, {
2715
2817
  scope: {
2716
2818
  index: key,
2717
2819
  ...scope2
@@ -2721,7 +2823,10 @@ function $caa9439642c6336c$var$loop(el, iteratorNames, evaluateItems, evaluateKe
2721
2823
  });
2722
2824
  else for(let i = 0; i < items.length; i++){
2723
2825
  let scope2 = $caa9439642c6336c$var$getIterationScopeVariables(iteratorNames, items[i], i, items);
2724
- evaluateKey((value)=>keys.push(value), {
2826
+ evaluateKey((value)=>{
2827
+ if (keys.includes(value)) $caa9439642c6336c$var$warn("Duplicate key on x-for", el);
2828
+ keys.push(value);
2829
+ }, {
2725
2830
  scope: {
2726
2831
  index: i,
2727
2832
  ...scope2
@@ -2762,9 +2867,11 @@ function $caa9439642c6336c$var$loop(el, iteratorNames, evaluateItems, evaluateKe
2762
2867
  }
2763
2868
  for(let i = 0; i < removes.length; i++){
2764
2869
  let key = removes[i];
2765
- if (!!lookup[key]._x_effects) lookup[key]._x_effects.forEach($caa9439642c6336c$var$dequeueJob);
2766
- lookup[key].remove();
2767
- lookup[key] = null;
2870
+ if (!(key in lookup)) continue;
2871
+ $caa9439642c6336c$var$mutateDom(()=>{
2872
+ $caa9439642c6336c$var$destroyTree(lookup[key]);
2873
+ lookup[key].remove();
2874
+ });
2768
2875
  delete lookup[key];
2769
2876
  }
2770
2877
  for(let i = 0; i < moves.length; i++){
@@ -2773,7 +2880,7 @@ function $caa9439642c6336c$var$loop(el, iteratorNames, evaluateItems, evaluateKe
2773
2880
  let elForSpot = lookup[keyForSpot];
2774
2881
  let marker = document.createElement("div");
2775
2882
  $caa9439642c6336c$var$mutateDom(()=>{
2776
- if (!elForSpot) $caa9439642c6336c$var$warn(`x-for ":key" is undefined or invalid`, templateEl);
2883
+ if (!elForSpot) $caa9439642c6336c$var$warn(`x-for ":key" is undefined or invalid`, templateEl, keyForSpot, lookup);
2777
2884
  elForSpot.after(marker);
2778
2885
  elInSpot.after(elForSpot);
2779
2886
  elForSpot._x_currentIfEl && elForSpot.after(elForSpot._x_currentIfEl);
@@ -2799,7 +2906,7 @@ function $caa9439642c6336c$var$loop(el, iteratorNames, evaluateItems, evaluateKe
2799
2906
  };
2800
2907
  $caa9439642c6336c$var$mutateDom(()=>{
2801
2908
  lastEl.after(clone2);
2802
- $caa9439642c6336c$var$initTree(clone2);
2909
+ $caa9439642c6336c$var$skipDuringClone(()=>$caa9439642c6336c$var$initTree(clone2))();
2803
2910
  });
2804
2911
  if (typeof key === "object") $caa9439642c6336c$var$warn("x-for key cannot be an object, it must be a string or an integer", templateEl);
2805
2912
  lookup[key] = clone2;
@@ -2864,14 +2971,14 @@ $caa9439642c6336c$var$directive("if", (el, { expression: expression }, { effect:
2864
2971
  $caa9439642c6336c$var$addScopeToNode(clone2, {}, el);
2865
2972
  $caa9439642c6336c$var$mutateDom(()=>{
2866
2973
  el.after(clone2);
2867
- $caa9439642c6336c$var$initTree(clone2);
2974
+ $caa9439642c6336c$var$skipDuringClone(()=>$caa9439642c6336c$var$initTree(clone2))();
2868
2975
  });
2869
2976
  el._x_currentIfEl = clone2;
2870
2977
  el._x_undoIf = ()=>{
2871
- $caa9439642c6336c$var$walk(clone2, (node)=>{
2872
- if (!!node._x_effects) node._x_effects.forEach($caa9439642c6336c$var$dequeueJob);
2978
+ $caa9439642c6336c$var$mutateDom(()=>{
2979
+ $caa9439642c6336c$var$destroyTree(clone2);
2980
+ clone2.remove();
2873
2981
  });
2874
- clone2.remove();
2875
2982
  delete el._x_currentIfEl;
2876
2983
  };
2877
2984
  return clone2;
@@ -2891,6 +2998,9 @@ $caa9439642c6336c$var$directive("id", (el, { expression: expression }, { evaluat
2891
2998
  let names = evaluate2(expression);
2892
2999
  names.forEach((name)=>$caa9439642c6336c$var$setIdRoot(el, name));
2893
3000
  });
3001
+ $caa9439642c6336c$var$interceptClone((from, to)=>{
3002
+ if (from._x_ids) to._x_ids = from._x_ids;
3003
+ });
2894
3004
  // packages/alpinejs/src/directives/x-on.js
2895
3005
  $caa9439642c6336c$var$mapAttributes($caa9439642c6336c$var$startingWith("@", $caa9439642c6336c$var$into($caa9439642c6336c$var$prefix("on:"))));
2896
3006
  $caa9439642c6336c$var$directive("on", $caa9439642c6336c$var$skipDuringClone((el, { value: value, modifiers: modifiers, expression: expression }, { cleanup: cleanup2 })=>{
@@ -2927,13 +3037,13 @@ $caa9439642c6336c$var$alpine_default.setReactivityEngine({
2927
3037
  release: $caa9439642c6336c$var$stop,
2928
3038
  raw: $caa9439642c6336c$var$toRaw
2929
3039
  });
2930
- var $caa9439642c6336c$var$src_default = $caa9439642c6336c$var$alpine_default;
3040
+ var $caa9439642c6336c$export$b7ee041e4ad2afec = $caa9439642c6336c$var$alpine_default;
2931
3041
  // packages/alpinejs/builds/module.js
2932
- var $caa9439642c6336c$export$2e2bcd8739ae039 = $caa9439642c6336c$var$src_default;
3042
+ var $caa9439642c6336c$export$2e2bcd8739ae039 = $caa9439642c6336c$export$b7ee041e4ad2afec;
2933
3043
 
2934
3044
 
2935
3045
  // packages/morph/src/morph.js
2936
- function $512e3a9270ec7803$export$2e5e8c41f5d4e7c7(from, toHtml, options) {
3046
+ function $512e3a9270ec7803$var$morph(from, toHtml, options) {
2937
3047
  $512e3a9270ec7803$var$monkeyPatchDomSetAttributeToAllowAtSymbols();
2938
3048
  let fromEl;
2939
3049
  let toEl;
@@ -2953,8 +3063,12 @@ function $512e3a9270ec7803$export$2e5e8c41f5d4e7c7(from, toHtml, options) {
2953
3063
  function patch(from2, to) {
2954
3064
  if (differentElementNamesTypesOrKeys(from2, to)) return swapElements(from2, to);
2955
3065
  let updateChildrenOnly = false;
2956
- if ($512e3a9270ec7803$var$shouldSkip(updating, from2, to, ()=>updateChildrenOnly = true)) return;
2957
- if (from2.nodeType === 1 && window.Alpine) window.Alpine.cloneNode(from2, to);
3066
+ let skipChildren = false;
3067
+ if ($512e3a9270ec7803$var$shouldSkipChildren(updating, ()=>skipChildren = true, from2, to, ()=>updateChildrenOnly = true)) return;
3068
+ if (from2.nodeType === 1 && window.Alpine) {
3069
+ window.Alpine.cloneNode(from2, to);
3070
+ if (from2._x_teleport && to._x_teleport) patch(from2._x_teleport, to._x_teleport);
3071
+ }
2958
3072
  if ($512e3a9270ec7803$var$textOrComment(to)) {
2959
3073
  patchNodeValue(from2, to);
2960
3074
  updated(from2, to);
@@ -2962,7 +3076,7 @@ function $512e3a9270ec7803$export$2e5e8c41f5d4e7c7(from, toHtml, options) {
2962
3076
  }
2963
3077
  if (!updateChildrenOnly) patchAttributes(from2, to);
2964
3078
  updated(from2, to);
2965
- patchChildren(from2, to);
3079
+ if (!skipChildren) patchChildren(from2, to);
2966
3080
  }
2967
3081
  function differentElementNamesTypesOrKeys(from2, to) {
2968
3082
  return from2.nodeType != to.nodeType || from2.nodeName != to.nodeName || getKey(from2) != getKey(to);
@@ -2996,8 +3110,6 @@ function $512e3a9270ec7803$export$2e5e8c41f5d4e7c7(from, toHtml, options) {
2996
3110
  }
2997
3111
  }
2998
3112
  function patchChildren(from2, to) {
2999
- if (from2._x_teleport) from2 = from2._x_teleport;
3000
- if (to._x_teleport) to = to._x_teleport;
3001
3113
  let fromKeys = keyToMap(from2.children);
3002
3114
  let fromKeyHoldovers = {};
3003
3115
  let currentTo = $512e3a9270ec7803$var$getFirstNode(to);
@@ -3011,6 +3123,7 @@ function $512e3a9270ec7803$export$2e5e8c41f5d4e7c7(from, toHtml, options) {
3011
3123
  let holdover = fromKeyHoldovers[toKey];
3012
3124
  from2.appendChild(holdover);
3013
3125
  currentFrom = holdover;
3126
+ fromKey = getKey(currentFrom);
3014
3127
  } else {
3015
3128
  if (!$512e3a9270ec7803$var$shouldSkip(adding, currentTo)) {
3016
3129
  let clone = currentTo.cloneNode(true);
@@ -3080,6 +3193,7 @@ function $512e3a9270ec7803$export$2e5e8c41f5d4e7c7(from, toHtml, options) {
3080
3193
  if (fromKeys[toKey]) {
3081
3194
  currentFrom.replaceWith(fromKeys[toKey]);
3082
3195
  currentFrom = fromKeys[toKey];
3196
+ fromKey = getKey(currentFrom);
3083
3197
  }
3084
3198
  }
3085
3199
  if (toKey && fromKey) {
@@ -3088,6 +3202,7 @@ function $512e3a9270ec7803$export$2e5e8c41f5d4e7c7(from, toHtml, options) {
3088
3202
  fromKeyHoldovers[fromKey] = currentFrom;
3089
3203
  currentFrom.replaceWith(fromKeyNode);
3090
3204
  currentFrom = fromKeyNode;
3205
+ fromKey = getKey(currentFrom);
3091
3206
  } else {
3092
3207
  fromKeyHoldovers[fromKey] = currentFrom;
3093
3208
  currentFrom = addNodeBefore(from2, currentTo, currentFrom);
@@ -3146,13 +3261,18 @@ function $512e3a9270ec7803$export$2e5e8c41f5d4e7c7(from, toHtml, options) {
3146
3261
  toEl = void 0;
3147
3262
  return from;
3148
3263
  }
3149
- $512e3a9270ec7803$export$2e5e8c41f5d4e7c7.step = ()=>{};
3150
- $512e3a9270ec7803$export$2e5e8c41f5d4e7c7.log = ()=>{};
3264
+ $512e3a9270ec7803$var$morph.step = ()=>{};
3265
+ $512e3a9270ec7803$var$morph.log = ()=>{};
3151
3266
  function $512e3a9270ec7803$var$shouldSkip(hook, ...args) {
3152
3267
  let skip = false;
3153
3268
  hook(...args, ()=>skip = true);
3154
3269
  return skip;
3155
3270
  }
3271
+ function $512e3a9270ec7803$var$shouldSkipChildren(hook, skipChildren, ...args) {
3272
+ let skip = false;
3273
+ hook(...args, ()=>skip = true, skipChildren);
3274
+ return skip;
3275
+ }
3156
3276
  var $512e3a9270ec7803$var$patched = false;
3157
3277
  function $512e3a9270ec7803$var$createElement(html) {
3158
3278
  const template = document.createElement("template");
@@ -3219,15 +3339,16 @@ function $512e3a9270ec7803$var$monkeyPatchDomSetAttributeToAllowAtSymbols() {
3219
3339
  function $512e3a9270ec7803$var$seedingMatchingId(to, from) {
3220
3340
  let fromId = from && from._x_bindings && from._x_bindings.id;
3221
3341
  if (!fromId) return;
3342
+ if (!to.setAttribute) return;
3222
3343
  to.setAttribute("id", fromId);
3223
3344
  to.id = fromId;
3224
3345
  }
3225
3346
  // packages/morph/src/index.js
3226
- function $512e3a9270ec7803$var$src_default(Alpine) {
3227
- Alpine.morph = $512e3a9270ec7803$export$2e5e8c41f5d4e7c7;
3347
+ function $512e3a9270ec7803$export$2e5e8c41f5d4e7c7(Alpine) {
3348
+ Alpine.morph = $512e3a9270ec7803$var$morph;
3228
3349
  }
3229
3350
  // packages/morph/builds/module.js
3230
- var $512e3a9270ec7803$export$2e2bcd8739ae039 = $512e3a9270ec7803$var$src_default;
3351
+ var $512e3a9270ec7803$export$2e2bcd8739ae039 = $512e3a9270ec7803$export$2e5e8c41f5d4e7c7;
3231
3352
 
3232
3353
 
3233
3354
  // packages/persist/src/index.js
@@ -3284,7 +3405,9 @@ function $a5acee56471cec18$var$storageHas(key, storage) {
3284
3405
  return storage.getItem(key) !== null;
3285
3406
  }
3286
3407
  function $a5acee56471cec18$var$storageGet(key, storage) {
3287
- return JSON.parse(storage.getItem(key, storage));
3408
+ let value = storage.getItem(key, storage);
3409
+ if (value === void 0) return;
3410
+ return JSON.parse(value);
3288
3411
  }
3289
3412
  function $a5acee56471cec18$var$storageSet(key, value, storage) {
3290
3413
  storage.setItem(key, JSON.stringify(value));
@@ -4930,7 +5053,7 @@ var $69a8ec8dbeef3157$var$require_tippy_cjs = $69a8ec8dbeef3157$var$__commonJS((
4930
5053
  return value.replace(spacesAndTabs, " ").replace(lineStartWithSpaces, "").trim();
4931
5054
  }
4932
5055
  function getDevMessage(message) {
4933
- return clean("\n %ctippy.js\n\n %c" + clean(message) + "\n\n %c\u{1F477}\u200D This is a development-only message. It will be removed in production.\n ");
5056
+ return clean("\n %ctippy.js\n\n %c" + clean(message) + "\n\n %c\uD83D\uDC77\u200D This is a development-only message. It will be removed in production.\n ");
4934
5057
  }
4935
5058
  function getFormattedMessage(message) {
4936
5059
  return [
@@ -6553,9 +6676,15 @@ function $69a8ec8dbeef3157$var$Tooltip(Alpine) {
6553
6676
  }, timeout || 2e3);
6554
6677
  };
6555
6678
  });
6556
- Alpine.directive("tooltip", (el, { modifiers: modifiers, expression: expression }, { evaluateLater: evaluateLater, effect: effect })=>{
6679
+ Alpine.directive("tooltip", (el, { modifiers: modifiers, expression: expression }, { evaluateLater: evaluateLater, effect: effect, cleanup: cleanup })=>{
6557
6680
  const config = modifiers.length > 0 ? $69a8ec8dbeef3157$var$buildConfigFromModifiers(modifiers) : {};
6558
6681
  if (!el.__x_tippy) el.__x_tippy = (0, $69a8ec8dbeef3157$var$import_tippy2.default)(el, config);
6682
+ cleanup(()=>{
6683
+ if (el.__x_tippy) {
6684
+ el.__x_tippy.destroy();
6685
+ delete el.__x_tippy;
6686
+ }
6687
+ });
6559
6688
  const enableTooltip = ()=>el.__x_tippy.enable();
6560
6689
  const disableTooltip = ()=>el.__x_tippy.disable();
6561
6690
  const setupTooltip = (content)=>{
@@ -6597,7 +6726,7 @@ var $5267f0d63de538ba$exports = {};
6597
6726
  */ (function(root, definition) {
6598
6727
  "use strict";
6599
6728
  if (typeof define === 'function' && define.amd) define(definition);
6600
- else if (0, $5267f0d63de538ba$exports) $5267f0d63de538ba$exports = definition();
6729
+ else if ($5267f0d63de538ba$exports) $5267f0d63de538ba$exports = definition();
6601
6730
  else root.log = definition();
6602
6731
  })($5267f0d63de538ba$exports, function() {
6603
6732
  "use strict";
@@ -6831,7 +6960,7 @@ var $5267f0d63de538ba$exports = {};
6831
6960
  var $1ffebed09abdb92f$exports = {};
6832
6961
  (function(root, factory) {
6833
6962
  if (typeof define === 'function' && define.amd) define(factory);
6834
- else if (0, $1ffebed09abdb92f$exports) $1ffebed09abdb92f$exports = factory();
6963
+ else if ($1ffebed09abdb92f$exports) $1ffebed09abdb92f$exports = factory();
6835
6964
  else root.prefix = factory(root);
6836
6965
  })($1ffebed09abdb92f$exports, function(root) {
6837
6966
  'use strict';
@@ -8030,7 +8159,17 @@ function $12b7aa006b8a97e1$var$toCamel(s) {
8030
8159
  }
8031
8160
 
8032
8161
 
8033
- var $c9dfaeb25bf110ce$exports = {};
8162
+ var $88dfd91701b4cd8b$exports = {};
8163
+ var $99486586f6691564$exports = {};
8164
+
8165
+ $parcel$defineInteropFlag($99486586f6691564$exports);
8166
+
8167
+ $parcel$export($99486586f6691564$exports, "default", () => $99486586f6691564$export$2e2bcd8739ae039);
8168
+ function $99486586f6691564$export$2e2bcd8739ae039() {
8169
+ return {};
8170
+ }
8171
+
8172
+
8034
8173
  var $cbd28b10fa9798c7$exports = {};
8035
8174
 
8036
8175
  $parcel$defineInteropFlag($cbd28b10fa9798c7$exports);
@@ -11495,13 +11634,14 @@ function $cbd28b10fa9798c7$export$2e2bcd8739ae039() {
11495
11634
  let tooltip = null;
11496
11635
  let dropdown = null;
11497
11636
  return {
11498
- updateAfterNavigate: true,
11499
11637
  init () {
11500
- this.updateAfterNavigate = this.$el.dataset.updateAfterNavigate !== "false";
11501
11638
  if (this.$refs.tooltip) tooltip = (0, $7a759511c361f2bd$export$353372104066311a)(this, {
11502
11639
  target: this.$refs.icon
11503
11640
  });
11504
- if (this.dropdownContent) dropdown = (0, $789b7d27a7c715a6$export$2e2bcd8739ae039)(this.$el, {
11641
+ if (this.dropdownContent) this.initDropdown();
11642
+ },
11643
+ initDropdown () {
11644
+ dropdown = (0, $789b7d27a7c715a6$export$2e2bcd8739ae039)(this.$el, {
11505
11645
  content: this.dropdownContent,
11506
11646
  trigger: "click",
11507
11647
  theme: "menu",
@@ -11529,14 +11669,6 @@ function $cbd28b10fa9798c7$export$2e2bcd8739ae039() {
11529
11669
  hideDropdown () {
11530
11670
  if (dropdown) dropdown.hide();
11531
11671
  },
11532
- updateDropdown () {
11533
- if (dropdown) {
11534
- dropdown.hide();
11535
- if (this.updateAfterNavigate) this.$nextTick(()=>{
11536
- dropdown.setContent(this.dropdownContent);
11537
- });
11538
- }
11539
- },
11540
11672
  startSpin () {
11541
11673
  this._spinning = true;
11542
11674
  },
@@ -11551,13 +11683,36 @@ function $cbd28b10fa9798c7$export$2e2bcd8739ae039() {
11551
11683
  }
11552
11684
 
11553
11685
 
11554
- var $99486586f6691564$exports = {};
11686
+ var $e398acaded942bbe$exports = {};
11555
11687
 
11556
- $parcel$defineInteropFlag($99486586f6691564$exports);
11688
+ $parcel$defineInteropFlag($e398acaded942bbe$exports);
11557
11689
 
11558
- $parcel$export($99486586f6691564$exports, "default", () => $99486586f6691564$export$2e2bcd8739ae039);
11559
- function $99486586f6691564$export$2e2bcd8739ae039() {
11560
- return {};
11690
+ $parcel$export($e398acaded942bbe$exports, "default", () => $e398acaded942bbe$export$2e2bcd8739ae039);
11691
+
11692
+ function $e398acaded942bbe$export$2e2bcd8739ae039(targetSelector) {
11693
+ return {
11694
+ width: 0,
11695
+ height: 0,
11696
+ resizing: false,
11697
+ target: null,
11698
+ init () {
11699
+ this.target = document.querySelector(targetSelector);
11700
+ if (this.target) {
11701
+ this.width = Math.round(this.target.clientWidth);
11702
+ this.height = Math.round(this.target.clientHeight);
11703
+ this.createObserver();
11704
+ }
11705
+ },
11706
+ createObserver () {
11707
+ if (this.target) this.observer = (0, $7ecd1fc3a6b35e5c$export$a2214cc2adb2dc44)(this.target, ({ width: width, height: height })=>{
11708
+ this.width = width;
11709
+ this.height = height;
11710
+ });
11711
+ },
11712
+ tearDown () {
11713
+ if (this.observer) this.observer.disconnect();
11714
+ }
11715
+ };
11561
11716
  }
11562
11717
 
11563
11718
 
@@ -11617,39 +11772,6 @@ function $47a1c62621be0c54$export$2e2bcd8739ae039() {
11617
11772
  }
11618
11773
 
11619
11774
 
11620
- var $e398acaded942bbe$exports = {};
11621
-
11622
- $parcel$defineInteropFlag($e398acaded942bbe$exports);
11623
-
11624
- $parcel$export($e398acaded942bbe$exports, "default", () => $e398acaded942bbe$export$2e2bcd8739ae039);
11625
-
11626
- function $e398acaded942bbe$export$2e2bcd8739ae039(targetSelector) {
11627
- return {
11628
- width: 0,
11629
- height: 0,
11630
- resizing: false,
11631
- target: null,
11632
- init () {
11633
- this.target = document.querySelector(targetSelector);
11634
- if (this.target) {
11635
- this.width = Math.round(this.target.clientWidth);
11636
- this.height = Math.round(this.target.clientHeight);
11637
- this.createObserver();
11638
- }
11639
- },
11640
- createObserver () {
11641
- if (this.target) this.observer = (0, $7ecd1fc3a6b35e5c$export$a2214cc2adb2dc44)(this.target, ({ width: width, height: height })=>{
11642
- this.width = width;
11643
- this.height = height;
11644
- });
11645
- },
11646
- tearDown () {
11647
- if (this.observer) this.observer.disconnect();
11648
- }
11649
- };
11650
- }
11651
-
11652
-
11653
11775
  var $216ef7001f59f21d$exports = {};
11654
11776
 
11655
11777
  $parcel$defineInteropFlag($216ef7001f59f21d$exports);
@@ -12526,11 +12648,11 @@ function $6d64716f0b34fdf4$export$2e2bcd8739ae039(store) {
12526
12648
  }
12527
12649
 
12528
12650
 
12529
- $c9dfaeb25bf110ce$exports = {
12530
- "button": $cbd28b10fa9798c7$exports,
12651
+ $88dfd91701b4cd8b$exports = {
12531
12652
  "code": $99486586f6691564$exports,
12532
- "copy_button": $47a1c62621be0c54$exports,
12653
+ "button": $cbd28b10fa9798c7$exports,
12533
12654
  "dimensions_display": $e398acaded942bbe$exports,
12655
+ "copy_button": $47a1c62621be0c54$exports,
12534
12656
  "embed_code_dropdown": $216ef7001f59f21d$exports,
12535
12657
  "filter": $e9904a14dabf652d$exports,
12536
12658
  "nav": $d92d9d5253f84566$exports,
@@ -12541,14 +12663,14 @@ $c9dfaeb25bf110ce$exports = {
12541
12663
  };
12542
12664
 
12543
12665
 
12544
- var $6178ee12f80cbf68$exports = {};
12666
+ var $5d1c9207cb730903$exports = {};
12545
12667
  var $6a9b69d9cc7f810f$exports = {};
12546
12668
 
12547
12669
  $parcel$defineInteropFlag($6a9b69d9cc7f810f$exports);
12548
12670
 
12549
12671
  $parcel$export($6a9b69d9cc7f810f$exports, "default", () => $6a9b69d9cc7f810f$export$2e2bcd8739ae039);
12550
12672
  var $cdfeaa1e0e8d642c$exports = {};
12551
- (function(global, factory) {
12673
+ /*! js-cookie v3.0.5 | MIT */ (function(global, factory) {
12552
12674
  $cdfeaa1e0e8d642c$exports = factory();
12553
12675
  })($cdfeaa1e0e8d642c$exports, function() {
12554
12676
  'use strict';
@@ -12670,14 +12792,26 @@ var $ef5e88eaa61efd95$exports = {};
12670
12792
  * File: iframeResizer.js
12671
12793
  * Desc: Force iframes to size to content.
12672
12794
  * Requires: iframeResizer.contentWindow.js to be loaded into the target frame.
12673
- * Doc: https://github.com/davidjbradshaw/iframe-resizer
12674
- * Author: David J. Bradshaw - dave@bradshaw.net
12675
- * Contributor: Jure Mav - jure.mav@gmail.com
12676
- * Contributor: Reed Dadoune - reed@dadoune.com
12677
- */ // eslint-disable-next-line sonarjs/cognitive-complexity, no-shadow-restricted-names
12795
+ * Doc: https://iframe-resizer.com
12796
+ * Author: David J. Bradshaw - info@iframe-resizer.com
12797
+ */ console.info(`
12798
+ IFRAME-RESIZER
12799
+
12800
+ Iframe-Resizer 5 is now available via the following two packages:
12801
+
12802
+ * @iframe-resizer/parent
12803
+ * @iframe-resizer/child
12804
+
12805
+ Additionally their are also new versions of iframe-resizer for React, Vue, and jQuery.
12806
+
12807
+ Version 5 of iframe-resizer has been extensively rewritten to use modern browser APIs, which has enabled significantly better performance and greater accuracy in the detection of content resizing events.
12808
+
12809
+ Please see https://iframe-resizer.com/upgrade for more details.
12810
+ `);
12678
12811
  (function(undefined) {
12679
12812
  if (typeof window === 'undefined') return; // don't run for server side render
12680
- var count = 0, logEnabled = false, hiddenCheckEnabled = false, msgHeader = 'message', msgHeaderLen = msgHeader.length, msgId = '[iFrameSizer]', msgIdLen = msgId.length, pagePosition = null, requestAnimationFrame = window.requestAnimationFrame, resetRequiredMethods = Object.freeze({
12813
+ // var VERSION = '4.3.11'
12814
+ var count = 0, destroyObserver, logEnabled = false, hiddenCheckEnabled = false, msgHeader = 'message', msgHeaderLen = msgHeader.length, msgId = '[iFrameSizer]', msgIdLen = msgId.length, pagePosition = null, requestAnimationFrame = window.requestAnimationFrame, resetRequiredMethods = Object.freeze({
12681
12815
  max: 1,
12682
12816
  scroll: 1,
12683
12817
  bodyScroll: 1,
@@ -12694,6 +12828,7 @@ var $ef5e88eaa61efd95$exports = {};
12694
12828
  heightCalculationMethod: 'bodyOffset',
12695
12829
  id: 'iFrameResizer',
12696
12830
  interval: 32,
12831
+ license: '1jqr0si6pnt',
12697
12832
  log: false,
12698
12833
  maxHeight: Infinity,
12699
12834
  maxWidth: Infinity,
@@ -13111,6 +13246,10 @@ var $ef5e88eaa61efd95$exports = {};
13111
13246
  chkEvent(iframeId, 'onClosed', iframeId);
13112
13247
  log(iframeId, '--');
13113
13248
  removeIframeListeners(iframe);
13249
+ if (destroyObserver) {
13250
+ destroyObserver.disconnect();
13251
+ destroyObserver = null;
13252
+ }
13114
13253
  }
13115
13254
  function getPagePosition(iframeId) {
13116
13255
  if (null === pagePosition) {
@@ -13308,7 +13447,7 @@ var $ef5e88eaa61efd95$exports = {};
13308
13447
  checkReset();
13309
13448
  }
13310
13449
  function createDestroyObserver(MutationObserver) {
13311
- if (!iframe.parentNode) return;
13450
+ if (!iframe.parentNode) return null;
13312
13451
  var destroyObserver = new MutationObserver(function(mutations) {
13313
13452
  mutations.forEach(function(mutation) {
13314
13453
  var removedNodes = Array.prototype.slice.call(mutation.removedNodes) // Transform NodeList into an Array
@@ -13321,9 +13460,10 @@ var $ef5e88eaa61efd95$exports = {};
13321
13460
  destroyObserver.observe(iframe.parentNode, {
13322
13461
  childList: true
13323
13462
  });
13463
+ return destroyObserver;
13324
13464
  }
13325
13465
  var MutationObserver = getMutationObserver();
13326
- if (MutationObserver) createDestroyObserver(MutationObserver);
13466
+ if (MutationObserver) destroyObserver = createDestroyObserver(MutationObserver);
13327
13467
  addEventListener(iframe, 'load', iFrameLoaded);
13328
13468
  trigger('init', msg, iframe, undefined, true);
13329
13469
  }
@@ -13552,6 +13692,38 @@ function $c299e36fa9e271bc$export$2e2bcd8739ae039(id, embedStore) {
13552
13692
  }
13553
13693
 
13554
13694
 
13695
+ var $1a7a7298eec5b755$exports = {};
13696
+
13697
+ $parcel$defineInteropFlag($1a7a7298eec5b755$exports);
13698
+
13699
+ $parcel$export($1a7a7298eec5b755$exports, "default", () => $1a7a7298eec5b755$export$2e2bcd8739ae039);
13700
+
13701
+ function $1a7a7298eec5b755$export$2e2bcd8739ae039() {
13702
+ return {
13703
+ narrow: false,
13704
+ init () {
13705
+ (0, $7ecd1fc3a6b35e5c$export$a2214cc2adb2dc44)(this.$el, ({ width: width })=>{
13706
+ this.narrow = width < 500;
13707
+ });
13708
+ }
13709
+ };
13710
+ }
13711
+
13712
+
13713
+ var $e773f8ef556b41ff$exports = {};
13714
+
13715
+ $parcel$defineInteropFlag($e773f8ef556b41ff$exports);
13716
+
13717
+ $parcel$export($e773f8ef556b41ff$exports, "default", () => $e773f8ef556b41ff$export$2e2bcd8739ae039);
13718
+ function $e773f8ef556b41ff$export$2e2bcd8739ae039() {
13719
+ return {
13720
+ get isNarrowLayout () {
13721
+ return this.narrow || false;
13722
+ }
13723
+ };
13724
+ }
13725
+
13726
+
13555
13727
  var $9b24cbeb3a465447$exports = {};
13556
13728
 
13557
13729
  $parcel$defineInteropFlag($9b24cbeb3a465447$exports);
@@ -13609,51 +13781,19 @@ function $9b24cbeb3a465447$export$2e2bcd8739ae039({ id: id, matchers: matchers }
13609
13781
  }
13610
13782
 
13611
13783
 
13612
- var $1a7a7298eec5b755$exports = {};
13613
-
13614
- $parcel$defineInteropFlag($1a7a7298eec5b755$exports);
13615
-
13616
- $parcel$export($1a7a7298eec5b755$exports, "default", () => $1a7a7298eec5b755$export$2e2bcd8739ae039);
13617
-
13618
- function $1a7a7298eec5b755$export$2e2bcd8739ae039() {
13619
- return {
13620
- narrow: false,
13621
- init () {
13622
- (0, $7ecd1fc3a6b35e5c$export$a2214cc2adb2dc44)(this.$el, ({ width: width })=>{
13623
- this.narrow = width < 500;
13624
- });
13625
- }
13626
- };
13627
- }
13628
-
13629
-
13630
- var $e773f8ef556b41ff$exports = {};
13631
-
13632
- $parcel$defineInteropFlag($e773f8ef556b41ff$exports);
13633
-
13634
- $parcel$export($e773f8ef556b41ff$exports, "default", () => $e773f8ef556b41ff$export$2e2bcd8739ae039);
13635
- function $e773f8ef556b41ff$export$2e2bcd8739ae039() {
13636
- return {
13637
- get isNarrowLayout () {
13638
- return this.narrow || false;
13639
- }
13640
- };
13641
- }
13642
-
13643
-
13644
- $6178ee12f80cbf68$exports = {
13784
+ $5d1c9207cb730903$exports = {
13645
13785
  "display_options": {
13646
13786
  "field": $6a9b69d9cc7f810f$exports
13647
13787
  },
13648
13788
  "embed": {
13649
13789
  "inspector": $c299e36fa9e271bc$exports
13650
13790
  },
13651
- "nav": {
13652
- "item": $9b24cbeb3a465447$exports
13653
- },
13654
13791
  "params": {
13655
13792
  "editor": $1a7a7298eec5b755$exports,
13656
13793
  "field": $e773f8ef556b41ff$exports
13794
+ },
13795
+ "nav": {
13796
+ "item": $9b24cbeb3a465447$exports
13657
13797
  }
13658
13798
  };
13659
13799
 
@@ -13721,8 +13861,8 @@ const $22969b543678f572$var$prefix = window.APP_NAME;
13721
13861
  // Components
13722
13862
  (0, $caa9439642c6336c$export$2e2bcd8739ae039).data("app", (0, $5792afa4170ed552$export$2e2bcd8739ae039));
13723
13863
  [
13724
- $c9dfaeb25bf110ce$exports,
13725
- $6178ee12f80cbf68$exports,
13864
+ $88dfd91701b4cd8b$exports,
13865
+ $5d1c9207cb730903$exports,
13726
13866
  $d56e5cced44001d2$exports
13727
13867
  ].forEach((scripts)=>{
13728
13868
  const components = (0, $12b7aa006b8a97e1$export$4e811121b221213b)(scripts);