@fluentui/react-tree 9.0.0-beta.11 → 9.0.0-beta.13
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/CHANGELOG.json +195 -1
- package/CHANGELOG.md +46 -2
- package/dist/index.d.ts +189 -100
- package/lib/TreeItemAside.js +2 -0
- package/lib/TreeItemAside.js.map +1 -0
- package/lib/components/Tree/Tree.js +1 -1
- package/lib/components/Tree/Tree.js.map +1 -1
- package/lib/components/Tree/Tree.types.js.map +1 -1
- package/lib/components/Tree/index.js +1 -1
- package/lib/components/Tree/index.js.map +1 -1
- package/lib/components/Tree/renderTree.js +1 -1
- package/lib/components/Tree/renderTree.js.map +1 -1
- package/lib/components/Tree/useRootTree.js +160 -0
- package/lib/components/Tree/useRootTree.js.map +1 -0
- package/lib/components/Tree/useSubtree.js +40 -0
- package/lib/components/Tree/useSubtree.js.map +1 -0
- package/lib/components/Tree/useTree.js +2 -95
- package/lib/components/Tree/useTree.js.map +1 -1
- package/lib/components/Tree/useTreeContextValues.js +2 -4
- package/lib/components/Tree/useTreeContextValues.js.map +1 -1
- package/lib/components/Tree/useTreeStyles.styles.js +30 -0
- package/lib/components/Tree/useTreeStyles.styles.js.map +1 -0
- package/lib/components/TreeItem/TreeItem.js +2 -2
- package/lib/components/TreeItem/TreeItem.js.map +1 -1
- package/lib/components/TreeItem/TreeItem.types.js.map +1 -1
- package/lib/components/TreeItem/index.js +1 -1
- package/lib/components/TreeItem/index.js.map +1 -1
- package/lib/components/TreeItem/renderTreeItem.js +2 -5
- package/lib/components/TreeItem/renderTreeItem.js.map +1 -1
- package/lib/components/TreeItem/useTreeItem.js +65 -175
- package/lib/components/TreeItem/useTreeItem.js.map +1 -1
- package/lib/components/TreeItem/useTreeItemContextValues.js +25 -11
- package/lib/components/TreeItem/useTreeItemContextValues.js.map +1 -1
- package/lib/components/TreeItem/useTreeItemStyles.styles.js +102 -0
- package/lib/components/TreeItem/useTreeItemStyles.styles.js.map +1 -0
- package/lib/components/TreeItemAside/TreeItemAside.js +15 -0
- package/lib/components/TreeItemAside/TreeItemAside.js.map +1 -0
- package/lib/components/TreeItemAside/TreeItemAside.types.js +2 -0
- package/lib/components/TreeItemAside/TreeItemAside.types.js.map +1 -0
- package/lib/components/TreeItemAside/index.js +6 -0
- package/lib/components/TreeItemAside/index.js.map +1 -0
- package/lib/components/TreeItemAside/renderTreeItemAside.js +19 -0
- package/lib/components/TreeItemAside/renderTreeItemAside.js.map +1 -0
- package/lib/components/TreeItemAside/useTreeItemAside.js +35 -0
- package/lib/components/TreeItemAside/useTreeItemAside.js.map +1 -0
- package/lib/components/TreeItemAside/useTreeItemAsideStyles.styles.js +47 -0
- package/lib/components/TreeItemAside/useTreeItemAsideStyles.styles.js.map +1 -0
- package/lib/components/TreeItemChevron.js +27 -0
- package/lib/components/TreeItemChevron.js.map +1 -0
- package/lib/components/TreeItemLayout/TreeItemLayout.js +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 +1 -1
- package/lib/components/TreeItemLayout/index.js.map +1 -1
- package/lib/components/TreeItemLayout/renderTreeItemLayout.js +1 -4
- package/lib/components/TreeItemLayout/renderTreeItemLayout.js.map +1 -1
- package/lib/components/TreeItemLayout/useTreeItemLayout.js +16 -11
- package/lib/components/TreeItemLayout/useTreeItemLayout.js.map +1 -1
- package/lib/components/TreeItemLayout/useTreeItemLayoutStyles.styles.js +138 -0
- package/lib/components/TreeItemLayout/useTreeItemLayoutStyles.styles.js.map +1 -0
- package/lib/components/TreeItemPersonaLayout/TreeItemPersonaLayout.js +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 +1 -1
- package/lib/components/TreeItemPersonaLayout/index.js.map +1 -1
- package/lib/components/TreeItemPersonaLayout/renderTreeItemPersonaLayout.js +2 -5
- package/lib/components/TreeItemPersonaLayout/renderTreeItemPersonaLayout.js.map +1 -1
- package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayout.js +16 -20
- package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayout.js.map +1 -1
- package/lib/components/TreeItemPersonaLayout/{useTreeItemPersonaLayoutStyles.js → useTreeItemPersonaLayoutStyles.styles.js} +51 -30
- package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.styles.js.map +1 -0
- package/lib/contexts/treeContext.js +1 -2
- package/lib/contexts/treeContext.js.map +1 -1
- package/lib/contexts/treeItemContext.js +12 -4
- package/lib/contexts/treeItemContext.js.map +1 -1
- package/lib/hooks/useFlatTree.js +9 -9
- package/lib/hooks/useFlatTree.js.map +1 -1
- package/lib/hooks/useFlatTreeNavigation.js +15 -13
- package/lib/hooks/useFlatTreeNavigation.js.map +1 -1
- package/lib/hooks/useNestedTreeNavigation.js +9 -9
- package/lib/hooks/useNestedTreeNavigation.js.map +1 -1
- package/lib/hooks/useOpenItemsState.js +3 -4
- package/lib/hooks/useOpenItemsState.js.map +1 -1
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/lib/utils/createFlatTreeItems.js +32 -21
- package/lib/utils/createFlatTreeItems.js.map +1 -1
- package/lib/utils/flattenTree.js +4 -29
- package/lib/utils/flattenTree.js.map +1 -1
- package/lib/utils/tokens.js +11 -11
- package/lib/utils/tokens.js.map +1 -1
- package/lib-commonjs/TreeItemAside.js +9 -0
- package/lib-commonjs/TreeItemAside.js.map +1 -0
- package/lib-commonjs/components/Tree/Tree.js +2 -2
- package/lib-commonjs/components/Tree/Tree.js.map +1 -1
- package/lib-commonjs/components/Tree/index.js +1 -1
- package/lib-commonjs/components/Tree/index.js.map +1 -1
- package/lib-commonjs/components/Tree/renderTree.js +1 -1
- package/lib-commonjs/components/Tree/renderTree.js.map +1 -1
- package/lib-commonjs/components/Tree/useRootTree.js +151 -0
- package/lib-commonjs/components/Tree/useRootTree.js.map +1 -0
- package/lib-commonjs/components/Tree/useSubtree.js +41 -0
- package/lib-commonjs/components/Tree/useSubtree.js.map +1 -0
- package/lib-commonjs/components/Tree/useTree.js +4 -89
- package/lib-commonjs/components/Tree/useTree.js.map +1 -1
- package/lib-commonjs/components/Tree/useTreeContextValues.js +2 -3
- package/lib-commonjs/components/Tree/useTreeContextValues.js.map +1 -1
- package/lib-commonjs/components/Tree/{useTreeStyles.js → useTreeStyles.styles.js} +21 -4
- package/lib-commonjs/components/Tree/useTreeStyles.styles.js.map +1 -0
- package/lib-commonjs/components/TreeItem/TreeItem.js +2 -2
- package/lib-commonjs/components/TreeItem/TreeItem.js.map +1 -1
- package/lib-commonjs/components/TreeItem/index.js +1 -1
- package/lib-commonjs/components/TreeItem/index.js.map +1 -1
- package/lib-commonjs/components/TreeItem/renderTreeItem.js +2 -5
- package/lib-commonjs/components/TreeItem/renderTreeItem.js.map +1 -1
- package/lib-commonjs/components/TreeItem/useTreeItem.js +60 -165
- package/lib-commonjs/components/TreeItem/useTreeItem.js.map +1 -1
- package/lib-commonjs/components/TreeItem/useTreeItemContextValues.js +16 -15
- package/lib-commonjs/components/TreeItem/useTreeItemContextValues.js.map +1 -1
- package/lib-commonjs/components/TreeItem/useTreeItemStyles.styles.js +208 -0
- package/lib-commonjs/components/TreeItem/useTreeItemStyles.styles.js.map +1 -0
- package/lib-commonjs/components/TreeItemAside/TreeItemAside.js +21 -0
- package/lib-commonjs/components/TreeItemAside/TreeItemAside.js.map +1 -0
- package/lib-commonjs/components/TreeItemAside/TreeItemAside.types.js +7 -0
- package/lib-commonjs/components/TreeItemAside/TreeItemAside.types.js.map +1 -0
- package/lib-commonjs/components/TreeItemAside/index.js +13 -0
- package/lib-commonjs/components/TreeItemAside/index.js.map +1 -0
- package/lib-commonjs/components/TreeItemAside/renderTreeItemAside.js +22 -0
- package/lib-commonjs/components/TreeItemAside/renderTreeItemAside.js.map +1 -0
- package/lib-commonjs/components/TreeItemAside/useTreeItemAside.js +33 -0
- package/lib-commonjs/components/TreeItemAside/useTreeItemAside.js.map +1 -0
- package/lib-commonjs/components/TreeItemAside/useTreeItemAsideStyles.styles.js +92 -0
- package/lib-commonjs/components/TreeItemAside/useTreeItemAsideStyles.styles.js.map +1 -0
- package/lib-commonjs/components/TreeItemChevron.js +35 -0
- package/lib-commonjs/components/TreeItemChevron.js.map +1 -0
- package/lib-commonjs/components/TreeItemLayout/TreeItemLayout.js +2 -2
- package/lib-commonjs/components/TreeItemLayout/TreeItemLayout.js.map +1 -1
- package/lib-commonjs/components/TreeItemLayout/index.js +1 -1
- package/lib-commonjs/components/TreeItemLayout/index.js.map +1 -1
- package/lib-commonjs/components/TreeItemLayout/renderTreeItemLayout.js +1 -2
- package/lib-commonjs/components/TreeItemLayout/renderTreeItemLayout.js.map +1 -1
- package/lib-commonjs/components/TreeItemLayout/useTreeItemLayout.js +14 -9
- package/lib-commonjs/components/TreeItemLayout/useTreeItemLayout.js.map +1 -1
- package/lib-commonjs/components/TreeItemLayout/useTreeItemLayoutStyles.styles.js +223 -0
- package/lib-commonjs/components/TreeItemLayout/useTreeItemLayoutStyles.styles.js.map +1 -0
- package/lib-commonjs/components/TreeItemPersonaLayout/TreeItemPersonaLayout.js +2 -2
- package/lib-commonjs/components/TreeItemPersonaLayout/TreeItemPersonaLayout.js.map +1 -1
- package/lib-commonjs/components/TreeItemPersonaLayout/index.js +1 -1
- package/lib-commonjs/components/TreeItemPersonaLayout/index.js.map +1 -1
- package/lib-commonjs/components/TreeItemPersonaLayout/renderTreeItemPersonaLayout.js +2 -3
- package/lib-commonjs/components/TreeItemPersonaLayout/renderTreeItemPersonaLayout.js.map +1 -1
- package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayout.js +14 -14
- package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayout.js.map +1 -1
- package/lib-commonjs/components/TreeItemPersonaLayout/{useTreeItemPersonaLayoutStyles.js → useTreeItemPersonaLayoutStyles.styles.js} +91 -45
- package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.styles.js.map +1 -0
- package/lib-commonjs/contexts/treeContext.js +1 -2
- package/lib-commonjs/contexts/treeContext.js.map +1 -1
- package/lib-commonjs/contexts/treeItemContext.js +12 -4
- package/lib-commonjs/contexts/treeItemContext.js.map +1 -1
- package/lib-commonjs/hooks/useFlatTree.js +9 -9
- package/lib-commonjs/hooks/useFlatTree.js.map +1 -1
- package/lib-commonjs/hooks/useFlatTreeNavigation.js +15 -13
- package/lib-commonjs/hooks/useFlatTreeNavigation.js.map +1 -1
- package/lib-commonjs/hooks/useNestedTreeNavigation.js +9 -9
- package/lib-commonjs/hooks/useNestedTreeNavigation.js.map +1 -1
- package/lib-commonjs/hooks/useOpenItemsState.js +3 -6
- package/lib-commonjs/hooks/useOpenItemsState.js.map +1 -1
- package/lib-commonjs/index.js +6 -0
- package/lib-commonjs/index.js.map +1 -1
- package/lib-commonjs/utils/createFlatTreeItems.js +33 -25
- package/lib-commonjs/utils/createFlatTreeItems.js.map +1 -1
- package/lib-commonjs/utils/flattenTree.js +8 -37
- package/lib-commonjs/utils/flattenTree.js.map +1 -1
- package/lib-commonjs/utils/tokens.js +10 -10
- package/lib-commonjs/utils/tokens.js.map +1 -1
- package/package.json +15 -14
- package/.swcrc +0 -30
- package/lib/components/Tree/useTreeStyles.js +0 -20
- package/lib/components/Tree/useTreeStyles.js.map +0 -1
- package/lib/components/TreeItem/useTreeItemStyles.js +0 -203
- package/lib/components/TreeItem/useTreeItemStyles.js.map +0 -1
- package/lib/components/TreeItemLayout/useTreeItemLayoutStyles.js +0 -98
- package/lib/components/TreeItemLayout/useTreeItemLayoutStyles.js.map +0 -1
- package/lib/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.js.map +0 -1
- package/lib-commonjs/components/Tree/useTreeStyles.js.map +0 -1
- package/lib-commonjs/components/TreeItem/useTreeItemStyles.js +0 -375
- package/lib-commonjs/components/TreeItem/useTreeItemStyles.js.map +0 -1
- package/lib-commonjs/components/TreeItemLayout/useTreeItemLayoutStyles.js +0 -143
- package/lib-commonjs/components/TreeItemLayout/useTreeItemLayoutStyles.js.map +0 -1
- package/lib-commonjs/components/TreeItemPersonaLayout/useTreeItemPersonaLayoutStyles.js.map +0 -1
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* creates a list of flat tree items
|
|
3
|
-
* and provides a map to access each item by id
|
|
4
|
-
*/ "use strict";
|
|
1
|
+
"use strict";
|
|
5
2
|
Object.defineProperty(exports, "__esModule", {
|
|
6
3
|
value: true
|
|
7
4
|
});
|
|
@@ -16,19 +13,21 @@ _export(exports, {
|
|
|
16
13
|
flatTreeRootId: ()=>flatTreeRootId,
|
|
17
14
|
VisibleFlatTreeItemGenerator: ()=>VisibleFlatTreeItemGenerator
|
|
18
15
|
});
|
|
16
|
+
const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
|
|
17
|
+
const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
|
|
19
18
|
function createFlatTreeItems(flatTreeItemProps) {
|
|
20
19
|
const root = createFlatTreeRootItem();
|
|
21
|
-
const
|
|
20
|
+
const itemsPerValue = new Map([
|
|
22
21
|
[
|
|
23
|
-
|
|
22
|
+
root.value,
|
|
24
23
|
root
|
|
25
24
|
]
|
|
26
25
|
]);
|
|
27
26
|
const items = [];
|
|
28
27
|
for(let index = 0; index < flatTreeItemProps.length; index++){
|
|
29
|
-
const {
|
|
28
|
+
const { parentValue =flatTreeRootId , ...treeItemProps } = flatTreeItemProps[index];
|
|
30
29
|
const nextItemProps = flatTreeItemProps[index + 1];
|
|
31
|
-
const currentParent =
|
|
30
|
+
const currentParent = itemsPerValue.get(parentValue);
|
|
32
31
|
if (!currentParent) {
|
|
33
32
|
if (process.env.NODE_ENV === 'development') {
|
|
34
33
|
// eslint-disable-next-line no-console
|
|
@@ -36,50 +35,60 @@ function createFlatTreeItems(flatTreeItemProps) {
|
|
|
36
35
|
}
|
|
37
36
|
break;
|
|
38
37
|
}
|
|
39
|
-
|
|
38
|
+
var _treeItemProps_itemType;
|
|
39
|
+
const itemType = (_treeItemProps_itemType = treeItemProps.itemType) !== null && _treeItemProps_itemType !== void 0 ? _treeItemProps_itemType : treeItemProps.value === undefined || (nextItemProps === null || nextItemProps === void 0 ? void 0 : nextItemProps.parentValue) !== treeItemProps.value ? 'leaf' : 'branch';
|
|
40
40
|
var _currentParent_level;
|
|
41
41
|
const currentLevel = ((_currentParent_level = currentParent.level) !== null && _currentParent_level !== void 0 ? _currentParent_level : 0) + 1;
|
|
42
42
|
const currentChildrenSize = ++currentParent.childrenSize;
|
|
43
|
+
const ref = /*#__PURE__*/ _react.createRef();
|
|
43
44
|
const flatTreeItem = {
|
|
44
|
-
|
|
45
|
+
value: treeItemProps.value,
|
|
45
46
|
getTreeItemProps: ()=>({
|
|
46
47
|
...treeItemProps,
|
|
47
48
|
'aria-level': currentLevel,
|
|
48
49
|
'aria-posinset': currentChildrenSize,
|
|
49
50
|
'aria-setsize': currentParent.childrenSize,
|
|
50
|
-
|
|
51
|
+
itemType,
|
|
52
|
+
// a reference to every parent element is necessary to ensure navigation
|
|
53
|
+
ref: flatTreeItem.childrenSize > 0 ? ref : undefined
|
|
51
54
|
}),
|
|
55
|
+
ref,
|
|
52
56
|
level: currentLevel,
|
|
53
|
-
|
|
57
|
+
parentValue,
|
|
54
58
|
childrenSize: 0,
|
|
55
59
|
index: -1
|
|
56
60
|
};
|
|
57
|
-
|
|
61
|
+
itemsPerValue.set(flatTreeItem.value, flatTreeItem);
|
|
58
62
|
items.push(flatTreeItem);
|
|
59
63
|
}
|
|
60
|
-
|
|
64
|
+
const flatTreeItems = {
|
|
61
65
|
root,
|
|
62
66
|
size: items.length,
|
|
63
67
|
getByIndex: (index)=>items[index],
|
|
64
|
-
get: (
|
|
65
|
-
set: (
|
|
68
|
+
get: (key)=>itemsPerValue.get(key),
|
|
69
|
+
set: (key, value)=>itemsPerValue.set(key, value)
|
|
66
70
|
};
|
|
71
|
+
return flatTreeItems;
|
|
67
72
|
}
|
|
68
73
|
const flatTreeRootId = '__fuiFlatTreeRoot';
|
|
69
74
|
function createFlatTreeRootItem() {
|
|
70
75
|
return {
|
|
71
|
-
|
|
76
|
+
ref: {
|
|
77
|
+
current: null
|
|
78
|
+
},
|
|
79
|
+
value: flatTreeRootId,
|
|
80
|
+
parentValue: undefined,
|
|
72
81
|
getTreeItemProps: ()=>{
|
|
73
82
|
if (process.env.NODE_ENV !== 'production') {
|
|
74
83
|
// eslint-disable-next-line no-console
|
|
75
84
|
console.error('useFlatTree: internal error, trying to access treeitem props from invalid root element');
|
|
76
85
|
}
|
|
77
86
|
return {
|
|
78
|
-
|
|
87
|
+
value: flatTreeRootId,
|
|
79
88
|
'aria-setsize': -1,
|
|
80
89
|
'aria-level': -1,
|
|
81
90
|
'aria-posinset': -1,
|
|
82
|
-
|
|
91
|
+
itemType: 'branch'
|
|
83
92
|
};
|
|
84
93
|
},
|
|
85
94
|
childrenSize: 0,
|
|
@@ -96,13 +105,12 @@ function createFlatTreeRootItem() {
|
|
|
96
105
|
function* VisibleFlatTreeItemGenerator(openItems, flatTreeItems) {
|
|
97
106
|
for(let index = 0, visibleIndex = 0; index < flatTreeItems.size; index++){
|
|
98
107
|
const item = flatTreeItems.getByIndex(index);
|
|
99
|
-
var _flatTreeItems_get;
|
|
100
|
-
const parent = item.parentId ? (_flatTreeItems_get = flatTreeItems.get(item.parentId)) !== null && _flatTreeItems_get !== void 0 ? _flatTreeItems_get : flatTreeItems.root : flatTreeItems.root;
|
|
101
108
|
if (isItemVisible(item, openItems, flatTreeItems)) {
|
|
102
109
|
item.index = visibleIndex++;
|
|
103
110
|
yield item;
|
|
104
111
|
} else {
|
|
105
|
-
|
|
112
|
+
// Jump the amount of children the current item has, since those items will also be hidden
|
|
113
|
+
index += item.childrenSize;
|
|
106
114
|
}
|
|
107
115
|
}
|
|
108
116
|
}
|
|
@@ -110,11 +118,11 @@ function isItemVisible(item, openItems, flatTreeItems) {
|
|
|
110
118
|
if (item.level === 1) {
|
|
111
119
|
return true;
|
|
112
120
|
}
|
|
113
|
-
while(item.
|
|
114
|
-
if (!openItems.has(item.
|
|
121
|
+
while(item.parentValue && item.parentValue !== flatTreeItems.root.value){
|
|
122
|
+
if (!openItems.has(item.parentValue)) {
|
|
115
123
|
return false;
|
|
116
124
|
}
|
|
117
|
-
const parent = flatTreeItems.get(item.
|
|
125
|
+
const parent = flatTreeItems.get(item.parentValue);
|
|
118
126
|
if (!parent) {
|
|
119
127
|
return false;
|
|
120
128
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../lib/utils/createFlatTreeItems.js"],"sourcesContent":["/**\n * creates a list of flat tree items\n * and provides a map to access each item by id\n
|
|
1
|
+
{"version":3,"sources":["../../lib/utils/createFlatTreeItems.js"],"sourcesContent":["import * as React from 'react';\n/**\n * creates a list of flat tree items\n * and provides a map to access each item by id\n */\nexport function createFlatTreeItems(flatTreeItemProps) {\n const root = createFlatTreeRootItem();\n const itemsPerValue = new Map([[root.value, root]]);\n const items = [];\n for (let index = 0; index < flatTreeItemProps.length; index++) {\n const {\n parentValue = flatTreeRootId,\n ...treeItemProps\n } = flatTreeItemProps[index];\n const nextItemProps = flatTreeItemProps[index + 1];\n const currentParent = itemsPerValue.get(parentValue);\n if (!currentParent) {\n if (process.env.NODE_ENV === 'development') {\n // eslint-disable-next-line no-console\n console.error(`useFlatTree: item ${flatTreeItemProps[index].id} is wrongly positioned, did you properly ordered provided item props? make sure provided items are organized`);\n }\n break;\n }\n var _treeItemProps_itemType;\n const itemType = (_treeItemProps_itemType = treeItemProps.itemType) !== null && _treeItemProps_itemType !== void 0 ? _treeItemProps_itemType : treeItemProps.value === undefined || (nextItemProps === null || nextItemProps === void 0 ? void 0 : nextItemProps.parentValue) !== treeItemProps.value ? 'leaf' : 'branch';\n var _currentParent_level;\n const currentLevel = ((_currentParent_level = currentParent.level) !== null && _currentParent_level !== void 0 ? _currentParent_level : 0) + 1;\n const currentChildrenSize = ++currentParent.childrenSize;\n const ref = /*#__PURE__*/React.createRef();\n const flatTreeItem = {\n value: treeItemProps.value,\n getTreeItemProps: () => ({\n ...treeItemProps,\n 'aria-level': currentLevel,\n 'aria-posinset': currentChildrenSize,\n 'aria-setsize': currentParent.childrenSize,\n itemType,\n // a reference to every parent element is necessary to ensure navigation\n ref: flatTreeItem.childrenSize > 0 ? ref : undefined\n }),\n ref,\n level: currentLevel,\n parentValue,\n childrenSize: 0,\n index: -1\n };\n itemsPerValue.set(flatTreeItem.value, flatTreeItem);\n items.push(flatTreeItem);\n }\n const flatTreeItems = {\n root,\n size: items.length,\n getByIndex: index => items[index],\n get: key => itemsPerValue.get(key),\n set: (key, value) => itemsPerValue.set(key, value)\n };\n return flatTreeItems;\n}\nexport const flatTreeRootId = '__fuiFlatTreeRoot';\nfunction createFlatTreeRootItem() {\n return {\n ref: {\n current: null\n },\n value: flatTreeRootId,\n parentValue: undefined,\n getTreeItemProps: () => {\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line no-console\n console.error('useFlatTree: internal error, trying to access treeitem props from invalid root element');\n }\n return {\n value: flatTreeRootId,\n 'aria-setsize': -1,\n 'aria-level': -1,\n 'aria-posinset': -1,\n itemType: 'branch'\n };\n },\n childrenSize: 0,\n get index() {\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line no-console\n console.error('useFlatTree: internal error, trying to access treeitem props from invalid root element');\n }\n return -1;\n },\n level: 0\n };\n}\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function* VisibleFlatTreeItemGenerator(openItems, flatTreeItems) {\n for (let index = 0, visibleIndex = 0; index < flatTreeItems.size; index++) {\n const item = flatTreeItems.getByIndex(index);\n if (isItemVisible(item, openItems, flatTreeItems)) {\n item.index = visibleIndex++;\n yield item;\n } else {\n // Jump the amount of children the current item has, since those items will also be hidden\n index += item.childrenSize;\n }\n }\n}\nfunction isItemVisible(item, openItems, flatTreeItems) {\n if (item.level === 1) {\n return true;\n }\n while (item.parentValue && item.parentValue !== flatTreeItems.root.value) {\n if (!openItems.has(item.parentValue)) {\n return false;\n }\n const parent = flatTreeItems.get(item.parentValue);\n if (!parent) {\n return false;\n }\n item = parent;\n }\n return true;\n}\n//# sourceMappingURL=createFlatTreeItems.js.map"],"names":["createFlatTreeItems","flatTreeRootId","VisibleFlatTreeItemGenerator","flatTreeItemProps","root","createFlatTreeRootItem","itemsPerValue","Map","value","items","index","length","parentValue","treeItemProps","nextItemProps","currentParent","get","process","env","NODE_ENV","console","error","id","_treeItemProps_itemType","itemType","undefined","_currentParent_level","currentLevel","level","currentChildrenSize","childrenSize","ref","React","createRef","flatTreeItem","getTreeItemProps","set","push","flatTreeItems","size","getByIndex","key","current","openItems","visibleIndex","item","isItemVisible","has","parent"],"mappings":"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"}
|
|
@@ -2,29 +2,22 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
get: all[name]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
flattenTree_unstable: ()=>flattenTree_unstable,
|
|
13
|
-
flattenTreeFromElement: ()=>flattenTreeFromElement
|
|
5
|
+
Object.defineProperty(exports, "flattenTree_unstable", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: ()=>flattenTree_unstable
|
|
14
8
|
});
|
|
15
|
-
const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
|
|
16
|
-
const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
|
|
17
9
|
let count = 1;
|
|
18
10
|
function flattenTreeRecursive(items, parent, level = 1) {
|
|
19
11
|
return items.reduce((acc, { subtree , ...item }, index)=>{
|
|
20
12
|
var _item_id;
|
|
13
|
+
const id = (_item_id = item.id) !== null && _item_id !== void 0 ? _item_id : `fui-FlatTreeItem-${count++}`;
|
|
14
|
+
var _item_value;
|
|
21
15
|
const flatTreeItem = {
|
|
22
16
|
'aria-level': level,
|
|
23
17
|
'aria-posinset': index + 1,
|
|
24
18
|
'aria-setsize': items.length,
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
leaf: subtree === undefined,
|
|
19
|
+
parentValue: parent === null || parent === void 0 ? void 0 : parent.value,
|
|
20
|
+
value: (_item_value = item.value) !== null && _item_value !== void 0 ? _item_value : id,
|
|
28
21
|
...item
|
|
29
22
|
};
|
|
30
23
|
acc.push(flatTreeItem);
|
|
@@ -34,28 +27,6 @@ function flattenTreeRecursive(items, parent, level = 1) {
|
|
|
34
27
|
return acc;
|
|
35
28
|
}, []);
|
|
36
29
|
}
|
|
37
|
-
const flattenTree_unstable = (items)=>flattenTreeRecursive(items);
|
|
38
|
-
const flattenTreeFromElement = (root, parent, level = 1)=>{
|
|
39
|
-
const children = _react.Children.toArray(root.props.children);
|
|
40
|
-
return children.reduce((acc, curr, index)=>{
|
|
41
|
-
const [content, subtree] = _react.Children.toArray(curr.props.children);
|
|
42
|
-
var _curr_props_id;
|
|
43
|
-
const flatTreeItem = {
|
|
44
|
-
'aria-level': level,
|
|
45
|
-
'aria-posinset': index + 1,
|
|
46
|
-
'aria-setsize': children.length,
|
|
47
|
-
parentId: parent === null || parent === void 0 ? void 0 : parent.id,
|
|
48
|
-
id: (_curr_props_id = curr.props.id) !== null && _curr_props_id !== void 0 ? _curr_props_id : `fui-FlatTreeItem-${count++}`,
|
|
49
|
-
leaf: subtree === undefined,
|
|
50
|
-
...curr.props,
|
|
51
|
-
children: content
|
|
52
|
-
};
|
|
53
|
-
acc.push(flatTreeItem);
|
|
54
|
-
if (subtree !== undefined) {
|
|
55
|
-
acc.push(...flattenTreeFromElement(subtree, flatTreeItem, level + 1));
|
|
56
|
-
}
|
|
57
|
-
return acc;
|
|
58
|
-
}, []);
|
|
59
|
-
}; //# sourceMappingURL=flattenTree.js.map
|
|
30
|
+
const flattenTree_unstable = (items)=>flattenTreeRecursive(items); //# sourceMappingURL=flattenTree.js.map
|
|
60
31
|
|
|
61
32
|
//# sourceMappingURL=flattenTree.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../lib/utils/flattenTree.js"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../lib/utils/flattenTree.js"],"sourcesContent":["let count = 1;\nfunction flattenTreeRecursive(items, parent, level = 1) {\n return items.reduce((acc, {\n subtree,\n ...item\n }, index) => {\n var _item_id;\n const id = (_item_id = item.id) !== null && _item_id !== void 0 ? _item_id : `fui-FlatTreeItem-${count++}`;\n var _item_value;\n const flatTreeItem = {\n 'aria-level': level,\n 'aria-posinset': index + 1,\n 'aria-setsize': items.length,\n parentValue: parent === null || parent === void 0 ? void 0 : parent.value,\n value: (_item_value = item.value) !== null && _item_value !== void 0 ? _item_value : id,\n ...item\n };\n acc.push(flatTreeItem);\n if (subtree !== undefined) {\n acc.push(...flattenTreeRecursive(subtree, flatTreeItem, level + 1));\n }\n return acc;\n }, []);\n}\n/**\n * Converts a nested structure to a flat one which can be consumed by `useFlatTreeItems`\n * @example\n * ```tsx\n * const defaultItems = flattenTree_unstable([\n * {\n * children: <TreeItemLayout>level 1, item 1</TreeItemLayout>,\n * subtree: [\n * {\n * children: <TreeItemLayout>level 2, item 1</TreeItemLayout>,\n * },\n * {\n * children: <TreeItemLayout>level 2, item 2</TreeItemLayout>,\n * },\n * {\n * children: <TreeItemLayout>level 2, item 3</TreeItemLayout>,\n * },\n * ],\n * },\n * {\n * children: <TreeItemLayout>level 1, item 2</TreeItemLayout>,\n * subtree: [\n * {\n * children: <TreeItemLayout>level 2, item 1</TreeItemLayout>,\n * subtree: [\n * {\n * children: <TreeItemLayout>level 3, item 1</TreeItemLayout>,\n * subtree: [\n * {\n * children: <TreeItemLayout>level 4, item 1</TreeItemLayout>,\n * },\n * ],\n * },\n * ],\n * },\n * ],\n * },\n * ]);\n * ```\n */ // eslint-disable-next-line @typescript-eslint/naming-convention\nexport const flattenTree_unstable = items => flattenTreeRecursive(items);\n//# sourceMappingURL=flattenTree.js.map"],"names":["flattenTree_unstable","count","flattenTreeRecursive","items","parent","level","reduce","acc","subtree","item","index","_item_id","id","_item_value","flatTreeItem","length","parentValue","value","push","undefined"],"mappings":";;;;+BAgEaA;;aAAAA;;AAhEb,IAAIC,QAAQ;AACZ,SAASC,qBAAqBC,KAAK,EAAEC,MAAM,EAAEC,QAAQ,CAAC,EAAE;IACtD,OAAOF,MAAMG,MAAM,CAAC,CAACC,KAAK,EACxBC,QAAO,EACP,GAAGC,MACJ,EAAEC,QAAU;QACX,IAAIC;QACJ,MAAMC,KAAK,AAACD,CAAAA,WAAWF,KAAKG,EAAE,AAAD,MAAO,IAAI,IAAID,aAAa,KAAK,IAAIA,WAAW,CAAC,iBAAiB,EAAEV,QAAQ,CAAC;QAC1G,IAAIY;QACJ,MAAMC,eAAe;YACnB,cAAcT;YACd,iBAAiBK,QAAQ;YACzB,gBAAgBP,MAAMY,MAAM;YAC5BC,aAAaZ,WAAW,IAAI,IAAIA,WAAW,KAAK,IAAI,KAAK,IAAIA,OAAOa,KAAK;YACzEA,OAAO,AAACJ,CAAAA,cAAcJ,KAAKQ,KAAK,AAAD,MAAO,IAAI,IAAIJ,gBAAgB,KAAK,IAAIA,cAAcD,EAAE;YACvF,GAAGH,IAAI;QACT;QACAF,IAAIW,IAAI,CAACJ;QACT,IAAIN,YAAYW,WAAW;YACzBZ,IAAIW,IAAI,IAAIhB,qBAAqBM,SAASM,cAAcT,QAAQ;QAClE,CAAC;QACD,OAAOE;IACT,GAAG,EAAE;AACP;AAyCO,MAAMP,uBAAuBG,CAAAA,QAASD,qBAAqBC,QAClE,uCAAuC"}
|
|
@@ -20,16 +20,16 @@ const treeAvatarSize = {
|
|
|
20
20
|
small: 24
|
|
21
21
|
};
|
|
22
22
|
const treeDataTypes = {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
23
|
+
ArrowLeft: _keyboardKeys.ArrowLeft,
|
|
24
|
+
ArrowRight: _keyboardKeys.ArrowRight,
|
|
25
|
+
Enter: _keyboardKeys.Enter,
|
|
26
|
+
Click: 'Click',
|
|
27
|
+
ExpandIconClick: 'ExpandIconClick',
|
|
28
|
+
End: _keyboardKeys.End,
|
|
29
|
+
Home: _keyboardKeys.Home,
|
|
30
|
+
ArrowUp: _keyboardKeys.ArrowUp,
|
|
31
|
+
ArrowDown: _keyboardKeys.ArrowDown,
|
|
32
|
+
TypeAhead: 'TypeAhead'
|
|
33
33
|
}; //# sourceMappingURL=tokens.js.map
|
|
34
34
|
|
|
35
35
|
//# sourceMappingURL=tokens.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../lib/utils/tokens.js"],"sourcesContent":["import { ArrowDown, ArrowLeft, ArrowRight, ArrowUp, End, Home } from '@fluentui/keyboard-keys';\nexport const treeItemLevelToken = '--fluent-TreeItem--level';\nexport const treeAvatarSize = {\n medium: 32,\n small: 24\n};\nexport const treeDataTypes = {\n
|
|
1
|
+
{"version":3,"sources":["../../lib/utils/tokens.js"],"sourcesContent":["import { ArrowDown, ArrowLeft, ArrowRight, ArrowUp, End, Home, Enter } from '@fluentui/keyboard-keys';\nexport const treeItemLevelToken = '--fluent-TreeItem--level';\nexport const treeAvatarSize = {\n medium: 32,\n small: 24\n};\nexport const treeDataTypes = {\n ArrowLeft,\n ArrowRight,\n Enter,\n Click: 'Click',\n ExpandIconClick: 'ExpandIconClick',\n End,\n Home,\n ArrowUp,\n ArrowDown,\n TypeAhead: 'TypeAhead'\n};\n//# sourceMappingURL=tokens.js.map"],"names":["treeItemLevelToken","treeAvatarSize","treeDataTypes","medium","small","ArrowLeft","ArrowRight","Enter","Click","ExpandIconClick","End","Home","ArrowUp","ArrowDown","TypeAhead"],"mappings":";;;;;;;;;;;IACaA,kBAAkB,MAAlBA;IACAC,cAAc,MAAdA;IAIAC,aAAa,MAAbA;;8BAN+D;AACrE,MAAMF,qBAAqB;AAC3B,MAAMC,iBAAiB;IAC5BE,QAAQ;IACRC,OAAO;AACT;AACO,MAAMF,gBAAgB;IAC3BG,WAAAA,uBAAS;IACTC,YAAAA,wBAAU;IACVC,OAAAA,mBAAK;IACLC,OAAO;IACPC,iBAAiB;IACjBC,KAAAA,iBAAG;IACHC,MAAAA,kBAAI;IACJC,SAAAA,qBAAO;IACPC,WAAAA,uBAAS;IACTC,WAAW;AACb,GACA,kCAAkC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fluentui/react-tree",
|
|
3
|
-
"version": "9.0.0-beta.
|
|
3
|
+
"version": "9.0.0-beta.13",
|
|
4
4
|
"description": "React components for building web experiences",
|
|
5
5
|
"main": "lib-commonjs/index.js",
|
|
6
6
|
"module": "lib/index.js",
|
|
@@ -23,30 +23,31 @@
|
|
|
23
23
|
"generate-api": "just-scripts generate-api",
|
|
24
24
|
"type-check": "tsc -b tsconfig.json",
|
|
25
25
|
"storybook": "start-storybook",
|
|
26
|
-
"start": "yarn storybook"
|
|
26
|
+
"start": "yarn storybook",
|
|
27
|
+
"test-ssr": "test-ssr ./stories/**/*.stories.tsx"
|
|
27
28
|
},
|
|
28
29
|
"devDependencies": {
|
|
29
30
|
"@fluentui/eslint-plugin": "*",
|
|
30
31
|
"@fluentui/react-conformance": "*",
|
|
31
|
-
"@fluentui/react-conformance-griffel": "9.0.0-beta.
|
|
32
|
+
"@fluentui/react-conformance-griffel": "9.0.0-beta.21",
|
|
32
33
|
"@fluentui/scripts-api-extractor": "*",
|
|
33
34
|
"@fluentui/scripts-tasks": "*",
|
|
34
35
|
"@fluentui/scripts-cypress": "*",
|
|
35
36
|
"react-window": "^1.8.6"
|
|
36
37
|
},
|
|
37
38
|
"dependencies": {
|
|
38
|
-
"@fluentui/keyboard-keys": "^9.0.
|
|
39
|
-
"@fluentui/react-aria": "^9.3.
|
|
40
|
-
"@fluentui/react-avatar": "^9.
|
|
41
|
-
"@fluentui/react-button": "^9.3.
|
|
42
|
-
"@fluentui/react-context-selector": "^9.1.
|
|
39
|
+
"@fluentui/keyboard-keys": "^9.0.3",
|
|
40
|
+
"@fluentui/react-aria": "^9.3.19",
|
|
41
|
+
"@fluentui/react-avatar": "^9.5.0",
|
|
42
|
+
"@fluentui/react-button": "^9.3.11",
|
|
43
|
+
"@fluentui/react-context-selector": "^9.1.19",
|
|
43
44
|
"@fluentui/react-icons": "^2.0.196",
|
|
44
|
-
"@fluentui/react-portal": "^9.2.
|
|
45
|
-
"@fluentui/react-shared-contexts": "^9.
|
|
46
|
-
"@fluentui/react-tabster": "^9.
|
|
47
|
-
"@fluentui/react-theme": "^9.1.
|
|
48
|
-
"@fluentui/react-utilities": "^9.8.
|
|
49
|
-
"@fluentui/react-jsx-runtime": "
|
|
45
|
+
"@fluentui/react-portal": "^9.2.7",
|
|
46
|
+
"@fluentui/react-shared-contexts": "^9.4.0",
|
|
47
|
+
"@fluentui/react-tabster": "^9.7.0",
|
|
48
|
+
"@fluentui/react-theme": "^9.1.8",
|
|
49
|
+
"@fluentui/react-utilities": "^9.8.1",
|
|
50
|
+
"@fluentui/react-jsx-runtime": "9.0.0-alpha.3",
|
|
50
51
|
"@griffel/react": "^1.5.2",
|
|
51
52
|
"@swc/helpers": "^0.4.14"
|
|
52
53
|
},
|
package/.swcrc
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "https://json.schemastore.org/swcrc",
|
|
3
|
-
"exclude": [
|
|
4
|
-
"/testing",
|
|
5
|
-
"/**/*.cy.ts",
|
|
6
|
-
"/**/*.cy.tsx",
|
|
7
|
-
"/**/*.spec.ts",
|
|
8
|
-
"/**/*.spec.tsx",
|
|
9
|
-
"/**/*.test.ts",
|
|
10
|
-
"/**/*.test.tsx"
|
|
11
|
-
],
|
|
12
|
-
"jsc": {
|
|
13
|
-
"parser": {
|
|
14
|
-
"syntax": "typescript",
|
|
15
|
-
"tsx": true,
|
|
16
|
-
"decorators": false,
|
|
17
|
-
"dynamicImport": false
|
|
18
|
-
},
|
|
19
|
-
"externalHelpers": true,
|
|
20
|
-
"transform": {
|
|
21
|
-
"react": {
|
|
22
|
-
"runtime": "classic",
|
|
23
|
-
"useSpread": true
|
|
24
|
-
}
|
|
25
|
-
},
|
|
26
|
-
"target": "es2019"
|
|
27
|
-
},
|
|
28
|
-
"minify": false,
|
|
29
|
-
"sourceMaps": true
|
|
30
|
-
}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { __styles, mergeClasses } from '@griffel/react';
|
|
2
|
-
import { tokens } from '@fluentui/react-theme';
|
|
3
|
-
export const treeClassNames = {
|
|
4
|
-
root: 'fui-Tree'
|
|
5
|
-
};
|
|
6
|
-
const useStyles = /*#__PURE__*/__styles({
|
|
7
|
-
root: {
|
|
8
|
-
mc9l5x: "f22iagw",
|
|
9
|
-
Beiy3e4: "f1vx9l62",
|
|
10
|
-
Belr9w4: "f1j0q4x9"
|
|
11
|
-
}
|
|
12
|
-
}, {
|
|
13
|
-
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);}"]
|
|
14
|
-
});
|
|
15
|
-
export const useTreeStyles_unstable = state => {
|
|
16
|
-
const styles = useStyles();
|
|
17
|
-
state.root.className = mergeClasses(treeClassNames.root, styles.root, state.root.className);
|
|
18
|
-
return state;
|
|
19
|
-
};
|
|
20
|
-
//# sourceMappingURL=useTreeStyles.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["__styles","mergeClasses","tokens","treeClassNames","root","useStyles","mc9l5x","Beiy3e4","Belr9w4","d","useTreeStyles_unstable","state","styles","className"],"sources":["../../../src/components/Tree/useTreeStyles.ts"],"sourcesContent":["import { makeStyles, mergeClasses } from '@griffel/react';\nimport type { TreeSlots, TreeState } from './Tree.types';\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport { tokens } from '@fluentui/react-theme';\n\nexport const treeClassNames: SlotClassNames<TreeSlots> = {\n root: 'fui-Tree',\n};\n\nconst useStyles = makeStyles({\n root: {\n display: 'flex',\n flexDirection: 'column',\n rowGap: tokens.spacingVerticalXXS,\n },\n});\n\nexport const useTreeStyles_unstable = (state: TreeState): TreeState => {\n const styles = useStyles();\n state.root.className = mergeClasses(treeClassNames.root, styles.root, state.root.className);\n\n return state;\n};\n"],"mappings":"AAAA,SAAAA,QAAA,EAAqBC,YAAY,QAAQ;AAGzC,SAASC,MAAM,QAAQ;AAEvB,OAAO,MAAMC,cAAA,GAA4C;EACvDC,IAAA,EAAM;AACR;AAEA,MAAMC,SAAA,gBAAYL,QAAA;EAAAI,IAAA;IAAAE,MAAA;IAAAC,OAAA;IAAAC,OAAA;EAAA;AAAA;EAAAC,CAAA;AAAA,EAMlB;AAEA,OAAO,MAAMC,sBAAA,GAA0BC,KAAA,IAAgC;EACrE,MAAMC,MAAA,GAASP,SAAA;EACfM,KAAA,CAAMP,IAAI,CAACS,SAAS,GAAGZ,YAAA,CAAaE,cAAA,CAAeC,IAAI,EAAEQ,MAAA,CAAOR,IAAI,EAAEO,KAAA,CAAMP,IAAI,CAACS,SAAS;EAE1F,OAAOF,KAAA;AACT"}
|
|
@@ -1,203 +0,0 @@
|
|
|
1
|
-
import { __styles, mergeClasses, shorthands } from '@griffel/react';
|
|
2
|
-
import { tokens } from '@fluentui/react-theme';
|
|
3
|
-
import { createFocusOutlineStyle } from '@fluentui/react-tabster';
|
|
4
|
-
import { useTreeContext_unstable } from '../../contexts/index';
|
|
5
|
-
import { treeItemLevelToken } from '../../utils/tokens';
|
|
6
|
-
export const treeItemClassNames = {
|
|
7
|
-
root: 'fui-TreeItem',
|
|
8
|
-
content: 'fui-TreeItem__content',
|
|
9
|
-
subtree: 'fui-TreeItem__subtree',
|
|
10
|
-
expandIcon: 'fui-TreeItem__expandIcon',
|
|
11
|
-
actions: 'fui-TreeItem__actions'
|
|
12
|
-
};
|
|
13
|
-
const useRootStyles = /*#__PURE__*/__styles({
|
|
14
|
-
level1: {
|
|
15
|
-
iytv0q: "f10bgyvd"
|
|
16
|
-
},
|
|
17
|
-
level2: {
|
|
18
|
-
iytv0q: "f1h0rod3"
|
|
19
|
-
},
|
|
20
|
-
level3: {
|
|
21
|
-
iytv0q: "fgoqafk"
|
|
22
|
-
},
|
|
23
|
-
level4: {
|
|
24
|
-
iytv0q: "f75dvuh"
|
|
25
|
-
},
|
|
26
|
-
level5: {
|
|
27
|
-
iytv0q: "fqk7yw6"
|
|
28
|
-
},
|
|
29
|
-
level6: {
|
|
30
|
-
iytv0q: "f1r3z17b"
|
|
31
|
-
},
|
|
32
|
-
level7: {
|
|
33
|
-
iytv0q: "f1hrpd1h"
|
|
34
|
-
},
|
|
35
|
-
level8: {
|
|
36
|
-
iytv0q: "f1iy65d0"
|
|
37
|
-
},
|
|
38
|
-
level9: {
|
|
39
|
-
iytv0q: "ftg42e5"
|
|
40
|
-
},
|
|
41
|
-
level10: {
|
|
42
|
-
iytv0q: "fyat3t"
|
|
43
|
-
}
|
|
44
|
-
}, {
|
|
45
|
-
d: [".f10bgyvd{--fluent-TreeItem--level:1;}", ".f1h0rod3{--fluent-TreeItem--level:2;}", ".fgoqafk{--fluent-TreeItem--level:3;}", ".f75dvuh{--fluent-TreeItem--level:4;}", ".fqk7yw6{--fluent-TreeItem--level:5;}", ".f1r3z17b{--fluent-TreeItem--level:6;}", ".f1hrpd1h{--fluent-TreeItem--level:7;}", ".f1iy65d0{--fluent-TreeItem--level:8;}", ".ftg42e5{--fluent-TreeItem--level:9;}", ".fyat3t{--fluent-TreeItem--level:10;}"]
|
|
46
|
-
});
|
|
47
|
-
/**
|
|
48
|
-
* Styles for the content slot
|
|
49
|
-
*/
|
|
50
|
-
const useContentStyles = /*#__PURE__*/__styles({
|
|
51
|
-
base: {
|
|
52
|
-
qhf8xq: "f10pi13n",
|
|
53
|
-
Bceei9c: "f1k6fduh",
|
|
54
|
-
mc9l5x: "f22iagw",
|
|
55
|
-
De3pzq: "fhovq9v",
|
|
56
|
-
sj55zd: "fkfq4zb",
|
|
57
|
-
z189sj: ["flk2ux3", "fkl3uby"],
|
|
58
|
-
uwmqm3: ["fo100m9", "f6yw3pu"],
|
|
59
|
-
Bbmb7ep: ["f1aa9q02", "f16jpd5f"],
|
|
60
|
-
Beyfa6y: ["f16jpd5f", "f1aa9q02"],
|
|
61
|
-
B7oj6ja: ["f1jar5jt", "fyu767a"],
|
|
62
|
-
Btl43ni: ["fyu767a", "f1jar5jt"],
|
|
63
|
-
lj723h: "flvvhsy",
|
|
64
|
-
ecr2s2: "f1wfn5kd",
|
|
65
|
-
Ixpawx: "f1x3s29",
|
|
66
|
-
Bi91k9c: "fnwyq0v",
|
|
67
|
-
Jwef8y: "f1t94bn6",
|
|
68
|
-
B0t702g: "f1kvtbpn"
|
|
69
|
-
},
|
|
70
|
-
focusIndicator: {
|
|
71
|
-
Brovlpu: "ftqa4ok",
|
|
72
|
-
B486eqv: "f2hkw1w",
|
|
73
|
-
B8q5s1w: "f8hki3x",
|
|
74
|
-
Bci5o5g: ["f1d2448m", "ffh67wi"],
|
|
75
|
-
n8qw10: "f1bjia2o",
|
|
76
|
-
Bdrgwmp: ["ffh67wi", "f1d2448m"],
|
|
77
|
-
Bm4h7ae: "f15bsgw9",
|
|
78
|
-
B7ys5i9: "f14e48fq",
|
|
79
|
-
Busjfv9: "f18yb2kv",
|
|
80
|
-
Bhk32uz: "fd6o370",
|
|
81
|
-
Bf4ptjt: "fh1cnn4",
|
|
82
|
-
kclons: ["fy7oxxb", "f184ne2d"],
|
|
83
|
-
Bhdgwq3: "fpukqih",
|
|
84
|
-
Blkhhs4: ["f184ne2d", "fy7oxxb"],
|
|
85
|
-
Bqtpl0w: "frrh606",
|
|
86
|
-
clg4pj: ["f1v5zibi", "fo2hd23"],
|
|
87
|
-
hgwjuy: "ful5kiu",
|
|
88
|
-
Bonggc9: ["fo2hd23", "f1v5zibi"],
|
|
89
|
-
B1tsrr9: ["f1jqcqds", "ftffrms"],
|
|
90
|
-
Dah5zi: ["ftffrms", "f1jqcqds"],
|
|
91
|
-
Bkh64rk: ["f2e7qr6", "fsr1zz6"],
|
|
92
|
-
qqdqy8: ["fsr1zz6", "f2e7qr6"],
|
|
93
|
-
B6dhp37: "f1dvezut",
|
|
94
|
-
i03rao: ["fd0oaoj", "f1cwg4i8"],
|
|
95
|
-
Boxcth7: "fjvm52t",
|
|
96
|
-
Bsom6fd: ["f1cwg4i8", "fd0oaoj"],
|
|
97
|
-
J0r882: "fdiulkx",
|
|
98
|
-
Bjwuhne: "f1yalx80",
|
|
99
|
-
Ghsupd: ["fq22d5a", "f1jw7pan"],
|
|
100
|
-
Bule8hv: ["f1jw7pan", "fq22d5a"]
|
|
101
|
-
},
|
|
102
|
-
subtle: {},
|
|
103
|
-
"subtle-alpha": {
|
|
104
|
-
Jwef8y: "f146ro5n",
|
|
105
|
-
ecr2s2: "fkam630"
|
|
106
|
-
},
|
|
107
|
-
transparent: {
|
|
108
|
-
De3pzq: "f1c21dwh",
|
|
109
|
-
Jwef8y: "fjxutwb",
|
|
110
|
-
ecr2s2: "fophhak"
|
|
111
|
-
},
|
|
112
|
-
leaf: {
|
|
113
|
-
uwmqm3: ["f1k1erfc", "faevyjx"]
|
|
114
|
-
}
|
|
115
|
-
}, {
|
|
116
|
-
d: [".f10pi13n{position:relative;}", ".f1k6fduh{cursor:pointer;}", ".f22iagw{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}", ".fhovq9v{background-color:var(--colorSubtleBackground);}", ".fkfq4zb{color:var(--colorNeutralForeground2);}", ".flk2ux3{padding-right:var(--spacingHorizontalNone);}", ".fkl3uby{padding-left:var(--spacingHorizontalNone);}", ".fo100m9{padding-left:calc((var(--fluent-TreeItem--level, 1) - 1) * var(--spacingHorizontalXXL));}", ".f6yw3pu{padding-right:calc((var(--fluent-TreeItem--level, 1) - 1) * var(--spacingHorizontalXXL));}", ".f1aa9q02{border-bottom-right-radius:var(--borderRadiusMedium);}", ".f16jpd5f{border-bottom-left-radius:var(--borderRadiusMedium);}", ".f1jar5jt{border-top-right-radius:var(--borderRadiusMedium);}", ".fyu767a{border-top-left-radius:var(--borderRadiusMedium);}", ".f8hki3x[data-fui-focus-visible]{border-top-color:transparent;}", ".f1d2448m[data-fui-focus-visible]{border-right-color:transparent;}", ".ffh67wi[data-fui-focus-visible]{border-left-color:transparent;}", ".f1bjia2o[data-fui-focus-visible]{border-bottom-color:transparent;}", ".f15bsgw9[data-fui-focus-visible]::after{content:\"\";}", ".f14e48fq[data-fui-focus-visible]::after{position:absolute;}", ".f18yb2kv[data-fui-focus-visible]::after{pointer-events:none;}", ".fd6o370[data-fui-focus-visible]::after{z-index:1;}", ".fh1cnn4[data-fui-focus-visible]::after{border-top-style:solid;}", ".fy7oxxb[data-fui-focus-visible]::after{border-right-style:solid;}", ".f184ne2d[data-fui-focus-visible]::after{border-left-style:solid;}", ".fpukqih[data-fui-focus-visible]::after{border-bottom-style:solid;}", ".frrh606[data-fui-focus-visible]::after{border-top-width:2px;}", ".f1v5zibi[data-fui-focus-visible]::after{border-right-width:2px;}", ".fo2hd23[data-fui-focus-visible]::after{border-left-width:2px;}", ".ful5kiu[data-fui-focus-visible]::after{border-bottom-width:2px;}", ".f1jqcqds[data-fui-focus-visible]::after{border-bottom-right-radius:var(--borderRadiusMedium);}", ".ftffrms[data-fui-focus-visible]::after{border-bottom-left-radius:var(--borderRadiusMedium);}", ".f2e7qr6[data-fui-focus-visible]::after{border-top-right-radius:var(--borderRadiusMedium);}", ".fsr1zz6[data-fui-focus-visible]::after{border-top-left-radius:var(--borderRadiusMedium);}", ".f1dvezut[data-fui-focus-visible]::after{border-top-color:var(--colorStrokeFocus2);}", ".fd0oaoj[data-fui-focus-visible]::after{border-right-color:var(--colorStrokeFocus2);}", ".f1cwg4i8[data-fui-focus-visible]::after{border-left-color:var(--colorStrokeFocus2);}", ".fjvm52t[data-fui-focus-visible]::after{border-bottom-color:var(--colorStrokeFocus2);}", ".fdiulkx[data-fui-focus-visible]::after{top:-2px;}", ".f1yalx80[data-fui-focus-visible]::after{bottom:-2px;}", ".fq22d5a[data-fui-focus-visible]::after{left:-2px;}", ".f1jw7pan[data-fui-focus-visible]::after{right:-2px;}", ".f1c21dwh{background-color:var(--colorTransparentBackground);}", ".f1k1erfc{padding-left:calc(var(--fluent-TreeItem--level, 1) * var(--spacingHorizontalXXL));}", ".faevyjx{padding-right:calc(var(--fluent-TreeItem--level, 1) * var(--spacingHorizontalXXL));}"],
|
|
117
|
-
a: [".flvvhsy:active{color:var(--colorNeutralForeground2Pressed);}", ".f1wfn5kd:active{background-color:var(--colorSubtleBackgroundPressed);}", ".f1x3s29:active .fui-TreeItem__expandIcon{color:var(--colorNeutralForeground3Pressed);}", ".fkam630:active{background-color:var(--colorSubtleBackgroundLightAlphaPressed);}", ".fophhak:active{background-color:var(--colorTransparentBackgroundPressed);}"],
|
|
118
|
-
h: [".fnwyq0v:hover{color:var(--colorNeutralForeground2Hover);}", ".f1t94bn6:hover{background-color:var(--colorSubtleBackgroundHover);}", ".f1kvtbpn:hover .fui-TreeItem__expandIcon{color:var(--colorNeutralForeground3Hover);}", ".f146ro5n:hover{background-color:var(--colorSubtleBackgroundLightAlphaHover);}", ".fjxutwb:hover{background-color:var(--colorTransparentBackgroundHover);}"],
|
|
119
|
-
f: [".ftqa4ok:focus{outline-style:none;}"],
|
|
120
|
-
i: [".f2hkw1w:focus-visible{outline-style:none;}"]
|
|
121
|
-
});
|
|
122
|
-
/**
|
|
123
|
-
* Styles for the expand icon slot
|
|
124
|
-
*/
|
|
125
|
-
const useExpandIconStyles = /*#__PURE__*/__styles({
|
|
126
|
-
base: {
|
|
127
|
-
mc9l5x: "f22iagw",
|
|
128
|
-
Bt984gj: "f122n59",
|
|
129
|
-
Brf1p80: "f4d9j23",
|
|
130
|
-
Bf4jedk: "f17fgpbq",
|
|
131
|
-
B7ck84d: "f1ewtqcl",
|
|
132
|
-
sj55zd: "f11d4kpn",
|
|
133
|
-
z8tnut: "f1ywm7hm",
|
|
134
|
-
z189sj: ["fhxju0i", "f1cnd47f"],
|
|
135
|
-
Byoj8tv: "f14wxoun",
|
|
136
|
-
uwmqm3: ["f1cnd47f", "fhxju0i"]
|
|
137
|
-
}
|
|
138
|
-
}, {
|
|
139
|
-
d: [".f22iagw{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}", ".f122n59{-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}", ".f4d9j23{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}", ".f17fgpbq{min-width:24px;}", ".f1ewtqcl{box-sizing:border-box;}", ".f11d4kpn{color:var(--colorNeutralForeground3);}", ".f1ywm7hm{padding-top:var(--spacingVerticalXS);}", ".fhxju0i{padding-right:0;}", ".f1cnd47f{padding-left:0;}", ".f14wxoun{padding-bottom:var(--spacingVerticalXS);}"]
|
|
140
|
-
});
|
|
141
|
-
/**
|
|
142
|
-
* Styles for the action icon slot
|
|
143
|
-
*/
|
|
144
|
-
const useActionsStyles = /*#__PURE__*/__styles({
|
|
145
|
-
base: {
|
|
146
|
-
mc9l5x: "fjseox",
|
|
147
|
-
Frg6f3: ["fcgxt0o", "f1ujusj6"],
|
|
148
|
-
z8tnut: "f1g0x7ka",
|
|
149
|
-
z189sj: ["f1vdfbxk", "f1f5gg8d"],
|
|
150
|
-
Byoj8tv: "f1qch9an",
|
|
151
|
-
uwmqm3: ["f1f5gg8d", "f1vdfbxk"]
|
|
152
|
-
},
|
|
153
|
-
open: {
|
|
154
|
-
mc9l5x: "f22iagw",
|
|
155
|
-
qhf8xq: "f10pi13n"
|
|
156
|
-
}
|
|
157
|
-
}, {
|
|
158
|
-
d: [".fjseox{display:none;}", ".fcgxt0o{margin-left:auto;}", ".f1ujusj6{margin-right:auto;}", ".f1g0x7ka{padding-top:0;}", ".f1vdfbxk{padding-right:var(--spacingHorizontalS);}", ".f1f5gg8d{padding-left:var(--spacingHorizontalS);}", ".f1qch9an{padding-bottom:0;}", ".f22iagw{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}", ".f10pi13n{position:relative;}"]
|
|
159
|
-
});
|
|
160
|
-
export const expandIconInlineStyles = {
|
|
161
|
-
90: {
|
|
162
|
-
transform: `rotate(90deg)`
|
|
163
|
-
},
|
|
164
|
-
0: {
|
|
165
|
-
transform: `rotate(0deg)`
|
|
166
|
-
},
|
|
167
|
-
180: {
|
|
168
|
-
transform: `rotate(180deg)`
|
|
169
|
-
}
|
|
170
|
-
};
|
|
171
|
-
/**
|
|
172
|
-
* Apply styling to the TreeItem slots based on the state
|
|
173
|
-
*/
|
|
174
|
-
export const useTreeItemStyles_unstable = state => {
|
|
175
|
-
const rootStyles = useRootStyles();
|
|
176
|
-
const contentStyles = useContentStyles();
|
|
177
|
-
const expandIconStyles = useExpandIconStyles();
|
|
178
|
-
const actionsStyles = useActionsStyles();
|
|
179
|
-
const appearance = useTreeContext_unstable(ctx => ctx.appearance);
|
|
180
|
-
const {
|
|
181
|
-
actions,
|
|
182
|
-
subtree,
|
|
183
|
-
expandIcon,
|
|
184
|
-
isActionsVisible: showActions,
|
|
185
|
-
level
|
|
186
|
-
} = state;
|
|
187
|
-
state.root.className = mergeClasses(treeItemClassNames.root, isStaticallyDefinedLevel(level) && rootStyles[`level${level}`], state.root.className);
|
|
188
|
-
state.content.className = mergeClasses(treeItemClassNames.content, contentStyles.base, contentStyles[appearance], contentStyles.focusIndicator, state.isLeaf && contentStyles.leaf, state.content.className);
|
|
189
|
-
if (expandIcon) {
|
|
190
|
-
expandIcon.className = mergeClasses(treeItemClassNames.expandIcon, expandIconStyles.base, expandIcon.className);
|
|
191
|
-
}
|
|
192
|
-
if (actions) {
|
|
193
|
-
actions.className = mergeClasses(treeItemClassNames.actions, actionsStyles.base, showActions && actionsStyles.open, actions.className);
|
|
194
|
-
}
|
|
195
|
-
if (subtree) {
|
|
196
|
-
subtree.className = mergeClasses(treeItemClassNames.subtree, subtree.className);
|
|
197
|
-
}
|
|
198
|
-
return state;
|
|
199
|
-
};
|
|
200
|
-
function isStaticallyDefinedLevel(level) {
|
|
201
|
-
return level >= 1 && level <= 10;
|
|
202
|
-
}
|
|
203
|
-
//# sourceMappingURL=useTreeItemStyles.js.map
|