uikit 3.17.8 → 3.17.9-dev.337e68f15

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 (78) hide show
  1. package/CHANGELOG.md +16 -2
  2. package/dist/css/uikit-core-rtl.css +1 -1
  3. package/dist/css/uikit-core-rtl.min.css +1 -1
  4. package/dist/css/uikit-core.css +1 -1
  5. package/dist/css/uikit-core.min.css +1 -1
  6. package/dist/css/uikit-rtl.css +1 -1
  7. package/dist/css/uikit-rtl.min.css +1 -1
  8. package/dist/css/uikit.css +1 -1
  9. package/dist/css/uikit.min.css +1 -1
  10. package/dist/js/components/countdown.js +1 -1
  11. package/dist/js/components/countdown.min.js +1 -1
  12. package/dist/js/components/filter.js +2 -2
  13. package/dist/js/components/filter.min.js +1 -1
  14. package/dist/js/components/lightbox-panel.js +15 -7
  15. package/dist/js/components/lightbox-panel.min.js +1 -1
  16. package/dist/js/components/lightbox.js +15 -7
  17. package/dist/js/components/lightbox.min.js +1 -1
  18. package/dist/js/components/notification.js +2 -2
  19. package/dist/js/components/notification.min.js +1 -1
  20. package/dist/js/components/parallax.js +22 -26
  21. package/dist/js/components/parallax.min.js +1 -1
  22. package/dist/js/components/slider-parallax.js +22 -26
  23. package/dist/js/components/slider-parallax.min.js +1 -1
  24. package/dist/js/components/slider.js +12 -4
  25. package/dist/js/components/slider.min.js +1 -1
  26. package/dist/js/components/slideshow-parallax.js +22 -26
  27. package/dist/js/components/slideshow-parallax.min.js +1 -1
  28. package/dist/js/components/slideshow.js +12 -4
  29. package/dist/js/components/slideshow.min.js +1 -1
  30. package/dist/js/components/sortable.js +4 -4
  31. package/dist/js/components/sortable.min.js +1 -1
  32. package/dist/js/components/tooltip.js +47 -31
  33. package/dist/js/components/tooltip.min.js +1 -1
  34. package/dist/js/components/upload.js +1 -1
  35. package/dist/js/components/upload.min.js +1 -1
  36. package/dist/js/uikit-core.js +74 -71
  37. package/dist/js/uikit-core.min.js +1 -1
  38. package/dist/js/uikit-icons.js +1 -1
  39. package/dist/js/uikit-icons.min.js +1 -1
  40. package/dist/js/uikit.js +104 -107
  41. package/dist/js/uikit.min.js +1 -1
  42. package/package.json +12 -12
  43. package/src/js/api/component.js +2 -2
  44. package/src/js/api/events.js +1 -6
  45. package/src/js/api/instance.js +6 -3
  46. package/src/js/api/observables.js +2 -2
  47. package/src/js/api/options.js +15 -14
  48. package/src/js/api/props.js +32 -18
  49. package/src/js/components/filter.js +1 -2
  50. package/src/js/components/notification.js +1 -2
  51. package/src/js/components/sortable.js +4 -5
  52. package/src/js/components/tooltip.js +30 -35
  53. package/src/js/core/accordion.js +1 -2
  54. package/src/js/core/drop.js +23 -20
  55. package/src/js/core/dropnav.js +2 -3
  56. package/src/js/core/form-custom.js +5 -5
  57. package/src/js/core/icon.js +5 -6
  58. package/src/js/core/navbar.js +1 -2
  59. package/src/js/core/overflow-auto.js +3 -3
  60. package/src/js/core/scroll.js +1 -2
  61. package/src/js/core/scrollspy-nav.js +1 -2
  62. package/src/js/core/sticky.js +2 -5
  63. package/src/js/core/switcher.js +10 -12
  64. package/src/js/core/tab.js +2 -2
  65. package/src/js/core/toggle.js +3 -5
  66. package/src/js/mixin/animate.js +7 -7
  67. package/src/js/mixin/internal/animate-fade.js +2 -2
  68. package/src/js/mixin/modal.js +4 -6
  69. package/src/js/mixin/slider-drag.js +1 -2
  70. package/src/js/mixin/slider-nav.js +7 -8
  71. package/src/js/mixin/togglable.js +8 -8
  72. package/src/js/util/dimensions.js +4 -4
  73. package/src/js/util/event.js +6 -7
  74. package/src/js/util/lang.js +11 -11
  75. package/src/js/util/position.js +1 -2
  76. package/src/js/util/selector.js +2 -2
  77. package/src/js/util/style.js +2 -2
  78. package/src/js/util/viewport.js +20 -16
