@uxf/data-grid 11.102.0 → 11.103.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/column-types.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { DateString, DatetimeString } from "@uxf/core/date";
2
2
  import { Money } from "@uxf/core/money";
3
3
  export interface ColumnTypes {
4
- bool: boolean | null;
4
+ boolean: boolean | null;
5
5
  chip: {
6
6
  id: string | number;
7
7
  label: string;
package/components.d.ts CHANGED
@@ -1,6 +1,5 @@
1
1
  import * as dataGridStories from "./data-grid.stories";
2
2
  import * as dataGridCustomExampleStories from "./data-grid-custom-example.stories";
3
- import * as dataGridV2Stories from "./data-grid-v2.stories";
4
3
  import * as exportButtonStories from "./export-button/export-button.stories";
5
4
  import * as filterListStories from "./filter-list/filter-list.stories";
6
5
  import * as filtersStories from "./filters/filters.stories";
@@ -25,10 +24,6 @@ export declare const components: {
25
24
  readonly title: "DataGridCustomExample";
26
25
  readonly stories: typeof dataGridCustomExampleStories;
27
26
  };
28
- readonly "data-grid-v2": {
29
- readonly title: "DataGridV2";
30
- readonly stories: typeof dataGridV2Stories;
31
- };
32
27
  readonly "export-button": {
33
28
  readonly title: "ExportButton";
34
29
  readonly stories: typeof exportButtonStories;
package/components.js CHANGED
@@ -37,7 +37,6 @@ exports.components = void 0;
37
37
  // generated file
38
38
  const dataGridStories = __importStar(require("./data-grid.stories"));
39
39
  const dataGridCustomExampleStories = __importStar(require("./data-grid-custom-example.stories"));
40
- const dataGridV2Stories = __importStar(require("./data-grid-v2.stories"));
41
40
  const exportButtonStories = __importStar(require("./export-button/export-button.stories"));
42
41
  const filterListStories = __importStar(require("./filter-list/filter-list.stories"));
43
42
  const filtersStories = __importStar(require("./filters/filters.stories"));
@@ -62,10 +61,6 @@ exports.components = {
62
61
  title: "DataGridCustomExample",
63
62
  stories: dataGridCustomExampleStories
64
63
  },
65
- "data-grid-v2": {
66
- title: "DataGridV2",
67
- stories: dataGridV2Stories
68
- },
69
64
  "export-button": {
70
65
  title: "ExportButton",
71
66
  stories: exportButtonStories
package/data-grid.js CHANGED
@@ -23,19 +23,19 @@ const toolbar_customs_1 = require("./toolbar-customs");
23
23
  const toolbar_tabs_1 = require("./toolbar-tabs");
24
24
  const DefaultSelectedRowsToolbarActions = () => null;
25
25
  function DataGrid(props) {
26
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
26
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
27
27
  return (react_1.default.createElement(react_1.default.Fragment, null,
28
28
  react_1.default.createElement(root_1.DataGridRoot, { className: props.className },
29
29
  react_1.default.createElement(toolbar_1.DataGridToolbar, null,
30
- react_1.default.createElement(toolbar_tabs_1.DataGridToolbarTabs, { actions: props.actions, changeTabFilterBehavior: props.changeTabFilterBehavior, schema: props.schema, state: props.state, variant: props.tabsVariant }),
31
- react_1.default.createElement(toolbar_control_1.DataGridToolbarControl, { HiddenColumnsComponent: props.HiddenColumnsComponent, actions: props.actions, filterHandlers: (_a = props.filterHandlers) !== null && _a !== void 0 ? _a : filter_handler_1.defaultFilterHandlers, getCsvDownloadUrl: props.getCsvDownloadUrl, schema: props.schema, state: props.state }),
30
+ react_1.default.createElement(toolbar_tabs_1.DataGridToolbarTabs, { actions: props.actions, changeTabFilterBehavior: props.changeTabFilterBehavior, schema: props.schema, state: props.state, tabCounts: props.isWithTabCounts ? (_a = props.data) === null || _a === void 0 ? void 0 : _a.tabCounts : undefined, variant: props.tabsVariant }),
31
+ react_1.default.createElement(toolbar_control_1.DataGridToolbarControl, { HiddenColumnsComponent: props.HiddenColumnsComponent, actions: props.actions, filterHandlers: (_b = props.filterHandlers) !== null && _b !== void 0 ? _b : filter_handler_1.defaultFilterHandlers, fulltextInputPlaceholder: props.fulltextInputPlaceholder, getCsvDownloadUrl: props.getCsvDownloadUrl, schema: props.schema, state: props.state }),
32
32
  react_1.default.createElement(toolbar_customs_1.DataGridToolbarCustoms, { buttons: props.customActions })),
33
33
  react_1.default.createElement(linear_progress_1.DataGridLinearProgress, { isLoading: props.isLoading }),
34
- react_1.default.createElement(filter_list_1.DataGridFilterList, { actions: props.actions, filterHandlers: (_b = props.filterHandlers) !== null && _b !== void 0 ? _b : filter_handler_1.defaultFilterHandlers, schema: props.schema, state: props.state }),
35
- react_1.default.createElement(table_v2_1.DataGridTableV2, { NoRowsFallback: props.NoRowsFallback, actionCell: props.actionCell, actions: props.actions, bodyCells: (_c = props.bodyCells) !== null && _c !== void 0 ? _c : body_cell_1.BodyCells, data: (_e = (_d = props.data) === null || _d === void 0 ? void 0 : _d.result) !== null && _e !== void 0 ? _e : empty_array_1.EMPTY_ARRAY, error: props.error, headerRowHeight: props.headerRowHeight, isLoading: props.isLoading, isRowSelectDisabled: props.isRowSelectDisabled, isRowsSelectable: props.isRowsSelectable, keyExtractor: props.keyExtractor, reload: props.reload, rowAccent: props.rowAccent, rowClassName: props.rowClassName, rowHeight: props.rowHeight, schema: props.schema, state: props.state }),
34
+ react_1.default.createElement(filter_list_1.DataGridFilterList, { actions: props.actions, filterHandlers: (_c = props.filterHandlers) !== null && _c !== void 0 ? _c : filter_handler_1.defaultFilterHandlers, schema: props.schema, state: props.state }),
35
+ react_1.default.createElement(table_v2_1.DataGridTableV2, { NoRowsFallback: props.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, isRowSelectDisabled: props.isRowSelectDisabled, isRowsSelectable: props.isRowsSelectable, keyExtractor: props.keyExtractor, reload: props.reload, rowAccent: props.rowAccent, rowClassName: props.rowClassName, rowHeight: props.rowHeight, schema: props.schema, state: props.state }),
36
36
  react_1.default.createElement(footer_1.DataGridFooter, null,
37
37
  react_1.default.createElement(rows_per_page_select_1.DataGridRowsPerPageSelect, { actions: props.actions, state: props.state }),
38
- react_1.default.createElement(row_counts_1.DataGridRowCounts, { count: (_g = (_f = props.data) === null || _f === void 0 ? void 0 : _f.count) !== null && _g !== void 0 ? _g : 0, state: props.state, totalCount: (_j = (_h = props.data) === null || _h === void 0 ? void 0 : _h.totalCount) !== null && _j !== void 0 ? _j : 0 }),
39
- react_1.default.createElement(pagination_1.DataGridPagination, { actions: props.actions, count: (_l = (_k = props.data) === null || _k === void 0 ? void 0 : _k.count) !== null && _l !== void 0 ? _l : 0, showFirstButton: true, showLastButton: true, size: "sm", state: props.state }))),
40
- react_1.default.createElement(selected_rows_toolbar_1.DataGridSelectedRowsToolbar, { Actions: (_m = props.SelectedRowsToolbarActions) !== null && _m !== void 0 ? _m : DefaultSelectedRowsToolbarActions, actions: props.actions, reload: props.reload, state: props.state })));
38
+ 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 }),
39
+ 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 }))),
40
+ react_1.default.createElement(selected_rows_toolbar_1.DataGridSelectedRowsToolbar, { Actions: (_o = props.SelectedRowsToolbarActions) !== null && _o !== void 0 ? _o : DefaultSelectedRowsToolbarActions, actions: props.actions, reload: props.reload, state: props.state })));
41
41
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uxf/data-grid",
3
- "version": "11.102.0",
3
+ "version": "11.103.0",
4
4
  "description": "UXF DataGrid",
