@ark-ui/react 2.0.2 → 2.1.1

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 (131) hide show
  1. package/CHANGELOG.md +40 -3
  2. package/clipboard/clipboard-context.cjs +15 -0
  3. package/clipboard/clipboard-context.d.ts +6 -0
  4. package/clipboard/clipboard-context.mjs +10 -0
  5. package/clipboard/clipboard-control.cjs +19 -0
  6. package/clipboard/clipboard-control.d.ts +6 -0
  7. package/clipboard/clipboard-control.mjs +15 -0
  8. package/clipboard/clipboard-indicator.cjs +22 -0
  9. package/clipboard/clipboard-indicator.d.ts +6 -0
  10. package/clipboard/clipboard-indicator.mjs +18 -0
  11. package/clipboard/clipboard-input.cjs +19 -0
  12. package/clipboard/clipboard-input.d.ts +6 -0
  13. package/clipboard/clipboard-input.mjs +15 -0
  14. package/clipboard/clipboard-label.cjs +19 -0
  15. package/clipboard/clipboard-label.d.ts +6 -0
  16. package/clipboard/clipboard-label.mjs +15 -0
  17. package/clipboard/clipboard-root.cjs +27 -0
  18. package/clipboard/clipboard-root.d.ts +9 -0
  19. package/clipboard/clipboard-root.mjs +23 -0
  20. package/clipboard/clipboard-trigger.cjs +21 -0
  21. package/clipboard/clipboard-trigger.d.ts +6 -0
  22. package/clipboard/clipboard-trigger.mjs +17 -0
  23. package/clipboard/clipboard.cjs +19 -0
  24. package/clipboard/clipboard.d.ts +7 -0
  25. package/clipboard/clipboard.mjs +6 -0
  26. package/clipboard/index.cjs +24 -0
  27. package/clipboard/index.d.ts +11 -0
  28. package/clipboard/index.mjs +10 -0
  29. package/clipboard/use-clipboard.cjs +43 -0
  30. package/clipboard/use-clipboard.d.ts +8 -0
  31. package/clipboard/use-clipboard.mjs +20 -0
  32. package/color-picker/use-color-picker.cjs +2 -1
  33. package/color-picker/use-color-picker.d.ts +1 -1
  34. package/color-picker/use-color-picker.mjs +2 -1
  35. package/date-picker/date-picker-input.cjs +3 -1
  36. package/date-picker/date-picker-input.d.ts +3 -1
  37. package/date-picker/date-picker-input.mjs +3 -1
  38. package/date-picker/date-picker-preset-trigger.cjs +25 -0
  39. package/date-picker/date-picker-preset-trigger.d.ts +8 -0
  40. package/date-picker/date-picker-preset-trigger.mjs +21 -0
  41. package/date-picker/date-picker.cjs +2 -0
  42. package/date-picker/date-picker.d.ts +2 -1
  43. package/date-picker/date-picker.mjs +1 -0
  44. package/date-picker/index.cjs +2 -0
  45. package/date-picker/index.d.ts +3 -2
  46. package/date-picker/index.mjs +1 -0
  47. package/date-picker/use-date-picker.cjs +2 -1
  48. package/date-picker/use-date-picker.d.ts +1 -1
  49. package/date-picker/use-date-picker.mjs +2 -1
  50. package/dialog/dialog-root.cjs +2 -2
  51. package/dialog/dialog-root.mjs +1 -1
  52. package/dialog/use-dialog.cjs +2 -1
  53. package/dialog/use-dialog.d.ts +1 -1
  54. package/dialog/use-dialog.mjs +2 -1
  55. package/factory.cjs +2 -2
  56. package/factory.mjs +1 -1
  57. package/hover-card/use-hover-card.cjs +2 -1
  58. package/hover-card/use-hover-card.d.ts +1 -1
  59. package/hover-card/use-hover-card.mjs +2 -1
  60. package/index.cjs +25 -0
  61. package/index.d.ts +2 -0
  62. package/index.mjs +14 -0
  63. package/locale/index.cjs +11 -0
  64. package/locale/index.d.ts +2 -0
  65. package/locale/index.mjs +2 -0
  66. package/locale/locale-context.cjs +18 -0
  67. package/locale/locale-context.d.ts +6 -0
  68. package/locale/locale-context.mjs +13 -0
  69. package/locale/locale.cjs +31 -0
  70. package/locale/locale.d.ts +14 -0
  71. package/locale/locale.mjs +27 -0
  72. package/menu/use-menu.cjs +2 -1
  73. package/menu/use-menu.d.ts +1 -1
  74. package/menu/use-menu.mjs +2 -1
  75. package/package.json +65 -51
  76. package/popover/use-popover.cjs +2 -1
  77. package/popover/use-popover.d.ts +1 -1
  78. package/popover/use-popover.mjs +2 -1
  79. package/select/use-select.cjs +2 -1
  80. package/select/use-select.d.ts +1 -1
  81. package/select/use-select.mjs +2 -1
  82. package/tooltip/use-tooltip.cjs +2 -1
  83. package/tooltip/use-tooltip.d.ts +1 -1
  84. package/tooltip/use-tooltip.mjs +2 -1
  85. package/tree-view/index.cjs +2 -0
  86. package/tree-view/index.d.ts +3 -2
  87. package/tree-view/index.mjs +1 -0
  88. package/tree-view/tree-view-branch-content.cjs +3 -7
  89. package/tree-view/tree-view-branch-content.d.ts +1 -3
  90. package/tree-view/tree-view-branch-content.mjs +3 -7
  91. package/tree-view/tree-view-branch-context.cjs +15 -0
  92. package/tree-view/tree-view-branch-context.d.ts +8 -0
  93. package/tree-view/tree-view-branch-context.mjs +10 -0
  94. package/tree-view/tree-view-branch-control.cjs +3 -7
  95. package/tree-view/tree-view-branch-control.d.ts +1 -3
  96. package/tree-view/tree-view-branch-control.mjs +3 -7
  97. package/tree-view/tree-view-branch-indicator.cjs +4 -7
  98. package/tree-view/tree-view-branch-indicator.d.ts +1 -3
  99. package/tree-view/tree-view-branch-indicator.mjs +4 -7
  100. package/tree-view/tree-view-branch-text.cjs +3 -7
  101. package/tree-view/tree-view-branch-text.d.ts +1 -3
  102. package/tree-view/tree-view-branch-text.mjs +3 -7
  103. package/tree-view/tree-view-branch-trigger.cjs +3 -7
  104. package/tree-view/tree-view-branch-trigger.d.ts +1 -3
  105. package/tree-view/tree-view-branch-trigger.mjs +3 -7
  106. package/tree-view/tree-view-branch.cjs +8 -5
  107. package/tree-view/tree-view-branch.d.ts +3 -2
  108. package/tree-view/tree-view-branch.mjs +8 -5
  109. package/tree-view/tree-view-context.d.ts +0 -16
  110. package/tree-view/tree-view-depth-context.cjs +17 -0
  111. package/tree-view/tree-view-depth-context.d.ts +4 -0
  112. package/tree-view/tree-view-depth-context.mjs +12 -0
  113. package/tree-view/tree-view-item-context.cjs +15 -0
  114. package/tree-view/tree-view-item-context.d.ts +8 -0
  115. package/tree-view/tree-view-item-context.mjs +10 -0
  116. package/tree-view/tree-view-item-indicator.cjs +23 -0
  117. package/tree-view/tree-view-item-indicator.d.ts +6 -0
  118. package/tree-view/tree-view-item-indicator.mjs +19 -0
  119. package/tree-view/tree-view-item-text.cjs +3 -12
  120. package/tree-view/tree-view-item-text.d.ts +1 -3
  121. package/tree-view/tree-view-item-text.mjs +3 -12
  122. package/tree-view/tree-view-item.cjs +6 -3
  123. package/tree-view/tree-view-item.d.ts +2 -1
  124. package/tree-view/tree-view-item.mjs +6 -3
  125. package/tree-view/tree-view-root.cjs +2 -2
  126. package/tree-view/tree-view-root.mjs +2 -2
  127. package/tree-view/tree-view-tree.cjs +2 -1
  128. package/tree-view/tree-view-tree.mjs +2 -1
  129. package/tree-view/tree-view.cjs +2 -0
  130. package/tree-view/tree-view.d.ts +2 -1
  131. package/tree-view/tree-view.mjs +1 -0
