@majoo-ui/react 1.61.16-rc.1 → 1.61.16-rc.3
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/index.esm.js +19 -11
- package/package.json +1 -1
package/index.esm.js
CHANGED
|
@@ -15920,6 +15920,10 @@ function InputResourceList({
|
|
|
15920
15920
|
return 0;
|
|
15921
15921
|
});
|
|
15922
15922
|
}, [data, query, checkedItems]);
|
|
15923
|
+
const isItemDisabled = item => !!((item === null || item === void 0 ? void 0 : item.disabled) || disabledItems && disabledItems.includes(item.value));
|
|
15924
|
+
const selectableAvailableData = useMemo(() => {
|
|
15925
|
+
return availableData.filter(item => !isItemDisabled(item));
|
|
15926
|
+
}, [availableData, disabledItems]);
|
|
15923
15927
|
const renderCheckbox = (resource, index) => {
|
|
15924
15928
|
var _a, _b;
|
|
15925
15929
|
const isDisabled = resource.disabled || disabledItems && disabledItems.includes(resource.value);
|
|
@@ -16032,25 +16036,28 @@ function InputResourceList({
|
|
|
16032
16036
|
setSortType(sortType === 'asc' ? 'desc' : 'asc');
|
|
16033
16037
|
}
|
|
16034
16038
|
function toggleCheckAll() {
|
|
16035
|
-
const
|
|
16036
|
-
|
|
16037
|
-
|
|
16039
|
+
const selectable = selectableAvailableData;
|
|
16040
|
+
const allSelectableItemsSelected = selectable.length > 0 && selectable.every(item => checkedItems.some(checkedItem => checkedItem.value === item.value));
|
|
16041
|
+
if (allSelectableItemsSelected) {
|
|
16042
|
+
const newCheckedItems = checkedItems.filter(checkedItem => !selectable.some(item => item.value === checkedItem.value));
|
|
16038
16043
|
onChange === null || onChange === void 0 ? void 0 : onChange(isValueString ? newCheckedItems.map(item => item.value) : newCheckedItems);
|
|
16039
16044
|
} else {
|
|
16040
|
-
const
|
|
16045
|
+
const itemsToAdd = selectable.filter(item => !checkedItems.some(checkedItem => checkedItem.value === item.value));
|
|
16046
|
+
const newCheckedItems = [...checkedItems, ...itemsToAdd];
|
|
16041
16047
|
onChange === null || onChange === void 0 ? void 0 : onChange(isValueString ? newCheckedItems.map(item => item.value) : newCheckedItems);
|
|
16042
16048
|
}
|
|
16043
16049
|
}
|
|
16044
16050
|
function handleCheckedAllExpandable() {
|
|
16045
16051
|
const allItems = data || [];
|
|
16046
|
-
const
|
|
16052
|
+
const selectableAllItems = allItems.filter(item => !isItemDisabled(item));
|
|
16053
|
+
const allItemValues = selectableAllItems.map(i => i.value);
|
|
16047
16054
|
const currentValues = checkedItems.map(i => i.value);
|
|
16048
|
-
const areAllSelected =
|
|
16055
|
+
const areAllSelected = selectableAllItems.length > 0 && selectableAllItems.every(item => currentValues.includes(item.value));
|
|
16049
16056
|
let newCheckedItems;
|
|
16050
16057
|
if (areAllSelected) {
|
|
16051
16058
|
newCheckedItems = checkedItems.filter(item => !allItemValues.includes(item.value));
|
|
16052
16059
|
} else {
|
|
16053
|
-
const itemsToAdd =
|
|
16060
|
+
const itemsToAdd = selectableAllItems.filter(item => !currentValues.includes(item.value));
|
|
16054
16061
|
newCheckedItems = [...checkedItems, ...itemsToAdd];
|
|
16055
16062
|
}
|
|
16056
16063
|
onChange === null || onChange === void 0 ? void 0 : onChange(isValueString ? newCheckedItems.map(item => item.value) : newCheckedItems);
|
|
@@ -16077,8 +16084,8 @@ function InputResourceList({
|
|
|
16077
16084
|
}
|
|
16078
16085
|
}, {
|
|
16079
16086
|
children: [!hideSelectAll && jsx(InputCheckbox, {
|
|
16080
|
-
checked:
|
|
16081
|
-
indeterminate:
|
|
16087
|
+
checked: selectableAvailableData.length > 0 && selectableAvailableData.every(item => checkedItems.some(checkedItem => checkedItem.value === item.value)),
|
|
16088
|
+
indeterminate: selectableAvailableData.some(item => checkedItems.some(checkedItem => checkedItem.value === item.value)) && !(selectableAvailableData.length > 0 && selectableAvailableData.every(item => checkedItems.some(checkedItem => checkedItem.value === item.value))),
|
|
16082
16089
|
onCheckedChange: toggleCheckAll,
|
|
16083
16090
|
css: {
|
|
16084
16091
|
marginRight: '$spacing-02'
|
|
@@ -16195,9 +16202,10 @@ function InputResourceList({
|
|
|
16195
16202
|
}), void 0);
|
|
16196
16203
|
if (expandable) {
|
|
16197
16204
|
const allItems = data || [];
|
|
16205
|
+
const selectableAllItems = allItems.filter(item => !isItemDisabled(item));
|
|
16198
16206
|
const checkedValues = checkedItems.map(i => i.value);
|
|
16199
|
-
const isAllSelected =
|
|
16200
|
-
const isIndeterminate = !isAllSelected &&
|
|
16207
|
+
const isAllSelected = selectableAllItems.length > 0 && selectableAllItems.every(item => checkedValues.includes(item.value));
|
|
16208
|
+
const isIndeterminate = !isAllSelected && selectableAllItems.some(item => checkedValues.includes(item.value));
|
|
16201
16209
|
return jsxs(Box, {
|
|
16202
16210
|
children: [jsxs(Flex$1, Object.assign({
|
|
16203
16211
|
justify: "between",
|