@addev-be/ui 0.21.3 → 0.21.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/Icons.d.ts +11 -1
- package/dist/Icons.js +22 -1
- package/dist/components/auth/LoginForm.js +1 -1
- package/dist/components/auth/PasswordRecoveryForm.js +1 -1
- package/dist/components/auth/PasswordResetForm.js +1 -1
- package/dist/components/data/DataGrid/DataGridCell.d.ts +1 -1
- package/dist/components/data/DataGrid/DataGridCell.js +9 -9
- package/dist/components/data/DataGrid/DataGridColumnsModal/helpers.d.ts +2 -2
- package/dist/components/data/DataGrid/DataGridColumnsModal/helpers.js +1 -7
- package/dist/components/data/DataGrid/DataGridColumnsModal/hooks.js +3 -3
- package/dist/components/data/DataGrid/DataGridColumnsModal/index.js +16 -21
- package/dist/components/data/DataGrid/DataGridColumnsModal/styles.js +2 -2
- package/dist/components/data/DataGrid/DataGridEditableCell/CheckboxEditableCell.d.ts +2 -0
- package/dist/components/data/DataGrid/DataGridEditableCell/CheckboxEditableCell.js +23 -0
- package/dist/components/data/DataGrid/DataGridEditableCell/DateEditableCell.d.ts +2 -0
- package/dist/components/data/DataGrid/DataGridEditableCell/DateEditableCell.js +27 -0
- package/dist/components/data/DataGrid/DataGridEditableCell/NumberEditableCell.d.ts +7 -0
- package/dist/components/data/DataGrid/DataGridEditableCell/NumberEditableCell.js +34 -0
- package/dist/components/data/DataGrid/DataGridEditableCell/TextEditableCell.d.ts +2 -0
- package/dist/components/data/DataGrid/DataGridEditableCell/TextEditableCell.js +23 -0
- package/dist/components/data/DataGrid/DataGridEditableCell/index.d.ts +2 -0
- package/dist/components/data/DataGrid/DataGridEditableCell/index.js +91 -0
- package/dist/components/data/DataGrid/DataGridEditableCell/styles.d.ts +3 -0
- package/dist/components/data/DataGrid/DataGridEditableCell/styles.js +17 -0
- package/dist/components/data/DataGrid/DataGridEditableCell/types.d.ts +11 -0
- package/dist/components/data/DataGrid/DataGridEditableCell/types.js +3 -0
- package/dist/components/data/DataGrid/DataGridFilterMenu/FilterValuesScroller.js +17 -2
- package/dist/components/data/DataGrid/DataGridFilterMenu/hooks.d.ts +4 -3
- package/dist/components/data/DataGrid/DataGridFilterMenu/hooks.js +11 -12
- package/dist/components/data/DataGrid/DataGridFilterMenu/index.d.ts +5 -4
- package/dist/components/data/DataGrid/DataGridFilterMenu/index.js +44 -41
- package/dist/components/data/DataGrid/DataGridFilterMenu/styles.js +5 -5
- package/dist/components/data/DataGrid/DataGridFooter.js +5 -7
- package/dist/components/data/DataGrid/DataGridHeader.js +3 -19
- package/dist/components/data/DataGrid/DataGridHeaderCell.d.ts +1 -1
- package/dist/components/data/DataGrid/DataGridHeaderCell.js +11 -24
- package/dist/components/data/DataGrid/DataGridRowTemplate.d.ts +1 -1
- package/dist/components/data/DataGrid/DataGridRowTemplate.js +10 -9
- package/dist/components/data/DataGrid/DataGridToolbar.d.ts +4 -0
- package/dist/components/data/DataGrid/DataGridToolbar.js +131 -0
- package/dist/components/data/DataGrid/FilterModalContent/index.js +1 -2
- package/dist/components/data/DataGrid/constants.d.ts +6 -0
- package/dist/components/data/DataGrid/constants.js +9 -0
- package/dist/components/data/DataGrid/helpers/columns.d.ts +13 -12
- package/dist/components/data/DataGrid/helpers/columns.js +100 -130
- package/dist/components/data/DataGrid/hooks/index.d.ts +3 -3
- package/dist/components/data/DataGrid/hooks/index.js +8 -12
- package/dist/components/data/DataGrid/hooks/useDataGrid.js +73 -24
- package/dist/components/data/DataGrid/hooks/useDataGridChangedRows.d.ts +9 -0
- package/dist/components/data/DataGrid/hooks/useDataGridChangedRows.js +91 -0
- package/dist/components/data/DataGrid/hooks/useDataGridCopy.js +25 -30
- package/dist/components/data/DataGrid/hooks/useRefreshModal.d.ts +5 -0
- package/dist/components/data/DataGrid/hooks/useRefreshModal.js +25 -0
- package/dist/components/data/DataGrid/index.d.ts +41 -3
- package/dist/components/data/DataGrid/index.js +32 -5
- package/dist/components/data/DataGrid/styles.d.ts +16 -8
- package/dist/components/data/DataGrid/styles.js +65 -34
- package/dist/components/data/DataGrid/types.d.ts +91 -21
- package/dist/components/data/SqlRequestDataGrid/SqlRequestForeignListEditableCell.d.ts +2 -0
- package/dist/components/data/SqlRequestDataGrid/SqlRequestForeignListEditableCell.js +19 -0
- package/dist/components/data/SqlRequestDataGrid/helpers/columns.d.ts +16 -17
- package/dist/components/data/SqlRequestDataGrid/helpers/columns.js +235 -84
- package/dist/components/data/SqlRequestDataGrid/index.d.ts +2 -2
- package/dist/components/data/SqlRequestDataGrid/index.js +99 -74
- package/dist/components/data/SqlRequestDataGrid/styles.d.ts +2 -0
- package/dist/components/data/SqlRequestDataGrid/styles.js +14 -0
- package/dist/components/data/SqlRequestDataGrid/types.d.ts +13 -3
- package/dist/components/data/SqlRequestDataGrid/types.js +1 -0
- package/dist/components/data/SqlRequestForeignList/index.d.ts +4 -0
- package/dist/components/data/SqlRequestForeignList/index.js +132 -0
- package/dist/components/data/SqlRequestForeignList/styles.d.ts +9 -0
- package/dist/components/data/SqlRequestForeignList/styles.js +22 -0
- package/dist/components/data/SqlRequestForeignList/types.d.ts +22 -0
- package/dist/components/data/SqlRequestForeignList/types.js +2 -0
- package/dist/components/data/SqlRequestGrid/filters/FiltersSidebar.d.ts +10 -0
- package/dist/components/data/SqlRequestGrid/filters/FiltersSidebar.js +50 -0
- package/dist/components/data/SqlRequestGrid/filters/styles.d.ts +4 -0
- package/dist/components/data/SqlRequestGrid/filters/styles.js +17 -0
- package/dist/components/data/SqlRequestGrid/index.d.ts +1 -1
- package/dist/components/data/SqlRequestGrid/index.js +139 -50
- package/dist/components/data/SqlRequestGrid/styles.d.ts +0 -12
- package/dist/components/data/SqlRequestGrid/styles.js +4 -20
- package/dist/components/data/SqlRequestGrid/types.d.ts +14 -4
- package/dist/components/data/SqlRequestGrid/types.js +0 -1
- package/dist/components/data/VirtualScroller/index.d.ts +4 -3
- package/dist/components/data/VirtualScroller/index.js +15 -6
- package/dist/components/data/VirtualScroller/styles.d.ts +4 -2
- package/dist/components/data/VirtualScroller/styles.js +9 -7
- package/dist/components/data/VirtualScroller/types.js +0 -1
- package/dist/components/data/index.d.ts +1 -2
- package/dist/components/data/index.js +1 -2
- package/dist/components/forms/AutoTextArea.d.ts +10 -0
- package/dist/components/forms/AutoTextArea.js +41 -0
- package/dist/components/forms/Button.d.ts +11 -4
- package/dist/components/forms/Button.js +15 -9
- package/dist/components/forms/Form/Checkbox.d.ts +3 -0
- package/dist/components/forms/Form/Checkbox.js +33 -0
- package/dist/components/forms/Form/FormGroup.d.ts +11 -0
- package/dist/components/forms/Form/FormGroup.js +10 -0
- package/dist/components/forms/Form/Input.d.ts +3 -0
- package/dist/components/forms/Form/Input.js +33 -0
- package/dist/components/forms/Form/Row.d.ts +9 -0
- package/dist/components/forms/Form/Row.js +10 -0
- package/dist/components/forms/Form/Select.d.ts +13 -0
- package/dist/components/forms/Form/Select.js +51 -0
- package/dist/components/forms/Form/TextArea.d.ts +4 -0
- package/dist/components/forms/Form/TextArea.js +34 -0
- package/dist/components/forms/Form/index.d.ts +75 -0
- package/dist/components/forms/Form/index.js +29 -0
- package/dist/components/forms/Form/styles.d.ts +19 -0
- package/dist/components/forms/Form/styles.js +49 -0
- package/dist/components/forms/IconButton.d.ts +9 -4
- package/dist/components/forms/IconButton.js +15 -15
- package/dist/components/forms/NumberInput.d.ts +9 -0
- package/dist/components/forms/NumberInput.js +40 -0
- package/dist/components/forms/Select.d.ts +5 -6
- package/dist/components/forms/Select.js +2 -5
- package/dist/components/forms/index.d.ts +4 -0
- package/dist/components/forms/index.js +4 -0
- package/dist/components/forms/styles.d.ts +17 -3
- package/dist/components/forms/styles.js +8 -7
- package/dist/components/layout/Columns.d.ts +7 -0
- package/dist/components/layout/Columns.js +21 -0
- package/dist/components/layout/Dropdown/index.d.ts +1 -0
- package/dist/components/layout/Dropdown/index.js +24 -3
- package/dist/components/layout/Dropdown/styles.js +1 -1
- package/dist/components/layout/Flexbox.d.ts +11 -0
- package/dist/components/layout/Flexbox.js +26 -0
- package/dist/components/layout/Grid/index.d.ts +6 -0
- package/dist/components/layout/Grid/index.js +6 -0
- package/dist/components/layout/Grid/styles.d.ts +14 -0
- package/dist/components/layout/Grid/styles.js +29 -0
- package/dist/components/layout/Masonry/index.d.ts +3 -0
- package/dist/components/layout/Masonry/index.js +20 -0
- package/dist/components/layout/Masonry/styles.d.ts +5 -0
- package/dist/components/layout/Masonry/styles.js +17 -0
- package/dist/components/layout/Modal/styles.js +4 -4
- package/dist/components/layout/index.d.ts +5 -1
- package/dist/components/layout/index.js +5 -1
- package/dist/components/search/HighlightedText.js +9 -7
- package/dist/components/search/QuickSearchBar.d.ts +6 -2
- package/dist/components/search/QuickSearchBar.js +7 -8
- package/dist/components/search/styles.js +5 -5
- package/dist/components/search/types.d.ts +3 -0
- package/dist/components/ui/Avatar/index.d.ts +10 -0
- package/dist/components/ui/Avatar/index.js +52 -0
- package/dist/components/ui/Avatar/styles.d.ts +4 -0
- package/dist/components/ui/Avatar/styles.js +43 -0
- package/dist/components/ui/Card/styles.js +3 -3
- package/dist/components/ui/ContextMenu/styles.js +5 -5
- package/dist/components/ui/Ellipsis.d.ts +13 -0
- package/dist/components/ui/Ellipsis.js +28 -0
- package/dist/components/ui/Label.d.ts +10 -0
- package/dist/components/ui/Label.js +74 -0
- package/dist/components/ui/Message/index.js +1 -1
- package/dist/components/ui/TabsView/TabsList.d.ts +10 -0
- package/dist/components/ui/TabsView/TabsList.js +40 -0
- package/dist/components/ui/TabsView/TabsView.d.ts +9 -0
- package/dist/components/ui/TabsView/TabsView.js +17 -0
- package/dist/components/ui/TabsView/index.d.ts +3 -0
- package/dist/components/ui/TabsView/index.js +19 -0
- package/dist/components/ui/TabsView/styles.d.ts +11 -0
- package/dist/components/ui/TabsView/styles.js +47 -0
- package/dist/components/ui/TabsView/types.d.ts +10 -0
- package/dist/components/ui/TabsView/types.js +2 -0
- package/dist/components/ui/index.d.ts +4 -0
- package/dist/components/ui/index.js +4 -0
- package/dist/helpers/components.d.ts +3 -0
- package/dist/helpers/components.js +15 -0
- package/dist/helpers/index.d.ts +2 -0
- package/dist/helpers/index.js +2 -0
- package/dist/helpers/numbers.d.ts +3 -0
- package/dist/helpers/numbers.js +33 -1
- package/dist/helpers/responsive.d.ts +37 -0
- package/dist/helpers/responsive.js +57 -0
- package/dist/helpers/styled/index.d.ts +1 -0
- package/dist/helpers/styled/index.js +17 -0
- package/dist/helpers/styled/space.d.ts +39 -0
- package/dist/helpers/styled/space.js +90 -0
- package/dist/hooks/index.d.ts +5 -0
- package/dist/hooks/index.js +5 -0
- package/dist/hooks/useContainerMediaQuery.d.ts +17 -0
- package/dist/hooks/useContainerMediaQuery.js +10 -0
- package/dist/hooks/useMediaQuery.d.ts +17 -0
- package/dist/hooks/useMediaQuery.js +11 -0
- package/dist/hooks/useMediaQueryForWidth.d.ts +17 -0
- package/dist/hooks/useMediaQueryForWidth.js +26 -0
- package/dist/hooks/useMutableState.d.ts +2 -0
- package/dist/hooks/useMutableState.js +14 -0
- package/dist/hooks/useShowArchived.d.ts +6 -0
- package/dist/hooks/useShowArchived.js +21 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/providers/AuthenticationProvider/index.d.ts +1 -0
- package/dist/providers/AuthenticationProvider/index.js +57 -15
- package/dist/providers/PortalsProvider/styles.js +1 -1
- package/dist/providers/ThemeProvider/ThemeProvider.d.ts +1 -0
- package/dist/providers/ThemeProvider/ThemeProvider.js +11 -9
- package/dist/providers/ThemeProvider/defaultTheme.d.ts +1 -0
- package/dist/providers/ThemeProvider/defaultTheme.js +33 -1
- package/dist/providers/ThemeProvider/helpers.d.ts +12 -0
- package/dist/providers/ThemeProvider/helpers.js +65 -0
- package/dist/providers/ThemeProvider/index.d.ts +1 -0
- package/dist/providers/ThemeProvider/index.js +1 -0
- package/dist/providers/ThemeProvider/types.d.ts +4 -2
- package/dist/providers/TrackingProvider/hooks.d.ts +1 -0
- package/dist/providers/TrackingProvider/hooks.js +15 -0
- package/dist/providers/TrackingProvider/index.d.ts +8 -0
- package/dist/providers/TrackingProvider/index.js +41 -0
- package/dist/providers/UiProviders/index.d.ts +4 -1
- package/dist/providers/UiProviders/index.js +3 -2
- package/dist/providers/UiProviders/styles.js +1 -1
- package/dist/providers/index.d.ts +2 -0
- package/dist/providers/index.js +2 -0
- package/dist/services/WebSocketService.d.ts +8 -0
- package/dist/services/WebSocketService.js +34 -2
- package/dist/services/globalSearch.d.ts +6 -2
- package/dist/services/hooks.d.ts +10 -0
- package/dist/services/hooks.js +89 -2
- package/dist/services/index.d.ts +7 -0
- package/dist/services/index.js +20 -0
- package/dist/services/requests/generic.d.ts +29 -0
- package/dist/services/requests/generic.js +29 -0
- package/dist/services/requests/tracking.d.ts +18 -0
- package/dist/services/requests/tracking.js +8 -0
- package/dist/services/smartQueries.d.ts +51 -0
- package/dist/services/smartQueries.js +10 -0
- package/dist/services/smartRequests.d.ts +0 -0
- package/dist/services/smartRequests.js +1 -0
- package/dist/services/types/generic.d.ts +44 -0
- package/dist/services/types/generic.js +79 -0
- package/dist/services/types/tracking.d.ts +24 -0
- package/dist/services/types/tracking.js +47 -0
- package/dist/services/updateSqlRequests.d.ts +24 -0
- package/dist/services/updateSqlRequests.js +6 -0
- package/eslint.config.js +1 -1
- package/package.json +2 -2
- package/src/components/data/DataGrid/DataGridEditableCell/index.tsx +5 -5
- package/src/components/data/DataGrid/DataGridEditableCell/types.ts +3 -3
- package/src/components/data/DataGrid/DataGridFilterMenu/FilterValuesScroller.tsx +0 -2
- package/src/components/data/DataGrid/DataGridFilterMenu/index.tsx +0 -1
- package/src/components/data/DataGrid/DataGridFooter.tsx +0 -3
- package/src/components/data/DataGrid/DataGridRowTemplate.tsx +2 -1
- package/src/components/data/DataGrid/FilterModalContent/index.tsx +0 -1
- package/src/components/data/DataGrid/helpers/columns.tsx +29 -24
- package/src/components/data/SqlRequestDataGrid/index.tsx +14 -8
- package/src/components/data/SqlRequestForeignList/index.tsx +20 -22
- package/src/components/data/SqlRequestForeignList/types.ts +0 -2
- package/src/components/data/SqlRequestGrid/filters/FiltersSidebar.tsx +0 -2
- package/src/components/data/SqlRequestGrid/types.ts +0 -2
- package/src/components/data/VirtualScroller/types.ts +0 -2
- package/src/components/forms/Form/Select.tsx +3 -3
- package/src/components/forms/IconButton.tsx +19 -9
- package/src/components/forms/Select.tsx +0 -1
- package/src/components/search/QuickSearchBar.tsx +0 -1
- package/src/components/ui/Label.tsx +18 -9
- package/src/helpers/components.ts +23 -0
- package/src/services/updateSqlRequests.ts +0 -2
- package/src/typings.d.ts +0 -2
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
/* eslint-disable @typescript-eslint/no-unnecessary-type-constraint */
|
|
3
2
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
4
3
|
var __assign = (this && this.__assign) || function () {
|
|
5
4
|
__assign = Object.assign || function(t) {
|
|
@@ -59,18 +58,24 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
|
59
58
|
};
|
|
60
59
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
61
60
|
exports.useDataGrid = void 0;
|
|
61
|
+
var constants_1 = require("../constants");
|
|
62
62
|
var react_1 = require("react");
|
|
63
63
|
var _1 = require(".");
|
|
64
64
|
var helpers_1 = require("../helpers");
|
|
65
|
-
var
|
|
65
|
+
var useDataGridChangedRows_1 = require("./useDataGridChangedRows");
|
|
66
66
|
var useDataGridSettings_1 = require("./useDataGridSettings");
|
|
67
67
|
var useDataGrid = function (props, override) {
|
|
68
|
-
var _a;
|
|
69
|
-
var
|
|
70
|
-
var
|
|
68
|
+
var _a, _b, _c, _d;
|
|
69
|
+
var onFiltersChanged = props.onFiltersChanged, onSortsChanged = props.onSortsChanged, loadCopyRows = props.loadCopyRows, onSelectionChange = props.onSelectionChange, onSelectedRowsChanged = props.onSelectedRowsChanged, selectable = props.selectable, initialSorts = props.initialSorts;
|
|
70
|
+
var _e = (0, react_1.useState)(props.columns), columns = _e[0], setColumns = _e[1];
|
|
71
71
|
var visibleColumns = (0, _1.useSortedColumns)(columns);
|
|
72
|
+
var _f = (0, react_1.useState)((_a = override === null || override === void 0 ? void 0 : override.rows) !== null && _a !== void 0 ? _a : props.rows), innerRows = _f[0], setInnerRows = _f[1];
|
|
73
|
+
var _g = [
|
|
74
|
+
(_b = override === null || override === void 0 ? void 0 : override.rows) !== null && _b !== void 0 ? _b : innerRows,
|
|
75
|
+
(_c = override === null || override === void 0 ? void 0 : override.setRows) !== null && _c !== void 0 ? _c : setInnerRows,
|
|
76
|
+
], rows = _g[0], setRows = _g[1];
|
|
72
77
|
/** SETTINGS */
|
|
73
|
-
var
|
|
78
|
+
var _h = (0, useDataGridSettings_1.useDataGridSettings)(props.name), settings = _h.settings, setSettings = _h.setSettings, saveSettings = _h.saveSettings;
|
|
74
79
|
var setColumnWidth = (0, react_1.useCallback)(function (key, width) {
|
|
75
80
|
setSettings(function (prev) {
|
|
76
81
|
var _a;
|
|
@@ -78,15 +83,11 @@ var useDataGrid = function (props, override) {
|
|
|
78
83
|
});
|
|
79
84
|
}, [setSettings]);
|
|
80
85
|
var gridTemplateColumns = (0, react_1.useMemo)(function () {
|
|
81
|
-
return __spreadArray(__spreadArray([], (selectable ? [
|
|
82
|
-
var _b;
|
|
83
|
-
var col = _a[1];
|
|
84
|
-
return "".concat((_b = col.width) !== null && _b !== void 0 ? _b : 150, "px");
|
|
85
|
-
}), true).join(' ');
|
|
86
|
+
return __spreadArray(__spreadArray([], (selectable ? [constants_1.SELECTION_CELL_WIDTH] : []), true), visibleColumns.map(function (col) { var _a; return "".concat((_a = col.width) !== null && _a !== void 0 ? _a : constants_1.DEFAULT_COLUMN_WIDTH, "px"); }), true).join(' ');
|
|
86
87
|
}, [selectable, visibleColumns]);
|
|
87
88
|
// Update columns when settings change
|
|
88
89
|
(0, react_1.useEffect)(function () {
|
|
89
|
-
setColumns(function (prev) { return (
|
|
90
|
+
setColumns(function (prev) { return prev.map(function (col) { return (__assign(__assign({}, col), settings[col.key])); }); });
|
|
90
91
|
}, [settings]);
|
|
91
92
|
/** ROWS SELECTION **/
|
|
92
93
|
var rowKeyGetter = (0, react_1.useMemo)(function () {
|
|
@@ -94,7 +95,7 @@ var useDataGrid = function (props, override) {
|
|
|
94
95
|
? props.rowKey
|
|
95
96
|
: function (row) { return String(row === null || row === void 0 ? void 0 : row[props.rowKey]); };
|
|
96
97
|
}, [props.rowKey]);
|
|
97
|
-
var
|
|
98
|
+
var _j = (0, react_1.useState)([]), selectedKeys = _j[0], setSelectedKeys = _j[1];
|
|
98
99
|
var selectedRows = (0, react_1.useMemo)(function () { return props.rows.filter(function (row) { return selectedKeys.includes(rowKeyGetter(row)); }); }, [props.rows, rowKeyGetter, selectedKeys]);
|
|
99
100
|
(0, react_1.useEffect)(function () {
|
|
100
101
|
onSelectionChange === null || onSelectionChange === void 0 ? void 0 : onSelectionChange(selectedKeys);
|
|
@@ -111,8 +112,8 @@ var useDataGrid = function (props, override) {
|
|
|
111
112
|
}
|
|
112
113
|
}, [selectedKeys, setSelectedKeys]);
|
|
113
114
|
/** ROWS FILTERING **/
|
|
114
|
-
var
|
|
115
|
-
var
|
|
115
|
+
var _k = (0, react_1.useState)({}), filters = _k[0], setFilters = _k[1];
|
|
116
|
+
var _l = (0, react_1.useState)(rows !== null && rows !== void 0 ? rows : []), filteredRows = _l[0], setFilteredRows = _l[1];
|
|
116
117
|
(0, react_1.useEffect)(function () {
|
|
117
118
|
onFiltersChanged === null || onFiltersChanged === void 0 ? void 0 : onFiltersChanged(filters);
|
|
118
119
|
}, [filters, onFiltersChanged]);
|
|
@@ -126,17 +127,21 @@ var useDataGrid = function (props, override) {
|
|
|
126
127
|
setFilteredRows(filteredRows !== null && filteredRows !== void 0 ? filteredRows : []);
|
|
127
128
|
}, [filters, props.filter, rows]);
|
|
128
129
|
/** CELL EDITING */
|
|
129
|
-
var
|
|
130
|
+
var _m = (0, react_1.useState)([-1, -1]), editingCell = _m[0], setEditingCell = _m[1];
|
|
131
|
+
var onRowAdded = (0, react_1.useCallback)(function (row) {
|
|
132
|
+
setRows(function (prev) { return __spreadArray([row], prev, true); });
|
|
133
|
+
}, [setRows]);
|
|
134
|
+
var _o = (0, useDataGridChangedRows_1.useDataGridChangedRows)(rowKeyGetter, onRowAdded), addedRows = _o.addedRows, updatedRows = _o.updatedRows, editRow = _o.editRow, addRow = _o.addRow, addRows = _o.addRows, updateRow = _o.updateRow, clearChangedRows = _o.clearChangedRows;
|
|
130
135
|
/** ROWS SORTING **/
|
|
131
|
-
var
|
|
132
|
-
var
|
|
136
|
+
var _p = (0, react_1.useState)(initialSorts !== null && initialSorts !== void 0 ? initialSorts : {}), sorts = _p[0], setSorts = _p[1];
|
|
137
|
+
var _q = (0, react_1.useState)(rows), sortedRows = _q[0], setSortedRows = _q[1];
|
|
133
138
|
(0, react_1.useEffect)(function () {
|
|
134
139
|
var sortedRows = __spreadArray([], filteredRows, true);
|
|
135
140
|
if (props.sort !== false) {
|
|
136
141
|
Object.entries(sorts).forEach(function (_a) {
|
|
137
142
|
var sortKey = _a[0], sort = _a[1];
|
|
138
143
|
// Get the sort column and make sure it exists and is sortable
|
|
139
|
-
var sortColumn = columns
|
|
144
|
+
var sortColumn = columns.find(function (col) { return col.key === sortKey; });
|
|
140
145
|
if (!sortColumn || typeof sortColumn.sortGetter !== 'function')
|
|
141
146
|
return;
|
|
142
147
|
// Sort the rows using the sortGetter function of the column
|
|
@@ -157,12 +162,33 @@ var useDataGrid = function (props, override) {
|
|
|
157
162
|
}, [sorts, onSortsChanged]);
|
|
158
163
|
/** VIRTUAL SCROLLING */
|
|
159
164
|
var scrollableRef = (0, react_1.useRef)(null);
|
|
165
|
+
/** RESIZING */
|
|
166
|
+
var _r = (0, react_1.useState)(null), resizingColumnKey = _r[0], setResizingColumnKey = _r[1];
|
|
167
|
+
var resizingOffset = (0, react_1.useRef)(0);
|
|
168
|
+
var startResizing = (0, react_1.useCallback)(function (e, columnKey) {
|
|
169
|
+
var resizingColumn = columns.find(function (col) { return col.key === columnKey; });
|
|
170
|
+
if (resizingColumn) {
|
|
171
|
+
resizingOffset.current =
|
|
172
|
+
e.screenX - ((resizingColumn === null || resizingColumn === void 0 ? void 0 : resizingColumn.width) || constants_1.DEFAULT_COLUMN_WIDTH);
|
|
173
|
+
setResizingColumnKey(columnKey);
|
|
174
|
+
}
|
|
175
|
+
}, [columns]);
|
|
176
|
+
var moveResizing = (0, react_1.useCallback)(function (e) {
|
|
177
|
+
if (resizingColumnKey) {
|
|
178
|
+
var newWidth = Math.max(86, e.screenX - resizingOffset.current);
|
|
179
|
+
setColumnWidth(resizingColumnKey, newWidth);
|
|
180
|
+
}
|
|
181
|
+
}, [resizingColumnKey, setColumnWidth]);
|
|
182
|
+
var endResizing = (0, react_1.useCallback)(function () {
|
|
183
|
+
setResizingColumnKey(null);
|
|
184
|
+
saveSettings();
|
|
185
|
+
}, [saveSettings]);
|
|
160
186
|
/** FOOTERS */
|
|
161
|
-
var
|
|
187
|
+
var _s = (0, react_1.useState)((_d = props.initialFooters) !== null && _d !== void 0 ? _d : {}), footers = _s[0], setFooters = _s[1];
|
|
162
188
|
var footerFunctions = (0, react_1.useMemo)(function () {
|
|
163
189
|
return Object.entries(footers).reduce(function (acc, _a) {
|
|
164
190
|
var columnKey = _a[0], footerKey = _a[1];
|
|
165
|
-
var column = columns
|
|
191
|
+
var column = columns.find(function (col) { return col.key === columnKey; });
|
|
166
192
|
if (!column) {
|
|
167
193
|
return acc;
|
|
168
194
|
}
|
|
@@ -184,7 +210,7 @@ var useDataGrid = function (props, override) {
|
|
|
184
210
|
footerFunctions: footerFunctions,
|
|
185
211
|
loadCopyRows: loadCopyRows,
|
|
186
212
|
}).copyTable;
|
|
187
|
-
var contextValue = (0, react_1.useMemo)(function () { return (__assign(__assign(__assign({}, props), { columns: columns, visibleColumns: visibleColumns, sortedRows: sortedRows, selectedRows: selectedRows, selectedKeys: selectedKeys, setSelectedKeys: setSelectedKeys, sorts: sorts, setSorts: setSorts, filters: filters, setFilters: setFilters, editingCell: editingCell, setEditingCell: setEditingCell, copyTable: copyTable, setColumnWidth: setColumnWidth, settings: settings, setSettings: setSettings, saveSettings: saveSettings, scrollableRef: scrollableRef, length: length, rowKeyGetter: rowKeyGetter, gridTemplateColumns: gridTemplateColumns, footers: footers, setFooters: setFooters, footerFunctions: footerFunctions, toggleSelection: toggleSelection }), override)); }, [
|
|
213
|
+
var contextValue = (0, react_1.useMemo)(function () { return (__assign(__assign(__assign({}, props), { columns: columns, visibleColumns: visibleColumns, sortedRows: sortedRows, selectedRows: selectedRows, selectedKeys: selectedKeys, setSelectedKeys: setSelectedKeys, sorts: sorts, setSorts: setSorts, filters: filters, setFilters: setFilters, editingCell: editingCell, setEditingCell: setEditingCell, copyTable: copyTable, setColumnWidth: setColumnWidth, settings: settings, setSettings: setSettings, saveSettings: saveSettings, scrollableRef: scrollableRef, length: length, rowKeyGetter: rowKeyGetter, gridTemplateColumns: gridTemplateColumns, footers: footers, setFooters: setFooters, footerFunctions: footerFunctions, toggleSelection: toggleSelection, resizingColumnKey: resizingColumnKey, startResizing: startResizing, moveResizing: moveResizing, endResizing: endResizing, addedRows: addedRows, updatedRows: updatedRows, editRow: editRow, addRow: addRow, addRows: addRows, updateRow: updateRow, clearChangedRows: clearChangedRows, setRows: setRows }), override)); }, [
|
|
188
214
|
props,
|
|
189
215
|
columns,
|
|
190
216
|
visibleColumns,
|
|
@@ -199,18 +225,29 @@ var useDataGrid = function (props, override) {
|
|
|
199
225
|
settings,
|
|
200
226
|
setSettings,
|
|
201
227
|
saveSettings,
|
|
202
|
-
scrollableRef,
|
|
203
228
|
rowKeyGetter,
|
|
204
229
|
gridTemplateColumns,
|
|
205
230
|
footers,
|
|
206
231
|
footerFunctions,
|
|
207
232
|
toggleSelection,
|
|
233
|
+
resizingColumnKey,
|
|
234
|
+
startResizing,
|
|
235
|
+
moveResizing,
|
|
236
|
+
endResizing,
|
|
237
|
+
addedRows,
|
|
238
|
+
updatedRows,
|
|
239
|
+
editRow,
|
|
240
|
+
addRow,
|
|
241
|
+
addRows,
|
|
242
|
+
updateRow,
|
|
243
|
+
clearChangedRows,
|
|
244
|
+
setRows,
|
|
208
245
|
override,
|
|
209
246
|
]);
|
|
210
247
|
var context = (0, react_1.useMemo)(function () {
|
|
211
248
|
return (0, react_1.createContext)({
|
|
212
249
|
rows: [],
|
|
213
|
-
columns:
|
|
250
|
+
columns: [],
|
|
214
251
|
visibleColumns: [],
|
|
215
252
|
rowKey: '',
|
|
216
253
|
rowKeyGetter: function () { return ''; },
|
|
@@ -234,6 +271,18 @@ var useDataGrid = function (props, override) {
|
|
|
234
271
|
footers: {},
|
|
235
272
|
setFooters: function () { },
|
|
236
273
|
toggleSelection: function () { },
|
|
274
|
+
resizingColumnKey: null,
|
|
275
|
+
startResizing: function () { },
|
|
276
|
+
moveResizing: function () { },
|
|
277
|
+
endResizing: function () { },
|
|
278
|
+
addedRows: [],
|
|
279
|
+
updatedRows: [],
|
|
280
|
+
setRows: function () { },
|
|
281
|
+
editRow: function () { },
|
|
282
|
+
addRow: function () { },
|
|
283
|
+
addRows: function () { },
|
|
284
|
+
updateRow: function () { },
|
|
285
|
+
clearChangedRows: function () { },
|
|
237
286
|
});
|
|
238
287
|
}, []);
|
|
239
288
|
return (0, react_1.useMemo)(function () { return [contextValue, context]; }, [context, contextValue]);
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const useDataGridChangedRows: <R>(rowKeyGetter: (row: Partial<R>) => string, onRowAdded: (row: R) => void) => {
|
|
2
|
+
addedRows: Partial<R>[];
|
|
3
|
+
updatedRows: Partial<R>[];
|
|
4
|
+
editRow: (row: Partial<R>) => void;
|
|
5
|
+
addRow: (row: Partial<R>) => void;
|
|
6
|
+
addRows: (rows: R[]) => void;
|
|
7
|
+
updateRow: (row: Partial<R>) => void;
|
|
8
|
+
clearChangedRows: (keys?: string[]) => void;
|
|
9
|
+
};
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
14
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
15
|
+
if (ar || !(i in from)) {
|
|
16
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
17
|
+
ar[i] = from[i];
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
21
|
+
};
|
|
22
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
+
exports.useDataGridChangedRows = void 0;
|
|
24
|
+
var react_1 = require("react");
|
|
25
|
+
var useDataGridChangedRows = function (rowKeyGetter, onRowAdded) {
|
|
26
|
+
var _a = (0, react_1.useState)([]), addedRows = _a[0], setAddedRows = _a[1];
|
|
27
|
+
var _b = (0, react_1.useState)([]), updatedRows = _b[0], setUpdatedRows = _b[1];
|
|
28
|
+
var addRow = (0, react_1.useCallback)(function (row) {
|
|
29
|
+
setAddedRows(function (prev) { return __spreadArray(__spreadArray([], prev, true), [row], false); });
|
|
30
|
+
onRowAdded(row);
|
|
31
|
+
}, [onRowAdded]);
|
|
32
|
+
var addRows = (0, react_1.useCallback)(function (rows) {
|
|
33
|
+
rows.forEach(addRow);
|
|
34
|
+
}, [addRow]);
|
|
35
|
+
var updateRow = (0, react_1.useCallback)(function (row) {
|
|
36
|
+
var rowKey = rowKeyGetter(row);
|
|
37
|
+
setUpdatedRows(function (prev) {
|
|
38
|
+
var index = prev.findIndex(function (r) { return rowKeyGetter(r) === rowKey; });
|
|
39
|
+
return index >= 0
|
|
40
|
+
? prev.map(function (existingRow, i) {
|
|
41
|
+
return i === index ? __assign(__assign({}, existingRow), row) : existingRow;
|
|
42
|
+
})
|
|
43
|
+
: __spreadArray(__spreadArray([], prev, true), [row], false);
|
|
44
|
+
});
|
|
45
|
+
}, [rowKeyGetter]);
|
|
46
|
+
var editRow = (0, react_1.useCallback)(function (row) {
|
|
47
|
+
var key = rowKeyGetter(row);
|
|
48
|
+
var addedRowIndex = addedRows.findIndex(function (r) { return rowKeyGetter(r) === key; });
|
|
49
|
+
if (addedRowIndex >= 0) {
|
|
50
|
+
setAddedRows(function (prev) {
|
|
51
|
+
return prev.map(function (existingRow, index) {
|
|
52
|
+
return index === addedRowIndex ? __assign(__assign({}, existingRow), row) : existingRow;
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
var updatedRowIndex = updatedRows.findIndex(function (r) { return rowKeyGetter(r) === key; });
|
|
58
|
+
if (updatedRowIndex >= 0) {
|
|
59
|
+
setUpdatedRows(function (prev) {
|
|
60
|
+
return prev.map(function (existingRow, index) {
|
|
61
|
+
return index === updatedRowIndex ? __assign(__assign({}, existingRow), row) : existingRow;
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
setUpdatedRows(function (prev) { return __spreadArray(__spreadArray([], prev, true), [row], false); });
|
|
67
|
+
}, [rowKeyGetter, addedRows, updatedRows]);
|
|
68
|
+
var clearChangedRows = (0, react_1.useCallback)(function (keys) {
|
|
69
|
+
if (!keys) {
|
|
70
|
+
setAddedRows([]);
|
|
71
|
+
setUpdatedRows([]);
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
setAddedRows(function (prev) {
|
|
75
|
+
return prev.filter(function (row) { return !keys.includes(rowKeyGetter(row)); });
|
|
76
|
+
});
|
|
77
|
+
setUpdatedRows(function (prev) {
|
|
78
|
+
return prev.filter(function (row) { return !keys.includes(rowKeyGetter(row)); });
|
|
79
|
+
});
|
|
80
|
+
}, [rowKeyGetter]);
|
|
81
|
+
return {
|
|
82
|
+
addedRows: addedRows,
|
|
83
|
+
updatedRows: updatedRows,
|
|
84
|
+
editRow: editRow,
|
|
85
|
+
addRow: addRow,
|
|
86
|
+
addRows: addRows,
|
|
87
|
+
updateRow: updateRow,
|
|
88
|
+
clearChangedRows: clearChangedRows,
|
|
89
|
+
};
|
|
90
|
+
};
|
|
91
|
+
exports.useDataGridChangedRows = useDataGridChangedRows;
|
|
@@ -52,8 +52,7 @@ var useDataGridCopy = function (_a) {
|
|
|
52
52
|
var rows = _a.rows, _b = _a.visibleColumns, visibleColumns = _b === void 0 ? [] : _b, loadCopyRows = _a.loadCopyRows, footerFunctions = _a.footerFunctions;
|
|
53
53
|
var generateHeadersHtml = (0, react_1.useCallback)(function () {
|
|
54
54
|
return "<tr>\n ".concat(visibleColumns
|
|
55
|
-
.map(function (
|
|
56
|
-
var col = _a[1];
|
|
55
|
+
.map(function (col) {
|
|
57
56
|
return "<th style=\"\n text-align: left;\n font-weight: bold;\n white-space: nowrap;\n \">\n ".concat(col.name, "\n </th>");
|
|
58
57
|
})
|
|
59
58
|
.join('\n'), "\n </tr>");
|
|
@@ -61,29 +60,32 @@ var useDataGridCopy = function (_a) {
|
|
|
61
60
|
var generateFootersHtml = (0, react_1.useCallback)(function (rowsToCopy) {
|
|
62
61
|
console.log('generate footers html');
|
|
63
62
|
return "<tr>\n ".concat(visibleColumns
|
|
64
|
-
.map(function (
|
|
65
|
-
var
|
|
66
|
-
|
|
67
|
-
return "<td style=\"\n font-weight: bold;\n white-space: nowrap;\n \">\n ".concat((_c = (_b = footerFunctions === null || footerFunctions === void 0 ? void 0 : footerFunctions[colKey]) === null || _b === void 0 ? void 0 : _b.call(footerFunctions, rowsToCopy, rowsToCopy, [])) !== null && _c !== void 0 ? _c : '', "\n </td>");
|
|
63
|
+
.map(function (col) {
|
|
64
|
+
var _a, _b;
|
|
65
|
+
return "<td style=\"\n font-weight: bold;\n white-space: nowrap;\n \">\n ".concat((_b = (_a = footerFunctions === null || footerFunctions === void 0 ? void 0 : footerFunctions[col.key]) === null || _a === void 0 ? void 0 : _a.call(footerFunctions, rowsToCopy, rowsToCopy, [])) !== null && _b !== void 0 ? _b : '', "\n </td>");
|
|
68
66
|
})
|
|
69
67
|
.join('\n'), "\n </tr>");
|
|
70
68
|
}, [footerFunctions, visibleColumns]);
|
|
71
69
|
var generateCellText = (0, react_1.useCallback)(function (col, value) {
|
|
72
|
-
var _a;
|
|
73
|
-
return
|
|
70
|
+
var _a, _b;
|
|
71
|
+
return ((_a = col.excelOptions) === null || _a === void 0 ? void 0 : _a.valueGetter)
|
|
72
|
+
? col.excelOptions.valueGetter(value)
|
|
73
|
+
: (_b = value === null || value === void 0 ? void 0 : value.toString()) !== null && _b !== void 0 ? _b : '';
|
|
74
74
|
}, []);
|
|
75
|
-
var generateCellHtml = (0, react_1.useCallback)(function (col, value) {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
75
|
+
var generateCellHtml = (0, react_1.useCallback)(function (col, value) {
|
|
76
|
+
var _a, _b;
|
|
77
|
+
return "<td style=\"\n ".concat(((_a = col.excelOptions) === null || _a === void 0 ? void 0 : _a.formatter)
|
|
78
|
+
? "mso-number-format: '" + col.excelOptions.formatter(col) + "';"
|
|
79
|
+
: '', "\n ").concat(((_b = col.excelOptions) === null || _b === void 0 ? void 0 : _b.colorGetter)
|
|
80
|
+
? "background-color: '" + col.excelOptions.colorGetter(value) + "';"
|
|
81
|
+
: '', "\n white-space: nowrap;\n \">\n ").concat(generateCellText(col, value), "\n </td>");
|
|
82
|
+
}, [generateCellText]);
|
|
80
83
|
var generateCopyHtml = (0, react_1.useCallback)(function (rowsToCopy, includeHeaders, includeFooters) {
|
|
81
84
|
return "\n <table>\n ".concat(includeHeaders ? generateHeadersHtml() : '', "\n ").concat((rowsToCopy || [])
|
|
82
85
|
.map(function (row) {
|
|
83
86
|
return "<tr>\n ".concat(visibleColumns
|
|
84
|
-
.map(function (
|
|
85
|
-
var
|
|
86
|
-
var value = col.getter && row ? col.getter(row) : '';
|
|
87
|
+
.map(function (col) {
|
|
88
|
+
var value = row ? col.getter(row) : '';
|
|
87
89
|
return generateCellHtml(col, value);
|
|
88
90
|
})
|
|
89
91
|
.join('\n'), "\n </tr>");
|
|
@@ -91,18 +93,11 @@ var useDataGridCopy = function (_a) {
|
|
|
91
93
|
.join('\n'), "\n ").concat(includeFooters ? generateFootersHtml(rowsToCopy) : '', "\n </table>\n ");
|
|
92
94
|
}, [visibleColumns, generateCellHtml, generateFootersHtml, generateHeadersHtml]);
|
|
93
95
|
var generateHeadersText = (0, react_1.useCallback)(function () {
|
|
94
|
-
return visibleColumns.map(function (
|
|
95
|
-
var col = _a[1];
|
|
96
|
-
return col.name;
|
|
97
|
-
}).join('\t');
|
|
96
|
+
return visibleColumns.map(function (col) { return col.name; }).join('\t');
|
|
98
97
|
}, [visibleColumns]);
|
|
99
98
|
var generateFootersText = (0, react_1.useCallback)(function (rowsToCopy) {
|
|
100
99
|
return visibleColumns
|
|
101
|
-
.map(function (_a)
|
|
102
|
-
var _b, _c;
|
|
103
|
-
var colKey = _a[0];
|
|
104
|
-
return (_c = (_b = footerFunctions === null || footerFunctions === void 0 ? void 0 : footerFunctions[colKey]) === null || _b === void 0 ? void 0 : _b.call(footerFunctions, rowsToCopy, [], [])) !== null && _c !== void 0 ? _c : '';
|
|
105
|
-
})
|
|
100
|
+
.map(function (col) { var _a, _b; return (_b = (_a = footerFunctions === null || footerFunctions === void 0 ? void 0 : footerFunctions[col.key]) === null || _a === void 0 ? void 0 : _a.call(footerFunctions, rowsToCopy, [], [])) !== null && _b !== void 0 ? _b : ''; })
|
|
106
101
|
.join('\t');
|
|
107
102
|
}, [footerFunctions, visibleColumns]);
|
|
108
103
|
var generateCopyText = (0, react_1.useCallback)(function (rowsToCopy, includeHeaders, includeFooters) {
|
|
@@ -110,11 +105,11 @@ var useDataGridCopy = function (_a) {
|
|
|
110
105
|
includeHeaders ? generateHeadersText() : ''
|
|
111
106
|
], (rowsToCopy || []).map(function (row) {
|
|
112
107
|
return visibleColumns
|
|
113
|
-
.map(function (
|
|
114
|
-
var
|
|
115
|
-
var value =
|
|
116
|
-
return col.
|
|
117
|
-
? col.
|
|
108
|
+
.map(function (col) {
|
|
109
|
+
var _a;
|
|
110
|
+
var value = row ? col.getter(row) : '';
|
|
111
|
+
return ((_a = col.excelOptions) === null || _a === void 0 ? void 0 : _a.valueGetter)
|
|
112
|
+
? col.excelOptions.valueGetter(value)
|
|
118
113
|
: value != null && value !== undefined
|
|
119
114
|
? value.toString()
|
|
120
115
|
: '';
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useRefreshModal = void 0;
|
|
4
|
+
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
var react_1 = require("react");
|
|
6
|
+
var forms_1 = require("../../../forms");
|
|
7
|
+
var Modal_1 = require("../../../layout/Modal");
|
|
8
|
+
var Icons_1 = require("../../../../Icons");
|
|
9
|
+
var useRefreshModal = function (onConfirm) {
|
|
10
|
+
var _a = (0, react_1.useState)(false), isVisible = _a[0], setIsVisible = _a[1];
|
|
11
|
+
var openModal = (0, react_1.useCallback)(function () {
|
|
12
|
+
setIsVisible(true);
|
|
13
|
+
}, []);
|
|
14
|
+
var closeModal = (0, react_1.useCallback)(function () {
|
|
15
|
+
setIsVisible(false);
|
|
16
|
+
}, []);
|
|
17
|
+
var modal = (0, react_1.useMemo)(function () {
|
|
18
|
+
return isVisible ? ((0, jsx_runtime_1.jsxs)(Modal_1.Modal, { "$width": 400, children: [(0, jsx_runtime_1.jsx)(Modal_1.Modal.Header, { children: "Rafraichir" }), (0, jsx_runtime_1.jsxs)(Modal_1.Modal.ContentWithIcon, { children: [(0, jsx_runtime_1.jsx)(Icons_1.TriangleExclamationIcon, { fill: "var(--color-danger-600)" }), (0, jsx_runtime_1.jsx)("div", { children: "Attention : vous avez des modifications en cours. Si vous rafra\u00EEchissez la liste, ces modifications seront perdues !" })] }), (0, jsx_runtime_1.jsxs)(Modal_1.Modal.Footer, { children: [(0, jsx_runtime_1.jsx)(forms_1.Button, { onClick: closeModal, children: "Annuler" }), (0, jsx_runtime_1.jsx)(forms_1.Button, { "$color": "danger", style: { marginLeft: 'auto' }, onClick: function () {
|
|
19
|
+
closeModal();
|
|
20
|
+
onConfirm();
|
|
21
|
+
}, children: "Rafra\u00EEchir" })] })] })) : null;
|
|
22
|
+
}, [closeModal, isVisible, onConfirm]);
|
|
23
|
+
return { openModal: openModal, closeModal: closeModal, modal: modal };
|
|
24
|
+
};
|
|
25
|
+
exports.useRefreshModal = useRefreshModal;
|
|
@@ -2,7 +2,45 @@ import { ForwardedRef } from 'react';
|
|
|
2
2
|
import { DataGridContextProps, DataGridProps, DataGridRefProps } from './types';
|
|
3
3
|
export declare const DataGridInner: <R>({ contextOverride, ...props }: DataGridProps<R> & {
|
|
4
4
|
contextOverride?: Partial<DataGridContextProps<R>>;
|
|
5
|
-
}, ref: ForwardedRef<DataGridRefProps
|
|
6
|
-
export declare const DataGrid: <R>(props:
|
|
5
|
+
}, ref: ForwardedRef<DataGridRefProps<R>>) => import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export declare const DataGrid: <R>(props: {
|
|
7
|
+
name?: string;
|
|
8
|
+
className?: string;
|
|
9
|
+
rows: R[];
|
|
10
|
+
setRows?: import("react").Dispatch<import("react").SetStateAction<R[]>> | undefined;
|
|
11
|
+
columns: import("./types").DataGridColumns<R>;
|
|
12
|
+
rowKey: string;
|
|
13
|
+
selectable?: boolean;
|
|
14
|
+
userSelect?: boolean;
|
|
15
|
+
editable?: boolean;
|
|
16
|
+
onRowDoubleClick?: ((row: R, e: import("react").MouseEvent) => void) | undefined;
|
|
17
|
+
onSelectionChange?: (keys: string[]) => void;
|
|
18
|
+
onSelectedRowsChanged?: ((rows: R[]) => void) | undefined;
|
|
19
|
+
getAllIds?: () => Promise<string[]>;
|
|
20
|
+
onFiltersChanged?: (filters: import("./types").DataGridFilters) => void;
|
|
21
|
+
onSortsChanged?: (sorts: Record<string, import("./types").DataGridSort>) => void;
|
|
22
|
+
onVisibleRowsChange?: (startIndex: number, length: number) => void;
|
|
23
|
+
onCellEdited?: ((row: R, columnKey: string, value: any) => void) | undefined;
|
|
24
|
+
rowClassNameGetter?: ((row: R | null) => {
|
|
25
|
+
className?: string;
|
|
26
|
+
style?: import("react").CSSProperties;
|
|
27
|
+
}) | undefined;
|
|
28
|
+
headerRowHeight?: number;
|
|
29
|
+
rowHeight?: number;
|
|
30
|
+
filter?: boolean;
|
|
31
|
+
sort?: boolean;
|
|
32
|
+
initialSorts?: Record<string, import("./types").DataGridSort>;
|
|
33
|
+
initialFooters?: Record<string, string>;
|
|
34
|
+
onFootersChanged?: (footers: Record<string, string>) => void;
|
|
35
|
+
filterValuesLoader?: (columnKey: string) => Promise<(string | number | null)[]>;
|
|
36
|
+
loadCopyRows?: (() => Promise<R[]>) | undefined;
|
|
37
|
+
refresh?: () => void;
|
|
38
|
+
headerColor?: import("../../..").ThemeColor;
|
|
39
|
+
fixedColumnsCount?: number;
|
|
40
|
+
onRowEdited?: ((row: R, columnKey: keyof R, value: any) => void) | undefined;
|
|
41
|
+
onSaveClicked?: ((addedRows: import("./types").DataGridEditedRows<R>, editedRows: import("./types").DataGridEditedRows<R>) => Promise<string[]>) | undefined;
|
|
42
|
+
onAddClicked?: (() => Promise<R>) | undefined;
|
|
43
|
+
headerContent?: import("react").ReactNode;
|
|
44
|
+
} & import("../../../helpers/styled").MarginProps & import("../../../helpers/styled").PaddingProps & {
|
|
7
45
|
contextOverride?: Partial<DataGridContextProps<R>>;
|
|
8
|
-
} & import("react").RefAttributes<DataGridRefProps
|
|
46
|
+
} & import("react").RefAttributes<DataGridRefProps<R>>) => import("react").JSX.Element | null;
|
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
2
13
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
14
|
if (k2 === undefined) k2 = k;
|
|
4
15
|
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
@@ -33,31 +44,47 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
33
44
|
}
|
|
34
45
|
return t;
|
|
35
46
|
};
|
|
47
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
48
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
49
|
+
if (ar || !(i in from)) {
|
|
50
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
51
|
+
ar[i] = from[i];
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
55
|
+
};
|
|
36
56
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
37
57
|
exports.DataGrid = exports.DataGridInner = void 0;
|
|
38
58
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
39
59
|
var styles = __importStar(require("./styles"));
|
|
40
60
|
var react_1 = require("react");
|
|
61
|
+
var constants_1 = require("./constants");
|
|
41
62
|
var DataGridFooter_1 = require("./DataGridFooter");
|
|
42
63
|
var DataGridHeader_1 = require("./DataGridHeader");
|
|
43
64
|
var DataGridRowTemplate_1 = require("./DataGridRowTemplate");
|
|
65
|
+
var DataGridToolbar_1 = require("./DataGridToolbar");
|
|
44
66
|
var VirtualScroller_1 = require("../VirtualScroller");
|
|
67
|
+
var styled_1 = require("../../../helpers/styled");
|
|
45
68
|
var hooks_1 = require("./hooks");
|
|
46
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
47
|
-
/* eslint-disable @typescript-eslint/no-unnecessary-type-constraint */
|
|
48
69
|
var DataGridInner = function (_a, ref) {
|
|
49
70
|
var contextOverride = _a.contextOverride, props = __rest(_a, ["contextOverride"]);
|
|
50
71
|
var scrollableRef = (0, react_1.useRef)(null);
|
|
51
72
|
var className = props.className;
|
|
73
|
+
var spaceProps = (0, styled_1.extractSpaceProps)(props);
|
|
52
74
|
var _b = (0, hooks_1.useDataGrid)(props, contextOverride), contextProps = _b[0], DataGridContext = _b[1];
|
|
53
|
-
var columns = contextProps.columns, _c = contextProps.rowHeight, rowHeight = _c === void 0 ?
|
|
75
|
+
var columns = contextProps.columns, selectable = contextProps.selectable, _c = contextProps.rowHeight, rowHeight = _c === void 0 ? constants_1.DEFAULT_ROW_HEIGHT : _c, _d = contextProps.headerRowHeight, headerRowHeight = _d === void 0 ? 40 : _d, gridTemplateColumns = contextProps.gridTemplateColumns, sortedRows = contextProps.sortedRows, onVisibleRowsChange = contextProps.onVisibleRowsChange, refresh = contextProps.refresh, setSelectedKeys = contextProps.setSelectedKeys, addRows = contextProps.addRows, fixedColumnsCount = contextProps.fixedColumnsCount, resizingColumnKey = contextProps.resizingColumnKey, moveResizing = contextProps.moveResizing, endResizing = contextProps.endResizing;
|
|
54
76
|
(0, react_1.useImperativeHandle)(ref, function () { return ({
|
|
55
77
|
refresh: refresh !== null && refresh !== void 0 ? refresh : (function () { }),
|
|
56
78
|
setSelectedKeys: setSelectedKeys,
|
|
57
|
-
|
|
79
|
+
addRows: addRows,
|
|
80
|
+
}); }, [addRows, refresh, setSelectedKeys]);
|
|
58
81
|
var hasFooter = Object.values(columns).some(function (col) { return col.footer; });
|
|
82
|
+
var fixedColumnWidths = (0, react_1.useMemo)(function () { return __spreadArray(__spreadArray([], (selectable ? [constants_1.SELECTION_CELL_WIDTH] : []), true), Object.values(columns)
|
|
83
|
+
.slice(0, fixedColumnsCount !== null && fixedColumnsCount !== void 0 ? fixedColumnsCount : 0)
|
|
84
|
+
.map(function (col) { var _a; return (_a = col.width) !== null && _a !== void 0 ? _a : constants_1.DEFAULT_COLUMN_WIDTH; }), true); }, [columns, fixedColumnsCount, selectable]);
|
|
85
|
+
var itemProps = (0, react_1.useMemo)(function () { return ({ context: DataGridContext }); }, [DataGridContext]);
|
|
59
86
|
var rowTemplate = DataGridRowTemplate_1.DataGridRowTemplate;
|
|
60
|
-
return ((0, jsx_runtime_1.jsx)(DataGridContext.Provider, { value: contextProps, children: (0, jsx_runtime_1.jsxs)(styles.DataGridContainer, { ref: scrollableRef, "$headerRowHeight": headerRowHeight, "$rowHeight": rowHeight, "$rowsCount": contextProps.sortedRows.length, "$withFooter": hasFooter, className: className, children: [(0, jsx_runtime_1.jsx)(DataGridHeader_1.DataGridHeader, { context: DataGridContext }), (0, jsx_runtime_1.jsx)(VirtualScroller_1.VirtualScroller, { gridTemplateColumns: gridTemplateColumns, items: sortedRows, itemTemplate: rowTemplate, itemProps:
|
|
87
|
+
return ((0, jsx_runtime_1.jsx)(DataGridContext.Provider, { value: contextProps, children: (0, jsx_runtime_1.jsxs)(styles.DataGridWrapper, __assign({}, spaceProps, { children: [(0, jsx_runtime_1.jsx)(DataGridToolbar_1.DataGridToolbar, { context: DataGridContext }), (0, jsx_runtime_1.jsxs)(styles.DataGridContainer, { ref: scrollableRef, "$headerRowHeight": headerRowHeight, "$rowHeight": rowHeight, "$rowsCount": contextProps.sortedRows.length, "$withFooter": hasFooter, className: className, "$fixedColumnWidths": fixedColumnWidths, children: [resizingColumnKey && ((0, jsx_runtime_1.jsx)(styles.ResizeBackdrop, { onMouseMove: moveResizing, onMouseUp: endResizing })), (0, jsx_runtime_1.jsx)(DataGridHeader_1.DataGridHeader, { context: DataGridContext }), (0, jsx_runtime_1.jsx)(VirtualScroller_1.VirtualScroller, { integrated: true, gridTemplateColumns: gridTemplateColumns, items: sortedRows, itemTemplate: rowTemplate, itemProps: itemProps, rowHeightInPx: rowHeight, onRangeChanged: onVisibleRowsChange }), hasFooter && (0, jsx_runtime_1.jsx)(DataGridFooter_1.DataGridFooter, { context: DataGridContext })] })] })) }));
|
|
61
88
|
};
|
|
62
89
|
exports.DataGridInner = DataGridInner;
|
|
63
90
|
exports.DataGrid = (0, react_1.forwardRef)(exports.DataGridInner);
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
+
import { SpaceProps } from '../../../helpers/styled';
|
|
2
|
+
import { DataGridCellFCProps } from './types';
|
|
1
3
|
import { ThemeColor } from '../../../providers/ThemeProvider/types';
|
|
2
|
-
export declare const
|
|
3
|
-
export declare const DEFAULT_HEADER_ROW_HEIGHT = 40;
|
|
4
|
-
export declare const DEFAULT_FOOTER_ROW_HEIGHT = 40;
|
|
5
|
-
export declare const DEFAULT_ROW_HEIGHT = 32;
|
|
4
|
+
export declare const DataGridWrapper: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, SpaceProps>> & string;
|
|
6
5
|
export declare const DataGridResizeGrip: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
|
|
7
6
|
$headerColor?: ThemeColor;
|
|
8
7
|
}>> & string;
|
|
@@ -11,14 +10,20 @@ type DataGridHeaderCellContainerProps = {
|
|
|
11
10
|
$headerColor?: ThemeColor;
|
|
12
11
|
};
|
|
13
12
|
export declare const DataGridHeaderCellContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, DataGridHeaderCellContainerProps>> & string;
|
|
14
|
-
export declare const
|
|
13
|
+
export declare const DataGridHeaderTextContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
14
|
+
export declare const dataGridCellCss: import("styled-components").RuleSet<DataGridCellFCProps>;
|
|
15
|
+
export declare const DataGridCell: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, DataGridCellFCProps>> & string;
|
|
16
|
+
export declare const DataGridHeaderTitle: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
15
17
|
export declare const DataGridToolsRow: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
18
|
+
export declare const DataGridToolsRowHeaderContent: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
19
|
+
export declare const DataGridToolsRowButtonsContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
16
20
|
export declare const DataGridContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
|
|
17
21
|
$headerRowHeight?: number;
|
|
18
22
|
$rowHeight?: number;
|
|
19
23
|
$rowsCount: number;
|
|
20
24
|
$showToolsHeader?: boolean;
|
|
21
25
|
$withFooter?: boolean;
|
|
26
|
+
$fixedColumnWidths?: (string | number)[];
|
|
22
27
|
}>> & string;
|
|
23
28
|
type DataGridHeaderOrFooterRowProps = {
|
|
24
29
|
$headerRowHeight?: number;
|
|
@@ -31,11 +36,14 @@ export declare const DataGridHeaderRow: import("styled-components/dist/types").I
|
|
|
31
36
|
export declare const DataGridFooterRow: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components/dist/types").Substitute<import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
32
37
|
ref?: ((instance: HTMLDivElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject<HTMLDivElement> | null | undefined;
|
|
33
38
|
}>, DataGridHeaderOrFooterRowProps>, never>> & string;
|
|
34
|
-
|
|
35
|
-
|
|
39
|
+
type DataGridRowProps = {
|
|
40
|
+
$edited?: boolean;
|
|
41
|
+
};
|
|
42
|
+
export declare const DataGridRow: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, DataGridRowProps>> & string;
|
|
43
|
+
export declare const LoadingCell: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<Omit<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof DataGridCellFCProps> & DataGridCellFCProps, "ref"> & {
|
|
36
44
|
ref?: ((instance: HTMLDivElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject<HTMLDivElement> | null | undefined;
|
|
37
45
|
}, never>> & string;
|
|
38
|
-
export declare const SelectionCell: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<Omit<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>,
|
|
46
|
+
export declare const SelectionCell: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<Omit<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof DataGridCellFCProps> & DataGridCellFCProps, "ref"> & {
|
|
39
47
|
ref?: ((instance: HTMLDivElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject<HTMLDivElement> | null | undefined;
|
|
40
48
|
}, never>> & string;
|
|
41
49
|
export declare const HeaderSelectionCell: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<Omit<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof DataGridHeaderCellContainerProps> & DataGridHeaderCellContainerProps, "ref"> & {
|