package/package.json CHANGED
@@ -1,12 +1,13 @@
1
1
  {
2
2
  "name": "@ark-ui/react",
3
- "version": "2.0.2",
3
+ "version": "2.1.1",
4
4
  "description": "A collection of unstyled, accessible UI components for React, utilizing state machines for seamless interaction.",
5
5
  "keywords": [
6
6
  "accordion",
7
7
  "avatar",
8
8
  "carousel",
9
9
  "checkbox",
10
+ "clipboard",
10
11
  "color picker",
11
12
  "combobox",
12
13
  "date picker",
@@ -15,6 +16,7 @@
15
16
  "environment",
16
17
  "file upload",
17
18
  "hover card",
19
+ "locale",
18
20
  "menu",
19
21
  "number input",
20
22
  "pagination",
@@ -62,60 +64,62 @@
62
64
  "release-it": "release-it --config ../../../release-it.json"
63
65
  },
64
66
  "dependencies": {
65
- "@ark-ui/anatomy": "2.1.0",
66
- "@zag-js/accordion": "0.34.0",
67
- "@zag-js/avatar": "0.34.0",
68
- "@zag-js/carousel": "0.34.0",
69
- "@zag-js/checkbox": "0.34.0",
70
- "@zag-js/color-picker": "0.34.0",
71
- "@zag-js/color-utils": "0.34.0",
72
- "@zag-js/combobox": "0.34.0",
73
- "@zag-js/core": "0.34.0",
74
- "@zag-js/date-picker": "0.34.0",
75
- "@zag-js/date-utils": "0.34.0",
76
- "@zag-js/dialog": "0.34.0",
77
- "@zag-js/editable": "0.34.0",
78
- "@zag-js/file-upload": "0.34.0",
79
- "@zag-js/hover-card": "0.34.0",
80
- "@zag-js/menu": "0.34.0",
81
- "@zag-js/number-input": "0.34.0",
82
- "@zag-js/pagination": "0.34.0",
83
- "@zag-js/pin-input": "0.34.0",
84
- "@zag-js/popover": "0.34.0",
85
- "@zag-js/presence": "0.34.0",
86
- "@zag-js/progress": "0.34.0",
87
- "@zag-js/radio-group": "0.34.0",
88
- "@zag-js/rating-group": "0.34.0",
89
- "@zag-js/react": "0.34.0",
90
- "@zag-js/select": "0.34.0",
91
- "@zag-js/slider": "0.34.0",
92
- "@zag-js/splitter": "0.34.0",
93
- "@zag-js/switch": "0.34.0",
94
- "@zag-js/tabs": "0.34.0",
95
- "@zag-js/tags-input": "0.34.0",
96
- "@zag-js/toast": "0.34.0",
97
- "@zag-js/toggle-group": "0.34.0",
98
- "@zag-js/tooltip": "0.34.0",
99
- "@zag-js/tree-view": "0.34.0",
100
- "@zag-js/types": "0.34.0"
67
+ "@ark-ui/anatomy": "2.2.0",
68
+ "@zag-js/accordion": "0.36.2",
69
+ "@zag-js/avatar": "0.36.2",
70
+ "@zag-js/carousel": "0.36.2",
71
+ "@zag-js/checkbox": "0.36.2",
72
+ "@zag-js/clipboard": "0.36.2",
73
+ "@zag-js/collapsible": "0.36.2",
74
+ "@zag-js/color-picker": "0.36.2",
75
+ "@zag-js/color-utils": "0.36.2",
76
+ "@zag-js/combobox": "0.36.2",
77
+ "@zag-js/date-picker": "0.36.2",
78
+ "@zag-js/date-utils": "0.36.2",
79
+ "@zag-js/dialog": "0.36.2",
80
+ "@zag-js/editable": "0.36.2",
81
+ "@zag-js/file-upload": "0.36.2",
82
+ "@zag-js/hover-card": "0.36.2",
83
+ "@zag-js/i18n-utils": "0.36.2",
84
+ "@zag-js/menu": "0.36.2",
85
+ "@zag-js/number-input": "0.36.2",
86
+ "@zag-js/pagination": "0.36.2",
87
+ "@zag-js/pin-input": "0.36.2",
88
+ "@zag-js/popover": "0.36.2",
89
+ "@zag-js/presence": "0.36.2",
90
+ "@zag-js/progress": "0.36.2",
91
+ "@zag-js/radio-group": "0.36.2",
92
+ "@zag-js/rating-group": "0.36.2",
93
+ "@zag-js/react": "0.36.2",
94
+ "@zag-js/select": "0.36.2",
95
+ "@zag-js/slider": "0.36.2",
96
+ "@zag-js/splitter": "0.36.2",
97
+ "@zag-js/switch": "0.36.2",
98
+ "@zag-js/tabs": "0.36.2",
99
+ "@zag-js/tags-input": "0.36.2",
100
+ "@zag-js/toast": "0.36.2",
101
+ "@zag-js/toggle-group": "0.36.2",
102
+ "@zag-js/tooltip": "0.36.2",
103
+ "@zag-js/tree-view": "0.36.2",
104
+ "@zag-js/types": "0.36.2"
101
105
  },
102
106
  "devDependencies": {
103
107
  "@release-it/keep-a-changelog": "5.0.0",
104
- "@storybook/addon-a11y": "7.6.12",
105
- "@storybook/addon-essentials": "7.6.12",
106
- "@storybook/addons": "7.6.12",
107
- "@storybook/react": "7.6.12",
108
- "@storybook/react-vite": "7.6.12",
108
+ "@storybook/addon-a11y": "7.6.14",
109
+ "@storybook/addon-essentials": "7.6.14",
110
+ "@storybook/addons": "7.6.14",
111
+ "@storybook/react": "7.6.14",
112
+ "@storybook/react-vite": "7.6.14",
109
113
  "@testing-library/dom": "9.3.4",
110
- "@testing-library/jest-dom": "6.4.1",
114
+ "@testing-library/jest-dom": "6.4.2",
111
115
  "@testing-library/react": "14.2.1",
112
116
  "@testing-library/user-event": "14.5.2",
113
117
  "@types/jsdom": "21.1.6",
114
- "@types/react": "18.2.52",
115
- "@types/react-dom": "18.2.18",
118
+ "@types/react": "18.2.55",
119
+ "@types/react-dom": "18.2.19",
116
120
  "@types/testing-library__jest-dom": "5.14.9",
117
- "@typescript-eslint/eslint-plugin": "6.20.0",
118
- "@typescript-eslint/parser": "6.20.0",
121
+ "@typescript-eslint/eslint-plugin": "6.21.0",
122
+ "@typescript-eslint/parser": "6.21.0",
119
123
  "@vitejs/plugin-react": "4.2.1",
120
124
  "@vitest/coverage-v8": "1.2.2",
121
125
  "eslint": "8.56.0",
@@ -123,17 +127,17 @@
123
127
  "eslint-plugin-react": "7.33.2",
124
128
  "eslint-plugin-react-hooks": "4.6.0",
125
129
  "eslint-plugin-testing-library": "6.2.0",
126
- "globby": "14.0.0",
130
+ "globby": "14.0.1",
127
131
  "jsdom": "24.0.0",
128
132
  "react": "18.2.0",
129
133
  "react-dom": "18.2.0",
130
134
  "react-frame-component": "5.2.6",
131
- "react-hook-form": "7.50.0",
135
+ "react-hook-form": "7.50.1",
132
136
  "release-it": "17.0.3",
133
137
  "resize-observer-polyfill": "1.5.1",
134
- "storybook": "7.6.12",
138
+ "storybook": "7.6.14",
135
139
  "typescript": "5.3.3",
136
- "vite": "5.0.12",
140
+ "vite": "5.1.1",
137
141
  "vite-plugin-dts": "3.7.2",
138
142
  "vitest": "1.2.2"
139
143
  },
@@ -173,6 +177,11 @@
173
177
  "import": "./checkbox/index.mjs",
174
178
  "require": "./checkbox/index.cjs"
175
179
  },