@@ -1,4 +1,4 @@
1
- /*! UIkit 3.17.8 | https://www.getuikit.com | (c) 2014 - 2023 YOOtheme | MIT License */
1
+ /*! UIkit 3.17.9-dev.337e68f15 | https://www.getuikit.com | (c) 2014 - 2023 YOOtheme | MIT License */
2
2
 
3
3
  (function (global, factory) {
4
4
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
@@ -189,7 +189,7 @@
189
189
  }
190
190
  function memoize(fn) {
191
191
  const cache = /* @__PURE__ */ Object.create(null);
192
- return (key) => cache[key] || (cache[key] = fn(key));
192
+ return (key, ...args) => cache[key] || (cache[key] = fn(key, ...args));
193
193
  }
194
194
 
195
195
  function attr(element, name, value) {
@@ -386,7 +386,7 @@
386
386
  let ctx = context;
387
387
  if (sel[0] === "!") {
388
388
  const selectors = sel.substr(1).trim().split(" ");
389
- ctx = closest(parent(context), selectors[0]);
389
+ ctx = parent(context).closest(selectors[0]);
390
390
  sel = selectors.slice(1).join(" ").trim();
391
391
  if (!sel.length && split.length === 1) {
392
392
  return ctx;
@@ -502,7 +502,7 @@
502
502
  }
503
503
  function delegate(selector, listener) {
504
504
  return (e) => {
505
- const current = selector[0] === ">" ? findAll(selector, e.currentTarget).reverse().filter((element) => within(e.target, element))[0] : closest(e.target, selector);
505
+ const current = selector[0] === ">" ? findAll(selector, e.currentTarget).reverse().find((element) => element.contains(e.target)) : e.target.closest(selector);
506
506
  if (current) {
507
507
  e.current = current;
508
508
  listener.call(this, e);
@@ -1225,14 +1225,14 @@
1225
1225
  const scroll = element2.scrollTop;
1226
1226
  const duration = getDuration(Math.abs(top));
1227
1227
  const start = Date.now();
1228
- const targetTop = offset(targetEl).top;
1228
+ const targetTop = offset(targetEl).top + scroll;
1229
1229
  let prev = 0;
1230
1230
  let frames = 15;
1231
1231
  (function step() {
1232
1232
  const percent = ease(clamp((Date.now() - start) / duration));
1233
1233
  let diff = 0;
1234
1234
  if (parents2[0] === element2 && scroll + top < maxScroll) {
1235
- diff = offset(targetEl).top - targetTop;
1235
+ diff = offset(targetEl).top + element2.scrollTop - targetTop;
1236
1236
  const coverEl = getCoveringElement(targetEl);
1237
1237
  diff -= coverEl ? offset(coverEl).height : 0;
1238
1238
  }
@@ -1323,11 +1323,16 @@
1323
1323
  }
1324
1324
  function getCoveringElement(target) {
1325
1325
  return target.ownerDocument.elementsFromPoint(offset(target).left, 0).find(
1326
- (el) => !el.contains(target) && (css(el, "position") === "fixed" && !hasHigherZIndex(target, el) || css(el, "position") === "sticky" && within(target, parent(el)))
1326
+ (el) => !el.contains(target) && (hasPosition(el, "fixed") && zIndex(
1327
+ parents(target).reverse().find((parent2) => !parent2.contains(el) && !hasPosition(parent2, "static"))
1328
+ ) < zIndex(el) || hasPosition(el, "sticky") && parent(el).contains(target))
1327
1329
  );
1328
1330
  }
1329
- function hasHigherZIndex(element1, element2) {
1330
- return parent(element1) === parent(element2) && toFloat(css(element1, "zIndex")) > toFloat(css(element2, "zIndex"));
1331
+ function zIndex(element) {
1332
+ return toFloat(css(element, "zIndex"));
1333
+ }
1334
+ function hasPosition(element, position) {
1335
+ return css(element, "position") === position;
1331
1336
  }
1332
1337
  function scrollingElement(element) {
1333
1338
  return toWindow(element).document.scrollingElement;
@@ -1454,7 +1459,7 @@
1454
1459
  return viewport;
1455
1460
  }
1456
1461
  function commonScrollParents(element, target) {
1457
- return overflowParents(target).filter((parent) => within(element, parent));
1462
+ return overflowParents(target).filter((parent) => parent.contains(element));
1458
1463
  }
1459
1464
  function getIntersectionArea(...rects) {
1460
1465
  let area = {};
@@ -1818,11 +1823,7 @@
1818
1823
  function registerEvent(instance, event, key) {
1819
1824
  let { name, el, handler, capture, passive, delegate, filter, self } = isPlainObject(event) ? event : { name: key, handler: event };
1820
1825
  el = isFunction(el) ? el.call(instance, instance) : el || instance.$el;
1821
- if (isArray(el)) {
1822
- el.forEach((el2) => registerEvent(instance, { ...event, el: el2 }, key));
1823
- return;
1824
- }
1825
- if (!el || filter && !filter.call(instance)) {
1826
+ if (!el || isArray(el) && !el.length || filter && !filter.call(instance)) {
1826
1827
  return;
1827
1828
  }
1828
1829
  instance._events.push(
@@ -1989,21 +1990,19 @@
1989
1990
  }
1990
1991
  return type ? type(value) : value;
1991
1992
  }
1993
+ const listRe = /,(?![^(]*\))/;
1992
1994
  function toList(value) {
1993
- return isArray(value) ? value : isString(value) ? value.split(/,(?![^(]*\))/).map((value2) => isNumeric(value2) ? toNumber(value2) : toBoolean(value2.trim())) : [value];
1995
+ return isArray(value) ? value : isString(value) ? value.split(listRe).map((value2) => isNumeric(value2) ? toNumber(value2) : toBoolean(value2.trim())) : [value];
1994
1996
  }
1995
1997
 
1996
1998
  function initProps(instance) {
1997
- const props = getProps(instance.$options);
1998
- for (let key in props) {
1999
- if (!isUndefined(props[key])) {
2000
- instance.$props[key] = props[key];
2001
- }
2002
- }
2003
- const exclude = [instance.$options.computed, instance.$options.methods];
2004
- for (let key in instance.$props) {
2005
- if (key in props && notIn(exclude, key)) {
2006
- instance[key] = instance.$props[key];
1999
+ const { $options, $props } = instance;
2000
+ const props = getProps($options);
2001
+ assign($props, props);
2002
+ const { computed, methods } = $options;
2003
+ for (let key in $props) {
2004
+ if (key in props && (!computed || !hasOwn(computed, key)) && (!methods || !hasOwn(methods, key))) {
2005
+ instance[key] = $props[key];
2007
2006
  }
2008
2007
  }
2009
2008
  }
@@ -2034,17 +2033,18 @@
2034
2033
  }
2035
2034
  return data$1;
2036
2035
  }
2037
- function notIn(options, key) {
2038
- return options.every((arr) => !arr || !hasOwn(arr, key));
2039
- }
2036
+ const getAttributes = memoize((id, props) => {
2037
+ const attributes = Object.keys(props);
2038
+ const filter = attributes.concat(id).map((key) => [hyphenate(key), `data-${hyphenate(key)}`]).flat();
2039
+ return { attributes, filter };
2040
+ });
2040
2041
  function initPropsObserver(instance) {
2041
2042
  const { $options, $props } = instance;
2042
2043
  const { id, props, el } = $options;
2043
2044
  if (!props) {
2044
2045
  return;
2045
2046
  }
2046
- const attributes = Object.keys(props);
2047
- const filter = attributes.map((key) => hyphenate(key)).concat(id);
2047
+ const { attributes, filter } = getAttributes(id, props);
2048
2048
  const observer = new MutationObserver((records) => {
2049
2049
  const data = getProps($options);
2050
2050
  if (records.some(({ attributeName }) => {
@@ -2058,7 +2058,7 @@
2058
2058
  });
2059
2059
  observer.observe(el, {
2060
2060
  attributes: true,
2061
- attributeFilter: filter.concat(filter.map((key) => `data-${key}`))
2061
+ attributeFilter: filter
2062
2062
  });
2063
2063
  registerObserver(instance, observer);
2064
2064
  }
@@ -2150,7 +2150,7 @@
2150
2150
  };
2151
2151
  App.util = util;
2152
2152
  App.options = {};
2153
- App.version = "3.17.8";
2153
+ App.version = "3.17.9-dev.337e68f15";
2154
2154
 
2155
2155
  const PREFIX = "uk-";
2156
2156
  const DATA = "__uikit__";
@@ -2341,7 +2341,7 @@
2341
2341
  const instance = this;
2342
2342
  attachToElement(el, instance);
2343
2343
  instance.$options.el = el;
2344
- if (within(el, document)) {
2344
+ if (document.contains(el)) {
2345
2345
  callConnected(instance);
2346
2346
  }
2347
2347
  };
@@ -2378,14 +2378,16 @@
2378
2378
  $container: Object.getOwnPropertyDescriptor(App, "container")
2379
2379
  });
2380
2380
  }
2381
+ const ids = /* @__PURE__ */ Object.create(null);
2381
2382
  function generateId(instance, el = instance.$el, postfix = "") {
2382
2383
  if (el.id) {
2383
2384
  return el.id;
2384
2385
  }
2385
2386
  let id = `${instance.$options.id}-${instance._uid}${postfix}`;
2386
- if ($(`#${id}`)) {
2387
+ if (ids[id]) {
2387
2388
  id = generateId(instance, el, `${postfix}-2`);
2388
2389
  }
2390
+ ids[id] = true;
2389
2391
  return id;
2390
2392
  }
2391
2393
 
@@ -2723,7 +2725,7 @@
2723
2725
  contents(items) {
2724
2726
  for (const el of items) {
2725
2727
  const isOpen = hasClass(
2726
- this.items.find((item) => within(el, item)),
2728
+ this.items.find((item) => item.contains(el)),
2727
2729
  this.clsOpen
2728
2730
  );
2729
2731
  hide(el, !isOpen);
@@ -3226,7 +3228,7 @@
3226
3228
  },
3227
3229
  handler({ defaultPrevented, current }) {
3228
3230
  const { hash } = current;
3229
- if (!defaultPrevented && hash && isSameSiteAnchor(current) && !within(hash, this.$el)) {
3231
+ if (!defaultPrevented && hash && isSameSiteAnchor(current) && !this.$el.contains($(hash))) {
3230
3232
  this.hide(false);
3231
3233
  }
3232
3234
  }
@@ -3330,7 +3332,7 @@
3330
3332
  name: "hide",
3331
3333
  handler({ target }) {
3332
3334
  if (this.$el !== target) {
3333
- active$1 = active$1 === null && within(target, this.$el) && this.isToggled() ? this : active$1;
3335
+ active$1 = active$1 === null && this.$el.contains(target) && this.isToggled() ? this : active$1;
3334
3336
  return;
3335
3337
  }
3336
3338
  active$1 = this.isActive() ? null : active$1;
@@ -3362,7 +3364,7 @@
3362
3364
  return;
3363
3365
  }
3364
3366
  let prev;
3365
- while (active$1 && prev !== active$1 && !within(this.$el, active$1.$el)) {
3367
+ while (active$1 && prev !== active$1 && !active$1.$el.contains(this.$el)) {
3366
3368
  prev = active$1;
3367
3369
  active$1.hide(false, false);
3368
3370
  }
@@ -3456,7 +3458,7 @@
3456
3458
  return result;
3457
3459
  }
3458
3460
  function getViewport$1(el, target) {
3459
- return offsetViewport(overflowParents(target).find((parent2) => within(el, parent2)));
3461
+ return offsetViewport(overflowParents(target).find((parent2) => parent2.contains(el)));
3460
3462
  }
3461
3463
  function createToggleComponent(drop) {
3462
3464
  const { $el } = drop.$create("toggle", query(drop.toggle, drop.$el), {
@@ -3491,18 +3493,19 @@
3491
3493
  }
3492
3494
  function listenForBackgroundClose$1(drop) {
3493
3495
  return on(document, pointerDown, ({ target }) => {
3494
- if (!within(target, drop.$el)) {
3495
- once(
3496
- document,
3497
- `${pointerUp} ${pointerCancel} scroll`,
3498
- ({ defaultPrevented, type, target: newTarget }) => {
3499
- if (!defaultPrevented && type === pointerUp && target === newTarget && !(drop.targetEl && within(target, drop.targetEl))) {
3500
- drop.hide(false);
3501
- }
3502
- },
3503
- true
3504
- );
3496
+ if (drop.$el.contains(target)) {
3497
+ return;
3505
3498
  }
3499
+ once(
3500
+ document,
3501
+ `${pointerUp} ${pointerCancel} scroll`,
3502
+ ({ defaultPrevented, type, target: newTarget }) => {
3503
+ if (!defaultPrevented && type === pointerUp && target === newTarget && !(drop.targetEl && within(target, drop.targetEl))) {
3504
+ drop.hide(false);
3505
+ }
3506
+ },
3507
+ true
3508
+ );
3506
3509
  });
3507
3510
  }
3508
3511
 
@@ -3559,7 +3562,7 @@
3559
3562
  if (this.dropContainer !== $el) {
3560
3563
  for (const el of $$(`.${clsDrop}`, this.dropContainer)) {
3561
3564
  const target = (_a = this.getDropdown(el)) == null ? void 0 : _a.targetEl;
3562
- if (!includes(dropdowns, el) && target && within(target, this.$el)) {
3565
+ if (!includes(dropdowns, el) && target && this.$el.contains(target)) {
3563
3566
  dropdowns.push(el);
3564
3567
  }
3565
3568
  }
@@ -3599,7 +3602,7 @@
3599
3602
  },
3600
3603
  handler({ current }) {
3601
3604
  const active2 = this.getActive();
3602
- if (active2 && includes(active2.mode, "hover") && active2.targetEl && !within(active2.targetEl, current) && !active2.isDelaying) {
3605
+ if (active2 && includes(active2.mode, "hover") && active2.targetEl && !current.contains(active2.targetEl) && !active2.isDelaying) {
3603
3606
  active2.hide(false);
3604
3607
  }
3605
3608
  }
@@ -3870,7 +3873,7 @@
3870
3873
  {
3871
3874
  name: "reset",
3872
3875
  el() {
3873
- return closest(this.$el, "form");
3876
+ return this.$el.closest("form");
3874
3877
  },
3875
3878
  handler() {
3876
3879
  this.$emit();
@@ -4426,7 +4429,7 @@
4426
4429
  extends: IconComponent,
4427
4430
  beforeConnect() {
4428
4431
  const icon = this.$props.icon;
4429
- this.icon = closest(this.$el, ".uk-nav-primary") ? `${icon}-large` : icon;
4432
+ this.icon = this.$el.closest(".uk-nav-primary") ? `${icon}-large` : icon;
4430
4433
  }
4431
4434
  };
4432
4435
  const Search = {
@@ -4442,7 +4445,7 @@
4442
4445
  const label = this.t("toggle");
4443
4446
  attr(this.$el, "aria-label", label);
4444
4447
  } else {
4445
- const button = closest(this.$el, "a,button");
4448
+ const button = this.$el.closest("a,button");
4446
4449
  if (button) {
4447
4450
  const label = this.t("submit");
4448
4451
  attr(button, "aria-label", label);
@@ -4469,7 +4472,7 @@
4469
4472
  extends: IconComponent,
4470
4473
  mixins: [I18n],
4471
4474
  beforeConnect() {
4472
- const button = closest(this.$el, "a,button");
4475
+ const button = this.$el.closest("a,button");
4473
4476
  attr(button, "role", this.role !== null && isTag(button, "a") ? "button" : this.role);
4474
4477
  const label = this.t("label");
4475
4478
  if (label && !hasAttr(button, "aria-label")) {
@@ -4796,7 +4799,7 @@
4796
4799
  handler(e) {
4797
4800
  const { current, defaultPrevented } = e;
4798
4801
  const { hash } = current;
4799
- if (!defaultPrevented && hash && isSameSiteAnchor(current) && !within(hash, this.$el) && $(hash, document.body)) {
4802
+ if (!defaultPrevented && hash && isSameSiteAnchor(current) && !this.$el.contains($(hash))) {
4800
4803
  this.hide();
4801
4804
  } else if (matches(current, this.selClose)) {
4802
4805
  e.preventDefault();
@@ -4931,14 +4934,14 @@
4931
4934
  }
4932
4935
  function preventBackgroundFocus(modal) {
4933
4936
  return on(document, "focusin", (e) => {
4934
- if (last(active) === modal && !within(e.target, modal.$el)) {
4937
+ if (last(active) === modal && !modal.$el.contains(e.target)) {
4935
4938
  modal.$el.focus();
4936
4939
  }
4937
4940
  });
4938
4941
  }
4939
4942
  function listenForBackgroundClose(modal) {
4940
4943
  return on(document, pointerDown, ({ target }) => {
4941
- if (last(active) !== modal || modal.overlay && !within(target, modal.$el) || within(target, modal.panel)) {
4944
+ if (last(active) !== modal || modal.overlay && !modal.$el.contains(target) || modal.panel.contains(target)) {
4942
4945
  return;
4943
4946
  }
4944
4947
  once(
@@ -5084,7 +5087,7 @@
5084
5087
  dropbarTransparentMode: false
5085
5088
  },
5086
5089
  computed: {
5087
- navbarContainer: (_, $el) => closest($el, ".uk-navbar-container"),
5090
+ navbarContainer: (_, $el) => $el.closest(".uk-navbar-container"),
5088
5091
  dropbarOffset: ({ dropbarTransparentMode }, $el) => dropbarTransparentMode === "behind" ? $el.offsetHeight : 0
5089
5092
  },
5090
5093
  watch: {
@@ -5387,8 +5390,8 @@
5387
5390
  minHeight: 150
5388
5391
  },
5389
5392
  computed: {
5390
- container: ({ selContainer }, $el) => closest($el, selContainer),
5391
- content: ({ selContent }, $el) => closest($el, selContent)
5393
+ container: ({ selContainer }, $el) => $el.closest(selContainer),
5394
+ content: ({ selContent }, $el) => $el.closest(selContent)
5392
5395
  },
5393
5396
  observe: resize({
5394
5397
  target: ({ container, content }) => [container, content]
@@ -5481,7 +5484,7 @@
5481
5484
  return;
5482
5485
  }
5483
5486
  for (const instance of instances) {
5484
- if (within(e.target, instance.$el) && isSameSiteAnchor(instance.$el)) {
5487
+ if (instance.$el.contains(e.target) && isSameSiteAnchor(instance.$el)) {
5485
5488
  e.preventDefault();
5486
5489
  if (window.location.href !== instance.$el.href) {
5487
5490
  window.history.pushState({}, "", instance.$el.href);
@@ -5614,7 +5617,7 @@
5614
5617
  computed: {
5615
5618
  links: (_, $el) => $$('a[href*="#"]', $el).filter((el) => el.hash && isSameSiteAnchor(el)),
5616
5619
  elements({ closest: selector }) {
5617
- return this.links.map((el) => closest(el, selector || "*"));
5620
+ return this.links.map((el) => el.closest(selector || "*"));
5618
5621
  }
5619
5622
  },
5620
5623
  watch: {
@@ -5837,7 +5840,7 @@
5837
5840
  }
5838
5841
  const { placeholder } = this;
5839
5842
  css(placeholder, { height, width, margin });
5840
- if (!within(placeholder, document)) {
5843
+ if (!document.contains(placeholder)) {
5841
5844
  placeholder.hidden = true;
5842
5845
  }
5843
5846
  (sticky ? before : after)(this.$el, placeholder);
@@ -6000,7 +6003,7 @@
6000
6003
  return propOffset + toPx(value, "height", el, true);
6001
6004
  } else {
6002
6005
  const refElement = value === true ? parent(el) : query(value, el);
6003
- return offset(refElement).bottom - (padding && refElement && within(el, refElement) ? toFloat(css(refElement, "paddingBottom")) : 0);
6006
+ return offset(refElement).bottom - (padding && (refElement == null ? void 0 : refElement.contains(el)) ? toFloat(css(refElement, "paddingBottom")) : 0);
6004
6007
  }
6005
6008
  }
6006
6009
  function coerce(value) {
@@ -6164,7 +6167,7 @@
6164
6167
  toggles: ({ toggle }, $el) => $$(toggle, $el),
6165
6168
  children(_, $el) {
6166
6169
  return children($el).filter(
6167
- (child) => this.toggles.some((toggle) => within(toggle, child))
6170
+ (child) => this.toggles.some((toggle) => child.contains(toggle))
6168
6171
  );
6169
6172
  }
6170
6173
  },
@@ -6237,7 +6240,7 @@
6237
6240
  return `[${this.attrItem}],[data-${this.attrItem}]`;
6238
6241
  },
6239
6242
  handler(e) {
6240
- if (closest(e.target, "a,button")) {
6243
+ if (e.target.closest("a,button")) {
6241
6244
  e.preventDefault();
6242
6245
  this.show(data(e.current, this.attrItem));
6243
6246
  }
@@ -6375,7 +6378,7 @@
6375
6378
  pointerDown,
6376
6379
  () => trigger(this.$el, "blur"),
6377
6380
  true,
6378
- (e2) => !within(e2.target, this.$el)
6381
+ (e2) => !this.$el.contains(e2.target)
6379
6382
  );
6380
6383
  if (includes(this.mode, "click")) {
6381
6384
  this._preventClick = true;
@@ -6427,7 +6430,7 @@
6427
6430
  },
6428
6431
  handler(e) {
6429
6432
  let link;
6430
- if (this._preventClick || closest(e.target, 'a[href="#"], a[href=""]') || (link = closest(e.target, "a[href]")) && (!this.isToggled(this.target) || link.hash && matches(this.target, link.hash))) {
6433
+ if (this._preventClick || e.target.closest('a[href="#"], a[href=""]') || (link = e.target.closest("a[href]")) && (!this.isToggled(this.target) || link.hash && matches(this.target, link.hash))) {
6431
6434
  e.preventDefault();
6432
6435
  }
6433
6436
  if (!this._preventClick && includes(this.mode, "click")) {