@fluentui/react-tree 9.0.0-beta.5 → 9.0.0-beta.7
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.
- package/.swcrc +30 -0
- package/CHANGELOG.json +145 -1
- package/CHANGELOG.md +39 -2
- package/dist/index.d.ts +26 -20
- package/lib/Tree.js.map +1 -1
- package/lib/TreeItem.js.map +1 -1
- package/lib/TreeItemLayout.js.map +1 -1
- package/lib/TreeItemPersonaLayout.js.map +1 -1
- package/lib/components/Tree/Tree.js.map +1 -1
- package/lib/components/Tree/Tree.types.js +1 -1
- package/lib/components/Tree/Tree.types.js.map +1 -1
- package/lib/components/Tree/index.js.map +1 -1
- package/lib/components/Tree/renderTree.js +1 -3
- package/lib/components/Tree/renderTree.js.map +1 -1
- package/lib/components/Tree/useTree.js +5 -4
- package/lib/components/Tree/useTree.js.map +1 -1
- package/lib/components/Tree/useTreeContextValues.js +3 -3
- package/lib/components/Tree/useTreeContextValues.js.map +1 -1
- package/lib/components/Tree/useTreeStyles.js.map +1 -1
- package/lib/components/TreeItem/TreeItem.js.map +1 -1
- package/lib/components/TreeItem/TreeItem.types.js +1 -1
- package/lib/components/TreeItem/TreeItem.types.js.map +1 -1
- package/lib/components/TreeItem/index.js.map +1 -1
- package/lib/components/TreeItem/renderTreeItem.js +2 -12
- package/lib/components/TreeItem/renderTreeItem.js.map +1 -1
- package/lib/components/TreeItem/useTreeItem.js.map +1 -1
- package/lib/components/TreeItem/useTreeItemContextValues.js.map +1 -1
- package/lib/components/TreeItem/useTreeItemStyles.js.map +1 -1
- package/lib/components/TreeItemLayout/TreeItemLayout.js.map +1 -1
- package/lib/components/TreeItemLayout/TreeItemLayout.types.js.map +1 -1
- package/lib/components/TreeItemLayout/index.js.map +1 -1
- package/lib/components/TreeItemLayout/renderTreeItemLayout.js +1 -9
- package/lib/components/TreeItemLayout/renderTreeItemLayout.js.map +1 -1
- package/lib/components/TreeItemLayout/useTreeItemLayout.js +1 -0
- package/lib/components/TreeItemLayout/useTreeItemLayout.js.map +1 -1
- package/lib/components/TreeItemLayout/useTreeItemLayoutStyles.js.map +1 -1
- package/lib/components/TreeItemPersonaLayout/TreeItemPersonaLayout.js.map +1 -1
- package/lib/components/TreeItemPersonaLayout/TreeItemPersonaLayout.types.js.map +1 -1
- package/lib/components/TreeItemPersonaLayout/index.js.map +1 -1
- package/lib/components/TreeItemPersonaLayout/renderTreeItemPersonaLayout.js +2 -14
- package/lib/components/TreeItemPersonaLayout/renderTreeItemPersonaLayout.js.map +1 -1
- package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayout.js +1 -0
- package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayout.js.map +1 -1
- package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutContextValues.js.map +1 -1
- package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.js.map +1 -1
- package/lib/contexts/index.js.map +1 -1
- package/lib/contexts/treeContext.js +1 -2
- package/lib/contexts/treeContext.js.map +1 -1
- package/lib/contexts/treeItemContext.js +2 -4
- package/lib/contexts/treeItemContext.js.map +1 -1
- package/lib/hooks/index.js.map +1 -1
- package/lib/hooks/useFlatTree.js +42 -22
- package/lib/hooks/useFlatTree.js.map +1 -1
- package/lib/hooks/useFlatTreeNavigation.js +7 -7
- package/lib/hooks/useFlatTreeNavigation.js.map +1 -1
- package/lib/hooks/useHTMLElementWalker.js +5 -5
- package/lib/hooks/useHTMLElementWalker.js.map +1 -1
- package/lib/hooks/useNestedTreeNavigation.js.map +1 -1
- package/lib/hooks/useOpenItemsState.js.map +1 -1
- package/lib/hooks/useRovingTabIndexes.js.map +1 -1
- package/lib/index.js.map +1 -1
- package/lib/utils/ImmutableSet.js.map +1 -1
- package/lib/utils/assert.js +1 -0
- package/lib/utils/assert.js.map +1 -1
- package/lib/utils/createFlatTreeItems.js +109 -0
- package/lib/utils/createFlatTreeItems.js.map +1 -0
- package/lib/utils/flattenTree.js +3 -4
- package/lib/utils/flattenTree.js.map +1 -1
- package/lib/utils/nextTypeAheadElement.js +2 -2
- package/lib/utils/nextTypeAheadElement.js.map +1 -1
- package/lib/utils/normalizeOpenItems.js.map +1 -1
- package/lib/utils/tokens.js.map +1 -1
- package/lib/utils/treeItemFilter.js.map +1 -1
- package/lib-commonjs/Tree.js +5 -4
- package/lib-commonjs/Tree.js.map +1 -1
- package/lib-commonjs/TreeItem.js +5 -4
- package/lib-commonjs/TreeItem.js.map +1 -1
- package/lib-commonjs/TreeItemLayout.js +5 -4
- package/lib-commonjs/TreeItemLayout.js.map +1 -1
- package/lib-commonjs/TreeItemPersonaLayout.js +5 -4
- package/lib-commonjs/TreeItemPersonaLayout.js.map +1 -1
- package/lib-commonjs/components/Tree/Tree.js +18 -22
- package/lib-commonjs/components/Tree/Tree.js.map +1 -1
- package/lib-commonjs/components/Tree/Tree.types.js +5 -2
- package/lib-commonjs/components/Tree/Tree.types.js.map +1 -1
- package/lib-commonjs/components/Tree/index.js +10 -9
- package/lib-commonjs/components/Tree/index.js.map +1 -1
- package/lib-commonjs/components/Tree/renderTree.js +16 -18
- package/lib-commonjs/components/Tree/renderTree.js.map +1 -1
- package/lib-commonjs/components/Tree/useTree.js +88 -101
- package/lib-commonjs/components/Tree/useTree.js.map +1 -1
- package/lib-commonjs/components/Tree/useTreeContextValues.js +22 -28
- package/lib-commonjs/components/Tree/useTreeContextValues.js.map +1 -1
- package/lib-commonjs/components/Tree/useTreeStyles.js +31 -20
- package/lib-commonjs/components/Tree/useTreeStyles.js.map +1 -1
- package/lib-commonjs/components/TreeItem/TreeItem.js +18 -17
- package/lib-commonjs/components/TreeItem/TreeItem.js.map +1 -1
- package/lib-commonjs/components/TreeItem/TreeItem.types.js +5 -3
- package/lib-commonjs/components/TreeItem/TreeItem.types.js.map +1 -1
- package/lib-commonjs/components/TreeItem/index.js +9 -8
- package/lib-commonjs/components/TreeItem/index.js.map +1 -1
- package/lib-commonjs/components/TreeItem/renderTreeItem.js +19 -32
- package/lib-commonjs/components/TreeItem/renderTreeItem.js.map +1 -1
- package/lib-commonjs/components/TreeItem/useTreeItem.js +229 -249
- package/lib-commonjs/components/TreeItem/useTreeItem.js.map +1 -1
- package/lib-commonjs/components/TreeItem/useTreeItemContextValues.js +24 -20
- package/lib-commonjs/components/TreeItem/useTreeItemContextValues.js.map +1 -1
- package/lib-commonjs/components/TreeItem/useTreeItemStyles.js +353 -188
- package/lib-commonjs/components/TreeItem/useTreeItemStyles.js.map +1 -1
- package/lib-commonjs/components/TreeItemLayout/TreeItemLayout.js +16 -15
- package/lib-commonjs/components/TreeItemLayout/TreeItemLayout.js.map +1 -1
- package/lib-commonjs/components/TreeItemLayout/TreeItemLayout.types.js +3 -2
- package/lib-commonjs/components/TreeItemLayout/TreeItemLayout.types.js.map +1 -1
- package/lib-commonjs/components/TreeItemLayout/index.js +9 -8
- package/lib-commonjs/components/TreeItemLayout/index.js.map +1 -1
- package/lib-commonjs/components/TreeItemLayout/renderTreeItemLayout.js +14 -27
- package/lib-commonjs/components/TreeItemLayout/renderTreeItemLayout.js.map +1 -1
- package/lib-commonjs/components/TreeItemLayout/useTreeItemLayout.js +42 -52
- package/lib-commonjs/components/TreeItemLayout/useTreeItemLayout.js.map +1 -1
- package/lib-commonjs/components/TreeItemLayout/useTreeItemLayoutStyles.js +126 -88
- package/lib-commonjs/components/TreeItemLayout/useTreeItemLayoutStyles.js.map +1 -1
- package/lib-commonjs/components/TreeItemPersonaLayout/TreeItemPersonaLayout.js +18 -17
- package/lib-commonjs/components/TreeItemPersonaLayout/TreeItemPersonaLayout.js.map +1 -1
- package/lib-commonjs/components/TreeItemPersonaLayout/TreeItemPersonaLayout.types.js +3 -2
- package/lib-commonjs/components/TreeItemPersonaLayout/TreeItemPersonaLayout.types.js.map +1 -1
- package/lib-commonjs/components/TreeItemPersonaLayout/index.js +9 -8
- package/lib-commonjs/components/TreeItemPersonaLayout/index.js.map +1 -1
- package/lib-commonjs/components/TreeItemPersonaLayout/renderTreeItemPersonaLayout.js +17 -34
- package/lib-commonjs/components/TreeItemPersonaLayout/renderTreeItemPersonaLayout.js.map +1 -1
- package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayout.js +46 -61
- package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayout.js.map +1 -1
- package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutContextValues.js +18 -15
- package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutContextValues.js.map +1 -1
- package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.js +165 -101
- package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.js.map +1 -1
- package/lib-commonjs/contexts/index.js +6 -5
- package/lib-commonjs/contexts/index.js.map +1 -1
- package/lib-commonjs/contexts/treeContext.js +25 -17
- package/lib-commonjs/contexts/treeContext.js.map +1 -1
- package/lib-commonjs/contexts/treeItemContext.js +20 -12
- package/lib-commonjs/contexts/treeItemContext.js.map +1 -1
- package/lib-commonjs/hooks/index.js +7 -6
- package/lib-commonjs/hooks/index.js.map +1 -1
- package/lib-commonjs/hooks/useFlatTree.js +74 -52
- package/lib-commonjs/hooks/useFlatTree.js.map +1 -1
- package/lib-commonjs/hooks/useFlatTreeNavigation.js +73 -72
- package/lib-commonjs/hooks/useFlatTreeNavigation.js.map +1 -1
- package/lib-commonjs/hooks/useHTMLElementWalker.js +94 -83
- package/lib-commonjs/hooks/useHTMLElementWalker.js.map +1 -1
- package/lib-commonjs/hooks/useNestedTreeNavigation.js +61 -58
- package/lib-commonjs/hooks/useNestedTreeNavigation.js.map +1 -1
- package/lib-commonjs/hooks/useOpenItemsState.js +32 -22
- package/lib-commonjs/hooks/useOpenItemsState.js.map +1 -1
- package/lib-commonjs/hooks/useRovingTabIndexes.js +56 -53
- package/lib-commonjs/hooks/useRovingTabIndexes.js.map +1 -1
- package/lib-commonjs/index.js +48 -180
- package/lib-commonjs/index.js.map +1 -1
- package/lib-commonjs/utils/ImmutableSet.js +39 -38
- package/lib-commonjs/utils/ImmutableSet.js.map +1 -1
- package/lib-commonjs/utils/assert.js +13 -9
- package/lib-commonjs/utils/assert.js.map +1 -1
- package/lib-commonjs/utils/createFlatTreeItems.js +126 -0
- package/lib-commonjs/utils/createFlatTreeItems.js.map +1 -0
- package/lib-commonjs/utils/flattenTree.js +25 -29
- package/lib-commonjs/utils/flattenTree.js.map +1 -1
- package/lib-commonjs/utils/nextTypeAheadElement.js +18 -16
- package/lib-commonjs/utils/nextTypeAheadElement.js.map +1 -1
- package/lib-commonjs/utils/normalizeOpenItems.js +13 -9
- package/lib-commonjs/utils/normalizeOpenItems.js.map +1 -1
- package/lib-commonjs/utils/tokens.js +30 -20
- package/lib-commonjs/utils/tokens.js.map +1 -1
- package/lib-commonjs/utils/treeItemFilter.js +9 -7
- package/lib-commonjs/utils/treeItemFilter.js.map +1 -1
- package/package.json +19 -15
- package/lib/utils/createUnfilteredFlatTree.js +0 -77
- package/lib/utils/createUnfilteredFlatTree.js.map +0 -1
- package/lib/utils/createVisibleFlatTree.js +0 -80
- package/lib/utils/createVisibleFlatTree.js.map +0 -1
- package/lib-commonjs/utils/createUnfilteredFlatTree.js +0 -84
- package/lib-commonjs/utils/createUnfilteredFlatTree.js.map +0 -1
- package/lib-commonjs/utils/createVisibleFlatTree.js +0 -87
- package/lib-commonjs/utils/createVisibleFlatTree.js.map +0 -1
package/lib/utils/flattenTree.js
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
let count = 1;
|
|
2
2
|
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
3
3
|
function flattenTreeRecursive_unstable(items, parent, level = 1) {
|
|
4
|
-
var _a;
|
|
5
4
|
const flatTreeItems = [];
|
|
6
5
|
for (let index = 0; index < items.length; index++) {
|
|
7
6
|
const {
|
|
8
7
|
subtree,
|
|
9
8
|
...item
|
|
10
9
|
} = items[index];
|
|
10
|
+
var _item_id;
|
|
11
11
|
const flatTreeItem = {
|
|
12
12
|
'aria-level': level,
|
|
13
13
|
'aria-posinset': index + 1,
|
|
14
14
|
'aria-setsize': items.length,
|
|
15
15
|
parentId: parent === null || parent === void 0 ? void 0 : parent.id,
|
|
16
|
-
id: (
|
|
16
|
+
id: (_item_id = item.id) !== null && _item_id !== void 0 ? _item_id : `fui-FlatTreeItem-${count++}`,
|
|
17
17
|
leaf: subtree === undefined,
|
|
18
18
|
...item
|
|
19
19
|
};
|
|
@@ -26,7 +26,6 @@ function flattenTreeRecursive_unstable(items, parent, level = 1) {
|
|
|
26
26
|
}
|
|
27
27
|
/**
|
|
28
28
|
* Converts a nested structure to a flat one which can be consumed by `useFlatTreeItems`
|
|
29
|
-
*/
|
|
30
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
29
|
+
*/ // eslint-disable-next-line @typescript-eslint/naming-convention
|
|
31
30
|
export const flattenTree_unstable = flattenTreeRecursive_unstable;
|
|
32
31
|
//# sourceMappingURL=flattenTree.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["count","flattenTreeRecursive_unstable","items","parent","level","flatTreeItems","index","length","subtree","item","flatTreeItem","parentId","id","
|
|
1
|
+
{"version":3,"names":["count","flattenTreeRecursive_unstable","items","parent","level","flatTreeItems","index","length","subtree","item","_item_id","flatTreeItem","parentId","id","leaf","undefined","push","flattenTree_unstable"],"sources":["../../src/utils/flattenTree.ts"],"sourcesContent":["import { FlatTreeItemProps } from '../hooks/useFlatTree';\nimport { TreeItemProps } from '../TreeItem';\n\nexport type NestedTreeItem = Omit<TreeItemProps, 'subtree'> & {\n subtree?: NestedTreeItem[];\n};\n\nlet count = 1;\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nfunction flattenTreeRecursive_unstable(\n items: NestedTreeItem[],\n parent?: FlatTreeItemProps,\n level = 1,\n): FlatTreeItemProps[] {\n const flatTreeItems: FlatTreeItemProps[] = [];\n for (let index = 0; index < items.length; index++) {\n const { subtree, ...item } = items[index];\n const flatTreeItem: FlatTreeItemProps = {\n 'aria-level': level,\n 'aria-posinset': index + 1,\n 'aria-setsize': items.length,\n parentId: parent?.id,\n id: item.id ?? `fui-FlatTreeItem-${count++}`,\n leaf: subtree === undefined,\n ...item,\n };\n flatTreeItems.push(flatTreeItem);\n if (subtree !== undefined) {\n flatTreeItems.push(...flattenTreeRecursive_unstable(subtree, flatTreeItem, level + 1));\n }\n }\n return flatTreeItems;\n}\n\n/**\n * Converts a nested structure to a flat one which can be consumed by `useFlatTreeItems`\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const flattenTree_unstable: (items: NestedTreeItem[]) => FlatTreeItemProps[] = flattenTreeRecursive_unstable;\n"],"mappings":"AAOA,IAAIA,KAAA,GAAQ;AAEZ;AACA,SAASC,8BACPC,KAAuB,EACvBC,MAA0B,EAC1BC,KAAA,GAAQ,CAAC,EACY;EACrB,MAAMC,aAAA,GAAqC,EAAE;EAC7C,KAAK,IAAIC,KAAA,GAAQ,GAAGA,KAAA,GAAQJ,KAAA,CAAMK,MAAM,EAAED,KAAA,IAAS;IACjD,MAAM;MAAEE,OAAA;MAAS,GAAGC;IAAA,CAAM,GAAGP,KAAK,CAACI,KAAA,CAAM;QAMnCI,QAAA;IALN,MAAMC,YAAA,GAAkC;MACtC,cAAcP,KAAA;MACd,iBAAiBE,KAAA,GAAQ;MACzB,gBAAgBJ,KAAA,CAAMK,MAAM;MAC5BK,QAAA,EAAUT,MAAA,aAAAA,MAAA,uBAAAA,MAAA,CAAQU,EAAE;MACpBA,EAAA,EAAI,CAAAH,QAAA,GAAAD,IAAA,CAAKI,EAAE,cAAPH,QAAA,cAAAA,QAAA,GAAY,oBAAmBV,KAAA,EAAQ,EAAC;MAC5Cc,IAAA,EAAMN,OAAA,KAAYO,SAAA;MAClB,GAAGN;IACL;IACAJ,aAAA,CAAcW,IAAI,CAACL,YAAA;IACnB,IAAIH,OAAA,KAAYO,SAAA,EAAW;MACzBV,aAAA,CAAcW,IAAI,IAAIf,6BAAA,CAA8BO,OAAA,EAASG,YAAA,EAAcP,KAAA,GAAQ;IACrF;EACF;EACA,OAAOC,aAAA;AACT;AAEA;;GAAA,CAGA;AACA,OAAO,MAAMY,oBAAA,GAAyEhB,6BAAA"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
export function nextTypeAheadElement(treeWalker, key) {
|
|
2
2
|
const keyToLowerCase = key.toLowerCase();
|
|
3
3
|
const typeAheadFilter = element => {
|
|
4
|
-
var
|
|
5
|
-
return ((
|
|
4
|
+
var _element_textContent;
|
|
5
|
+
return ((_element_textContent = element.textContent) === null || _element_textContent === void 0 ? void 0 : _element_textContent.trim().charAt(0).toLowerCase()) === keyToLowerCase ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_SKIP;
|
|
6
6
|
};
|
|
7
7
|
let nextElement = treeWalker.nextElement(typeAheadFilter);
|
|
8
8
|
if (!nextElement) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["nextTypeAheadElement","treeWalker","key","keyToLowerCase","toLowerCase","typeAheadFilter","element","
|
|
1
|
+
{"version":3,"names":["nextTypeAheadElement","treeWalker","key","keyToLowerCase","toLowerCase","typeAheadFilter","element","_element_textContent","textContent","trim","charAt","NodeFilter","FILTER_ACCEPT","FILTER_SKIP","nextElement","currentElement","root"],"sources":["../../src/utils/nextTypeAheadElement.ts"],"sourcesContent":["import { HTMLElementWalker } from '../hooks/useHTMLElementWalker';\n\nexport function nextTypeAheadElement(treeWalker: HTMLElementWalker, key: string) {\n const keyToLowerCase = key.toLowerCase();\n const typeAheadFilter = (element: HTMLElement) => {\n return element.textContent?.trim().charAt(0).toLowerCase() === keyToLowerCase\n ? NodeFilter.FILTER_ACCEPT\n : NodeFilter.FILTER_SKIP;\n };\n let nextElement = treeWalker.nextElement(typeAheadFilter);\n if (!nextElement) {\n treeWalker.currentElement = treeWalker.root;\n nextElement = treeWalker.nextElement(typeAheadFilter);\n }\n return nextElement;\n}\n"],"mappings":"AAEA,OAAO,SAASA,qBAAqBC,UAA6B,EAAEC,GAAW,EAAE;EAC/E,MAAMC,cAAA,GAAiBD,GAAA,CAAIE,WAAW;EACtC,MAAMC,eAAA,GAAmBC,OAAA,IAAyB;QACzCC,oBAAA;IAAP,OAAO,EAAAA,oBAAA,GAAAD,OAAA,CAAQE,WAAW,cAAnBD,oBAAA,uBAAAA,oBAAA,CAAqBE,IAAA,GAAOC,MAAM,CAAC,GAAGN,WAAW,EAAE,MAAKD,cAAA,GAC3DQ,UAAA,CAAWC,aAAa,GACxBD,UAAA,CAAWE,WAAW;EAC5B;EACA,IAAIC,WAAA,GAAcb,UAAA,CAAWa,WAAW,CAACT,eAAA;EACzC,IAAI,CAACS,WAAA,EAAa;IAChBb,UAAA,CAAWc,cAAc,GAAGd,UAAA,CAAWe,IAAI;IAC3CF,WAAA,GAAcb,UAAA,CAAWa,WAAW,CAACT,eAAA;EACvC;EACA,OAAOS,WAAA;AACT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["normalizeOpenItems","openSubtrees","options","keepUndefined","undefined","Array","isArray"],"sources":["
|
|
1
|
+
{"version":3,"names":["normalizeOpenItems","openSubtrees","options","keepUndefined","undefined","Array","isArray"],"sources":["../../src/utils/normalizeOpenItems.ts"],"sourcesContent":["export function normalizeOpenItems(\n openSubtrees?: string | string[],\n options?: {\n keepUndefined?: false;\n },\n): string[];\n\nexport function normalizeOpenItems(\n openSubtrees?: string | string[],\n options?: {\n keepUndefined: true;\n },\n): string[] | undefined;\n\nexport function normalizeOpenItems(\n openSubtrees?: string | string[],\n options?: {\n keepUndefined?: boolean;\n },\n): string[] | undefined {\n if (!openSubtrees) {\n return options?.keepUndefined ? undefined : [];\n }\n return Array.isArray(openSubtrees) ? openSubtrees : [openSubtrees];\n}\n"],"mappings":"AAcA,OAAO,SAASA,mBACdC,YAAgC,EAChCC,OAEC,EACqB;EACtB,IAAI,CAACD,YAAA,EAAc;IACjB,OAAO,CAAAC,OAAA,aAAAA,OAAA,uBAAAA,OAAA,CAASC,aAAa,IAAGC,SAAA,GAAY,EAAE;EAChD;EACA,OAAOC,KAAA,CAAMC,OAAO,CAACL,YAAA,IAAgBA,YAAA,GAAe,CAACA,YAAA,CAAa;AACpE"}
|
package/lib/utils/tokens.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ArrowDown","ArrowLeft","ArrowRight","ArrowUp","End","Home","treeItemLevelToken","treeAvatarSize","medium","small","treeDataTypes","arrowLeft","arrowRight","enter","click","expandIconClick","end","home","arrowUp","arrowDown","typeAhead"],"sources":["
|
|
1
|
+
{"version":3,"names":["ArrowDown","ArrowLeft","ArrowRight","ArrowUp","End","Home","treeItemLevelToken","treeAvatarSize","medium","small","treeDataTypes","arrowLeft","arrowRight","enter","click","expandIconClick","end","home","arrowUp","arrowDown","typeAhead"],"sources":["../../src/utils/tokens.ts"],"sourcesContent":["import { ArrowDown, ArrowLeft, ArrowRight, ArrowUp, End, Home } from '@fluentui/keyboard-keys';\nimport { TreeNavigationData_unstable, TreeOpenChangeData } from '../Tree';\n\nexport const treeItemLevelToken = '--fluent-TreeItem--level' as const;\n\nexport const treeAvatarSize = {\n medium: 32,\n small: 24,\n} as const;\n\nexport const treeDataTypes: {\n readonly [K in Uncapitalize<TreeOpenChangeData['type'] | TreeNavigationData_unstable['type']>]: Capitalize<K>;\n} = {\n arrowLeft: ArrowLeft,\n arrowRight: ArrowRight,\n enter: 'Enter',\n click: 'Click',\n expandIconClick: 'ExpandIconClick',\n end: End,\n home: Home,\n arrowUp: ArrowUp,\n arrowDown: ArrowDown,\n typeAhead: 'TypeAhead',\n};\n"],"mappings":"AAAA,SAASA,SAAS,EAAEC,SAAS,EAAEC,UAAU,EAAEC,OAAO,EAAEC,GAAG,EAAEC,IAAI,QAAQ;AAGrE,OAAO,MAAMC,kBAAA,GAAqB;AAElC,OAAO,MAAMC,cAAA,GAAiB;EAC5BC,MAAA,EAAQ;EACRC,KAAA,EAAO;AACT;AAEA,OAAO,MAAMC,aAAA,GAET;EACFC,SAAA,EAAWV,SAAA;EACXW,UAAA,EAAYV,UAAA;EACZW,KAAA,EAAO;EACPC,KAAA,EAAO;EACPC,eAAA,EAAiB;EACjBC,GAAA,EAAKZ,GAAA;EACLa,IAAA,EAAMZ,IAAA;EACNa,OAAA,EAASf,OAAA;EACTgB,SAAA,EAAWnB,SAAA;EACXoB,SAAA,EAAW;AACb"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["treeItemFilter","element","getAttribute","NodeFilter","FILTER_ACCEPT","FILTER_SKIP"],"sources":["
|
|
1
|
+
{"version":3,"names":["treeItemFilter","element","getAttribute","NodeFilter","FILTER_ACCEPT","FILTER_SKIP"],"sources":["../../src/utils/treeItemFilter.ts"],"sourcesContent":["export const treeItemFilter = (element: HTMLElement) => {\n return element.getAttribute('role') === 'treeitem' ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_SKIP;\n};\n"],"mappings":"AAAA,OAAO,MAAMA,cAAA,GAAkBC,OAAA,IAAyB;EACtD,OAAOA,OAAA,CAAQC,YAAY,CAAC,YAAY,aAAaC,UAAA,CAAWC,aAAa,GAAGD,UAAA,CAAWE,WAAW;AACxG"}
|
package/lib-commonjs/Tree.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
2
|
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
|
|
3
|
+
value: true
|
|
5
4
|
});
|
|
6
|
-
const
|
|
7
|
-
|
|
5
|
+
const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
|
|
6
|
+
_exportStar(require("./components/Tree/index"), exports);
|
|
7
|
+
//# sourceMappingURL=Tree.js.map
|
|
8
|
+
|
|
8
9
|
//# sourceMappingURL=Tree.js.map
|
package/lib-commonjs/Tree.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../lib/Tree.js"],"sourcesContent":["export * from './components/Tree/index';\n//# sourceMappingURL=Tree.js.map"],"names":[],"mappings":";;;;;oBAAc;CACd,gCAAgC"}
|
package/lib-commonjs/TreeItem.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
2
|
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
|
|
3
|
+
value: true
|
|
5
4
|
});
|
|
6
|
-
const
|
|
7
|
-
|
|
5
|
+
const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
|
|
6
|
+
_exportStar(require("./components/TreeItem/index"), exports);
|
|
7
|
+
//# sourceMappingURL=TreeItem.js.map
|
|
8
|
+
|
|
8
9
|
//# sourceMappingURL=TreeItem.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../lib/TreeItem.js"],"sourcesContent":["export * from './components/TreeItem/index';\n//# sourceMappingURL=TreeItem.js.map"],"names":[],"mappings":";;;;;oBAAc;CACd,oCAAoC"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
2
|
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
|
|
3
|
+
value: true
|
|
5
4
|
});
|
|
6
|
-
const
|
|
7
|
-
|
|
5
|
+
const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
|
|
6
|
+
_exportStar(require("./components/TreeItemLayout/index"), exports);
|
|
7
|
+
//# sourceMappingURL=TreeItemLayout.js.map
|
|
8
|
+
|
|
8
9
|
//# sourceMappingURL=TreeItemLayout.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../lib/TreeItemLayout.js"],"sourcesContent":["export * from './components/TreeItemLayout/index';\n//# sourceMappingURL=TreeItemLayout.js.map"],"names":[],"mappings":";;;;;oBAAc;CACd,0CAA0C"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
2
|
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
|
|
3
|
+
value: true
|
|
5
4
|
});
|
|
6
|
-
const
|
|
7
|
-
|
|
5
|
+
const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
|
|
6
|
+
_exportStar(require("./components/TreeItemPersonaLayout/index"), exports);
|
|
7
|
+
//# sourceMappingURL=TreeItemPersonaLayout.js.map
|
|
8
|
+
|
|
8
9
|
//# sourceMappingURL=TreeItemPersonaLayout.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../lib/TreeItemPersonaLayout.js"],"sourcesContent":["export * from './components/TreeItemPersonaLayout/index';\n//# sourceMappingURL=TreeItemPersonaLayout.js.map"],"names":[],"mappings":";;;;;oBAAc;CACd,iDAAiD"}
|
|
@@ -1,27 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
2
|
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "Tree", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: ()=>Tree
|
|
5
8
|
});
|
|
6
|
-
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
const
|
|
10
|
-
const
|
|
11
|
-
const
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
* an item representing a folder can be expanded to reveal the contents of the folder,
|
|
18
|
-
* which may be files, folders, or both.
|
|
19
|
-
*/
|
|
20
|
-
exports.Tree = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
21
|
-
const state = useTree_1.useTree_unstable(props, ref);
|
|
22
|
-
useTreeStyles_1.useTreeStyles_unstable(state);
|
|
23
|
-
const contextValues = useTreeContextValues_1.useTreeContextValues_unstable(state);
|
|
24
|
-
return renderTree_1.renderTree_unstable(state, contextValues);
|
|
9
|
+
const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
|
|
10
|
+
const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
|
|
11
|
+
const _useTree = require("./useTree");
|
|
12
|
+
const _renderTree = require("./renderTree");
|
|
13
|
+
const _useTreeStyles = require("./useTreeStyles");
|
|
14
|
+
const _useTreeContextValues = require("./useTreeContextValues");
|
|
15
|
+
const Tree = /*#__PURE__*/ _react.forwardRef((props, ref)=>{
|
|
16
|
+
const state = (0, _useTree.useTree_unstable)(props, ref);
|
|
17
|
+
(0, _useTreeStyles.useTreeStyles_unstable)(state);
|
|
18
|
+
const contextValues = (0, _useTreeContextValues.useTreeContextValues_unstable)(state);
|
|
19
|
+
return (0, _renderTree.renderTree_unstable)(state, contextValues);
|
|
25
20
|
});
|
|
26
|
-
|
|
21
|
+
Tree.displayName = 'Tree'; //# sourceMappingURL=Tree.js.map
|
|
22
|
+
|
|
27
23
|
//# sourceMappingURL=Tree.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../../lib/components/Tree/Tree.js"],"sourcesContent":["import * as React from 'react';\nimport { useTree_unstable } from './useTree';\nimport { renderTree_unstable } from './renderTree';\nimport { useTreeStyles_unstable } from './useTreeStyles';\nimport { useTreeContextValues_unstable } from './useTreeContextValues';\n/**\n * A tree view widget presents a hierarchical list.\n * Any item in the hierarchy may have child items,\n * and items that have children may be expanded or collapsed to show or hide the children.\n * For example, in a file system navigator that uses a tree view to display folders and files,\n * an item representing a folder can be expanded to reveal the contents of the folder,\n * which may be files, folders, or both.\n */\nexport const Tree = /*#__PURE__*/React.forwardRef((props, ref) => {\n const state = useTree_unstable(props, ref);\n useTreeStyles_unstable(state);\n const contextValues = useTreeContextValues_unstable(state);\n return renderTree_unstable(state, contextValues);\n});\nTree.displayName = 'Tree';\n//# sourceMappingURL=Tree.js.map"],"names":["Tree","React","forwardRef","props","ref","state","useTree_unstable","useTreeStyles_unstable","contextValues","useTreeContextValues_unstable","renderTree_unstable","displayName"],"mappings":";;;;+BAaaA;;aAAAA;;;6DAbU;yBACU;4BACG;+BACG;sCACO;AASvC,MAAMA,OAAO,WAAW,GAAEC,OAAMC,UAAU,CAAC,CAACC,OAAOC,MAAQ;IAChE,MAAMC,QAAQC,IAAAA,yBAAgB,EAACH,OAAOC;IACtCG,IAAAA,qCAAsB,EAACF;IACvB,MAAMG,gBAAgBC,IAAAA,mDAA6B,EAACJ;IACpD,OAAOK,IAAAA,+BAAmB,EAACL,OAAOG;AACpC;AACAR,KAAKW,WAAW,GAAG,QACnB,gCAAgC"}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
2
|
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
|
|
3
|
+
value: true
|
|
5
4
|
});
|
|
5
|
+
const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
|
|
6
|
+
const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
|
|
7
|
+
//# sourceMappingURL=Tree.types.js.map
|
|
8
|
+
|
|
6
9
|
//# sourceMappingURL=Tree.types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../../lib/components/Tree/Tree.types.js"],"sourcesContent":["import * as React from 'react';\n//# sourceMappingURL=Tree.types.js.map"],"names":[],"mappings":";;;;;6DAAuB;CACvB,sCAAsC"}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
2
|
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
|
|
3
|
+
value: true
|
|
5
4
|
});
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
5
|
+
const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
|
|
6
|
+
_exportStar(require("./Tree"), exports);
|
|
7
|
+
_exportStar(require("./Tree.types"), exports);
|
|
8
|
+
_exportStar(require("./renderTree"), exports);
|
|
9
|
+
_exportStar(require("./useTree"), exports);
|
|
10
|
+
_exportStar(require("./useTreeStyles"), exports);
|
|
11
|
+
_exportStar(require("./useTreeContextValues"), exports);
|
|
12
|
+
//# sourceMappingURL=index.js.map
|
|
13
|
+
|
|
13
14
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../../lib/components/Tree/index.js"],"sourcesContent":["export * from './Tree';\nexport * from './Tree.types';\nexport * from './renderTree';\nexport * from './useTree';\nexport * from './useTreeStyles';\nexport * from './useTreeContextValues';\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":";;;;;oBAAc;oBACA;oBACA;oBACA;oBACA;oBACA;CACd,iCAAiC"}
|
|
@@ -1,22 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
2
|
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "renderTree_unstable", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: ()=>renderTree_unstable
|
|
5
8
|
});
|
|
6
|
-
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
const
|
|
10
|
-
const renderTree_unstable = (state, contextValues)
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
}, React.createElement(slots.root, {
|
|
18
|
-
...slotProps.root
|
|
19
|
-
}, slotProps.root.children));
|
|
20
|
-
};
|
|
21
|
-
exports.renderTree_unstable = renderTree_unstable;
|
|
9
|
+
const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
|
|
10
|
+
const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
|
|
11
|
+
const _reactUtilities = require("@fluentui/react-utilities");
|
|
12
|
+
const _contexts = require("../../contexts");
|
|
13
|
+
const renderTree_unstable = (state, contextValues)=>{
|
|
14
|
+
const { slots , slotProps } = (0, _reactUtilities.getSlots)(state);
|
|
15
|
+
return /*#__PURE__*/ _react.createElement(_contexts.TreeProvider, {
|
|
16
|
+
value: contextValues.tree
|
|
17
|
+
}, /*#__PURE__*/ _react.createElement(slots.root, slotProps.root, slotProps.root.children));
|
|
18
|
+
}; //# sourceMappingURL=renderTree.js.map
|
|
19
|
+
|
|
22
20
|
//# sourceMappingURL=renderTree.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
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,120 +1,107 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
2
|
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
|
|
3
|
+
value: true
|
|
5
4
|
});
|
|
6
|
-
exports
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
// as isSubtree is static, this doesn't break rule of hooks
|
|
23
|
-
// and if this becomes an issue later on, this can be easily converted
|
|
24
|
-
// eslint-disable-next-line react-hooks/rules-of-hooks
|
|
25
|
-
return isSubtree ? useSubtree(props, ref) : useRootTree(props, ref);
|
|
5
|
+
Object.defineProperty(exports, "useTree_unstable", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: ()=>useTree_unstable
|
|
8
|
+
});
|
|
9
|
+
const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
|
|
10
|
+
const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
|
|
11
|
+
const _reactUtilities = require("@fluentui/react-utilities");
|
|
12
|
+
const _contexts = require("../../contexts");
|
|
13
|
+
const _hooks = require("../../hooks");
|
|
14
|
+
const _tokens = require("../../utils/tokens");
|
|
15
|
+
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
|
|
18
|
+
// and if this becomes an issue later on, this can be easily converted
|
|
19
|
+
// eslint-disable-next-line react-hooks/rules-of-hooks
|
|
20
|
+
return isSubtree ? useSubtree(props, ref) : useRootTree(props, ref);
|
|
26
21
|
};
|
|
27
|
-
exports.useTree_unstable = useTree_unstable;
|
|
28
22
|
/**
|
|
29
23
|
* Create the state required to render a sub-level Tree.
|
|
30
24
|
*
|
|
31
25
|
* @param props - props from this instance of Tree
|
|
32
26
|
* @param ref - reference to root HTMLElement of Tree
|
|
33
|
-
*/
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
}
|
|
57
|
-
openItems,
|
|
58
|
-
requestOpenChange,
|
|
59
|
-
requestNavigation
|
|
60
|
-
};
|
|
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
|
+
};
|
|
61
51
|
}
|
|
62
52
|
/**
|
|
63
53
|
* Create the state required to render the root level Tree.
|
|
64
54
|
*
|
|
65
55
|
* @param props - props from this instance of Tree
|
|
66
56
|
* @param ref - reference to root HTMLElement of Tree
|
|
67
|
-
*/
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
role: 'tree',
|
|
108
|
-
...props
|
|
109
|
-
})
|
|
110
|
-
};
|
|
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;
|
|
67
|
+
}
|
|
68
|
+
return updateOpenItems(data);
|
|
69
|
+
});
|
|
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;
|
|
75
|
+
}
|
|
76
|
+
navigate(data);
|
|
77
|
+
if (data.type === _tokens.treeDataTypes.arrowDown || data.type === _tokens.treeDataTypes.arrowUp) {
|
|
78
|
+
data.event.preventDefault();
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
return {
|
|
82
|
+
components: {
|
|
83
|
+
root: 'div'
|
|
84
|
+
},
|
|
85
|
+
appearance,
|
|
86
|
+
size,
|
|
87
|
+
level: 1,
|
|
88
|
+
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
|
+
};
|
|
111
97
|
}
|
|
112
98
|
function warnIfNoProperPropsRootTree(props) {
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
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
|
+
}
|
|
117
104
|
}
|
|
118
|
-
|
|
119
|
-
|
|
105
|
+
} //# sourceMappingURL=useTree.js.map
|
|
106
|
+
|
|
120
107
|
//# sourceMappingURL=useTree.js.map
|