react-magma-dom 4.10.0-next.6 → 4.10.0-next.8
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/dist/components/Input/testUtils.d.ts +17 -0
- package/dist/components/TreeView/useTreeView.d.ts +1 -0
- package/dist/components/TreeView/utils.d.ts +3 -1
- package/dist/esm/index.js +82 -26
- package/dist/esm/index.js.map +1 -1
- package/dist/properties.json +3 -3
- package/dist/react-magma-dom.cjs.development.js +82 -26
- package/dist/react-magma-dom.cjs.development.js.map +1 -1
- package/dist/react-magma-dom.cjs.production.min.js +1 -1
- package/dist/react-magma-dom.cjs.production.min.js.map +1 -1
- package/package.json +1 -1
package/dist/properties.json
CHANGED
|
@@ -16958,12 +16958,12 @@
|
|
|
16958
16958
|
"typeArguments": [
|
|
16959
16959
|
{
|
|
16960
16960
|
"type": "reference",
|
|
16961
|
-
"id":
|
|
16961
|
+
"id": 35192,
|
|
16962
16962
|
"name": "ToggleButtonTextProps"
|
|
16963
16963
|
},
|
|
16964
16964
|
{
|
|
16965
16965
|
"type": "reference",
|
|
16966
|
-
"id":
|
|
16966
|
+
"id": 35476,
|
|
16967
16967
|
"name": "ToggleButtonIconProps"
|
|
16968
16968
|
}
|
|
16969
16969
|
],
|
|
@@ -18382,7 +18382,7 @@
|
|
|
18382
18382
|
"type": "query",
|
|
18383
18383
|
"queryType": {
|
|
18384
18384
|
"type": "reference",
|
|
18385
|
-
"id":
|
|
18385
|
+
"id": 33950,
|
|
18386
18386
|
"name": "useTreeView"
|
|
18387
18387
|
}
|
|
18388
18388
|
}
|
|
@@ -16077,8 +16077,9 @@ var getInitialItems = function getInitialItems(_ref0) {
|
|
|
16077
16077
|
checkChildren = _ref0.checkChildren,
|
|
16078
16078
|
selectable = _ref0.selectable,
|
|
16079
16079
|
isTreeViewDisabled = _ref0.isDisabled,
|
|
16080
|
-
isTopLevelSelectable = _ref0.isTopLevelSelectable
|
|
16081
|
-
|
|
16080
|
+
isTopLevelSelectable = _ref0.isTopLevelSelectable,
|
|
16081
|
+
items = _ref0.items;
|
|
16082
|
+
var treeViewData = items || _getTreeViewData({
|
|
16082
16083
|
children: children,
|
|
16083
16084
|
checkChildren: checkChildren,
|
|
16084
16085
|
selectable: selectable,
|
|
@@ -16352,17 +16353,17 @@ function useTreeItem(props, forwardedRef) {
|
|
|
16352
16353
|
}
|
|
16353
16354
|
return (_treeViewItemData$che = treeViewItemData == null ? void 0 : treeViewItemData.checkedStatus) != null ? _treeViewItemData$che : exports.IndeterminateCheckboxStatus.unchecked;
|
|
16354
16355
|
}, [selectable, topLevel, isTopLevelSelectable, treeViewItemData == null ? void 0 : treeViewItemData.checkedStatus]);
|
|
16356
|
+
var treeItemChildren = React.Children.toArray(children).filter(function (child) {
|
|
16357
|
+
return child.type === TreeItem;
|
|
16358
|
+
});
|
|
16355
16359
|
var hasOwnTreeItems = React.useMemo(function () {
|
|
16356
|
-
return treeViewItemData == null ? void 0 : treeViewItemData.hasOwnTreeItems;
|
|
16357
|
-
}, [treeViewItemData]);
|
|
16360
|
+
return (treeViewItemData == null ? void 0 : treeViewItemData.hasOwnTreeItems) || treeItemChildren.length > 0;
|
|
16361
|
+
}, [treeViewItemData, treeItemChildren.length]);
|
|
16358
16362
|
var _React$useState = React.useState(function () {
|
|
16359
16363
|
return expandedSet.has(itemId);
|
|
16360
16364
|
}),
|
|
16361
16365
|
expanded = _React$useState[0],
|
|
16362
16366
|
setExpanded = _React$useState[1];
|
|
16363
|
-
var treeItemChildren = React.Children.toArray(children).filter(function (child) {
|
|
16364
|
-
return child.type === TreeItem;
|
|
16365
|
-
});
|
|
16366
16367
|
var ownRef = React.useRef(null);
|
|
16367
16368
|
var ref = useForkedRef(forwardedRef, ownRef);
|
|
16368
16369
|
var forceUpdate = useForceUpdate();
|
|
@@ -17134,7 +17135,8 @@ function useTreeView(props) {
|
|
|
17134
17135
|
checkChildren: checkChildren,
|
|
17135
17136
|
selectable: selectable,
|
|
17136
17137
|
isDisabled: isDisabled,
|
|
17137
|
-
isTopLevelSelectable: isTopLevelSelectable
|
|
17138
|
+
isTopLevelSelectable: isTopLevelSelectable,
|
|
17139
|
+
items: items
|
|
17138
17140
|
});
|
|
17139
17141
|
setItems(function (prevItems) {
|
|
17140
17142
|
return prevItems.map(function (prevItem) {
|
|
@@ -17302,6 +17304,48 @@ function useTreeView(props) {
|
|
|
17302
17304
|
var syntheticEvent = {};
|
|
17303
17305
|
handleExpandedChange(syntheticEvent, '');
|
|
17304
17306
|
}, [handleExpandedChange]);
|
|
17307
|
+
var addItem = React.useCallback(function (newItem) {
|
|
17308
|
+
var newItems = items.map(function (item) {
|
|
17309
|
+
if (item.itemId === newItem.parentId) {
|
|
17310
|
+
item.hasOwnTreeItems = true;
|
|
17311
|
+
if (checkParents) {
|
|
17312
|
+
if (item.checkedStatus === exports.IndeterminateCheckboxStatus.checked && newItem.checkedStatus !== exports.IndeterminateCheckboxStatus.checked) {
|
|
17313
|
+
item.checkedStatus = exports.IndeterminateCheckboxStatus.indeterminate;
|
|
17314
|
+
} else if (item.checkedStatus === exports.IndeterminateCheckboxStatus.indeterminate && newItem.checkedStatus === exports.IndeterminateCheckboxStatus.checked) {
|
|
17315
|
+
var allChildrenChecked = [].concat(items, [newItem]).filter(function (child) {
|
|
17316
|
+
return child.parentId === item.itemId;
|
|
17317
|
+
}).every(function (child) {
|
|
17318
|
+
return child.checkedStatus === exports.IndeterminateCheckboxStatus.checked;
|
|
17319
|
+
});
|
|
17320
|
+
if (allChildrenChecked) {
|
|
17321
|
+
item.checkedStatus = exports.IndeterminateCheckboxStatus.checked;
|
|
17322
|
+
}
|
|
17323
|
+
}
|
|
17324
|
+
}
|
|
17325
|
+
}
|
|
17326
|
+
return item;
|
|
17327
|
+
});
|
|
17328
|
+
if (newItem.checkedStatus === exports.IndeterminateCheckboxStatus.checked && selectable === exports.TreeViewSelectable.single) {
|
|
17329
|
+
newItems.forEach(function (item) {
|
|
17330
|
+
item.checkedStatus = exports.IndeterminateCheckboxStatus.unchecked;
|
|
17331
|
+
});
|
|
17332
|
+
}
|
|
17333
|
+
var updatedItems = [].concat(newItems, [newItem]);
|
|
17334
|
+
if (newItem.parentId) {
|
|
17335
|
+
setItems(getInitialItems({
|
|
17336
|
+
children: children,
|
|
17337
|
+
preselectedItems: selectedItems,
|
|
17338
|
+
checkParents: checkParents,
|
|
17339
|
+
checkChildren: false,
|
|
17340
|
+
selectable: selectable,
|
|
17341
|
+
isDisabled: isDisabled,
|
|
17342
|
+
isTopLevelSelectable: isTopLevelSelectable,
|
|
17343
|
+
items: updatedItems
|
|
17344
|
+
}));
|
|
17345
|
+
} else {
|
|
17346
|
+
setItems(updatedItems);
|
|
17347
|
+
}
|
|
17348
|
+
}, [checkParents, children, isDisabled, isTopLevelSelectable, items, selectable, selectedItems]);
|
|
17305
17349
|
React.useEffect(function () {
|
|
17306
17350
|
if (apiRef) {
|
|
17307
17351
|
apiRef.current = {
|
|
@@ -17311,10 +17355,11 @@ function useTreeView(props) {
|
|
|
17311
17355
|
showMore: showMore,
|
|
17312
17356
|
showLess: showLess,
|
|
17313
17357
|
expandAll: expandAll,
|
|
17314
|
-
collapseAll: collapseAll
|
|
17358
|
+
collapseAll: collapseAll,
|
|
17359
|
+
addItem: addItem
|
|
17315
17360
|
};
|
|
17316
17361
|
}
|
|
17317
|
-
}, [selectItem, selectAll, clearAll, showMore, showLess, expandAll, collapseAll, apiRef]);
|
|
17362
|
+
}, [selectItem, selectAll, clearAll, showMore, showLess, expandAll, collapseAll, addItem, apiRef]);
|
|
17318
17363
|
React.useEffect(function () {
|
|
17319
17364
|
if (itemsNeedUpdate) {
|
|
17320
17365
|
setItems(getInitialItems({
|
|
@@ -17365,7 +17410,7 @@ var StyledTreeView = /*#__PURE__*/_styled("ul", {
|
|
|
17365
17410
|
label: "StyledTreeView"
|
|
17366
17411
|
})("padding:0;margin:0;color:", function (props) {
|
|
17367
17412
|
return props.isInverse ? props.theme.colors.neutral100 : props.theme.colors.neutral;
|
|
17368
|
-
}, ";ul{padding:0;margin:0;li{margin:0;}}" + ( "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRyZWVWaWV3LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTaUMiLCJmaWxlIjoiVHJlZVZpZXcudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnO1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IFRyZWVJdGVtIH0gZnJvbSAnLi9UcmVlSXRlbSc7XHJcbmltcG9ydCB7IFRyZWVWaWV3Q29udGV4dCB9IGZyb20gJy4vVHJlZVZpZXdDb250ZXh0JztcclxuaW1wb3J0IHsgVHJlZVZpZXdTZWxlY3RhYmxlIH0gZnJvbSAnLi90eXBlcyc7XHJcbmltcG9ydCB7IHVzZVRyZWVJdGVtIH0gZnJvbSAnLi91c2VUcmVlSXRlbSc7XHJcbmltcG9ydCB7IHVzZVRyZWVWaWV3IH0gZnJvbSAnLi91c2VUcmVlVmlldyc7XHJcbmltcG9ydCB7IEludmVyc2VDb250ZXh0LCB1c2VJc0ludmVyc2UgfSBmcm9tICcuLi8uLi9pbnZlcnNlJztcclxuaW1wb3J0IHsgVGhlbWVDb250ZXh0IH0gZnJvbSAnLi4vLi4vdGhlbWUvVGhlbWVDb250ZXh0JztcclxuY29uc3QgU3R5bGVkVHJlZVZpZXcgPSBzdHlsZWQudWwgYFxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAke3Byb3BzID0+
|
|
17413
|
+
}, ";ul{padding:0;margin:0;li{margin:0;}}" + ( "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRyZWVWaWV3LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTaUMiLCJmaWxlIjoiVHJlZVZpZXcudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnO1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IFRyZWVJdGVtIH0gZnJvbSAnLi9UcmVlSXRlbSc7XHJcbmltcG9ydCB7IFRyZWVWaWV3Q29udGV4dCB9IGZyb20gJy4vVHJlZVZpZXdDb250ZXh0JztcclxuaW1wb3J0IHsgVHJlZVZpZXdTZWxlY3RhYmxlIH0gZnJvbSAnLi90eXBlcyc7XHJcbmltcG9ydCB7IHVzZVRyZWVJdGVtIH0gZnJvbSAnLi91c2VUcmVlSXRlbSc7XHJcbmltcG9ydCB7IHVzZVRyZWVWaWV3IH0gZnJvbSAnLi91c2VUcmVlVmlldyc7XHJcbmltcG9ydCB7IEludmVyc2VDb250ZXh0LCB1c2VJc0ludmVyc2UgfSBmcm9tICcuLi8uLi9pbnZlcnNlJztcclxuaW1wb3J0IHsgVGhlbWVDb250ZXh0IH0gZnJvbSAnLi4vLi4vdGhlbWUvVGhlbWVDb250ZXh0JztcclxuY29uc3QgU3R5bGVkVHJlZVZpZXcgPSBzdHlsZWQudWwgYFxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLmlzSW52ZXJzZVxyXG4gICAgPyBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDEwMFxyXG4gICAgOiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbH07XG4gIHVsIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBsaSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG5gO1xyXG5leHBvcnQgY29uc3QgVHJlZVZpZXcgPSBSZWFjdC5mb3J3YXJkUmVmKChwcm9wcywgcmVmKSA9PiB7XHJcbiAgICBjb25zdCB7IGFyaWFMYWJlbCwgYXJpYUxhYmVsbGVkQnksIGNoaWxkcmVuLCBpc0ludmVyc2U6IGlzSW52ZXJzZVByb3AsIG9uRXhwYW5kZWRDaGFuZ2UsIG9uU2VsZWN0ZWRJdGVtQ2hhbmdlLCBzZWxlY3RhYmxlLCB0ZXN0SWQsIGFwaVJlZiwgLi4ucmVzdCB9ID0gcHJvcHM7XHJcbiAgICBjb25zdCB0aGVtZSA9IFJlYWN0LnVzZUNvbnRleHQoVGhlbWVDb250ZXh0KTtcclxuICAgIGNvbnN0IGlzSW52ZXJzZSA9IHVzZUlzSW52ZXJzZShpc0ludmVyc2VQcm9wKTtcclxuICAgIGNvbnN0IHsgY29udGV4dFZhbHVlIH0gPSB1c2VUcmVlVmlldyhwcm9wcyk7XHJcbiAgICB1c2VUcmVlSXRlbSh7IGxhYmVsOiBhcmlhTGFiZWwsIGl0ZW1JZDogJycgfSwgcmVmKTtcclxuICAgIGxldCB0cmVlSXRlbUluZGV4ID0gMDtcclxuICAgIGNvbnN0IGludmVyc2VDb250ZXh0VmFsdWUgPSBSZWFjdC51c2VNZW1vKCgpID0+ICh7IGlzSW52ZXJzZSB9KSwgW2lzSW52ZXJzZV0pO1xyXG4gICAgY29uc3QgcHJvY2Vzc2VkQ2hpbGRyZW4gPSBSZWFjdC5DaGlsZHJlbi5tYXAoY2hpbGRyZW4sIGNoaWxkID0+IHtcclxuICAgICAgICBpZiAoIVJlYWN0LmlzVmFsaWRFbGVtZW50KGNoaWxkKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGNoaWxkLnR5cGUgPT09IFRyZWVJdGVtKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHRyZWVJdGVtQ2hpbGQgPSBjaGlsZDtcclxuICAgICAgICAgICAgY29uc3QgdHJlZUl0ZW1Qcm9wcyA9IHtcclxuICAgICAgICAgICAgICAgIGluZGV4OiB0cmVlSXRlbUluZGV4LFxyXG4gICAgICAgICAgICAgICAgcGFyZW50RGVwdGg6IDAsXHJcbiAgICAgICAgICAgICAgICBpdGVtRGVwdGg6IDAsXHJcbiAgICAgICAgICAgICAgICB0b3BMZXZlbDogdHJ1ZSxcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgY29uc3QgcHJvY2Vzc2VkSXRlbSA9IFJlYWN0LmNsb25lRWxlbWVudCh0cmVlSXRlbUNoaWxkLCB7XHJcbiAgICAgICAgICAgICAgICAuLi50cmVlSXRlbVByb3BzLFxyXG4gICAgICAgICAgICAgICAga2V5OiBgdHJlZS1pdGVtLSR7dHJlZUl0ZW1JbmRleH1gLFxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgdHJlZUl0ZW1JbmRleCsrO1xyXG4gICAgICAgICAgICByZXR1cm4gcHJvY2Vzc2VkSXRlbTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiAoUmVhY3QuY3JlYXRlRWxlbWVudChJbnZlcnNlQ29udGV4dC5Qcm92aWRlciwgeyB2YWx1ZTogaW52ZXJzZUNvbnRleHRWYWx1ZSB9LFxyXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVHJlZVZpZXdDb250ZXh0LlByb3ZpZGVyLCB7IHZhbHVlOiBjb250ZXh0VmFsdWUgfSxcclxuICAgICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChTdHlsZWRUcmVlVmlldywgT2JqZWN0LmFzc2lnbih7fSwgcmVzdCwgeyBcImFyaWEtbGFiZWxcIjogYXJpYUxhYmVsLCBcImFyaWEtbGFiZWxsZWRieVwiOiBhcmlhTGFiZWxsZWRCeSwgXCJhcmlhLW11bHRpc2VsZWN0YWJsZVwiOiBzZWxlY3RhYmxlID09PSBUcmVlVmlld1NlbGVjdGFibGUubXVsdGksIFwiZGF0YS10ZXN0aWRcIjogdGVzdElkLCBpc0ludmVyc2U6IGlzSW52ZXJzZSwgcmVmOiByZWYsIHJvbGU6IFwidHJlZVwiLCB0aGVtZTogdGhlbWUgfSksIHByb2Nlc3NlZENoaWxkcmVuKSkpKTtcclxufSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPVRyZWVWaWV3LmpzLm1hcCJdfQ== */"));
|
|
17369
17414
|
var TreeView = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
17370
17415
|
var ariaLabel = props.ariaLabel,
|
|
17371
17416
|
ariaLabelledBy = props.ariaLabelledBy,
|
|
@@ -17383,10 +17428,33 @@ var TreeView = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
17383
17428
|
itemId: ''
|
|
17384
17429
|
}, ref);
|
|
17385
17430
|
var treeItemIndex = 0;
|
|
17386
|
-
|
|
17387
|
-
|
|
17431
|
+
var inverseContextValue = React.useMemo(function () {
|
|
17432
|
+
return {
|
|
17388
17433
|
isInverse: isInverse
|
|
17434
|
+
};
|
|
17435
|
+
}, [isInverse]);
|
|
17436
|
+
var processedChildren = React.Children.map(children, function (child) {
|
|
17437
|
+
if (!React.isValidElement(child)) {
|
|
17438
|
+
return null;
|
|
17439
|
+
}
|
|
17440
|
+
if (child.type === TreeItem) {
|
|
17441
|
+
var treeItemChild = child;
|
|
17442
|
+
var treeItemProps = {
|
|
17443
|
+
index: treeItemIndex,
|
|
17444
|
+
parentDepth: 0,
|
|
17445
|
+
itemDepth: 0,
|
|
17446
|
+
topLevel: true
|
|
17447
|
+
};
|
|
17448
|
+
var processedItem = React.cloneElement(treeItemChild, _extends({}, treeItemProps, {
|
|
17449
|
+
key: "tree-item-" + treeItemIndex
|
|
17450
|
+
}));
|
|
17451
|
+
treeItemIndex++;
|
|
17452
|
+
return processedItem;
|
|
17389
17453
|
}
|
|
17454
|
+
return null;
|
|
17455
|
+
});
|
|
17456
|
+
return React.createElement(InverseContext.Provider, {
|
|
17457
|
+
value: inverseContextValue
|
|
17390
17458
|
}, React.createElement(TreeViewContext.Provider, {
|
|
17391
17459
|
value: contextValue
|
|
17392
17460
|
}, React.createElement(StyledTreeView, Object.assign({}, rest, {
|
|
@@ -17398,19 +17466,7 @@ var TreeView = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
17398
17466
|
ref: ref,
|
|
17399
17467
|
role: "tree",
|
|
17400
17468
|
theme: theme
|
|
17401
|
-
}),
|
|
17402
|
-
if (child.type === TreeItem) {
|
|
17403
|
-
var item = React.cloneElement(child, {
|
|
17404
|
-
index: treeItemIndex,
|
|
17405
|
-
key: treeItemIndex,
|
|
17406
|
-
parentDepth: 0,
|
|
17407
|
-
itemDepth: 0,
|
|
17408
|
-
topLevel: true
|
|
17409
|
-
});
|
|
17410
|
-
treeItemIndex++;
|
|
17411
|
-
return item;
|
|
17412
|
-
}
|
|
17413
|
-
}))));
|
|
17469
|
+
}), processedChildren)));
|
|
17414
17470
|
});
|
|
17415
17471
|
|
|
17416
17472
|
var _excluded$1K = ["children", "enforced", "exclusive", "id", "isInverse", "noSpace", "onChange", "size", "value", "testId"];
|