@ariakit/core 0.3.6 → 0.3.8

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 (113) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/cjs/__chunks/{GZDVJEID.cjs → 2LS4JJ4S.cjs} +2 -2
  3. package/cjs/__chunks/{46BH65MC.cjs → 2UK5WUJX.cjs} +15 -7
  4. package/cjs/__chunks/{GXIZMD53.cjs → 3J44Z7YH.cjs} +4 -4
  5. package/cjs/__chunks/{PD7XZBXC.cjs → 5SIVMOID.cjs} +4 -4
  6. package/cjs/__chunks/{7ZUFMSXJ.cjs → EFIT5L4X.cjs} +7 -7
  7. package/cjs/__chunks/{MEHGRTJ3.cjs → GJFZ5ZPP.cjs} +11 -11
  8. package/cjs/__chunks/{6WBY3ZZM.cjs → QAZ4PF7S.cjs} +6 -6
  9. package/cjs/__chunks/{JLC5A6WF.cjs → ZQTYFYRS.cjs} +18 -9
  10. package/cjs/checkbox/checkbox-store.cjs +3 -3
  11. package/cjs/checkbox/checkbox-store.d.cts +9 -9
  12. package/cjs/checkbox/checkbox-store.d.ts +9 -9
  13. package/cjs/collection/collection-store.cjs +3 -3
  14. package/cjs/collection/collection-store.d.cts +18 -12
  15. package/cjs/collection/collection-store.d.ts +18 -12
  16. package/cjs/combobox/combobox-store.cjs +45 -23
  17. package/cjs/combobox/combobox-store.d.cts +66 -23
  18. package/cjs/combobox/combobox-store.d.ts +66 -23
  19. package/cjs/composite/composite-overflow-store.cjs +5 -5
  20. package/cjs/composite/composite-overflow-store.d.cts +13 -7
  21. package/cjs/composite/composite-overflow-store.d.ts +13 -7
  22. package/cjs/composite/composite-store.cjs +4 -4
  23. package/cjs/composite/composite-store.d.cts +24 -16
  24. package/cjs/composite/composite-store.d.ts +24 -16
  25. package/cjs/dialog/dialog-store.cjs +4 -4
  26. package/cjs/dialog/dialog-store.d.cts +12 -6
  27. package/cjs/dialog/dialog-store.d.ts +12 -6
  28. package/cjs/disclosure/disclosure-store.cjs +3 -3
  29. package/cjs/disclosure/disclosure-store.d.cts +6 -2
  30. package/cjs/disclosure/disclosure-store.d.ts +6 -2
  31. package/cjs/form/form-store.cjs +7 -7
  32. package/cjs/form/form-store.d.cts +15 -15
  33. package/cjs/form/form-store.d.ts +15 -15
  34. package/cjs/hovercard/hovercard-store.cjs +6 -6
  35. package/cjs/hovercard/hovercard-store.d.cts +11 -3
  36. package/cjs/hovercard/hovercard-store.d.ts +11 -3
  37. package/cjs/menu/menu-bar-store.cjs +5 -5
  38. package/cjs/menu/menu-bar-store.d.cts +12 -6
  39. package/cjs/menu/menu-bar-store.d.ts +12 -6
  40. package/cjs/menu/menu-store.cjs +18 -18
  41. package/cjs/menu/menu-store.d.cts +8 -8
  42. package/cjs/menu/menu-store.d.ts +8 -8
  43. package/cjs/menubar/menubar-store.cjs +5 -5
  44. package/cjs/menubar/menubar-store.d.cts +1 -1
  45. package/cjs/menubar/menubar-store.d.ts +1 -1
  46. package/cjs/popover/popover-store.cjs +5 -5
  47. package/cjs/popover/popover-store.d.cts +8 -3
  48. package/cjs/popover/popover-store.d.ts +8 -3
  49. package/cjs/radio/radio-store.cjs +5 -5
  50. package/cjs/radio/radio-store.d.cts +5 -3
  51. package/cjs/radio/radio-store.d.ts +5 -3
  52. package/cjs/select/select-store.cjs +18 -18
  53. package/cjs/select/select-store.d.cts +39 -31
  54. package/cjs/select/select-store.d.ts +39 -31
  55. package/cjs/tab/tab-store.cjs +15 -15
  56. package/cjs/tab/tab-store.d.cts +15 -16
  57. package/cjs/tab/tab-store.d.ts +15 -16
  58. package/cjs/toolbar/toolbar-store.cjs +4 -4
  59. package/cjs/toolbar/toolbar-store.d.cts +9 -6
  60. package/cjs/toolbar/toolbar-store.d.ts +9 -6
  61. package/cjs/tooltip/tooltip-store.cjs +7 -7
  62. package/cjs/tooltip/tooltip-store.d.cts +5 -3
  63. package/cjs/tooltip/tooltip-store.d.ts +5 -3
  64. package/cjs/utils/store.cjs +2 -2
  65. package/cjs/utils/store.d.cts +3 -0
  66. package/cjs/utils/store.d.ts +3 -0
  67. package/esm/__chunks/{ANO6WJO4.js → A2AGSVJO.js} +2 -2
  68. package/esm/__chunks/{E7OQVGGY.js → A2J4XZ5T.js} +15 -7
  69. package/esm/__chunks/{OGMLJYDV.js → CTZ2GQIZ.js} +2 -2
  70. package/esm/__chunks/{CCU5UHQ2.js → HMQYEBKF.js} +15 -6
  71. package/esm/__chunks/{WY3EMTH6.js → J6JIOWCS.js} +2 -2
  72. package/esm/__chunks/{CL47ZAPY.js → LT2OYWRD.js} +1 -1
  73. package/esm/__chunks/{DYD4YNLE.js → NKLTHWCR.js} +1 -1
  74. package/esm/__chunks/{BXH3I7ML.js → T3DVYGXI.js} +2 -2
  75. package/esm/checkbox/checkbox-store.d.ts +9 -9
  76. package/esm/checkbox/checkbox-store.js +1 -1
  77. package/esm/collection/collection-store.d.ts +18 -12
  78. package/esm/collection/collection-store.js +2 -2
  79. package/esm/combobox/combobox-store.d.ts +66 -23
  80. package/esm/combobox/combobox-store.js +33 -11
  81. package/esm/composite/composite-overflow-store.d.ts +13 -7
  82. package/esm/composite/composite-overflow-store.js +4 -4
  83. package/esm/composite/composite-store.d.ts +24 -16
  84. package/esm/composite/composite-store.js +3 -3
  85. package/esm/dialog/dialog-store.d.ts +12 -6
  86. package/esm/dialog/dialog-store.js +3 -3
  87. package/esm/disclosure/disclosure-store.d.ts +6 -2
  88. package/esm/disclosure/disclosure-store.js +2 -2
  89. package/esm/form/form-store.d.ts +15 -15
  90. package/esm/form/form-store.js +2 -2
  91. package/esm/hovercard/hovercard-store.d.ts +11 -3
  92. package/esm/hovercard/hovercard-store.js +5 -5
  93. package/esm/menu/menu-bar-store.d.ts +12 -6
  94. package/esm/menu/menu-bar-store.js +4 -4
  95. package/esm/menu/menu-store.d.ts +8 -8
  96. package/esm/menu/menu-store.js +7 -7
  97. package/esm/menubar/menubar-store.d.ts +1 -1
  98. package/esm/menubar/menubar-store.js +4 -4
  99. package/esm/popover/popover-store.d.ts +8 -3
  100. package/esm/popover/popover-store.js +4 -4
  101. package/esm/radio/radio-store.d.ts +5 -3
  102. package/esm/radio/radio-store.js +3 -3
  103. package/esm/select/select-store.d.ts +39 -31
  104. package/esm/select/select-store.js +6 -6
  105. package/esm/tab/tab-store.d.ts +15 -16
  106. package/esm/tab/tab-store.js +3 -3
  107. package/esm/toolbar/toolbar-store.d.ts +9 -6
  108. package/esm/toolbar/toolbar-store.js +3 -3
  109. package/esm/tooltip/tooltip-store.d.ts +5 -3
  110. package/esm/tooltip/tooltip-store.js +5 -5
  111. package/esm/utils/store.d.ts +3 -0
  112. package/esm/utils/store.js +1 -1
  113. package/package.json +1 -1
