@fluentui/react-tree 9.0.0-beta.2 → 9.0.0-beta.21

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 (244) hide show
  1. package/CHANGELOG.json +1073 -1
  2. package/CHANGELOG.md +295 -2
  3. package/dist/index.d.ts +153 -91
  4. package/lib/Tree.js +0 -1
  5. package/lib/Tree.js.map +1 -1
  6. package/lib/TreeItem.js +0 -1
  7. package/lib/TreeItem.js.map +1 -1
  8. package/lib/TreeItemLayout.js +0 -1
  9. package/lib/TreeItemLayout.js.map +1 -1
  10. package/lib/TreeItemPersonaLayout.js +0 -1
  11. package/lib/TreeItemPersonaLayout.js.map +1 -1
  12. package/lib/components/Tree/Tree.js +6 -8
  13. package/lib/components/Tree/Tree.js.map +1 -1
  14. package/lib/components/Tree/Tree.types.js +1 -2
  15. package/lib/components/Tree/Tree.types.js.map +1 -1
  16. package/lib/components/Tree/index.js +1 -2
  17. package/lib/components/Tree/index.js.map +1 -1
  18. package/lib/components/Tree/renderTree.js +7 -13
  19. package/lib/components/Tree/renderTree.js.map +1 -1
  20. package/lib/components/Tree/useRootTree.js +145 -0
  21. package/lib/components/Tree/useRootTree.js.map +1 -0
  22. package/lib/components/Tree/useSubtree.js +35 -0
  23. package/lib/components/Tree/useSubtree.js.map +1 -0
  24. package/lib/components/Tree/useTree.js +9 -103
  25. package/lib/components/Tree/useTree.js.map +1 -1
  26. package/lib/components/Tree/useTreeContextValues.js +12 -22
  27. package/lib/components/Tree/useTreeContextValues.js.map +1 -1
  28. package/lib/components/Tree/useTreeStyles.styles.js +30 -0
  29. package/lib/components/Tree/useTreeStyles.styles.js.map +1 -0
  30. package/lib/components/TreeItem/TreeItem.js +16 -9
  31. package/lib/components/TreeItem/TreeItem.js.map +1 -1
  32. package/lib/components/TreeItem/TreeItem.types.js +1 -2
  33. package/lib/components/TreeItem/TreeItem.types.js.map +1 -1
  34. package/lib/components/TreeItem/index.js +1 -2
  35. package/lib/components/TreeItem/index.js.map +1 -1
  36. package/lib/components/TreeItem/renderTreeItem.js +7 -25
  37. package/lib/components/TreeItem/renderTreeItem.js.map +1 -1
  38. package/lib/components/TreeItem/useTreeItem.js +116 -234
  39. package/lib/components/TreeItem/useTreeItem.js.map +1 -1
  40. package/lib/components/TreeItem/useTreeItemContextValues.js +18 -16
  41. package/lib/components/TreeItem/useTreeItemContextValues.js.map +1 -1
  42. package/lib/components/TreeItem/useTreeItemStyles.styles.js +100 -0
  43. package/lib/components/TreeItem/useTreeItemStyles.styles.js.map +1 -0
  44. package/lib/components/TreeItemChevron.js +24 -0
  45. package/lib/components/TreeItemChevron.js.map +1 -0
  46. package/lib/components/TreeItemLayout/TreeItemLayout.js +8 -8
  47. package/lib/components/TreeItemLayout/TreeItemLayout.js.map +1 -1
  48. package/lib/components/TreeItemLayout/TreeItemLayout.types.js +1 -2
  49. package/lib/components/TreeItemLayout/TreeItemLayout.types.js.map +1 -1
  50. package/lib/components/TreeItemLayout/index.js +1 -2
  51. package/lib/components/TreeItemLayout/index.js.map +1 -1
  52. package/lib/components/TreeItemLayout/renderTreeItemLayout.js +8 -21
  53. package/lib/components/TreeItemLayout/renderTreeItemLayout.js.map +1 -1
  54. package/lib/components/TreeItemLayout/useTreeItemLayout.js +58 -39
  55. package/lib/components/TreeItemLayout/useTreeItemLayout.js.map +1 -1
  56. package/lib/components/TreeItemLayout/useTreeItemLayoutStyles.styles.js +191 -0
  57. package/lib/components/TreeItemLayout/useTreeItemLayoutStyles.styles.js.map +1 -0
  58. package/lib/components/TreeItemPersonaLayout/TreeItemPersonaLayout.js +9 -9
  59. package/lib/components/TreeItemPersonaLayout/TreeItemPersonaLayout.js.map +1 -1
  60. package/lib/components/TreeItemPersonaLayout/TreeItemPersonaLayout.types.js +1 -2
  61. package/lib/components/TreeItemPersonaLayout/TreeItemPersonaLayout.types.js.map +1 -1
  62. package/lib/components/TreeItemPersonaLayout/index.js +1 -2
  63. package/lib/components/TreeItemPersonaLayout/index.js.map +1 -1
  64. package/lib/components/TreeItemPersonaLayout/renderTreeItemPersonaLayout.js +10 -27
  65. package/lib/components/TreeItemPersonaLayout/renderTreeItemPersonaLayout.js.map +1 -1
  66. package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayout.js +35 -48
  67. package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayout.js.map +1 -1
  68. package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutContextValues.js +9 -10
  69. package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutContextValues.js.map +1 -1
  70. package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.styles.js +206 -0
  71. package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.styles.js.map +1 -0
  72. package/lib/contexts/index.js +0 -1
  73. package/lib/contexts/index.js.map +1 -1
  74. package/lib/contexts/treeContext.js +9 -14
  75. package/lib/contexts/treeContext.js.map +1 -1
  76. package/lib/contexts/treeItemContext.js +13 -10
  77. package/lib/contexts/treeItemContext.js.map +1 -1
  78. package/lib/hooks/index.js +0 -1
  79. package/lib/hooks/index.js.map +1 -1
  80. package/lib/hooks/useFlatTree.js +81 -35
  81. package/lib/hooks/useFlatTree.js.map +1 -1
  82. package/lib/hooks/useFlatTreeNavigation.js +65 -62
  83. package/lib/hooks/useFlatTreeNavigation.js.map +1 -1
  84. package/lib/hooks/useHTMLElementWalker.js +78 -76
  85. package/lib/hooks/useHTMLElementWalker.js.map +1 -1
  86. package/lib/hooks/useNestedTreeNavigation.js +49 -49
  87. package/lib/hooks/useNestedTreeNavigation.js.map +1 -1
  88. package/lib/hooks/useOpenItemsState.js +21 -15
  89. package/lib/hooks/useOpenItemsState.js.map +1 -1
  90. package/lib/hooks/useRovingTabIndexes.js +46 -45
  91. package/lib/hooks/useRovingTabIndexes.js.map +1 -1
  92. package/lib/index.js +0 -1
  93. package/lib/index.js.map +1 -1
  94. package/lib/utils/ImmutableSet.js +27 -30
  95. package/lib/utils/ImmutableSet.js.map +1 -1
  96. package/lib/utils/assert.js +5 -5
  97. package/lib/utils/assert.js.map +1 -1
  98. package/lib/utils/createFlatTreeItems.js +113 -0
  99. package/lib/utils/createFlatTreeItems.js.map +1 -0
  100. package/lib/utils/flattenTree.js +58 -28
  101. package/lib/utils/flattenTree.js.map +1 -1
  102. package/lib/utils/getTreeItemValueFromElement.js +4 -0
  103. package/lib/utils/getTreeItemValueFromElement.js.map +1 -0
  104. package/lib/utils/nextTypeAheadElement.js +11 -12
  105. package/lib/utils/nextTypeAheadElement.js.map +1 -1
  106. package/lib/utils/normalizeOpenItems.js +6 -5
  107. package/lib/utils/normalizeOpenItems.js.map +1 -1
  108. package/lib/utils/tokens.js +13 -14
  109. package/lib/utils/tokens.js.map +1 -1
  110. package/lib/utils/treeItemFilter.js +2 -3
  111. package/lib/utils/treeItemFilter.js.map +1 -1
  112. package/lib-commonjs/Tree.js +3 -5
  113. package/lib-commonjs/Tree.js.map +1 -1
  114. package/lib-commonjs/TreeItem.js +3 -5
  115. package/lib-commonjs/TreeItem.js.map +1 -1
  116. package/lib-commonjs/TreeItemLayout.js +3 -5
  117. package/lib-commonjs/TreeItemLayout.js.map +1 -1
  118. package/lib-commonjs/TreeItemPersonaLayout.js +3 -5
  119. package/lib-commonjs/TreeItemPersonaLayout.js.map +1 -1
  120. package/lib-commonjs/components/Tree/Tree.js +17 -23
  121. package/lib-commonjs/components/Tree/Tree.js.map +1 -1
  122. package/lib-commonjs/components/Tree/Tree.types.js +3 -3
  123. package/lib-commonjs/components/Tree/Tree.types.js.map +1 -1
  124. package/lib-commonjs/components/Tree/index.js +8 -10
  125. package/lib-commonjs/components/Tree/index.js.map +1 -1
  126. package/lib-commonjs/components/Tree/renderTree.js +14 -19
  127. package/lib-commonjs/components/Tree/renderTree.js.map +1 -1
  128. package/lib-commonjs/components/Tree/useRootTree.js +149 -0
  129. package/lib-commonjs/components/Tree/useRootTree.js.map +1 -0
  130. package/lib-commonjs/components/Tree/useSubtree.js +39 -0
  131. package/lib-commonjs/components/Tree/useSubtree.js.map +1 -0
  132. package/lib-commonjs/components/Tree/useTree.js +16 -116
  133. package/lib-commonjs/components/Tree/useTree.js.map +1 -1
  134. package/lib-commonjs/components/Tree/useTreeContextValues.js +17 -26
  135. package/lib-commonjs/components/Tree/useTreeContextValues.js.map +1 -1
  136. package/lib-commonjs/components/Tree/useTreeStyles.styles.js +53 -0
  137. package/lib-commonjs/components/Tree/useTreeStyles.styles.js.map +1 -0
  138. package/lib-commonjs/components/TreeItem/TreeItem.js +17 -18
  139. package/lib-commonjs/components/TreeItem/TreeItem.js.map +1 -1
  140. package/lib-commonjs/components/TreeItem/TreeItem.types.js +3 -4
  141. package/lib-commonjs/components/TreeItem/TreeItem.types.js.map +1 -1
  142. package/lib-commonjs/components/TreeItem/index.js +7 -9
  143. package/lib-commonjs/components/TreeItem/index.js.map +1 -1
  144. package/lib-commonjs/components/TreeItem/renderTreeItem.js +14 -33
  145. package/lib-commonjs/components/TreeItem/renderTreeItem.js.map +1 -1
  146. package/lib-commonjs/components/TreeItem/useTreeItem.js +126 -251
  147. package/lib-commonjs/components/TreeItem/useTreeItem.js.map +1 -1
  148. package/lib-commonjs/components/TreeItem/useTreeItemContextValues.js +23 -20
  149. package/lib-commonjs/components/TreeItem/useTreeItemContextValues.js.map +1 -1
  150. package/lib-commonjs/components/TreeItem/useTreeItemStyles.styles.js +202 -0
  151. package/lib-commonjs/components/TreeItem/useTreeItemStyles.styles.js.map +1 -0
  152. package/lib-commonjs/components/TreeItemChevron.js +33 -0
  153. package/lib-commonjs/components/TreeItemChevron.js.map +1 -0
  154. package/lib-commonjs/components/TreeItemLayout/TreeItemLayout.js +15 -16
  155. package/lib-commonjs/components/TreeItemLayout/TreeItemLayout.js.map +1 -1
  156. package/lib-commonjs/components/TreeItemLayout/TreeItemLayout.types.js +1 -3
  157. package/lib-commonjs/components/TreeItemLayout/TreeItemLayout.types.js.map +1 -1
  158. package/lib-commonjs/components/TreeItemLayout/index.js +7 -9
  159. package/lib-commonjs/components/TreeItemLayout/index.js.map +1 -1
  160. package/lib-commonjs/components/TreeItemLayout/renderTreeItemLayout.js +14 -28
  161. package/lib-commonjs/components/TreeItemLayout/renderTreeItemLayout.js.map +1 -1
  162. package/lib-commonjs/components/TreeItemLayout/useTreeItemLayout.js +64 -52
  163. package/lib-commonjs/components/TreeItemLayout/useTreeItemLayout.js.map +1 -1
  164. package/lib-commonjs/components/TreeItemLayout/useTreeItemLayoutStyles.styles.js +321 -0
  165. package/lib-commonjs/components/TreeItemLayout/useTreeItemLayoutStyles.styles.js.map +1 -0
  166. package/lib-commonjs/components/TreeItemPersonaLayout/TreeItemPersonaLayout.js +17 -18
  167. package/lib-commonjs/components/TreeItemPersonaLayout/TreeItemPersonaLayout.js.map +1 -1
  168. package/lib-commonjs/components/TreeItemPersonaLayout/TreeItemPersonaLayout.types.js +1 -3
  169. package/lib-commonjs/components/TreeItemPersonaLayout/TreeItemPersonaLayout.types.js.map +1 -1
  170. package/lib-commonjs/components/TreeItemPersonaLayout/index.js +7 -9
  171. package/lib-commonjs/components/TreeItemPersonaLayout/index.js.map +1 -1
  172. package/lib-commonjs/components/TreeItemPersonaLayout/renderTreeItemPersonaLayout.js +17 -35
  173. package/lib-commonjs/components/TreeItemPersonaLayout/renderTreeItemPersonaLayout.js.map +1 -1
  174. package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayout.js +42 -61
  175. package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayout.js.map +1 -1
  176. package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutContextValues.js +16 -15
  177. package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutContextValues.js.map +1 -1
  178. package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.styles.js +375 -0
  179. package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.styles.js.map +1 -0
  180. package/lib-commonjs/contexts/index.js +4 -6
  181. package/lib-commonjs/contexts/index.js.map +1 -1
  182. package/lib-commonjs/contexts/treeContext.js +23 -18
  183. package/lib-commonjs/contexts/treeContext.js.map +1 -1
  184. package/lib-commonjs/contexts/treeItemContext.js +27 -13
  185. package/lib-commonjs/contexts/treeItemContext.js.map +1 -1
  186. package/lib-commonjs/hooks/index.js +5 -7
  187. package/lib-commonjs/hooks/index.js.map +1 -1
  188. package/lib-commonjs/hooks/useFlatTree.js +88 -52
  189. package/lib-commonjs/hooks/useFlatTree.js.map +1 -1
  190. package/lib-commonjs/hooks/useFlatTreeNavigation.js +76 -72
  191. package/lib-commonjs/hooks/useFlatTreeNavigation.js.map +1 -1
  192. package/lib-commonjs/hooks/useHTMLElementWalker.js +92 -83
  193. package/lib-commonjs/hooks/useHTMLElementWalker.js.map +1 -1
  194. package/lib-commonjs/hooks/useNestedTreeNavigation.js +59 -58
  195. package/lib-commonjs/hooks/useNestedTreeNavigation.js.map +1 -1
  196. package/lib-commonjs/hooks/useOpenItemsState.js +30 -22
  197. package/lib-commonjs/hooks/useOpenItemsState.js.map +1 -1
  198. package/lib-commonjs/hooks/useRovingTabIndexes.js +54 -53
  199. package/lib-commonjs/hooks/useRovingTabIndexes.js.map +1 -1
  200. package/lib-commonjs/index.js +46 -181
  201. package/lib-commonjs/index.js.map +1 -1
  202. package/lib-commonjs/utils/ImmutableSet.js +37 -38
  203. package/lib-commonjs/utils/ImmutableSet.js.map +1 -1
  204. package/lib-commonjs/utils/assert.js +11 -9
  205. package/lib-commonjs/utils/assert.js.map +1 -1
  206. package/lib-commonjs/utils/createFlatTreeItems.js +127 -0
  207. package/lib-commonjs/utils/createFlatTreeItems.js.map +1 -0
  208. package/lib-commonjs/utils/flattenTree.js +25 -33
  209. package/lib-commonjs/utils/flattenTree.js.map +1 -1
  210. package/lib-commonjs/utils/getTreeItemValueFromElement.js +18 -0
  211. package/lib-commonjs/utils/getTreeItemValueFromElement.js.map +1 -0
  212. package/lib-commonjs/utils/nextTypeAheadElement.js +16 -16
  213. package/lib-commonjs/utils/nextTypeAheadElement.js.map +1 -1
  214. package/lib-commonjs/utils/normalizeOpenItems.js +11 -9
  215. package/lib-commonjs/utils/normalizeOpenItems.js.map +1 -1
  216. package/lib-commonjs/utils/tokens.js +28 -20
  217. package/lib-commonjs/utils/tokens.js.map +1 -1
  218. package/lib-commonjs/utils/treeItemFilter.js +7 -7
  219. package/lib-commonjs/utils/treeItemFilter.js.map +1 -1
  220. package/package.json +23 -17
  221. package/lib/components/Tree/useTreeStyles.js +0 -20
  222. package/lib/components/Tree/useTreeStyles.js.map +0 -1
  223. package/lib/components/TreeItem/useTreeItemStyles.js +0 -203
  224. package/lib/components/TreeItem/useTreeItemStyles.js.map +0 -1
  225. package/lib/components/TreeItemLayout/useTreeItemLayoutStyles.js +0 -98
  226. package/lib/components/TreeItemLayout/useTreeItemLayoutStyles.js.map +0 -1
  227. package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.js +0 -115
  228. package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.js.map +0 -1
  229. package/lib/utils/createUnfilteredFlatTree.js +0 -77
  230. package/lib/utils/createUnfilteredFlatTree.js.map +0 -1
  231. package/lib/utils/createVisibleFlatTree.js +0 -80
  232. package/lib/utils/createVisibleFlatTree.js.map +0 -1
  233. package/lib-commonjs/components/Tree/useTreeStyles.js +0 -27
  234. package/lib-commonjs/components/Tree/useTreeStyles.js.map +0 -1
  235. package/lib-commonjs/components/TreeItem/useTreeItemStyles.js +0 -210
  236. package/lib-commonjs/components/TreeItem/useTreeItemStyles.js.map +0 -1
  237. package/lib-commonjs/components/TreeItemLayout/useTreeItemLayoutStyles.js +0 -105
  238. package/lib-commonjs/components/TreeItemLayout/useTreeItemLayoutStyles.js.map +0 -1
  239. package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.js +0 -122
  240. package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.js.map +0 -1
  241. package/lib-commonjs/utils/createUnfilteredFlatTree.js +0 -84
  242. package/lib-commonjs/utils/createUnfilteredFlatTree.js.map +0 -1
  243. package/lib-commonjs/utils/createVisibleFlatTree.js +0 -87
  244. package/lib-commonjs/utils/createVisibleFlatTree.js.map +0 -1
