@ariakit/core 0.1.3 → 0.1.5

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 (90) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/cjs/__chunks/{QYB6XH64.cjs → 27ZAGOYG.cjs} +17 -13
  3. package/cjs/__chunks/6455U47T.cjs +37 -0
  4. package/cjs/__chunks/{ZPOXPO2L.cjs → 6SPJEESB.cjs} +33 -21
  5. package/cjs/__chunks/{2YFRPUZP.cjs → DBHIHK7C.cjs} +6 -6
  6. package/cjs/__chunks/{W5IHD6VG.cjs → EUJ6NNA6.cjs} +56 -43
  7. package/cjs/__chunks/{4DQ3OTE7.cjs → FXEBKN6G.cjs} +22 -17
  8. package/cjs/__chunks/{ZJEEK57E.cjs → HEFJPUYD.cjs} +2 -2
  9. package/cjs/__chunks/LBTLD2RB.cjs +58 -0
  10. package/cjs/__chunks/{QNEPGQLL.cjs → M6ZA7XUP.cjs} +6 -2
  11. package/cjs/__chunks/{HLVPXX7H.cjs → SDBF6KIY.cjs} +107 -107
  12. package/cjs/__chunks/{OFNGELMA.cjs → ZNW4LSWU.cjs} +8 -6
  13. package/cjs/checkbox/checkbox-store.cjs +14 -10
  14. package/cjs/checkbox/checkbox-store.d.ts +7 -0
  15. package/cjs/collection/collection-store.cjs +6 -5
  16. package/cjs/combobox/combobox-store.cjs +49 -48
  17. package/cjs/combobox/combobox-store.d.ts +24 -0
  18. package/cjs/composite/composite-overflow-store.cjs +7 -6
  19. package/cjs/composite/composite-store.cjs +7 -6
  20. package/cjs/composite/composite-store.d.ts +38 -34
  21. package/cjs/dialog/dialog-store.cjs +6 -5
  22. package/cjs/disclosure/disclosure-store.cjs +5 -4
  23. package/cjs/disclosure/disclosure-store.d.ts +36 -6
  24. package/cjs/form/form-store.cjs +38 -35
  25. package/cjs/hovercard/hovercard-store.cjs +8 -7
  26. package/cjs/index.cjs +3 -1
  27. package/cjs/menu/menu-bar-store.cjs +17 -13
  28. package/cjs/menu/menu-store.cjs +41 -43
  29. package/cjs/popover/popover-store.cjs +7 -6
  30. package/cjs/radio/radio-store.cjs +25 -24
  31. package/cjs/select/select-store.cjs +42 -42
  32. package/cjs/select/select-store.d.ts +16 -0
  33. package/cjs/tab/tab-store.cjs +29 -28
  34. package/cjs/tab/tab-store.d.ts +9 -0
  35. package/cjs/toolbar/toolbar-store.cjs +17 -13
  36. package/cjs/tooltip/tooltip-store.cjs +24 -25
  37. package/cjs/tsconfig.build.tsbuildinfo +1 -1
  38. package/cjs/utils/array.cjs +1 -0
  39. package/cjs/utils/dom.cjs +3 -2
  40. package/cjs/utils/events.cjs +14 -9
  41. package/cjs/utils/focus.cjs +24 -14
  42. package/cjs/utils/misc.cjs +3 -2
  43. package/cjs/utils/platform.cjs +4 -3
  44. package/cjs/utils/store.cjs +4 -3
  45. package/esm/__chunks/4BKCJXBM.js +37 -0
  46. package/esm/__chunks/AHZW5LR4.js +58 -0
  47. package/esm/__chunks/{NA5BK7DD.js → BOKMNDR7.js} +22 -10
  48. package/esm/__chunks/{6PEWNRTN.js → CUW3E24J.js} +100 -100
  49. package/esm/__chunks/{WFGVC6LE.js → EWHSN7GO.js} +17 -12
  50. package/esm/__chunks/{4T5RHRE5.js → MNNKHNLW.js} +1 -1
  51. package/esm/__chunks/{UVCATTRC.js → N6JW4ITM.js} +7 -5
  52. package/esm/__chunks/{RMD7SNCC.js → NWU4GBZ6.js} +5 -1
  53. package/esm/__chunks/{X7MJ3FB5.js → R6VHFWTV.js} +49 -36
  54. package/esm/__chunks/{DXA3K2FY.js → TFBCK4JB.js} +1 -1
  55. package/esm/__chunks/{IOAGNCXX.js → ZV2GEGPL.js} +14 -10
  56. package/esm/checkbox/checkbox-store.d.ts +7 -0
  57. package/esm/checkbox/checkbox-store.js +11 -7
  58. package/esm/collection/collection-store.js +5 -4
  59. package/esm/combobox/combobox-store.d.ts +24 -0
  60. package/esm/combobox/combobox-store.js +34 -33
  61. package/esm/composite/composite-overflow-store.js +6 -5
  62. package/esm/composite/composite-store.d.ts +38 -34
  63. package/esm/composite/composite-store.js +6 -5
  64. package/esm/dialog/dialog-store.js +5 -4
  65. package/esm/disclosure/disclosure-store.d.ts +36 -6
  66. package/esm/disclosure/disclosure-store.js +4 -3
  67. package/esm/form/form-store.js +24 -21
  68. package/esm/hovercard/hovercard-store.js +7 -6
  69. package/esm/index.js +2 -0
  70. package/esm/menu/menu-bar-store.js +15 -11
  71. package/esm/menu/menu-store.js +31 -33
  72. package/esm/popover/popover-store.js +6 -5
  73. package/esm/radio/radio-store.js +22 -21
  74. package/esm/select/select-store.d.ts +16 -0
  75. package/esm/select/select-store.js +29 -29
  76. package/esm/tab/tab-store.d.ts +9 -0
  77. package/esm/tab/tab-store.js +23 -22
  78. package/esm/toolbar/toolbar-store.js +15 -11
  79. package/esm/tooltip/tooltip-store.js +20 -21
  80. package/esm/tsconfig.build.tsbuildinfo +1 -1
  81. package/esm/utils/array.js +1 -0
  82. package/esm/utils/dom.js +2 -1
  83. package/esm/utils/events.js +10 -5
  84. package/esm/utils/focus.js +14 -4
  85. package/esm/utils/misc.js +2 -1
  86. package/esm/utils/platform.js +3 -2
  87. package/esm/utils/store.js +3 -2
  88. package/package.json +1 -1
  89. package/cjs/__chunks/DQHU5K4Q.cjs +0 -57
  90. package/esm/__chunks/6HMPWUDT.js +0 -57
