@fluentui/react-tree 9.0.0-beta.26 → 9.0.0-beta.28

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 (169) hide show
  1. package/CHANGELOG.json +85 -1
  2. package/CHANGELOG.md +29 -2
  3. package/dist/index.d.ts +160 -96
  4. package/lib/FlatTree.js +1 -0
  5. package/lib/FlatTree.js.map +1 -0
  6. package/lib/components/FlatTree/FlatTree.js +13 -0
  7. package/lib/components/FlatTree/FlatTree.js.map +1 -0
  8. package/lib/components/FlatTree/FlatTree.types.js +1 -0
  9. package/lib/components/FlatTree/FlatTree.types.js.map +1 -0
  10. package/lib/components/FlatTree/index.js +6 -0
  11. package/lib/components/FlatTree/index.js.map +1 -0
  12. package/lib/{hooks → components/FlatTree}/useFlatControllableCheckedItems.js +10 -23
  13. package/lib/components/FlatTree/useFlatControllableCheckedItems.js.map +1 -0
  14. package/lib/components/FlatTree/useFlatTree.js +3 -0
  15. package/lib/components/FlatTree/useFlatTree.js.map +1 -0
  16. package/lib/{hooks → components/FlatTree}/useFlatTreeNavigation.js +12 -12
  17. package/lib/components/FlatTree/useFlatTreeNavigation.js.map +1 -0
  18. package/lib/components/FlatTree/useFlatTreeStyles.styles.js +30 -0
  19. package/lib/components/FlatTree/useFlatTreeStyles.styles.js.map +1 -0
  20. package/lib/{hooks/useFlatTree.js → components/FlatTree/useHeadlessFlatTree.js} +8 -14
  21. package/lib/components/FlatTree/useHeadlessFlatTree.js.map +1 -0
  22. package/lib/components/Tree/Tree.js +4 -9
  23. package/lib/components/Tree/Tree.js.map +1 -1
  24. package/lib/components/Tree/Tree.types.js.map +1 -1
  25. package/lib/components/Tree/index.js +2 -2
  26. package/lib/components/Tree/index.js.map +1 -1
  27. package/lib/components/Tree/renderTree.js.map +1 -1
  28. package/lib/{hooks/useNestedControllableCheckedItems.js → components/Tree/useControllableCheckedItems.js} +5 -18
  29. package/lib/components/Tree/useControllableCheckedItems.js.map +1 -0
  30. package/lib/components/Tree/useTree.js +38 -14
  31. package/lib/components/Tree/useTree.js.map +1 -1
  32. package/lib/components/Tree/useTreeContextValues.js.map +1 -1
  33. package/lib/{hooks/useNestedTreeNavigation.js → components/Tree/useTreeNavigation.js} +6 -6
  34. package/lib/components/Tree/useTreeNavigation.js.map +1 -0
  35. package/lib/components/Tree/useTreeStyles.styles.js +2 -2
  36. package/lib/components/Tree/useTreeStyles.styles.js.map +1 -1
  37. package/lib/components/TreeItem/TreeItem.types.js.map +1 -1
  38. package/lib/components/TreeItem/renderTreeItem.js +2 -4
  39. package/lib/components/TreeItem/renderTreeItem.js.map +1 -1
  40. package/lib/components/TreeItem/useTreeItem.js +10 -56
  41. package/lib/components/TreeItem/useTreeItem.js.map +1 -1
  42. package/lib/components/TreeItem/useTreeItemContextValues.js +8 -16
  43. package/lib/components/TreeItem/useTreeItemContextValues.js.map +1 -1
  44. package/lib/components/TreeItemLayout/TreeItemLayout.types.js.map +1 -1
  45. package/lib/components/TreeItemLayout/renderTreeItemLayout.js.map +1 -1
  46. package/lib/components/TreeItemLayout/useTreeItemLayout.js +50 -7
  47. package/lib/components/TreeItemLayout/useTreeItemLayout.js.map +1 -1
  48. package/lib/components/TreeItemPersonaLayout/TreeItemPersonaLayout.types.js.map +1 -1
  49. package/lib/components/TreeItemPersonaLayout/renderTreeItemPersonaLayout.js +1 -1
  50. package/lib/components/TreeItemPersonaLayout/renderTreeItemPersonaLayout.js.map +1 -1
  51. package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayout.js +6 -1
  52. package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayout.js.map +1 -1
  53. package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.styles.js +5 -1
  54. package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.styles.js.map +1 -1
  55. package/lib/contexts/index.js +0 -1
  56. package/lib/contexts/index.js.map +1 -1
  57. package/lib/contexts/treeContext.js.map +1 -1
  58. package/lib/contexts/treeItemContext.js +5 -0
  59. package/lib/contexts/treeItemContext.js.map +1 -1
  60. package/lib/hooks/useControllableOpenItems.js +6 -3
  61. package/lib/hooks/useControllableOpenItems.js.map +1 -1
  62. package/lib/{components/Tree → hooks}/useRootTree.js +18 -25
  63. package/lib/hooks/useRootTree.js.map +1 -0
  64. package/lib/{components/Tree → hooks}/useSubtree.js +4 -4
  65. package/lib/hooks/useSubtree.js.map +1 -0
  66. package/lib/index.js +2 -2
  67. package/lib/index.js.map +1 -1
  68. package/lib/utils/ImmutableMap.js +4 -0
  69. package/lib/utils/ImmutableMap.js.map +1 -1
  70. package/lib/utils/ImmutableSet.js +4 -0
  71. package/lib/utils/ImmutableSet.js.map +1 -1
  72. package/lib/utils/createCheckedItems.js +18 -0
  73. package/lib/utils/createCheckedItems.js.map +1 -0
  74. package/lib/utils/{createFlatTreeItems.js → createHeadlessTree.js} +45 -45
  75. package/lib/utils/createHeadlessTree.js.map +1 -0
  76. package/lib/utils/createOpenItems.js +10 -0
  77. package/lib/utils/createOpenItems.js.map +1 -0
  78. package/lib/utils/flattenTree.js.map +1 -1
  79. package/lib-commonjs/FlatTree.js +6 -0
  80. package/lib-commonjs/FlatTree.js.map +1 -0
  81. package/lib-commonjs/components/FlatTree/FlatTree.js +20 -0
  82. package/lib-commonjs/components/FlatTree/FlatTree.js.map +1 -0
  83. package/lib-commonjs/components/FlatTree/FlatTree.types.js +4 -0
  84. package/lib-commonjs/components/FlatTree/FlatTree.types.js.map +1 -0
  85. package/lib-commonjs/components/FlatTree/index.js +21 -0
  86. package/lib-commonjs/components/FlatTree/index.js.map +1 -0
  87. package/lib-commonjs/{hooks → components/FlatTree}/useFlatControllableCheckedItems.js +10 -23
  88. package/lib-commonjs/components/FlatTree/useFlatControllableCheckedItems.js.map +1 -0
  89. package/lib-commonjs/components/FlatTree/useFlatTree.js +12 -0
  90. package/lib-commonjs/components/FlatTree/useFlatTree.js.map +1 -0
  91. package/lib-commonjs/{hooks → components/FlatTree}/useFlatTreeNavigation.js +12 -12
  92. package/lib-commonjs/components/FlatTree/useFlatTreeNavigation.js.map +1 -0
  93. package/lib-commonjs/components/FlatTree/useFlatTreeStyles.styles.js +53 -0
  94. package/lib-commonjs/components/FlatTree/useFlatTreeStyles.styles.js.map +1 -0
  95. package/lib-commonjs/{hooks/useFlatTree.js → components/FlatTree/useHeadlessFlatTree.js} +10 -16
  96. package/lib-commonjs/components/FlatTree/useHeadlessFlatTree.js.map +1 -0
  97. package/lib-commonjs/components/Tree/Tree.js +3 -3
  98. package/lib-commonjs/components/Tree/Tree.js.map +1 -1
  99. package/lib-commonjs/components/Tree/index.js +2 -2
  100. package/lib-commonjs/components/Tree/index.js.map +1 -1
  101. package/lib-commonjs/{hooks/useNestedControllableCheckedItems.js → components/Tree/useControllableCheckedItems.js} +7 -20
  102. package/lib-commonjs/components/Tree/useControllableCheckedItems.js.map +1 -0
  103. package/lib-commonjs/components/Tree/useTree.js +38 -6
  104. package/lib-commonjs/components/Tree/useTree.js.map +1 -1
  105. package/lib-commonjs/{hooks/useNestedTreeNavigation.js → components/Tree/useTreeNavigation.js} +8 -8
  106. package/lib-commonjs/components/Tree/useTreeNavigation.js.map +1 -0
  107. package/lib-commonjs/components/Tree/useTreeStyles.styles.js +2 -2
  108. package/lib-commonjs/components/Tree/useTreeStyles.styles.js.map +1 -1
  109. package/lib-commonjs/components/TreeItem/renderTreeItem.js +1 -3
  110. package/lib-commonjs/components/TreeItem/renderTreeItem.js.map +1 -1
  111. package/lib-commonjs/components/TreeItem/useTreeItem.js +9 -55
  112. package/lib-commonjs/components/TreeItem/useTreeItem.js.map +1 -1
  113. package/lib-commonjs/components/TreeItem/useTreeItemContextValues.js +8 -17
  114. package/lib-commonjs/components/TreeItem/useTreeItemContextValues.js.map +1 -1
  115. package/lib-commonjs/components/TreeItemLayout/useTreeItemLayout.js +48 -5
  116. package/lib-commonjs/components/TreeItemLayout/useTreeItemLayout.js.map +1 -1
  117. package/lib-commonjs/components/TreeItemPersonaLayout/renderTreeItemPersonaLayout.js +1 -1
  118. package/lib-commonjs/components/TreeItemPersonaLayout/renderTreeItemPersonaLayout.js.map +1 -1
  119. package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayout.js +6 -1
  120. package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayout.js.map +1 -1
  121. package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.styles.js +5 -1
  122. package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.styles.js.map +1 -1
  123. package/lib-commonjs/contexts/index.js +0 -1
  124. package/lib-commonjs/contexts/index.js.map +1 -1
  125. package/lib-commonjs/contexts/treeItemContext.js +5 -0
  126. package/lib-commonjs/contexts/treeItemContext.js.map +1 -1
  127. package/lib-commonjs/hooks/useControllableOpenItems.js +3 -2
  128. package/lib-commonjs/hooks/useControllableOpenItems.js.map +1 -1
  129. package/lib-commonjs/{components/Tree → hooks}/useRootTree.js +15 -22
  130. package/lib-commonjs/hooks/useRootTree.js.map +1 -0
  131. package/lib-commonjs/{components/Tree → hooks}/useSubtree.js +10 -10
  132. package/lib-commonjs/hooks/useSubtree.js.map +1 -0
  133. package/lib-commonjs/index.js +10 -4
  134. package/lib-commonjs/index.js.map +1 -1
  135. package/lib-commonjs/utils/ImmutableMap.js +4 -0
  136. package/lib-commonjs/utils/ImmutableMap.js.map +1 -1
  137. package/lib-commonjs/utils/ImmutableSet.js +4 -0
  138. package/lib-commonjs/utils/ImmutableSet.js.map +1 -1
  139. package/lib-commonjs/utils/createCheckedItems.js +26 -0
  140. package/lib-commonjs/utils/createCheckedItems.js.map +1 -0
  141. package/lib-commonjs/utils/{createFlatTreeItems.js → createHeadlessTree.js} +47 -47
  142. package/lib-commonjs/utils/createHeadlessTree.js.map +1 -0
  143. package/lib-commonjs/utils/createOpenItems.js +18 -0
  144. package/lib-commonjs/utils/createOpenItems.js.map +1 -0
  145. package/package.json +8 -8
  146. package/lib/components/Tree/useRootTree.js.map +0 -1
  147. package/lib/components/Tree/useSubtree.js.map +0 -1
  148. package/lib/contexts/treeItemSlotsContext.js +0 -9
  149. package/lib/contexts/treeItemSlotsContext.js.map +0 -1
  150. package/lib/hooks/index.js +0 -5
  151. package/lib/hooks/index.js.map +0 -1
  152. package/lib/hooks/useFlatControllableCheckedItems.js.map +0 -1
  153. package/lib/hooks/useFlatTree.js.map +0 -1
  154. package/lib/hooks/useFlatTreeNavigation.js.map +0 -1
  155. package/lib/hooks/useNestedControllableCheckedItems.js.map +0 -1
  156. package/lib/hooks/useNestedTreeNavigation.js.map +0 -1
  157. package/lib/utils/createFlatTreeItems.js.map +0 -1
  158. package/lib-commonjs/components/Tree/useRootTree.js.map +0 -1
  159. package/lib-commonjs/components/Tree/useSubtree.js.map +0 -1
  160. package/lib-commonjs/contexts/treeItemSlotsContext.js +0 -25
  161. package/lib-commonjs/contexts/treeItemSlotsContext.js.map +0 -1
  162. package/lib-commonjs/hooks/index.js +0 -10
  163. package/lib-commonjs/hooks/index.js.map +0 -1
  164. package/lib-commonjs/hooks/useFlatControllableCheckedItems.js.map +0 -1
  165. package/lib-commonjs/hooks/useFlatTree.js.map +0 -1
  166. package/lib-commonjs/hooks/useFlatTreeNavigation.js.map +0 -1
  167. package/lib-commonjs/hooks/useNestedControllableCheckedItems.js.map +0 -1
  168. package/lib-commonjs/hooks/useNestedTreeNavigation.js.map +0 -1
  169. package/lib-commonjs/utils/createFlatTreeItems.js.map +0 -1
