@pdg/react-table 1.0.117 → 1.0.118

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.
@@ -125,5 +125,9 @@ export interface TableCommands<T = TableItem> {
125
125
  setItemsPaging(items: TableProps<T>['items'], paging: TableProps<T>['paging']): void;
126
126
  resetSort(): void;
127
127
  getCheckedItems(columnId: string): T[];
128
+ getChecked(itemKey: string, itemValue: any, columnId: string): boolean;
129
+ setChecked(itemKey: string, itemValue: any, columnId: string, checked: boolean): void;
130
+ toggleChecked(itemKey: string, itemValue: any, columnId: string): void;
131
+ setCheckedAll(columnId: string, checked: boolean): void;
128
132
  scrollToTop(): void;
129
133
  }
package/dist/index.esm.js CHANGED
@@ -893,6 +893,58 @@ var Table = React.forwardRef(function (_a, ref) {
893
893
  }, 100);
894
894
  }
895
895
  }, [getFinalColumnId]);
896
+ var getChecked = useCallback(function (itemKey, itemValue, columnId) {
897
+ var checked = false;
898
+ Object.keys(localBodyDataRef.current).find(function (key) {
899
+ var itemData = localBodyDataRef.current[key];
900
+ if (itemData.item[itemKey] === itemValue) {
901
+ var columnData = itemData.columns[columnId];
902
+ checked = !!(columnData === null || columnData === void 0 ? void 0 : columnData.checked);
903
+ return true;
904
+ }
905
+ });
906
+ return checked;
907
+ }, []);
908
+ var setChecked = useCallback(function (itemKey, itemValue, columnId, checked) {
909
+ Object.keys(localBodyDataRef.current).find(function (key) {
910
+ var _a;
911
+ var itemData = localBodyDataRef.current[key];
912
+ if (itemData.item[itemKey] === itemValue) {
913
+ var columnData = itemData.columns[columnId];
914
+ if (columnData) {
915
+ (_a = columnData.commands) === null || _a === void 0 ? void 0 : _a.setChecked(checked);
916
+ updateHeadCheck(columnData.column);
917
+ }
918
+ return true;
919
+ }
920
+ });
921
+ }, [updateHeadCheck]);
922
+ var toggleChecked = useCallback(function (itemKey, itemValue, columnId) {
923
+ Object.keys(localBodyDataRef.current).forEach(function (key) {
924
+ var _a;
925
+ var itemData = localBodyDataRef.current[key];
926
+ if (itemData.item[itemKey] === itemValue) {
927
+ var columnData = itemData.columns[columnId];
928
+ if (columnData) {
929
+ (_a = columnData.commands) === null || _a === void 0 ? void 0 : _a.setChecked(!columnData.checked);
930
+ updateHeadCheck(columnData.column);
931
+ }
932
+ return true;
933
+ }
934
+ });
935
+ }, [updateHeadCheck]);
936
+ var setCheckedAll = useCallback(function (columnId, checked) {
937
+ var _a, _b;
938
+ Object.keys(localBodyDataRef.current).forEach(function (key) {
939
+ var _a;
940
+ var itemData = localBodyDataRef.current[key];
941
+ var columnData = itemData.columns[columnId];
942
+ if (columnData) {
943
+ (_a = columnData.commands) === null || _a === void 0 ? void 0 : _a.setChecked(checked);
944
+ }
945
+ });
946
+ (_b = (_a = localHeaderDataRef.current[columnId]) === null || _a === void 0 ? void 0 : _a.commands) === null || _b === void 0 ? void 0 : _b.setChecked(checked);
947
+ }, []);
896
948
  var getCheckedItems = useCallback(function (columnId) {
897
949
  var checkedItems = [];
898
950
  Object.keys(localBodyDataRef.current).forEach(function (key) {
@@ -1052,6 +1104,10 @@ var Table = React.forwardRef(function (_a, ref) {
1052
1104
  setSortableItems(makeSortableItems(lastItems_1));
1053
1105
  },
1054
1106
  getCheckedItems: getCheckedItems,
1107
+ getChecked: getChecked,
1108
+ setChecked: setChecked,
1109
+ toggleChecked: toggleChecked,
1110
+ setCheckedAll: setCheckedAll,
1055
1111
  scrollToTop: simpleBarScrollToTop,
1056
1112
  };
1057
1113
  if (typeof ref === 'function') {
@@ -1061,7 +1117,21 @@ var Table = React.forwardRef(function (_a, ref) {
1061
1117
  ref.current = commands;
1062
1118
  }
1063
1119
  }
1064
- }, [ref, columns, items, paging, setColumns, setItems, setPaging, getCheckedItems, simpleBarScrollToTop]);
1120
+ }, [
1121
+ ref,
1122
+ columns,
1123
+ items,
1124
+ paging,
1125
+ setColumns,
1126
+ setItems,
1127
+ setPaging,
1128
+ getCheckedItems,
1129
+ simpleBarScrollToTop,
1130
+ setChecked,
1131
+ toggleChecked,
1132
+ getChecked,
1133
+ setCheckedAll,
1134
+ ]);
1065
1135
  /********************************************************************************************************************
1066
1136
  * Event Handler
1067
1137
  * ******************************************************************************************************************/
package/dist/index.js CHANGED
@@ -893,6 +893,58 @@ var Table = React.forwardRef(function (_a, ref) {
893
893
  }, 100);
894
894
  }