@@ -0,0 +1,149 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "useRootTree", {
6
+ enumerable: true,
7
+ get: ()=>useRootTree
8
+ });
9
+ const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
10
+ const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
11
+ const _reactDom = /*#__PURE__*/ _interopRequireWildcard(require("react-dom"));
12
+ const _reactUtilities = require("@fluentui/react-utilities");
13
+ const _hooks = require("../../hooks");
14
+ const _tokens = require("../../utils/tokens");
15
+ function useRootTree(props, ref) {
16
+ warnIfNoProperPropsRootTree(props);
17
+ const { appearance ='subtle' , size ='medium' } = props;
18
+ const [openItems, updateOpenItems] = (0, _hooks.useOpenItemsState)(props);
19
+ const [navigate, navigationRef] = (0, _hooks.useNestedTreeNavigation)();
20
+ const requestOpenChange = (data)=>{
21
+ var _props_onOpenChange;
22
+ (_props_onOpenChange = props.onOpenChange) === null || _props_onOpenChange === void 0 ? void 0 : _props_onOpenChange.call(props, data.event, data);
23
+ if (data.event.isDefaultPrevented()) {
24
+ return;
25
+ }
26
+ return updateOpenItems(data);
27
+ };
28
+ const requestNavigation = (data)=>{
29
+ var _props_onNavigation_unstable;
30
+ (_props_onNavigation_unstable = props.onNavigation_unstable) === null || _props_onNavigation_unstable === void 0 ? void 0 : _props_onNavigation_unstable.call(props, data.event, data);
31
+ if (data.event.isDefaultPrevented()) {
32
+ return;
33
+ }
34
+ navigate(data);
35
+ if (data.type === _tokens.treeDataTypes.ArrowDown || data.type === _tokens.treeDataTypes.ArrowUp) {
36
+ data.event.preventDefault();
37
+ }
38
+ };
39
+ const handleTreeItemClick = ({ event , value , itemType , type })=>{
40
+ _reactDom.unstable_batchedUpdates(()=>{
41
+ requestOpenChange({
42
+ event,
43
+ value,
44
+ open: itemType === 'branch' && !openItems.has(value),
45
+ type,
46
+ target: event.currentTarget
47
+ });
48
+ requestNavigation({
49
+ event,
50
+ value,
51
+ target: event.currentTarget,
52
+ type: _tokens.treeDataTypes.Click
53
+ });
54
+ });
55
+ };
56
+ const handleTreeItemKeyDown = ({ event , type , value , itemType })=>{
57
+ const open = openItems.has(value);
58
+ switch(type){
59
+ case _tokens.treeDataTypes.ArrowRight:
60
+ if (itemType === 'leaf') {
61
+ return;
62
+ }
63
+ if (!open) {
64
+ return requestOpenChange({
65
+ event,
66
+ value,
67
+ open: true,
68
+ type: _tokens.treeDataTypes.ArrowRight,
69
+ target: event.currentTarget
70
+ });
71
+ }
72
+ return requestNavigation({
73
+ event,
74
+ value,
75
+ type,
76
+ target: event.currentTarget
77
+ });
78
+ case _tokens.treeDataTypes.Enter:
79
+ return requestOpenChange({
80
+ event,
81
+ value,
82
+ open: itemType === 'branch' && !open,
83
+ type: _tokens.treeDataTypes.Enter,
84
+ target: event.currentTarget
85
+ });
86
+ case _tokens.treeDataTypes.ArrowLeft:
87
+ if (open && itemType === 'branch') {
88
+ return requestOpenChange({
89
+ event,
90
+ value,
91
+ open: false,
92
+ type: _tokens.treeDataTypes.ArrowLeft,
93
+ target: event.currentTarget
94
+ });
95
+ }
96
+ return requestNavigation({
97
+ event,
98
+ value,
99
+ target: event.currentTarget,
100
+ type: _tokens.treeDataTypes.ArrowLeft
101
+ });
102
+ case _tokens.treeDataTypes.End:
103
+ case _tokens.treeDataTypes.Home:
104
+ case _tokens.treeDataTypes.ArrowUp:
105
+ case _tokens.treeDataTypes.ArrowDown:
106
+ case _tokens.treeDataTypes.TypeAhead:
107
+ return requestNavigation({
108
+ event,
109
+ value,
110
+ type,
111
+ target: event.currentTarget
112
+ });
113
+ }
114
+ };
115
+ const requestTreeResponse = (0, _reactUtilities.useEventCallback)((request)=>{
116
+ switch(request.event.type){
117
+ case 'click':
118
+ // casting is required here as we're narrowing down the event to only click events
119
+ return handleTreeItemClick(request);
120
+ case 'keydown':
121
+ // casting is required here as we're narrowing down the event to only keyboard events
122
+ return handleTreeItemKeyDown(request);
123
+ }
124
+ });
125
+ return {
126
+ components: {
127
+ root: 'div'
128
+ },
129
+ open: true,
130
+ appearance,
131
+ size,
132
+ level: 1,
133
+ openItems,
134
+ requestTreeResponse,
135
+ root: (0, _reactUtilities.getNativeElementProps)('div', {
136
+ ref: (0, _reactUtilities.useMergedRefs)(navigationRef, ref),
137
+ role: 'tree',
138
+ ...props
139
+ })
140
+ };
141
+ }
142
+ function warnIfNoProperPropsRootTree(props) {
143
+ if (process.env.NODE_ENV === 'development') {
144
+ if (!props['aria-label'] && !props['aria-labelledby']) {
145
+ // eslint-disable-next-line no-console
146
+ console.warn('Tree must have either a `aria-label` or `aria-labelledby` property defined');
147
+ }
148
+ }
149
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["useRootTree.js"],"sourcesContent":["import * as React from 'react';\nimport * as ReactDOM from 'react-dom';\nimport { getNativeElementProps, useEventCallback, useMergedRefs } from '@fluentui/react-utilities';\nimport { useNestedTreeNavigation, useOpenItemsState } from '../../hooks';\nimport { treeDataTypes } from '../../utils/tokens';\n/**\n * Create the state required to render the root level Tree.\n *\n * @param props - props from this instance of Tree\n * @param ref - reference to root HTMLElement of Tree\n */ export function useRootTree(props, ref) {\n warnIfNoProperPropsRootTree(props);\n const { appearance ='subtle' , size ='medium' } = props;\n const [openItems, updateOpenItems] = useOpenItemsState(props);\n const [navigate, navigationRef] = useNestedTreeNavigation();\n const requestOpenChange = (data)=>{\n var _props_onOpenChange;\n (_props_onOpenChange = props.onOpenChange) === null || _props_onOpenChange === void 0 ? void 0 : _props_onOpenChange.call(props, data.event, data);\n if (data.event.isDefaultPrevented()) {\n return;\n }\n return updateOpenItems(data);\n };\n const requestNavigation = (data)=>{\n var _props_onNavigation_unstable;\n (_props_onNavigation_unstable = props.onNavigation_unstable) === null || _props_onNavigation_unstable === void 0 ? void 0 : _props_onNavigation_unstable.call(props, data.event, data);\n if (data.event.isDefaultPrevented()) {\n return;\n }\n navigate(data);\n if (data.type === treeDataTypes.ArrowDown || data.type === treeDataTypes.ArrowUp) {\n data.event.preventDefault();\n }\n };\n const handleTreeItemClick = ({ event , value , itemType , type })=>{\n ReactDOM.unstable_batchedUpdates(()=>{\n requestOpenChange({\n event,\n value,\n open: itemType === 'branch' && !openItems.has(value),\n type,\n target: event.currentTarget\n });\n requestNavigation({\n event,\n value,\n target: event.currentTarget,\n type: treeDataTypes.Click\n });\n });\n };\n const handleTreeItemKeyDown = ({ event , type , value , itemType })=>{\n const open = openItems.has(value);\n switch(type){\n case treeDataTypes.ArrowRight:\n if (itemType === 'leaf') {\n return;\n }\n if (!open) {\n return requestOpenChange({\n event,\n value,\n open: true,\n type: treeDataTypes.ArrowRight,\n target: event.currentTarget\n });\n }\n return requestNavigation({\n event,\n value,\n type,\n target: event.currentTarget\n });\n case treeDataTypes.Enter:\n return requestOpenChange({\n event,\n value,\n open: itemType === 'branch' && !open,\n type: treeDataTypes.Enter,\n target: event.currentTarget\n });\n case treeDataTypes.ArrowLeft:\n if (open && itemType === 'branch') {\n return requestOpenChange({\n event,\n value,\n open: false,\n type: treeDataTypes.ArrowLeft,\n target: event.currentTarget\n });\n }\n return requestNavigation({\n event,\n value,\n target: event.currentTarget,\n type: treeDataTypes.ArrowLeft\n });\n case treeDataTypes.End:\n case treeDataTypes.Home:\n case treeDataTypes.ArrowUp:\n case treeDataTypes.ArrowDown:\n case treeDataTypes.TypeAhead:\n return requestNavigation({\n event,\n value,\n type,\n target: event.currentTarget\n });\n }\n };\n const requestTreeResponse = useEventCallback((request)=>{\n switch(request.event.type){\n case 'click':\n // casting is required here as we're narrowing down the event to only click events\n return handleTreeItemClick(request);\n case 'keydown':\n // casting is required here as we're narrowing down the event to only keyboard events\n return handleTreeItemKeyDown(request);\n }\n });\n return {\n components: {\n root: 'div'\n },\n open: true,\n appearance,\n size,\n level: 1,\n openItems,\n requestTreeResponse,\n root: getNativeElementProps('div', {\n ref: useMergedRefs(navigationRef, ref),\n role: 'tree',\n ...props\n })\n };\n}\nfunction warnIfNoProperPropsRootTree(props) {\n if (process.env.NODE_ENV === 'development') {\n if (!props['aria-label'] && !props['aria-labelledby']) {\n // eslint-disable-next-line no-console\n console.warn('Tree must have either a `aria-label` or `aria-labelledby` property defined');\n }\n }\n}\n"],"names":["useRootTree","props","ref","warnIfNoProperPropsRootTree","appearance","size","openItems","updateOpenItems","useOpenItemsState","navigate","navigationRef","useNestedTreeNavigation","requestOpenChange","data","_props_onOpenChange","onOpenChange","call","event","isDefaultPrevented","requestNavigation","_props_onNavigation_unstable","onNavigation_unstable","type","treeDataTypes","ArrowDown","ArrowUp","preventDefault","handleTreeItemClick","value","itemType","ReactDOM","unstable_batchedUpdates","open","has","target","currentTarget","Click","handleTreeItemKeyDown","ArrowRight","Enter","ArrowLeft","End","Home","TypeAhead","requestTreeResponse","useEventCallback","request","components","root","level","getNativeElementProps","useMergedRefs","role","process","env","NODE_ENV","console","warn"],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "useSubtree", {
6
+ enumerable: true,
7
+ get: ()=>useSubtree
8
+ });
9
+ const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
10
+ const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
11
+ const _reactUtilities = require("@fluentui/react-utilities");
12
+ const _contexts = require("../../contexts");
13
+ function useSubtree(props, ref) {
14
+ const contextAppearance = (0, _contexts.useTreeContext_unstable)((ctx)=>ctx.appearance);
15
+ const contextSize = (0, _contexts.useTreeContext_unstable)((ctx)=>ctx.size);
16
+ const subtreeRef = (0, _contexts.useTreeItemContext_unstable)((ctx)=>ctx.subtreeRef);
17
+ const value = (0, _contexts.useTreeItemContext_unstable)((ctx)=>ctx.value);
18
+ const { appearance =contextAppearance !== null && contextAppearance !== void 0 ? contextAppearance : 'subtle' , size =contextSize !== null && contextSize !== void 0 ? contextSize : 'medium' } = props;
19
+ const parentLevel = (0, _contexts.useTreeContext_unstable)((ctx)=>ctx.level);
20
+ const openItems = (0, _contexts.useTreeContext_unstable)((ctx)=>ctx.openItems);
21
+ const requestTreeResponse = (0, _contexts.useTreeContext_unstable)((ctx)=>ctx.requestTreeResponse);
22
+ const open = openItems.has(value);
23
+ return {
24
+ open,
25
+ components: {
26
+ root: 'div'
27
+ },
28
+ appearance,
29
+ size,
30
+ level: parentLevel + 1,
31
+ root: (0, _reactUtilities.getNativeElementProps)('div', {
32
+ ref: (0, _reactUtilities.useMergedRefs)(ref, subtreeRef),
33
+ role: 'group',
34
+ ...props
35
+ }),
36
+ openItems,
37
+ requestTreeResponse
38
+ };
39
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["useSubtree.js"],"sourcesContent":["import * as React from 'react';\nimport { getNativeElementProps, useMergedRefs } from '@fluentui/react-utilities';\nimport { useTreeContext_unstable, useTreeItemContext_unstable } from '../../contexts';\n/**\n * Create the state required to render a sub-level Tree.\n *\n * @param props - props from this instance of Tree\n * @param ref - reference to root HTMLElement of Tree\n */ export function useSubtree(props, ref) {\n const contextAppearance = useTreeContext_unstable((ctx)=>ctx.appearance);\n const contextSize = useTreeContext_unstable((ctx)=>ctx.size);\n const subtreeRef = useTreeItemContext_unstable((ctx)=>ctx.subtreeRef);\n const value = useTreeItemContext_unstable((ctx)=>ctx.value);\n const { appearance =contextAppearance !== null && contextAppearance !== void 0 ? contextAppearance : 'subtle' , size =contextSize !== null && contextSize !== void 0 ? contextSize : 'medium' } = props;\n const parentLevel = useTreeContext_unstable((ctx)=>ctx.level);\n const openItems = useTreeContext_unstable((ctx)=>ctx.openItems);\n const requestTreeResponse = useTreeContext_unstable((ctx)=>ctx.requestTreeResponse);\n const open = openItems.has(value);\n return {\n open,\n components: {\n root: 'div'\n },\n appearance,\n size,\n level: parentLevel + 1,\n root: getNativeElementProps('div', {\n ref: useMergedRefs(ref, subtreeRef),\n role: 'group',\n ...props\n }),\n openItems,\n requestTreeResponse\n };\n}\n"],"names":["useSubtree","props","ref","contextAppearance","useTreeContext_unstable","ctx","appearance","contextSize","size","subtreeRef","useTreeItemContext_unstable","value","parentLevel","level","openItems","requestTreeResponse","open","has","components","root","getNativeElementProps","useMergedRefs","role"],"mappings":";;;;+BAQoBA;;aAAAA;;;6DARG;gCAC8B;0BACgB;AAM1D,SAASA,WAAWC,KAAK,EAAEC,GAAG,EAAE;IACvC,MAAMC,oBAAoBC,IAAAA,iCAAuB,EAAC,CAACC,MAAMA,IAAIC,UAAU;IACvE,MAAMC,cAAcH,IAAAA,iCAAuB,EAAC,CAACC,MAAMA,IAAIG,IAAI;IAC3D,MAAMC,aAAaC,IAAAA,qCAA2B,EAAC,CAACL,MAAMA,IAAII,UAAU;IACpE,MAAME,QAAQD,IAAAA,qCAA2B,EAAC,CAACL,MAAMA,IAAIM,KAAK;IAC1D,MAAM,EAAEL,YAAYH,sBAAsB,IAAI,IAAIA,sBAAsB,KAAK,IAAIA,oBAAoB,QAAQ,CAAA,EAAGK,MAAMD,gBAAgB,IAAI,IAAIA,gBAAgB,KAAK,IAAIA,cAAc,QAAQ,CAAA,EAAG,GAAGN;IACnM,MAAMW,cAAcR,IAAAA,iCAAuB,EAAC,CAACC,MAAMA,IAAIQ,KAAK;IAC5D,MAAMC,YAAYV,IAAAA,iCAAuB,EAAC,CAACC,MAAMA,IAAIS,SAAS;IAC9D,MAAMC,sBAAsBX,IAAAA,iCAAuB,EAAC,CAACC,MAAMA,IAAIU,mBAAmB;IAClF,MAAMC,OAAOF,UAAUG,GAAG,CAACN;IAC3B,OAAO;QACHK;QACAE,YAAY;YACRC,MAAM;QACV;QACAb;QACAE;QACAK,OAAOD,cAAc;QACrBO,MAAMC,IAAAA,qCAAqB,EAAC,OAAO;YAC/BlB,KAAKmB,IAAAA,6BAAa,EAACnB,KAAKO;YACxBa,MAAM;YACN,GAAGrB,KAAK;QACZ;QACAa;QACAC;IACJ;AACJ"}
@@ -1,120 +1,20 @@
1
1
  "use strict";