@@ -2,17 +2,17 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- Object.defineProperty(exports, "useNestedTreeNavigation", {
5
+ Object.defineProperty(exports, "useTreeNavigation", {
6
6
  enumerable: true,
7
- get: ()=>useNestedTreeNavigation
7
+ get: ()=>useTreeNavigation
8
8
  });
9
9
  const _reactUtilities = require("@fluentui/react-utilities");
10
- const _useHTMLElementWalker = require("./useHTMLElementWalker");
11
- const _nextTypeAheadElement = require("../utils/nextTypeAheadElement");
12
- const _tokens = require("../utils/tokens");
13
- const _treeItemFilter = require("../utils/treeItemFilter");
14
- const _useRovingTabIndexes = require("./useRovingTabIndexes");
15
- function useNestedTreeNavigation() {
10
+ const _nextTypeAheadElement = require("../../utils/nextTypeAheadElement");
11
+ const _tokens = require("../../utils/tokens");
12
+ const _treeItemFilter = require("../../utils/treeItemFilter");
13
+ const _useRovingTabIndexes = require("../../hooks/useRovingTabIndexes");
14
+ const _useHTMLElementWalker = require("../../hooks/useHTMLElementWalker");
15
+ function useTreeNavigation() {
16
16
  const [{ rove }, rovingRootRef] = (0, _useRovingTabIndexes.useRovingTabIndex)(_treeItemFilter.treeItemFilter);
17
17
  const [walkerRef, rootRef] = (0, _useHTMLElementWalker.useHTMLElementWalkerRef)(_treeItemFilter.treeItemFilter);
18
18
  const getNextElement = (data)=>{
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["useTreeNavigation.js"],"sourcesContent":["import { useMergedRefs } from '@fluentui/react-utilities';\nimport { nextTypeAheadElement } from '../../utils/nextTypeAheadElement';\nimport { treeDataTypes } from '../../utils/tokens';\nimport { treeItemFilter } from '../../utils/treeItemFilter';\nimport { useRovingTabIndex } from '../../hooks/useRovingTabIndexes';\nimport { useHTMLElementWalkerRef } from '../../hooks/useHTMLElementWalker';\nexport function useTreeNavigation() {\n const [{ rove }, rovingRootRef] = useRovingTabIndex(treeItemFilter);\n const [walkerRef, rootRef] = useHTMLElementWalkerRef(treeItemFilter);\n const getNextElement = (data)=>{\n if (!walkerRef.current) {\n return;\n }\n const treeItemWalker = walkerRef.current;\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) {\n const nextElement = getNextElement(data);\n if (nextElement) {\n rove(nextElement);\n }\n }\n return [\n navigate,\n useMergedRefs(rootRef, rovingRootRef)\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","rovingRootRef","useRovingTabIndex","treeItemFilter","walkerRef","rootRef","useHTMLElementWalkerRef","getNextElement","data","current","treeItemWalker","type","treeDataTypes","Click","target","TypeAhead","currentElement","nextTypeAheadElement","event","key","ArrowLeft","parentElement","ArrowRight","firstChild","End","root","lastChildRecursive","Home","ArrowDown","nextElement","ArrowUp","previousElement","navigate","useMergedRefs","walker","lastElement","lastChild"],"mappings":";;;;+BAMgBA;;aAAAA;;gCANc;sCACO;wBACP;gCACC;qCACG;sCACM;AACjC,SAASA,oBAAoB;IAChC,MAAM,CAAC,EAAEC,KAAI,EAAG,EAAEC,cAAc,GAAGC,IAAAA,sCAAiB,EAACC,8BAAc;IACnE,MAAM,CAACC,WAAWC,QAAQ,GAAGC,IAAAA,6CAAuB,EAACH,8BAAc;IACnE,MAAMI,iBAAiB,CAACC,OAAO;QAC3B,IAAI,CAACJ,UAAUK,OAAO,EAAE;YACpB;QACJ,CAAC;QACD,MAAMC,iBAAiBN,UAAUK,OAAO;QACxC,OAAOD,KAAKG,IAAI;YACZ,KAAKC,qBAAa,CAACC,KAAK;gBACpB,OAAOL,KAAKM,MAAM;YACtB,KAAKF,qBAAa,CAACG,SAAS;gBACxBL,eAAeM,cAAc,GAAGR,KAAKM,MAAM;gBAC3C,OAAOG,IAAAA,0CAAoB,EAACP,gBAAgBF,KAAKU,KAAK,CAACC,GAAG;YAC9D,KAAKP,qBAAa,CAACQ,SAAS;gBACxBV,eAAeM,cAAc,GAAGR,KAAKM,MAAM;gBAC3C,OAAOJ,eAAeW,aAAa;YACvC,KAAKT,qBAAa,CAACU,UAAU;gBACzBZ,eAAeM,cAAc,GAAGR,KAAKM,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,GAAGR,KAAKM,MAAM;gBAC3C,OAAOJ,eAAemB,WAAW;YACrC,KAAKjB,qBAAa,CAACkB,OAAO;gBACtBpB,eAAeM,cAAc,GAAGR,KAAKM,MAAM;gBAC3C,OAAOJ,eAAeqB,eAAe;QAC7C;IACJ;IACA,SAASC,SAASxB,IAAI,EAAE;QACpB,MAAMqB,cAActB,eAAeC;QACnC,IAAIqB,aAAa;YACb7B,KAAK6B;QACT,CAAC;IACL;IACA,OAAO;QACHG;QACAC,IAAAA,6BAAa,EAAC5B,SAASJ;KAC1B;AACL;AACA,SAASyB,mBAAmBQ,MAAM,EAAE;IAChC,IAAIC,cAAc,IAAI;IACtB,IAAIN,cAAc,IAAI;IACtB,MAAMA,cAAcK,OAAOE,SAAS,GAAG;QACnCD,cAAcN;IAClB;IACA,OAAOM;AACX"}
@@ -47,7 +47,7 @@ const useStyles = /*#__PURE__*/ (0, _react["__styles"])({
47
47
  });
48
48
  const useTreeStyles_unstable = (state)=>{
49
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);
50
+ const isSubTree = state.level > 0;
51
+ state.root.className = (0, _react.mergeClasses)(treeClassNames.root, styles.root, isSubTree && styles.subtree, state.root.className);
52
52
  return state;
53
53
  }; //# sourceMappingURL=useTreeStyles.styles.js.map
@@ -1 +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{-ms-grid-row:subtree;grid-row-start:subtree;}\", \".fwt6ga{-ms-grid-column:subtree;grid-column-start:subtree;}\", \".fi45nfw{-ms-grid-row-span:subtree;grid-row-end:subtree;}\", \".f10ort2y{-ms-grid-column-span:subtree;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;QAA2D;QAA+D;QAA6D;KAAmE;AACttB;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
+ {"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{-ms-grid-row:subtree;grid-row-start:subtree;}\", \".fwt6ga{-ms-grid-column:subtree;grid-column-start:subtree;}\", \".fi45nfw{-ms-grid-row-span:subtree;grid-row-end:subtree;}\", \".f10ort2y{-ms-grid-column-span:subtree;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;QAA2D;QAA+D;QAA6D;KAAmE;AACttB;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"}
@@ -13,7 +13,5 @@ const renderTreeItem_unstable = (state, contextValues)=>{
13
13
  const { slots , slotProps } = (0, _reactUtilities.getSlotsNext)(state);
14
14
  return /*#__PURE__*/ (0, _reactJsxRuntime.createElement)(slots.root, slotProps.root, /*#__PURE__*/ (0, _reactJsxRuntime.createElement)(_contexts.TreeItemProvider, {
15
15
  value: contextValues.treeItem
16
- }, /*#__PURE__*/ (0, _reactJsxRuntime.createElement)(_contexts.TreeItemSlotsProvider, {
17
- value: contextValues.treeItemSlots
18
- }, slotProps.root.children)));
16
+ }, slotProps.root.children));
19
17
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["renderTreeItem.js"],"sourcesContent":["/** @jsxRuntime classic */ /** @jsx createElement */ import { createElement } from '@fluentui/react-jsx-runtime';\nimport { getSlotsNext } from '@fluentui/react-utilities';\nimport { TreeItemProvider, TreeItemSlotsProvider } from '../../contexts';\n/**\n * Render the final JSX of TreeItem\n */ export const renderTreeItem_unstable = (state, contextValues)=>{\n const { slots , slotProps } = getSlotsNext(state);\n return /*#__PURE__*/ createElement(slots.root, slotProps.root, /*#__PURE__*/ createElement(TreeItemProvider, {\n value: contextValues.treeItem\n }, /*#__PURE__*/ createElement(TreeItemSlotsProvider, {\n value: contextValues.treeItemSlots\n }, slotProps.root.children)));\n};\n"],"names":["renderTreeItem_unstable","state","contextValues","slots","slotProps","getSlotsNext","createElement","root","TreeItemProvider","value","treeItem","TreeItemSlotsProvider","treeItemSlots","children"],"mappings":"AAAA,wBAAwB,GAAG,uBAAuB;;;;+BAKjCA;;aAAAA;;iCALkE;gCACtD;0BAC2B;AAG7C,MAAMA,0BAA0B,CAACC,OAAOC,gBAAgB;IAC/D,MAAM,EAAEC,MAAK,EAAGC,UAAS,EAAG,GAAGC,IAAAA,4BAAY,EAACJ;IAC5C,OAAO,WAAW,GAAGK,IAAAA,8BAAa,EAACH,MAAMI,IAAI,EAAEH,UAAUG,IAAI,EAAE,WAAW,GAAGD,IAAAA,8BAAa,EAACE,0BAAgB,EAAE;QACzGC,OAAOP,cAAcQ,QAAQ;IACjC,GAAG,WAAW,GAAGJ,IAAAA,8BAAa,EAACK,+BAAqB,EAAE;QAClDF,OAAOP,cAAcU,aAAa;IACtC,GAAGR,UAAUG,IAAI,CAACM,QAAQ;AAC9B"}
1
+ {"version":3,"sources":["renderTreeItem.js"],"sourcesContent":["/** @jsxRuntime classic */ /** @jsx createElement */ import { createElement } from '@fluentui/react-jsx-runtime';\nimport { getSlotsNext } from '@fluentui/react-utilities';\nimport { TreeItemProvider } from '../../contexts';\n/**\n * Render the final JSX of TreeItem\n */ export const renderTreeItem_unstable = (state, contextValues)=>{\n const { slots , slotProps } = getSlotsNext(state);\n return /*#__PURE__*/ createElement(slots.root, slotProps.root, /*#__PURE__*/ createElement(TreeItemProvider, {\n value: contextValues.treeItem\n }, slotProps.root.children));\n};\n"],"names":["renderTreeItem_unstable","state","contextValues","slots","slotProps","getSlotsNext","createElement","root","TreeItemProvider","value","treeItem","children"],"mappings":"AAAA,wBAAwB,GAAG,uBAAuB;;;;+BAKjCA;;aAAAA;;iCALkE;gCACtD;0BACI;AAGtB,MAAMA,0BAA0B,CAACC,OAAOC,gBAAgB;IAC/D,MAAM,EAAEC,MAAK,EAAGC,UAAS,EAAG,GAAGC,IAAAA,4BAAY,EAACJ;IAC5C,OAAO,WAAW,GAAGK,IAAAA,8BAAa,EAACH,MAAMI,IAAI,EAAEH,UAAUG,IAAI,EAAE,WAAW,GAAGD,IAAAA,8BAAa,EAACE,0BAAgB,EAAE;QACzGC,OAAOP,cAAcQ,QAAQ;IACjC,GAAGN,UAAUG,IAAI,CAACI,QAAQ;AAC9B"}
@@ -12,30 +12,17 @@ const _reactUtilities = require("@fluentui/react-utilities");
12
12
  const _reactPortal = require("@fluentui/react-portal");