5
5
  "homepage": "https://gitlab.com/uxf-npm/data-grid#readme",
6
6
  "main": "index.js",
@@ -26,6 +26,8 @@ export type DataGridBaseProps<GridType extends BaseGridType> = {
26
26
  className?: string;
27
27
  customActions?: DataGridToolbarCustomsProps["buttons"];
28
28
  filterHandlers?: FilterHandlers;
29
+ fulltextInputPlaceholder?: string;
30
+ isWithTabCounts?: boolean;
29
31
  getCsvDownloadUrl?: CsvDownloadGetUrl;
30
32
  gridName?: string;
31
33
  headerRowHeight?: number;
package/data-grid-v2.d.ts DELETED
@@ -1,3 +0,0 @@
1
- import React from "react";
2
- import { BaseGridType, DataGridProps } from "./types";
3
- export declare function DataGridV2<GridType extends BaseGridType>(props: DataGridProps<GridType>): React.JSX.Element;
package/data-grid-v2.js DELETED
@@ -1,42 +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 toolbar_1 = require("./toolbar");
21
- const toolbar_control_1 = require("./toolbar-control");
22
- const toolbar_customs_1 = require("./toolbar-customs");
23
- const toolbar_tabs_1 = require("./toolbar-tabs");
24
- const DefaultSelectedRowsToolbarActions = () => null;
25
- // TODO remove (DataGrid is now identical with DataGridV2)
26
- function DataGridV2(props) {
27
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
28
- return (react_1.default.createElement(react_1.default.Fragment, null,
29
- react_1.default.createElement(root_1.DataGridRoot, { className: props.className },
30
- react_1.default.createElement(toolbar_1.DataGridToolbar, null,
31
- react_1.default.createElement(toolbar_tabs_1.DataGridToolbarTabs, { actions: props.actions, changeTabFilterBehavior: props.changeTabFilterBehavior, schema: props.schema, state: props.state, variant: props.tabsVariant }),
32
- react_1.default.createElement(toolbar_control_1.DataGridToolbarControl, { HiddenColumnsComponent: props.HiddenColumnsComponent, actions: props.actions, filterHandlers: (_a = props.filterHandlers) !== null && _a !== void 0 ? _a : filter_handler_1.defaultFilterHandlers, getCsvDownloadUrl: props.getCsvDownloadUrl, schema: props.schema, state: props.state }),
33
- react_1.default.createElement(toolbar_customs_1.DataGridToolbarCustoms, { buttons: props.customActions })),
34
- react_1.default.createElement(linear_progress_1.DataGridLinearProgress, { isLoading: props.isLoading }),
35
- react_1.default.createElement(filter_list_1.DataGridFilterList, { actions: props.actions, filterHandlers: (_b = props.filterHandlers) !== null && _b !== void 0 ? _b : filter_handler_1.defaultFilterHandlers, schema: props.schema, state: props.state }),
36
- react_1.default.createElement(table_v2_1.DataGridTableV2, { NoRowsFallback: props.NoRowsFallback, actionCell: props.actionCell, actions: props.actions, bodyCells: (_c = props.bodyCells) !== null && _c !== void 0 ? _c : body_cell_1.BodyCells, data: (_e = (_d = props.data) === null || _d === void 0 ? void 0 : _d.result) !== null && _e !== void 0 ? _e : empty_array_1.EMPTY_ARRAY, error: props.error, headerRowHeight: props.headerRowHeight, isLoading: props.isLoading, isRowSelectDisabled: props.isRowSelectDisabled, isRowsSelectable: props.isRowsSelectable, keyExtractor: props.keyExtractor, reload: props.reload, rowAccent: props.rowAccent, rowClassName: props.rowClassName, rowHeight: props.rowHeight, schema: props.schema, state: props.state }),
37
- react_1.default.createElement(footer_1.DataGridFooter, null,
38
- react_1.default.createElement(rows_per_page_select_1.DataGridRowsPerPageSelect, { actions: props.actions, state: props.state }),
39
- react_1.default.createElement(row_counts_1.DataGridRowCounts, { count: (_g = (_f = props.data) === null || _f === void 0 ? void 0 : _f.count) !== null && _g !== void 0 ? _g : 0, state: props.state, totalCount: (_j = (_h = props.data) === null || _h === void 0 ? void 0 : _h.totalCount) !== null && _j !== void 0 ? _j : 0 }),
40
- react_1.default.createElement(pagination_1.DataGridPagination, { actions: props.actions, count: (_l = (_k = props.data) === null || _k === void 0 ? void 0 : _k.count) !== null && _l !== void 0 ? _l : 0, showFirstButton: true, showLastButton: true, size: "sm", state: props.state }))),
41
- react_1.default.createElement(selected_rows_toolbar_1.DataGridSelectedRowsToolbar, { Actions: (_m = props.SelectedRowsToolbarActions) !== null && _m !== void 0 ? _m : DefaultSelectedRowsToolbarActions, actions: props.actions, reload: props.reload, state: props.state })));
42
- }
@@ -1,2 +0,0 @@
1
- import React from "react";
2
- export declare function Default(): React.JSX.Element;
@@ -1,117 +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 () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.Default = Default;
37
- const build_array_1 = require("@uxf/core/utils/build-array");
38
- const radio_group_1 = require("@uxf/ui/radio-group");
39
- const react_1 = __importStar(require("react"));
40
- const json_renderer_1 = require("./_story-utils/json-renderer");
41
- const loader_1 = require("./_story-utils/loader");
42
- const schema_1 = require("./_story-utils/schema");
43
- const data_grid_v2_1 = require("./data-grid-v2");
44
- const hidden_columns_1 = require("./hidden-columns");
45
- const action_cell_1 = require("./table-v2/components/action-cell");
46
- const use_data_grid_control_1 = require("./use-data-grid-control");
47
- const use_data_grid_fetching_1 = require("./use-data-grid-fetching");
48
- const local_storage_1 = require("./user-config-storage-adapters/local-storage");
49
- const merge_schema_with_config_1 = require("./utils/merge-schema-with-config");
50
- const actionCell = {
51
- width: 92,
52
- Component: () => {
53
- const actionCellActions = (0, build_array_1.buildArray)()
54
- .add({
55
- icon: "arrow-right",
56
- isIconButton: true,
57
- href: "https://www.uxf.cz",
58
- target: "_blank",
59
- })
60
- .add({
61
- icon: "file",
62
- label: "Download",
63
- onClick: console.log,
64
- })
65
- .add({
66
- icon: "cloud",
67
- label: "Reload",
68
- onClick: console.log,
69
- });
70
- return react_1.default.createElement(action_cell_1.ActionCell, { buttons: actionCellActions, visibleButtonsCount: 1 });
71
- },
72
- };
73
- const schemaWithFrontendConfig = (0, merge_schema_with_config_1.mergeSchemaWithConfig)(schema_1.schema, {
74
- perPage: 100,
75
- columns: {
76
- text: { width: 200 },
77
- tel: { minWidth: 160, width: 400 },
78
- mail: { minWidth: 200 },
79
- bool: { width: 120 },
80
- chips: { minWidth: 200 },
81
- toMany: { minWidth: 200 },
82
- money: { width: "2fr" },
83
- },
84
- filters: {
85
- text: { placeholder: "Custom placeholder ..." },
86
- },
87
- });
88
- const FILTER_BEHAVIOR_OPTIONS = [
89
- { id: "filtersPerTab", label: "filterPerTab" },
90
- { id: "sharedFiltersAndSearch", label: "sharedFiltersAndSearch" },
91
- { id: "sharedFiltersAndSearchAndSort", label: "sharedFiltersAndSearchAndSort" },
92
- ];
93
- const HIDDEN_COLUMNS_SORTABLE_OPTIONS = [
94
- { id: "default", label: "Vypnuto" },
95
- { id: "sortable", label: "Zapnuto" },
96
- ];
97
- function Default() {
98
- const [filterBehavior, setFilterBehavior] = (0, react_1.useState)("filtersPerTab");
99
- const [hiddenColumnsBehavior, setHiddenColumnsBehavior] = (0, react_1.useState)("default");
100
- const { middleware, useUserConfig } = (0, local_storage_1.useUserConfigLocalStorageAdapter)(schema_1.schema);
101
- const { state, actions } = (0, use_data_grid_control_1.useDataGridControl)({
102
- schema: schema_1.schema,
103
- middleware,
104
- });
105
- useUserConfig(actions);
106
- const { isLoading, error, data, reload } = (0, use_data_grid_fetching_1.useDataGridFetching)({
107
- loader: loader_1.loader,
108
- schema: schema_1.schema,
109
- state,
110
- });
111
- const clearLocalStorageUserConfig = (0, local_storage_1.useClearLocalStorageUserConfig)(schema_1.schema);
112
- return (react_1.default.createElement("div", { className: "p-10" },
113
- react_1.default.createElement(radio_group_1.RadioGroup, { label: "Chov\u00E1n\u00ED p\u0159ep\u00EDn\u00E1n\u00ED tab\u016F", name: "filterBehavior", onChange: (value) => setFilterBehavior(value), options: FILTER_BEHAVIOR_OPTIONS, value: filterBehavior, variant: "row" }),
114
- react_1.default.createElement(radio_group_1.RadioGroup, { className: "mb-2 mt-4", label: "\u0158azen\u00ED sloupc\u016F (Drag&Drop)", name: "hiddenColumnsSortable", onChange: (value) => setHiddenColumnsBehavior(value), options: HIDDEN_COLUMNS_SORTABLE_OPTIONS, value: hiddenColumnsBehavior, variant: "row" }),
115
- react_1.default.createElement(data_grid_v2_1.DataGridV2, { HiddenColumnsComponent: hiddenColumnsBehavior === "sortable" ? hidden_columns_1.DataGridHiddenColumnsSortable : undefined, actionCell: actionCell, actions: actions, changeTabFilterBehavior: filterBehavior !== null && filterBehavior !== void 0 ? filterBehavior : "filtersPerTab", customActions: [{ onClick: clearLocalStorageUserConfig, label: "Smazat user config" }], data: data, error: error, getCsvDownloadUrl: () => ``, isLoading: isLoading, isRowSelectDisabled: (row) => row.id === 6, isRowsSelectable: true, reload: reload, rowAccent: (row) => (row.id === 2 ? "success" : undefined), rowClassName: (row) => (row.id === 3 ? "some-custom-classname" : undefined), rowHeight: "auto", schema: schemaWithFrontendConfig, state: state, tabsVariant: "segmented" }),
116
- react_1.default.createElement(json_renderer_1.JsonRenderer, { value: state })));
117
- }