@ozen-ui/data-grid 0.76.0 → 0.78.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.
Files changed (79) hide show
  1. package/__inner__/cjs/core/column/store/DataGridStoreColumn.js +5 -4
  2. package/__inner__/cjs/core/column/store/utils.js +17 -0
  3. package/__inner__/cjs/core/column/table/DataGridColumn.js +4 -25
  4. package/__inner__/cjs/core/column/table/utils.js +14 -0
  5. package/__inner__/cjs/core/filter/store/base/DataGridStoreFilter.js +0 -9
  6. package/__inner__/cjs/core/filter/table/base/DataGridTableFilter.js +2 -3
  7. package/__inner__/cjs/core/store/DataGridStore.js +0 -8
  8. package/__inner__/cjs/core/sub-row/entities/index.js +1 -0
  9. package/__inner__/cjs/core/sub-row/entities/render.js +2 -0
  10. package/__inner__/cjs/core/table/DataGridTable.js +0 -1
  11. package/__inner__/cjs/ui/DataGrid/components/DataGridHeadFoot/DataGridHeadFoot.js +7 -1
  12. package/__inner__/cjs/ui/DataGrid/components/DataGridPagination/DataGridPagination.js +14 -4
  13. package/__inner__/cjs/ui/DataGrid/components/DataGridRow/DataGridRow.js +7 -3
  14. package/__inner__/cjs/ui/DataGrid/components/DataGridSubRow/DataGridSubRow.js +2 -2
  15. package/__inner__/cjs/ui/DataGridAllFiltersDrawer/DataGridAllFiltersDrawer.js +9 -4
  16. package/__inner__/cjs/ui/DataGridSettingsDrawer/DataGridSettingsDrawer.js +10 -4
  17. package/__inner__/cjs/ui/filters/DataGridAutocompleteFilter/DataGridAutocompleteFilter.js +1 -13
  18. package/__inner__/esm/core/column/store/DataGridStoreColumn.js +5 -4
  19. package/__inner__/esm/core/column/store/utils.js +12 -0
  20. package/__inner__/esm/core/column/table/DataGridColumn.js +4 -25
  21. package/__inner__/esm/core/column/table/utils.js +9 -0
  22. package/__inner__/esm/core/filter/store/base/DataGridStoreFilter.js +0 -9
  23. package/__inner__/esm/core/filter/table/base/DataGridTableFilter.js +2 -3
  24. package/__inner__/esm/core/store/DataGridStore.js +0 -8
  25. package/__inner__/esm/core/sub-row/entities/index.js +1 -0
  26. package/__inner__/esm/core/sub-row/entities/render.js +1 -0
  27. package/__inner__/esm/core/table/DataGridTable.js +0 -1
  28. package/__inner__/esm/ui/DataGrid/components/DataGridHeadFoot/DataGridHeadFoot.js +7 -1
  29. package/__inner__/esm/ui/DataGrid/components/DataGridPagination/DataGridPagination.js +14 -4
  30. package/__inner__/esm/ui/DataGrid/components/DataGridRow/DataGridRow.js +7 -3
  31. package/__inner__/esm/ui/DataGrid/components/DataGridSubRow/DataGridSubRow.js +2 -2
  32. package/__inner__/esm/ui/DataGridAllFiltersDrawer/DataGridAllFiltersDrawer.js +10 -4
  33. package/__inner__/esm/ui/DataGridSettingsDrawer/DataGridSettingsDrawer.js +12 -6
  34. package/__inner__/esm/ui/filters/DataGridAutocompleteFilter/DataGridAutocompleteFilter.js +1 -13
  35. package/__inner__/types/core/column/hooks/useDataGridColumn.d.ts +2 -1
  36. package/__inner__/types/core/column/hooks/useDataGridColumnEvents.d.ts +2 -1
  37. package/__inner__/types/core/column/hooks/useDataGridColumnsInfo.d.ts +2 -1
  38. package/__inner__/types/core/column/store/DataGridStoreColumn.d.ts +2 -1
  39. package/__inner__/types/core/column/store/utils.d.ts +5 -0
  40. package/__inner__/types/core/column/table/DataGridColumn.d.ts +2 -12
  41. package/__inner__/types/core/column/table/types.d.ts +7 -1
  42. package/__inner__/types/core/column/table/utils.d.ts +2 -0
  43. package/__inner__/types/core/columns-group/hooks/useDataGridColumnsGroup.d.ts +2 -1
  44. package/__inner__/types/core/columns-group/hooks/useDataGridColumnsGroupEvents.d.ts +2 -1
  45. package/__inner__/types/core/entities/cell.d.ts +7 -1
  46. package/__inner__/types/core/filter/hooks/useDataGridFilter.d.ts +2 -1
  47. package/__inner__/types/core/filter/hooks/useDataGridFilterEvents.d.ts +2 -1
  48. package/__inner__/types/core/filter/hooks/useDataGridFilters.d.ts +2 -1
  49. package/__inner__/types/core/filter/hooks/useDataGridFiltersEvents.d.ts +2 -1
  50. package/__inner__/types/core/filter/store/base/DataGridStoreFilter.d.ts +0 -3
  51. package/__inner__/types/core/filter/table/base/DataGridTableFilter.d.ts +1 -3
  52. package/__inner__/types/core/filter/table/base/types.d.ts +0 -2
  53. package/__inner__/types/core/pagination/hooks/useDataGridPagination.d.ts +2 -1
  54. package/__inner__/types/core/pagination/hooks/useDataGridPaginationEvents.d.ts +2 -1
  55. package/__inner__/types/core/selection/hooks/useDataGridSelection.d.ts +2 -1
  56. package/__inner__/types/core/selection/hooks/useDataGridSelectionEvents.d.ts +2 -1
  57. package/__inner__/types/core/store/hooks/useDataGridCreateStore.d.ts +2 -2
  58. package/__inner__/types/core/store/hooks/useDataGridStore.d.ts +2 -1
  59. package/__inner__/types/core/store/hooks/useDataGridStoreEvents.d.ts +2 -1
  60. package/__inner__/types/core/sub-row/entities/index.d.ts +1 -0
  61. package/__inner__/types/core/sub-row/entities/render.d.ts +8 -0
  62. package/__inner__/types/core/sub-row/hooks/useDataGridSubRow.d.ts +2 -1
  63. package/__inner__/types/core/sub-row/hooks/useDataGridSubRowEvents.d.ts +2 -1
  64. package/__inner__/types/core/sub-row/hooks/useDataGridSubRows.d.ts +2 -1
  65. package/__inner__/types/core/sub-row/hooks/useDataGridSubRowsEvents.d.ts +2 -1
  66. package/__inner__/types/core/sub-row/store/sub-row/DataGridStoreSubRow.d.ts +2 -2
  67. package/__inner__/types/core/sub-row/table/DataGridSubRow.d.ts +2 -2
  68. package/__inner__/types/core/sub-row/table/types.d.ts +2 -2
  69. package/__inner__/types/ui/DataGrid/DataGrid.d.ts +2 -1
  70. package/__inner__/types/ui/DataGrid/components/DataGridPagination/entities/afterText.d.ts +3 -1
  71. package/__inner__/types/ui/DataGridAllFiltersDrawer/DataGridAllFiltersDrawer.d.ts +16 -4
  72. package/__inner__/types/ui/DataGridAllFiltersDrawer/types.d.ts +3 -1
  73. package/__inner__/types/ui/DataGridSettingsDrawer/DataGridSettingsDrawer.d.ts +22 -4
  74. package/__inner__/types/ui/DataGridSettingsDrawer/types.d.ts +5 -1
  75. package/__inner__/types/ui/context/DataGridProvider.d.ts +2 -1
  76. package/__inner__/types/ui/context/context.d.ts +1 -1
  77. package/__inner__/types/ui/filters/DataGridAutocompleteFilter/utilts.d.ts +2 -2
  78. package/__inner__/types/ui/filters/DataGridAutocompleteListCardFilter/utilts.d.ts +2 -2
  79. package/package.json +6 -8