13
13
  const _index = require("../../contexts/index");
14
14
  const _getTreeItemValueFromElement = require("../../utils/getTreeItemValueFromElement");
15
- const _treeItemChevron = require("../TreeItemChevron");
16
15
  const _keyboardKeys = require("@fluentui/keyboard-keys");
17
16
  const _tokens = require("../../utils/tokens");
18
17
  function useTreeItem_unstable(props, ref) {
19
18
  var _props_value;
20
19
  const contextLevel = (0, _index.useTreeContext_unstable)((ctx)=>ctx.level);
20
+ // note, if the value is not externally provided,
21
+ // then selection and expansion will not work properly
21
22
  const value = (0, _reactUtilities.useId)('fuiTreeItemValue-', (_props_value = props.value) === null || _props_value === void 0 ? void 0 : _props_value.toString());
22
- const { onClick , onKeyDown , as ='div' , itemType ='leaf' , 'aria-level': level = contextLevel , expandIcon , aside , ...rest } = props;
23
+ const { onClick , onKeyDown , as ='div' , itemType ='leaf' , 'aria-level': level = contextLevel , ...rest } = props;
23
24
  const requestTreeResponse = (0, _index.useTreeContext_unstable)((ctx)=>ctx.requestTreeResponse);
24
- const [isActionsVisibleExternal, actions] = (0, _reactUtilities.isResolvedShorthand)(props.actions) ? [
25
- props.actions.visible,
26
- {
27
- ...props.actions,
28
- visible: undefined
29
- }
30
- ] : [
31
- undefined,
32
- props.actions
33
- ];
34
- const [isActionsVisible, setActionsVisible] = (0, _reactUtilities.useControllableState)({
35
- state: isActionsVisibleExternal,
36
- defaultState: false,
37
- initialState: false
38
- });
25
+ const [isActionsVisible, setActionsVisible] = _react.useState(false);
39
26
  const [isAsideVisible, setAsideVisible] = _react.useState(true);
40
27
  const handleActionsRef = (actionsElement)=>{
41
28
  setAsideVisible(actionsElement === null);
@@ -49,8 +36,6 @@ function useTreeItem_unstable(props, ref) {
49
36
  var _ctx_checkedItems_get;
50
37
  const checked = (0, _index.useTreeContext_unstable)((ctx)=>(_ctx_checkedItems_get = ctx.checkedItems.get(value)) !== null && _ctx_checkedItems_get !== void 0 ? _ctx_checkedItems_get : false);
51
38
  const selectionMode = (0, _index.useTreeContext_unstable)((ctx)=>ctx.selectionMode);
52
- const actionsRefs = (0, _reactUtilities.useMergedRefs)((0, _reactUtilities.isResolvedShorthand)(actions) ? actions.ref : undefined, handleActionsRef, actionsRef);
53
- const expandIconRefs = (0, _reactUtilities.useMergedRefs)((0, _reactUtilities.isResolvedShorthand)(expandIcon) ? expandIcon.ref : undefined, expandIconRef);
54
39
  const handleClick = (0, _reactUtilities.useEventCallback)((event)=>{
55
40
  onClick === null || onClick === void 0 ? void 0 : onClick(event);
56
41
  if (event.isDefaultPrevented()) {
@@ -150,40 +135,21 @@ function useTreeItem_unstable(props, ref) {
150
135
  });
151
136
  });
152
137
  const isBranch = itemType === 'branch';
153
- const actionsSlot = _react.useMemo(()=>isActionsVisible ? (0, _reactUtilities.resolveShorthand)(actions) : undefined, [
154
- actions,
155
- isActionsVisible
156
- ]);
157
- if (actionsSlot) {
158
- actionsSlot.ref = actionsRefs;
159
- }
160
- const asideSlot = _react.useMemo(()=>isAsideVisible ? (0, _reactUtilities.resolveShorthand)(aside) : undefined, [
161
- aside,
162
- isAsideVisible
163
- ]);
164
- const expandIconSlot = _react.useMemo(()=>(0, _reactUtilities.resolveShorthand)(expandIcon, {
165
- required: isBranch,
166
- defaultProps: {
167
- children: /*#__PURE__*/ _react.createElement(_treeItemChevron.TreeItemChevron, null),
168
- 'aria-hidden': true
169
- }
170
- }), [
171
- expandIcon,
172
- isBranch
173
- ]);
174
- if (expandIconSlot) {
175
- expandIconSlot.ref = expandIconRefs;
176
- }
177
138
  return {
178
139
  value,
179
140
  open,
180
141
  subtreeRef,
181
142
  layoutRef,
143
+ selectionRef,
144
+ expandIconRef,
145
+ actionsRef: (0, _reactUtilities.useMergedRefs)(handleActionsRef, actionsRef),
182
146
  itemType,
183
147
  level,
184
148
  components: {
185
149
  root: 'div'
186
150
  },
151
+ isAsideVisible,
152
+ isActionsVisible,
187
153
  root: (0, _reactUtilities.getNativeElementProps)(as, {
188
154
  tabIndex: -1,
189
155
  ...rest,
@@ -201,18 +167,6 @@ function useTreeItem_unstable(props, ref) {
201
167
  onMouseOut: handleActionsInvisible,
202
168
  onBlur: handleActionsInvisible,
203
169
  onChange: handleChange
204
- }),
205
- actions: actionsSlot,
206
- aside: asideSlot,
207
- expandIcon: expandIconSlot,
208
- selector: selectionMode === 'none' ? undefined : (0, _reactUtilities.resolveShorthand)(selectionMode === 'multiselect' ? props.checkboxIndicator : props.radioIndicator, {
209
- required: true,
210
- defaultProps: {
211
- checked,
212
- tabIndex: -1,
213
- 'aria-hidden': true,
214
- ref: selectionRef
215
- }
216
170
  })
217
171
  };
218
172
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["useTreeItem.js"],"sourcesContent":["import * as React from 'react';\nimport { getNativeElementProps, isResolvedShorthand, resolveShorthand, useControllableState, useId, useMergedRefs } from '@fluentui/react-utilities';\nimport { useEventCallback } from '@fluentui/react-utilities';\nimport { elementContains } from '@fluentui/react-portal';\nimport { useTreeContext_unstable } from '../../contexts/index';\nimport { dataTreeItemValueAttrName } from '../../utils/getTreeItemValueFromElement';\nimport { TreeItemChevron } from '../TreeItemChevron';\nimport { Space } from '@fluentui/keyboard-keys';\nimport { treeDataTypes } from '../../utils/tokens';\n/**\n * Create the state required to render TreeItem.\n *\n * The returned state can be modified with hooks such as useTreeItemStyles_unstable,\n * before being passed to renderTreeItem_unstable.\n *\n * @param props - props from this instance of TreeItem\n * @param ref - reference to root HTMLElement of TreeItem\n */ export function useTreeItem_unstable(props, ref) {\n var _props_value;\n const contextLevel = useTreeContext_unstable((ctx)=>ctx.level);\n const value = useId('fuiTreeItemValue-', (_props_value = props.value) === null || _props_value === void 0 ? void 0 : _props_value.toString());\n const { onClick , onKeyDown , as ='div' , itemType ='leaf' , 'aria-level': level = contextLevel , expandIcon , aside , ...rest } = props;\n const requestTreeResponse = useTreeContext_unstable((ctx)=>ctx.requestTreeResponse);\n const [isActionsVisibleExternal, actions] = isResolvedShorthand(props.actions) ? [\n props.actions.visible,\n {\n ...props.actions,\n visible: undefined\n }\n ] : [\n undefined,\n props.actions\n ];\n const [isActionsVisible, setActionsVisible] = useControllableState({\n state: isActionsVisibleExternal,\n defaultState: false,\n initialState: false\n });\n const [isAsideVisible, setAsideVisible] = React.useState(true);\n const handleActionsRef = (actionsElement)=>{\n setAsideVisible(actionsElement === null);\n };\n const actionsRef = React.useRef(null);\n const expandIconRef = React.useRef(null);\n const layoutRef = React.useRef(null);\n const subtreeRef = React.useRef(null);\n const selectionRef = React.useRef(null);\n const open = useTreeContext_unstable((ctx)=>ctx.openItems.has(value));\n var _ctx_checkedItems_get;\n const checked = useTreeContext_unstable((ctx)=>(_ctx_checkedItems_get = ctx.checkedItems.get(value)) !== null && _ctx_checkedItems_get !== void 0 ? _ctx_checkedItems_get : false);\n const selectionMode = useTreeContext_unstable((ctx)=>ctx.selectionMode);\n const actionsRefs = useMergedRefs(isResolvedShorthand(actions) ? actions.ref : undefined, handleActionsRef, actionsRef);\n const expandIconRefs = useMergedRefs(isResolvedShorthand(expandIcon) ? expandIcon.ref : undefined, expandIconRef);\n const handleClick = useEventCallback((event)=>{\n onClick === null || onClick === void 0 ? void 0 : onClick(event);\n if (event.isDefaultPrevented()) {\n return;\n }\n const isEventFromActions = actionsRef.current && elementContains(actionsRef.current, event.target);\n if (isEventFromActions) {\n return;\n }\n const isEventFromSubtree = subtreeRef.current && elementContains(subtreeRef.current, event.target);\n if (isEventFromSubtree) {\n return;\n }\n const isEventFromSelection = selectionRef.current && elementContains(selectionRef.current, event.target);\n if (isEventFromSelection) {\n return;\n }\n const isFromExpandIcon = expandIconRef.current && elementContains(expandIconRef.current, event.target);\n requestTreeResponse({\n event,\n value,\n itemType,\n target: event.currentTarget,\n type: isFromExpandIcon ? treeDataTypes.ExpandIconClick : treeDataTypes.Click\n });\n });\n const handleKeyDown = useEventCallback((event)=>{\n onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(event);\n // Ignore keyboard events that do not originate from the current tree item.\n if (event.isDefaultPrevented() || event.currentTarget !== event.target) {\n return;\n }\n switch(event.key){\n case Space:\n if (selectionMode !== 'none') {\n var _selectionRef_current;\n (_selectionRef_current = selectionRef.current) === null || _selectionRef_current === void 0 ? void 0 : _selectionRef_current.click();\n event.preventDefault();\n }\n return;\n case treeDataTypes.End:\n case treeDataTypes.Home:\n case treeDataTypes.Enter:\n case treeDataTypes.ArrowUp:\n case treeDataTypes.ArrowDown:\n case treeDataTypes.ArrowLeft:\n case treeDataTypes.ArrowRight:\n return requestTreeResponse({\n event,\n target: event.currentTarget,\n value,\n itemType,\n type: event.key\n });\n }\n const isTypeAheadCharacter = event.key.length === 1 && event.key.match(/\\w/) && !event.altKey && !event.ctrlKey && !event.metaKey;\n if (isTypeAheadCharacter) {\n requestTreeResponse({\n event,\n target: event.currentTarget,\n value,\n itemType,\n type: treeDataTypes.TypeAhead\n });\n }\n });\n const handleActionsVisible = useEventCallback((event)=>{\n const isTargetFromSubtree = Boolean(subtreeRef.current && elementContains(subtreeRef.current, event.target));\n if (!isTargetFromSubtree) {\n setActionsVisible(true);\n }\n });\n const handleActionsInvisible = useEventCallback((event)=>{\n const isTargetFromSubtree = Boolean(subtreeRef.current && elementContains(subtreeRef.current, event.target));\n const isRelatedTargetFromActions = Boolean(actionsRef.current && elementContains(actionsRef.current, event.relatedTarget));\n if (isRelatedTargetFromActions) {\n return setActionsVisible(true);\n }\n if (!isTargetFromSubtree) {\n return setActionsVisible(false);\n }\n });\n const handleChange = useEventCallback((event)=>{\n if (event.isDefaultPrevented()) {\n return;\n }\n const isEventFromSubtree = subtreeRef.current && elementContains(subtreeRef.current, event.target);\n if (isEventFromSubtree) {\n return;\n }\n requestTreeResponse({\n event,\n value,\n itemType,\n type: 'Change',\n target: event.currentTarget\n });\n });\n const isBranch = itemType === 'branch';\n const actionsSlot = React.useMemo(()=>isActionsVisible ? resolveShorthand(actions) : undefined, [\n actions,\n isActionsVisible\n ]);\n if (actionsSlot) {\n actionsSlot.ref = actionsRefs;\n }\n const asideSlot = React.useMemo(()=>isAsideVisible ? resolveShorthand(aside) : undefined, [\n aside,\n isAsideVisible\n ]);\n const expandIconSlot = React.useMemo(()=>resolveShorthand(expandIcon, {\n required: isBranch,\n defaultProps: {\n children: /*#__PURE__*/ React.createElement(TreeItemChevron, null),\n 'aria-hidden': true\n }\n }), [\n expandIcon,\n isBranch\n ]);\n if (expandIconSlot) {\n expandIconSlot.ref = expandIconRefs;\n }\n return {\n value,\n open,\n subtreeRef,\n layoutRef,\n itemType,\n level,\n components: {\n root: 'div'\n },\n root: getNativeElementProps(as, {\n tabIndex: -1,\n ...rest,\n ref,\n role: 'treeitem',\n 'aria-level': level,\n [dataTreeItemValueAttrName]: value,\n 'aria-checked': selectionMode === 'multiselect' ? checked : undefined,\n 'aria-selected': selectionMode === 'single' ? checked : undefined,\n 'aria-expanded': isBranch ? open : undefined,\n onClick: handleClick,\n onKeyDown: handleKeyDown,\n onMouseOver: handleActionsVisible,\n onFocus: handleActionsVisible,\n onMouseOut: handleActionsInvisible,\n onBlur: handleActionsInvisible,\n onChange: handleChange\n }),\n actions: actionsSlot,\n aside: asideSlot,\n expandIcon: expandIconSlot,\n selector: selectionMode === 'none' ? undefined : resolveShorthand(selectionMode === 'multiselect' ? props.checkboxIndicator : props.radioIndicator, {\n required: true,\n defaultProps: {\n checked,\n tabIndex: -1,\n 'aria-hidden': true,\n ref: selectionRef\n }\n })\n };\n}\n"],"names":["useTreeItem_unstable","props","ref","_props_value","contextLevel","useTreeContext_unstable","ctx","level","value","useId","toString","onClick","onKeyDown","as","itemType","expandIcon","aside","rest","requestTreeResponse","isActionsVisibleExternal","actions","isResolvedShorthand","visible","undefined","isActionsVisible","setActionsVisible","useControllableState","state","defaultState","initialState","isAsideVisible","setAsideVisible","React","useState","handleActionsRef","actionsElement","actionsRef","useRef","expandIconRef","layoutRef","subtreeRef","selectionRef","open","openItems","has","_ctx_checkedItems_get","checked","checkedItems","get","selectionMode","actionsRefs","useMergedRefs","expandIconRefs","handleClick","useEventCallback","event","isDefaultPrevented","isEventFromActions","current","elementContains","target","isEventFromSubtree","isEventFromSelection","isFromExpandIcon","currentTarget","type","treeDataTypes","ExpandIconClick","Click","handleKeyDown","key","Space","_selectionRef_current","click","preventDefault","End","Home","Enter","ArrowUp","ArrowDown","ArrowLeft","ArrowRight","isTypeAheadCharacter","length","match","altKey","ctrlKey","metaKey","TypeAhead","handleActionsVisible","isTargetFromSubtree","Boolean","handleActionsInvisible","isRelatedTargetFromActions","relatedTarget","handleChange","isBranch","actionsSlot","useMemo","resolveShorthand","asideSlot","expandIconSlot","required","defaultProps","children","createElement","TreeItemChevron","components","root","getNativeElementProps","tabIndex","role","dataTreeItemValueAttrName","onMouseOver","onFocus","onMouseOut","onBlur","onChange","selector","checkboxIndicator","radioIndicator"],"mappings":"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"}
1
+ {"version":3,"sources":["useTreeItem.js"],"sourcesContent":["import * as React from 'react';\nimport { getNativeElementProps, useId, useMergedRefs } from '@fluentui/react-utilities';\nimport { useEventCallback } from '@fluentui/react-utilities';\nimport { elementContains } from '@fluentui/react-portal';\nimport { useTreeContext_unstable } from '../../contexts/index';\nimport { dataTreeItemValueAttrName } from '../../utils/getTreeItemValueFromElement';\nimport { Space } from '@fluentui/keyboard-keys';\nimport { treeDataTypes } from '../../utils/tokens';\n/**\n * Create the state required to render TreeItem.\n *\n * The returned state can be modified with hooks such as useTreeItemStyles_unstable,\n * before being passed to renderTreeItem_unstable.\n *\n * @param props - props from this instance of TreeItem\n * @param ref - reference to root HTMLElement of TreeItem\n */ export function useTreeItem_unstable(props, ref) {\n var _props_value;\n const contextLevel = useTreeContext_unstable((ctx)=>ctx.level);\n // note, if the value is not externally provided,\n // then selection and expansion will not work properly\n const value = useId('fuiTreeItemValue-', (_props_value = props.value) === null || _props_value === void 0 ? void 0 : _props_value.toString());\n const { onClick , onKeyDown , as ='div' , itemType ='leaf' , 'aria-level': level = contextLevel , ...rest } = props;\n const requestTreeResponse = useTreeContext_unstable((ctx)=>ctx.requestTreeResponse);\n const [isActionsVisible, setActionsVisible] = React.useState(false);\n const [isAsideVisible, setAsideVisible] = React.useState(true);\n const handleActionsRef = (actionsElement)=>{\n setAsideVisible(actionsElement === null);\n };\n const actionsRef = React.useRef(null);\n const expandIconRef = React.useRef(null);\n const layoutRef = React.useRef(null);\n const subtreeRef = React.useRef(null);\n const selectionRef = React.useRef(null);\n const open = useTreeContext_unstable((ctx)=>ctx.openItems.has(value));\n var _ctx_checkedItems_get;\n const checked = useTreeContext_unstable((ctx)=>(_ctx_checkedItems_get = ctx.checkedItems.get(value)) !== null && _ctx_checkedItems_get !== void 0 ? _ctx_checkedItems_get : false);\n const selectionMode = useTreeContext_unstable((ctx)=>ctx.selectionMode);\n const handleClick = useEventCallback((event)=>{\n onClick === null || onClick === void 0 ? void 0 : onClick(event);\n if (event.isDefaultPrevented()) {\n return;\n }\n const isEventFromActions = actionsRef.current && elementContains(actionsRef.current, event.target);\n if (isEventFromActions) {\n return;\n }\n const isEventFromSubtree = subtreeRef.current && elementContains(subtreeRef.current, event.target);\n if (isEventFromSubtree) {\n return;\n }\n const isEventFromSelection = selectionRef.current && elementContains(selectionRef.current, event.target);\n if (isEventFromSelection) {\n return;\n }\n const isFromExpandIcon = expandIconRef.current && elementContains(expandIconRef.current, event.target);\n requestTreeResponse({\n event,\n value,\n itemType,\n target: event.currentTarget,\n type: isFromExpandIcon ? treeDataTypes.ExpandIconClick : treeDataTypes.Click\n });\n });\n const handleKeyDown = useEventCallback((event)=>{\n onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(event);\n // Ignore keyboard events that do not originate from the current tree item.\n if (event.isDefaultPrevented() || event.currentTarget !== event.target) {\n return;\n }\n switch(event.key){\n case Space:\n if (selectionMode !== 'none') {\n var _selectionRef_current;\n (_selectionRef_current = selectionRef.current) === null || _selectionRef_current === void 0 ? void 0 : _selectionRef_current.click();\n event.preventDefault();\n }\n return;\n case treeDataTypes.End:\n case treeDataTypes.Home:\n case treeDataTypes.Enter:\n case treeDataTypes.ArrowUp:\n case treeDataTypes.ArrowDown:\n case treeDataTypes.ArrowLeft:\n case treeDataTypes.ArrowRight:\n return requestTreeResponse({\n event,\n target: event.currentTarget,\n value,\n itemType,\n type: event.key\n });\n }\n const isTypeAheadCharacter = event.key.length === 1 && event.key.match(/\\w/) && !event.altKey && !event.ctrlKey && !event.metaKey;\n if (isTypeAheadCharacter) {\n requestTreeResponse({\n event,\n target: event.currentTarget,\n value,\n itemType,\n type: treeDataTypes.TypeAhead\n });\n }\n });\n const handleActionsVisible = useEventCallback((event)=>{\n const isTargetFromSubtree = Boolean(subtreeRef.current && elementContains(subtreeRef.current, event.target));\n if (!isTargetFromSubtree) {\n setActionsVisible(true);\n }\n });\n const handleActionsInvisible = useEventCallback((event)=>{\n const isTargetFromSubtree = Boolean(subtreeRef.current && elementContains(subtreeRef.current, event.target));\n const isRelatedTargetFromActions = Boolean(actionsRef.current && elementContains(actionsRef.current, event.relatedTarget));\n if (isRelatedTargetFromActions) {\n return setActionsVisible(true);\n }\n if (!isTargetFromSubtree) {\n return setActionsVisible(false);\n }\n });\n const handleChange = useEventCallback((event)=>{\n if (event.isDefaultPrevented()) {\n return;\n }\n const isEventFromSubtree = subtreeRef.current && elementContains(subtreeRef.current, event.target);\n if (isEventFromSubtree) {\n return;\n }\n requestTreeResponse({\n event,\n value,\n itemType,\n type: 'Change',\n target: event.currentTarget\n });\n });\n const isBranch = itemType === 'branch';\n return {\n value,\n open,\n subtreeRef,\n layoutRef,\n selectionRef,\n expandIconRef,\n actionsRef: useMergedRefs(handleActionsRef, actionsRef),\n itemType,\n level,\n components: {\n root: 'div'\n },\n isAsideVisible,\n isActionsVisible,\n root: getNativeElementProps(as, {\n tabIndex: -1,\n ...rest,\n ref,\n role: 'treeitem',\n 'aria-level': level,\n [dataTreeItemValueAttrName]: value,\n 'aria-checked': selectionMode === 'multiselect' ? checked : undefined,\n 'aria-selected': selectionMode === 'single' ? checked : undefined,\n 'aria-expanded': isBranch ? open : undefined,\n onClick: handleClick,\n onKeyDown: handleKeyDown,\n onMouseOver: handleActionsVisible,\n onFocus: handleActionsVisible,\n onMouseOut: handleActionsInvisible,\n onBlur: handleActionsInvisible,\n onChange: handleChange\n })\n };\n}\n"],"names":["useTreeItem_unstable","props","ref","_props_value","contextLevel","useTreeContext_unstable","ctx","level","value","useId","toString","onClick","onKeyDown","as","itemType","rest","requestTreeResponse","isActionsVisible","setActionsVisible","React","useState","isAsideVisible","setAsideVisible","handleActionsRef","actionsElement","actionsRef","useRef","expandIconRef","layoutRef","subtreeRef","selectionRef","open","openItems","has","_ctx_checkedItems_get","checked","checkedItems","get","selectionMode","handleClick","useEventCallback","event","isDefaultPrevented","isEventFromActions","current","elementContains","target","isEventFromSubtree","isEventFromSelection","isFromExpandIcon","currentTarget","type","treeDataTypes","ExpandIconClick","Click","handleKeyDown","key","Space","_selectionRef_current","click","preventDefault","End","Home","Enter","ArrowUp","ArrowDown","ArrowLeft","ArrowRight","isTypeAheadCharacter","length","match","altKey","ctrlKey","metaKey","TypeAhead","handleActionsVisible","isTargetFromSubtree","Boolean","handleActionsInvisible","isRelatedTargetFromActions","relatedTarget","handleChange","isBranch","useMergedRefs","components","root","getNativeElementProps","tabIndex","role","dataTreeItemValueAttrName","undefined","onMouseOver","onFocus","onMouseOut","onBlur","onChange"],"mappings":"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"}
@@ -6,10 +6,8 @@ Object.defineProperty(exports, "useTreeItemContextValues_unstable", {
6
6
  enumerable: true,
7
7
  get: ()=>useTreeItemContextValues_unstable
8
8
  });
9
- const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
10
- const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
11
9
  function useTreeItemContextValues_unstable(state) {
12
- const { value , itemType , layoutRef , subtreeRef , open , actions , aside , expandIcon , selector } = state;
10
+ const { value , itemType , layoutRef , subtreeRef , open , expandIconRef , actionsRef , isActionsVisible , isAsideVisible , selectionRef } = state;
13
11
  /**
14
12
  * This context is created with "@fluentui/react-context-selector",
15
13
  * there is no sense to memoize it
@@ -18,21 +16,14 @@ function useTreeItemContextValues_unstable(state) {
18
16
  itemType,
19
17
  layoutRef,
20
18
  subtreeRef,
21
- open
19
+ open,
20
+ selectionRef,
21
+ isActionsVisible,
22
+ isAsideVisible,
23
+ actionsRef,
24
+ expandIconRef
22
25
  };
23
- const treeItemSlots = _react.useMemo(()=>({
24
- actions,
25
- aside,
26
- expandIcon,
27
- selector
28
- }), [
29
- actions,
30
- aside,
31
- expandIcon,
32
- selector
33
- ]);
34
26
  return {
35
- treeItem,
36
- treeItemSlots
27
+ treeItem
37
28
  };
38
29
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["useTreeItemContextValues.js"],"sourcesContent":["import * as React from 'react';\nexport function useTreeItemContextValues_unstable(state) {\n const { value , itemType , layoutRef , subtreeRef , open , actions , aside , expandIcon , selector } = state;\n /**\n * This context is created with \"@fluentui/react-context-selector\",\n * there is no sense to memoize it\n */ const treeItem = {\n value,\n itemType,\n layoutRef,\n subtreeRef,\n open\n };\n const treeItemSlots = React.useMemo(()=>({\n actions,\n aside,\n expandIcon,\n selector\n }), [\n actions,\n aside,\n expandIcon,\n selector\n ]);\n return {\n treeItem,\n treeItemSlots\n };\n}\n"],"names":["useTreeItemContextValues_unstable","state","value","itemType","layoutRef","subtreeRef","open","actions","aside","expandIcon","selector","treeItem","treeItemSlots","React","useMemo"],"mappings":";;;;+BACgBA;;aAAAA;;;6DADO;AAChB,SAASA,kCAAkCC,KAAK,EAAE;IACrD,MAAM,EAAEC,MAAK,EAAGC,SAAQ,EAAGC,UAAS,EAAGC,WAAU,EAAGC,KAAI,EAAGC,QAAO,EAAGC,MAAK,EAAGC,WAAU,EAAGC,SAAQ,EAAG,GAAGT;IACxG;;;GAGD,GAAG,MAAMU,WAAW;QACfT;QACAC;QACAC;QACAC;QACAC;IACJ;IACA,MAAMM,gBAAgBC,OAAMC,OAAO,CAAC,IAAK,CAAA;YACjCP;YACAC;YACAC;YACAC;QACJ,CAAA,GAAI;QACJH;QACAC;QACAC;QACAC;KACH;IACD,OAAO;QACHC;QACAC;IACJ;AACJ"}
1
+ {"version":3,"sources":["useTreeItemContextValues.js"],"sourcesContent":["export function useTreeItemContextValues_unstable(state) {\n const { value , itemType , layoutRef , subtreeRef , open , expandIconRef , actionsRef , isActionsVisible , isAsideVisible , selectionRef } = state;\n /**\n * This context is created with \"@fluentui/react-context-selector\",\n * there is no sense to memoize it\n */ const treeItem = {\n value,\n itemType,\n layoutRef,\n subtreeRef,\n open,\n selectionRef,\n isActionsVisible,\n isAsideVisible,\n actionsRef,\n expandIconRef\n };\n return {\n treeItem\n };\n}\n"],"names":["useTreeItemContextValues_unstable","state","value","itemType","layoutRef","subtreeRef","open","expandIconRef","actionsRef","isActionsVisible","isAsideVisible","selectionRef","treeItem"],"mappings":";;;;+BAAgBA;;aAAAA;;AAAT,SAASA,kCAAkCC,KAAK,EAAE;IACrD,MAAM,EAAEC,MAAK,EAAGC,SAAQ,EAAGC,UAAS,EAAGC,WAAU,EAAGC,KAAI,EAAGC,cAAa,EAAGC,WAAU,EAAGC,iBAAgB,EAAGC,eAAc,EAAGC,aAAY,EAAG,GAAGV;IAC9I;;;GAGD,GAAG,MAAMW,WAAW;QACfV;QACAC;QACAC;QACAC;QACAC;QACAK;QACAF;QACAC;QACAF;QACAD;IACJ;IACA,OAAO;QACHK;IACJ;AACJ"}
@@ -12,11 +12,46 @@ const _reactUtilities = require("@fluentui/react-utilities");
12
12
  const _contexts = require("../../contexts");
13
13
  const _reactCheckbox = require("@fluentui/react-checkbox");
14
14
  const _reactRadio = require("@fluentui/react-radio");
15
+ const _treeItemChevron = require("../TreeItemChevron");
15
16
  const useTreeItemLayout_unstable = (props, ref)=>{
16
17
  const { content , iconAfter , iconBefore , as ='span' } = props;
17
- const { actions , aside , expandIcon , selector } = (0, _contexts.useTreeItemSlotsContext_unstable)();
18
18
  const layoutRef = (0, _contexts.useTreeItemContext_unstable)((ctx)=>ctx.layoutRef);
19
19
  const selectionMode = (0, _contexts.useTreeContext_unstable)((ctx)=>ctx.selectionMode);
20
+ const [isActionsVisibleExternal, actionsShorthand] = (0, _reactUtilities.isResolvedShorthand)(props.actions) ? [
21
+ props.actions.visible,
22
+ {
23
+ ...props.actions,
24
+ visible: undefined
25
+ }
26
+ ] : [
27
+ undefined,
28
+ props.actions
29
+ ];
30
+ const isActionsVisible = (0, _contexts.useTreeItemContext_unstable)((ctx)=>ctx.isActionsVisible) || isActionsVisibleExternal;
31
+ const isAsideVisible = (0, _contexts.useTreeItemContext_unstable)((ctx)=>ctx.isAsideVisible);
32
+ const selectionRef = (0, _contexts.useTreeItemContext_unstable)((ctx)=>ctx.selectionRef);
33
+ const expandIconRef = (0, _contexts.useTreeItemContext_unstable)((ctx)=>ctx.expandIconRef);
34
+ const actionsRef = (0, _contexts.useTreeItemContext_unstable)((ctx)=>ctx.actionsRef);
35
+ const value = (0, _contexts.useTreeItemContext_unstable)((ctx)=>ctx.value);
36
+ var _ctx_checkedItems_get;
37
+ const checked = (0, _contexts.useTreeContext_unstable)((ctx)=>(_ctx_checkedItems_get = ctx.checkedItems.get(value)) !== null && _ctx_checkedItems_get !== void 0 ? _ctx_checkedItems_get : false);
38
+ const isBranch = (0, _contexts.useTreeItemContext_unstable)((ctx)=>ctx.itemType === 'branch');
39
+ const expandIcon = (0, _reactUtilities.resolveShorthand)(props.expandIcon, {
40
+ required: isBranch,
41
+ defaultProps: {
42
+ children: /*#__PURE__*/ _react.createElement(_treeItemChevron.TreeItemChevron, null),
43
+ 'aria-hidden': true
44
+ }
45
+ });
46
+ const expandIconRefs = (0, _reactUtilities.useMergedRefs)(expandIcon === null || expandIcon === void 0 ? void 0 : expandIcon.ref, expandIconRef);
47
+ if (expandIcon) {
48
+ expandIcon.ref = expandIconRefs;
49
+ }
50
+ const actions = isActionsVisible ? (0, _reactUtilities.resolveShorthand)(actionsShorthand) : undefined;
51
+ const actionsRefs = (0, _reactUtilities.useMergedRefs)(actions === null || actions === void 0 ? void 0 : actions.ref, actionsRef);
52
+ if (actions) {
53
+ actions.ref = actionsRefs;
54
+ }
20
55
  return {
21
56
  components: {
22
57
  root: 'div',
@@ -49,9 +84,17 @@ const useTreeItemLayout_unstable = (props, ref)=>{
49
84
  'aria-hidden': true
50
85
  }
51
86
  }),
52
- aside: (0, _reactUtilities.resolveShorthand)(aside),
53
- actions: (0, _reactUtilities.resolveShorthand)(actions),
54
- expandIcon: (0, _reactUtilities.resolveShorthand)(expandIcon),
55
- selector: (0, _reactUtilities.resolveShorthand)(selector)
87
+ aside: isAsideVisible ? (0, _reactUtilities.resolveShorthand)(props.aside) : undefined,
88
+ actions,
89
+ expandIcon,
90
+ selector: (0, _reactUtilities.resolveShorthand)(props.selector, {
91
+ required: selectionMode !== 'none',
92
+ defaultProps: {
93
+ checked,
94
+ tabIndex: -1,
95
+ 'aria-hidden': true,
96
+ ref: selectionRef
97
+ }
98
+ })
56
99
  };
57
100
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["useTreeItemLayout.js"],"sourcesContent":["import * as React from 'react';\nimport { getNativeElementProps, resolveShorthand, useMergedRefs } from '@fluentui/react-utilities';\nimport { useTreeItemContext_unstable, useTreeContext_unstable, useTreeItemSlotsContext_unstable } from '../../contexts';\nimport { Checkbox } from '@fluentui/react-checkbox';\nimport { Radio } from '@fluentui/react-radio';\n/**\n * Create the state required to render TreeItemLayout.\n *\n * The returned state can be modified with hooks such as useTreeItemLayoutStyles_unstable,\n * before being passed to renderTreeItemLayout_unstable.\n *\n * @param props - props from this instance of TreeItemLayout\n * @param ref - reference to root HTMLElement of TreeItemLayout\n */ export const useTreeItemLayout_unstable = (props, ref)=>{\n const { content , iconAfter , iconBefore , as ='span' } = props;\n const { actions , aside , expandIcon , selector } = useTreeItemSlotsContext_unstable();\n const layoutRef = useTreeItemContext_unstable((ctx)=>ctx.layoutRef);\n const selectionMode = useTreeContext_unstable((ctx)=>ctx.selectionMode);\n return {\n components: {\n root: 'div',\n expandIcon: 'div',\n iconBefore: 'div',\n content: 'div',\n iconAfter: 'div',\n actions: 'div',\n aside: 'div',\n // Casting here to a union between checkbox and radio\n selector: selectionMode === 'multiselect' ? Checkbox : Radio\n },\n buttonContextValue: {\n size: 'small'\n },\n root: getNativeElementProps(as, {\n ...props,\n ref: useMergedRefs(ref, layoutRef)\n }),\n iconBefore: resolveShorthand(iconBefore, {\n defaultProps: {\n 'aria-hidden': true\n }\n }),\n content: resolveShorthand(content, {\n required: true\n }),\n iconAfter: resolveShorthand(iconAfter, {\n defaultProps: {\n 'aria-hidden': true\n }\n }),\n aside: resolveShorthand(aside),\n actions: resolveShorthand(actions),\n expandIcon: resolveShorthand(expandIcon),\n selector: resolveShorthand(selector)\n };\n};\n"],"names":["useTreeItemLayout_unstable","props","ref","content","iconAfter","iconBefore","as","actions","aside","expandIcon","selector","useTreeItemSlotsContext_unstable","layoutRef","useTreeItemContext_unstable","ctx","selectionMode","useTreeContext_unstable","components","root","Checkbox","Radio","buttonContextValue","size","getNativeElementProps","useMergedRefs","resolveShorthand","defaultProps","required"],"mappings":";;;;+BAaiBA;;aAAAA;;;6DAbM;gCACgD;0BACgC;+BAC9E;4BACH;AASX,MAAMA,6BAA6B,CAACC,OAAOC,MAAM;IACxD,MAAM,EAAEC,QAAO,EAAGC,UAAS,EAAGC,WAAU,EAAGC,IAAI,OAAM,EAAG,GAAGL;IAC3D,MAAM,EAAEM,QAAO,EAAGC,MAAK,EAAGC,WAAU,EAAGC,SAAQ,EAAG,GAAGC,IAAAA,0CAAgC;IACrF,MAAMC,YAAYC,IAAAA,qCAA2B,EAAC,CAACC,MAAMA,IAAIF,SAAS;IAClE,MAAMG,gBAAgBC,IAAAA,iCAAuB,EAAC,CAACF,MAAMA,IAAIC,aAAa;IACtE,OAAO;QACHE,YAAY;YACRC,MAAM;YACNT,YAAY;YACZJ,YAAY;YACZF,SAAS;YACTC,WAAW;YACXG,SAAS;YACTC,OAAO;YACP,qDAAqD;YACrDE,UAAUK,kBAAkB,gBAAgBI,uBAAQ,GAAGC,iBAAK;QAChE;QACAC,oBAAoB;YAChBC,MAAM;QACV;QACAJ,MAAMK,IAAAA,qCAAqB,EAACjB,IAAI;YAC5B,GAAGL,KAAK;YACRC,KAAKsB,IAAAA,6BAAa,EAACtB,KAAKU;QAC5B;QACAP,YAAYoB,IAAAA,gCAAgB,EAACpB,YAAY;YACrCqB,cAAc;gBACV,eAAe,IAAI;YACvB;QACJ;QACAvB,SAASsB,IAAAA,gCAAgB,EAACtB,SAAS;YAC/BwB,UAAU,IAAI;QAClB;QACAvB,WAAWqB,IAAAA,gCAAgB,EAACrB,WAAW;YACnCsB,cAAc;gBACV,eAAe,IAAI;YACvB;QACJ;QACAlB,OAAOiB,IAAAA,gCAAgB,EAACjB;QACxBD,SAASkB,IAAAA,gCAAgB,EAAClB;QAC1BE,YAAYgB,IAAAA,gCAAgB,EAAChB;QAC7BC,UAAUe,IAAAA,gCAAgB,EAACf;IAC/B;AACJ"}
1
+ {"version":3,"sources":["useTreeItemLayout.js"],"sourcesContent":["import * as React from 'react';\nimport { getNativeElementProps, isResolvedShorthand, resolveShorthand, useMergedRefs } from '@fluentui/react-utilities';\nimport { useTreeItemContext_unstable, useTreeContext_unstable } from '../../contexts';\nimport { Checkbox } from '@fluentui/react-checkbox';\nimport { Radio } from '@fluentui/react-radio';\nimport { TreeItemChevron } from '../TreeItemChevron';\n/**\n * Create the state required to render TreeItemLayout.\n *\n * The returned state can be modified with hooks such as useTreeItemLayoutStyles_unstable,\n * before being passed to renderTreeItemLayout_unstable.\n *\n * @param props - props from this instance of TreeItemLayout\n * @param ref - reference to root HTMLElement of TreeItemLayout\n */ export const useTreeItemLayout_unstable = (props, ref)=>{\n const { content , iconAfter , iconBefore , as ='span' } = props;\n const layoutRef = useTreeItemContext_unstable((ctx)=>ctx.layoutRef);\n const selectionMode = useTreeContext_unstable((ctx)=>ctx.selectionMode);\n const [isActionsVisibleExternal, actionsShorthand] = isResolvedShorthand(props.actions) ? [\n props.actions.visible,\n {\n ...props.actions,\n visible: undefined\n }\n ] : [\n undefined,\n props.actions\n ];\n const isActionsVisible = useTreeItemContext_unstable((ctx)=>ctx.isActionsVisible) || isActionsVisibleExternal;\n const isAsideVisible = useTreeItemContext_unstable((ctx)=>ctx.isAsideVisible);\n const selectionRef = useTreeItemContext_unstable((ctx)=>ctx.selectionRef);\n const expandIconRef = useTreeItemContext_unstable((ctx)=>ctx.expandIconRef);\n const actionsRef = useTreeItemContext_unstable((ctx)=>ctx.actionsRef);\n const value = useTreeItemContext_unstable((ctx)=>ctx.value);\n var _ctx_checkedItems_get;\n const checked = useTreeContext_unstable((ctx)=>(_ctx_checkedItems_get = ctx.checkedItems.get(value)) !== null && _ctx_checkedItems_get !== void 0 ? _ctx_checkedItems_get : false);\n const isBranch = useTreeItemContext_unstable((ctx)=>ctx.itemType === 'branch');\n const expandIcon = resolveShorthand(props.expandIcon, {\n required: isBranch,\n defaultProps: {\n children: /*#__PURE__*/ React.createElement(TreeItemChevron, null),\n 'aria-hidden': true\n }\n });\n const expandIconRefs = useMergedRefs(expandIcon === null || expandIcon === void 0 ? void 0 : expandIcon.ref, expandIconRef);\n if (expandIcon) {\n expandIcon.ref = expandIconRefs;\n }\n const actions = isActionsVisible ? resolveShorthand(actionsShorthand) : undefined;\n const actionsRefs = useMergedRefs(actions === null || actions === void 0 ? void 0 : actions.ref, actionsRef);\n if (actions) {\n actions.ref = actionsRefs;\n }\n return {\n components: {\n root: 'div',\n expandIcon: 'div',\n iconBefore: 'div',\n content: 'div',\n iconAfter: 'div',\n actions: 'div',\n aside: 'div',\n // Casting here to a union between checkbox and radio\n selector: selectionMode === 'multiselect' ? Checkbox : Radio\n },\n buttonContextValue: {\n size: 'small'\n },\n root: getNativeElementProps(as, {\n ...props,\n ref: useMergedRefs(ref, layoutRef)\n }),\n iconBefore: resolveShorthand(iconBefore, {\n defaultProps: {\n 'aria-hidden': true\n }\n }),\n content: resolveShorthand(content, {\n required: true\n }),\n iconAfter: resolveShorthand(iconAfter, {\n defaultProps: {\n 'aria-hidden': true\n }\n }),\n aside: isAsideVisible ? resolveShorthand(props.aside) : undefined,\n actions,\n expandIcon,\n selector: resolveShorthand(props.selector, {\n required: selectionMode !== 'none',\n defaultProps: {\n checked,\n tabIndex: -1,\n 'aria-hidden': true,\n ref: selectionRef\n }\n })\n };\n};\n"],"names":["useTreeItemLayout_unstable","props","ref","content","iconAfter","iconBefore","as","layoutRef","useTreeItemContext_unstable","ctx","selectionMode","useTreeContext_unstable","isActionsVisibleExternal","actionsShorthand","isResolvedShorthand","actions","visible","undefined","isActionsVisible","isAsideVisible","selectionRef","expandIconRef","actionsRef","value","_ctx_checkedItems_get","checked","checkedItems","get","isBranch","itemType","expandIcon","resolveShorthand","required","defaultProps","children","React","createElement","TreeItemChevron","expandIconRefs","useMergedRefs","actionsRefs","components","root","aside","selector","Checkbox","Radio","buttonContextValue","size","getNativeElementProps","tabIndex"],"mappings":"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"}
@@ -12,7 +12,7 @@ const _reactAvatar = require("@fluentui/react-avatar");
12
12
  const _reactButton = require("@fluentui/react-button");
13
13
  const renderTreeItemPersonaLayout_unstable = (state, contextValues)=>{
14
14
  const { slots , slotProps } = (0, _reactUtilities.getSlotsNext)(state);
15
- return /*#__PURE__*/ (0, _reactJsxRuntime.createElement)(slots.root, slotProps.root, slots.expandIcon && /*#__PURE__*/ (0, _reactJsxRuntime.createElement)(slots.expandIcon, slotProps.expandIcon), /*#__PURE__*/ (0, _reactJsxRuntime.createElement)(_reactAvatar.AvatarContextProvider, {
15
+ return /*#__PURE__*/ (0, _reactJsxRuntime.createElement)(slots.root, slotProps.root, slots.expandIcon && /*#__PURE__*/ (0, _reactJsxRuntime.createElement)(slots.expandIcon, slotProps.expandIcon), slots.selector && /*#__PURE__*/ (0, _reactJsxRuntime.createElement)(slots.selector, slotProps.selector), /*#__PURE__*/ (0, _reactJsxRuntime.createElement)(_reactAvatar.AvatarContextProvider, {
16
16
  value: contextValues.avatar
17
17
  }, /*#__PURE__*/ (0, _reactJsxRuntime.createElement)(slots.media, slotProps.media)), /*#__PURE__*/ (0, _reactJsxRuntime.createElement)(slots.content, slotProps.content), slots.description && /*#__PURE__*/ (0, _reactJsxRuntime.createElement)(slots.description, slotProps.description), /*#__PURE__*/ (0, _reactJsxRuntime.createElement)(_reactButton.ButtonContextProvider, {
18
18
  value: state.buttonContextValue
@@ -1 +1 @@
1
- {"version":3,"sources":["renderTreeItemPersonaLayout.js"],"sourcesContent":["/** @jsxRuntime classic */ /** @jsx createElement */ import { createElement } from '@fluentui/react-jsx-runtime';\nimport { getSlotsNext } from '@fluentui/react-utilities';\nimport { AvatarContextProvider } from '@fluentui/react-avatar';\nimport { ButtonContextProvider } from '@fluentui/react-button';\n/**\n * Render the final JSX of TreeItemPersonaLayout\n */ export const renderTreeItemPersonaLayout_unstable = (state, contextValues)=>{\n const { slots , slotProps } = getSlotsNext(state);\n return /*#__PURE__*/ createElement(slots.root, slotProps.root, slots.expandIcon && /*#__PURE__*/ createElement(slots.expandIcon, slotProps.expandIcon), /*#__PURE__*/ createElement(AvatarContextProvider, {\n value: contextValues.avatar\n }, /*#__PURE__*/ createElement(slots.media, slotProps.media)), /*#__PURE__*/ createElement(slots.content, slotProps.content), slots.description && /*#__PURE__*/ createElement(slots.description, slotProps.description), /*#__PURE__*/ createElement(ButtonContextProvider, {\n value: state.buttonContextValue\n }, slots.actions && /*#__PURE__*/ createElement(slots.actions, slotProps.actions), slots.aside && /*#__PURE__*/ createElement(slots.aside, slotProps.aside)));\n};\n"],"names":["renderTreeItemPersonaLayout_unstable","state","contextValues","slots","slotProps","getSlotsNext","createElement","root","expandIcon","AvatarContextProvider","value","avatar","media","content","description","ButtonContextProvider","buttonContextValue","actions","aside"],"mappings":"AAAA,wBAAwB,GAAG,uBAAuB;;;;+BAMjCA;;aAAAA;;iCANkE;gCACtD;6BACS;6BACA;AAG3B,MAAMA,uCAAuC,CAACC,OAAOC,gBAAgB;IAC5E,MAAM,EAAEC,MAAK,EAAGC,UAAS,EAAG,GAAGC,IAAAA,4BAAY,EAACJ;IAC5C,OAAO,WAAW,GAAGK,IAAAA,8BAAa,EAACH,MAAMI,IAAI,EAAEH,UAAUG,IAAI,EAAEJ,MAAMK,UAAU,IAAI,WAAW,GAAGF,IAAAA,8BAAa,EAACH,MAAMK,UAAU,EAAEJ,UAAUI,UAAU,GAAG,WAAW,GAAGF,IAAAA,8BAAa,EAACG,kCAAqB,EAAE;QACvMC,OAAOR,cAAcS,MAAM;IAC/B,GAAG,WAAW,GAAGL,IAAAA,8BAAa,EAACH,MAAMS,KAAK,EAAER,UAAUQ,KAAK,IAAI,WAAW,GAAGN,IAAAA,8BAAa,EAACH,MAAMU,OAAO,EAAET,UAAUS,OAAO,GAAGV,MAAMW,WAAW,IAAI,WAAW,GAAGR,IAAAA,8BAAa,EAACH,MAAMW,WAAW,EAAEV,UAAUU,WAAW,GAAG,WAAW,GAAGR,IAAAA,8BAAa,EAACS,kCAAqB,EAAE;QACzQL,OAAOT,MAAMe,kBAAkB;IACnC,GAAGb,MAAMc,OAAO,IAAI,WAAW,GAAGX,IAAAA,8BAAa,EAACH,MAAMc,OAAO,EAAEb,UAAUa,OAAO,GAAGd,MAAMe,KAAK,IAAI,WAAW,GAAGZ,IAAAA,8BAAa,EAACH,MAAMe,KAAK,EAAEd,UAAUc,KAAK;AAC9J"}
1
+ {"version":3,"sources":["renderTreeItemPersonaLayout.js"],"sourcesContent":["/** @jsxRuntime classic */ /** @jsx createElement */ import { createElement } from '@fluentui/react-jsx-runtime';\nimport { getSlotsNext } from '@fluentui/react-utilities';\nimport { AvatarContextProvider } from '@fluentui/react-avatar';\nimport { ButtonContextProvider } from '@fluentui/react-button';\n/**\n * Render the final JSX of TreeItemPersonaLayout\n */ export const renderTreeItemPersonaLayout_unstable = (state, contextValues)=>{\n const { slots , slotProps } = getSlotsNext(state);\n return /*#__PURE__*/ createElement(slots.root, slotProps.root, slots.expandIcon && /*#__PURE__*/ createElement(slots.expandIcon, slotProps.expandIcon), slots.selector && /*#__PURE__*/ createElement(slots.selector, slotProps.selector), /*#__PURE__*/ createElement(AvatarContextProvider, {\n value: contextValues.avatar\n }, /*#__PURE__*/ createElement(slots.media, slotProps.media)), /*#__PURE__*/ createElement(slots.content, slotProps.content), slots.description && /*#__PURE__*/ createElement(slots.description, slotProps.description), /*#__PURE__*/ createElement(ButtonContextProvider, {\n value: state.buttonContextValue\n }, slots.actions && /*#__PURE__*/ createElement(slots.actions, slotProps.actions), slots.aside && /*#__PURE__*/ createElement(slots.aside, slotProps.aside)));\n};\n"],"names":["renderTreeItemPersonaLayout_unstable","state","contextValues","slots","slotProps","getSlotsNext","createElement","root","expandIcon","selector","AvatarContextProvider","value","avatar","media","content","description","ButtonContextProvider","buttonContextValue","actions","aside"],"mappings":"AAAA,wBAAwB,GAAG,uBAAuB;;;;+BAMjCA;;aAAAA;;iCANkE;gCACtD;6BACS;6BACA;AAG3B,MAAMA,uCAAuC,CAACC,OAAOC,gBAAgB;IAC5E,MAAM,EAAEC,MAAK,EAAGC,UAAS,EAAG,GAAGC,IAAAA,4BAAY,EAACJ;IAC5C,OAAO,WAAW,GAAGK,IAAAA,8BAAa,EAACH,MAAMI,IAAI,EAAEH,UAAUG,IAAI,EAAEJ,MAAMK,UAAU,IAAI,WAAW,GAAGF,IAAAA,8BAAa,EAACH,MAAMK,UAAU,EAAEJ,UAAUI,UAAU,GAAGL,MAAMM,QAAQ,IAAI,WAAW,GAAGH,IAAAA,8BAAa,EAACH,MAAMM,QAAQ,EAAEL,UAAUK,QAAQ,GAAG,WAAW,GAAGH,IAAAA,8BAAa,EAACI,kCAAqB,EAAE;QAC1RC,OAAOT,cAAcU,MAAM;IAC/B,GAAG,WAAW,GAAGN,IAAAA,8BAAa,EAACH,MAAMU,KAAK,EAAET,UAAUS,KAAK,IAAI,WAAW,GAAGP,IAAAA,8BAAa,EAACH,MAAMW,OAAO,EAAEV,UAAUU,OAAO,GAAGX,MAAMY,WAAW,IAAI,WAAW,GAAGT,IAAAA,8BAAa,EAACH,MAAMY,WAAW,EAAEX,UAAUW,WAAW,GAAG,WAAW,GAAGT,IAAAA,8BAAa,EAACU,kCAAqB,EAAE;QACzQL,OAAOV,MAAMgB,kBAAkB;IACnC,GAAGd,MAAMe,OAAO,IAAI,WAAW,GAAGZ,IAAAA,8BAAa,EAACH,MAAMe,OAAO,EAAEd,UAAUc,OAAO,GAAGf,MAAMgB,KAAK,IAAI,WAAW,GAAGb,IAAAA,8BAAa,EAACH,MAAMgB,KAAK,EAAEf,UAAUe,KAAK;AAC9J"}
@@ -12,6 +12,8 @@ const _reactUtilities = require("@fluentui/react-utilities");
12
12
  const _contexts = require("../../contexts");
13
13
  const _tokens = require("../../utils/tokens");
14
14
  const _useTreeItemLayout = require("../TreeItemLayout/useTreeItemLayout");
15
+ const _reactCheckbox = require("@fluentui/react-checkbox");
16
+ const _reactRadio = require("@fluentui/react-radio");
15
17
  const useTreeItemPersonaLayout_unstable = (props, ref)=>{
16
18
  const { media , children , content , description } = props;
17
19
  const treeItemLayoutState = (0, _useTreeItemLayout.useTreeItemLayout_unstable)({
@@ -20,6 +22,7 @@ const useTreeItemPersonaLayout_unstable = (props, ref)=>{
20
22
  iconAfter: null
21
23
  }, ref);
22
24
  const size = (0, _contexts.useTreeContext_unstable)((ctx)=>ctx.size);
25
+ const selectionMode = (0, _contexts.useTreeContext_unstable)((ctx)=>ctx.selectionMode);
23
26
  return {
24
27
  ...treeItemLayoutState,
25
28
  components: {
@@ -29,7 +32,9 @@ const useTreeItemPersonaLayout_unstable = (props, ref)=>{
29
32
  root: 'div',
30
33
  media: 'div',
31
34
  aside: 'div',
32
- actions: 'div'
35
+ actions: 'div',
36
+ // Casting here to a union between checkbox and radio
37
+ selector: selectionMode === 'multiselect' ? _reactCheckbox.Checkbox : _reactRadio.Radio
33
38
  },
34
39
  avatarSize: _tokens.treeAvatarSize[size],
35
40
  content: (0, _reactUtilities.resolveShorthand)(content, {
@@ -1 +1 @@
1
- {"version":3,"sources":["useTreeItemPersonaLayout.js"],"sourcesContent":["import * as React from 'react';\nimport { resolveShorthand } from '@fluentui/react-utilities';\nimport { useTreeContext_unstable } from '../../contexts';\nimport { treeAvatarSize } from '../../utils/tokens';\nimport { useTreeItemLayout_unstable } from '../TreeItemLayout/useTreeItemLayout';\n/**\n * Create the state required to render TreeItemPersonaLayout.\n *\n * The returned state can be modified with hooks such as useTreeItemPersonaLayoutStyles_unstable,\n * before being passed to renderTreeItemPersonaLayout_unstable.\n *\n * @param props - props from this instance of TreeItemPersonaLayout\n * @param ref - reference to root HTMLElement of TreeItemPersonaLayout\n */ export const useTreeItemPersonaLayout_unstable = (props, ref)=>{\n const { media , children , content , description } = props;\n const treeItemLayoutState = useTreeItemLayout_unstable({\n ...props,\n iconBefore: null,\n iconAfter: null\n }, ref);\n const size = useTreeContext_unstable((ctx)=>ctx.size);\n return {\n ...treeItemLayoutState,\n components: {\n expandIcon: 'div',\n content: 'div',\n description: 'div',\n root: 'div',\n media: 'div',\n aside: 'div',\n actions: 'div'\n },\n avatarSize: treeAvatarSize[size],\n content: resolveShorthand(content, {\n required: true,\n defaultProps: {\n children\n }\n }),\n media: resolveShorthand(media, {\n required: true\n }),\n description: resolveShorthand(description)\n };\n};\n"],"names":["useTreeItemPersonaLayout_unstable","props","ref","media","children","content","description","treeItemLayoutState","useTreeItemLayout_unstable","iconBefore","iconAfter","size","useTreeContext_unstable","ctx","components","expandIcon","root","aside","actions","avatarSize","treeAvatarSize","resolveShorthand","required","defaultProps"],"mappings":";;;;+BAaiBA;;aAAAA;;;6DAbM;gCACU;0BACO;wBACT;mCACY;AAShC,MAAMA,oCAAoC,CAACC,OAAOC,MAAM;IAC/D,MAAM,EAAEC,MAAK,EAAGC,SAAQ,EAAGC,QAAO,EAAGC,YAAW,EAAG,GAAGL;IACtD,MAAMM,sBAAsBC,IAAAA,6CAA0B,EAAC;QACnD,GAAGP,KAAK;QACRQ,YAAY,IAAI;QAChBC,WAAW,IAAI;IACnB,GAAGR;IACH,MAAMS,OAAOC,IAAAA,iCAAuB,EAAC,CAACC,MAAMA,IAAIF,IAAI;IACpD,OAAO;QACH,GAAGJ,mBAAmB;QACtBO,YAAY;YACRC,YAAY;YACZV,SAAS;YACTC,aAAa;YACbU,MAAM;YACNb,OAAO;YACPc,OAAO;YACPC,SAAS;QACb;QACAC,YAAYC,sBAAc,CAACT,KAAK;QAChCN,SAASgB,IAAAA,gCAAgB,EAAChB,SAAS;YAC/BiB,UAAU,IAAI;YACdC,cAAc;gBACVnB;YACJ;QACJ;QACAD,OAAOkB,IAAAA,gCAAgB,EAAClB,OAAO;YAC3BmB,UAAU,IAAI;QAClB;QACAhB,aAAae,IAAAA,gCAAgB,EAACf;IAClC;AACJ"}
1
+ {"version":3,"sources":["useTreeItemPersonaLayout.js"],"sourcesContent":["import * as React from 'react';\nimport { resolveShorthand } from '@fluentui/react-utilities';\nimport { useTreeContext_unstable } from '../../contexts';\nimport { treeAvatarSize } from '../../utils/tokens';\nimport { useTreeItemLayout_unstable } from '../TreeItemLayout/useTreeItemLayout';\nimport { Checkbox } from '@fluentui/react-checkbox';\nimport { Radio } from '@fluentui/react-radio';\n/**\n * Create the state required to render TreeItemPersonaLayout.\n *\n * The returned state can be modified with hooks such as useTreeItemPersonaLayoutStyles_unstable,\n * before being passed to renderTreeItemPersonaLayout_unstable.\n *\n * @param props - props from this instance of TreeItemPersonaLayout\n * @param ref - reference to root HTMLElement of TreeItemPersonaLayout\n */ export const useTreeItemPersonaLayout_unstable = (props, ref)=>{\n const { media , children , content , description } = props;\n const treeItemLayoutState = useTreeItemLayout_unstable({\n ...props,\n iconBefore: null,\n iconAfter: null\n }, ref);\n const size = useTreeContext_unstable((ctx)=>ctx.size);\n const selectionMode = useTreeContext_unstable((ctx)=>ctx.selectionMode);\n return {\n ...treeItemLayoutState,\n components: {\n expandIcon: 'div',\n content: 'div',\n description: 'div',\n root: 'div',\n media: 'div',\n aside: 'div',\n actions: 'div',\n // Casting here to a union between checkbox and radio\n selector: selectionMode === 'multiselect' ? Checkbox : Radio\n },\n avatarSize: treeAvatarSize[size],\n content: resolveShorthand(content, {\n required: true,\n defaultProps: {\n children\n }\n }),\n media: resolveShorthand(media, {\n required: true\n }),\n description: resolveShorthand(description)\n };\n};\n"],"names":["useTreeItemPersonaLayout_unstable","props","ref","media","children","content","description","treeItemLayoutState","useTreeItemLayout_unstable","iconBefore","iconAfter","size","useTreeContext_unstable","ctx","selectionMode","components","expandIcon","root","aside","actions","selector","Checkbox","Radio","avatarSize","treeAvatarSize","resolveShorthand","required","defaultProps"],"mappings":";;;;+BAeiBA;;aAAAA;;;6DAfM;gCACU;0BACO;wBACT;mCACY;+BAClB;4BACH;AASX,MAAMA,oCAAoC,CAACC,OAAOC,MAAM;IAC/D,MAAM,EAAEC,MAAK,EAAGC,SAAQ,EAAGC,QAAO,EAAGC,YAAW,EAAG,GAAGL;IACtD,MAAMM,sBAAsBC,IAAAA,6CAA0B,EAAC;QACnD,GAAGP,KAAK;QACRQ,YAAY,IAAI;QAChBC,WAAW,IAAI;IACnB,GAAGR;IACH,MAAMS,OAAOC,IAAAA,iCAAuB,EAAC,CAACC,MAAMA,IAAIF,IAAI;IACpD,MAAMG,gBAAgBF,IAAAA,iCAAuB,EAAC,CAACC,MAAMA,IAAIC,aAAa;IACtE,OAAO;QACH,GAAGP,mBAAmB;QACtBQ,YAAY;YACRC,YAAY;YACZX,SAAS;YACTC,aAAa;YACbW,MAAM;YACNd,OAAO;YACPe,OAAO;YACPC,SAAS;YACT,qDAAqD;YACrDC,UAAUN,kBAAkB,gBAAgBO,uBAAQ,GAAGC,iBAAK;QAChE;QACAC,YAAYC,sBAAc,CAACb,KAAK;QAChCN,SAASoB,IAAAA,gCAAgB,EAACpB,SAAS;YAC/BqB,UAAU,IAAI;YACdC,cAAc;gBACVvB;YACJ;QACJ;QACAD,OAAOsB,IAAAA,gCAAgB,EAACtB,OAAO;YAC3BuB,UAAU,IAAI;QAClB;QACApB,aAAamB,IAAAA,gCAAgB,EAACnB;IAClC;AACJ"}
@@ -21,7 +21,8 @@ const treeItemPersonaLayoutClassNames = {
21
21
  content: 'fui-TreeItemPersonaLayout__content',
22
22
  expandIcon: 'fui-TreeItemPersonaLayout__expandIcon',
23
23
  aside: 'fui-TreeItemPersonaLayout__aside',
24
- actions: 'fui-TreeItemPersonaLayout__actions'
24
+ actions: 'fui-TreeItemPersonaLayout__actions',
25
+ selector: 'fui-TreeItemPersonaLayout__selector'
25
26
  };
26
27
  /**
27
28
  * Styles for the root slot
@@ -371,5 +372,8 @@ const useTreeItemPersonaLayoutStyles_unstable = (state)=>{
371
372
  if (state.expandIcon) {
372
373
  state.expandIcon.className = (0, _react.mergeClasses)(treeItemPersonaLayoutClassNames.expandIcon, expandIconStyles.base, state.expandIcon.className);
373
374
  }
375
+ if (state.selector) {
376
+ state.selector.className = (0, _react.mergeClasses)(treeItemPersonaLayoutClassNames.selector, state.selector.className);
377
+ }
374
378
  return state;
375
379
  }; //# sourceMappingURL=useTreeItemPersonaLayoutStyles.styles.js.map