@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
@@ -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,10 @@
1
1
  "use client";
2
2
  import {
3
3
  createMenubarStore
4
- } from "../__chunks/ANO6WJO4.js";
5
- import "../__chunks/OGMLJYDV.js";
6
- import "../__chunks/CCU5UHQ2.js";
7
- import "../__chunks/E7OQVGGY.js";
4
+ } from "../__chunks/A2AGSVJO.js";
5
+ import "../__chunks/CTZ2GQIZ.js";
6
+ import "../__chunks/HMQYEBKF.js";
7
+ import "../__chunks/A2J4XZ5T.js";
8
8
  import "../__chunks/I2VQ3XGR.js";
9
9
  import "../__chunks/DLOEKDPY.js";
10
10
  import "../__chunks/7PRQYBBV.js";
@@ -4,11 +4,10 @@ import type { HovercardStoreFunctions, HovercardStoreOptions, HovercardStoreStat
4
4
  import type { Store, StoreOptions, StoreProps } from "../utils/store.js";
5
5
  import type { BivariantCallback, PickRequired, SetState, SetStateAction } from "../utils/types.js";
6
6
  import type { MenuBarStore } from "./menu-bar-store.js";
7
- type Values = Record<string, string | boolean | number | Array<string | number>>;
8
- export declare function createMenuStore<T extends Values = Values>(props: PickRequired<MenuStoreProps<T>, "values" | "defaultValues">): MenuStore<T>;
7
+ export declare function createMenuStore<T extends MenuStoreValues = MenuStoreValues>(props: PickRequired<MenuStoreProps<T>, "values" | "defaultValues">): MenuStore<T>;
9
8
  export declare function createMenuStore(props?: MenuStoreProps): MenuStore;
10
9
  export type MenuStoreValues = Record<string, string | boolean | number | Array<string | number>>;
11
- export interface MenuStoreState<T extends Values = Values> extends CompositeStoreState, HovercardStoreState {
10
+ export interface MenuStoreState<T extends MenuStoreValues = MenuStoreValues> extends CompositeStoreState, HovercardStoreState {
12
11
  /**
13
12
  * Determines the element that should be focused when the menu is opened.
14
13
  */
@@ -25,7 +24,7 @@ export interface MenuStoreState<T extends Values = Values> extends CompositeStor
25
24
  /** @default 0 */
26
25
  hideTimeout?: HovercardStoreState["hideTimeout"];
27
26
  }
28
- export interface MenuStoreFunctions<T extends Values = Values> extends Pick<MenuStoreOptions, "combobox" | "parent" | "menubar">, CompositeStoreFunctions, HovercardStoreFunctions {
27
+ export interface MenuStoreFunctions<T extends MenuStoreValues = MenuStoreValues> extends CompositeStoreFunctions, HovercardStoreFunctions, Pick<MenuStoreOptions, "combobox" | "parent" | "menubar"> {
29
28
  /**
30
29
  * Hides the menu and all its parent menus.
31
30
  */
@@ -51,7 +50,7 @@ export interface MenuStoreFunctions<T extends Values = Values> extends Pick<Menu
51
50
  */
52
51
  setValue: BivariantCallback<(name: string, value: SetStateAction<MenuStoreState<T>["values"][string]>) => void>;
53
52
  }
54
- export interface MenuStoreOptions<T extends Values = Values> extends StoreOptions<MenuStoreState<T>, "orientation" | "placement" | "hideTimeout" | "values">, CompositeStoreOptions, HovercardStoreOptions {
53
+ export interface MenuStoreOptions<T extends MenuStoreValues = MenuStoreValues> extends CompositeStoreOptions, HovercardStoreOptions, StoreOptions<MenuStoreState<T>, "orientation" | "placement" | "hideTimeout" | "values"> {
55
54
  /**
56
55
  * A reference to a combobox store. This is used when combining the combobox
57
56
  * with a menu (e.g., dropdown menu with a search input). The stores will
@@ -73,6 +72,7 @@ export interface MenuStoreOptions<T extends Values = Values> extends StoreOption
73
72
  */
74
73
  defaultValues?: MenuStoreState<T>["values"];
75
74
  }
76
- export type MenuStoreProps<T extends Values = Values> = MenuStoreOptions<T> & StoreProps<MenuStoreState<T>>;
77
- export type MenuStore<T extends Values = Values> = MenuStoreFunctions<T> & Store<MenuStoreState<T>>;
78
- export {};
75
+ export interface MenuStoreProps<T extends MenuStoreValues = MenuStoreValues> extends MenuStoreOptions<T>, StoreProps<MenuStoreState<T>> {
76
+ }
77
+ export interface MenuStore<T extends MenuStoreValues = MenuStoreValues> extends MenuStoreFunctions<T>, Store<MenuStoreState<T>> {
78
+ }
@@ -1,14 +1,14 @@
1
1
  "use client";
2
2
  import {
3
3
  createHovercardStore
4
- } from "../__chunks/BXH3I7ML.js";
5
- import "../__chunks/WY3EMTH6.js";
6
- import "../__chunks/CL47ZAPY.js";
7
- import "../__chunks/DYD4YNLE.js";
4
+ } from "../__chunks/T3DVYGXI.js";
5
+ import "../__chunks/J6JIOWCS.js";
6
+ import "../__chunks/LT2OYWRD.js";
7
+ import "../__chunks/NKLTHWCR.js";
8
8
  import {
9
9
  createCompositeStore
10
- } from "../__chunks/OGMLJYDV.js";
11
- import "../__chunks/CCU5UHQ2.js";
10
+ } from "../__chunks/CTZ2GQIZ.js";
11
+ import "../__chunks/HMQYEBKF.js";
12
12
  import {
13
13
  createStore,
14
14
  mergeStore,
@@ -17,7 +17,7 @@ import {
17
17
  setup,
18
18
  sync,
19
19
  throwOnConflictingProps
20
- } from "../__chunks/E7OQVGGY.js";
20
+ } from "../__chunks/A2J4XZ5T.js";
21
21
  import {
22
22
  applyState,
23
23
  defaultValue
@@ -1,7 +1,7 @@
1
1
  import type { CompositeStoreFunctions, CompositeStoreOptions, CompositeStoreState } from "../composite/composite-store.js";
2
2
  import type { Store, StoreProps } from "../utils/store.js";
3
3
  /**
4
- * Creates a menu bar store.
4
+ * Creates a menubar store.
5
5
  */
6
6
  export declare function createMenubarStore(props?: MenubarStoreProps): MenubarStore;
7
7
  export interface MenubarStoreState extends CompositeStoreState {
@@ -1,10 +1,10 @@
1
1
  "use client";
2
2
  import {
3
3
  createMenubarStore
4
- } from "../__chunks/ANO6WJO4.js";
5
- import "../__chunks/OGMLJYDV.js";
6
- import "../__chunks/CCU5UHQ2.js";
7
- import "../__chunks/E7OQVGGY.js";
4
+ } from "../__chunks/A2AGSVJO.js";
5
+ import "../__chunks/CTZ2GQIZ.js";
6
+ import "../__chunks/HMQYEBKF.js";
7
+ import "../__chunks/A2J4XZ5T.js";
8
8
  import "../__chunks/I2VQ3XGR.js";
9
9
  import "../__chunks/DLOEKDPY.js";
10
10
  import "../__chunks/7PRQYBBV.js";
@@ -28,6 +28,9 @@ export interface PopoverStoreState extends DialogStoreState {
28
28
  currentPlacement: Placement;
29
29
  /**
30
30
  * The placement of the popover.
31
+ *
32
+ * Live examples:
33
+ * - [Navigation Menubar](https://ariakit.org/examples/menubar-navigation)
31
34
  * @default "bottom"
32
35
  */
33
36
  placement: Placement;
@@ -57,13 +60,15 @@ export interface PopoverStoreFunctions extends DialogStoreFunctions {
57
60
  */
58
61
  render: () => void;
59
62
  }
60
- export interface PopoverStoreOptions extends StoreOptions<PopoverStoreState, "placement">, DialogStoreOptions {
63
+ export interface PopoverStoreOptions extends DialogStoreOptions, StoreOptions<PopoverStoreState, "placement"> {
61
64
  /**
62
65
  * A reference to another popover store that's controlling another popover to
63
66
  * keep them in sync.
64
67
  */
65
68
  popover?: PopoverStore | null;
66
69
  }
67
- export type PopoverStoreProps = PopoverStoreOptions & StoreProps<PopoverStoreState>;
68
- export type PopoverStore = PopoverStoreFunctions & Store<PopoverStoreState>;
70
+ export interface PopoverStoreProps extends PopoverStoreOptions, StoreProps<PopoverStoreState> {
71
+ }
72
+ export interface PopoverStore extends PopoverStoreFunctions, Store<PopoverStoreState> {
73
+ }
69
74
  export {};
@@ -1,10 +1,10 @@
1
1
  "use client";
2
2
  import {
3
3
  createPopoverStore
4
- } from "../__chunks/WY3EMTH6.js";
5
- import "../__chunks/CL47ZAPY.js";
6
- import "../__chunks/DYD4YNLE.js";
7
- import "../__chunks/E7OQVGGY.js";
4
+ } from "../__chunks/J6JIOWCS.js";
5
+ import "../__chunks/LT2OYWRD.js";
6
+ import "../__chunks/NKLTHWCR.js";
7
+ import "../__chunks/A2J4XZ5T.js";
8
8
  import "../__chunks/I2VQ3XGR.js";
9
9
  import "../__chunks/4R3V3JGP.js";
10
10
  export {
@@ -25,12 +25,14 @@ export interface RadioStoreFunctions extends CompositeStoreFunctions {
25
25
  */
26
26
  setValue: SetState<RadioStoreState["value"]>;
27
27
  }
28
- export interface RadioStoreOptions extends StoreOptions<RadioStoreState, "focusLoop" | "value">, CompositeStoreOptions {
28
+ export interface RadioStoreOptions extends CompositeStoreOptions, StoreOptions<RadioStoreState, "focusLoop" | "value"> {
29
29
  /**
30
30
  * The default value of the radio group.
31
31
  * @default null
32
32
  */
33
33
  defaultValue?: RadioStoreState["value"];
34
34
  }
35
- export type RadioStoreProps = RadioStoreOptions & StoreProps<RadioStoreState>;
36
- export type RadioStore = RadioStoreFunctions & Store<RadioStoreState>;
35
+ export interface RadioStoreProps extends RadioStoreOptions, StoreProps<RadioStoreState> {
36
+ }
37
+ export interface RadioStore extends RadioStoreFunctions, Store<RadioStoreState> {
38
+ }
@@ -1,11 +1,11 @@
1
1
  "use client";
2
2
  import {
3
3
  createCompositeStore
4
- } from "../__chunks/OGMLJYDV.js";
5
- import "../__chunks/CCU5UHQ2.js";
4
+ } from "../__chunks/CTZ2GQIZ.js";
5
+ import "../__chunks/HMQYEBKF.js";
6
6
  import {
7
7
  createStore
8
- } from "../__chunks/E7OQVGGY.js";
8
+ } from "../__chunks/A2J4XZ5T.js";
9
9
  import {
10
10
  defaultValue
11
11
  } from "../__chunks/I2VQ3XGR.js";
@@ -3,42 +3,54 @@ import type { CompositeStoreFunctions, CompositeStoreItem, CompositeStoreOptions
3
3
  import type { PopoverStoreFunctions, PopoverStoreOptions, PopoverStoreState } from "../popover/popover-store.js";
4
4
  import type { Store, StoreOptions, StoreProps } from "../utils/store.js";
5
5
  import type { PickRequired, SetState } from "../utils/types.js";
6
- type Value = string | string[];
7
- type MutableValue<T extends Value = Value> = T extends string ? string : T;
8
- type Item = CompositeStoreItem & {
9
- value?: string;
10
- };
11
- export declare function createSelectStore<T extends Value = Value>(props: PickRequired<SelectStoreProps<T>, "value" | "defaultValue">): SelectStore<T>;
6
+ type MutableValue<T extends SelectStoreValue = SelectStoreValue> = T extends string ? string : T;
7
+ export declare function createSelectStore<T extends SelectStoreValue = SelectStoreValue>(props: PickRequired<SelectStoreProps<T>, "value" | "defaultValue">): SelectStore<T>;
12
8
  export declare function createSelectStore(props?: SelectStoreProps): SelectStore;
13
- export type SelectStoreItem = Item;
14
- export type SelectStoreValue = Value;
15
- export interface SelectStoreState<T extends Value = Value> extends CompositeStoreState<Item>, PopoverStoreState {
9
+ export type SelectStoreValue = string | string[];
10
+ export interface SelectStoreItem extends CompositeStoreItem {
11
+ value?: string;
12
+ }
13
+ export interface SelectStoreState<T extends SelectStoreValue = SelectStoreValue> extends CompositeStoreState<SelectStoreItem>, PopoverStoreState {
16
14
  /** @default true */
17
- virtualFocus: CompositeStoreState<Item>["virtualFocus"];
15
+ virtualFocus: CompositeStoreState<SelectStoreItem>["virtualFocus"];
18
16
  /** @default false */
19
- includesBaseElement: CompositeStoreState<Item>["includesBaseElement"];
17
+ includesBaseElement: CompositeStoreState<SelectStoreItem>["includesBaseElement"];
20
18
  /** @default null */
21
- activeId: CompositeStoreState<Item>["activeId"];
19
+ activeId: CompositeStoreState<SelectStoreItem>["activeId"];
22
20
  /** @default "vertical" */
23
- orientation: CompositeStoreState<Item>["orientation"];
21
+ orientation: CompositeStoreState<SelectStoreItem>["orientation"];
24
22
  /** @default "bottom-start" */
25
23
  placement: PopoverStoreState["placement"];
26
24
  /**
27
25
  * The select value.
28
26
  *
29
27
  * Live examples:
30
- * - [Multi-selectable
31
- * Combobox](https://ariakit.org/examples/combobox-multiple)
28
+ * - [Form with Select](https://ariakit.org/examples/form-select)
29
+ * - [Select Grid](https://ariakit.org/examples/select-grid)
30
+ * - [Select with custom
31
+ * items](https://ariakit.org/examples/select-item-custom)
32
+ * - [Multi-Select](https://ariakit.org/examples/select-multiple)
33
+ * - [Toolbar with Select](https://ariakit.org/examples/toolbar-select)
32
34
  */
33
35
  value: MutableValue<T>;
34
36
  /**
35
- * Whether the select value should be set when the active item changes by
36
- * moving (which usually happens when moving to an item using the keyboard).
37
+ * Whether the select
38
+ * [`value`](https://ariakit.org/reference/select-provider#value) should be
39
+ * set when the active item changes by moving (which usually happens when
40
+ * moving to an item using the keyboard).
41
+ *
42
+ * Live examples:
43
+ * - [Select Grid](https://ariakit.org/examples/select-grid)
44
+ * - [Select with custom
45
+ * items](https://ariakit.org/examples/select-item-custom)
37
46
  * @default false
38
47
  */
39
48
  setValueOnMove: boolean;
40
49
  /**
41
50
  * The select button element.
51
+ *
52
+ * Live examples:
53
+ * - [Form with Select](https://ariakit.org/examples/form-select)
42
54
  */
43
55
  selectElement: HTMLElement | null;
44
56
  /**
@@ -46,13 +58,9 @@ export interface SelectStoreState<T extends Value = Value> extends CompositeStor
46
58
  */
47
59
  labelElement: HTMLElement | null;
48
60
  }
49
- export interface SelectStoreFunctions<T extends Value = Value> extends Pick<SelectStoreOptions<T>, "combobox">, CompositeStoreFunctions<Item>, PopoverStoreFunctions {
61
+ export interface SelectStoreFunctions<T extends SelectStoreValue = SelectStoreValue> extends Pick<SelectStoreOptions<T>, "combobox">, CompositeStoreFunctions<SelectStoreItem>, PopoverStoreFunctions {
50
62
  /**
51
63
  * Sets the `value` state.
52
- *
53
- * Live examples:
54
- * - [Multi-selectable
55
- * Combobox](https://ariakit.org/examples/combobox-multiple)
56
64
  * @example
57
65
  * store.setValue("Apple");
58
66
  * store.setValue(["Apple", "Banana"]);
@@ -68,26 +76,26 @@ export interface SelectStoreFunctions<T extends Value = Value> extends Pick<Sele
68
76
  */
69
77
  setLabelElement: SetState<SelectStoreState<T>["labelElement"]>;
70
78
  }
71
- export interface SelectStoreOptions<T extends Value = Value> extends StoreOptions<SelectStoreState<T>, "virtualFocus" | "includesBaseElement" | "activeId" | "orientation" | "placement" | "value" | "setValueOnMove">, CompositeStoreOptions<Item>, PopoverStoreOptions {
79
+ export interface SelectStoreOptions<T extends SelectStoreValue = SelectStoreValue> extends CompositeStoreOptions<SelectStoreItem>, PopoverStoreOptions, StoreOptions<SelectStoreState<T>, "virtualFocus" | "includesBaseElement" | "activeId" | "orientation" | "placement" | "value" | "setValueOnMove"> {
72
80
  /**
73
81
  * A reference to a combobox store. This is used when combining the combobox
74
82
  * with a select (e.g., select with a search input). The stores will share the
75
83
  * same state.
76
- *
77
- * Live examples:
78
- * - [Multi-selectable
79
- * Combobox](https://ariakit.org/examples/combobox-multiple)
80
84
  */
81
85
  combobox?: ComboboxStore | null;
82
86
  /**
83
87
  * The default value. If not set, the first non-disabled item will be used.
84
88
  *
85
89
  * Live examples:
86
- * - [Multi-selectable
87
- * Combobox](https://ariakit.org/examples/combobox-multiple)
90
+ * - [Form with Select](https://ariakit.org/examples/form-select)
91
+ * - [Animated Select](https://ariakit.org/examples/select-animated)
92
+ * - [Select with Combobox](https://ariakit.org/examples/select-combobox)
93
+ * - [SelectGroup](https://ariakit.org/examples/select-group)
88
94
  */
89
95
  defaultValue?: SelectStoreState<T>["value"];
90
96
  }
91
- export type SelectStoreProps<T extends Value = Value> = SelectStoreOptions<T> & StoreProps<SelectStoreState<T>>;
92
- export type SelectStore<T extends Value = Value> = SelectStoreFunctions<T> & Store<SelectStoreState<T>>;
97
+ export interface SelectStoreProps<T extends SelectStoreValue = SelectStoreValue> extends SelectStoreOptions<T>, StoreProps<SelectStoreState<T>> {
98
+ }
99
+ export interface SelectStore<T extends SelectStoreValue = SelectStoreValue> extends SelectStoreFunctions<T>, Store<SelectStoreState<T>> {
100
+ }
93
101
  export {};
@@ -1,13 +1,13 @@
1
1
  "use client";
2
2
  import {
3
3
  createPopoverStore
4
- } from "../__chunks/WY3EMTH6.js";
5
- import "../__chunks/CL47ZAPY.js";
6
- import "../__chunks/DYD4YNLE.js";
4
+ } from "../__chunks/J6JIOWCS.js";
5
+ import "../__chunks/LT2OYWRD.js";
6
+ import "../__chunks/NKLTHWCR.js";
7
7
  import {
8
8
  createCompositeStore
9
- } from "../__chunks/OGMLJYDV.js";
10
- import "../__chunks/CCU5UHQ2.js";
9
+ } from "../__chunks/CTZ2GQIZ.js";
10
+ import "../__chunks/HMQYEBKF.js";
11
11
  import {
12
12
  batch,
13
13
  createStore,
@@ -16,7 +16,7 @@ import {
16
16
  setup,
17
17
  sync,
18
18
  throwOnConflictingProps
19
- } from "../__chunks/E7OQVGGY.js";
19
+ } from "../__chunks/A2J4XZ5T.js";
20
20
  import {
21
21
  defaultValue
22
22
  } from "../__chunks/I2VQ3XGR.js";
@@ -2,24 +2,22 @@ import type { CollectionStore, CollectionStoreItem } from "../collection/collect
2
2
  import type { CompositeStoreFunctions, CompositeStoreItem, CompositeStoreOptions, CompositeStoreState } from "../composite/composite-store.js";
3
3
  import type { Store, StoreOptions, StoreProps } from "../utils/store.js";
4
4
  import type { SetState } from "../utils/types.js";
5
- type Item = CompositeStoreItem & {
5
+ export declare function createTabStore(props?: TabStoreProps): TabStore;
6
+ export interface TabStoreItem extends CompositeStoreItem {
6
7
  dimmed?: boolean;
7
- };
8
- type Panel = CollectionStoreItem & {
8
+ }
9
+ export interface TabStorePanel extends CollectionStoreItem {
9
10
  tabId?: string | null;
10
- };
11
- export declare function createTabStore(props?: TabStoreProps): TabStore;
12
- export type TabStoreItem = Item;
13
- export type TabStorePanel = Panel;
14
- export interface TabStoreState extends CompositeStoreState<Item> {
11
+ }
12
+ export interface TabStoreState extends CompositeStoreState<TabStoreItem> {
15
13
  /**
16
14
  * @default "horizontal"
17
15
  */
18
- orientation: CompositeStoreState<Item>["orientation"];
16
+ orientation: CompositeStoreState<TabStoreItem>["orientation"];
19
17
  /**
20
18
  * @default true
21
19
  */
22
- focusLoop: CompositeStoreState<Item>["focusLoop"];
20
+ focusLoop: CompositeStoreState<TabStoreItem>["focusLoop"];
23
21
  /**
24
22
  * The id of the tab whose panel is currently visible. If it's `undefined`, it
25
23
  * will be automatically set to the first enabled tab.
@@ -38,7 +36,7 @@ export interface TabStoreState extends CompositeStoreState<Item> {
38
36
  */
39
37
  selectOnMove?: boolean;
40
38
  }
41
- export interface TabStoreFunctions extends CompositeStoreFunctions<Item> {
39
+ export interface TabStoreFunctions extends CompositeStoreFunctions<TabStoreItem> {
42
40
  /**
43
41
  * Sets the `selectedId` state without moving focus. If you want to move focus,
44
42
  * use the `select` function instead.
@@ -59,7 +57,7 @@ export interface TabStoreFunctions extends CompositeStoreFunctions<Item> {
59
57
  /**
60
58
  * A collection store containing the tab panels.
61
59
  */
62
- panels: CollectionStore<Panel>;
60
+ panels: CollectionStore<TabStorePanel>;
63
61
  /**
64
62
  * Selects the tab for the given id and moves focus to it. If you want to set
65
63
  * the `selectedId` state without moving focus, use the `setSelectedId`
@@ -75,13 +73,14 @@ export interface TabStoreFunctions extends CompositeStoreFunctions<Item> {
75
73
  */
76
74
  select: TabStore["move"];
77
75
  }
78
- export interface TabStoreOptions extends StoreOptions<TabStoreState, "orientation" | "focusLoop" | "selectedId" | "selectOnMove">, CompositeStoreOptions<Item> {
76
+ export interface TabStoreOptions extends StoreOptions<TabStoreState, "orientation" | "focusLoop" | "selectedId" | "selectOnMove">, CompositeStoreOptions<TabStoreItem> {
79
77
  /**
80
78
  * The id of the tab whose panel is currently visible. If it's `undefined`, it
81
79
  * will be automatically set to the first enabled tab.
82
80
  */
83
81
  defaultSelectedId?: TabStoreState["selectedId"];
84
82
  }
85
- export type TabStoreProps = TabStoreOptions & StoreProps<TabStoreState>;
86
- export type TabStore = TabStoreFunctions & Store<TabStoreState>;
87
- export {};
83
+ export interface TabStoreProps extends TabStoreOptions, StoreProps<TabStoreState> {
84
+ }
85
+ export interface TabStore extends TabStoreFunctions, Store<TabStoreState> {
86
+ }
@@ -1,16 +1,16 @@
1
1
  "use client";
2
2
  import {
3
3
  createCompositeStore
4
- } from "../__chunks/OGMLJYDV.js";
4
+ } from "../__chunks/CTZ2GQIZ.js";
5
5
  import {
6
6
  createCollectionStore
7
- } from "../__chunks/CCU5UHQ2.js";
7
+ } from "../__chunks/HMQYEBKF.js";
8
8
  import {
9
9
  batch,
10
10
  createStore,
11
11
  setup,
12
12
  sync
13
- } from "../__chunks/E7OQVGGY.js";
13
+ } from "../__chunks/A2J4XZ5T.js";
14
14
  import {
15
15
  defaultValue
16
16
  } from "../__chunks/I2VQ3XGR.js";
@@ -1,5 +1,5 @@
1
- import type { CompositeStore, CompositeStoreFunctions, CompositeStoreOptions, CompositeStoreProps, CompositeStoreState } from "../composite/composite-store.js";
2
- import type { StoreOptions } from "../utils/store.js";
1
+ import type { CompositeStoreFunctions, CompositeStoreOptions, CompositeStoreState } from "../composite/composite-store.js";
2
+ import type { Store, StoreOptions, StoreProps } from "../utils/store.js";
3
3
  /**
4
4
  * Creates a toolbar store.
5
5
  */
@@ -14,8 +14,11 @@ export interface ToolbarStoreState extends CompositeStoreState {
14
14
  */
15
15
  focusLoop: CompositeStoreState["focusLoop"];
16
16
  }
17
- export type ToolbarStoreFunctions = CompositeStoreFunctions;
18
- export interface ToolbarStoreOptions extends StoreOptions<ToolbarStoreState, "orientation" | "focusLoop">, CompositeStoreOptions {
17
+ export interface ToolbarStoreFunctions extends CompositeStoreFunctions {
18
+ }
19
+ export interface ToolbarStoreOptions extends CompositeStoreOptions, StoreOptions<ToolbarStoreState, "orientation" | "focusLoop"> {
20
+ }
21
+ export interface ToolbarStoreProps extends ToolbarStoreOptions, StoreProps<ToolbarStoreState> {
22
+ }
23
+ export interface ToolbarStore extends ToolbarStoreFunctions, Store<ToolbarStoreState> {
19
24
  }
20
- export type ToolbarStore = CompositeStore;
21
- export type ToolbarStoreProps = CompositeStoreProps;
@@ -1,9 +1,9 @@
1
1
  "use client";
2
2
  import {
3
3
  createCompositeStore
4
- } from "../__chunks/OGMLJYDV.js";
5
- import "../__chunks/CCU5UHQ2.js";
6
- import "../__chunks/E7OQVGGY.js";
4
+ } from "../__chunks/CTZ2GQIZ.js";
5
+ import "../__chunks/HMQYEBKF.js";
6
+ import "../__chunks/A2J4XZ5T.js";
7
7
  import {
8
8
  defaultValue
9
9
  } from "../__chunks/I2VQ3XGR.js";
@@ -23,7 +23,9 @@ export interface TooltipStoreState extends HovercardStoreState {
23
23
  hideTimeout?: HovercardStoreState["hideTimeout"];
24
24
  }
25
25
  export type TooltipStoreFunctions = HovercardStoreFunctions;
26
- export interface TooltipStoreOptions extends StoreOptions<TooltipStoreState, "type" | "placement" | "timeout" | "showTimeout" | "hideTimeout" | "skipTimeout">, HovercardStoreOptions {
26
+ export interface TooltipStoreOptions extends HovercardStoreOptions, StoreOptions<TooltipStoreState, "type" | "placement" | "timeout" | "showTimeout" | "hideTimeout" | "skipTimeout"> {
27
+ }
28
+ export interface TooltipStoreProps extends TooltipStoreOptions, StoreProps<TooltipStoreState> {
29
+ }
30
+ export interface TooltipStore extends TooltipStoreFunctions, Store<TooltipStoreState> {
27
31
  }
28
- export type TooltipStoreProps = TooltipStoreOptions & StoreProps<TooltipStoreState>;
29
- export type TooltipStore = TooltipStoreFunctions & Store<TooltipStoreState>;
@@ -1,13 +1,13 @@
1
1
  "use client";
2
2
  import {
3
3
  createHovercardStore
4
- } from "../__chunks/BXH3I7ML.js";
5
- import "../__chunks/WY3EMTH6.js";
6
- import "../__chunks/CL47ZAPY.js";
7
- import "../__chunks/DYD4YNLE.js";
4
+ } from "../__chunks/T3DVYGXI.js";
5
+ import "../__chunks/J6JIOWCS.js";
6
+ import "../__chunks/LT2OYWRD.js";
7
+ import "../__chunks/NKLTHWCR.js";
8
8
  import {
9
9
  createStore
10
- } from "../__chunks/E7OQVGGY.js";
10
+ } from "../__chunks/A2J4XZ5T.js";
11
11
  import {
12
12
  defaultValue
13
13
  } from "../__chunks/I2VQ3XGR.js";
@@ -46,6 +46,9 @@ export type StoreOptions<S extends State, K extends keyof S> = Partial<Pick<S, K
46
46
  export type StoreProps<S extends State = State> = {
47
47
  /**
48
48
  * Another store object that will be kept in sync with the original store.
49
+ *
50
+ * Live examples:
51
+ * - [Navigation Menubar](https://ariakit.org/examples/menubar-navigation)
49
52
  */
50
53
  store?: Store<Partial<S>>;
51
54
  };
@@ -10,7 +10,7 @@ import {
10
10
  subscribe,
11
11
  sync,
12
12
  throwOnConflictingProps
13
- } from "../__chunks/E7OQVGGY.js";
13
+ } from "../__chunks/A2J4XZ5T.js";
14
14
  import "../__chunks/I2VQ3XGR.js";
15
15
  import "../__chunks/4R3V3JGP.js";
16
16
  export {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ariakit/core",
3
- "version": "0.3.6",
3
+ "version": "0.3.8",
4
4
  "description": "Ariakit core",
5
5
  "sideEffects": false,
6
6
  "license": "MIT",