2
-
3
2
  Object.defineProperty(exports, "__esModule", {
4
- value: true
3
+ value: true
5
4
  });
6
- exports.useTree_unstable = void 0;
7
- const react_utilities_1 = /*#__PURE__*/require("@fluentui/react-utilities");
8
- const contexts_1 = /*#__PURE__*/require("../../contexts");
9
- const hooks_1 = /*#__PURE__*/require("../../hooks");
10
- const tokens_1 = /*#__PURE__*/require("../../utils/tokens");
11
- /**
12
- * Create the state required to render Tree.
13
- *
14
- * The returned state can be modified with hooks such as useTreeStyles_unstable,
15
- * before being passed to renderTree_unstable.
16
- *
17
- * @param props - props from this instance of Tree
18
- * @param ref - reference to root HTMLElement of Tree
19
- */
20
- const useTree_unstable = (props, ref) => {
21
- const isSubtree = contexts_1.useTreeContext_unstable(ctx => ctx.level > 0);
22
- // as isSubtree is static, this doesn't break rule of hooks
23
- // and if this becomes an issue later on, this can be easily converted
24
- // eslint-disable-next-line react-hooks/rules-of-hooks
25
- return isSubtree ? useSubtree(props, ref) : useRootTree(props, ref);
5
+ Object.defineProperty(exports, "useTree_unstable", {
6
+ enumerable: true,
7
+ get: ()=>useTree_unstable
8
+ });
9
+ const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
10
+ const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
11
+ const _contexts = require("../../contexts");
12
+ const _useSubtree = require("./useSubtree");
13
+ const _useRootTree = require("./useRootTree");
14
+ const useTree_unstable = (props, ref)=>{
15
+ const isSubtree = (0, _contexts.useTreeContext_unstable)((ctx)=>ctx.level > 0);
16
+ // as isSubtree is static, this doesn't break rule of hooks
17
+ // and if this becomes an issue later on, this can be easily converted
18
+ // eslint-disable-next-line react-hooks/rules-of-hooks
19
+ return isSubtree ? (0, _useSubtree.useSubtree)(props, ref) : (0, _useRootTree.useRootTree)(props, ref);
26
20
  };
27
- exports.useTree_unstable = useTree_unstable;
28
- /**
29
- * Create the state required to render a sub-level Tree.
30
- *
31
- * @param props - props from this instance of Tree
32
- * @param ref - reference to root HTMLElement of Tree
33
- */
34
- function useSubtree(props, ref) {
35
- const contextAppearance = contexts_1.useTreeContext_unstable(ctx => ctx.appearance);
36
- const contextSize = contexts_1.useTreeContext_unstable(ctx => ctx.size);
37
- const {
38
- appearance = contextAppearance !== null && contextAppearance !== void 0 ? contextAppearance : 'subtle',
39
- size = contextSize !== null && contextSize !== void 0 ? contextSize : 'medium'
40
- } = props;
41
- const parentLevel = contexts_1.useTreeContext_unstable(ctx => ctx.level);
42
- const openItems = contexts_1.useTreeContext_unstable(ctx => ctx.openItems);
43
- const requestOpenChange = contexts_1.useTreeContext_unstable(ctx => ctx.requestOpenChange);
44
- const requestNavigation = contexts_1.useTreeContext_unstable(ctx => ctx.requestNavigation);
45
- return {
46
- components: {
47
- root: 'div'
48
- },
49
- appearance,
50
- size,
51
- level: parentLevel + 1,
52
- root: react_utilities_1.getNativeElementProps('div', {
53
- ref,
54
- role: 'group',
55
- ...props
56
- }),
57
- openItems,
58
- requestOpenChange,
59
- requestNavigation
60
- };
61
- }
62
- /**
63
- * Create the state required to render the root level Tree.
64
- *
65
- * @param props - props from this instance of Tree
66
- * @param ref - reference to root HTMLElement of Tree
67
- */
68
- function useRootTree(props, ref) {
69
- warnIfNoProperPropsRootTree(props);
70
- const {
71
- appearance = 'subtle',
72
- size = 'medium'
73
- } = props;
74
- const [openItems, updateOpenItems] = hooks_1.useOpenItemsState(props);
75
- const [navigate, navigationRef] = hooks_1.useNestedTreeNavigation();
76
- const requestOpenChange = react_utilities_1.useEventCallback(data => {
77
- var _a;
78
- (_a = props.onOpenChange) === null || _a === void 0 ? void 0 : _a.call(props, data.event, data);
79
- if (data.event.isDefaultPrevented()) {
80
- return;
81
- }
82
- return updateOpenItems(data);
83
- });
84
- const requestNavigation = react_utilities_1.useEventCallback(data => {
85
- var _a;
86
- (_a = props.onNavigation_unstable) === null || _a === void 0 ? void 0 : _a.call(props, data.event, data);
87
- if (data.event.isDefaultPrevented()) {
88
- return;
89
- }
90
- navigate(data);
91
- if (data.type === tokens_1.treeDataTypes.arrowDown || data.type === tokens_1.treeDataTypes.arrowUp) {
92
- data.event.preventDefault();
93
- }
94
- });
95
- return {
96
- components: {
97
- root: 'div'
98
- },
99
- appearance,
100
- size,
101
- level: 1,
102
- openItems,
103
- requestOpenChange,
104
- requestNavigation,
105
- root: react_utilities_1.getNativeElementProps('div', {
106
- ref: react_utilities_1.useMergedRefs(navigationRef, ref),
107
- role: 'tree',
108
- ...props
109
- })
110
- };
111
- }
112
- function warnIfNoProperPropsRootTree(props) {
113
- if (process.env.NODE_ENV === 'development') {
114
- if (!props['aria-label'] && !props['aria-labelledby']) {
115
- // eslint-disable-next-line no-console
116
- console.warn('Tree must have either a `aria-label` or `aria-labelledby` property defined');
117
- }
118
- }
119
- }
120
- //# sourceMappingURL=useTree.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["react_utilities_1","require","contexts_1","hooks_1","tokens_1","useTree_unstable","props","ref","isSubtree","useTreeContext_unstable","ctx","level","useSubtree","useRootTree","exports","contextAppearance","appearance","contextSize","size","parentLevel","openItems","requestOpenChange","requestNavigation","components","root","getNativeElementProps","role","warnIfNoProperPropsRootTree","updateOpenItems","useOpenItemsState","navigate","navigationRef","useNestedTreeNavigation","useEventCallback","data","_a","onOpenChange","call","event","isDefaultPrevented","onNavigation_unstable","type","treeDataTypes","arrowDown","arrowUp","preventDefault","useMergedRefs","process","env","NODE_ENV","console","warn"],"sources":["../src/packages/react-components/react-tree/src/components/Tree/useTree.ts"],"sourcesContent":["import * as React from 'react';\nimport { getNativeElementProps, useEventCallback, useMergedRefs } from '@fluentui/react-utilities';\nimport { TreeOpenChangeData, TreeProps, TreeState, TreeNavigationData_unstable } from './Tree.types';\nimport { useTreeContext_unstable } from '../../contexts';\nimport { useNestedTreeNavigation, useOpenItemsState } from '../../hooks';\nimport { treeDataTypes } from '../../utils/tokens';\n\n/**\n * Create the state required to render Tree.\n *\n * The returned state can be modified with hooks such as useTreeStyles_unstable,\n * before being passed to renderTree_unstable.\n *\n * @param props - props from this instance of Tree\n * @param ref - reference to root HTMLElement of Tree\n */\nexport const useTree_unstable = (props: TreeProps, ref: React.Ref<HTMLElement>): TreeState => {\n const isSubtree = useTreeContext_unstable(ctx => ctx.level > 0);\n // as isSubtree is static, this doesn't break rule of hooks\n // and if this becomes an issue later on, this can be easily converted\n // eslint-disable-next-line react-hooks/rules-of-hooks\n return isSubtree ? useSubtree(props, ref) : useRootTree(props, ref);\n};\n\n/**\n * Create the state required to render a sub-level Tree.\n *\n * @param props - props from this instance of Tree\n * @param ref - reference to root HTMLElement of Tree\n */\nfunction useSubtree(props: TreeProps, ref: React.Ref<HTMLElement>): TreeState {\n const contextAppearance = useTreeContext_unstable(ctx => ctx.appearance);\n const contextSize = useTreeContext_unstable(ctx => ctx.size);\n\n const { appearance = contextAppearance ?? 'subtle', size = contextSize ?? 'medium' } = props;\n\n const parentLevel = useTreeContext_unstable(ctx => ctx.level);\n const openItems = useTreeContext_unstable(ctx => ctx.openItems);\n const requestOpenChange = useTreeContext_unstable(ctx => ctx.requestOpenChange);\n const requestNavigation = useTreeContext_unstable(ctx => ctx.requestNavigation);\n\n return {\n components: {\n root: 'div',\n },\n appearance,\n size,\n level: parentLevel + 1,\n root: getNativeElementProps('div', {\n ref,\n role: 'group',\n ...props,\n }),\n openItems,\n requestOpenChange,\n requestNavigation,\n };\n}\n\n/**\n * Create the state required to render the root level Tree.\n *\n * @param props - props from this instance of Tree\n * @param ref - reference to root HTMLElement of Tree\n */\nfunction useRootTree(props: TreeProps, ref: React.Ref<HTMLElement>): TreeState {\n warnIfNoProperPropsRootTree(props);\n\n const { appearance = 'subtle', size = 'medium' } = props;\n\n const [openItems, updateOpenItems] = useOpenItemsState(props);\n const [navigate, navigationRef] = useNestedTreeNavigation();\n\n const requestOpenChange = useEventCallback((data: TreeOpenChangeData) => {\n props.onOpenChange?.(data.event, data);\n if (data.event.isDefaultPrevented()) {\n return;\n }\n return updateOpenItems(data);\n });\n\n const requestNavigation = useEventCallback((data: TreeNavigationData_unstable) => {\n props.onNavigation_unstable?.(data.event, data);\n if (data.event.isDefaultPrevented()) {\n return;\n }\n navigate(data);\n if (data.type === treeDataTypes.arrowDown || data.type === treeDataTypes.arrowUp) {\n data.event.preventDefault();\n }\n });\n\n return {\n components: {\n root: 'div',\n },\n appearance,\n size,\n level: 1,\n openItems,\n requestOpenChange,\n requestNavigation,\n root: getNativeElementProps('div', {\n ref: useMergedRefs(navigationRef, ref),\n role: 'tree',\n ...props,\n }),\n };\n}\n\nfunction warnIfNoProperPropsRootTree(props: Pick<TreeProps, 'aria-label' | 'aria-labelledby'>) {\n if (process.env.NODE_ENV === 'development') {\n if (!props['aria-label'] && !props['aria-labelledby']) {\n // eslint-disable-next-line no-console\n console.warn('Tree must have either a `aria-label` or `aria-labelledby` property defined');\n }\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"sources":["useTree.js"],"sourcesContent":["import * as React from 'react';\nimport { useTreeContext_unstable } from '../../contexts';\nimport { useSubtree } from './useSubtree';\nimport { useRootTree } from './useRootTree';\n/**\n * Create the state required to render Tree.\n *\n * The returned state can be modified with hooks such as useTreeStyles_unstable,\n * before being passed to renderTree_unstable.\n *\n * @param props - props from this instance of Tree\n * @param ref - reference to root HTMLElement of Tree\n */ export const useTree_unstable = (props, ref)=>{\n const isSubtree = useTreeContext_unstable((ctx)=>ctx.level > 0);\n // as isSubtree is static, this doesn't break rule of hooks\n // and if this becomes an issue later on, this can be easily converted\n // eslint-disable-next-line react-hooks/rules-of-hooks\n return isSubtree ? useSubtree(props, ref) : useRootTree(props, ref);\n};\n"],"names":["useTree_unstable","props","ref","isSubtree","useTreeContext_unstable","ctx","level","useSubtree","useRootTree"],"mappings":";;;;+BAYiBA;;aAAAA;;;6DAZM;0BACiB;4BACb;6BACC;AASjB,MAAMA,mBAAmB,CAACC,OAAOC,MAAM;IAC9C,MAAMC,YAAYC,IAAAA,iCAAuB,EAAC,CAACC,MAAMA,IAAIC,KAAK,GAAG;IAC7D,2DAA2D;IAC3D,sEAAsE;IACtE,sDAAsD;IACtD,OAAOH,YAAYI,IAAAA,sBAAU,EAACN,OAAOC,OAAOM,IAAAA,wBAAW,EAACP,OAAOC,IAAI;AACvE"}
@@ -1,33 +1,24 @@
1
1
  "use strict";
2
-
3
2
  Object.defineProperty(exports, "__esModule", {
4
- value: true
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "useTreeContextValues_unstable", {
6
+ enumerable: true,
7
+ get: ()=>useTreeContextValues_unstable
5
8
  });
6
- exports.useTreeContextValues_unstable = void 0;
7
9
  function useTreeContextValues_unstable(state) {
8
- const {
9
- openItems,
10
- level,
11
- appearance,
12
- size,
13
- requestOpenChange,
14
- requestNavigation
15
- } = state;
16
- /**
10
+ const { openItems , level , appearance , size , requestTreeResponse } = state;
11
+ /**
17
12
  * This context is created with "@fluentui/react-context-selector",
18
13
  * there is no sense to memoize it
19
- */
20
- const tree = {
21
- appearance,
22
- size,
23
- level,
24
- openItems,
25
- requestOpenChange,
26
- requestNavigation
27
- };
28
- return {
29
- tree
30
- };
14
+ */ const tree = {
15
+ appearance,
16
+ size,
17
+ level,
18
+ openItems,
19
+ requestTreeResponse
20
+ };
21
+ return {
22
+ tree
23
+ };
31
24
  }
32
- exports.useTreeContextValues_unstable = useTreeContextValues_unstable;
33
- //# sourceMappingURL=useTreeContextValues.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useTreeContextValues_unstable","state","openItems","level","appearance","size","requestOpenChange","requestNavigation","tree","exports"],"sources":["../src/packages/react-components/react-tree/src/components/Tree/useTreeContextValues.ts"],"sourcesContent":["import { TreeContextValue } from '../../contexts';\nimport type { TreeContextValues, TreeState } from './Tree.types';\n\nexport function useTreeContextValues_unstable(state: TreeState): TreeContextValues {\n const { openItems, level, appearance, size, requestOpenChange, requestNavigation } = state;\n /**\n * This context is created with \"@fluentui/react-context-selector\",\n * there is no sense to memoize it\n */\n const tree: TreeContextValue = {\n appearance,\n size,\n level,\n openItems,\n requestOpenChange,\n requestNavigation,\n };\n\n return { tree };\n}\n"],"mappings":";;;;;;AAGA,SAAgBA,6BAA6BA,CAACC,KAAgB;EAC5D,MAAM;IAAEC,SAAS;IAAEC,KAAK;IAAEC,UAAU;IAAEC,IAAI;IAAEC,iBAAiB;IAAEC;EAAiB,CAAE,GAAGN,KAAK;EAC1F;;;;EAIA,MAAMO,IAAI,GAAqB;IAC7BJ,UAAU;IACVC,IAAI;IACJF,KAAK;IACLD,SAAS;IACTI,iBAAiB;IACjBC;GACD;EAED,OAAO;IAAEC;EAAI,CAAE;AACjB;AAhBAC,OAAA,CAAAT,6BAAA,GAAAA,6BAAA"}
1
+ {"version":3,"sources":["useTreeContextValues.js"],"sourcesContent":["export function useTreeContextValues_unstable(state) {\n const { openItems , level , appearance , size , requestTreeResponse } = state;\n /**\n * This context is created with \"@fluentui/react-context-selector\",\n * there is no sense to memoize it\n */ const tree = {\n appearance,\n size,\n level,\n openItems,\n requestTreeResponse\n };\n return {\n tree\n };\n}\n"],"names":["useTreeContextValues_unstable","state","openItems","level","appearance","size","requestTreeResponse","tree"],"mappings":";;;;+BAAgBA;;aAAAA;;AAAT,SAASA,8BAA8BC,KAAK,EAAE;IACjD,MAAM,EAAEC,UAAS,EAAGC,MAAK,EAAGC,WAAU,EAAGC,KAAI,EAAGC,oBAAmB,EAAG,GAAGL;IACzE;;;GAGD,GAAG,MAAMM,OAAO;QACXH;QACAC;QACAF;QACAD;QACAI;IACJ;IACA,OAAO;QACHC;IACJ;AACJ"}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ treeClassNames: ()=>treeClassNames,
13
+ useTreeStyles_unstable: ()=>useTreeStyles_unstable
14
+ });
15
+ const _react = require("@griffel/react");
16
+ const treeClassNames = {
17
+ root: 'fui-Tree'
18
+ };
19
+ const useStyles = /*#__PURE__*/ (0, _react["__styles"])({
20
+ root: {
21
+ mc9l5x: "f22iagw",
22
+ Beiy3e4: "f1vx9l62",
23
+ Belr9w4: "f1j0q4x9"
24
+ },
25
+ subtree: {
26
+ Bh6795r: "fqerorx",
27
+ Bnnss6s: "f1neuvcm",
28
+ xawz: "f1s4axba",
29
+ Ijaq50: "f1na4k6z",
30
+ Br312pm: "fwt6ga",
31
+ nk6f5a: "fi45nfw",
32
+ Bw0ie65: "f10ort2y"
33
+ }
34
+ }, {
35
+ d: [
36
+ ".f22iagw{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}",
37
+ ".f1vx9l62{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}",
38
+ ".f1j0q4x9{row-gap:var(--spacingVerticalXXS);}",
39
+ ".fqerorx{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;}",
40
+ ".f1neuvcm{-webkit-flex-shrink:1;-ms-flex-negative:1;flex-shrink:1;}",
41
+ ".f1s4axba{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;}",
42
+ ".f1na4k6z{grid-row-start:subtree;}",
43
+ ".fwt6ga{grid-column-start:subtree;}",
44
+ ".fi45nfw{grid-row-end:subtree;}",
45
+ ".f10ort2y{grid-column-end:subtree;}"
46
+ ]
47
+ });
48
+ const useTreeStyles_unstable = (state)=>{
49
+ const styles = useStyles();
50
+ const isSubtree = state.level > 0;
51
+ state.root.className = (0, _react.mergeClasses)(treeClassNames.root, styles.root, isSubtree && styles.subtree, state.root.className);
52
+ return state;
53
+ }; //# sourceMappingURL=useTreeStyles.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["useTreeStyles.styles.js"],"sourcesContent":["import { __styles, mergeClasses, shorthands } from '@griffel/react';\nimport { tokens } from '@fluentui/react-theme';\nexport const treeClassNames = {\n root: 'fui-Tree'\n};\nconst useStyles = /*#__PURE__*/__styles({\n root: {\n mc9l5x: \"f22iagw\",\n Beiy3e4: \"f1vx9l62\",\n Belr9w4: \"f1j0q4x9\"\n },\n subtree: {\n Bh6795r: \"fqerorx\",\n Bnnss6s: \"f1neuvcm\",\n xawz: \"f1s4axba\",\n Ijaq50: \"f1na4k6z\",\n Br312pm: \"fwt6ga\",\n nk6f5a: \"fi45nfw\",\n Bw0ie65: \"f10ort2y\"\n }\n}, {\n d: [\".f22iagw{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}\", \".f1vx9l62{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}\", \".f1j0q4x9{row-gap:var(--spacingVerticalXXS);}\", \".fqerorx{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;}\", \".f1neuvcm{-webkit-flex-shrink:1;-ms-flex-negative:1;flex-shrink:1;}\", \".f1s4axba{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;}\", \".f1na4k6z{grid-row-start:subtree;}\", \".fwt6ga{grid-column-start:subtree;}\", \".fi45nfw{grid-row-end:subtree;}\", \".f10ort2y{grid-column-end:subtree;}\"]\n});\nexport const useTreeStyles_unstable = state => {\n const styles = useStyles();\n const isSubtree = state.level > 0;\n state.root.className = mergeClasses(treeClassNames.root, styles.root, isSubtree && styles.subtree, state.root.className);\n return state;\n};\n//# sourceMappingURL=useTreeStyles.styles.js.map"],"names":["treeClassNames","useTreeStyles_unstable","root","useStyles","__styles","mc9l5x","Beiy3e4","Belr9w4","subtree","Bh6795r","Bnnss6s","xawz","Ijaq50","Br312pm","nk6f5a","Bw0ie65","d","state","styles","isSubtree","level","className","mergeClasses"],"mappings":";;;;;;;;;;;IAEaA,cAAc,MAAdA;IAqBAC,sBAAsB,MAAtBA;;uBAvBsC;AAE5C,MAAMD,iBAAiB;IAC5BE,MAAM;AACR;AACA,MAAMC,YAAY,WAAW,GAAEC,IAAAA,kBAAQ,EAAC;IACtCF,MAAM;QACJG,QAAQ;QACRC,SAAS;QACTC,SAAS;IACX;IACAC,SAAS;QACPC,SAAS;QACTC,SAAS;QACTC,MAAM;QACNC,QAAQ;QACRC,SAAS;QACTC,QAAQ;QACRC,SAAS;IACX;AACF,GAAG;IACDC,GAAG;QAAC;QAAwF;QAA6F;QAAiD;QAAqF;QAAuE;QAAoF;QAAsC;QAAuC;QAAmC;KAAsC;AAClnB;AACO,MAAMf,yBAAyBgB,CAAAA,QAAS;IAC7C,MAAMC,SAASf;IACf,MAAMgB,YAAYF,MAAMG,KAAK,GAAG;IAChCH,MAAMf,IAAI,CAACmB,SAAS,GAAGC,IAAAA,mBAAY,EAACtB,eAAeE,IAAI,EAAEgB,OAAOhB,IAAI,EAAEiB,aAAaD,OAAOV,OAAO,EAAES,MAAMf,IAAI,CAACmB,SAAS;IACvH,OAAOJ;AACT,GACA,gDAAgD"}
@@ -1,22 +1,21 @@
1
1
  "use strict";