895
895
  }, [getFinalColumnId]);
896
+ var getChecked = React.useCallback(function (itemKey, itemValue, columnId) {
897
+ var checked = false;
898
+ Object.keys(localBodyDataRef.current).find(function (key) {
899
+ var itemData = localBodyDataRef.current[key];
900
+ if (itemData.item[itemKey] === itemValue) {
901
+ var columnData = itemData.columns[columnId];
902
+ checked = !!(columnData === null || columnData === void 0 ? void 0 : columnData.checked);
903
+ return true;
904
+ }
905
+ });
906
+ return checked;
907
+ }, []);
908
+ var setChecked = React.useCallback(function (itemKey, itemValue, columnId, checked) {
909
+ Object.keys(localBodyDataRef.current).find(function (key) {
910
+ var _a;
911
+ var itemData = localBodyDataRef.current[key];
912
+ if (itemData.item[itemKey] === itemValue) {
913
+ var columnData = itemData.columns[columnId];
914
+ if (columnData) {
915
+ (_a = columnData.commands) === null || _a === void 0 ? void 0 : _a.setChecked(checked);
916
+ updateHeadCheck(columnData.column);
917
+ }
918
+ return true;
919
+ }
920
+ });
921
+ }, [updateHeadCheck]);
922
+ var toggleChecked = React.useCallback(function (itemKey, itemValue, columnId) {
923
+ Object.keys(localBodyDataRef.current).forEach(function (key) {
924
+ var _a;
925
+ var itemData = localBodyDataRef.current[key];
926
+ if (itemData.item[itemKey] === itemValue) {
927
+ var columnData = itemData.columns[columnId];
928
+ if (columnData) {
929
+ (_a = columnData.commands) === null || _a === void 0 ? void 0 : _a.setChecked(!columnData.checked);
930
+ updateHeadCheck(columnData.column);
931
+ }
932
+ return true;
933
+ }
934
+ });
935
+ }, [updateHeadCheck]);
936
+ var setCheckedAll = React.useCallback(function (columnId, checked) {
937
+ var _a, _b;
938
+ Object.keys(localBodyDataRef.current).forEach(function (key) {
939
+ var _a;
940
+ var itemData = localBodyDataRef.current[key];
941
+ var columnData = itemData.columns[columnId];
942
+ if (columnData) {
943
+ (_a = columnData.commands) === null || _a === void 0 ? void 0 : _a.setChecked(checked);
944
+ }
945
+ });
946
+ (_b = (_a = localHeaderDataRef.current[columnId]) === null || _a === void 0 ? void 0 : _a.commands) === null || _b === void 0 ? void 0 : _b.setChecked(checked);
947
+ }, []);
896
948
  var getCheckedItems = React.useCallback(function (columnId) {
897
949
  var checkedItems = [];
898
950
  Object.keys(localBodyDataRef.current).forEach(function (key) {
@@ -1052,6 +1104,10 @@ var Table = React.forwardRef(function (_a, ref) {
1052
1104
  setSortableItems(makeSortableItems(lastItems_1));
1053
1105
  },
1054
1106
  getCheckedItems: getCheckedItems,
1107
+ getChecked: getChecked,
1108
+ setChecked: setChecked,
1109
+ toggleChecked: toggleChecked,
1110
+ setCheckedAll: setCheckedAll,
1055
1111
  scrollToTop: simpleBarScrollToTop,
1056
1112
  };
1057
1113
  if (typeof ref === 'function') {
@@ -1061,7 +1117,21 @@ var Table = React.forwardRef(function (_a, ref) {
1061
1117
  ref.current = commands;
1062
1118
  }
1063
1119
  }
1064
- }, [ref, columns, items, paging, setColumns, setItems, setPaging, getCheckedItems, simpleBarScrollToTop]);
1120
+ }, [
1121
+ ref,
1122
+ columns,
1123
+ items,
1124
+ paging,
1125
+ setColumns,
1126
+ setItems,
1127
+ setPaging,
1128
+ getCheckedItems,
1129
+ simpleBarScrollToTop,
1130
+ setChecked,
1131
+ toggleChecked,
1132
+ getChecked,
1133
+ setCheckedAll,
1134
+ ]);
1065
1135
  /********************************************************************************************************************
1066
1136
  * Event Handler
1067
1137
  * ******************************************************************************************************************/
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pdg/react-table",
3
3
  "title": "React Table",
4
- "version": "1.0.117",
4
+ "version": "1.0.118",
5
5
  "description": "React Table",
6
6
  "type": "module",
7
7
  "types": "dist/index.d.ts",