@@ -1,14 +1,18 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _2YFRPUZPcjs = require('../__chunks/2YFRPUZP.cjs');
3
+ var _DBHIHK7Ccjs = require('../__chunks/DBHIHK7C.cjs');
4
4
 
5
5
 
6
- var _OFNGELMAcjs = require('../__chunks/OFNGELMA.cjs');
6
+ var _ZNW4LSWUcjs = require('../__chunks/ZNW4LSWU.cjs');
7
+
8
+
9
+
10
+ var _6455U47Tcjs = require('../__chunks/6455U47T.cjs');
7
11
 
8
12
  // src/utils/events.ts
9
13
  function isPortalEvent(event) {
10
14
  return Boolean(
11
- event.currentTarget && !_OFNGELMAcjs.contains.call(void 0, event.currentTarget, event.target)
15
+ event.currentTarget && !_ZNW4LSWUcjs.contains.call(void 0, event.currentTarget, event.target)
12
16
  );
13
17
  }
14
18
  function isSelfTarget(event) {
@@ -18,7 +22,7 @@ function isOpeningInNewTab(event) {
18
22
  const element = event.currentTarget;
19
23
  if (!element)
20
24
  return false;
21
- const isAppleDevice = _2YFRPUZPcjs.isApple.call(void 0, );
25
+ const isAppleDevice = _DBHIHK7Ccjs.isApple.call(void 0, );
22
26
  if (isAppleDevice && !event.metaKey)
23
27
  return false;
24
28
  if (!isAppleDevice && !event.ctrlKey)
@@ -54,14 +58,14 @@ function fireEvent(element, type, eventInit) {
54
58
  function fireBlurEvent(element, eventInit) {
55
59
  const event = new FocusEvent("blur", eventInit);
56
60
  const defaultAllowed = element.dispatchEvent(event);
57
- const bubbleInit = { ...eventInit, bubbles: true };
61
+ const bubbleInit = _6455U47Tcjs.__spreadProps.call(void 0, _6455U47Tcjs.__spreadValues.call(void 0, {}, eventInit), { bubbles: true });
58
62
  element.dispatchEvent(new FocusEvent("focusout", bubbleInit));
59
63
  return defaultAllowed;
60
64
  }
61
65
  function fireFocusEvent(element, eventInit) {
62
66
  const event = new FocusEvent("focus", eventInit);
63
67
  const defaultAllowed = element.dispatchEvent(event);
64
- const bubbleInit = { ...eventInit, bubbles: true };
68
+ const bubbleInit = _6455U47Tcjs.__spreadProps.call(void 0, _6455U47Tcjs.__spreadValues.call(void 0, {}, eventInit), { bubbles: true });
65
69
  element.dispatchEvent(new FocusEvent("focusin", bubbleInit));
66
70
  return defaultAllowed;
67
71
  }
@@ -76,7 +80,7 @@ function fireClickEvent(element, eventInit) {
76
80
  function isFocusEventOutside(event, container) {
77
81
  const containerElement = container || event.currentTarget;
78
82
  const relatedTarget = event.relatedTarget;
79
- return !relatedTarget || !_OFNGELMAcjs.contains.call(void 0, containerElement, relatedTarget);
83
+ return !relatedTarget || !_ZNW4LSWUcjs.contains.call(void 0, containerElement, relatedTarget);
80
84
  }
81
85
  function queueBeforeEvent(element, type, callback) {
82
86
  const raf = requestAnimationFrame(() => {
@@ -94,12 +98,13 @@ function queueBeforeEvent(element, type, callback) {
94
98
  return raf;
95
99
  }
96
100
  function addGlobalEventListener(type, listener, options, scope = window) {
101
+ var _a;
97
102
  try {
98
103
  scope.document.addEventListener(type, listener, options);
99
104
  } catch (e) {
100
105
  }
101
106
  const listeners = [];
102
- for (let i = 0; i < _optionalChain([scope, 'access', _ => _.frames, 'optionalAccess', _2 => _2.length]); i += 1) {
107
+ for (let i = 0; i < ((_a = scope.frames) == null ? void 0 : _a.length); i += 1) {
103
108
  const frameWindow = scope.frames[i];
104
109
  if (frameWindow) {
105
110
  listeners.push(
@@ -1,11 +1,14 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
3
 
4
4
 
5
5
 
6
6
 
7
7
 
8
- var _OFNGELMAcjs = require('../__chunks/OFNGELMA.cjs');
8
+ var _ZNW4LSWUcjs = require('../__chunks/ZNW4LSWU.cjs');
9
+
10
+
11
+ var _6455U47Tcjs = require('../__chunks/6455U47T.cjs');
9
12
 
10
13
  // src/utils/focus.ts
11
14
  var selector = "input:not([type='hidden']):not([disabled]), select:not([disabled]), textarea:not([disabled]), a[href], button:not([disabled]), [tabindex], iframe, object, embed, area[href], audio[controls], video[controls], [contenteditable]:not([contenteditable='false'])";
@@ -14,7 +17,13 @@ function hasNegativeTabIndex(element) {
14
17
  return tabIndex < 0;
15
18
  }
16
19
  function isFocusable(element) {
17
- return _OFNGELMAcjs.matches.call(void 0, element, selector) && _OFNGELMAcjs.isVisible.call(void 0, element);
20
+ if (!_ZNW4LSWUcjs.matches.call(void 0, element, selector))
21
+ return false;
22
+ if (!_ZNW4LSWUcjs.isVisible.call(void 0, element))
23
+ return false;
24
+ if (_ZNW4LSWUcjs.closest.call(void 0, element, "[inert]"))
25
+ return false;
26
+ return true;
18
27
  }
19
28
  function isTabbable(element) {
20
29
  if (!isFocusable(element))
@@ -34,7 +43,7 @@ function isTabbable(element) {
34
43
  return true;
35
44
  if (!("length" in radioGroup))
36
45
  return true;
37
- const activeElement = _OFNGELMAcjs.getActiveElement.call(void 0, element);
46
+ const activeElement = _ZNW4LSWUcjs.getActiveElement.call(void 0, element);
38
47
  if (!activeElement)
39
48
  return true;
40
49
  if (activeElement === element)
@@ -56,7 +65,7 @@ function getAllFocusableIn(container, includeContainer) {
56
65
  }
57
66
  const focusableElements = elements.filter(isFocusable);
58
67
  focusableElements.forEach((element, i) => {
59
- if (_OFNGELMAcjs.isFrame.call(void 0, element) && element.contentDocument) {
68
+ if (_ZNW4LSWUcjs.isFrame.call(void 0, element) && element.contentDocument) {
60
69
  const frameBody = element.contentDocument.body;
61
70
  focusableElements.splice(i, 1, ...getAllFocusableIn(frameBody));
62
71
  }
@@ -82,7 +91,7 @@ function getAllTabbableIn(container, includeContainer, fallbackToFocusable) {
82
91
  tabbableElements.unshift(container);
83
92
  }
84
93
  tabbableElements.forEach((element, i) => {
85
- if (_OFNGELMAcjs.isFrame.call(void 0, element) && element.contentDocument) {
94
+ if (_ZNW4LSWUcjs.isFrame.call(void 0, element) && element.contentDocument) {
86
95
  const frameBody = element.contentDocument.body;
87
96
  const allFrameTabbable = getAllTabbableIn(
88
97
  frameBody,
@@ -123,7 +132,7 @@ function getLastTabbable(fallbackToFocusable) {
123
132
  return getLastTabbableIn(document.body, false, fallbackToFocusable);
124
133
  }
125
134
  function getNextTabbableIn(container, includeContainer, fallbackToFirst, fallbackToFocusable) {
126
- const activeElement = _OFNGELMAcjs.getActiveElement.call(void 0, container);
135
+ const activeElement = _ZNW4LSWUcjs.getActiveElement.call(void 0, container);
127
136
  const allFocusable = getAllFocusableIn(container, includeContainer);
128
137
  const activeIndex = allFocusable.indexOf(activeElement);
129
138
  const nextFocusableElements = allFocusable.slice(activeIndex + 1);
@@ -138,7 +147,7 @@ function getNextTabbable(fallbackToFirst, fallbackToFocusable) {
138
147
  );
139
148
  }
140
149
  function getPreviousTabbableIn(container, includeContainer, fallbackToLast, fallbackToFocusable) {
141
- const activeElement = _OFNGELMAcjs.getActiveElement.call(void 0, container);
150
+ const activeElement = _ZNW4LSWUcjs.getActiveElement.call(void 0, container);
142
151
  const allFocusable = getAllFocusableIn(container, includeContainer).reverse();
143
152
  const activeIndex = allFocusable.indexOf(activeElement);
144
153
  const previousFocusableElements = allFocusable.slice(activeIndex + 1);
@@ -154,12 +163,12 @@ function getPreviousTabbable(fallbackToFirst, fallbackToFocusable) {
154
163
  }
155
164
  function getClosestFocusable(element) {
156
165
  while (element && !isFocusable(element)) {
157
- element = _OFNGELMAcjs.closest.call(void 0, element, selector);
166
+ element = _ZNW4LSWUcjs.closest.call(void 0, element, selector);
158
167
  }
159
168
  return element || null;
160
169
  }
161
170
  function hasFocus(element) {
162
- const activeElement = _OFNGELMAcjs.getActiveElement.call(void 0, element);
171
+ const activeElement = _ZNW4LSWUcjs.getActiveElement.call(void 0, element);
163
172
  if (!activeElement)
164
173
  return false;
165
174
  if (activeElement === element)
@@ -170,10 +179,10 @@ function hasFocus(element) {
170
179
  return activeDescendant === element.id;
171
180
  }
172
181
  function hasFocusWithin(element) {
173
- const activeElement = _OFNGELMAcjs.getActiveElement.call(void 0, element);
182
+ const activeElement = _ZNW4LSWUcjs.getActiveElement.call(void 0, element);
174
183
  if (!activeElement)
175
184
  return false;
176
- if (_OFNGELMAcjs.contains.call(void 0, element, activeElement))
185
+ if (_ZNW4LSWUcjs.contains.call(void 0, element, activeElement))
177
186
  return true;
178
187
  const activeDescendant = activeElement.getAttribute("aria-activedescendant");
179
188
  if (!activeDescendant)
@@ -190,7 +199,8 @@ function focusIfNeeded(element) {
190
199
  }
191
200
  }
192
201
  function disableFocus(element) {
193
- const currentTabindex = _nullishCoalesce(element.getAttribute("tabindex"), () => ( ""));
202
+ var _a;
203
+ const currentTabindex = (_a = element.getAttribute("tabindex")) != null ? _a : "";
194
204
  element.setAttribute("data-tabindex", currentTabindex);
195
205
  element.setAttribute("tabindex", "-1");
196
206
  }
@@ -219,7 +229,7 @@ function focusIntoView(element, options) {
219
229
  element.focus();
220
230
  } else {
221
231
  element.focus({ preventScroll: true });
222
- element.scrollIntoView({ block: "nearest", inline: "nearest", ...options });
232
+ element.scrollIntoView(_6455U47Tcjs.__spreadValues.call(void 0, { block: "nearest", inline: "nearest" }, options));
223
233
  }
224
234
  }
225
235
 
@@ -18,7 +18,8 @@
18
18
 
19
19
 
20
20
 
21
- var _QNEPGQLLcjs = require('../__chunks/QNEPGQLL.cjs');
21
+ var _M6ZA7XUPcjs = require('../__chunks/M6ZA7XUP.cjs');
22
+ require('../__chunks/6455U47T.cjs');
22
23
 
23
24
 
24
25
 
@@ -39,4 +40,4 @@ var _QNEPGQLLcjs = require('../__chunks/QNEPGQLL.cjs');
39
40
 
40
41
 
41
42
 
42
- exports.afterPaint = _QNEPGQLLcjs.afterPaint; exports.applyState = _QNEPGQLLcjs.applyState; exports.beforePaint = _QNEPGQLLcjs.beforePaint; exports.chain = _QNEPGQLLcjs.chain; exports.cx = _QNEPGQLLcjs.cx; exports.defaultValue = _QNEPGQLLcjs.defaultValue; exports.getKeys = _QNEPGQLLcjs.getKeys; exports.hasOwnProperty = _QNEPGQLLcjs.hasOwnProperty; exports.identity = _QNEPGQLLcjs.identity; exports.invariant = _QNEPGQLLcjs.invariant; exports.isEmpty = _QNEPGQLLcjs.isEmpty; exports.isFalsyBooleanCallback = _QNEPGQLLcjs.isFalsyBooleanCallback; exports.isInteger = _QNEPGQLLcjs.isInteger; exports.isObject = _QNEPGQLLcjs.isObject; exports.noop = _QNEPGQLLcjs.noop; exports.normalizeString = _QNEPGQLLcjs.normalizeString; exports.omit = _QNEPGQLLcjs.omit; exports.pick = _QNEPGQLLcjs.pick; exports.shallowEqual = _QNEPGQLLcjs.shallowEqual;
43
+ exports.afterPaint = _M6ZA7XUPcjs.afterPaint; exports.applyState = _M6ZA7XUPcjs.applyState; exports.beforePaint = _M6ZA7XUPcjs.beforePaint; exports.chain = _M6ZA7XUPcjs.chain; exports.cx = _M6ZA7XUPcjs.cx; exports.defaultValue = _M6ZA7XUPcjs.defaultValue; exports.getKeys = _M6ZA7XUPcjs.getKeys; exports.hasOwnProperty = _M6ZA7XUPcjs.hasOwnProperty; exports.identity = _M6ZA7XUPcjs.identity; exports.invariant = _M6ZA7XUPcjs.invariant; exports.isEmpty = _M6ZA7XUPcjs.isEmpty; exports.isFalsyBooleanCallback = _M6ZA7XUPcjs.isFalsyBooleanCallback; exports.isInteger = _M6ZA7XUPcjs.isInteger; exports.isObject = _M6ZA7XUPcjs.isObject; exports.noop = _M6ZA7XUPcjs.noop; exports.normalizeString = _M6ZA7XUPcjs.normalizeString; exports.omit = _M6ZA7XUPcjs.omit; exports.pick = _M6ZA7XUPcjs.pick; exports.shallowEqual = _M6ZA7XUPcjs.shallowEqual;
@@ -4,12 +4,13 @@
4
4
 
5
5
 
6
6
 
7
- var _2YFRPUZPcjs = require('../__chunks/2YFRPUZP.cjs');
8
- require('../__chunks/OFNGELMA.cjs');
7
+ var _DBHIHK7Ccjs = require('../__chunks/DBHIHK7C.cjs');
8
+ require('../__chunks/ZNW4LSWU.cjs');
9
+ require('../__chunks/6455U47T.cjs');
9
10
 
10
11
 
11
12
 
12
13
 
13
14
 
14
15
 
15
- exports.isApple = _2YFRPUZPcjs.isApple; exports.isFirefox = _2YFRPUZPcjs.isFirefox; exports.isMac = _2YFRPUZPcjs.isMac; exports.isSafari = _2YFRPUZPcjs.isSafari; exports.isTouchDevice = _2YFRPUZPcjs.isTouchDevice;
16
+ exports.isApple = _DBHIHK7Ccjs.isApple; exports.isFirefox = _DBHIHK7Ccjs.isFirefox; exports.isMac = _DBHIHK7Ccjs.isMac; exports.isSafari = _DBHIHK7Ccjs.isSafari; exports.isTouchDevice = _DBHIHK7Ccjs.isTouchDevice;
@@ -1,9 +1,10 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
3
 
4
- var _ZPOXPO2Lcjs = require('../__chunks/ZPOXPO2L.cjs');
5
- require('../__chunks/QNEPGQLL.cjs');
4
+ var _6SPJEESBcjs = require('../__chunks/6SPJEESB.cjs');
5
+ require('../__chunks/M6ZA7XUP.cjs');
6
+ require('../__chunks/6455U47T.cjs');
6
7
 
7
8
 
8
9
 
9
- exports.createStore = _ZPOXPO2Lcjs.createStore; exports.mergeStore = _ZPOXPO2Lcjs.mergeStore;
10
+ exports.createStore = _6SPJEESBcjs.createStore; exports.mergeStore = _6SPJEESBcjs.mergeStore;
@@ -0,0 +1,37 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ var __objRest = (source, exclude) => {
21
+ var target = {};
22
+ for (var prop in source)
23
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
24
+ target[prop] = source[prop];
25
+ if (source != null && __getOwnPropSymbols)
26
+ for (var prop of __getOwnPropSymbols(source)) {
27
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
28
+ target[prop] = source[prop];
29
+ }
30
+ return target;
31
+ };
32
+
33
+ export {
34
+ __spreadValues,
35
+ __spreadProps,
36
+ __objRest
37
+ };
@@ -0,0 +1,58 @@
1
+ import {
2
+ createPopoverStore
3
+ } from "./CUW3E24J.js";
4
+ import {
5
+ createStore
6
+ } from "./BOKMNDR7.js";
7
+ import {
8
+ defaultValue
9
+ } from "./NWU4GBZ6.js";
10
+ import {
11
+ __spreadProps,
12
+ __spreadValues
13
+ } from "./4BKCJXBM.js";
14
+
15
+ // src/hovercard/hovercard-store.ts
16
+ function createHovercardStore(props = {}) {
17
+ var _a;
18
+ const syncState = (_a = props.store) == null ? void 0 : _a.getState();
19
+ const timeout = defaultValue(props.timeout, syncState == null ? void 0 : syncState.timeout, 500);
20
+ const popover = createPopoverStore(__spreadProps(__spreadValues({}, props), {
21
+ placement: defaultValue(
22
+ props.placement,
23
+ syncState == null ? void 0 : syncState.placement,
24
+ "bottom"
25
+ )
26
+ }));
27
+ const initialState = __spreadProps(__spreadValues({}, popover.getState()), {
28
+ timeout,
29
+ showTimeout: defaultValue(
30
+ props.showTimeout,
31
+ syncState == null ? void 0 : syncState.showTimeout,
32
+ timeout
33
+ ),
34
+ hideTimeout: defaultValue(
35
+ props.hideTimeout,
36
+ syncState == null ? void 0 : syncState.hideTimeout,
37
+ timeout
38
+ ),
39
+ autoFocusOnShow: defaultValue(syncState == null ? void 0 : syncState.autoFocusOnShow, false)
40
+ });
41
+ const hovercard = createStore(initialState, popover, props.store);
42
+ hovercard.setup(
43
+ () => hovercard.sync(
44
+ (state) => {
45
+ hovercard.setState("showTimeout", (value) => value != null ? value : state.timeout);
46
+ hovercard.setState("hideTimeout", (value) => value != null ? value : state.timeout);
47
+ },
48
+ ["timeout"]
49
+ )
50
+ );
51
+ return __spreadProps(__spreadValues(__spreadValues({}, popover), hovercard), {
52
+ setAutoFocusOnShow: (value) => hovercard.setState("autoFocusOnShow", value)
53
+ });
54
+ }
55
+
56
+ export {
57
+ createHovercardStore
58
+ };
@@ -6,7 +6,11 @@ import {
6
6
  noop,
7
7
  omit,
8
8
  pick
9
- } from "./RMD7SNCC.js";
9
+ } from "./NWU4GBZ6.js";
10
+ import {
11
+ __spreadProps,
12
+ __spreadValues
13
+ } from "./4BKCJXBM.js";
10
14
 
11
15
  // src/utils/store.ts
12
16
  function createStore(initialState, ...stores) {
@@ -34,18 +38,22 @@ function createStore(initialState, ...stores) {
34
38
  const desyncs = getKeys(state).map(
35
39
  (key) => chain(
36
40
  ...stores.map((store) => {
37
- const storeState = store?.getState?.();
41
+ var _a, _b;
42
+ const storeState = (_a = store == null ? void 0 : store.getState) == null ? void 0 : _a.call(store);
38
43
  if (!storeState)
39
44
  return;
40
45
  if (!hasOwnProperty(storeState, key))
41
46
  return;
42
- return store?.sync?.((state2) => setState(key, state2[key]), [key]);
47
+ return (_b = store == null ? void 0 : store.sync) == null ? void 0 : _b.call(store, (state2) => setState(key, state2[key]), [key]);
43
48
  })
44
49
  )
45
50
  );
46
51
  const teardowns = [];
47
52
  setups.forEach((setup2) => teardowns.push(setup2()));
48
- const cleanups = stores.map((store) => store?.init?.());
53
+ const cleanups = stores.map((store) => {
54
+ var _a;
55
+ return (_a = store == null ? void 0 : store.init) == null ? void 0 : _a.call(store);
56
+ });
49
57
  return chain(...desyncs, ...teardowns, ...cleanups, () => {
50
58
  initialized = false;
51
59
  });
@@ -55,7 +63,8 @@ function createStore(initialState, ...stores) {
55
63
  set.add(listener);
56
64
  listenerKeys.set(listener, keys);
57
65
  return () => {
58
- disposables.get(listener)?.();
66
+ var _a;
67
+ (_a = disposables.get(listener)) == null ? void 0 : _a();
59
68
  disposables.delete(listener);
60
69
  listenerKeys.delete(listener);
61
70
  set.delete(listener);
@@ -80,19 +89,21 @@ function createStore(initialState, ...stores) {
80
89
  if (nextValue === state[key])
81
90
  return;
82
91
  stores.forEach((store) => {
83
- store?.setState?.(key, nextValue);
92
+ var _a;
93
+ (_a = store == null ? void 0 : store.setState) == null ? void 0 : _a.call(store, key, nextValue);
84
94
  });
85
95
  const prevState = state;
86
- state = { ...state, [key]: nextValue };
96
+ state = __spreadProps(__spreadValues({}, state), { [key]: nextValue });
87
97
  const thisUpdate = Symbol();
88
98
  lastUpdate = thisUpdate;
89
99
  updating = true;
90
100
  updatedKeys.add(key);
91
101
  const run = (listener, prev, uKeys) => {
102
+ var _a;
92
103
  const keys = listenerKeys.get(listener);
93
104
  const updated = (k) => uKeys ? uKeys.has(k) : k === key;
94
105
  if (!keys || keys.some(updated)) {
95
- disposables.get(listener)?.();
106
+ (_a = disposables.get(listener)) == null ? void 0 : _a();
96
107
  disposables.set(listener, listener(state, prev));
97
108
  }
98
109
  };
@@ -128,10 +139,11 @@ function createStore(initialState, ...stores) {
128
139
  }
129
140
  function mergeStore(...stores) {
130
141
  const initialState = stores.reduce((state, store2) => {
131
- const nextState = store2?.getState?.();
142
+ var _a;
143
+ const nextState = (_a = store2 == null ? void 0 : store2.getState) == null ? void 0 : _a.call(store2);
132
144
  if (!nextState)
133
145
  return state;
134
- return { ...state, ...nextState };
146
+ return __spreadValues(__spreadValues({}, state), nextState);
135
147
  }, {});
136
148
  const store = createStore(initialState, ...stores);
137
149
  return store;