@uxf/data-grid 11.35.0 → 11.37.0
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/_store/reducer.js +17 -14
- package/components.d.ts +4 -9
- package/components.js +25 -30
- package/data-grid-custom-example.stories.js +2 -2
- package/data-grid.js +7 -8
- package/data-grid.stories.js +3 -3
- package/export-button/export-button.d.ts +1 -3
- package/export-button/export-button.js +2 -5
- package/filter-list/filter-list.d.ts +2 -6
- package/filter-list/filter-list.js +2 -5
- package/filters/filters.d.ts +1 -3
- package/filters/filters.js +2 -5
- package/filters-button/filters-button.d.ts +1 -3
- package/filters-button/filters-button.js +2 -5
- package/footer/footer.d.ts +0 -2
- package/footer/footer.js +1 -3
- package/fulltext-input/fulltext-input.d.ts +1 -3
- package/fulltext-input/fulltext-input.js +2 -5
- package/linear-progress/linear-progress.d.ts +2 -6
- package/linear-progress/linear-progress.js +2 -5
- package/package.json +54 -54
- package/pagination/pagination.d.ts +2 -6
- package/pagination/pagination.js +2 -5
- package/root/root.d.ts +0 -2
- package/root/root.js +1 -2
- package/row-counts/row-counts.d.ts +2 -6
- package/row-counts/row-counts.js +2 -5
- package/rows-per-page-select/rows-per-page-select.d.ts +1 -3
- package/rows-per-page-select/rows-per-page-select.js +2 -5
- package/selected-rows-toolbar/selected-rows-toolbar.d.ts +2 -6
- package/selected-rows-toolbar/selected-rows-toolbar.js +2 -5
- package/styles.css +4 -12
- package/table/hooks/use-react-data-grid-columns.d.ts +2 -2
- package/table/hooks/use-react-data-grid-columns.js +1 -1
- package/table/table.d.ts +1 -3
- package/table/table.js +2 -5
- package/table/types.d.ts +1 -3
- package/table-v2/hooks/use-resizable-columns.js +6 -9
- package/table-v2/styles.css +6 -0
- package/table-v2/table-v2.d.ts +1 -3
- package/table-v2/table-v2.js +12 -15
- package/table-v2/types.d.ts +1 -3
- package/table-v2/utils/get-grid-template-columns.d.ts +6 -0
- package/table-v2/utils/get-grid-template-columns.js +14 -0
- package/table-v2/utils/get-grid-template-rows.d.ts +2 -2
- package/toolbar/toolbar.d.ts +0 -1
- package/toolbar/toolbar.js +1 -3
- package/toolbar-control/toolbar-control.d.ts +2 -6
- package/toolbar-control/toolbar-control.js +2 -5
- package/toolbar-customs/toolbar-customs.d.ts +2 -6
- package/toolbar-customs/toolbar-customs.js +2 -5
- package/toolbar-tabs/toolbar-tabs.d.ts +4 -6
- package/toolbar-tabs/toolbar-tabs.js +8 -10
- package/types/components.d.ts +1 -0
- package/types/data-grid-props.d.ts +2 -3
- package/types/index.d.ts +6 -6
- package/types/index.js +0 -20
- package/types/schema.d.ts +0 -5
- package/types/schema.js +0 -7
- package/use-data-grid-control/actions-factory.d.ts +2 -1
- package/use-data-grid-control/actions-factory.js +1 -1
- package/use-data-grid-control/use-data-grid-control.d.ts +1 -1
- package/data-grid-v2.d.ts +0 -3
- package/data-grid-v2.js +0 -43
- package/data-grid-v2.stories.d.ts +0 -2
- package/data-grid-v2.stories.js +0 -92
- package/utils/classes.d.ts +0 -1
- package/utils/classes.js +0 -4
|
@@ -5,7 +5,7 @@ import { DataGridTableProps } from "../table/types";
|
|
|
5
5
|
import { DataGridToolbarCustomsProps } from "../toolbar-customs";
|
|
6
6
|
import { DataGridControl } from "../use-data-grid-control";
|
|
7
7
|
import { DataGridFetchingResult } from "../use-data-grid-fetching";
|
|
8
|
-
import { BodyCellComponents } from "./components";
|
|
8
|
+
import { BodyCellComponents, ChangeTabFilterBehavior } from "./components";
|
|
9
9
|
import { CsvDownloadHandler, KeyExtractor } from "./core";
|
|
10
10
|
import { BaseGridType, Schema } from "./schema";
|
|
11
11
|
export type DataGridControlProps = DataGridControl;
|
|
@@ -15,8 +15,6 @@ export type DataGridBaseProps<GridType extends BaseGridType, Row> = {
|
|
|
15
15
|
gridName?: string;
|
|
16
16
|
keyExtractor?: KeyExtractor;
|
|
17
17
|
onCsvDownload?: CsvDownloadHandler;
|
|
18
|
-
/** @deprecated will be remove, create custom data grid https://fe.uxf.dev/docs/data-grid/data-grid-custom-example */
|
|
19
|
-
noBorder?: boolean;
|
|
20
18
|
rowHeight?: number | ((row: Row) => number);
|
|
21
19
|
headerRowHeight?: number;
|
|
22
20
|
rowClass?: (row: Row) => "success" | "warning" | "error" | "primary" | "secondary" | string | null | undefined;
|
|
@@ -29,5 +27,6 @@ export type DataGridBaseProps<GridType extends BaseGridType, Row> = {
|
|
|
29
27
|
SelectedRowsToolbarActions?: SelectedRowsToolbarActionsComponent;
|
|
30
28
|
isRowSelectable?: boolean;
|
|
31
29
|
isDebug?: boolean;
|
|
30
|
+
changeTabFilterBehavior?: ChangeTabFilterBehavior;
|
|
32
31
|
};
|
|
33
32
|
export type DataGridProps<GridType extends BaseGridType, Row> = DataGridBaseProps<GridType, Row> & DataGridDataProps<Row> & DataGridControlProps;
|
package/types/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export * from "./api";
|
|
2
|
-
export * from "./components";
|
|
3
|
-
export * from "./core";
|
|
4
|
-
export * from "./data-grid-props";
|
|
5
|
-
export * from "./schema";
|
|
6
|
-
export * from "./state";
|
|
1
|
+
export type * from "./api";
|
|
2
|
+
export type * from "./components";
|
|
3
|
+
export type * from "./core";
|
|
4
|
+
export type * from "./data-grid-props";
|
|
5
|
+
export type * from "./schema";
|
|
6
|
+
export type * from "./state";
|
package/types/index.js
CHANGED
|
@@ -1,22 +1,2 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./api"), exports);
|
|
18
|
-
__exportStar(require("./components"), exports);
|
|
19
|
-
__exportStar(require("./core"), exports);
|
|
20
|
-
__exportStar(require("./data-grid-props"), exports);
|
|
21
|
-
__exportStar(require("./schema"), exports);
|
|
22
|
-
__exportStar(require("./state"), exports);
|
package/types/schema.d.ts
CHANGED
package/types/schema.js
CHANGED
|
@@ -1,9 +1,2 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.DataGridSortDir = void 0;
|
|
4
|
-
/** @deprecated use 'asc' or 'desc' */
|
|
5
|
-
var DataGridSortDir;
|
|
6
|
-
(function (DataGridSortDir) {
|
|
7
|
-
DataGridSortDir["Asc"] = "asc";
|
|
8
|
-
DataGridSortDir["Desc"] = "desc";
|
|
9
|
-
})(DataGridSortDir || (exports.DataGridSortDir = DataGridSortDir = {}));
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Dispatch } from "react";
|
|
2
|
+
import type { ChangeTabFilterBehavior } from "../types";
|
|
2
3
|
import { Tab } from "../types/schema";
|
|
3
4
|
import { DataGridUserConfig } from "../types/state";
|
|
4
5
|
export declare function createActions(dispatch: Dispatch<any>): {
|
|
@@ -10,7 +11,7 @@ export declare function createActions(dispatch: Dispatch<any>): {
|
|
|
10
11
|
sort: (columnName: string, direction?: string | null) => void;
|
|
11
12
|
sortClear: () => void;
|
|
12
13
|
search: (search: string) => void;
|
|
13
|
-
changeTab: (tab: Tab) => void;
|
|
14
|
+
changeTab: (tab: Tab, filterBehavior: ChangeTabFilterBehavior) => void;
|
|
14
15
|
setSelectedRows: (rows: any[]) => void;
|
|
15
16
|
hideColumn: (name: string) => void;
|
|
16
17
|
showColumn: (name: string) => void;
|
|
@@ -11,7 +11,7 @@ function createActions(dispatch) {
|
|
|
11
11
|
sort: (columnName, direction = null) => dispatch({ type: "SORT", columnName, direction }),
|
|
12
12
|
sortClear: () => dispatch({ type: "SORT_CLEAR" }),
|
|
13
13
|
search: (search) => dispatch({ type: "FULLTEXT", search }),
|
|
14
|
-
changeTab: (tab) => dispatch({ type: "CHANGE_TAB", tab }),
|
|
14
|
+
changeTab: (tab, filterBehavior) => dispatch({ type: "CHANGE_TAB", tab, filterBehavior }),
|
|
15
15
|
setSelectedRows: (rows) => dispatch({ type: "SET_SELECTED_ROWS", rows }),
|
|
16
16
|
hideColumn: (name) => dispatch({ type: "HIDE_COLUMN", name }),
|
|
17
17
|
showColumn: (name) => dispatch({ type: "SHOW_COLUMN", name }),
|
|
@@ -19,7 +19,7 @@ export declare function useDataGridControl<T extends BaseGridType>(config: UseDa
|
|
|
19
19
|
sort: (columnName: string, direction?: string | null) => void;
|
|
20
20
|
sortClear: () => void;
|
|
21
21
|
search: (search: string) => void;
|
|
22
|
-
changeTab: (tab: import("../types/schema").Tab) => void;
|
|
22
|
+
changeTab: (tab: import("../types/schema").Tab, filterBehavior: import("..").ChangeTabFilterBehavior) => void;
|
|
23
23
|
setSelectedRows: (rows: any[]) => void;
|
|
24
24
|
hideColumn: (name: string) => void;
|
|
25
25
|
showColumn: (name: string) => void;
|
package/data-grid-v2.d.ts
DELETED
package/data-grid-v2.js
DELETED
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.DataGridV2 = DataGridV2;
|
|
7
|
-
const empty_array_1 = require("@uxf/core/constants/empty-array");
|
|
8
|
-
const react_1 = __importDefault(require("react"));
|
|
9
|
-
const body_cell_1 = require("./body-cell");
|
|
10
|
-
const filter_handler_1 = require("./filter-handler");
|
|
11
|
-
const filter_list_1 = require("./filter-list");
|
|
12
|
-
const footer_1 = require("./footer");
|
|
13
|
-
const linear_progress_1 = require("./linear-progress");
|
|
14
|
-
const pagination_1 = require("./pagination");
|
|
15
|
-
const root_1 = require("./root");
|
|
16
|
-
const row_counts_1 = require("./row-counts");
|
|
17
|
-
const rows_per_page_select_1 = require("./rows-per-page-select");
|
|
18
|
-
const selected_rows_toolbar_1 = require("./selected-rows-toolbar");
|
|
19
|
-
const table_v2_1 = require("./table-v2");
|
|
20
|
-
const no_rows_fallback_1 = require("./table/no-rows-fallback");
|
|
21
|
-
const toolbar_1 = require("./toolbar");
|
|
22
|
-
const toolbar_control_1 = require("./toolbar-control");
|
|
23
|
-
const toolbar_customs_1 = require("./toolbar-customs");
|
|
24
|
-
const toolbar_tabs_1 = require("./toolbar-tabs");
|
|
25
|
-
const classes_1 = require("./utils/classes");
|
|
26
|
-
const DefaultSelectedRowsToolbarActions = () => null;
|
|
27
|
-
function DataGridV2(props) {
|
|
28
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
29
|
-
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
30
|
-
react_1.default.createElement(root_1.DataGridRoot, { className: props.className, noBorder: props.noBorder },
|
|
31
|
-
react_1.default.createElement(toolbar_1.DataGridToolbar, { noBorder: props.noBorder },
|
|
32
|
-
react_1.default.createElement(toolbar_tabs_1.DataGridToolbarTabs, { actions: props.actions, schema: props.schema, state: props.state }),
|
|
33
|
-
react_1.default.createElement(toolbar_control_1.DataGridToolbarControl, { actions: props.actions, filterHandlers: (_a = props.filterHandlers) !== null && _a !== void 0 ? _a : filter_handler_1.defaultFilterHandlers, onCsvDownload: props.onCsvDownload, schema: props.schema, state: props.state }),
|
|
34
|
-
react_1.default.createElement(toolbar_customs_1.DataGridToolbarCustoms, { buttons: props.customActions })),
|
|
35
|
-
react_1.default.createElement(linear_progress_1.DataGridLinearProgress, { isLoading: props.isLoading }),
|
|
36
|
-
react_1.default.createElement(filter_list_1.DataGridFilterList, { actions: props.actions, className: props.noBorder ? classes_1.NO_BORDER_CLASS : undefined, filterHandlers: (_b = props.filterHandlers) !== null && _b !== void 0 ? _b : filter_handler_1.defaultFilterHandlers, schema: props.schema, state: props.state }),
|
|
37
|
-
react_1.default.createElement(table_v2_1.DataGridTableV2, { NoRowsFallback: (_c = props.NoRowsFallback) !== null && _c !== void 0 ? _c : no_rows_fallback_1.NoRowsFallback, actionCell: props.actionCell, actions: props.actions, bodyCells: (_d = props.bodyCells) !== null && _d !== void 0 ? _d : body_cell_1.BodyCells, data: (_f = (_e = props.data) === null || _e === void 0 ? void 0 : _e.result) !== null && _f !== void 0 ? _f : empty_array_1.EMPTY_ARRAY, error: props.error, headerRowHeight: props.headerRowHeight, isLoading: props.isLoading, isRowSelectable: props.isRowSelectable, keyExtractor: props.keyExtractor, onReload: props.onReload, rowClass: props.rowClass, rowHeight: props.rowHeight, schema: props.schema, state: props.state }),
|
|
38
|
-
react_1.default.createElement(footer_1.DataGridFooter, { noBorder: props.noBorder },
|
|
39
|
-
react_1.default.createElement(rows_per_page_select_1.DataGridRowsPerPageSelect, { actions: props.actions, state: props.state }),
|
|
40
|
-
react_1.default.createElement(row_counts_1.DataGridRowCounts, { count: (_h = (_g = props.data) === null || _g === void 0 ? void 0 : _g.count) !== null && _h !== void 0 ? _h : 0, state: props.state, totalCount: (_k = (_j = props.data) === null || _j === void 0 ? void 0 : _j.totalCount) !== null && _k !== void 0 ? _k : 0 }),
|
|
41
|
-
react_1.default.createElement(pagination_1.DataGridPagination, { actions: props.actions, count: (_m = (_l = props.data) === null || _l === void 0 ? void 0 : _l.count) !== null && _m !== void 0 ? _m : 0, showFirstButton: true, showLastButton: true, size: "sm", state: props.state }))),
|
|
42
|
-
react_1.default.createElement(selected_rows_toolbar_1.DataGridSelectedRowsToolbar, { Actions: (_o = props.SelectedRowsToolbarActions) !== null && _o !== void 0 ? _o : DefaultSelectedRowsToolbarActions, actions: props.actions, state: props.state })));
|
|
43
|
-
}
|
package/data-grid-v2.stories.js
DELETED
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.Default = Default;
|
|
27
|
-
const buildArray_1 = require("@uxf/core/utils/buildArray");
|
|
28
|
-
const toggle_1 = require("@uxf/ui/toggle");
|
|
29
|
-
const react_1 = __importStar(require("react"));
|
|
30
|
-
const json_renderer_1 = require("./_story-utils/json-renderer");
|
|
31
|
-
const loader_1 = require("./_story-utils/loader");
|
|
32
|
-
const schema_1 = require("./_story-utils/schema");
|
|
33
|
-
const data_grid_v2_1 = require("./data-grid-v2");
|
|
34
|
-
const table_1 = require("./table");
|
|
35
|
-
const use_data_grid_control_1 = require("./use-data-grid-control");
|
|
36
|
-
const use_data_grid_fetching_1 = require("./use-data-grid-fetching");
|
|
37
|
-
const merge_schema_with_config_1 = require("./utils/merge-schema-with-config");
|
|
38
|
-
const actionCell = {
|
|
39
|
-
width: 100,
|
|
40
|
-
Component: () => {
|
|
41
|
-
const actionCellActions = (0, buildArray_1.buildArray)()
|
|
42
|
-
.add({
|
|
43
|
-
icon: "arrow-right",
|
|
44
|
-
isIconButton: true,
|
|
45
|
-
href: "https://www.uxf.cz",
|
|
46
|
-
target: "_blank",
|
|
47
|
-
})
|
|
48
|
-
.add({
|
|
49
|
-
icon: "file",
|
|
50
|
-
label: "Download",
|
|
51
|
-
onClick: console.log,
|
|
52
|
-
})
|
|
53
|
-
.add({
|
|
54
|
-
icon: "cloud",
|
|
55
|
-
label: "Reload",
|
|
56
|
-
onClick: console.log,
|
|
57
|
-
});
|
|
58
|
-
return react_1.default.createElement(table_1.ActionCell, { buttons: actionCellActions, visibleButtonsCount: 1 });
|
|
59
|
-
},
|
|
60
|
-
};
|
|
61
|
-
const schemaWithFrontendConfig = (0, merge_schema_with_config_1.mergeSchemaWithConfig)(schema_1.schema, {
|
|
62
|
-
perPage: 100,
|
|
63
|
-
columns: {
|
|
64
|
-
bool: { width: 80 },
|
|
65
|
-
},
|
|
66
|
-
filters: {
|
|
67
|
-
text: { placeholder: "Custom placeholder ..." },
|
|
68
|
-
},
|
|
69
|
-
});
|
|
70
|
-
function Default() {
|
|
71
|
-
const [noBorder, setNoBorder] = (0, react_1.useState)(false);
|
|
72
|
-
const { state, actions } = (0, use_data_grid_control_1.useDataGridControl)({
|
|
73
|
-
schema: schema_1.schema,
|
|
74
|
-
initialUserConfig: {
|
|
75
|
-
columns: {
|
|
76
|
-
id: { width: 100 },
|
|
77
|
-
text: { minWidth: 300 },
|
|
78
|
-
mail: { minWidth: 300 },
|
|
79
|
-
tel: { minWidth: 300 },
|
|
80
|
-
},
|
|
81
|
-
},
|
|
82
|
-
});
|
|
83
|
-
const { isLoading, error, data, onReload } = (0, use_data_grid_fetching_1.useDataGridFetching)({
|
|
84
|
-
loader: loader_1.loader,
|
|
85
|
-
schema: schema_1.schema,
|
|
86
|
-
state,
|
|
87
|
-
});
|
|
88
|
-
return (react_1.default.createElement("div", { className: "p-10" },
|
|
89
|
-
react_1.default.createElement(toggle_1.Toggle, { label: "No border", name: "noBorder", onChange: (value) => setNoBorder(Boolean(value)), value: noBorder }),
|
|
90
|
-
react_1.default.createElement(data_grid_v2_1.DataGridV2, { actionCell: actionCell, actions: actions, data: data, error: error, isLoading: isLoading, isRowSelectable: true, noBorder: noBorder, onCsvDownload: console.log, onReload: onReload, schema: schemaWithFrontendConfig, state: state }),
|
|
91
|
-
react_1.default.createElement(json_renderer_1.JsonRenderer, { value: state })));
|
|
92
|
-
}
|
package/utils/classes.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const NO_BORDER_CLASS = "no-border";
|
package/utils/classes.js
DELETED