@fluentui/react-tree 9.0.0-beta.9 → 9.0.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 (311) hide show
  1. package/CHANGELOG.json +1573 -8
  2. package/CHANGELOG.md +430 -9
  3. package/LICENSE +1 -1
  4. package/dist/index.d.ts +367 -132
  5. package/lib/FlatTree.js +1 -0
  6. package/lib/FlatTree.js.map +1 -0
  7. package/lib/Tree.js +0 -1
  8. package/lib/Tree.js.map +1 -1
  9. package/lib/TreeItem.js +0 -1
  10. package/lib/TreeItem.js.map +1 -1
  11. package/lib/TreeItemLayout.js +0 -1
  12. package/lib/TreeItemLayout.js.map +1 -1
  13. package/lib/TreeItemPersonaLayout.js +0 -1
  14. package/lib/TreeItemPersonaLayout.js.map +1 -1
  15. package/lib/components/FlatTree/FlatTree.js +17 -0
  16. package/lib/components/FlatTree/FlatTree.js.map +1 -0
  17. package/lib/components/FlatTree/FlatTree.types.js +1 -0
  18. package/lib/components/FlatTree/FlatTree.types.js.map +1 -0
  19. package/lib/components/FlatTree/index.js +7 -0
  20. package/lib/components/FlatTree/index.js.map +1 -0
  21. package/lib/components/FlatTree/renderFlatTree.js +2 -0
  22. package/lib/components/FlatTree/renderFlatTree.js.map +1 -0
  23. package/lib/components/FlatTree/useFlatControllableCheckedItems.js +76 -0
  24. package/lib/components/FlatTree/useFlatControllableCheckedItems.js.map +1 -0
  25. package/lib/components/FlatTree/useFlatTree.js +3 -0
  26. package/lib/components/FlatTree/useFlatTree.js.map +1 -0
  27. package/lib/components/FlatTree/useFlatTreeContextValues.js +2 -0
  28. package/lib/components/FlatTree/useFlatTreeContextValues.js.map +1 -0
  29. package/lib/components/FlatTree/useFlatTreeNavigation.js +74 -0
  30. package/lib/components/FlatTree/useFlatTreeNavigation.js.map +1 -0
  31. package/lib/components/FlatTree/useFlatTreeStyles.styles.js +20 -0
  32. package/lib/components/FlatTree/useFlatTreeStyles.styles.js.map +1 -0
  33. package/lib/components/FlatTree/useHeadlessFlatTree.js +124 -0
  34. package/lib/components/FlatTree/useHeadlessFlatTree.js.map +1 -0
  35. package/lib/components/Tree/Tree.js +9 -15
  36. package/lib/components/Tree/Tree.js.map +1 -1
  37. package/lib/components/Tree/Tree.types.js +1 -2
  38. package/lib/components/Tree/Tree.types.js.map +1 -1
  39. package/lib/components/Tree/index.js +2 -3
  40. package/lib/components/Tree/index.js.map +1 -1
  41. package/lib/components/Tree/renderTree.js +7 -11
  42. package/lib/components/Tree/renderTree.js.map +1 -1
  43. package/lib/components/Tree/useNestedControllableCheckedItems.js +22 -0
  44. package/lib/components/Tree/useNestedControllableCheckedItems.js.map +1 -0
  45. package/lib/components/Tree/useTree.js +63 -111
  46. package/lib/components/Tree/useTree.js.map +1 -1
  47. package/lib/components/Tree/useTreeContextValues.js +16 -24
  48. package/lib/components/Tree/useTreeContextValues.js.map +1 -1
  49. package/lib/components/Tree/useTreeNavigation.js +52 -0
  50. package/lib/components/Tree/useTreeNavigation.js.map +1 -0
  51. package/lib/components/Tree/{useTreeStyles.js → useTreeStyles.styles.js} +7 -3
  52. package/lib/components/Tree/useTreeStyles.styles.js.map +1 -0
  53. package/lib/components/TreeItem/TreeItem.js +7 -9
  54. package/lib/components/TreeItem/TreeItem.js.map +1 -1
  55. package/lib/components/TreeItem/TreeItem.types.js +0 -1
  56. package/lib/components/TreeItem/TreeItem.types.js.map +1 -1
  57. package/lib/components/TreeItem/index.js +2 -2
  58. package/lib/components/TreeItem/index.js.map +1 -1
  59. package/lib/components/TreeItem/renderTreeItem.js +7 -15
  60. package/lib/components/TreeItem/renderTreeItem.js.map +1 -1
  61. package/lib/components/TreeItem/useTreeItem.js +161 -234
  62. package/lib/components/TreeItem/useTreeItem.js.map +1 -1
  63. package/lib/components/TreeItem/useTreeItemContextValues.js +20 -16
  64. package/lib/components/TreeItem/useTreeItemContextValues.js.map +1 -1
  65. package/lib/components/TreeItem/useTreeItemStyles.styles.js +100 -0
  66. package/lib/components/TreeItem/useTreeItemStyles.styles.js.map +1 -0
  67. package/lib/components/TreeItemChevron.js +24 -0
  68. package/lib/components/TreeItemChevron.js.map +1 -0
  69. package/lib/components/TreeItemLayout/TreeItemLayout.js +5 -7
  70. package/lib/components/TreeItemLayout/TreeItemLayout.js.map +1 -1
  71. package/lib/components/TreeItemLayout/TreeItemLayout.types.js +1 -2
  72. package/lib/components/TreeItemLayout/TreeItemLayout.types.js.map +1 -1
  73. package/lib/components/TreeItemLayout/index.js +1 -2
  74. package/lib/components/TreeItemLayout/index.js.map +1 -1
  75. package/lib/components/TreeItemLayout/renderTreeItemLayout.js +8 -13
  76. package/lib/components/TreeItemLayout/renderTreeItemLayout.js.map +1 -1
  77. package/lib/components/TreeItemLayout/useTreeItemLayout.js +109 -40
  78. package/lib/components/TreeItemLayout/useTreeItemLayout.js.map +1 -1
  79. package/lib/components/TreeItemLayout/useTreeItemLayoutStyles.styles.js +237 -0
  80. package/lib/components/TreeItemLayout/useTreeItemLayoutStyles.styles.js.map +1 -0
  81. package/lib/components/TreeItemPersonaLayout/TreeItemPersonaLayout.js +6 -8
  82. package/lib/components/TreeItemPersonaLayout/TreeItemPersonaLayout.js.map +1 -1
  83. package/lib/components/TreeItemPersonaLayout/TreeItemPersonaLayout.types.js +1 -2
  84. package/lib/components/TreeItemPersonaLayout/TreeItemPersonaLayout.types.js.map +1 -1
  85. package/lib/components/TreeItemPersonaLayout/index.js +1 -2
  86. package/lib/components/TreeItemPersonaLayout/index.js.map +1 -1
  87. package/lib/components/TreeItemPersonaLayout/renderTreeItemPersonaLayout.js +10 -15
  88. package/lib/components/TreeItemPersonaLayout/renderTreeItemPersonaLayout.js.map +1 -1
  89. package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayout.js +41 -48
  90. package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayout.js.map +1 -1
  91. package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutContextValues.js +9 -10
  92. package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutContextValues.js.map +1 -1
  93. package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.styles.js +210 -0
  94. package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.styles.js.map +1 -0
  95. package/lib/contexts/index.js +0 -1
  96. package/lib/contexts/index.js.map +1 -1
  97. package/lib/contexts/treeContext.js +13 -14
  98. package/lib/contexts/treeContext.js.map +1 -1
  99. package/lib/contexts/treeItemContext.js +16 -8
  100. package/lib/contexts/treeItemContext.js.map +1 -1
  101. package/lib/hooks/useControllableOpenItems.js +28 -0
  102. package/lib/hooks/useControllableOpenItems.js.map +1 -0
  103. package/lib/hooks/useRootTree.js +147 -0
  104. package/lib/hooks/useRootTree.js.map +1 -0
  105. package/lib/hooks/useRovingTabIndexes.js +30 -49
  106. package/lib/hooks/useRovingTabIndexes.js.map +1 -1
  107. package/lib/hooks/useSubtree.js +41 -0
  108. package/lib/hooks/useSubtree.js.map +1 -0
  109. package/lib/index.js +3 -4
  110. package/lib/index.js.map +1 -1
  111. package/lib/utils/ImmutableMap.js +41 -0
  112. package/lib/utils/ImmutableMap.js.map +1 -0
  113. package/lib/utils/ImmutableSet.js +42 -33
  114. package/lib/utils/ImmutableSet.js.map +1 -1
  115. package/lib/utils/assert.js +4 -5
  116. package/lib/utils/assert.js.map +1 -1
  117. package/lib/utils/createCheckedItems.js +18 -0
  118. package/lib/utils/createCheckedItems.js.map +1 -0
  119. package/lib/utils/createHTMLElementWalker.js +67 -0
  120. package/lib/utils/createHTMLElementWalker.js.map +1 -0
  121. package/lib/utils/createHeadlessTree.js +189 -0
  122. package/lib/utils/createHeadlessTree.js.map +1 -0
  123. package/lib/utils/createOpenItems.js +10 -0
  124. package/lib/utils/createOpenItems.js.map +1 -0
  125. package/lib/utils/flattenTree.js +15 -49
  126. package/lib/utils/flattenTree.js.map +1 -1
  127. package/lib/utils/getTreeItemValueFromElement.js +4 -0
  128. package/lib/utils/getTreeItemValueFromElement.js.map +1 -0
  129. package/lib/utils/nextTypeAheadElement.js +11 -12
  130. package/lib/utils/nextTypeAheadElement.js.map +1 -1
  131. package/lib/utils/normalizeOpenItems.js +6 -5
  132. package/lib/utils/normalizeOpenItems.js.map +1 -1
  133. package/lib/utils/tokens.js +14 -14
  134. package/lib/utils/tokens.js.map +1 -1
  135. package/lib/utils/treeItemFilter.js +2 -3
  136. package/lib/utils/treeItemFilter.js.map +1 -1
  137. package/lib-commonjs/FlatTree.js +6 -0
  138. package/lib-commonjs/FlatTree.js.map +1 -0
  139. package/lib-commonjs/Tree.js +0 -3
  140. package/lib-commonjs/Tree.js.map +1 -1
  141. package/lib-commonjs/TreeItem.js +0 -3
  142. package/lib-commonjs/TreeItem.js.map +1 -1
  143. package/lib-commonjs/TreeItemLayout.js +0 -3
  144. package/lib-commonjs/TreeItemLayout.js.map +1 -1
  145. package/lib-commonjs/TreeItemPersonaLayout.js +0 -3
  146. package/lib-commonjs/TreeItemPersonaLayout.js.map +1 -1
  147. package/lib-commonjs/components/FlatTree/FlatTree.js +21 -0
  148. package/lib-commonjs/components/FlatTree/FlatTree.js.map +1 -0
  149. package/lib-commonjs/components/FlatTree/FlatTree.types.js +4 -0
  150. package/lib-commonjs/components/FlatTree/FlatTree.types.js.map +1 -0
  151. package/lib-commonjs/components/FlatTree/index.js +12 -0
  152. package/lib-commonjs/components/FlatTree/index.js.map +1 -0
  153. package/lib-commonjs/components/FlatTree/renderFlatTree.js +10 -0
  154. package/lib-commonjs/components/FlatTree/renderFlatTree.js.map +1 -0
  155. package/lib-commonjs/components/FlatTree/useFlatControllableCheckedItems.js +91 -0
  156. package/lib-commonjs/components/FlatTree/useFlatControllableCheckedItems.js.map +1 -0
  157. package/lib-commonjs/components/FlatTree/useFlatTree.js +12 -0
  158. package/lib-commonjs/components/FlatTree/useFlatTree.js.map +1 -0
  159. package/lib-commonjs/components/FlatTree/useFlatTreeContextValues.js +10 -0
  160. package/lib-commonjs/components/FlatTree/useFlatTreeContextValues.js.map +1 -0
  161. package/lib-commonjs/components/FlatTree/useFlatTreeNavigation.js +82 -0
  162. package/lib-commonjs/components/FlatTree/useFlatTreeNavigation.js.map +1 -0
  163. package/lib-commonjs/components/FlatTree/useFlatTreeStyles.styles.js +36 -0
  164. package/lib-commonjs/components/FlatTree/useFlatTreeStyles.styles.js.map +1 -0
  165. package/lib-commonjs/components/FlatTree/useHeadlessFlatTree.js +121 -0
  166. package/lib-commonjs/components/FlatTree/useHeadlessFlatTree.js.map +1 -0
  167. package/lib-commonjs/components/Tree/Tree.js +4 -6
  168. package/lib-commonjs/components/Tree/Tree.js.map +1 -1
  169. package/lib-commonjs/components/Tree/Tree.types.js +0 -5
  170. package/lib-commonjs/components/Tree/Tree.types.js.map +1 -1
  171. package/lib-commonjs/components/Tree/index.js +2 -5
  172. package/lib-commonjs/components/Tree/index.js.map +1 -1
  173. package/lib-commonjs/components/Tree/renderTree.js +6 -9
  174. package/lib-commonjs/components/Tree/renderTree.js.map +1 -1
  175. package/lib-commonjs/components/Tree/useNestedControllableCheckedItems.js +37 -0
  176. package/lib-commonjs/components/Tree/useNestedControllableCheckedItems.js.map +1 -0
  177. package/lib-commonjs/components/Tree/useTree.js +53 -85
  178. package/lib-commonjs/components/Tree/useTree.js.map +1 -1
  179. package/lib-commonjs/components/Tree/useTreeContextValues.js +9 -10
  180. package/lib-commonjs/components/Tree/useTreeContextValues.js.map +1 -1
  181. package/lib-commonjs/components/Tree/useTreeNavigation.js +60 -0
  182. package/lib-commonjs/components/Tree/useTreeNavigation.js.map +1 -0
  183. package/lib-commonjs/components/Tree/{useTreeStyles.js → useTreeStyles.styles.js} +10 -7
  184. package/lib-commonjs/components/Tree/useTreeStyles.styles.js.map +1 -0
  185. package/lib-commonjs/components/TreeItem/TreeItem.js +3 -5
  186. package/lib-commonjs/components/TreeItem/TreeItem.js.map +1 -1
  187. package/lib-commonjs/components/TreeItem/TreeItem.types.js +0 -3
  188. package/lib-commonjs/components/TreeItem/TreeItem.types.js.map +1 -1
  189. package/lib-commonjs/components/TreeItem/index.js +2 -4
  190. package/lib-commonjs/components/TreeItem/index.js.map +1 -1
  191. package/lib-commonjs/components/TreeItem/renderTreeItem.js +6 -12
  192. package/lib-commonjs/components/TreeItem/renderTreeItem.js.map +1 -1
  193. package/lib-commonjs/components/TreeItem/useTreeItem.js +111 -170
  194. package/lib-commonjs/components/TreeItem/useTreeItem.js.map +1 -1
  195. package/lib-commonjs/components/TreeItem/useTreeItemContextValues.js +19 -18
  196. package/lib-commonjs/components/TreeItem/useTreeItemContextValues.js.map +1 -1
  197. package/lib-commonjs/components/TreeItem/useTreeItemStyles.styles.js +202 -0
  198. package/lib-commonjs/components/TreeItem/useTreeItemStyles.styles.js.map +1 -0
  199. package/lib-commonjs/components/TreeItemChevron.js +33 -0
  200. package/lib-commonjs/components/TreeItemChevron.js.map +1 -0
  201. package/lib-commonjs/components/TreeItemLayout/TreeItemLayout.js +3 -5
  202. package/lib-commonjs/components/TreeItemLayout/TreeItemLayout.js.map +1 -1
  203. package/lib-commonjs/components/TreeItemLayout/TreeItemLayout.types.js +0 -3
  204. package/lib-commonjs/components/TreeItemLayout/TreeItemLayout.types.js.map +1 -1
  205. package/lib-commonjs/components/TreeItemLayout/index.js +1 -4
  206. package/lib-commonjs/components/TreeItemLayout/index.js.map +1 -1
  207. package/lib-commonjs/components/TreeItemLayout/renderTreeItemLayout.js +8 -9
  208. package/lib-commonjs/components/TreeItemLayout/renderTreeItemLayout.js.map +1 -1
  209. package/lib-commonjs/components/TreeItemLayout/useTreeItemLayout.js +92 -18
  210. package/lib-commonjs/components/TreeItemLayout/useTreeItemLayout.js.map +1 -1
  211. package/lib-commonjs/components/TreeItemLayout/useTreeItemLayoutStyles.styles.js +392 -0
  212. package/lib-commonjs/components/TreeItemLayout/useTreeItemLayoutStyles.styles.js.map +1 -0
  213. package/lib-commonjs/components/TreeItemPersonaLayout/TreeItemPersonaLayout.js +3 -5
  214. package/lib-commonjs/components/TreeItemPersonaLayout/TreeItemPersonaLayout.js.map +1 -1
  215. package/lib-commonjs/components/TreeItemPersonaLayout/TreeItemPersonaLayout.types.js +0 -3
  216. package/lib-commonjs/components/TreeItemPersonaLayout/TreeItemPersonaLayout.types.js.map +1 -1
  217. package/lib-commonjs/components/TreeItemPersonaLayout/index.js +1 -4
  218. package/lib-commonjs/components/TreeItemPersonaLayout/index.js.map +1 -1
  219. package/lib-commonjs/components/TreeItemPersonaLayout/renderTreeItemPersonaLayout.js +9 -10
  220. package/lib-commonjs/components/TreeItemPersonaLayout/renderTreeItemPersonaLayout.js.map +1 -1
  221. package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayout.js +29 -26
  222. package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayout.js.map +1 -1
  223. package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutContextValues.js +1 -3
  224. package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutContextValues.js.map +1 -1
  225. package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.styles.js +379 -0
  226. package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.styles.js.map +1 -0
  227. package/lib-commonjs/contexts/index.js +0 -3
  228. package/lib-commonjs/contexts/index.js.map +1 -1
  229. package/lib-commonjs/contexts/treeContext.js +7 -7
  230. package/lib-commonjs/contexts/treeContext.js.map +1 -1
  231. package/lib-commonjs/contexts/treeItemContext.js +15 -6
  232. package/lib-commonjs/contexts/treeItemContext.js.map +1 -1
  233. package/lib-commonjs/hooks/useControllableOpenItems.js +39 -0
  234. package/lib-commonjs/hooks/useControllableOpenItems.js.map +1 -0
  235. package/lib-commonjs/hooks/useRootTree.js +151 -0
  236. package/lib-commonjs/hooks/useRootTree.js.map +1 -0
  237. package/lib-commonjs/hooks/useRovingTabIndexes.js +9 -31
  238. package/lib-commonjs/hooks/useRovingTabIndexes.js.map +1 -1
  239. package/lib-commonjs/hooks/useSubtree.js +45 -0
  240. package/lib-commonjs/hooks/useSubtree.js.map +1 -0
  241. package/lib-commonjs/index.js +11 -7
  242. package/lib-commonjs/index.js.map +1 -1
  243. package/lib-commonjs/utils/ImmutableMap.js +49 -0
  244. package/lib-commonjs/utils/ImmutableMap.js.map +1 -0
  245. package/lib-commonjs/utils/ImmutableSet.js +28 -20
  246. package/lib-commonjs/utils/ImmutableSet.js.map +1 -1
  247. package/lib-commonjs/utils/assert.js +1 -3
  248. package/lib-commonjs/utils/assert.js.map +1 -1
  249. package/lib-commonjs/utils/createCheckedItems.js +26 -0
  250. package/lib-commonjs/utils/createCheckedItems.js.map +1 -0
  251. package/lib-commonjs/{hooks/useHTMLElementWalker.js → utils/createHTMLElementWalker.js} +3 -27
  252. package/lib-commonjs/utils/createHTMLElementWalker.js.map +1 -0
  253. package/lib-commonjs/utils/createHeadlessTree.js +203 -0
  254. package/lib-commonjs/utils/createHeadlessTree.js.map +1 -0
  255. package/lib-commonjs/utils/createOpenItems.js +18 -0
  256. package/lib-commonjs/utils/createOpenItems.js.map +1 -0
  257. package/lib-commonjs/utils/flattenTree.js +4 -40
  258. package/lib-commonjs/utils/flattenTree.js.map +1 -1
  259. package/lib-commonjs/utils/getTreeItemValueFromElement.js +18 -0
  260. package/lib-commonjs/utils/getTreeItemValueFromElement.js.map +1 -0
  261. package/lib-commonjs/utils/nextTypeAheadElement.js +1 -3
  262. package/lib-commonjs/utils/nextTypeAheadElement.js.map +1 -1
  263. package/lib-commonjs/utils/normalizeOpenItems.js +1 -3
  264. package/lib-commonjs/utils/normalizeOpenItems.js.map +1 -1
  265. package/lib-commonjs/utils/tokens.js +12 -13
  266. package/lib-commonjs/utils/tokens.js.map +1 -1
  267. package/lib-commonjs/utils/treeItemFilter.js +1 -3
  268. package/lib-commonjs/utils/treeItemFilter.js.map +1 -1
  269. package/package.json +31 -31
  270. package/.swcrc +0 -30
  271. package/lib/components/Tree/useTreeStyles.js.map +0 -1
  272. package/lib/components/TreeItem/useTreeItemStyles.js +0 -203
  273. package/lib/components/TreeItem/useTreeItemStyles.js.map +0 -1
  274. package/lib/components/TreeItemLayout/useTreeItemLayoutStyles.js +0 -98
  275. package/lib/components/TreeItemLayout/useTreeItemLayoutStyles.js.map +0 -1
  276. package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.js +0 -115
  277. package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.js.map +0 -1
  278. package/lib/hooks/index.js +0 -4
  279. package/lib/hooks/index.js.map +0 -1
  280. package/lib/hooks/useFlatTree.js +0 -77
  281. package/lib/hooks/useFlatTree.js.map +0 -1
  282. package/lib/hooks/useFlatTreeNavigation.js +0 -74
  283. package/lib/hooks/useFlatTreeNavigation.js.map +0 -1
  284. package/lib/hooks/useHTMLElementWalker.js +0 -80
  285. package/lib/hooks/useHTMLElementWalker.js.map +0 -1
  286. package/lib/hooks/useNestedTreeNavigation.js +0 -59
  287. package/lib/hooks/useNestedTreeNavigation.js.map +0 -1
  288. package/lib/hooks/useOpenItemsState.js +0 -22
  289. package/lib/hooks/useOpenItemsState.js.map +0 -1
  290. package/lib/utils/createFlatTreeItems.js +0 -109
  291. package/lib/utils/createFlatTreeItems.js.map +0 -1
  292. package/lib-commonjs/components/Tree/useTreeStyles.js.map +0 -1
  293. package/lib-commonjs/components/TreeItem/useTreeItemStyles.js +0 -375
  294. package/lib-commonjs/components/TreeItem/useTreeItemStyles.js.map +0 -1
  295. package/lib-commonjs/components/TreeItemLayout/useTreeItemLayoutStyles.js +0 -143
  296. package/lib-commonjs/components/TreeItemLayout/useTreeItemLayoutStyles.js.map +0 -1
  297. package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.js +0 -186
  298. package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.js.map +0 -1
  299. package/lib-commonjs/hooks/index.js +0 -11
  300. package/lib-commonjs/hooks/index.js.map +0 -1
  301. package/lib-commonjs/hooks/useFlatTree.js +0 -86
  302. package/lib-commonjs/hooks/useFlatTree.js.map +0 -1
  303. package/lib-commonjs/hooks/useFlatTreeNavigation.js +0 -82
  304. package/lib-commonjs/hooks/useFlatTreeNavigation.js.map +0 -1
  305. package/lib-commonjs/hooks/useHTMLElementWalker.js.map +0 -1
  306. package/lib-commonjs/hooks/useNestedTreeNavigation.js +0 -69
  307. package/lib-commonjs/hooks/useNestedTreeNavigation.js.map +0 -1
  308. package/lib-commonjs/hooks/useOpenItemsState.js +0 -39
  309. package/lib-commonjs/hooks/useOpenItemsState.js.map +0 -1
  310. package/lib-commonjs/utils/createFlatTreeItems.js +0 -126
  311. package/lib-commonjs/utils/createFlatTreeItems.js.map +0 -1