2
-
3
2
  Object.defineProperty(exports, "__esModule", {
4
- value: true
3
+ value: true
5
4
  });
6
- exports.TreeItem = void 0;
7
- const React = /*#__PURE__*/require("react");
8
- const useTreeItem_1 = /*#__PURE__*/require("./useTreeItem");
9
- const renderTreeItem_1 = /*#__PURE__*/require("./renderTreeItem");
10
- const useTreeItemStyles_1 = /*#__PURE__*/require("./useTreeItemStyles");
11
- const useTreeItemContextValues_1 = /*#__PURE__*/require("./useTreeItemContextValues");
12
- /**
13
- * TreeItem component - TODO: add more docs
14
- */
15
- exports.TreeItem = /*#__PURE__*/React.forwardRef((props, ref) => {
16
- const state = useTreeItem_1.useTreeItem_unstable(props, ref);
17
- useTreeItemStyles_1.useTreeItemStyles_unstable(state);
18
- const contextValues = useTreeItemContextValues_1.useTreeItemContextValues_unstable(state);
19
- return renderTreeItem_1.renderTreeItem_unstable(state, contextValues);
5
+ Object.defineProperty(exports, "TreeItem", {
6
+ enumerable: true,
7
+ get: ()=>TreeItem
20
8
  });
21
- exports.TreeItem.displayName = 'TreeItem';
22
- //# sourceMappingURL=TreeItem.js.map
9
+ const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
10
+ const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
11
+ const _useTreeItem = require("./useTreeItem");
12
+ const _renderTreeItem = require("./renderTreeItem");
13
+ const _useTreeItemStylesStyles = require("./useTreeItemStyles.styles");
14
+ const _useTreeItemContextValues = require("./useTreeItemContextValues");
15
+ const TreeItem = /*#__PURE__*/ _react.forwardRef((props, ref)=>{
16
+ const state = (0, _useTreeItem.useTreeItem_unstable)(props, ref);
17
+ (0, _useTreeItemStylesStyles.useTreeItemStyles_unstable)(state);
18
+ const contextValues = (0, _useTreeItemContextValues.useTreeItemContextValues_unstable)(state);
19
+ return (0, _renderTreeItem.renderTreeItem_unstable)(state, contextValues);
20
+ });
21
+ TreeItem.displayName = 'TreeItem';
@@ -1 +1 @@
1
- {"version":3,"names":["React","require","useTreeItem_1","renderTreeItem_1","useTreeItemStyles_1","useTreeItemContextValues_1","exports","TreeItem","forwardRef","props","ref","state","useTreeItem_unstable","useTreeItemStyles_unstable","contextValues","useTreeItemContextValues_unstable","renderTreeItem_unstable","displayName"],"sources":["../src/packages/react-components/react-tree/src/components/TreeItem/TreeItem.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useTreeItem_unstable } from './useTreeItem';\nimport { renderTreeItem_unstable } from './renderTreeItem';\nimport { useTreeItemStyles_unstable } from './useTreeItemStyles';\nimport type { TreeItemProps } from './TreeItem.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\nimport { useTreeItemContextValues_unstable } from './useTreeItemContextValues';\n\n/**\n * TreeItem component - TODO: add more docs\n */\nexport const TreeItem: ForwardRefComponent<TreeItemProps> = React.forwardRef((props, ref) => {\n const state = useTreeItem_unstable(props, ref);\n\n useTreeItemStyles_unstable(state);\n const contextValues = useTreeItemContextValues_unstable(state);\n return renderTreeItem_unstable(state, contextValues);\n});\n\nTreeItem.displayName = 'TreeItem';\n"],"mappings":";;;;;;AAAA,MAAAA,KAAA,gBAAAC,OAAA;AACA,MAAAC,aAAA,gBAAAD,OAAA;AACA,MAAAE,gBAAA,gBAAAF,OAAA;AACA,MAAAG,mBAAA,gBAAAH,OAAA;AAGA,MAAAI,0BAAA,gBAAAJ,OAAA;AAEA;;;AAGaK,OAAA,CAAAC,QAAQ,gBAAuCP,KAAK,CAACQ,UAAU,CAAC,CAACC,KAAK,EAAEC,GAAG,KAAI;EAC1F,MAAMC,KAAK,GAAGT,aAAA,CAAAU,oBAAoB,CAACH,KAAK,EAAEC,GAAG,CAAC;EAE9CN,mBAAA,CAAAS,0BAA0B,CAACF,KAAK,CAAC;EACjC,MAAMG,aAAa,GAAGT,0BAAA,CAAAU,iCAAiC,CAACJ,KAAK,CAAC;EAC9D,OAAOR,gBAAA,CAAAa,uBAAuB,CAACL,KAAK,EAAEG,aAAa,CAAC;AACtD,CAAC,CAAC;AAEFR,OAAA,CAAAC,QAAQ,CAACU,WAAW,GAAG,UAAU"}
1
+ {"version":3,"sources":["TreeItem.js"],"sourcesContent":["import * as React from 'react';\nimport { useTreeItem_unstable } from './useTreeItem';\nimport { renderTreeItem_unstable } from './renderTreeItem';\nimport { useTreeItemStyles_unstable } from './useTreeItemStyles.styles';\nimport { useTreeItemContextValues_unstable } from './useTreeItemContextValues';\n/**\n * The `TreeItem` component represents a single item in a tree.\n * It expects a certain order of children to work properly: the first child should be the node itself,\n * and the second child should be a nested subtree in the form of another Tree component or a standalone TreeItem.\n * This order follows the same order as document traversal for the TreeWalker API in JavaScript:\n * https://developer.mozilla.org/en-US/docs/Web/API/TreeWalker.\n * The content and layout of a TreeItem can be defined using the TreeItemLayout or TreeItemPersonaLayout component,\n * which should be used as a direct child of TreeItem.\n *\n * When a TreeItem has nested child subtree, an expand/collapse control is displayed,\n * allowing the user to show or hide the children.\n */ export const TreeItem = /*#__PURE__*/ React.forwardRef((props, ref)=>{\n const state = useTreeItem_unstable(props, ref);\n useTreeItemStyles_unstable(state);\n const contextValues = useTreeItemContextValues_unstable(state);\n return renderTreeItem_unstable(state, contextValues);\n});\nTreeItem.displayName = 'TreeItem';\n"],"names":["TreeItem","React","forwardRef","props","ref","state","useTreeItem_unstable","useTreeItemStyles_unstable","contextValues","useTreeItemContextValues_unstable","renderTreeItem_unstable","displayName"],"mappings":";;;;+BAgBiBA;;aAAAA;;;6DAhBM;6BACc;gCACG;yCACG;0CACO;AAYvC,MAAMA,WAAW,WAAW,GAAGC,OAAMC,UAAU,CAAC,CAACC,OAAOC,MAAM;IACrE,MAAMC,QAAQC,IAAAA,iCAAoB,EAACH,OAAOC;IAC1CG,IAAAA,mDAA0B,EAACF;IAC3B,MAAMG,gBAAgBC,IAAAA,2DAAiC,EAACJ;IACxD,OAAOK,IAAAA,uCAAuB,EAACL,OAAOG;AAC1C;AACAR,SAASW,WAAW,GAAG"}
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
-
3
2
  Object.defineProperty(exports, "__esModule", {
4
- value: true
3
+ value: true
5
4
  });
6
- const tokens_1 = /*#__PURE__*/require("../../utils/tokens");
7
- //# sourceMappingURL=TreeItem.types.js.map
5
+ const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
6
+ const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
@@ -1 +1 @@
1
- {"version":3,"names":["tokens_1","require"],"sources":["../src/packages/react-components/react-tree/src/components/TreeItem/TreeItem.types.ts"],"sourcesContent":["import type { ComponentProps, ComponentState, ExtractSlotProps, Slot } from '@fluentui/react-utilities';\nimport type { ButtonContextValue } from '@fluentui/react-button';\nimport type { TreeItemContextValue } from '../../contexts';\nimport { treeItemLevelToken } from '../../utils/tokens';\nimport * as React from 'react';\n\nexport type TreeItemCSSProperties = React.CSSProperties & { [treeItemLevelToken]?: string | number };\n\nexport type TreeItemSlots = {\n root: Slot<ExtractSlotProps<Slot<'div'> & { style?: TreeItemCSSProperties }>>;\n content: NonNullable<Slot<'div'>>;\n subtree?: Slot<'span'>;\n /**\n * Expand icon slot,\n * by default renders a chevron icon to indicate opening and closing\n */\n expandIcon?: Slot<'span'>;\n /**\n * Actions slot that renders on the end of tree item\n * when the item is hovered/focused\n */\n actions?: Slot<'span'>;\n};\n\nexport type TreeItemContextValues = {\n treeItem: TreeItemContextValue;\n button: ButtonContextValue;\n};\n\n/**\n * TreeItem Props\n */\nexport type TreeItemProps = ComponentProps<Partial<TreeItemSlots>> & {\n /**\n * If a TreeItem is a leaf, it'll not present the `expandIcon` slot by default.\n * This attribute is used to force the decision if a TreeItem is a leaf or not. By not providing this property\n * this will be inferred by the presence of a subtree as part of the TreeItem children.\n */\n leaf?: boolean;\n};\n\n/**\n * State used in rendering TreeItem\n */\nexport type TreeItemState = ComponentState<TreeItemSlots> & {\n open: boolean;\n isLeaf: boolean;\n level: number;\n /**\n * By design, a button included on the actions slot should be small\n */\n buttonSize: 'small';\n isActionsVisible: boolean;\n};\n"],"mappings":";;;;;AAGA,MAAAA,QAAA,gBAAAC,OAAA"}
1
+ {"version":3,"sources":["TreeItem.types.js"],"sourcesContent":["import * as React from 'react';\n"],"names":[],"mappings":";;;;;6DAAuB"}
@@ -1,12 +1,10 @@
1
1
  "use strict";
2
-
3
2
  Object.defineProperty(exports, "__esModule", {
4
- value: true
3
+ value: true
5
4
  });
6
- const tslib_1 = /*#__PURE__*/require("tslib");
7
- tslib_1.__exportStar(require("./TreeItem"), exports);
8
- tslib_1.__exportStar(require("./TreeItem.types"), exports);
9
- tslib_1.__exportStar(require("./renderTreeItem"), exports);
10
- tslib_1.__exportStar(require("./useTreeItem"), exports);
11
- tslib_1.__exportStar(require("./useTreeItemStyles"), exports);
12
- //# sourceMappingURL=index.js.map
5
+ const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
6
+ _exportStar(require("./TreeItem"), exports);
7
+ _exportStar(require("./TreeItem.types"), exports);
8
+ _exportStar(require("./renderTreeItem"), exports);
9
+ _exportStar(require("./useTreeItem"), exports);
10
+ _exportStar(require("./useTreeItemStyles.styles"), exports);
@@ -1 +1 @@
1
- {"version":3,"names":["tslib_1","__exportStar","require","exports"],"sources":["../src/packages/react-components/react-tree/src/components/TreeItem/index.ts"],"sourcesContent":["export * from './TreeItem';\nexport * from './TreeItem.types';\nexport * from './renderTreeItem';\nexport * from './useTreeItem';\nexport * from './useTreeItemStyles';\n"],"mappings":";;;;;;AAAAA,OAAA,CAAAC,YAAA,CAAAC,OAAA,gBAAAC,OAAA;AACAH,OAAA,CAAAC,YAAA,CAAAC,OAAA,sBAAAC,OAAA;AACAH,OAAA,CAAAC,YAAA,CAAAC,OAAA,sBAAAC,OAAA;AACAH,OAAA,CAAAC,YAAA,CAAAC,OAAA,mBAAAC,OAAA;AACAH,OAAA,CAAAC,YAAA,CAAAC,OAAA,yBAAAC,OAAA"}
1
+ {"version":3,"sources":["index.js"],"sourcesContent":["export * from './TreeItem';\nexport * from './TreeItem.types';\nexport * from './renderTreeItem';\nexport * from './useTreeItem';\nexport * from './useTreeItemStyles.styles';\n"],"names":[],"mappings":";;;;;oBAAc;oBACA;oBACA;oBACA;oBACA"}