schummar-table 0.12.1 → 0.12.4
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/cjs/index.js +36 -14
- package/dist/cjs/index.js.map +1 -1
- package/dist/es/index.js +36 -14
- package/dist/es/index.js.map +1 -1
- package/dist/types/types.d.ts +1 -0
- package/package.json +3 -2
package/dist/cjs/index.js
CHANGED
|
@@ -141,20 +141,23 @@ function useTableStateStorage(table) {
|
|
|
141
141
|
const data = parse(json);
|
|
142
142
|
(_b = (_a = table.getState().props).debug) == null ? void 0 : _b.call(_a, "load", json, data);
|
|
143
143
|
table.update((state) => {
|
|
144
|
-
var _a2, _b2, _c, _d;
|
|
144
|
+
var _a2, _b2, _c, _d, _e;
|
|
145
145
|
for (const key of KEYS) {
|
|
146
146
|
if ((!include || include.includes(key)) && !(exclude == null ? void 0 : exclude.includes(key)) && key in data) {
|
|
147
147
|
if (key === "filterValues") {
|
|
148
148
|
for (const [id2, value] of data[key]) {
|
|
149
|
-
if ((
|
|
149
|
+
if ((_c = (_a2 = state.filters.get(id2)) == null ? void 0 : _a2.persist) != null ? _c : ((_b2 = state.filters.get(id2)) == null ? void 0 : _b2.value) === void 0) {
|
|
150
150
|
state.filterValues.set(id2, value);
|
|
151
151
|
}
|
|
152
152
|
}
|
|
153
153
|
} else {
|
|
154
|
-
state[key] = data[key];
|
|
155
154
|
if (key === "expanded" || key === "hiddenColumns" || key === "selection" || key === "sort") {
|
|
156
|
-
|
|
155
|
+
if (state.props[key] !== void 0) {
|
|
156
|
+
continue;
|
|
157
|
+
}
|
|
158
|
+
(_e = (_d = state.props)[`on${key.slice(0, 1).toUpperCase() + key.slice(1)}Change`]) == null ? void 0 : _e.call(_d, data[key]);
|
|
157
159
|
}
|
|
160
|
+
state[key] = data[key];
|
|
158
161
|
}
|
|
159
162
|
}
|
|
160
163
|
}
|
|
@@ -173,7 +176,7 @@ function useTableStateStorage(table) {
|
|
|
173
176
|
if (!isHydrated)
|
|
174
177
|
return;
|
|
175
178
|
return table.subscribe((state) => {
|
|
176
|
-
var _a, _b;
|
|
179
|
+
var _a, _b, _c;
|
|
177
180
|
if (!state.props.persist)
|
|
178
181
|
return;
|
|
179
182
|
const {
|
|
@@ -188,11 +191,14 @@ function useTableStateStorage(table) {
|
|
|
188
191
|
if (key === "filterValues") {
|
|
189
192
|
data[key] = /* @__PURE__ */ new Map();
|
|
190
193
|
for (const [id2, value] of state.filterValues) {
|
|
191
|
-
if ((
|
|
194
|
+
if ((_c = (_a = state.filters.get(id2)) == null ? void 0 : _a.persist) != null ? _c : ((_b = state.filters.get(id2)) == null ? void 0 : _b.value) === void 0) {
|
|
192
195
|
data.filterValues.set(id2, value);
|
|
193
196
|
}
|
|
194
197
|
}
|
|
195
198
|
} else {
|
|
199
|
+
if (key === "expanded" || key === "hiddenColumns" || key === "selection" || key === "sort" && state.props[key] !== void 0) {
|
|
200
|
+
continue;
|
|
201
|
+
}
|
|
196
202
|
data[key] = state[key];
|
|
197
203
|
}
|
|
198
204
|
}
|
|
@@ -636,12 +642,21 @@ function useTableState(_props) {
|
|
|
636
642
|
const [key, setKey] = react.useState({});
|
|
637
643
|
const props = calcProps(_props);
|
|
638
644
|
function reset() {
|
|
639
|
-
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
645
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _i;
|
|
640
646
|
setKey({});
|
|
641
|
-
(
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
(
|
|
647
|
+
if (props.sort === void 0) {
|
|
648
|
+
(_b = props.onSortChange) == null ? void 0 : _b.call(props, (_a = props.defaultSort) != null ? _a : []);
|
|
649
|
+
}
|
|
650
|
+
if (props.expanded === void 0) {
|
|
651
|
+
(_d = props.onExpandedChange) == null ? void 0 : _d.call(props, (_c = props.defaultExpanded) != null ? _c : /* @__PURE__ */ new Set());
|
|
652
|
+
}
|
|
653
|
+
if (props.selection === void 0) {
|
|
654
|
+
(_f = props.onSelectionChange) == null ? void 0 : _f.call(props, (_e = props.defaultSelection) != null ? _e : /* @__PURE__ */ new Set());
|
|
655
|
+
}
|
|
656
|
+
if (props.hiddenColumns === void 0) {
|
|
657
|
+
(_h = props.onHiddenColumnsChange) == null ? void 0 : _h.call(props, (_g = props.defaultHiddenColumns) != null ? _g : /* @__PURE__ */ new Set());
|
|
658
|
+
}
|
|
659
|
+
(_i = props.onReset) == null ? void 0 : _i.call(props);
|
|
645
660
|
}
|
|
646
661
|
const state = react.useMemo(() => {
|
|
647
662
|
var _a, _b, _c, _d;
|
|
@@ -880,7 +895,12 @@ function FilterControl() {
|
|
|
880
895
|
});
|
|
881
896
|
function reset() {
|
|
882
897
|
table.update((state) => {
|
|
883
|
-
|
|
898
|
+
var _a;
|
|
899
|
+
const impl = state.filters.get(columnId);
|
|
900
|
+
(_a = impl == null ? void 0 : impl.onChange) == null ? void 0 : _a.call(impl, void 0);
|
|
901
|
+
if ((impl == null ? void 0 : impl.value) !== void 0) {
|
|
902
|
+
state.filterValues.delete(columnId);
|
|
903
|
+
}
|
|
884
904
|
});
|
|
885
905
|
}
|
|
886
906
|
const close = react.useCallback(function() {
|
|
@@ -900,7 +920,7 @@ function FilterControl() {
|
|
|
900
920
|
children: /* @__PURE__ */ jsxRuntime.jsx(IconButton2, {
|
|
901
921
|
css: ["color:#b0bac9;", isActive && {
|
|
902
922
|
color: "var(--primaryMain) !important"
|
|
903
|
-
}, process.env.NODE_ENV === "production" ? "" : ";label:FilterControl;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
923
|
+
}, process.env.NODE_ENV === "production" ? "" : ";label:FilterControl;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3NjaHVtbWFyLXRhYmxlL3NjaHVtbWFyLXRhYmxlL3NyYy9jb21wb25lbnRzL2ZpbHRlckNvbnRyb2wudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXFEVSIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay9zY2h1bW1hci10YWJsZS9zY2h1bW1hci10YWJsZS9zcmMvY29tcG9uZW50cy9maWx0ZXJDb250cm9sLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyBjcmVhdGVDb250ZXh0LCB1c2VDYWxsYmFjaywgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VUaGVtZSB9IGZyb20gJy4uL2hvb2tzL3VzZVRoZW1lJztcbmltcG9ydCB7IHVzZUNzc1ZhcmlhYmxlcyB9IGZyb20gJy4uL3RoZW1lL3VzZUNzc1ZhcmlhYmxlcyc7XG5pbXBvcnQgeyB1c2VDb2x1bW5Db250ZXh0LCB1c2VUYWJsZUNvbnRleHQgfSBmcm9tICcuL3RhYmxlJztcblxuZXhwb3J0IGNvbnN0IEZpbHRlckNvbnRyb2xDb250ZXh0ID0gY3JlYXRlQ29udGV4dCgoKTogdm9pZCA9PiB2b2lkIDApO1xuXG5leHBvcnQgZnVuY3Rpb24gRmlsdGVyQ29udHJvbDxUPigpOiBKU1guRWxlbWVudCB8IG51bGwge1xuICBjb25zdCB0YWJsZSA9IHVzZVRhYmxlQ29udGV4dDxUPigpO1xuICBjb25zdCBjb2x1bW5JZCA9IHVzZUNvbHVtbkNvbnRleHQoKTtcbiAgY29uc3QgSWNvbkJ1dHRvbiA9IHVzZVRoZW1lKCh0KSA9PiB0LmNvbXBvbmVudHMuSWNvbkJ1dHRvbik7XG4gIGNvbnN0IFBvcG92ZXIgPSB1c2VUaGVtZSgodCkgPT4gdC5jb21wb25lbnRzLlBvcG92ZXIpO1xuICBjb25zdCBGaWx0ZXJMaXN0ID0gdXNlVGhlbWUoKHQpID0+IHQuaWNvbnMuRmlsdGVyTGlzdCk7XG4gIGNvbnN0IEFycm93RHJvcERvd24gPSB1c2VUaGVtZSgodCkgPT4gdC5pY29ucy5BcnJvd0Ryb3BEb3duKTtcbiAgY29uc3QgY3NzVmFyaWFibGVzID0gdXNlQ3NzVmFyaWFibGVzKCk7XG5cbiAgY29uc3QgW2FuY2hvciwgc2V0QW5jaG9yXSA9IHVzZVN0YXRlPEVsZW1lbnQgfCBudWxsPihudWxsKTtcbiAgY29uc3QgaXNBY3RpdmUgPSB0YWJsZS51c2VTdGF0ZSgoc3RhdGUpID0+IHtcbiAgICBjb25zdCBmaWx0ZXIgPSBzdGF0ZS5maWx0ZXJzLmdldChjb2x1bW5JZCk7XG4gICAgY29uc3QgZmlsdGVyVmFsdWUgPSBzdGF0ZS5maWx0ZXJWYWx1ZXMuZ2V0KGNvbHVtbklkKTtcbiAgICByZXR1cm4gZmlsdGVyICE9PSB1bmRlZmluZWQgJiYgZmlsdGVyVmFsdWUgIT09IHVuZGVmaW5lZCAmJiBmaWx0ZXIuaXNBY3RpdmUoZmlsdGVyVmFsdWUpO1xuICB9KTtcbiAgY29uc3QgZmlsdGVyID0gdGFibGUudXNlU3RhdGUoKHN0YXRlKSA9PiBzdGF0ZS5hY3RpdmVDb2x1bW5zLmZpbmQoKGNvbHVtbikgPT4gY29sdW1uLmlkID09PSBjb2x1bW5JZCk/LmZpbHRlcik7XG5cbiAgZnVuY3Rpb24gcmVzZXQoKSB7XG4gICAgdGFibGUudXBkYXRlKChzdGF0ZSkgPT4ge1xuICAgICAgY29uc3QgaW1wbCA9IHN0YXRlLmZpbHRlcnMuZ2V0KGNvbHVtbklkKTtcblxuICAgICAgaW1wbD8ub25DaGFuZ2U/Lih1bmRlZmluZWQpO1xuXG4gICAgICBpZiAoaW1wbD8udmFsdWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBzdGF0ZS5maWx0ZXJWYWx1ZXMuZGVsZXRlKGNvbHVtbklkKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGNvbnN0IGNsb3NlID0gdXNlQ2FsbGJhY2soZnVuY3Rpb24gKCkge1xuICAgIHNldEFuY2hvcihudWxsKTtcbiAgfSwgW10pO1xuXG4gIGlmICghZmlsdGVyKSByZXR1cm4gbnVsbDtcblxuICByZXR1cm4gKFxuICAgIDxGaWx0ZXJDb250cm9sQ29udGV4dC5Qcm92aWRlciB2YWx1ZT17Y2xvc2V9PlxuICAgICAgPGRpdlxuICAgICAgICBvbkNsaWNrPXsoZSkgPT4gc2V0QW5jaG9yKGUuY3VycmVudFRhcmdldCl9XG4gICAgICAgIG9uQ29udGV4dE1lbnU9eyhlKSA9PiB7XG4gICAgICAgICAgcmVzZXQoKTtcbiAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICA8SWNvbkJ1dHRvblxuICAgICAgICAgIGNzcz17W1xuICAgICAgICAgICAgeyBjb2xvcjogJyNiMGJhYzknIH0sXG4gICAgICAgICAgICBpc0FjdGl2ZSAmJiB7XG4gICAgICAgICAgICAgIGNvbG9yOiAndmFyKC0tcHJpbWFyeU1haW4pICFpbXBvcnRhbnQnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdfVxuICAgICAgICA+XG4gICAgICAgICAge2lzQWN0aXZlID8gPEZpbHRlckxpc3QgLz4gOiA8QXJyb3dEcm9wRG93biAvPn1cbiAgICAgICAgPC9JY29uQnV0dG9uPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXZcbiAgICAgICAgb25Qb2ludGVyRG93bj17KGUpID0+IHtcbiAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB9fVxuICAgICAgICBvblBvaW50ZXJNb3ZlPXsoZSkgPT4ge1xuICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxQb3BvdmVyIG9wZW4gaGlkZGVuPXshYW5jaG9yfSBvbkNsb3NlPXsoKSA9PiBzZXRBbmNob3IobnVsbCl9IGFuY2hvckVsPXthbmNob3IgPz8gZG9jdW1lbnQuYm9keX0gY3NzPXtjc3NWYXJpYWJsZXN9PlxuICAgICAgICAgIHtmaWx0ZXJ9XG4gICAgICAgIDwvUG9wb3Zlcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvRmlsdGVyQ29udHJvbENvbnRleHQuUHJvdmlkZXI+XG4gICk7XG59XG4iXX0= */"],
|
|
904
924
|
children: isActive ? /* @__PURE__ */ jsxRuntime.jsx(FilterList2, {}) : /* @__PURE__ */ jsxRuntime.jsx(ArrowDropDown2, {})
|
|
905
925
|
})
|
|
906
926
|
}), /* @__PURE__ */ jsxRuntime.jsx("div", {
|
|
@@ -3274,7 +3294,9 @@ function useFilter(impl) {
|
|
|
3274
3294
|
const filterBy = impl.filterBy && cache("", impl.filterBy);
|
|
3275
3295
|
react.useEffect(() => {
|
|
3276
3296
|
var _a;
|
|
3277
|
-
(
|
|
3297
|
+
if (impl.value === void 0) {
|
|
3298
|
+
(_a = impl.onChange) == null ? void 0 : _a.call(impl, impl.defaultValue);
|
|
3299
|
+
}
|
|
3278
3300
|
}, [table]);
|
|
3279
3301
|
react.useEffect(() => {
|
|
3280
3302
|
table.update((state) => {
|