@@ -1,4 +1,4 @@
1
- "use strict";
1
+ /** @jsxRuntime classic */ /** @jsx createElement */ "use strict";
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
@@ -6,15 +6,12 @@ Object.defineProperty(exports, "renderTree_unstable", {
6
6
  enumerable: true,
7
7
  get: ()=>renderTree_unstable
8
8
  });
9
- const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
10
- const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
9
+ const _reactJsxRuntime = require("@fluentui/react-jsx-runtime");
11
10
  const _reactUtilities = require("@fluentui/react-utilities");
12
11
  const _contexts = require("../../contexts");
13
12
  const renderTree_unstable = (state, contextValues)=>{
14
- const { slots , slotProps } = (0, _reactUtilities.getSlots)(state);
15
- return /*#__PURE__*/ _react.createElement(_contexts.TreeProvider, {
13
+ (0, _reactUtilities.assertSlots)(state);
14
+ return /*#__PURE__*/ (0, _reactJsxRuntime.createElement)(_contexts.TreeProvider, {
16
15
  value: contextValues.tree
17
- }, /*#__PURE__*/ _react.createElement(slots.root, slotProps.root, slotProps.root.children));
18
- }; //# sourceMappingURL=renderTree.js.map
19
-
20
- //# sourceMappingURL=renderTree.js.map
16
+ }, state.open && /*#__PURE__*/ (0, _reactJsxRuntime.createElement)(state.root, null, state.root.children));
17
+ };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/Tree/renderTree.js"],"sourcesContent":["import * as React from 'react';\nimport { getSlots } from '@fluentui/react-utilities';\nimport { TreeProvider } from '../../contexts';\nexport const renderTree_unstable = (state, contextValues) => {\n const {\n slots,\n slotProps\n } = getSlots(state);\n return /*#__PURE__*/React.createElement(TreeProvider, {\n value: contextValues.tree\n }, /*#__PURE__*/React.createElement(slots.root, slotProps.root, slotProps.root.children));\n};\n//# sourceMappingURL=renderTree.js.map"],"names":["renderTree_unstable","state","contextValues","slots","slotProps","getSlots","React","createElement","TreeProvider","value","tree","root","children"],"mappings":";;;;+BAGaA;;aAAAA;;;6DAHU;gCACE;0BACI;AACtB,MAAMA,sBAAsB,CAACC,OAAOC,gBAAkB;IAC3D,MAAM,EACJC,MAAK,EACLC,UAAS,EACV,GAAGC,IAAAA,wBAAQ,EAACJ;IACb,OAAO,WAAW,GAAEK,OAAMC,aAAa,CAACC,sBAAY,EAAE;QACpDC,OAAOP,cAAcQ,IAAI;IAC3B,GAAG,WAAW,GAAEJ,OAAMC,aAAa,CAACJ,MAAMQ,IAAI,EAAEP,UAAUO,IAAI,EAAEP,UAAUO,IAAI,CAACC,QAAQ;AACzF,GACA,sCAAsC"}
1
+ {"version":3,"sources":["renderTree.js"],"sourcesContent":["/** @jsxRuntime classic */ /** @jsx createElement */ import { createElement } from '@fluentui/react-jsx-runtime';\nimport { assertSlots } from '@fluentui/react-utilities';\nimport { TreeProvider } from '../../contexts';\nexport const renderTree_unstable = (state, contextValues)=>{\n assertSlots(state);\n return /*#__PURE__*/ createElement(TreeProvider, {\n value: contextValues.tree\n }, state.open && /*#__PURE__*/ createElement(state.root, null, state.root.children));\n};\n"],"names":["renderTree_unstable","state","contextValues","assertSlots","createElement","TreeProvider","value","tree","open","root","children"],"mappings":"AAAA,wBAAwB,GAAG,uBAAuB;;;;+BAGrCA;;aAAAA;;iCAHsE;gCACvD;0BACC;AACtB,MAAMA,sBAAsB,CAACC,OAAOC,gBAAgB;IACvDC,IAAAA,2BAAW,EAACF;IACZ,OAAO,WAAW,GAAGG,IAAAA,8BAAa,EAACC,sBAAY,EAAE;QAC7CC,OAAOJ,cAAcK,IAAI;IAC7B,GAAGN,MAAMO,IAAI,IAAI,WAAW,GAAGJ,IAAAA,8BAAa,EAACH,MAAMQ,IAAI,EAAE,IAAI,EAAER,MAAMQ,IAAI,CAACC,QAAQ;AACtF"}
@@ -0,0 +1,37 @@
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
+ useNestedCheckedItems: ()=>useNestedCheckedItems,
13
+ createNextNestedCheckedItems: ()=>createNextNestedCheckedItems
14
+ });
15
+ const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
16
+ const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
17
+ const _immutableMap = require("../../utils/ImmutableMap");
18
+ const _createCheckedItems = require("../../utils/createCheckedItems");
19
+ function useNestedCheckedItems(props) {
20
+ return _react.useMemo(()=>(0, _createCheckedItems.createCheckedItems)(props.checkedItems), [
21
+ props.checkedItems
22
+ ]);
23
+ }
24
+ function createNextNestedCheckedItems(data, previousCheckedItems) {
25
+ if (data.selectionMode === 'single') {
26
+ return _immutableMap.ImmutableMap.create([
27
+ [
28
+ data.value,
29
+ data.checked
30
+ ]
31
+ ]);
32
+ }
33
+ if (data.selectionMode === 'multiselect') {
34
+ return previousCheckedItems.set(data.value, data.checked);
35
+ }
36
+ return previousCheckedItems;
37
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["useNestedControllableCheckedItems.js"],"sourcesContent":["import * as React from 'react';\nimport { ImmutableMap } from '../../utils/ImmutableMap';\nimport { createCheckedItems } from '../../utils/createCheckedItems';\nexport function useNestedCheckedItems(props) {\n return React.useMemo(()=>createCheckedItems(props.checkedItems), [\n props.checkedItems\n ]);\n}\nexport function createNextNestedCheckedItems(data, previousCheckedItems) {\n if (data.selectionMode === 'single') {\n return ImmutableMap.create([\n [\n data.value,\n data.checked\n ]\n ]);\n }\n if (data.selectionMode === 'multiselect') {\n return previousCheckedItems.set(data.value, data.checked);\n }\n return previousCheckedItems;\n}\n"],"names":["useNestedCheckedItems","createNextNestedCheckedItems","props","React","useMemo","createCheckedItems","checkedItems","data","previousCheckedItems","selectionMode","ImmutableMap","create","value","checked","set"],"mappings":";;;;;;;;;;;IAGgBA,qBAAqB,MAArBA;IAKAC,4BAA4B,MAA5BA;;;6DARO;8BACM;oCACM;AAC5B,SAASD,sBAAsBE,KAAK,EAAE;IACzC,OAAOC,OAAMC,OAAO,CAAC,IAAIC,IAAAA,sCAAkB,EAACH,MAAMI,YAAY,GAAG;QAC7DJ,MAAMI,YAAY;KACrB;AACL;AACO,SAASL,6BAA6BM,IAAI,EAAEC,oBAAoB,EAAE;IACrE,IAAID,KAAKE,aAAa,KAAK,UAAU;QACjC,OAAOC,0BAAY,CAACC,MAAM,CAAC;YACvB;gBACIJ,KAAKK,KAAK;gBACVL,KAAKM,OAAO;aACf;SACJ;IACL,CAAC;IACD,IAAIN,KAAKE,aAAa,KAAK,eAAe;QACtC,OAAOD,qBAAqBM,GAAG,CAACP,KAAKK,KAAK,EAAEL,KAAKM,OAAO;IAC5D,CAAC;IACD,OAAOL;AACX"}
@@ -9,99 +9,67 @@ Object.defineProperty(exports, "useTree_unstable", {
9
9
  const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
10
10
  const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
11
11
  const _reactUtilities = require("@fluentui/react-utilities");
12
- const _contexts = require("../../contexts");
13
- const _hooks = require("../../hooks");
14
- const _tokens = require("../../utils/tokens");
12
+ const _useControllableOpenItems = require("../../hooks/useControllableOpenItems");
13
+ const _useNestedControllableCheckedItems = require("./useNestedControllableCheckedItems");
14
+ const _treeContext = require("../../contexts/treeContext");
15
+ const _useRootTree = require("../../hooks/useRootTree");
16
+ const _useSubtree = require("../../hooks/useSubtree");
17
+ const _createHTMLElementWalker = require("../../utils/createHTMLElementWalker");
18
+ const _treeItemFilter = require("../../utils/treeItemFilter");
19
+ const _useTreeNavigation = require("./useTreeNavigation");
15
20
  const useTree_unstable = (props, ref)=>{
16
- const isSubtree = (0, _contexts.useTreeContext_unstable)((ctx)=>ctx.level > 0);
17
- // as isSubtree is static, this doesn't break rule of hooks
21
+ const isSubtree = (0, _treeContext.useTreeContext_unstable)((ctx)=>ctx.level > 0);
22
+ // as isSubTree is static, this doesn't break rule of hooks
18
23
  // and if this becomes an issue later on, this can be easily converted
19
24
  // eslint-disable-next-line react-hooks/rules-of-hooks
20
- return isSubtree ? useSubtree(props, ref) : useRootTree(props, ref);
25
+ return isSubtree ? (0, _useSubtree.useSubtree)(props, ref) : useNestedRootTree(props, ref);
21
26
  };
22
- /**
23
- * Create the state required to render a sub-level Tree.
24
- *
25
- * @param props - props from this instance of Tree
26
- * @param ref - reference to root HTMLElement of Tree
27
- */ function useSubtree(props, ref) {
28
- const contextAppearance = (0, _contexts.useTreeContext_unstable)((ctx)=>ctx.appearance);
29
- const contextSize = (0, _contexts.useTreeContext_unstable)((ctx)=>ctx.size);
30
- const { appearance =contextAppearance !== null && contextAppearance !== void 0 ? contextAppearance : 'subtle' , size =contextSize !== null && contextSize !== void 0 ? contextSize : 'medium' } = props;
31
- const parentLevel = (0, _contexts.useTreeContext_unstable)((ctx)=>ctx.level);
32
- const openItems = (0, _contexts.useTreeContext_unstable)((ctx)=>ctx.openItems);
33
- const requestOpenChange = (0, _contexts.useTreeContext_unstable)((ctx)=>ctx.requestOpenChange);
34
- const requestNavigation = (0, _contexts.useTreeContext_unstable)((ctx)=>ctx.requestNavigation);
35
- return {
36
- components: {
37
- root: 'div'
38
- },
39
- appearance,
40
- size,
41
- level: parentLevel + 1,
42
- root: (0, _reactUtilities.getNativeElementProps)('div', {
43
- ref,
44
- role: 'group',
45
- ...props
46
- }),
47
- openItems,
48
- requestOpenChange,
49
- requestNavigation
50
- };
51
- }
52
- /**
53
- * Create the state required to render the root level Tree.
54
- *
55
- * @param props - props from this instance of Tree
56
- * @param ref - reference to root HTMLElement of Tree
57
- */ function useRootTree(props, ref) {
58
- warnIfNoProperPropsRootTree(props);
59
- const { appearance ='subtle' , size ='medium' } = props;
60
- const [openItems, updateOpenItems] = (0, _hooks.useOpenItemsState)(props);
61
- const [navigate, navigationRef] = (0, _hooks.useNestedTreeNavigation)();
62
- const requestOpenChange = (0, _reactUtilities.useEventCallback)((data)=>{
63
- var _props_onOpenChange;
64
- (_props_onOpenChange = props.onOpenChange) === null || _props_onOpenChange === void 0 ? void 0 : _props_onOpenChange.call(props, data.event, data);
65
- if (data.event.isDefaultPrevented()) {
66
- return;
27
+ function useNestedRootTree(props, ref) {
28
+ const [openItems, setOpenItems] = (0, _useControllableOpenItems.useControllableOpenItems)(props);
29
+ const checkedItems = (0, _useNestedControllableCheckedItems.useNestedCheckedItems)(props);
30
+ const { navigate , initialize } = (0, _useTreeNavigation.useTreeNavigation)();
31
+ const walkerRef = _react.useRef();
32
+ const initializeWalker = _react.useCallback((root)=>{
33
+ if (root) {
34
+ walkerRef.current = (0, _createHTMLElementWalker.createHTMLElementWalker)(root, _treeItemFilter.treeItemFilter);
35
+ initialize(walkerRef.current);
67
36
  }
68
- return updateOpenItems(data);
37
+ }, [
38
+ initialize
39
+ ]);
40
+ const handleOpenChange = (0, _reactUtilities.useEventCallback)((event, data)=>{
41
+ var _props_onOpenChange;
42
+ const nextOpenItems = (0, _useControllableOpenItems.createNextOpenItems)(data, openItems);
43
+ (_props_onOpenChange = props.onOpenChange) === null || _props_onOpenChange === void 0 ? void 0 : _props_onOpenChange.call(props, event, {
44
+ ...data,
45
+ openItems: nextOpenItems.dangerouslyGetInternalSet_unstable()
46
+ });
47
+ setOpenItems(nextOpenItems);
69
48
  });
70
- const requestNavigation = (0, _reactUtilities.useEventCallback)((data)=>{
71
- var _props_onNavigation_unstable;
72
- (_props_onNavigation_unstable = props.onNavigation_unstable) === null || _props_onNavigation_unstable === void 0 ? void 0 : _props_onNavigation_unstable.call(props, data.event, data);
73
- if (data.event.isDefaultPrevented()) {
74
- return;
49
+ const handleCheckedChange = (0, _reactUtilities.useEventCallback)((event, data)=>{
50
+ if (walkerRef.current) {
51
+ var _props_onCheckedChange;
52
+ const nextCheckedItems = (0, _useNestedControllableCheckedItems.createNextNestedCheckedItems)(data, checkedItems);
53
+ (_props_onCheckedChange = props.onCheckedChange) === null || _props_onCheckedChange === void 0 ? void 0 : _props_onCheckedChange.call(props, event, {
54
+ ...data,
55
+ checkedItems: nextCheckedItems.dangerouslyGetInternalMap_unstable()
56
+ });
75
57
  }
76
- navigate(data);
77
- if (data.type === _tokens.treeDataTypes.arrowDown || data.type === _tokens.treeDataTypes.arrowUp) {
78
- data.event.preventDefault();
58
+ });
59
+ const handleNavigation = (0, _reactUtilities.useEventCallback)((event, data)=>{
60
+ var _props_onNavigation;
61
+ (_props_onNavigation = props.onNavigation) === null || _props_onNavigation === void 0 ? void 0 : _props_onNavigation.call(props, event, data);
62
+ if (walkerRef.current) {
63
+ navigate(data, walkerRef.current);
79
64
  }
80
65
  });
81
- return {
82
- components: {
83
- root: 'div'
84
- },
85
- appearance,
86
- size,
87
- level: 1,
66
+ return (0, _useRootTree.useRootTree)({
67
+ ...props,
88
68
  openItems,
89
- requestOpenChange,
90
- requestNavigation,
91
- root: (0, _reactUtilities.getNativeElementProps)('div', {
92
- ref: (0, _reactUtilities.useMergedRefs)(navigationRef, ref),
93
- role: 'tree',
94
- ...props
95
- })
96
- };
69
+ checkedItems,
70
+ onOpenChange: handleOpenChange,
71
+ // eslint-disable-next-line @typescript-eslint/naming-convention
72
+ onNavigation: handleNavigation,
73
+ onCheckedChange: handleCheckedChange
74
+ }, (0, _reactUtilities.useMergedRefs)(ref, initializeWalker));
97
75
  }
98
- function warnIfNoProperPropsRootTree(props) {
99
- if (process.env.NODE_ENV === 'development') {
100
- if (!props['aria-label'] && !props['aria-labelledby']) {
101
- // eslint-disable-next-line no-console
102
- console.warn('Tree must have either a `aria-label` or `aria-labelledby` property defined');
103
- }
104
- }
105
- } //# sourceMappingURL=useTree.js.map
106
-
107
- //# sourceMappingURL=useTree.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/Tree/useTree.js"],"sourcesContent":["import * as React from 'react';\nimport { getNativeElementProps, useEventCallback, useMergedRefs } from '@fluentui/react-utilities';\nimport { useTreeContext_unstable } from '../../contexts';\nimport { useNestedTreeNavigation, useOpenItemsState } from '../../hooks';\nimport { treeDataTypes } from '../../utils/tokens';\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, 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/**\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, ref) {\n const contextAppearance = useTreeContext_unstable(ctx => ctx.appearance);\n const contextSize = useTreeContext_unstable(ctx => ctx.size);\n const {\n appearance = contextAppearance !== null && contextAppearance !== void 0 ? contextAppearance : 'subtle',\n size = contextSize !== null && contextSize !== void 0 ? contextSize : 'medium'\n } = props;\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 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 * 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, ref) {\n warnIfNoProperPropsRootTree(props);\n const {\n appearance = 'subtle',\n size = 'medium'\n } = props;\n const [openItems, updateOpenItems] = useOpenItemsState(props);\n const [navigate, navigationRef] = useNestedTreeNavigation();\n const requestOpenChange = useEventCallback(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 = useEventCallback(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 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}\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//# sourceMappingURL=useTree.js.map"],"names":["useTree_unstable","props","ref","isSubtree","useTreeContext_unstable","ctx","level","useSubtree","useRootTree","contextAppearance","appearance","contextSize","size","parentLevel","openItems","requestOpenChange","requestNavigation","components","root","getNativeElementProps","role","warnIfNoProperPropsRootTree","updateOpenItems","useOpenItemsState","navigate","navigationRef","useNestedTreeNavigation","useEventCallback","data","_props_onOpenChange","onOpenChange","call","event","isDefaultPrevented","_props_onNavigation_unstable","onNavigation_unstable","type","treeDataTypes","arrowDown","arrowUp","preventDefault","useMergedRefs","process","env","NODE_ENV","console","warn"],"mappings":";;;;+BAcaA;;aAAAA;;;6DAdU;gCACgD;0BAC/B;uBACmB;wBAC7B;AAUvB,MAAMA,mBAAmB,CAACC,OAAOC,MAAQ;IAC9C,MAAMC,YAAYC,IAAAA,iCAAuB,EAACC,CAAAA,MAAOA,IAAIC,KAAK,GAAG;IAC7D,2DAA2D;IAC3D,sEAAsE;IACtE,sDAAsD;IACtD,OAAOH,YAAYI,WAAWN,OAAOC,OAAOM,YAAYP,OAAOC,IAAI;AACrE;AACA;;;;;CAKC,GACD,SAASK,WAAWN,KAAK,EAAEC,GAAG,EAAE;IAC9B,MAAMO,oBAAoBL,IAAAA,iCAAuB,EAACC,CAAAA,MAAOA,IAAIK,UAAU;IACvE,MAAMC,cAAcP,IAAAA,iCAAuB,EAACC,CAAAA,MAAOA,IAAIO,IAAI;IAC3D,MAAM,EACJF,YAAaD,sBAAsB,IAAI,IAAIA,sBAAsB,KAAK,IAAIA,oBAAoB,QAAQ,CAAA,EACtGG,MAAOD,gBAAgB,IAAI,IAAIA,gBAAgB,KAAK,IAAIA,cAAc,QAAQ,CAAA,EAC/E,GAAGV;IACJ,MAAMY,cAAcT,IAAAA,iCAAuB,EAACC,CAAAA,MAAOA,IAAIC,KAAK;IAC5D,MAAMQ,YAAYV,IAAAA,iCAAuB,EAACC,CAAAA,MAAOA,IAAIS,SAAS;IAC9D,MAAMC,oBAAoBX,IAAAA,iCAAuB,EAACC,CAAAA,MAAOA,IAAIU,iBAAiB;IAC9E,MAAMC,oBAAoBZ,IAAAA,iCAAuB,EAACC,CAAAA,MAAOA,IAAIW,iBAAiB;IAC9E,OAAO;QACLC,YAAY;YACVC,MAAM;QACR;QACAR;QACAE;QACAN,OAAOO,cAAc;QACrBK,MAAMC,IAAAA,qCAAqB,EAAC,OAAO;YACjCjB;YACAkB,MAAM;YACN,GAAGnB,KAAK;QACV;QACAa;QACAC;QACAC;IACF;AACF;AACA;;;;;CAKC,GACD,SAASR,YAAYP,KAAK,EAAEC,GAAG,EAAE;IAC/BmB,4BAA4BpB;IAC5B,MAAM,EACJS,YAAa,SAAQ,EACrBE,MAAO,SAAQ,EAChB,GAAGX;IACJ,MAAM,CAACa,WAAWQ,gBAAgB,GAAGC,IAAAA,wBAAiB,EAACtB;IACvD,MAAM,CAACuB,UAAUC,cAAc,GAAGC,IAAAA,8BAAuB;IACzD,MAAMX,oBAAoBY,IAAAA,gCAAgB,EAACC,CAAAA,OAAQ;QACjD,IAAIC;QACHA,CAAAA,sBAAsB5B,MAAM6B,YAAY,AAAD,MAAO,IAAI,IAAID,wBAAwB,KAAK,IAAI,KAAK,IAAIA,oBAAoBE,IAAI,CAAC9B,OAAO2B,KAAKI,KAAK,EAAEJ,KAAK;QAClJ,IAAIA,KAAKI,KAAK,CAACC,kBAAkB,IAAI;YACnC;QACF,CAAC;QACD,OAAOX,gBAAgBM;IACzB;IACA,MAAMZ,oBAAoBW,IAAAA,gCAAgB,EAACC,CAAAA,OAAQ;QACjD,IAAIM;QACHA,CAAAA,+BAA+BjC,MAAMkC,qBAAqB,AAAD,MAAO,IAAI,IAAID,iCAAiC,KAAK,IAAI,KAAK,IAAIA,6BAA6BH,IAAI,CAAC9B,OAAO2B,KAAKI,KAAK,EAAEJ,KAAK;QACtL,IAAIA,KAAKI,KAAK,CAACC,kBAAkB,IAAI;YACnC;QACF,CAAC;QACDT,SAASI;QACT,IAAIA,KAAKQ,IAAI,KAAKC,qBAAa,CAACC,SAAS,IAAIV,KAAKQ,IAAI,KAAKC,qBAAa,CAACE,OAAO,EAAE;YAChFX,KAAKI,KAAK,CAACQ,cAAc;QAC3B,CAAC;IACH;IACA,OAAO;QACLvB,YAAY;YACVC,MAAM;QACR;QACAR;QACAE;QACAN,OAAO;QACPQ;QACAC;QACAC;QACAE,MAAMC,IAAAA,qCAAqB,EAAC,OAAO;YACjCjB,KAAKuC,IAAAA,6BAAa,EAAChB,eAAevB;YAClCkB,MAAM;YACN,GAAGnB,KAAK;QACV;IACF;AACF;AACA,SAASoB,4BAA4BpB,KAAK,EAAE;IAC1C,IAAIyC,QAAQC,GAAG,CAACC,QAAQ,KAAK,eAAe;QAC1C,IAAI,CAAC3C,KAAK,CAAC,aAAa,IAAI,CAACA,KAAK,CAAC,kBAAkB,EAAE;YACrD,sCAAsC;YACtC4C,QAAQC,IAAI,CAAC;QACf,CAAC;IACH,CAAC;AACH,EACA,mCAAmC"}
1
+ {"version":3,"sources":["useTree.js"],"sourcesContent":["import * as React from 'react';\nimport { useEventCallback, useMergedRefs } from '@fluentui/react-utilities';\nimport { createNextOpenItems, useControllableOpenItems } from '../../hooks/useControllableOpenItems';\nimport { createNextNestedCheckedItems, useNestedCheckedItems } from './useNestedControllableCheckedItems';\nimport { useTreeContext_unstable } from '../../contexts/treeContext';\nimport { useRootTree } from '../../hooks/useRootTree';\nimport { useSubtree } from '../../hooks/useSubtree';\nimport { createHTMLElementWalker } from '../../utils/createHTMLElementWalker';\nimport { treeItemFilter } from '../../utils/treeItemFilter';\nimport { useTreeNavigation } from './useTreeNavigation';\nexport 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) : useNestedRootTree(props, ref);\n};\nfunction useNestedRootTree(props, ref) {\n const [openItems, setOpenItems] = useControllableOpenItems(props);\n const checkedItems = useNestedCheckedItems(props);\n const { navigate , initialize } = useTreeNavigation();\n const walkerRef = React.useRef();\n const initializeWalker = React.useCallback((root)=>{\n if (root) {\n walkerRef.current = createHTMLElementWalker(root, treeItemFilter);\n initialize(walkerRef.current);\n }\n }, [\n initialize\n ]);\n const handleOpenChange = useEventCallback((event, data)=>{\n var _props_onOpenChange;\n const nextOpenItems = createNextOpenItems(data, openItems);\n (_props_onOpenChange = props.onOpenChange) === null || _props_onOpenChange === void 0 ? void 0 : _props_onOpenChange.call(props, event, {\n ...data,\n openItems: nextOpenItems.dangerouslyGetInternalSet_unstable()\n });\n setOpenItems(nextOpenItems);\n });\n const handleCheckedChange = useEventCallback((event, data)=>{\n if (walkerRef.current) {\n var _props_onCheckedChange;\n const nextCheckedItems = createNextNestedCheckedItems(data, checkedItems);\n (_props_onCheckedChange = props.onCheckedChange) === null || _props_onCheckedChange === void 0 ? void 0 : _props_onCheckedChange.call(props, event, {\n ...data,\n checkedItems: nextCheckedItems.dangerouslyGetInternalMap_unstable()\n });\n }\n });\n const handleNavigation = useEventCallback((event, data)=>{\n var _props_onNavigation;\n (_props_onNavigation = props.onNavigation) === null || _props_onNavigation === void 0 ? void 0 : _props_onNavigation.call(props, event, data);\n if (walkerRef.current) {\n navigate(data, walkerRef.current);\n }\n });\n return useRootTree({\n ...props,\n openItems,\n checkedItems,\n onOpenChange: handleOpenChange,\n // eslint-disable-next-line @typescript-eslint/naming-convention\n onNavigation: handleNavigation,\n onCheckedChange: handleCheckedChange\n }, useMergedRefs(ref, initializeWalker));\n}\n"],"names":["useTree_unstable","props","ref","isSubtree","useTreeContext_unstable","ctx","level","useSubtree","useNestedRootTree","openItems","setOpenItems","useControllableOpenItems","checkedItems","useNestedCheckedItems","navigate","initialize","useTreeNavigation","walkerRef","React","useRef","initializeWalker","useCallback","root","current","createHTMLElementWalker","treeItemFilter","handleOpenChange","useEventCallback","event","data","_props_onOpenChange","nextOpenItems","createNextOpenItems","onOpenChange","call","dangerouslyGetInternalSet_unstable","handleCheckedChange","_props_onCheckedChange","nextCheckedItems","createNextNestedCheckedItems","onCheckedChange","dangerouslyGetInternalMap_unstable","handleNavigation","_props_onNavigation","onNavigation","useRootTree","useMergedRefs"],"mappings":";;;;+BAUaA;;aAAAA;;;6DAVU;gCACyB;0CACc;mDACM;6BAC5B;6BACZ;4BACD;yCACa;gCACT;mCACG;AAC3B,MAAMA,mBAAmB,CAACC,OAAOC,MAAM;IAC1C,MAAMC,YAAYC,IAAAA,oCAAuB,EAAC,CAACC,MAAMA,IAAIC,KAAK,GAAG;IAC7D,2DAA2D;IAC3D,sEAAsE;IACtE,sDAAsD;IACtD,OAAOH,YAAYI,IAAAA,sBAAU,EAACN,OAAOC,OAAOM,kBAAkBP,OAAOC,IAAI;AAC7E;AACA,SAASM,kBAAkBP,KAAK,EAAEC,GAAG,EAAE;IACnC,MAAM,CAACO,WAAWC,aAAa,GAAGC,IAAAA,kDAAwB,EAACV;IAC3D,MAAMW,eAAeC,IAAAA,wDAAqB,EAACZ;IAC3C,MAAM,EAAEa,SAAQ,EAAGC,WAAU,EAAG,GAAGC,IAAAA,oCAAiB;IACpD,MAAMC,YAAYC,OAAMC,MAAM;IAC9B,MAAMC,mBAAmBF,OAAMG,WAAW,CAAC,CAACC,OAAO;QAC/C,IAAIA,MAAM;YACNL,UAAUM,OAAO,GAAGC,IAAAA,gDAAuB,EAACF,MAAMG,8BAAc;YAChEV,WAAWE,UAAUM,OAAO;QAChC,CAAC;IACL,GAAG;QACCR;KACH;IACD,MAAMW,mBAAmBC,IAAAA,gCAAgB,EAAC,CAACC,OAAOC,OAAO;QACrD,IAAIC;QACJ,MAAMC,gBAAgBC,IAAAA,6CAAmB,EAACH,MAAMpB;QAC/CqB,CAAAA,sBAAsB7B,MAAMgC,YAAY,AAAD,MAAO,IAAI,IAAIH,wBAAwB,KAAK,IAAI,KAAK,IAAIA,oBAAoBI,IAAI,CAACjC,OAAO2B,OAAO;YACpI,GAAGC,IAAI;YACPpB,WAAWsB,cAAcI,kCAAkC;QAC/D,EAAE;QACFzB,aAAaqB;IACjB;IACA,MAAMK,sBAAsBT,IAAAA,gCAAgB,EAAC,CAACC,OAAOC,OAAO;QACxD,IAAIZ,UAAUM,OAAO,EAAE;YACnB,IAAIc;YACJ,MAAMC,mBAAmBC,IAAAA,+DAA4B,EAACV,MAAMjB;YAC3DyB,CAAAA,yBAAyBpC,MAAMuC,eAAe,AAAD,MAAO,IAAI,IAAIH,2BAA2B,KAAK,IAAI,KAAK,IAAIA,uBAAuBH,IAAI,CAACjC,OAAO2B,OAAO;gBAChJ,GAAGC,IAAI;gBACPjB,cAAc0B,iBAAiBG,kCAAkC;YACrE,EAAE;QACN,CAAC;IACL;IACA,MAAMC,mBAAmBf,IAAAA,gCAAgB,EAAC,CAACC,OAAOC,OAAO;QACrD,IAAIc;QACHA,CAAAA,sBAAsB1C,MAAM2C,YAAY,AAAD,MAAO,IAAI,IAAID,wBAAwB,KAAK,IAAI,KAAK,IAAIA,oBAAoBT,IAAI,CAACjC,OAAO2B,OAAOC,KAAK;QAC7I,IAAIZ,UAAUM,OAAO,EAAE;YACnBT,SAASe,MAAMZ,UAAUM,OAAO;QACpC,CAAC;IACL;IACA,OAAOsB,IAAAA,wBAAW,EAAC;QACf,GAAG5C,KAAK;QACRQ;QACAG;QACAqB,cAAcP;QACd,gEAAgE;QAChEkB,cAAcF;QACdF,iBAAiBJ;IACrB,GAAGU,IAAAA,6BAAa,EAAC5C,KAAKkB;AAC1B"}
@@ -7,21 +7,20 @@ Object.defineProperty(exports, "useTreeContextValues_unstable", {
7
7
  get: ()=>useTreeContextValues_unstable
8
8
  });
9
9
  function useTreeContextValues_unstable(state) {
10
- const { openItems , level , appearance , size , requestOpenChange , requestNavigation } = state;
10
+ const { openItems , checkedItems , selectionMode , level , appearance , size , requestTreeResponse } = state;
11
11
  /**
12
- * This context is created with "@fluentui/react-context-selector",
13
- * there is no sense to memoize it
14
- */ const tree = {
15
- appearance,
12
+ * This context is created with "@fluentui/react-context-selector",
13
+ * there is no sense to memoize it
14
+ */ const tree = {
16
15
  size,
17
16
  level,
18
17
  openItems,
19
- requestOpenChange,
20
- requestNavigation
18
+ appearance,
19
+ checkedItems,
20
+ selectionMode,
21
+ requestTreeResponse
21
22
  };
22
23
  return {
23
24
  tree
24
25
  };
25
- } //# sourceMappingURL=useTreeContextValues.js.map
26
-
27
- //# sourceMappingURL=useTreeContextValues.js.map
26
+ }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/Tree/useTreeContextValues.js"],"sourcesContent":["export function useTreeContextValues_unstable(state) {\n const {\n openItems,\n level,\n appearance,\n size,\n requestOpenChange,\n requestNavigation\n } = state;\n /**\n * This context is created with \"@fluentui/react-context-selector\",\n * there is no sense to memoize it\n */\n const tree = {\n appearance,\n size,\n level,\n openItems,\n requestOpenChange,\n requestNavigation\n };\n return {\n tree\n };\n}\n//# sourceMappingURL=useTreeContextValues.js.map"],"names":["useTreeContextValues_unstable","state","openItems","level","appearance","size","requestOpenChange","requestNavigation","tree"],"mappings":";;;;+BAAgBA;;aAAAA;;AAAT,SAASA,8BAA8BC,KAAK,EAAE;IACnD,MAAM,EACJC,UAAS,EACTC,MAAK,EACLC,WAAU,EACVC,KAAI,EACJC,kBAAiB,EACjBC,kBAAiB,EAClB,GAAGN;IACJ;;;EAGA,GACA,MAAMO,OAAO;QACXJ;QACAC;QACAF;QACAD;QACAI;QACAC;IACF;IACA,OAAO;QACLC;IACF;AACF,EACA,gDAAgD"}
1
+ {"version":3,"sources":["useTreeContextValues.js"],"sourcesContent":["export function useTreeContextValues_unstable(state) {\n const { openItems , checkedItems , selectionMode , 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 size,\n level,\n openItems,\n appearance,\n checkedItems,\n selectionMode,\n requestTreeResponse\n };\n return {\n tree\n };\n}\n"],"names":["useTreeContextValues_unstable","state","openItems","checkedItems","selectionMode","level","appearance","size","requestTreeResponse","tree"],"mappings":";;;;+BAAgBA;;aAAAA;;AAAT,SAASA,8BAA8BC,KAAK,EAAE;IACjD,MAAM,EAAEC,UAAS,EAAGC,aAAY,EAAGC,cAAa,EAAGC,MAAK,EAAGC,WAAU,EAAGC,KAAI,EAAGC,oBAAmB,EAAG,GAAGP;IACxG;;;GAGD,GAAG,MAAMQ,OAAO;QACXF;QACAF;QACAH;QACAI;QACAH;QACAC;QACAI;IACJ;IACA,OAAO;QACHC;IACJ;AACJ"}
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "useTreeNavigation", {
6
+ enumerable: true,
7
+ get: ()=>useTreeNavigation
8
+ });
9
+ const _nextTypeAheadElement = require("../../utils/nextTypeAheadElement");
10
+ const _tokens = require("../../utils/tokens");
11
+ const _treeItemFilter = require("../../utils/treeItemFilter");
12
+ const _useRovingTabIndexes = require("../../hooks/useRovingTabIndexes");
13
+ function useTreeNavigation() {
14
+ const { rove , initialize } = (0, _useRovingTabIndexes.useRovingTabIndex)(_treeItemFilter.treeItemFilter);
15
+ const getNextElement = (data, treeItemWalker)=>{
16
+ switch(data.type){
17
+ case _tokens.treeDataTypes.Click:
18
+ return data.target;
19
+ case _tokens.treeDataTypes.TypeAhead:
20
+ treeItemWalker.currentElement = data.target;
21
+ return (0, _nextTypeAheadElement.nextTypeAheadElement)(treeItemWalker, data.event.key);
22
+ case _tokens.treeDataTypes.ArrowLeft:
23
+ treeItemWalker.currentElement = data.target;
24
+ return treeItemWalker.parentElement();
25
+ case _tokens.treeDataTypes.ArrowRight:
26
+ treeItemWalker.currentElement = data.target;
27
+ return treeItemWalker.firstChild();
28
+ case _tokens.treeDataTypes.End:
29
+ treeItemWalker.currentElement = treeItemWalker.root;
30
+ return lastChildRecursive(treeItemWalker);
31
+ case _tokens.treeDataTypes.Home:
32
+ treeItemWalker.currentElement = treeItemWalker.root;
33
+ return treeItemWalker.firstChild();
34
+ case _tokens.treeDataTypes.ArrowDown:
35
+ treeItemWalker.currentElement = data.target;
36
+ return treeItemWalker.nextElement();
37
+ case _tokens.treeDataTypes.ArrowUp:
38
+ treeItemWalker.currentElement = data.target;
39
+ return treeItemWalker.previousElement();
40
+ }
41
+ };
42
+ function navigate(data, walker) {
43
+ const nextElement = getNextElement(data, walker);
44
+ if (nextElement) {
45
+ rove(nextElement);
46
+ }
47
+ }
48
+ return {
49
+ navigate,
50
+ initialize
51
+ };
52
+ }
53
+ function lastChildRecursive(walker) {
54
+ let lastElement = null;
55
+ let nextElement = null;
56
+ while(nextElement = walker.lastChild()){
57
+ lastElement = nextElement;
58
+ }
59
+ return lastElement;
60
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["useTreeNavigation.js"],"sourcesContent":["import { nextTypeAheadElement } from '../../utils/nextTypeAheadElement';\nimport { treeDataTypes } from '../../utils/tokens';\nimport { treeItemFilter } from '../../utils/treeItemFilter';\nimport { useRovingTabIndex } from '../../hooks/useRovingTabIndexes';\nexport function useTreeNavigation() {\n const { rove , initialize } = useRovingTabIndex(treeItemFilter);\n const getNextElement = (data, treeItemWalker)=>{\n switch(data.type){\n case treeDataTypes.Click:\n return data.target;\n case treeDataTypes.TypeAhead:\n treeItemWalker.currentElement = data.target;\n return nextTypeAheadElement(treeItemWalker, data.event.key);\n case treeDataTypes.ArrowLeft:\n treeItemWalker.currentElement = data.target;\n return treeItemWalker.parentElement();\n case treeDataTypes.ArrowRight:\n treeItemWalker.currentElement = data.target;\n return treeItemWalker.firstChild();\n case treeDataTypes.End:\n treeItemWalker.currentElement = treeItemWalker.root;\n return lastChildRecursive(treeItemWalker);\n case treeDataTypes.Home:\n treeItemWalker.currentElement = treeItemWalker.root;\n return treeItemWalker.firstChild();\n case treeDataTypes.ArrowDown:\n treeItemWalker.currentElement = data.target;\n return treeItemWalker.nextElement();\n case treeDataTypes.ArrowUp:\n treeItemWalker.currentElement = data.target;\n return treeItemWalker.previousElement();\n }\n };\n function navigate(data, walker) {\n const nextElement = getNextElement(data, walker);\n if (nextElement) {\n rove(nextElement);\n }\n }\n return {\n navigate,\n initialize\n };\n}\nfunction lastChildRecursive(walker) {\n let lastElement = null;\n let nextElement = null;\n while(nextElement = walker.lastChild()){\n lastElement = nextElement;\n }\n return lastElement;\n}\n"],"names":["useTreeNavigation","rove","initialize","useRovingTabIndex","treeItemFilter","getNextElement","data","treeItemWalker","type","treeDataTypes","Click","target","TypeAhead","currentElement","nextTypeAheadElement","event","key","ArrowLeft","parentElement","ArrowRight","firstChild","End","root","lastChildRecursive","Home","ArrowDown","nextElement","ArrowUp","previousElement","navigate","walker","lastElement","lastChild"],"mappings":";;;;+BAIgBA;;aAAAA;;sCAJqB;wBACP;gCACC;qCACG;AAC3B,SAASA,oBAAoB;IAChC,MAAM,EAAEC,KAAI,EAAGC,WAAU,EAAG,GAAGC,IAAAA,sCAAiB,EAACC,8BAAc;IAC/D,MAAMC,iBAAiB,CAACC,MAAMC,iBAAiB;QAC3C,OAAOD,KAAKE,IAAI;YACZ,KAAKC,qBAAa,CAACC,KAAK;gBACpB,OAAOJ,KAAKK,MAAM;YACtB,KAAKF,qBAAa,CAACG,SAAS;gBACxBL,eAAeM,cAAc,GAAGP,KAAKK,MAAM;gBAC3C,OAAOG,IAAAA,0CAAoB,EAACP,gBAAgBD,KAAKS,KAAK,CAACC,GAAG;YAC9D,KAAKP,qBAAa,CAACQ,SAAS;gBACxBV,eAAeM,cAAc,GAAGP,KAAKK,MAAM;gBAC3C,OAAOJ,eAAeW,aAAa;YACvC,KAAKT,qBAAa,CAACU,UAAU;gBACzBZ,eAAeM,cAAc,GAAGP,KAAKK,MAAM;gBAC3C,OAAOJ,eAAea,UAAU;YACpC,KAAKX,qBAAa,CAACY,GAAG;gBAClBd,eAAeM,cAAc,GAAGN,eAAee,IAAI;gBACnD,OAAOC,mBAAmBhB;YAC9B,KAAKE,qBAAa,CAACe,IAAI;gBACnBjB,eAAeM,cAAc,GAAGN,eAAee,IAAI;gBACnD,OAAOf,eAAea,UAAU;YACpC,KAAKX,qBAAa,CAACgB,SAAS;gBACxBlB,eAAeM,cAAc,GAAGP,KAAKK,MAAM;gBAC3C,OAAOJ,eAAemB,WAAW;YACrC,KAAKjB,qBAAa,CAACkB,OAAO;gBACtBpB,eAAeM,cAAc,GAAGP,KAAKK,MAAM;gBAC3C,OAAOJ,eAAeqB,eAAe;QAC7C;IACJ;IACA,SAASC,SAASvB,IAAI,EAAEwB,MAAM,EAAE;QAC5B,MAAMJ,cAAcrB,eAAeC,MAAMwB;QACzC,IAAIJ,aAAa;YACbzB,KAAKyB;QACT,CAAC;IACL;IACA,OAAO;QACHG;QACA3B;IACJ;AACJ;AACA,SAASqB,mBAAmBO,MAAM,EAAE;IAChC,IAAIC,cAAc,IAAI;IACtB,IAAIL,cAAc,IAAI;IACtB,MAAMA,cAAcI,OAAOE,SAAS,GAAG;QACnCD,cAAcL;IAClB;IACA,OAAOK;AACX"}
@@ -21,18 +21,21 @@ const useStyles = /*#__PURE__*/ (0, _react["__styles"])({
21
21
  mc9l5x: "f22iagw",
22
22
  Beiy3e4: "f1vx9l62",
23
23
  Belr9w4: "f1j0q4x9"
24
+ },
25
+ subtree: {
26
+ z8tnut: "fclwglc"
24
27
  }
25
28
  }, {
26
29
  d: [
27
- ".f22iagw{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}",
28
- ".f1vx9l62{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}",
29
- ".f1j0q4x9{row-gap:var(--spacingVerticalXXS);}"
30
+ ".f22iagw{display:flex;}",
31
+ ".f1vx9l62{flex-direction:column;}",
32
+ ".f1j0q4x9{row-gap:var(--spacingVerticalXXS);}",
33
+ ".fclwglc{padding-top:var(--spacingVerticalXXS);}"
30
34
  ]
31
35
  });
32
36
  const useTreeStyles_unstable = (state)=>{
33
37
  const styles = useStyles();
34
- state.root.className = (0, _react.mergeClasses)(treeClassNames.root, styles.root, state.root.className);
38
+ const isSubTree = state.level > 1;
39
+ state.root.className = (0, _react.mergeClasses)(treeClassNames.root, styles.root, isSubTree && styles.subtree, state.root.className);
35
40
  return state;
36
- }; //# sourceMappingURL=useTreeStyles.js.map
37
-
38
- //# sourceMappingURL=useTreeStyles.js.map
41
+ }; //# sourceMappingURL=useTreeStyles.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["useTreeStyles.styles.js"],"sourcesContent":["import { __styles, mergeClasses } 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 z8tnut: \"fclwglc\"\n }\n}, {\n d: [\".f22iagw{display:flex;}\", \".f1vx9l62{flex-direction:column;}\", \".f1j0q4x9{row-gap:var(--spacingVerticalXXS);}\", \".fclwglc{padding-top:var(--spacingVerticalXXS);}\"]\n});\nexport const useTreeStyles_unstable = state => {\n const styles = useStyles();\n const isSubTree = state.level > 1;\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","z8tnut","d","state","styles","isSubTree","level","className","mergeClasses"],"mappings":";;;;;;;;;;;IAEaA,cAAc,MAAdA;IAeAC,sBAAsB,MAAtBA;;uBAjB0B;AAEhC,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,QAAQ;IACV;AACF,GAAG;IACDC,GAAG;QAAC;QAA2B;QAAqC;QAAiD;KAAmD;AAC1K;AACO,MAAMT,yBAAyBU,CAAAA,QAAS;IAC7C,MAAMC,SAAST;IACf,MAAMU,YAAYF,MAAMG,KAAK,GAAG;IAChCH,MAAMT,IAAI,CAACa,SAAS,GAAGC,IAAAA,mBAAY,EAAChB,eAAeE,IAAI,EAAEU,OAAOV,IAAI,EAAEW,aAAaD,OAAOJ,OAAO,EAAEG,MAAMT,IAAI,CAACa,SAAS;IACvH,OAAOJ;AACT,GACA,gDAAgD"}
@@ -10,14 +10,12 @@ const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildc
10
10
  const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
11
11
  const _useTreeItem = require("./useTreeItem");
12
12
  const _renderTreeItem = require("./renderTreeItem");
13
- const _useTreeItemStyles = require("./useTreeItemStyles");
13
+ const _useTreeItemStylesStyles = require("./useTreeItemStyles.styles");
14
14
  const _useTreeItemContextValues = require("./useTreeItemContextValues");
15
15
  const TreeItem = /*#__PURE__*/ _react.forwardRef((props, ref)=>{
16
16
  const state = (0, _useTreeItem.useTreeItem_unstable)(props, ref);
17
- (0, _useTreeItemStyles.useTreeItemStyles_unstable)(state);
17
+ (0, _useTreeItemStylesStyles.useTreeItemStyles_unstable)(state);
18
18
  const contextValues = (0, _useTreeItemContextValues.useTreeItemContextValues_unstable)(state);
19
19
  return (0, _renderTreeItem.renderTreeItem_unstable)(state, contextValues);
20
20
  });
21
- TreeItem.displayName = 'TreeItem'; //# sourceMappingURL=TreeItem.js.map
22
-
23
- //# sourceMappingURL=TreeItem.js.map
21
+ TreeItem.displayName = 'TreeItem';
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/TreeItem/TreeItem.js"],"sourcesContent":["import * as React from 'react';\nimport { useTreeItem_unstable } from './useTreeItem';\nimport { renderTreeItem_unstable } from './renderTreeItem';\nimport { useTreeItemStyles_unstable } from './useTreeItemStyles';\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 nsted child subtree, an expand/collapse control is displayed,\n * allowing the user to show or hide the children.\n */\nexport 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//# sourceMappingURL=TreeItem.js.map"],"names":["TreeItem","React","forwardRef","props","ref","state","useTreeItem_unstable","useTreeItemStyles_unstable","contextValues","useTreeItemContextValues_unstable","renderTreeItem_unstable","displayName"],"mappings":";;;;+BAiBaA;;aAAAA;;;6DAjBU;6BACc;gCACG;mCACG;0CACO;AAa3C,MAAMA,WAAW,WAAW,GAAEC,OAAMC,UAAU,CAAC,CAACC,OAAOC,MAAQ;IACpE,MAAMC,QAAQC,IAAAA,iCAAoB,EAACH,OAAOC;IAC1CG,IAAAA,6CAA0B,EAACF;IAC3B,MAAMG,gBAAgBC,IAAAA,2DAAiC,EAACJ;IACxD,OAAOK,IAAAA,uCAAuB,EAACL,OAAOG;AACxC;AACAR,SAASW,WAAW,GAAG,YACvB,oCAAoC"}
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"}
@@ -4,6 +4,3 @@ Object.defineProperty(exports, "__esModule", {
4
4
  });
5
5
  const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
6
6
  const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
7
- //# sourceMappingURL=TreeItem.types.js.map
8
-
9
- //# sourceMappingURL=TreeItem.types.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/TreeItem/TreeItem.types.js"],"sourcesContent":["import * as React from 'react';\n//# sourceMappingURL=TreeItem.types.js.map"],"names":[],"mappings":";;;;;6DAAuB;CACvB,0CAA0C"}
1
+ {"version":3,"sources":["TreeItem.types.js"],"sourcesContent":["import * as React from 'react';\n"],"names":[],"mappings":";;;;;6DAAuB"}
@@ -7,7 +7,5 @@ _exportStar(require("./TreeItem"), exports);
7
7
  _exportStar(require("./TreeItem.types"), exports);
8
8
  _exportStar(require("./renderTreeItem"), exports);
9
9
  _exportStar(require("./useTreeItem"), exports);
10
- _exportStar(require("./useTreeItemStyles"), exports);
11
- //# sourceMappingURL=index.js.map
12
-
13
- //# sourceMappingURL=index.js.map
10
+ _exportStar(require("./useTreeItemStyles.styles"), exports);
11
+ _exportStar(require("./useTreeItemContextValues"), exports);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/TreeItem/index.js"],"sourcesContent":["export * from './TreeItem';\nexport * from './TreeItem.types';\nexport * from './renderTreeItem';\nexport * from './useTreeItem';\nexport * from './useTreeItemStyles';\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":";;;;;oBAAc;oBACA;oBACA;oBACA;oBACA;CACd,iCAAiC"}
1
+ {"version":3,"sources":["index.js"],"sourcesContent":["export * from './TreeItem';\nexport * from './TreeItem.types';\nexport * from './renderTreeItem';\nexport * from './useTreeItem';\nexport * from './useTreeItemStyles.styles';\nexport * from './useTreeItemContextValues';\n"],"names":[],"mappings":";;;;;oBAAc;oBACA;oBACA;oBACA;oBACA;oBACA"}
@@ -1,4 +1,4 @@
1
- "use strict";
1
+ /** @jsxRuntime classic */ /** @jsx createElement */ "use strict";
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
@@ -6,18 +6,12 @@ Object.defineProperty(exports, "renderTreeItem_unstable", {
6
6
  enumerable: true,
7
7
  get: ()=>renderTreeItem_unstable
8
8
  });
9
- const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
10
- const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
9
+ const _reactJsxRuntime = require("@fluentui/react-jsx-runtime");
11
10
  const _reactUtilities = require("@fluentui/react-utilities");
12
11
  const _contexts = require("../../contexts");
13
- const _reactButton = require("@fluentui/react-button");
14
12
  const renderTreeItem_unstable = (state, contextValues)=>{
15
- const { slots , slotProps } = (0, _reactUtilities.getSlots)(state);
16
- return /*#__PURE__*/ _react.createElement(_contexts.TreeItemProvider, {
13
+ (0, _reactUtilities.assertSlots)(state);
14
+ return /*#__PURE__*/ (0, _reactJsxRuntime.createElement)(state.root, null, /*#__PURE__*/ (0, _reactJsxRuntime.createElement)(_contexts.TreeItemProvider, {
17
15
  value: contextValues.treeItem
18
- }, /*#__PURE__*/ _react.createElement(slots.root, slotProps.root, /*#__PURE__*/ _react.createElement(slots.content, slotProps.content, slots.expandIcon && /*#__PURE__*/ _react.createElement(slots.expandIcon, slotProps.expandIcon), slotProps.content.children, /*#__PURE__*/ _react.createElement(_reactButton.ButtonContextProvider, {
19
- value: contextValues.button
20
- }, slots.actions && /*#__PURE__*/ _react.createElement(slots.actions, slotProps.actions))), state.open && slots.subtree && /*#__PURE__*/ _react.createElement(slots.subtree, slotProps.subtree)));
21
- }; //# sourceMappingURL=renderTreeItem.js.map
22
-
23
- //# sourceMappingURL=renderTreeItem.js.map
16
+ }, state.root.children));
17
+ };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/TreeItem/renderTreeItem.js"],"sourcesContent":["import * as React from 'react';\nimport { getSlots } from '@fluentui/react-utilities';\nimport { TreeItemProvider } from '../../contexts';\nimport { ButtonContextProvider } from '@fluentui/react-button';\n/**\n * Render the final JSX of TreeItem\n */\nexport const renderTreeItem_unstable = (state, contextValues) => {\n const {\n slots,\n slotProps\n } = getSlots(state);\n return /*#__PURE__*/React.createElement(TreeItemProvider, {\n value: contextValues.treeItem\n }, /*#__PURE__*/React.createElement(slots.root, slotProps.root, /*#__PURE__*/React.createElement(slots.content, slotProps.content, slots.expandIcon && /*#__PURE__*/React.createElement(slots.expandIcon, slotProps.expandIcon), slotProps.content.children, /*#__PURE__*/React.createElement(ButtonContextProvider, {\n value: contextValues.button\n }, slots.actions && /*#__PURE__*/React.createElement(slots.actions, slotProps.actions))), state.open && slots.subtree && /*#__PURE__*/React.createElement(slots.subtree, slotProps.subtree)));\n};\n//# sourceMappingURL=renderTreeItem.js.map"],"names":["renderTreeItem_unstable","state","contextValues","slots","slotProps","getSlots","React","createElement","TreeItemProvider","value","treeItem","root","content","expandIcon","children","ButtonContextProvider","button","actions","open","subtree"],"mappings":";;;;+BAOaA;;aAAAA;;;6DAPU;gCACE;0BACQ;6BACK;AAI/B,MAAMA,0BAA0B,CAACC,OAAOC,gBAAkB;IAC/D,MAAM,EACJC,MAAK,EACLC,UAAS,EACV,GAAGC,IAAAA,wBAAQ,EAACJ;IACb,OAAO,WAAW,GAAEK,OAAMC,aAAa,CAACC,0BAAgB,EAAE;QACxDC,OAAOP,cAAcQ,QAAQ;IAC/B,GAAG,WAAW,GAAEJ,OAAMC,aAAa,CAACJ,MAAMQ,IAAI,EAAEP,UAAUO,IAAI,EAAE,WAAW,GAAEL,OAAMC,aAAa,CAACJ,MAAMS,OAAO,EAAER,UAAUQ,OAAO,EAAET,MAAMU,UAAU,IAAI,WAAW,GAAEP,OAAMC,aAAa,CAACJ,MAAMU,UAAU,EAAET,UAAUS,UAAU,GAAGT,UAAUQ,OAAO,CAACE,QAAQ,EAAE,WAAW,GAAER,OAAMC,aAAa,CAACQ,kCAAqB,EAAE;QACnTN,OAAOP,cAAcc,MAAM;IAC7B,GAAGb,MAAMc,OAAO,IAAI,WAAW,GAAEX,OAAMC,aAAa,CAACJ,MAAMc,OAAO,EAAEb,UAAUa,OAAO,KAAKhB,MAAMiB,IAAI,IAAIf,MAAMgB,OAAO,IAAI,WAAW,GAAEb,OAAMC,aAAa,CAACJ,MAAMgB,OAAO,EAAEf,UAAUe,OAAO;AAC5L,GACA,0CAA0C"}
1
+ {"version":3,"sources":["renderTreeItem.js"],"sourcesContent":["/** @jsxRuntime classic */ /** @jsx createElement */ import { createElement } from '@fluentui/react-jsx-runtime';\nimport { assertSlots } from '@fluentui/react-utilities';\nimport { TreeItemProvider } from '../../contexts';\n/**\n * Render the final JSX of TreeItem\n */ export const renderTreeItem_unstable = (state, contextValues)=>{\n assertSlots(state);\n return /*#__PURE__*/ createElement(state.root, null, /*#__PURE__*/ createElement(TreeItemProvider, {\n value: contextValues.treeItem\n }, state.root.children));\n};\n"],"names":["renderTreeItem_unstable","state","contextValues","assertSlots","createElement","root","TreeItemProvider","value","treeItem","children"],"mappings":"AAAA,wBAAwB,GAAG,uBAAuB;;;;+BAKjCA;;aAAAA;;iCALkE;gCACvD;0BACK;AAGtB,MAAMA,0BAA0B,CAACC,OAAOC,gBAAgB;IAC/DC,IAAAA,2BAAW,EAACF;IACZ,OAAO,WAAW,GAAGG,IAAAA,8BAAa,EAACH,MAAMI,IAAI,EAAE,IAAI,EAAE,WAAW,GAAGD,IAAAA,8BAAa,EAACE,0BAAgB,EAAE;QAC/FC,OAAOL,cAAcM,QAAQ;IACjC,GAAGP,MAAMI,IAAI,CAACI,QAAQ;AAC1B"}