@@ -4,9 +4,10 @@ exports.DataGridStoreColumn = void 0;
4
4
  var utils_1 = require("@ozen-ui/kit/utils");
5
5
  var mobx_1 = require("mobx");
6
6
  var shared_1 = require("../../../shared");
7
+ var utils_2 = require("./utils");
7
8
  var DataGridStoreColumn = /** @class */ (function () {
8
9
  function DataGridStoreColumn(column, context, root) {
9
- var _a;
10
+ var _a, _b;
10
11
  this.width = 'responsive';
11
12
  this.eventBus = new shared_1.EventBus();
12
13
  this.rawIsVisible = true;
@@ -14,14 +15,14 @@ var DataGridStoreColumn = /** @class */ (function () {
14
15
  this.root = root !== null && root !== void 0 ? root : null;
15
16
  this.id = column.id;
16
17
  this.cell = column.cell;
17
- this.header = column.header;
18
+ this.name = (0, utils_2.createDataGridStoreColumnName)(column, this);
19
+ this.header = (_a = column.header) !== null && _a !== void 0 ? _a : this.name;
18
20
  this.accessor = column.accessor;
19
21
  this.footer = column.footer;
20
- this.name = column.name;
21
22
  this.align = column.align;
22
23
  this.sortSettings = column.sortSettings;
23
24
  this.sort = null;
24
- var width = (_a = column.width) !== null && _a !== void 0 ? _a : context.columnsInfo.width;
25
+ var width = (_b = column.width) !== null && _b !== void 0 ? _b : context.columnsInfo.width;
25
26
  this.rawWidth = (function () {
26
27
  if ((0, utils_1.isFunction)(width)) {
27
28
  return width;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createDataGridStoreColumnName = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var react_1 = tslib_1.__importDefault(require("react"));
6
+ var utils_1 = require("@ozen-ui/kit/utils");
7
+ var createDataGridStoreColumnName = function (column, storeColumn) {
8
+ var Component = function () {
9
+ if ((0, utils_1.isFunction)(column.name)) {
10
+ var Component_1 = column.name;
11
+ return react_1.default.createElement(Component_1, { column: storeColumn });
12
+ }
13
+ return column.name;
14
+ };
15
+ return Component;
16
+ };
17
+ exports.createDataGridStoreColumnName = createDataGridStoreColumnName;
@@ -1,17 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DataGridColumn = void 0;
4
- var tslib_1 = require("tslib");
5
4
  var utils_1 = require("@ozen-ui/kit/utils");
6
5
  var entities_1 = require("../entities");
6
+ var utils_2 = require("./utils");
7
7
  var DataGridColumn = /** @class */ (function () {
8
8
  function DataGridColumn(_a) {
9
9
  var id = _a.id, cell = _a.cell, header = _a.header, accessor = _a.accessor, footer = _a.footer, name = _a.name, align = _a.align, sorting = _a.sorting, width = _a.width;
10
10
  this.root = null;
11
- this.context = null;
12
11
  this.rawId = id;
13
- this.header = header !== null && header !== void 0 ? header : name;
14
- this.cell = cell !== null && cell !== void 0 ? cell : (function (data) { return String(data); });
12
+ this.header = header;
13
+ this.cell =
14
+ cell !== null && cell !== void 0 ? cell : (0, utils_2.createDataGridColumnDefaultRender)();
15
15
  this.footer = footer;
16
16
  this.accessor = accessor;
17
17
  this.name = name;
@@ -30,9 +30,6 @@ var DataGridColumn = /** @class */ (function () {
30
30
  available: availableSorting,
31
31
  };
32
32
  }
33
- DataGridColumn.prototype.setContext = function (context) {
34
- this.context = context;
35
- };
36
33
  Object.defineProperty(DataGridColumn.prototype, "id", {
37
34
  get: function () {
38
35
  if (this.root) {
@@ -46,24 +43,6 @@ var DataGridColumn = /** @class */ (function () {
46
43
  DataGridColumn.prototype.setRoot = function (root) {
47
44
  this.root = root;
48
45
  };
49
- DataGridColumn.prototype.createDateFilter = function (params) {
50
- return this.context.createDateFilter(tslib_1.__assign(tslib_1.__assign({}, params), { column: this }));
51
- };
52
- DataGridColumn.prototype.createSelectFilter = function (params) {
53
- return this.context.createSelectFilter(tslib_1.__assign(tslib_1.__assign({}, params), { column: this }));
54
- };
55
- DataGridColumn.prototype.createNumberFilter = function (params) {
56
- return this.context.createNumberFilter(tslib_1.__assign(tslib_1.__assign({}, params), { column: this }));
57
- };
58
- DataGridColumn.prototype.createStringFilter = function (params) {
59
- return this.context.createStringFilter(tslib_1.__assign(tslib_1.__assign({}, params), { column: this }));
60
- };
61
- DataGridColumn.prototype.createAutocompleteFilter = function (params) {
62
- return this.context.createAutocompleteFilter(tslib_1.__assign(tslib_1.__assign({}, params), { column: this }));
63
- };
64
- DataGridColumn.prototype.createAutocompleteListCardFilter = function (params) {
65
- return this.context.createAutocompleteListCardFilter(tslib_1.__assign(tslib_1.__assign({}, params), { column: this }));
66
- };
67
46
  Object.defineProperty(DataGridColumn.prototype, "depth", {
68
47
  get: function () {
69
48
  if (this.root) {
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createDataGridColumnDefaultRender = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var react_1 = tslib_1.__importDefault(require("react"));
6
+ var DataGridCellItem_1 = require("../../../ui/cells/DataGridCellItem");
7
+ var createDataGridColumnDefaultRender = function () {
8
+ var Component = function (_a) {
9
+ var data = _a.data, column = _a.column;
10
+ return (react_1.default.createElement(DataGridCellItem_1.DataGridCellItem, { align: column.align }, String(data)));
11
+ };
12
+ return Component;
13
+ };
14
+ exports.createDataGridColumnDefaultRender = createDataGridColumnDefaultRender;
@@ -12,17 +12,14 @@ var DataGridStoreFilter = /** @class */ (function () {
12
12
  this.id = filter.id;
13
13
  this.rawName = filter.name;
14
14
  this.group = filter.group;
15
- this.column = null;
16
15
  (0, mobx_1.makeObservable)(this, {
17
16
  id: mobx_1.observable,
18
17
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
19
18
  // @ts-expect-error
20
19
  rawName: mobx_1.observable,
21
- column: mobx_1.observable,
22
20
  group: mobx_1.observable,
23
21
  context: mobx_1.observable,
24
22
  setGroup: mobx_1.action,
25
- setColumn: mobx_1.action,
26
23
  setValue: mobx_1.action,
27
24
  setLocalValue: mobx_1.action,
28
25
  setAllFilterValue: mobx_1.action,
@@ -106,9 +103,6 @@ var DataGridStoreFilter = /** @class */ (function () {
106
103
  DataGridStoreFilter.prototype.setGroup = function (group) {
107
104
  this.group = group;
108
105
  };
109
- DataGridStoreFilter.prototype.setColumn = function (column) {
110
- this.column = column;
111
- };
112
106
  Object.defineProperty(DataGridStoreFilter.prototype, "isEditedLocal", {
113
107
  get: function () {
114
108
  return !this.isEqualValues(this.localValue, this.value);
@@ -149,9 +143,6 @@ var DataGridStoreFilter = /** @class */ (function () {
149
143
  if (this.rawName) {
150
144
  return this.rawName;
151
145
  }
152
- if (this.column) {
153
- return this.column.name;
154
- }
155
146
  return this.id;
156
147
  },
157
148
  enumerable: false,
@@ -4,9 +4,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.DataGridTableFilter = void 0;
5
5
  var DataGridTableFilter = /** @class */ (function () {
6
6
  function DataGridTableFilter(_a) {
7
- var id = _a.id, column = _a.column, name = _a.name, group = _a.group, render = _a.render;
8
- this.column = column !== null && column !== void 0 ? column : null;
9
- this.id = "filter_".concat(this.column ? "".concat(this.column.id, ".") : '').concat(id);
7
+ var id = _a.id, name = _a.name, group = _a.group, render = _a.render;
8
+ this.id = "filter_".concat(id);
10
9
  this.name = name !== null && name !== void 0 ? name : null;
11
10
  this.group = group !== null && group !== void 0 ? group : 'main';
12
11
  this.render = render !== null && render !== void 0 ? render : null;
@@ -63,14 +63,6 @@ var DataGridStore = /** @class */ (function () {
63
63
  return;
64
64
  }
65
65
  _this.filters.addFilter(createdFilter);
66
- if (!filter.column) {
67
- return;
68
- }
69
- var storeColumn = _this.findColumn(filter.column);
70
- if (!storeColumn) {
71
- return;
72
- }
73
- createdFilter.setColumn(storeColumn);
74
66
  });
75
67
  this.setData(data);
76
68
  this.recalculate();
@@ -2,4 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  var tslib_1 = require("tslib");
4
4
  tslib_1.__exportStar(require("./position"), exports);
5
+ tslib_1.__exportStar(require("./render"), exports);
5
6
  tslib_1.__exportStar(require("./settings"), exports);
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -58,7 +58,6 @@ var DataGridTable = /** @class */ (function () {
58
58
  };
59
59
  DataGridTable.prototype.addColumn = function (column) {
60
60
  this.nodes.push(column);
61
- column.setContext(this);
62
61
  return column;
63
62
  };
64
63
  DataGridTable.prototype.createGroup = function (groupParams) {
@@ -39,7 +39,13 @@ exports.DataGridHeadFoot = (0, core_1.dataGridObserver)(function (_a) {
39
39
  isSubRowEnabled && store.subRows.isLeft && (react_1.default.createElement(components_1.DataGridHeadFootExpand, null)),
40
40
  nodes.map(function (node) {
41
41
  var render = isFoot ? node.footer : node.header;
42
- var rendered = (0, utils_1.isFunction)(render) ? render() : render;
42
+ var rendered = (function () {
43
+ if ((0, utils_1.isFunction)(render)) {
44
+ var Component = render;
45
+ return react_1.default.createElement(Component, null);
46
+ }
47
+ return render;
48
+ })();
43
49
  var isGroup = node instanceof core_1.DataGridStoreColumnsGroup;
44
50
  return (react_1.default.createElement(react_1.Fragment, { key: node.id },
45
51
  isGroup &&
@@ -23,10 +23,20 @@ var UnwrappedDataGridPagination = (0, react_1.forwardRef)(function (_a, ref) {
23
23
  if (!pagination.isEnabled) {
24
24
  return null;
25
25
  }
26
- var renderedBeforeText = (0, utils_1.isFunction)(beforeText) ? beforeText() : beforeText;
27
- var renderedAfterText = (0, utils_1.isFunction)(afterText)
28
- ? afterText(pagination.total)
29
- : afterText;
26
+ var renderedBeforeText = (function () {
27
+ if ((0, utils_1.isFunction)(beforeText)) {
28
+ var Component = beforeText;
29
+ return react_1.default.createElement(Component, null);
30
+ }
31
+ return beforeText;
32
+ })();
33
+ var renderedAfterText = (function () {
34
+ if ((0, utils_1.isFunction)(afterText)) {
35
+ var Component = afterText;
36
+ return react_1.default.createElement(Component, { total: pagination.total });
37
+ }
38
+ return afterText;
39
+ })();
30
40
  return (react_1.default.createElement(Stack_1.Stack, { ref: ref, className: (0, exports.cnDataGridPagination)('', [className]), justify: "spaceBetween", align: "center", fullWidth: true },
31
41
  react_1.default.createElement(Pagination_1.Pagination, { totalCount: pagination.total, page: pagination.index, pageSize: pagination.pageSize, size: "s", onPageChange: function (page) { return pagination.setIndex(page); }, disabled: store.isLoading }),
32
42
  pagination.isAvailableSizeEnabled && (react_1.default.createElement(Stack_1.Stack, { gap: "s", align: "center" },
@@ -23,9 +23,13 @@ exports.DataGridRow = (0, core_1.dataGridObserver)(function (_a) {
23
23
  store.columns.map(function (column) {
24
24
  var cell = column.cell;
25
25
  var value = column.accessor(row, index);
26
- var renderedCell = (0, utils_1.isFunction)(cell)
27
- ? cell(value, row, index)
28
- : cell;
26
+ var renderedCell = (function () {
27
+ if ((0, utils_1.isFunction)(cell)) {
28
+ var Component = cell;
29
+ return (react_1.default.createElement(Component, { key: "".concat(column.id, "-").concat(index), data: value, item: row, index: index, column: column }));
30
+ }
31
+ return cell;
32
+ })();
29
33
  var cellComponent = (function () {
30
34
  if ((0, utils_1.isString)(renderedCell) || (0, utils_1.isNumber)(renderedCell)) {
31
35
  return (react_1.default.createElement(cells_1.DataGridCellItem, { align: column.align }, renderedCell));
@@ -27,7 +27,7 @@ exports.DataGridSubRow = (0, core_1.dataGridObserver)(function (_a) {
27
27
  ? store.subRows.getIsExpandedRoot(id)
28
28
  : !!((_c = subRow.root) === null || _c === void 0 ? void 0 : _c.getIsExpanded(id));
29
29
  var canExpand = subRow.canExpand;
30
- var rendered = subRow.render(row, index);
30
+ var Component = subRow.render;
31
31
  var expandButton = (react_1.default.createElement(IconButtonNext_1.IconButton, { icon: subRow.getIsExpanded(id) ? icons_1.ChevronUpIcon : icons_1.ChevronDownIcon, size: "s", onClick: function () {
32
32
  subRow.toggle(id);
33
33
  }, compressed: true }));
@@ -47,7 +47,7 @@ exports.DataGridSubRow = (0, core_1.dataGridObserver)(function (_a) {
47
47
  canExpand &&
48
48
  store.subRows.isLeft &&
49
49
  expandButton,
50
- rendered,
50
+ react_1.default.createElement(Component, { subRow: subRow, index: index, item: row }),
51
51
  isSomeRowsVisible &&
52
52
  canExpand &&
53
53
  store.subRows.isRight &&
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DataGridAllFiltersDrawer = void 0;
4
4
  var tslib_1 = require("tslib");
5
- var react_1 = tslib_1.__importDefault(require("react"));
5
+ var react_1 = tslib_1.__importStar(require("react"));
6
6
  var DrawerNext_1 = require("@ozen-ui/kit/DrawerNext");
7
7
  var Stack_1 = require("@ozen-ui/kit/Stack");
8
8
  var useEventListener_1 = require("@ozen-ui/kit/useEventListener");
@@ -10,8 +10,8 @@ var utils_1 = require("@ozen-ui/kit/utils");
10
10
  var core_1 = require("../../core");
11
11
  var filters_1 = require("../filters");
12
12
  var components_1 = require("./components");
13
- exports.DataGridAllFiltersDrawer = (0, core_1.dataGridObserver)(function (_a) {
14
- var title = _a.title, subTitle = _a.subTitle, applyButton = _a.applyButton, closeButton = _a.closeButton;
13
+ var NonWrappedDataGridAllFiltersDrawer = (0, react_1.forwardRef)(function (_a, ref) {
14
+ var title = _a.title, subTitle = _a.subTitle, applyButton = _a.applyButton, closeButton = _a.closeButton, onClose = _a.onClose, other = tslib_1.__rest(_a, ["title", "subTitle", "applyButton", "closeButton", "onClose"]);
15
15
  var store = (0, core_1.useDataGridStore)();
16
16
  var isOpen = store.modals.isOpen('filters');
17
17
  var filters = store.filters;
@@ -25,7 +25,10 @@ exports.DataGridAllFiltersDrawer = (0, core_1.dataGridObserver)(function (_a) {
25
25
  store.modals.closeFilters();
26
26
  },
27
27
  });
28
- return (react_1.default.createElement(DrawerNext_1.Drawer, { open: isOpen, onClose: function () { return store.modals.closeFilters(); } },
28
+ return (react_1.default.createElement(DrawerNext_1.Drawer, tslib_1.__assign({}, other, { ref: ref, open: isOpen, onClose: function () {
29
+ store.modals.closeFilters();
30
+ onClose === null || onClose === void 0 ? void 0 : onClose();
31
+ } }),
29
32
  react_1.default.createElement(DrawerNext_1.DrawerHeader, null,
30
33
  react_1.default.createElement(DrawerNext_1.DrawerTitle, null, title),
31
34
  subTitle && react_1.default.createElement(DrawerNext_1.DrawerSubtitle, null, subTitle)),
@@ -33,3 +36,5 @@ exports.DataGridAllFiltersDrawer = (0, core_1.dataGridObserver)(function (_a) {
33
36
  react_1.default.createElement(Stack_1.Stack, { direction: "column", gap: "s", fullWidth: true }, filters.filters.map(function (filter) { return (react_1.default.createElement(filters_1.DataGridFilter, { key: filter.id, filter: filter, type: "allFilter" })); }))),
34
37
  react_1.default.createElement(components_1.DataGridAllFiltersDrawerFooter, { applyButton: applyButton, closeButton: closeButton })));
35
38
  });
39
+ NonWrappedDataGridAllFiltersDrawer.displayName = 'DataGridAllFiltersDrawer';
40
+ exports.DataGridAllFiltersDrawer = (0, core_1.dataGridObserver)(NonWrappedDataGridAllFiltersDrawer);
@@ -7,8 +7,8 @@ var CheckboxNext_1 = require("@ozen-ui/kit/CheckboxNext");
7
7
  var DrawerNext_1 = require("@ozen-ui/kit/DrawerNext");
8
8
  var FormGroup_1 = require("@ozen-ui/kit/FormGroup");
9
9
  var core_1 = require("../../core");
10
- exports.DataGridSettingsDrawer = (0, core_1.dataGridObserver)(function (_a) {
11
- var title = _a.title, subTitle = _a.subTitle, closeButton = _a.closeButton, applyButton = _a.applyButton;
10
+ var NonWrappedDataGridSettingsDrawer = (0, react_1.forwardRef)(function (_a, ref) {
11
+ var title = _a.title, subTitle = _a.subTitle, closeButton = _a.closeButton, applyButton = _a.applyButton, onClose = _a.onClose, other = tslib_1.__rest(_a, ["title", "subTitle", "closeButton", "applyButton", "onClose"]);
12
12
  var store = (0, core_1.useDataGridStore)();
13
13
  var isOpen = store.modals.isOpen('columns-settings');
14
14
  var columns = store.allColumns;
@@ -37,14 +37,18 @@ exports.DataGridSettingsDrawer = (0, core_1.dataGridObserver)(function (_a) {
37
37
  setLocalVisible({});
38
38
  }
39
39
  }, [isOpen]);
40
- return (react_1.default.createElement(DrawerNext_1.Drawer, { open: isOpen, onClose: function () { return store.modals.closeColumnsSettings(); } },
40
+ return (react_1.default.createElement(DrawerNext_1.Drawer, tslib_1.__assign({}, other, { ref: ref, open: isOpen, onClose: function () {
41
+ store.modals.closeColumnsSettings();
42
+ onClose === null || onClose === void 0 ? void 0 : onClose();
43
+ } }),
41
44
  react_1.default.createElement(DrawerNext_1.DrawerHeader, null,
42
45
  react_1.default.createElement(DrawerNext_1.DrawerTitle, null, title),
43
46
  subTitle && react_1.default.createElement(DrawerNext_1.DrawerSubtitle, null, subTitle)),
44
47
  react_1.default.createElement(DrawerNext_1.DrawerBody, null,
45
48
  react_1.default.createElement(FormGroup_1.FormGroup, { size: "l", direction: "column" }, columns.map(function (column) {
46
49
  var checked = checkIsSelected(column);
47
- return (react_1.default.createElement(CheckboxNext_1.Checkbox, { key: column.id, label: column.name, checked: checked, disabled: isLeftAlone && checked, size: "l", onChange: function (event) {
50
+ var NameComponent = column.name;
51
+ return (react_1.default.createElement(CheckboxNext_1.Checkbox, { key: column.id, label: react_1.default.createElement(NameComponent, null), checked: checked, disabled: isLeftAlone && checked, size: "l", onChange: function (event) {
48
52
  setLocalVisible(function (previousVisible) {
49
53
  var _a;
50
54
  return (tslib_1.__assign(tslib_1.__assign({}, previousVisible), (_a = {}, _a[column.id] = event.target.checked, _a)));
@@ -61,3 +65,5 @@ exports.DataGridSettingsDrawer = (0, core_1.dataGridObserver)(function (_a) {
61
65
  store.modals.closeColumnsSettings();
62
66
  } }, applyButton)))));
63
67
  });
68
+ NonWrappedDataGridSettingsDrawer.displayName = 'DataGridSettingsDrawer';
69
+ exports.DataGridSettingsDrawer = (0, core_1.dataGridObserver)(NonWrappedDataGridSettingsDrawer);
@@ -9,19 +9,7 @@ var utilts_1 = require("./utilts");
9
9
  exports.DataGridAutocompleteFilter = (0, core_1.dataGridObserver)(function (_a) {
10
10
  var filter = _a.filter, type = _a.type, onChange = _a.onChange, onInputChange = _a.onInputChange, style = _a.style, renderMoreTag = _a.renderMoreTag, renderOption = _a.renderOption, searchFunction = _a.searchFunction, other = tslib_1.__rest(_a, ["filter", "type", "onChange", "onInputChange", "style", "renderMoreTag", "renderOption", "searchFunction"]);
11
11
  var value = filter.valueByType(type);
12
- return (react_1.default.createElement(AutocompleteNext_1.Autocomplete, tslib_1.__assign({ disableCloseOnSelect: filter.isMultiple, limitTags: "responsive", label: filter.name }, other, { size: type === 'allFilter' ? 's' : 'xs', options: filter.options, getOptionKey: function (option) { return option.value; }, getOptionLabel: function (option) { return option.label; }, getOptionDisabled: function () { return false; }, multiple: filter.isMultiple, renderMoreTag: renderMoreTag
13
- ? function (props, ref) {
14
- return renderMoreTag(props, ref);
15
- }
16
- : undefined, renderOption: renderOption
17
- ? function (props) {
18
- return renderOption(props);
19
- }
20
- : undefined, searchFunction: searchFunction
21
- ? function (options, searchValue) {
22
- return searchFunction(options, searchValue);
23
- }
24
- : undefined, value: (0, utilts_1.filterValueToAutocomplete)(filter, value), style: tslib_1.__assign(tslib_1.__assign({}, style), { minWidth: 200 }), onInputChange: function (event, _value) {
12
+ return (react_1.default.createElement(AutocompleteNext_1.Autocomplete, tslib_1.__assign({ disableCloseOnSelect: filter.isMultiple, limitTags: "responsive", label: filter.name }, other, { size: type === 'allFilter' ? 's' : 'xs', options: filter.options, getOptionKey: function (option) { return option.value; }, getOptionLabel: function (option) { return option.label; }, getOptionDisabled: function () { return false; }, multiple: filter.isMultiple, renderMoreTag: renderMoreTag, renderOption: renderOption, searchFunction: searchFunction, value: (0, utilts_1.filterValueToAutocomplete)(filter, value), style: tslib_1.__assign(tslib_1.__assign({}, style), { minWidth: 200 }), onInputChange: function (event, _value) {
25
13
  var value = _value !== null && _value !== void 0 ? _value : '';
26
14
  onInputChange === null || onInputChange === void 0 ? void 0 : onInputChange(event, value);
27
15
  }, onChange: function (event, _value) {
@@ -1,9 +1,10 @@
1
1
  import { isFunction, isNumber } from '@ozen-ui/kit/utils';
2
2
  import { autorun, makeAutoObservable, reaction, runInAction } from 'mobx';
3
3
  import { EventBus } from '../../../shared';
4
+ import { createDataGridStoreColumnName } from './utils';
4
5
  var DataGridStoreColumn = /** @class */ (function () {
5
6
  function DataGridStoreColumn(column, context, root) {
6
- var _a;
7
+ var _a, _b;
7
8
  this.width = 'responsive';
8
9
  this.eventBus = new EventBus();
9
10
  this.rawIsVisible = true;
@@ -11,14 +12,14 @@ var DataGridStoreColumn = /** @class */ (function () {
11
12
  this.root = root !== null && root !== void 0 ? root : null;
12
13
  this.id = column.id;
13
14
  this.cell = column.cell;
14
- this.header = column.header;
15
+ this.name = createDataGridStoreColumnName(column, this);
16
+ this.header = (_a = column.header) !== null && _a !== void 0 ? _a : this.name;
15
17
  this.accessor = column.accessor;
16
18
  this.footer = column.footer;
17
- this.name = column.name;
18
19
  this.align = column.align;
19
20
  this.sortSettings = column.sortSettings;
20
21
  this.sort = null;
21
- var width = (_a = column.width) !== null && _a !== void 0 ? _a : context.columnsInfo.width;
22
+ var width = (_b = column.width) !== null && _b !== void 0 ? _b : context.columnsInfo.width;
22
23
  this.rawWidth = (function () {
23
24
  if (isFunction(width)) {
24
25
  return width;
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ import { isFunction } from '@ozen-ui/kit/utils';
3
+ export var createDataGridStoreColumnName = function (column, storeColumn) {
4
+ var Component = function () {
5
+ if (isFunction(column.name)) {
6
+ var Component_1 = column.name;
7
+ return React.createElement(Component_1, { column: storeColumn });
8
+ }
9
+ return column.name;
10
+ };
11
+ return Component;
12
+ };
@@ -1,14 +1,14 @@
1
- import { __assign } from "tslib";
2
1
  import { isArray } from '@ozen-ui/kit/utils';
3
2
  import { dataGridColumnSortType } from '../entities';
3
+ import { createDataGridColumnDefaultRender } from './utils';
4
4
  var DataGridColumn = /** @class */ (function () {
5
5
  function DataGridColumn(_a) {
6
6
  var id = _a.id, cell = _a.cell, header = _a.header, accessor = _a.accessor, footer = _a.footer, name = _a.name, align = _a.align, sorting = _a.sorting, width = _a.width;
7
7
  this.root = null;
8
- this.context = null;
9
8
  this.rawId = id;
10
- this.header = header !== null && header !== void 0 ? header : name;
11
- this.cell = cell !== null && cell !== void 0 ? cell : (function (data) { return String(data); });
9
+ this.header = header;
10
+ this.cell =
11
+ cell !== null && cell !== void 0 ? cell : createDataGridColumnDefaultRender();
12
12
  this.footer = footer;
13
13
  this.accessor = accessor;
14
14
  this.name = name;
@@ -27,9 +27,6 @@ var DataGridColumn = /** @class */ (function () {
27
27
  available: availableSorting,
28
28
  };
29
29
  }
30
- DataGridColumn.prototype.setContext = function (context) {
31
- this.context = context;
32
- };
33
30
  Object.defineProperty(DataGridColumn.prototype, "id", {
34
31
  get: function () {
35
32
  if (this.root) {
@@ -43,24 +40,6 @@ var DataGridColumn = /** @class */ (function () {
43
40
  DataGridColumn.prototype.setRoot = function (root) {
44
41
  this.root = root;
45
42
  };
46
- DataGridColumn.prototype.createDateFilter = function (params) {
47
- return this.context.createDateFilter(__assign(__assign({}, params), { column: this }));
48
- };
49
- DataGridColumn.prototype.createSelectFilter = function (params) {
50
- return this.context.createSelectFilter(__assign(__assign({}, params), { column: this }));
51
- };
52
- DataGridColumn.prototype.createNumberFilter = function (params) {
53
- return this.context.createNumberFilter(__assign(__assign({}, params), { column: this }));
54
- };
55
- DataGridColumn.prototype.createStringFilter = function (params) {
56
- return this.context.createStringFilter(__assign(__assign({}, params), { column: this }));
57
- };
58
- DataGridColumn.prototype.createAutocompleteFilter = function (params) {
59
- return this.context.createAutocompleteFilter(__assign(__assign({}, params), { column: this }));
60
- };
61
- DataGridColumn.prototype.createAutocompleteListCardFilter = function (params) {
62
- return this.context.createAutocompleteListCardFilter(__assign(__assign({}, params), { column: this }));
63
- };
64
43
  Object.defineProperty(DataGridColumn.prototype, "depth", {
65
44
  get: function () {
66
45
  if (this.root) {
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import { DataGridCellItem } from '../../../ui/cells/DataGridCellItem';
3
+ export var createDataGridColumnDefaultRender = function () {
4
+ var Component = function (_a) {
5
+ var data = _a.data, column = _a.column;
6
+ return (React.createElement(DataGridCellItem, { align: column.align }, String(data)));
7
+ };
8
+ return Component;
9
+ };
@@ -8,17 +8,14 @@ var DataGridStoreFilter = /** @class */ (function () {
8
8
  this.id = filter.id;
9
9
  this.rawName = filter.name;
10
10
  this.group = filter.group;
11
- this.column = null;
12
11
  makeObservable(this, {
13
12
  id: observable,
14
13
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
15
14
  // @ts-expect-error
16
15
  rawName: observable,
17
- column: observable,
18
16
  group: observable,
19
17
  context: observable,
20
18
  setGroup: action,
21
- setColumn: action,
22
19
  setValue: action,
23
20
  setLocalValue: action,
24
21
  setAllFilterValue: action,
@@ -102,9 +99,6 @@ var DataGridStoreFilter = /** @class */ (function () {
102
99
  DataGridStoreFilter.prototype.setGroup = function (group) {
103
100
  this.group = group;
104
101
  };
105
- DataGridStoreFilter.prototype.setColumn = function (column) {
106
- this.column = column;
107
- };
108
102
  Object.defineProperty(DataGridStoreFilter.prototype, "isEditedLocal", {
109
103
  get: function () {
110
104
  return !this.isEqualValues(this.localValue, this.value);
@@ -145,9 +139,6 @@ var DataGridStoreFilter = /** @class */ (function () {
145
139
  if (this.rawName) {
146
140
  return this.rawName;
147
141
  }
148
- if (this.column) {
149
- return this.column.name;
150
- }
151
142
  return this.id;
152
143
  },
153
144
  enumerable: false,
@@ -1,9 +1,8 @@
1
1
  /* eslint-disable @typescript-eslint/no-explicit-any */
2
2
  var DataGridTableFilter = /** @class */ (function () {
3
3
  function DataGridTableFilter(_a) {
4
- var id = _a.id, column = _a.column, name = _a.name, group = _a.group, render = _a.render;
5
- this.column = column !== null && column !== void 0 ? column : null;
6
- this.id = "filter_".concat(this.column ? "".concat(this.column.id, ".") : '').concat(id);
4
+ var id = _a.id, name = _a.name, group = _a.group, render = _a.render;
5
+ this.id = "filter_".concat(id);
7
6
  this.name = name !== null && name !== void 0 ? name : null;
8
7
  this.group = group !== null && group !== void 0 ? group : 'main';
9
8
  this.render = render !== null && render !== void 0 ? render : null;
@@ -60,14 +60,6 @@ var DataGridStore = /** @class */ (function () {
60
60
  return;
61
61
  }
62
62
  _this.filters.addFilter(createdFilter);
63
- if (!filter.column) {
64
- return;
65
- }
66
- var storeColumn = _this.findColumn(filter.column);
67
- if (!storeColumn) {
68
- return;
69
- }
70
- createdFilter.setColumn(storeColumn);
71
63
  });
72
64
  this.setData(data);
73
65
  this.recalculate();
@@ -1,2 +1,3 @@
1
1
  export * from './position';
2
+ export * from './render';
2
3
  export * from './settings';
@@ -0,0 +1 @@
1
+ export {};
@@ -55,7 +55,6 @@ var DataGridTable = /** @class */ (function () {
55
55
  };
56
56
  DataGridTable.prototype.addColumn = function (column) {
57
57
  this.nodes.push(column);
58
- column.setContext(this);
59
58
  return column;
60
59
  };
61
60
  DataGridTable.prototype.createGroup = function (groupParams) {
@@ -35,7 +35,13 @@ export var DataGridHeadFoot = dataGridObserver(function (_a) {
35
35
  isSubRowEnabled && store.subRows.isLeft && (React.createElement(DataGridHeadFootExpand, null)),
36
36
  nodes.map(function (node) {
37
37
  var render = isFoot ? node.footer : node.header;
38
- var rendered = isFunction(render) ? render() : render;
38
+ var rendered = (function () {
39
+ if (isFunction(render)) {
40
+ var Component = render;
41
+ return React.createElement(Component, null);
42
+ }
43
+ return render;
44
+ })();
39
45
  var isGroup = node instanceof DataGridStoreColumnsGroup;
40
46
  return (React.createElement(Fragment, { key: node.id },
41
47
  isGroup &&
@@ -20,10 +20,20 @@ var UnwrappedDataGridPagination = forwardRef(function (_a, ref) {
20
20
  if (!pagination.isEnabled) {
21
21
  return null;
22
22
  }
23
- var renderedBeforeText = isFunction(beforeText) ? beforeText() : beforeText;
24
- var renderedAfterText = isFunction(afterText)
25
- ? afterText(pagination.total)
26
- : afterText;
23
+ var renderedBeforeText = (function () {
24
+ if (isFunction(beforeText)) {
25
+ var Component = beforeText;
26
+ return React.createElement(Component, null);
27
+ }
28
+ return beforeText;
29
+ })();
30
+ var renderedAfterText = (function () {
31
+ if (isFunction(afterText)) {
32
+ var Component = afterText;
33
+ return React.createElement(Component, { total: pagination.total });
34
+ }
35
+ return afterText;
36
+ })();
27
37
  return (React.createElement(Stack, { ref: ref, className: cnDataGridPagination('', [className]), justify: "spaceBetween", align: "center", fullWidth: true },
28
38
  React.createElement(Pagination, { totalCount: pagination.total, page: pagination.index, pageSize: pagination.pageSize, size: "s", onPageChange: function (page) { return pagination.setIndex(page); }, disabled: store.isLoading }),
29
39
  pagination.isAvailableSizeEnabled && (React.createElement(Stack, { gap: "s", align: "center" },