180
+ "./clipboard": {
181
+ "types": "./clipboard/index.d.ts",
182
+ "import": "./clipboard/index.mjs",
183
+ "require": "./clipboard/index.cjs"
184
+ },
176
185
  "./color-picker": {
177
186
  "types": "./color-picker/index.d.ts",
178
187
  "import": "./color-picker/index.mjs",
@@ -213,6 +222,11 @@
213
222
  "import": "./hover-card/index.mjs",
214
223
  "require": "./hover-card/index.cjs"
215
224
  },
225
+ "./locale": {
226
+ "types": "./locale/index.d.ts",
227
+ "import": "./locale/index.mjs",
228
+ "require": "./locale/index.cjs"
229
+ },
216
230
  "./menu": {
217
231
  "types": "./menu/index.d.ts",
218
232
  "import": "./menu/index.mjs",
@@ -33,7 +33,8 @@ const usePopover = (props = {}) => {
33
33
  id: react.useId(),
34
34
  getRootNode: environmentContext.useEnvironmentContext(),
35
35
  ...props,
36
- open: props.defaultOpen ?? props.open
36
+ open: props.defaultOpen ?? props.open,
37
+ "open.controlled": props.open !== void 0
37
38
  };
38
39
  const context = {
39
40
  ...initialContext,
@@ -1,7 +1,7 @@
1
1
  import * as popover from '@zag-js/popover';
2
2
  import { type PropTypes } from '@zag-js/react';
3
3
  import { type Optional } from '../types';
4
- export interface UsePopoverProps extends Optional<popover.Context, 'id'> {
4
+ export interface UsePopoverProps extends Omit<Optional<popover.Context, 'id'>, 'open.controlled'> {
5
5
  /**
6
6
  * The initial open state of the popover.
7
7
  */
@@ -10,7 +10,8 @@ const usePopover = (props = {}) => {
10
10
  id: useId(),
11
11
  getRootNode: useEnvironmentContext(),
12
12
  ...props,
13
- open: props.defaultOpen ?? props.open
13
+ open: props.defaultOpen ?? props.open,
14
+ "open.controlled": props.open !== void 0
14
15
  };
15
16
  const context = {
16
17
  ...initialContext,
@@ -46,7 +46,8 @@ const useSelect = (props) => {
46
46
  getRootNode: environmentContext.useEnvironmentContext(),
47
47
  collection,
48
48
  ...rest,
49
- value: props.defaultValue
49
+ value: props.defaultValue,
50
+ "open.controlled": props.open !== void 0
50
51
  };
51
52
  const context = {
52
53
  ...initialContext,
@@ -2,7 +2,7 @@ import { type PropTypes } from '@zag-js/react';
2
2
  import type { CollectionOptions } from '@zag-js/select';
3
3
  import * as select from '@zag-js/select';
4
4
  import { type CollectionItem, type Optional } from '../types';
5
- export interface UseSelectProps<T extends CollectionItem> extends CollectionOptions<T>, Omit<Optional<select.Context<T>, 'id'>, 'collection'> {
5
+ export interface UseSelectProps<T extends CollectionItem> extends CollectionOptions<T>, Omit<Optional<select.Context<T>, 'id'>, 'collection' | 'open.controlled'> {
6
6
  /**
7
7
  * The initial value of the select.
8
8
  */
@@ -23,7 +23,8 @@ const useSelect = (props) => {
23
23
  getRootNode: useEnvironmentContext(),
24
24
  collection,
25
25
  ...rest,
26
- value: props.defaultValue
26
+ value: props.defaultValue,
27
+ "open.controlled": props.open !== void 0
27
28
  };
28
29
  const context = {
29
30
  ...initialContext,
@@ -32,7 +32,8 @@ const useTooltip = (props) => {
32
32
  const initialContext = {
33
33
  id: react.useId(),
34
34
  getRootNode: environmentContext.useEnvironmentContext(),
35
- ...props
35
+ ...props,
36
+ "open.controlled": props.open !== void 0
36
37
  };
37
38
  const context = {
38
39
  ...initialContext,
@@ -1,7 +1,7 @@
1
1
  import { type PropTypes } from '@zag-js/react';
2
2
  import * as tooltip from '@zag-js/tooltip';
3
3
  import { type Optional } from '../types';
4
- export interface UseTooltipProps extends Optional<tooltip.Context, 'id'> {
4
+ export interface UseTooltipProps extends Omit<Optional<tooltip.Context, 'id'>, 'open.controlled'> {
5
5
  }
6
6
  export interface UseTooltipReturn extends tooltip.Api<PropTypes> {
7
7
  }
@@ -9,7 +9,8 @@ const useTooltip = (props) => {
9
9
  const initialContext = {
10
10
  id: useId(),
11
11
  getRootNode: useEnvironmentContext(),
12
- ...props
12
+ ...props,
13
+ "open.controlled": props.open !== void 0
13
14
  };
14
15
  const context = {
15
16
  ...initialContext,
@@ -10,6 +10,7 @@ const treeViewBranchText = require('./tree-view-branch-text.cjs');
10
10
  const treeViewBranchTrigger = require('./tree-view-branch-trigger.cjs');
11
11
  const treeViewContext = require('./tree-view-context.cjs');
12
12
  const treeViewItem = require('./tree-view-item.cjs');
13
+ const treeViewItemIndicator = require('./tree-view-item-indicator.cjs');
13
14
  const treeViewItemText = require('./tree-view-item-text.cjs');
14
15
  const treeViewLabel = require('./tree-view-label.cjs');
15
16
  const treeViewRoot = require('./tree-view-root.cjs');
@@ -26,6 +27,7 @@ exports.TreeViewBranchText = treeViewBranchText.TreeViewBranchText;
26
27
  exports.TreeViewBranchTrigger = treeViewBranchTrigger.TreeViewBranchTrigger;
27
28
  exports.useTreeViewContext = treeViewContext.useTreeViewContext;
28
29
  exports.TreeViewItem = treeViewItem.TreeViewItem;
30
+ exports.TreeViewItemIndicator = treeViewItemIndicator.TreeViewItemIndicator;
29
31
  exports.TreeViewItemText = treeViewItemText.TreeViewItemText;
30
32
  exports.TreeViewLabel = treeViewLabel.TreeViewLabel;
31
33
  exports.TreeViewRoot = treeViewRoot.TreeViewRoot;
@@ -7,10 +7,11 @@ import { TreeViewBranchText, type TreeViewBranchTextProps } from './tree-view-br
7
7
  import { TreeViewBranchTrigger, type TreeViewBranchTriggerProps } from './tree-view-branch-trigger';
8
8
  import { useTreeViewContext, type TreeViewContext } from './tree-view-context';
9
9
  import { TreeViewItem, type TreeViewItemProps } from './tree-view-item';
10
+ import { TreeViewItemIndicator, type TreeViewItemIndicatorProps } from './tree-view-item-indicator';
10
11
  import { TreeViewItemText, type TreeViewItemTextProps } from './tree-view-item-text';
11
12
  import { TreeViewLabel, type TreeViewLabelProps } from './tree-view-label';
12
13
  import { TreeViewRoot, type TreeViewRootProps } from './tree-view-root';
13
14
  import { TreeViewTree, type TreeViewTreeProps } from './tree-view-tree';
14
15
  export * as TreeView from './tree-view';
15
- export { TreeViewBranch, TreeViewBranchContent, TreeViewBranchControl, TreeViewBranchIndicator, TreeViewBranchText, TreeViewBranchTrigger, TreeViewItem, TreeViewItemText, TreeViewLabel, TreeViewRoot, TreeViewTree, useTreeViewContext, };
16
- export type { TreeViewBranchContentProps, TreeViewBranchControlProps, TreeViewBranchIndicatorProps, TreeViewBranchProps, TreeViewBranchTextProps, TreeViewBranchTriggerProps, TreeViewContext, TreeViewExpandedChangeDetails, TreeViewFocusChangeDetails, TreeViewItemProps, TreeViewItemTextProps, TreeViewLabelProps, TreeViewRootProps, TreeViewSelectionChangeDetails, TreeViewTreeProps, };
16
+ export { TreeViewBranch, TreeViewBranchContent, TreeViewBranchControl, TreeViewBranchIndicator, TreeViewBranchText, TreeViewBranchTrigger, TreeViewItem, TreeViewItemIndicator, TreeViewItemText, TreeViewLabel, TreeViewRoot, TreeViewTree, useTreeViewContext, };
17
+ export type { TreeViewBranchContentProps, TreeViewBranchControlProps, TreeViewBranchIndicatorProps, TreeViewBranchProps, TreeViewBranchTextProps, TreeViewBranchTriggerProps, TreeViewContext, TreeViewExpandedChangeDetails, TreeViewFocusChangeDetails, TreeViewItemIndicatorProps, TreeViewItemProps, TreeViewItemTextProps, TreeViewLabelProps, TreeViewRootProps, TreeViewSelectionChangeDetails, TreeViewTreeProps, };
@@ -6,6 +6,7 @@ export { TreeViewBranchText } from './tree-view-branch-text.mjs';
6
6
  export { TreeViewBranchTrigger } from './tree-view-branch-trigger.mjs';
7
7
  export { useTreeViewContext } from './tree-view-context.mjs';
8
8
  export { TreeViewItem } from './tree-view-item.mjs';
9
+ export { TreeViewItemIndicator } from './tree-view-item-indicator.mjs';
9
10
  export { TreeViewItemText } from './tree-view-item-text.mjs';
10
11
  export { TreeViewLabel } from './tree-view-label.mjs';
11
12
  export { TreeViewRoot } from './tree-view-root.mjs';
@@ -6,19 +6,15 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
6
6
  const jsxRuntime = require('react/jsx-runtime');
7
7
  const react$1 = require('@zag-js/react');
8
8
  const react = require('react');
9
- const createSplitProps = require('../create-split-props.cjs');
10
9
  const factory = require('../factory.cjs');
10
+ const treeViewBranchContext = require('./tree-view-branch-context.cjs');
11
11
  const treeViewContext = require('./tree-view-context.cjs');
12
12
 
13
13
  const TreeViewBranchContent = react.forwardRef(
14
14
  (props, ref) => {
15
- const [branchProps, { ...localProps }] = createSplitProps.createSplitProps()(props, [
16
- "depth",
17
- "id",
18
- "disabled"
19
- ]);
20
15
  const api = treeViewContext.useTreeViewContext();
21
- const mergedProps = react$1.mergeProps(api.getBranchContentProps(branchProps), localProps);
16
+ const branchProps = treeViewBranchContext.useTreeViewBranchContext();
17
+ const mergedProps = react$1.mergeProps(api.getBranchContentProps(branchProps), props);
22
18
  return /* @__PURE__ */ jsxRuntime.jsx(factory.ark.ul, { ...mergedProps, ref });
23
19
  }
24
20
  );
@@ -1,8 +1,6 @@
1
1
  import { ForwardRefExoticComponent, RefAttributes } from 'react';
2
2
  /// <reference types="react" />
3
3
  import { type HTMLArkProps } from '../factory';
4
- import type { Assign } from '../types';
5
- import { type BranchProps } from './tree-view-context';
6
- export interface TreeViewBranchContentProps extends Assign<HTMLArkProps<'ul'>, BranchProps> {
4
+ export interface TreeViewBranchContentProps extends HTMLArkProps<'ul'> {
7
5
  }
8
6
  export declare const TreeViewBranchContent: ForwardRefExoticComponent<TreeViewBranchContentProps & RefAttributes<HTMLUListElement>>;
@@ -2,19 +2,15 @@
2
2
  import { jsx } from 'react/jsx-runtime';
3
3
  import { mergeProps } from '@zag-js/react';
4
4
  import { forwardRef } from 'react';
5
- import { createSplitProps } from '../create-split-props.mjs';
6
5
  import { ark } from '../factory.mjs';
6
+ import { useTreeViewBranchContext } from './tree-view-branch-context.mjs';
7
7
  import { useTreeViewContext } from './tree-view-context.mjs';
8
8
 
9
9
  const TreeViewBranchContent = forwardRef(
10
10
  (props, ref) => {
11
- const [branchProps, { ...localProps }] = createSplitProps()(props, [
12
- "depth",
13
- "id",
14
- "disabled"
15
- ]);
16
11
  const api = useTreeViewContext();
17
- const mergedProps = mergeProps(api.getBranchContentProps(branchProps), localProps);
12
+ const branchProps = useTreeViewBranchContext();
13
+ const mergedProps = mergeProps(api.getBranchContentProps(branchProps), props);
18
14
  return /* @__PURE__ */ jsx(ark.ul, { ...mergedProps, ref });
19
15
  }
20
16
  );
@@ -0,0 +1,15 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
+
6
+ const createContext = require('../create-context.cjs');
7
+
8
+ const [TreeViewBranchProvider, useTreeViewBranchContext] = createContext.createContext({
9
+ name: "TreeViewBranchContext",
10
+ hookName: "useTreeViewBranchContext",
11
+ providerName: "<TreeViewBranchProvider />"
12
+ });
13
+
14
+ exports.TreeViewBranchProvider = TreeViewBranchProvider;
15
+ exports.useTreeViewBranchContext = useTreeViewBranchContext;
@@ -0,0 +1,8 @@
1
+ import { Provider } from 'react';
2
+ /// <reference types="react" />
3
+ import type { ItemProps as ZagItemProps } from '@zag-js/tree-view';
4
+ export interface ItemProps extends Omit<ZagItemProps, 'depth'> {
5
+ }
6
+ export interface TreeViewBranchContext extends ZagItemProps {
7
+ }
8
+ export declare const TreeViewBranchProvider: Provider<TreeViewBranchContext>, useTreeViewBranchContext: () => TreeViewBranchContext;
@@ -0,0 +1,10 @@
1
+ 'use client';
2
+ import { createContext } from '../create-context.mjs';
3
+
4
+ const [TreeViewBranchProvider, useTreeViewBranchContext] = createContext({
5
+ name: "TreeViewBranchContext",
6
+ hookName: "useTreeViewBranchContext",
7
+ providerName: "<TreeViewBranchProvider />"
8
+ });
9
+
10
+ export { TreeViewBranchProvider, useTreeViewBranchContext };
@@ -6,19 +6,15 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
6
6
  const jsxRuntime = require('react/jsx-runtime');
7
7
  const react$1 = require('@zag-js/react');
8
8
  const react = require('react');
9
- const createSplitProps = require('../create-split-props.cjs');
10
9
  const factory = require('../factory.cjs');
10
+ const treeViewBranchContext = require('./tree-view-branch-context.cjs');
11
11
  const treeViewContext = require('./tree-view-context.cjs');
12
12
 
13
13
  const TreeViewBranchControl = react.forwardRef(
14
14
  (props, ref) => {
15
- const [branchProps, { ...localProps }] = createSplitProps.createSplitProps()(props, [
16
- "depth",
17
- "id",
18
- "disabled"
19
- ]);
20
15
  const api = treeViewContext.useTreeViewContext();
21
- const mergedProps = react$1.mergeProps(api.getBranchControlProps(branchProps), localProps);
16
+ const branchProps = treeViewBranchContext.useTreeViewBranchContext();
17
+ const mergedProps = react$1.mergeProps(api.getBranchControlProps(branchProps), props);
22
18
  return /* @__PURE__ */ jsxRuntime.jsx(factory.ark.div, { ...mergedProps, ref });
23
19
  }
24
20
  );
@@ -1,8 +1,6 @@
1
1
  import { ForwardRefExoticComponent, RefAttributes } from 'react';
2
2
  /// <reference types="react" />
3
3
  import { type HTMLArkProps } from '../factory';
4
- import type { Assign } from '../types';
5
- import { type BranchProps } from './tree-view-context';
6
- export interface TreeViewBranchControlProps extends Assign<HTMLArkProps<'div'>, BranchProps> {
4
+ export interface TreeViewBranchControlProps extends HTMLArkProps<'div'> {
7
5
  }
8
6
  export declare const TreeViewBranchControl: ForwardRefExoticComponent<TreeViewBranchControlProps & RefAttributes<HTMLDivElement>>;
@@ -2,19 +2,15 @@
2
2
  import { jsx } from 'react/jsx-runtime';
3
3
  import { mergeProps } from '@zag-js/react';
4
4
  import { forwardRef } from 'react';
5
- import { createSplitProps } from '../create-split-props.mjs';
6
5
  import { ark } from '../factory.mjs';
6
+ import { useTreeViewBranchContext } from './tree-view-branch-context.mjs';
7
7
  import { useTreeViewContext } from './tree-view-context.mjs';
8
8
 
9
9
  const TreeViewBranchControl = forwardRef(
10
10
  (props, ref) => {
11
- const [branchProps, { ...localProps }] = createSplitProps()(props, [
12
- "depth",
13
- "id",
14
- "disabled"
15
- ]);
16
11
  const api = useTreeViewContext();
17
- const mergedProps = mergeProps(api.getBranchControlProps(branchProps), localProps);
12
+ const branchProps = useTreeViewBranchContext();
13
+ const mergedProps = mergeProps(api.getBranchControlProps(branchProps), props);
18
14
  return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });
19
15
  }
20
16
  );
@@ -7,22 +7,19 @@ const jsxRuntime = require('react/jsx-runtime');
7
7
  const anatomy = require('@ark-ui/anatomy');
8
8
  const react$1 = require('@zag-js/react');
9
9
  const react = require('react');
10
- const createSplitProps = require('../create-split-props.cjs');
11
10
  const factory = require('../factory.cjs');
11
+ const treeViewBranchContext = require('./tree-view-branch-context.cjs');
12
12
  const treeViewContext = require('./tree-view-context.cjs');
13
13
 
14
14
  const TreeViewBranchIndicator = react.forwardRef(
15
15
  (props, ref) => {
16
- const [branchProps, { ...localProps }] = createSplitProps.createSplitProps()(props, [
17
- "depth",
18
- "id",
19
- "disabled"
20
- ]);
21
16
  const api = treeViewContext.useTreeViewContext();
17
+ const branchProps = treeViewBranchContext.useTreeViewBranchContext();
22
18
  const mergedProps = react$1.mergeProps(
23
19
  api.getBranchProps(branchProps),
20
+ // TODO use api.getBranchIndicatorProps() when available
24
21
  anatomy.treeViewAnatomy.build().branchIndicator.attrs,
25
- localProps
22
+ props
26
23
  );
27
24
  return /* @__PURE__ */ jsxRuntime.jsx(factory.ark.div, { ...mergedProps, ref });
28
25
  }
@@ -1,8 +1,6 @@
1
1
  import { ForwardRefExoticComponent, RefAttributes } from 'react';
2
2
  /// <reference types="react" />
3
3
  import { type HTMLArkProps } from '../factory';
4
- import type { Assign } from '../types';
5
- import { type BranchProps } from './tree-view-context';
6
- export interface TreeViewBranchIndicatorProps extends Assign<HTMLArkProps<'div'>, BranchProps> {
4
+ export interface TreeViewBranchIndicatorProps extends HTMLArkProps<'div'> {
7
5
  }
8
6
  export declare const TreeViewBranchIndicator: ForwardRefExoticComponent<TreeViewBranchIndicatorProps & RefAttributes<HTMLDivElement>>;
@@ -3,22 +3,19 @@ import { jsx } from 'react/jsx-runtime';
3
3
  import { treeViewAnatomy } from '@ark-ui/anatomy';
4
4
  import { mergeProps } from '@zag-js/react';
5
5
  import { forwardRef } from 'react';
6
- import { createSplitProps } from '../create-split-props.mjs';
7
6
  import { ark } from '../factory.mjs';
7
+ import { useTreeViewBranchContext } from './tree-view-branch-context.mjs';
8
8
  import { useTreeViewContext } from './tree-view-context.mjs';
9
9
 
10
10
  const TreeViewBranchIndicator = forwardRef(
11
11
  (props, ref) => {
12
- const [branchProps, { ...localProps }] = createSplitProps()(props, [
13
- "depth",
14
- "id",
15
- "disabled"
16
- ]);
17
12
  const api = useTreeViewContext();
13
+ const branchProps = useTreeViewBranchContext();
18
14
  const mergedProps = mergeProps(
19
15
  api.getBranchProps(branchProps),
16
+ // TODO use api.getBranchIndicatorProps() when available
20
17
  treeViewAnatomy.build().branchIndicator.attrs,
21
- localProps
18
+ props
22
19
  );
23
20
  return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });
24
21
  }
@@ -6,19 +6,15 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
6
6
  const jsxRuntime = require('react/jsx-runtime');
7
7
  const react$1 = require('@zag-js/react');
8
8
  const react = require('react');
9
- const createSplitProps = require('../create-split-props.cjs');
10
9
  const factory = require('../factory.cjs');
10
+ const treeViewBranchContext = require('./tree-view-branch-context.cjs');
11
11
  const treeViewContext = require('./tree-view-context.cjs');
12
12
 
13
13
  const TreeViewBranchText = react.forwardRef(
14
14
  (props, ref) => {
15
- const [branchProps, { ...localProps }] = createSplitProps.createSplitProps()(props, [
16
- "depth",
17
- "id",
18
- "disabled"
19
- ]);
20
15
  const api = treeViewContext.useTreeViewContext();
21
- const mergedProps = react$1.mergeProps(api.getBranchTextProps(branchProps), localProps);
16
+ const branchProps = treeViewBranchContext.useTreeViewBranchContext();
17
+ const mergedProps = react$1.mergeProps(api.getBranchTextProps(branchProps), props);
22
18
  return /* @__PURE__ */ jsxRuntime.jsx(factory.ark.span, { ...mergedProps, ref });
23
19
  }
24
20
  );
@@ -1,8 +1,6 @@
1
1
  import { ForwardRefExoticComponent, RefAttributes } from 'react';
2
2
  /// <reference types="react" />
3
3
  import { type HTMLArkProps } from '../factory';
4
- import type { Assign } from '../types';
5
- import { type BranchProps } from './tree-view-context';
6
- export interface TreeViewBranchTextProps extends Assign<HTMLArkProps<'span'>, BranchProps> {
4
+ export interface TreeViewBranchTextProps extends HTMLArkProps<'span'> {
7
5
  }
8
6
  export declare const TreeViewBranchText: ForwardRefExoticComponent<TreeViewBranchTextProps & RefAttributes<HTMLSpanElement>>;
@@ -2,19 +2,15 @@
2
2
  import { jsx } from 'react/jsx-runtime';
3
3
  import { mergeProps } from '@zag-js/react';
4
4
  import { forwardRef } from 'react';
5
- import { createSplitProps } from '../create-split-props.mjs';
6
5
  import { ark } from '../factory.mjs';
6
+ import { useTreeViewBranchContext } from './tree-view-branch-context.mjs';
7
7
  import { useTreeViewContext } from './tree-view-context.mjs';
8
8
 
9
9
  const TreeViewBranchText = forwardRef(
10
10
  (props, ref) => {
11
- const [branchProps, { ...localProps }] = createSplitProps()(props, [
12
- "depth",
13
- "id",
14
- "disabled"
15
- ]);
16
11
  const api = useTreeViewContext();
17
- const mergedProps = mergeProps(api.getBranchTextProps(branchProps), localProps);
12
+ const branchProps = useTreeViewBranchContext();
13
+ const mergedProps = mergeProps(api.getBranchTextProps(branchProps), props);
18
14
  return /* @__PURE__ */ jsx(ark.span, { ...mergedProps, ref });
19
15
  }
20
16
  );
@@ -6,19 +6,15 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
6
6
  const jsxRuntime = require('react/jsx-runtime');
7
7
  const react$1 = require('@zag-js/react');
8
8
  const react = require('react');
9
- const createSplitProps = require('../create-split-props.cjs');
10
9
  const factory = require('../factory.cjs');
10
+ const treeViewBranchContext = require('./tree-view-branch-context.cjs');
11
11
  const treeViewContext = require('./tree-view-context.cjs');
12
12
 
13
13
  const TreeViewBranchTrigger = react.forwardRef(
14
14
  (props, ref) => {
15
- const [branchProps, { ...localProps }] = createSplitProps.createSplitProps()(props, [
16
- "depth",
17
- "id",
18
- "disabled"
19
- ]);
20
15
  const api = treeViewContext.useTreeViewContext();
21
- const mergedProps = react$1.mergeProps(api.getBranchTriggerProps(branchProps), localProps);
16
+ const branchProps = treeViewBranchContext.useTreeViewBranchContext();
17
+ const mergedProps = react$1.mergeProps(api.getBranchTriggerProps(branchProps), props);
22
18
  return /* @__PURE__ */ jsxRuntime.jsx(factory.ark.div, { ...mergedProps, ref });
23
19
  }
24
20
  );