@@ -2,18 +2,28 @@ import type { CollectionStoreFunctions, CollectionStoreItem, CollectionStoreOpti
2
2
  import type { Store, StoreOptions, StoreProps } from "../utils/store.js";
3
3
  import type { SetState } from "../utils/types.js";
4
4
  type Orientation = "horizontal" | "vertical" | "both";
5
- type Item = CollectionStoreItem & {
6
- rowId?: string;
7
- disabled?: boolean;
8
- children?: string;
9
- };
10
5
  /**
11
6
  * Creates a composite store.
12
7
  */
13
- export declare function createCompositeStore<T extends Item = Item>(props?: CompositeStoreProps<T>): CompositeStore<T>;
8
+ export declare function createCompositeStore<T extends CompositeStoreItem = CompositeStoreItem>(props?: CompositeStoreProps<T>): CompositeStore<T>;
14
9
  export type CompositeStoreOrientation = Orientation;
15
- export type CompositeStoreItem = Item;
16
- export interface CompositeStoreState<T extends Item = Item> extends CollectionStoreState<T> {
10
+ export interface CompositeStoreItem extends CollectionStoreItem {
11
+ /**
12
+ * The row id of the item. This is only used on two-dimensional composites
13
+ * (when using `CompositeRow`).
14
+ */
15
+ rowId?: string;
16
+ /**
17
+ * If enabled, the item will be disabled and users won't be able to focus it
18
+ * using arrow keys.
19
+ */
20
+ disabled?: boolean;
21
+ /**
22
+ * The item children. This can be used for typeahead purposes.
23
+ */
24
+ children?: string;
25
+ }
26
+ export interface CompositeStoreState<T extends CompositeStoreItem = CompositeStoreItem> extends CollectionStoreState<T> {
17
27
  /**
18
28
  * The composite element.
19
29
  */
@@ -25,10 +35,6 @@ export interface CompositeStoreState<T extends Item = Item> extends CollectionSt
25
35
  * tabindex](https://www.w3.org/WAI/ARIA/apg/practices/keyboard-interface/#kbd_roving_tabindex).
26
36
  * DOM focus will remain on the composite element while its items receive
27
37
  * virtual focus.
28
- *
29
- * Live examples:
30
- * - [Multi-selectable
31
- * Combobox](https://ariakit.org/examples/combobox-multiple)
32
38
  * @default false
33
39
  */
34
40
  virtualFocus: boolean;
@@ -121,7 +127,7 @@ export interface CompositeStoreState<T extends Item = Item> extends CollectionSt
121
127
  */
122
128
  activeId: string | null | undefined;
123
129
  }
124
- export interface CompositeStoreFunctions<T extends Item = Item> extends CollectionStoreFunctions<T> {
130
+ export interface CompositeStoreFunctions<T extends CompositeStoreItem = CompositeStoreItem> extends CollectionStoreFunctions<T> {
125
131
  /**
126
132
  * Sets the `baseElement`.
127
133
  */
@@ -192,7 +198,7 @@ export interface CompositeStoreFunctions<T extends Item = Item> extends Collecti
192
198
  */
193
199
  last: () => string | null | undefined;
194
200
  }
195
- export interface CompositeStoreOptions<T extends Item = Item> extends StoreOptions<CompositeStoreState<T>, "virtualFocus" | "orientation" | "rtl" | "focusLoop" | "focusWrap" | "focusShift" | "includesBaseElement" | "activeId">, CollectionStoreOptions<T> {
201
+ export interface CompositeStoreOptions<T extends CompositeStoreItem = CompositeStoreItem> extends CollectionStoreOptions<T>, StoreOptions<CompositeStoreState<T>, "virtualFocus" | "orientation" | "rtl" | "focusLoop" | "focusWrap" | "focusShift" | "includesBaseElement" | "activeId"> {
196
202
  /**
197
203
  * The composite item id that should be active by default when the composite
198
204
  * widget is rendered. If `null`, the composite element itself will have focus
@@ -201,6 +207,8 @@ export interface CompositeStoreOptions<T extends Item = Item> extends StoreOptio
201
207
  */
202
208
  defaultActiveId?: CompositeStoreState<T>["activeId"];
203
209
  }
204
- export type CompositeStoreProps<T extends Item = Item> = CompositeStoreOptions<T> & StoreProps<CompositeStoreState<T>>;
205
- export type CompositeStore<T extends Item = Item> = CompositeStoreFunctions<T> & Store<CompositeStoreState<T>>;
210
+ export interface CompositeStoreProps<T extends CompositeStoreItem = CompositeStoreItem> extends CompositeStoreOptions<T>, StoreProps<CompositeStoreState<T>> {
211
+ }
212
+ export interface CompositeStore<T extends CompositeStoreItem = CompositeStoreItem> extends CompositeStoreFunctions<T>, Store<CompositeStoreState<T>> {
213
+ }
206
214
  export {};
@@ -1,11 +1,11 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
2
2
 
3
3
 
4
- var _GZDVJEIDcjs = require('../__chunks/GZDVJEID.cjs');
5
- require('../__chunks/MEHGRTJ3.cjs');
6
- require('../__chunks/46BH65MC.cjs');
4
+ var _2LS4JJ4Scjs = require('../__chunks/2LS4JJ4S.cjs');
5
+ require('../__chunks/GJFZ5ZPP.cjs');
6
+ require('../__chunks/2UK5WUJX.cjs');
7
7
  require('../__chunks/3UT5FE6K.cjs');
8
8
  require('../__chunks/AV6KTKLE.cjs');
9
9
 
10
10
 
11
- exports.createDialogStore = _GZDVJEIDcjs.createDialogStore;
11
+ exports.createDialogStore = _2LS4JJ4Scjs.createDialogStore;
@@ -1,10 +1,16 @@
1
- import type { DisclosureStore, DisclosureStoreFunctions, DisclosureStoreOptions, DisclosureStoreProps, DisclosureStoreState } from "../disclosure/disclosure-store.js";
1
+ import type { DisclosureStoreFunctions, DisclosureStoreOptions, DisclosureStoreState } from "../disclosure/disclosure-store.js";
2
+ import type { Store, StoreProps } from "../utils/store.js";
2
3
  /**
3
4
  * Creates a dialog store.
4
5
  */
5
6
  export declare function createDialogStore(props?: DialogStoreProps): DialogStore;
6
- export type DialogStoreState = DisclosureStoreState;
7
- export type DialogStoreFunctions = DisclosureStoreFunctions;
8
- export type DialogStoreOptions = DisclosureStoreOptions;
9
- export type DialogStoreProps = DisclosureStoreProps;
10
- export type DialogStore = DisclosureStore;
7
+ export interface DialogStoreState extends DisclosureStoreState {
8
+ }
9
+ export interface DialogStoreFunctions extends DisclosureStoreFunctions {
10
+ }
11
+ export interface DialogStoreOptions extends DisclosureStoreOptions {
12
+ }
13
+ export interface DialogStoreProps extends DialogStoreOptions, StoreProps<DialogStoreState> {
14
+ }
15
+ export interface DialogStore extends DialogStoreFunctions, Store<DialogStoreState> {
16
+ }
@@ -1,10 +1,16 @@
1
- import type { DisclosureStore, DisclosureStoreFunctions, DisclosureStoreOptions, DisclosureStoreProps, DisclosureStoreState } from "../disclosure/disclosure-store.js";
1
+ import type { DisclosureStoreFunctions, DisclosureStoreOptions, DisclosureStoreState } from "../disclosure/disclosure-store.js";
2
+ import type { Store, StoreProps } from "../utils/store.js";
2
3
  /**
3
4
  * Creates a dialog store.
4
5
  */
5
6
  export declare function createDialogStore(props?: DialogStoreProps): DialogStore;
6
- export type DialogStoreState = DisclosureStoreState;
7
- export type DialogStoreFunctions = DisclosureStoreFunctions;
8
- export type DialogStoreOptions = DisclosureStoreOptions;
9
- export type DialogStoreProps = DisclosureStoreProps;
10
- export type DialogStore = DisclosureStore;
7
+ export interface DialogStoreState extends DisclosureStoreState {
8
+ }
9
+ export interface DialogStoreFunctions extends DisclosureStoreFunctions {
10
+ }
11
+ export interface DialogStoreOptions extends DisclosureStoreOptions {
12
+ }
13
+ export interface DialogStoreProps extends DialogStoreOptions, StoreProps<DialogStoreState> {
14
+ }
15
+ export interface DialogStore extends DialogStoreFunctions, Store<DialogStoreState> {
16
+ }
@@ -1,10 +1,10 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
2
2
 
3
3
 
4
- var _MEHGRTJ3cjs = require('../__chunks/MEHGRTJ3.cjs');
5
- require('../__chunks/46BH65MC.cjs');
4
+ var _GJFZ5ZPPcjs = require('../__chunks/GJFZ5ZPP.cjs');
5
+ require('../__chunks/2UK5WUJX.cjs');
6
6
  require('../__chunks/3UT5FE6K.cjs');
7
7
  require('../__chunks/AV6KTKLE.cjs');
8
8
 
9
9
 
10
- exports.createDisclosureStore = _MEHGRTJ3cjs.createDisclosureStore;
10
+ exports.createDisclosureStore = _GJFZ5ZPPcjs.createDisclosureStore;
@@ -36,6 +36,7 @@ export interface DisclosureStoreState {
36
36
  * milliseconds to pass before becoming `false`.
37
37
  *
38
38
  * Live examples:
39
+ * - [Navigation Menubar](https://ariakit.org/examples/menubar-navigation)
39
40
  * - [Animated Combobox](https://ariakit.org/examples/combobox-animated)
40
41
  * - [Animated Dialog](https://ariakit.org/examples/dialog-animated)
41
42
  * - [Animated Select](https://ariakit.org/examples/select-animated)
@@ -73,6 +74,7 @@ export interface DisclosureStoreFunctions {
73
74
  * Sets the `open` state to `true`.
74
75
  *
75
76
  * Live examples:
77
+ * - [Navigation Menubar](https://ariakit.org/examples/menubar-navigation)
76
78
  * - [Textarea with inline
77
79
  * Combobox](https://ariakit.org/examples/combobox-textarea)
78
80
  */
@@ -121,5 +123,7 @@ export interface DisclosureStoreOptions extends StoreOptions<DisclosureStoreStat
121
123
  */
122
124
  disclosure?: DisclosureStore | null;
123
125
  }
124
- export type DisclosureStoreProps = DisclosureStoreOptions & StoreProps<DisclosureStoreState>;
125
- export type DisclosureStore = DisclosureStoreFunctions & Store<DisclosureStoreState>;
126
+ export interface DisclosureStoreProps extends DisclosureStoreOptions, StoreProps<DisclosureStoreState> {
127
+ }
128
+ export interface DisclosureStore extends DisclosureStoreFunctions, Store<DisclosureStoreState> {
129
+ }
@@ -36,6 +36,7 @@ export interface DisclosureStoreState {
36
36
  * milliseconds to pass before becoming `false`.
37
37
  *
38
38
  * Live examples:
39
+ * - [Navigation Menubar](https://ariakit.org/examples/menubar-navigation)
39
40
  * - [Animated Combobox](https://ariakit.org/examples/combobox-animated)
40
41
  * - [Animated Dialog](https://ariakit.org/examples/dialog-animated)
41
42
  * - [Animated Select](https://ariakit.org/examples/select-animated)
@@ -73,6 +74,7 @@ export interface DisclosureStoreFunctions {
73
74
  * Sets the `open` state to `true`.
74
75
  *
75
76
  * Live examples:
77
+ * - [Navigation Menubar](https://ariakit.org/examples/menubar-navigation)
76
78
  * - [Textarea with inline
77
79
  * Combobox](https://ariakit.org/examples/combobox-textarea)
78
80
  */
@@ -121,5 +123,7 @@ export interface DisclosureStoreOptions extends StoreOptions<DisclosureStoreStat
121
123
  */
122
124
  disclosure?: DisclosureStore | null;
123
125
  }
124
- export type DisclosureStoreProps = DisclosureStoreOptions & StoreProps<DisclosureStoreState>;
125
- export type DisclosureStore = DisclosureStoreFunctions & Store<DisclosureStoreState>;
126
+ export interface DisclosureStoreProps extends DisclosureStoreOptions, StoreProps<DisclosureStoreState> {
127
+ }
128
+ export interface DisclosureStore extends DisclosureStoreFunctions, Store<DisclosureStoreState> {
129
+ }
@@ -1,13 +1,13 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
2
2
 
3
3
 
4
- var _JLC5A6WFcjs = require('../__chunks/JLC5A6WF.cjs');
4
+ var _ZQTYFYRScjs = require('../__chunks/ZQTYFYRS.cjs');
5
5
 
6
6
 
7
7
 
8
8
 
9
9
 
10
- var _46BH65MCcjs = require('../__chunks/46BH65MC.cjs');
10
+ var _2UK5WUJXcjs = require('../__chunks/2UK5WUJX.cjs');
11
11
 
12
12
 
13
13
 
@@ -114,9 +114,9 @@ function createNames() {
114
114
  }
115
115
  function createFormStore(props = {}) {
116
116
  var _a;
117
- _46BH65MCcjs.throwOnConflictingProps.call(void 0, props, props.store);
117
+ _2UK5WUJXcjs.throwOnConflictingProps.call(void 0, props, props.store);
118
118
  const syncState = (_a = props.store) == null ? void 0 : _a.getState();
119
- const collection = _JLC5A6WFcjs.createCollectionStore.call(void 0, props);
119
+ const collection = _ZQTYFYRScjs.createCollectionStore.call(void 0, props);
120
120
  const values = _3UT5FE6Kcjs.defaultValue.call(void 0,
121
121
  props.values,
122
122
  syncState == null ? void 0 : syncState.values,
@@ -145,15 +145,15 @@ function createFormStore(props = {}) {
145
145
  submitFailed: _3UT5FE6Kcjs.defaultValue.call(void 0, syncState == null ? void 0 : syncState.submitFailed, 0),
146
146
  valid: !hasMessages(errors)
147
147
  });
148
- const form = _46BH65MCcjs.createStore.call(void 0, initialState, collection, props.store);
148
+ const form = _2UK5WUJXcjs.createStore.call(void 0, initialState, collection, props.store);
149
149
  const syncCallbacks = getStoreCallbacks(props.store);
150
150
  const syncCallbacksState = syncCallbacks == null ? void 0 : syncCallbacks.getState();
151
151
  const callbacksInitialState = {
152
152
  validate: (syncCallbacksState == null ? void 0 : syncCallbacksState.validate) || [],
153
153
  submit: (syncCallbacksState == null ? void 0 : syncCallbacksState.submit) || []
154
154
  };
155
- const callbacks = _46BH65MCcjs.createStore.call(void 0, callbacksInitialState, syncCallbacks);
156
- _46BH65MCcjs.setup.call(void 0, form, () => _46BH65MCcjs.init.call(void 0, callbacks));
155
+ const callbacks = _2UK5WUJXcjs.createStore.call(void 0, callbacksInitialState, syncCallbacks);
156
+ _2UK5WUJXcjs.setup.call(void 0, form, () => _2UK5WUJXcjs.init.call(void 0, callbacks));
157
157
  const validate = async () => {
158
158
  form.setState("validating", true);
159
159
  form.setState("errors", {});
@@ -2,23 +2,21 @@ import type { CollectionStoreFunctions, CollectionStoreItem, CollectionStoreOpti
2
2
  import type { Store, StoreOptions, StoreProps } from "../utils/store.js";
3
3
  import type { AnyObject, PickRequired, SetState, SetStateAction } from "../utils/types.js";
4
4
  import type { DeepMap, DeepPartial, Names, StringLike } from "./types.js";
5
- type Values = AnyObject;
6
5
  type ErrorMessage = string | undefined | null;
7
- type Item = CollectionStoreItem & {
8
- type: "field" | "label" | "description" | "error" | "button";
9
- name: string;
10
- };
11
- export declare function hasMessages(object: Values): boolean;
12
- export declare function get<T>(values: Values, path: StringLike | string[], defaultValue?: T): T;
6
+ export declare function hasMessages(object: FormStoreValues): boolean;
7
+ export declare function get<T>(values: FormStoreValues, path: StringLike | string[], defaultValue?: T): T;
13
8
  /**
14
9
  * Creates a form store.
15
10
  */
16
- export declare function createFormStore<T extends Values = Values>(props: PickRequired<FormStoreProps<T>, "values" | "defaultValues" | "errors" | "defaultErrors" | "touched" | "defaultTouched">): FormStore<T>;
11
+ export declare function createFormStore<T extends FormStoreValues = FormStoreValues>(props: PickRequired<FormStoreProps<T>, "values" | "defaultValues" | "errors" | "defaultErrors" | "touched" | "defaultTouched">): FormStore<T>;
17
12
  export declare function createFormStore(props: FormStoreProps): FormStore;
18
13
  export type FormStoreCallback<T extends FormStoreState = FormStoreState> = (state: T) => void | Promise<void>;
19
- export type FormStoreValues = Values;
20
- export type FormStoreItem = Item;
21
- export interface FormStoreState<T extends Values = Values> extends CollectionStoreState<Item> {
14
+ export type FormStoreValues = AnyObject;
15
+ export interface FormStoreItem extends CollectionStoreItem {
16
+ type: "field" | "label" | "description" | "error" | "button";
17
+ name: string;
18
+ }
19
+ export interface FormStoreState<T extends FormStoreValues = FormStoreValues> extends CollectionStoreState<FormStoreItem> {
22
20
  /**
23
21
  * Form values.
24
22
  * @default {}
@@ -54,7 +52,7 @@ export interface FormStoreState<T extends Values = Values> extends CollectionSto
54
52
  */
55
53
  submitFailed: number;
56
54
  }
57
- export interface FormStoreFunctions<T extends Values = Values> extends CollectionStoreFunctions<Item> {
55
+ export interface FormStoreFunctions<T extends FormStoreValues = FormStoreValues> extends CollectionStoreFunctions<FormStoreItem> {
58
56
  /**
59
57
  * An object containing the names of the form fields for type-safety.
60
58
  * @example
@@ -216,7 +214,7 @@ export interface FormStoreFunctions<T extends Values = Values> extends Collectio
216
214
  */
217
215
  reset: () => void;
218
216
  }
219
- export interface FormStoreOptions<T extends Values = Values> extends StoreOptions<FormStoreState<T>, "values" | "errors" | "touched">, CollectionStoreOptions<Item> {
217
+ export interface FormStoreOptions<T extends FormStoreValues = FormStoreValues> extends CollectionStoreOptions<FormStoreItem>, StoreOptions<FormStoreState<T>, "values" | "errors" | "touched"> {
220
218
  /**
221
219
  * The default values of the form.
222
220
  * @default {}
@@ -231,6 +229,8 @@ export interface FormStoreOptions<T extends Values = Values> extends StoreOption
231
229
  */
232
230
  defaultTouched?: FormStoreState<T>["touched"];
233
231
  }
234
- export type FormStoreProps<T extends Values = Values> = FormStoreOptions<T> & StoreProps<FormStoreState<T>>;
235
- export type FormStore<T extends Values = Values> = FormStoreFunctions<T> & Store<FormStoreState<T>>;
232
+ export interface FormStoreProps<T extends FormStoreValues = FormStoreValues> extends FormStoreOptions<T>, StoreProps<FormStoreState<T>> {
233
+ }
234
+ export interface FormStore<T extends FormStoreValues = FormStoreValues> extends FormStoreFunctions<T>, Store<FormStoreState<T>> {
235
+ }
236
236
  export {};
@@ -2,23 +2,21 @@ import type { CollectionStoreFunctions, CollectionStoreItem, CollectionStoreOpti
2
2
  import type { Store, StoreOptions, StoreProps } from "../utils/store.js";
3
3
  import type { AnyObject, PickRequired, SetState, SetStateAction } from "../utils/types.js";
4
4
  import type { DeepMap, DeepPartial, Names, StringLike } from "./types.js";
5
- type Values = AnyObject;
6
5
  type ErrorMessage = string | undefined | null;
7
- type Item = CollectionStoreItem & {
8
- type: "field" | "label" | "description" | "error" | "button";
9
- name: string;
10
- };
11
- export declare function hasMessages(object: Values): boolean;
12
- export declare function get<T>(values: Values, path: StringLike | string[], defaultValue?: T): T;
6
+ export declare function hasMessages(object: FormStoreValues): boolean;
7
+ export declare function get<T>(values: FormStoreValues, path: StringLike | string[], defaultValue?: T): T;
13
8
  /**
14
9
  * Creates a form store.
15
10
  */
16
- export declare function createFormStore<T extends Values = Values>(props: PickRequired<FormStoreProps<T>, "values" | "defaultValues" | "errors" | "defaultErrors" | "touched" | "defaultTouched">): FormStore<T>;
11
+ export declare function createFormStore<T extends FormStoreValues = FormStoreValues>(props: PickRequired<FormStoreProps<T>, "values" | "defaultValues" | "errors" | "defaultErrors" | "touched" | "defaultTouched">): FormStore<T>;
17
12
  export declare function createFormStore(props: FormStoreProps): FormStore;
18
13
  export type FormStoreCallback<T extends FormStoreState = FormStoreState> = (state: T) => void | Promise<void>;
19
- export type FormStoreValues = Values;
20
- export type FormStoreItem = Item;
21
- export interface FormStoreState<T extends Values = Values> extends CollectionStoreState<Item> {
14
+ export type FormStoreValues = AnyObject;
15
+ export interface FormStoreItem extends CollectionStoreItem {
16
+ type: "field" | "label" | "description" | "error" | "button";
17
+ name: string;
18
+ }
19
+ export interface FormStoreState<T extends FormStoreValues = FormStoreValues> extends CollectionStoreState<FormStoreItem> {
22
20
  /**
23
21
  * Form values.
24
22
  * @default {}
@@ -54,7 +52,7 @@ export interface FormStoreState<T extends Values = Values> extends CollectionSto
54
52
  */
55
53
  submitFailed: number;
56
54
  }
57
- export interface FormStoreFunctions<T extends Values = Values> extends CollectionStoreFunctions<Item> {
55
+ export interface FormStoreFunctions<T extends FormStoreValues = FormStoreValues> extends CollectionStoreFunctions<FormStoreItem> {
58
56
  /**
59
57
  * An object containing the names of the form fields for type-safety.
60
58
  * @example
@@ -216,7 +214,7 @@ export interface FormStoreFunctions<T extends Values = Values> extends Collectio
216
214
  */
217
215
  reset: () => void;
218
216
  }
219
- export interface FormStoreOptions<T extends Values = Values> extends StoreOptions<FormStoreState<T>, "values" | "errors" | "touched">, CollectionStoreOptions<Item> {
217
+ export interface FormStoreOptions<T extends FormStoreValues = FormStoreValues> extends CollectionStoreOptions<FormStoreItem>, StoreOptions<FormStoreState<T>, "values" | "errors" | "touched"> {
220
218
  /**
221
219
  * The default values of the form.
222
220
  * @default {}
@@ -231,6 +229,8 @@ export interface FormStoreOptions<T extends Values = Values> extends StoreOption
231
229
  */
232
230
  defaultTouched?: FormStoreState<T>["touched"];
233
231
  }
234
- export type FormStoreProps<T extends Values = Values> = FormStoreOptions<T> & StoreProps<FormStoreState<T>>;
235
- export type FormStore<T extends Values = Values> = FormStoreFunctions<T> & Store<FormStoreState<T>>;
232
+ export interface FormStoreProps<T extends FormStoreValues = FormStoreValues> extends FormStoreOptions<T>, StoreProps<FormStoreState<T>> {
233
+ }
234
+ export interface FormStore<T extends FormStoreValues = FormStoreValues> extends FormStoreFunctions<T>, Store<FormStoreState<T>> {
235
+ }
236
236
  export {};
@@ -1,13 +1,13 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
2
2
 
3
3
 
4
- var _PD7XZBXCcjs = require('../__chunks/PD7XZBXC.cjs');
5
- require('../__chunks/7ZUFMSXJ.cjs');
6
- require('../__chunks/GZDVJEID.cjs');
7
- require('../__chunks/MEHGRTJ3.cjs');
8
- require('../__chunks/46BH65MC.cjs');
4
+ var _5SIVMOIDcjs = require('../__chunks/5SIVMOID.cjs');
5
+ require('../__chunks/EFIT5L4X.cjs');
6
+ require('../__chunks/2LS4JJ4S.cjs');
7
+ require('../__chunks/GJFZ5ZPP.cjs');
8
+ require('../__chunks/2UK5WUJX.cjs');
9
9
  require('../__chunks/3UT5FE6K.cjs');
10
10
  require('../__chunks/AV6KTKLE.cjs');
11
11
 
12
12
 
13
- exports.createHovercardStore = _PD7XZBXCcjs.createHovercardStore;
13
+ exports.createHovercardStore = _5SIVMOIDcjs.createHovercardStore;
@@ -20,11 +20,17 @@ export interface HovercardStoreState extends PopoverStoreState {
20
20
  /**
21
21
  * The amount of time in milliseconds to wait before **showing** the popover.
22
22
  * It defaults to the value passed to `timeout`.
23
+ *
24
+ * Live examples:
25
+ * - [Navigation Menubar](https://ariakit.org/examples/menubar-navigation)
23
26
  */
24
27
  showTimeout?: number;
25
28
  /**
26
29
  * The amount of time in milliseconds to wait before **hiding** the popover.
27
30
  * It defaults to the value passed to `timeout`.
31
+ *
32
+ * Live examples:
33
+ * - [Navigation Menubar](https://ariakit.org/examples/menubar-navigation)
28
34
  */
29
35
  hideTimeout?: number;
30
36
  /**
@@ -40,7 +46,9 @@ export interface HovercardStoreFunctions extends PopoverStoreFunctions {
40
46
  */
41
47
  setAutoFocusOnShow: SetState<HovercardStoreState["autoFocusOnShow"]>;
42
48
  }
43
- export interface HovercardStoreOptions extends StoreOptions<HovercardStoreState, "placement" | "timeout" | "showTimeout" | "hideTimeout">, PopoverStoreOptions {
49
+ export interface HovercardStoreOptions extends PopoverStoreOptions, StoreOptions<HovercardStoreState, "placement" | "timeout" | "showTimeout" | "hideTimeout"> {
50
+ }
51
+ export interface HovercardStoreProps extends HovercardStoreOptions, StoreProps<HovercardStoreState> {
52
+ }
53
+ export interface HovercardStore extends HovercardStoreFunctions, Store<HovercardStoreState> {
44
54
  }
45
- export type HovercardStoreProps = HovercardStoreOptions & StoreProps<HovercardStoreState>;
46
- export type HovercardStore = HovercardStoreFunctions & Store<HovercardStoreState>;
@@ -20,11 +20,17 @@ export interface HovercardStoreState extends PopoverStoreState {
20
20
  /**
21
21
  * The amount of time in milliseconds to wait before **showing** the popover.
22
22
  * It defaults to the value passed to `timeout`.
23
+ *
24
+ * Live examples:
25
+ * - [Navigation Menubar](https://ariakit.org/examples/menubar-navigation)
23
26
  */
24
27
  showTimeout?: number;
25
28
  /**
26
29
  * The amount of time in milliseconds to wait before **hiding** the popover.
27
30
  * It defaults to the value passed to `timeout`.
31
+ *
32
+ * Live examples:
33
+ * - [Navigation Menubar](https://ariakit.org/examples/menubar-navigation)
28
34
  */
29
35
  hideTimeout?: number;
30
36
  /**
@@ -40,7 +46,9 @@ export interface HovercardStoreFunctions extends PopoverStoreFunctions {
40
46
  */
41
47
  setAutoFocusOnShow: SetState<HovercardStoreState["autoFocusOnShow"]>;
42
48
  }
43
- export interface HovercardStoreOptions extends StoreOptions<HovercardStoreState, "placement" | "timeout" | "showTimeout" | "hideTimeout">, PopoverStoreOptions {
49
+ export interface HovercardStoreOptions extends PopoverStoreOptions, StoreOptions<HovercardStoreState, "placement" | "timeout" | "showTimeout" | "hideTimeout"> {
50
+ }
51
+ export interface HovercardStoreProps extends HovercardStoreOptions, StoreProps<HovercardStoreState> {
52
+ }
53
+ export interface HovercardStore extends HovercardStoreFunctions, Store<HovercardStoreState> {
44
54
  }
45
- export type HovercardStoreProps = HovercardStoreOptions & StoreProps<HovercardStoreState>;
46
- export type HovercardStore = HovercardStoreFunctions & Store<HovercardStoreState>;
@@ -1,10 +1,10 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
2
2
 
3
3
 
4
- var _GXIZMD53cjs = require('../__chunks/GXIZMD53.cjs');
5
- require('../__chunks/6WBY3ZZM.cjs');
6
- require('../__chunks/JLC5A6WF.cjs');
7
- require('../__chunks/46BH65MC.cjs');
4
+ var _3J44Z7YHcjs = require('../__chunks/3J44Z7YH.cjs');
5
+ require('../__chunks/QAZ4PF7S.cjs');
6
+ require('../__chunks/ZQTYFYRS.cjs');
7
+ require('../__chunks/2UK5WUJX.cjs');
8
8
  require('../__chunks/3UT5FE6K.cjs');
9
9
  require('../__chunks/5F4DVUNS.cjs');
10
10
  require('../__chunks/ULSPM3Y3.cjs');
@@ -12,7 +12,7 @@ require('../__chunks/AV6KTKLE.cjs');
12
12
 
13
13
  // src/menu/menu-bar-store.ts
14
14
  function createMenuBarStore(props = {}) {
15
- return _GXIZMD53cjs.createMenubarStore.call(void 0, props);
15
+ return _3J44Z7YHcjs.createMenubarStore.call(void 0, props);
16
16
  }
17
17
 
18
18
 
@@ -1,10 +1,16 @@
1
- import type { MenubarStore, MenubarStoreFunctions, MenubarStoreOptions, MenubarStoreProps, MenubarStoreState } from "../menubar/menubar-store.js";
1
+ import type { MenubarStoreFunctions, MenubarStoreOptions, MenubarStoreState } from "../menubar/menubar-store.js";
2
+ import type { Store, StoreProps } from "../utils/store.js";
2
3
  /**
3
4
  * Creates a menu bar store.
4
5
  */
5
6
  export declare function createMenuBarStore(props?: MenuBarStoreProps): MenuBarStore;
6
- export type MenuBarStoreState = MenubarStoreState;
7
- export type MenuBarStoreFunctions = MenubarStoreFunctions;
8
- export type MenuBarStoreOptions = MenubarStoreOptions;
9
- export type MenuBarStoreProps = MenubarStoreProps;
10
- export type MenuBarStore = MenubarStore;
7
+ export interface MenuBarStoreState extends MenubarStoreState {
8
+ }
9
+ export interface MenuBarStoreFunctions extends MenubarStoreFunctions {
10
+ }
11
+ export interface MenuBarStoreOptions extends MenubarStoreOptions {
12
+ }
13
+ export interface MenuBarStoreProps extends MenuBarStoreOptions, StoreProps<MenuBarStoreState> {
14
+ }
15
+ export interface MenuBarStore extends MenuBarStoreFunctions, Store<MenuBarStoreState> {
16
+ }
@@ -1,10 +1,16 @@
1
- import type { MenubarStore, MenubarStoreFunctions, MenubarStoreOptions, MenubarStoreProps, MenubarStoreState } from "../menubar/menubar-store.js";
1
+ import type { MenubarStoreFunctions, MenubarStoreOptions, MenubarStoreState } from "../menubar/menubar-store.js";
2
+ import type { Store, StoreProps } from "../utils/store.js";
2
3
  /**
3
4
  * Creates a menu bar store.
4
5
  */
5
6
  export declare function createMenuBarStore(props?: MenuBarStoreProps): MenuBarStore;
6
- export type MenuBarStoreState = MenubarStoreState;
7
- export type MenuBarStoreFunctions = MenubarStoreFunctions;
8
- export type MenuBarStoreOptions = MenubarStoreOptions;
9
- export type MenuBarStoreProps = MenubarStoreProps;
10
- export type MenuBarStore = MenubarStore;
7
+ export interface MenuBarStoreState extends MenubarStoreState {
8
+ }
9
+ export interface MenuBarStoreFunctions extends MenubarStoreFunctions {
10
+ }
11
+ export interface MenuBarStoreOptions extends MenubarStoreOptions {
12
+ }
13
+ export interface MenuBarStoreProps extends MenuBarStoreOptions, StoreProps<MenuBarStoreState> {
14
+ }
15
+ export interface MenuBarStore extends MenuBarStoreFunctions, Store<MenuBarStoreState> {
16
+ }
@@ -1,14 +1,14 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
2
2
 
3
3
 
4
- var _PD7XZBXCcjs = require('../__chunks/PD7XZBXC.cjs');
5
- require('../__chunks/7ZUFMSXJ.cjs');
6
- require('../__chunks/GZDVJEID.cjs');
7
- require('../__chunks/MEHGRTJ3.cjs');
4
+ var _5SIVMOIDcjs = require('../__chunks/5SIVMOID.cjs');
5
+ require('../__chunks/EFIT5L4X.cjs');
6
+ require('../__chunks/2LS4JJ4S.cjs');
7
+ require('../__chunks/GJFZ5ZPP.cjs');
8
8
 
9
9
 
10
- var _6WBY3ZZMcjs = require('../__chunks/6WBY3ZZM.cjs');
11
- require('../__chunks/JLC5A6WF.cjs');
10
+ var _QAZ4PF7Scjs = require('../__chunks/QAZ4PF7S.cjs');
11
+ require('../__chunks/ZQTYFYRS.cjs');
12
12
 
13
13
 
14
14
 
@@ -17,7 +17,7 @@ require('../__chunks/JLC5A6WF.cjs');
17
17
 
18
18
 
19
19
 
20
- var _46BH65MCcjs = require('../__chunks/46BH65MC.cjs');
20
+ var _2UK5WUJXcjs = require('../__chunks/2UK5WUJX.cjs');
21
21
 
22
22
 
23
23
 
@@ -42,10 +42,10 @@ function createMenuStore(_a = {}) {
42
42
  "menubar"
43
43
  ]);
44
44
  const parentIsMenubar = !!menubar && !parent;
45
- const store = _46BH65MCcjs.mergeStore.call(void 0,
45
+ const store = _2UK5WUJXcjs.mergeStore.call(void 0,
46
46
  props.store,
47
- _46BH65MCcjs.pick.call(void 0, parent, ["values"]),
48
- _46BH65MCcjs.omit.call(void 0, combobox, [
47
+ _2UK5WUJXcjs.pick.call(void 0, parent, ["values"]),
48
+ _2UK5WUJXcjs.omit.call(void 0, combobox, [
49
49
  "arrowElement",
50
50
  "anchorElement",
51
51
  "contentElement",
@@ -53,9 +53,9 @@ function createMenuStore(_a = {}) {
53
53
  "disclosureElement"
54
54
  ])
55
55
  );
56
- _46BH65MCcjs.throwOnConflictingProps.call(void 0, props, store);
56
+ _2UK5WUJXcjs.throwOnConflictingProps.call(void 0, props, store);
57
57
  const syncState = store.getState();
58
- const composite = _6WBY3ZZMcjs.createCompositeStore.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {}, props), {
58
+ const composite = _QAZ4PF7Scjs.createCompositeStore.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {}, props), {
59
59
  store,
60
60
  orientation: _3UT5FE6Kcjs.defaultValue.call(void 0,
61
61
  props.orientation,
@@ -63,7 +63,7 @@ function createMenuStore(_a = {}) {
63
63
  "vertical"
64
64
  )
65
65
  }));
66
- const hovercard = _PD7XZBXCcjs.createHovercardStore.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {}, props), {
66
+ const hovercard = _5SIVMOIDcjs.createHovercardStore.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {}, props), {
67
67
  store,
68
68
  placement: _3UT5FE6Kcjs.defaultValue.call(void 0,
69
69
  props.placement,
@@ -86,18 +86,18 @@ function createMenuStore(_a = {}) {
86
86
  {}
87
87
  )
88
88
  });
89
- const menu = _46BH65MCcjs.createStore.call(void 0, initialState, composite, hovercard, store);
90
- _46BH65MCcjs.setup.call(void 0,
89
+ const menu = _2UK5WUJXcjs.createStore.call(void 0, initialState, composite, hovercard, store);
90
+ _2UK5WUJXcjs.setup.call(void 0,
91
91
  menu,
92
- () => _46BH65MCcjs.sync.call(void 0, menu, ["mounted"], (state) => {
92
+ () => _2UK5WUJXcjs.sync.call(void 0, menu, ["mounted"], (state) => {
93
93
  if (state.mounted)
94
94
  return;
95
95
  menu.setState("activeId", null);
96
96
  })
97
97
  );
98
- _46BH65MCcjs.setup.call(void 0,
98
+ _2UK5WUJXcjs.setup.call(void 0,
99
99
  menu,
100
- () => _46BH65MCcjs.sync.call(void 0, parent, ["orientation"], (state) => {
100
+ () => _2UK5WUJXcjs.sync.call(void 0, parent, ["orientation"], (state) => {
101
101
  menu.setState(
102
102
  "placement",
103
103
  state.orientation === "vertical" ? "right-start" : "bottom-start"