@salutejs/plasma-new-hope 0.344.0-canary.2399.20427286988.0 → 0.344.0-canary.2400.20429488881.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 (65) hide show
  1. package/dist/css/cjs/components/Table/Table.css +13 -12
  2. package/dist/css/cjs/components/Table/Table.js +14 -10
  3. package/dist/css/cjs/components/Table/Table.js.map +1 -1
  4. package/dist/css/cjs/components/Table/Table.styles.js +66 -51
  5. package/dist/css/cjs/components/Table/Table.styles.js.map +1 -1
  6. package/dist/css/cjs/components/Table/Table.styles_a4393s.css +13 -0
  7. package/dist/css/cjs/components/Table/Table.tokens.js +2 -1
  8. package/dist/css/cjs/components/Table/Table.tokens.js.map +1 -1
  9. package/dist/css/cjs/components/Table/ui/Cell/Cell.css +13 -12
  10. package/dist/css/cjs/components/Table/ui/EditableCell/EditableCell.css +13 -12
  11. package/dist/css/cjs/components/Table/ui/HeadCell/HeadCell.css +13 -12
  12. package/dist/css/cjs/components/Table/ui/HeadCell/ui/Filter/Filter.css +13 -12
  13. package/dist/css/cjs/components/Tabs/utils/index.js +2 -5
  14. package/dist/css/cjs/components/Tabs/utils/index.js.map +1 -1
  15. package/dist/css/cjs/index.css +13 -12
  16. package/dist/css/es/components/Table/Table.css +13 -12
  17. package/dist/css/es/components/Table/Table.js +15 -11
  18. package/dist/css/es/components/Table/Table.js.map +1 -1
  19. package/dist/css/es/components/Table/Table.styles.js +66 -52
  20. package/dist/css/es/components/Table/Table.styles.js.map +1 -1
  21. package/dist/css/es/components/Table/Table.styles_a4393s.css +13 -0
  22. package/dist/css/es/components/Table/Table.tokens.js +2 -1
  23. package/dist/css/es/components/Table/Table.tokens.js.map +1 -1
  24. package/dist/css/es/components/Table/ui/Cell/Cell.css +13 -12
  25. package/dist/css/es/components/Table/ui/EditableCell/EditableCell.css +13 -12
  26. package/dist/css/es/components/Table/ui/HeadCell/HeadCell.css +13 -12
  27. package/dist/css/es/components/Table/ui/HeadCell/ui/Filter/Filter.css +13 -12
  28. package/dist/css/es/components/Tabs/utils/index.js +2 -5
  29. package/dist/css/es/components/Tabs/utils/index.js.map +1 -1
  30. package/dist/css/es/index.css +13 -12
  31. package/dist/emotion/cjs/components/Table/Table.js +15 -10
  32. package/dist/emotion/cjs/components/Table/Table.styles.js +34 -24
  33. package/dist/emotion/cjs/components/Table/Table.tokens.js +2 -1
  34. package/dist/emotion/cjs/components/Tabs/utils/index.js +2 -4
  35. package/dist/emotion/cjs/components/_beta/Tooltip/Tooltip.types.js +4 -0
  36. package/dist/emotion/cjs/examples/components/Combobox/Combobox.js +0 -15
  37. package/dist/emotion/es/components/Table/Table.js +16 -11
  38. package/dist/emotion/es/components/Table/Table.styles.js +31 -24
  39. package/dist/emotion/es/components/Table/Table.tokens.js +2 -1
  40. package/dist/emotion/es/components/Tabs/utils/index.js +2 -4
  41. package/dist/emotion/es/components/_beta/Tooltip/Tooltip.types.js +1 -0
  42. package/dist/styled-components/cjs/components/Table/Table.js +15 -10
  43. package/dist/styled-components/cjs/components/Table/Table.styles.js +27 -14
  44. package/dist/styled-components/cjs/components/Table/Table.tokens.js +2 -1
  45. package/dist/styled-components/cjs/components/Tabs/utils/index.js +2 -4
  46. package/dist/styled-components/cjs/components/_beta/Tooltip/Tooltip.types.js +4 -0
  47. package/dist/styled-components/cjs/examples/components/Combobox/Combobox.js +0 -15
  48. package/dist/styled-components/es/components/Table/Table.js +16 -11
  49. package/dist/styled-components/es/components/Table/Table.styles.js +24 -14
  50. package/dist/styled-components/es/components/Table/Table.tokens.js +2 -1
  51. package/dist/styled-components/es/components/Tabs/utils/index.js +2 -4
  52. package/dist/styled-components/es/components/_beta/Tooltip/Tooltip.types.js +1 -0
  53. package/package.json +5 -5
  54. package/types/components/Table/Table.d.ts.map +1 -1
  55. package/types/components/Table/Table.styles.d.ts +4 -0
  56. package/types/components/Table/Table.styles.d.ts.map +1 -1
  57. package/types/components/Table/Table.tokens.d.ts +1 -0
  58. package/types/components/Table/Table.tokens.d.ts.map +1 -1
  59. package/types/components/Table/Table.types.d.ts +16 -0
  60. package/types/components/Table/Table.types.d.ts.map +1 -1
  61. package/types/components/Tabs/utils/index.d.ts.map +1 -1
  62. package/types/components/_beta/Tooltip/Tooltip.types.d.ts +62 -0
  63. package/types/components/_beta/Tooltip/Tooltip.types.d.ts.map +1 -0
  64. package/dist/css/cjs/components/Table/Table.styles_1jqvkrz.css +0 -12
  65. package/dist/css/es/components/Table/Table.styles_1jqvkrz.css +0 -12
@@ -4,7 +4,8 @@ export var classes = {
4
4
  sortingAscIcon: 'sorting-asc-icon',
5
5
  sortingDescIcon: 'sorting-desc-icon',
6
6
  filterIcon: 'filter-icon',
7
- resizeDivider: 'resize-divider'
7
+ resizeDivider: 'resize-divider',
8
+ scrollableContainer: 'table-scrollable-container'
8
9
  };
9
10
  export var tableTokens = {
10
11
  fontFamily: '--plasma-table-font-family',
@@ -1,4 +1,3 @@
1
- var TOLERANCE = 1; // Погрешность для субпиксельного рендеринга
2
1
  var getIsFirstOverflowingTab = function(item, maxScroll) {
3
2
  var orientation = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 'horizontal';
4
3
  if (!item.current) {
@@ -8,7 +7,7 @@ var getIsFirstOverflowingTab = function(item, maxScroll) {
8
7
  if (currentOffset === undefined) {
9
8
  return;
10
9
  }
11
- return currentOffset < maxScroll - TOLERANCE;
10
+ return currentOffset < maxScroll;
12
11
  };
13
12
  var getIsLastOverflowingTab = function(item, minScroll) {
14
13
  var orientation = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 'horizontal';
@@ -20,8 +19,7 @@ var getIsLastOverflowingTab = function(item, minScroll) {
20
19
  return;
21
20
  }
22
21
  var additionalOffset = orientation === 'horizontal' ? item.current.offsetWidth : item.current.offsetHeight;
23
- var itemRightEdge = currentOffset + additionalOffset;
24
- return itemRightEdge > minScroll + TOLERANCE;
22
+ return currentOffset + additionalOffset > minScroll;
25
23
  };
26
24
  export var getFirstOverflowingTab = function(items, maxScroll) {
27
25
  var orientation = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 'horizontal';
@@ -19,6 +19,7 @@ _export(exports, {
19
19
  var _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
20
20
  var _reacttable = require("@tanstack/react-table");
21
21
  var _plasmacore = require("@salutejs/plasma-core");
22
+ var _Tabletokens = require("./Table.tokens");
22
23
  var _utils = require("./utils");
23
24
  var _ui = require("./ui");
24
25
  var _Tablestyles = require("./Table.styles");
@@ -178,7 +179,7 @@ function _unsupported_iterable_to_array(o, minLen) {
178
179
  }
179
180
  var tableRoot = function(Root) {
180
181
  return /*#__PURE__*/ (0, _react.forwardRef)(function(_param, ref) {
181
- var data = _param.data, onChange = _param.onChange, columns = _param.columns, view = _param.view, size = _param.size, _param_borderVariant = _param.borderVariant, borderVariant = _param_borderVariant === void 0 ? 'all' : _param_borderVariant, _param_enableSelection = _param.enableSelection, enableSelection = _param_enableSelection === void 0 ? false : _param_enableSelection, outerSelected = _param.selected, outerFiltered = _param.filtered, outerSorted = _param.sorted, maxHeight = _param.maxHeight, _param_stickyHeader = _param.stickyHeader, stickyHeader = _param_stickyHeader === void 0 ? false : _param_stickyHeader, onCellUpdate = _param.onCellUpdate, setRowProps = _param.setRowProps, props = _object_without_properties(_param, [
182
+ var data = _param.data, onChange = _param.onChange, columns = _param.columns, view = _param.view, size = _param.size, _param_borderVariant = _param.borderVariant, borderVariant = _param_borderVariant === void 0 ? 'all' : _param_borderVariant, _param_enableSelection = _param.enableSelection, enableSelection = _param_enableSelection === void 0 ? false : _param_enableSelection, outerSelected = _param.selected, outerFiltered = _param.filtered, outerSorted = _param.sorted, maxHeight = _param.maxHeight, _param_stickyHeader = _param.stickyHeader, stickyHeader = _param_stickyHeader === void 0 ? false : _param_stickyHeader, onCellUpdate = _param.onCellUpdate, setRowProps = _param.setRowProps, topContent = _param.topContent, bottomContent = _param.bottomContent, loadingSlot = _param.loadingSlot, onScroll = _param.onScroll, props = _object_without_properties(_param, [
182
183
  "data",
183
184
  "onChange",
184
185
  "columns",
@@ -192,7 +193,11 @@ var tableRoot = function(Root) {
192
193
  "maxHeight",
193
194
  "stickyHeader",
194
195
  "onCellUpdate",
195
- "setRowProps"
196
+ "setRowProps",
197
+ "topContent",
198
+ "bottomContent",
199
+ "loadingSlot",
200
+ "onScroll"
196
201
  ]);
197
202
  var _useState = _sliced_to_array((0, _react.useState)(outerSelected || {}), 2), innerSelected = _useState[0], innerSetSelected = _useState[1];
198
203
  var _useState1 = _sliced_to_array((0, _react.useState)(outerFiltered || []), 2), innerFiltered = _useState1[0], setInnerFiltered = _useState1[1];
@@ -315,6 +320,7 @@ var tableRoot = function(Root) {
315
320
  onRowSelectionChange: handleRowSelection,
316
321
  columnResizeMode: 'onChange',
317
322
  columnResizeDirection: 'ltr',
323
+ manualPagination: true,
318
324
  meta: {
319
325
  updateData: function(rowId, columnId, value) {
320
326
  if (onCellUpdate) {
@@ -328,11 +334,12 @@ var tableRoot = function(Root) {
328
334
  data: data,
329
335
  columns: columns,
330
336
  view: view,
331
- size: size,
332
- style: {
333
- maxHeight: maxHeight || 'none'
334
- }
335
- }, props), /*#__PURE__*/ _react.default.createElement(_Tablestyles.Table, {
337
+ size: size
338
+ }, props), topContent, /*#__PURE__*/ _react.default.createElement(_Tablestyles.ScrollableWrapper, {
339
+ className: _Tabletokens.classes.scrollableContainer,
340
+ onScroll: onScroll,
341
+ maxHeight: maxHeight
342
+ }, /*#__PURE__*/ _react.default.createElement(_Tablestyles.Table, {
336
343
  borderVariant: borderVariant,
337
344
  stickyHeader: stickyHeader
338
345
  }, /*#__PURE__*/ _react.default.createElement(_Tablestyles.Thead, {
@@ -359,8 +366,6 @@ var tableRoot = function(Root) {
359
366
  }, setRowProps === null || setRowProps === void 0 ? void 0 : setRowProps(row.original)), row.getVisibleCells().map(function(cell) {
360
367
  var _cell_column_columnDef_meta_setCellProps, _cell_column_columnDef_meta, _cell_column_columnDef, _cell_column, _cell_column_columnDef_meta1, _cell_column_columnDef1, _cell_column1;
361
368
  var additionalProps = (cell === null || cell === void 0 ? void 0 : (_cell_column = cell.column) === null || _cell_column === void 0 ? void 0 : (_cell_column_columnDef = _cell_column.columnDef) === null || _cell_column_columnDef === void 0 ? void 0 : (_cell_column_columnDef_meta = _cell_column_columnDef.meta) === null || _cell_column_columnDef_meta === void 0 ? void 0 : (_cell_column_columnDef_meta_setCellProps = _cell_column_columnDef_meta.setCellProps) === null || _cell_column_columnDef_meta_setCellProps === void 0 ? void 0 : _cell_column_columnDef_meta_setCellProps.call(_cell_column_columnDef_meta, cell.row.original, cell.id)) || {};
362
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
363
- // @ts-ignore
364
369
  return (cell === null || cell === void 0 ? void 0 : (_cell_column1 = cell.column) === null || _cell_column1 === void 0 ? void 0 : (_cell_column_columnDef1 = _cell_column1.columnDef) === null || _cell_column_columnDef1 === void 0 ? void 0 : (_cell_column_columnDef_meta1 = _cell_column_columnDef1.meta) === null || _cell_column_columnDef_meta1 === void 0 ? void 0 : _cell_column_columnDef_meta1.enableEditing) ? /*#__PURE__*/ _react.default.createElement(_ui.EditableCell, {
365
370
  key: cell.id,
366
371
  size: size,
@@ -379,7 +384,7 @@ var tableRoot = function(Root) {
379
384
  additionalProps: additionalProps
380
385
  });
381
386
  }));
382
- }))));
387
+ }))), loadingSlot), bottomContent);
383
388
  });
384
389
  };
385
390
  var tableConfig = {
@@ -21,6 +21,9 @@ _export(exports, {
21
21
  get Resizer () {
22
22
  return Resizer;
23
23
  },
24
+ get ScrollableWrapper () {
25
+ return ScrollableWrapper;
26
+ },
24
27
  get StyledCheckbox () {
25
28
  return StyledCheckbox;
26
29
  },
@@ -103,11 +106,21 @@ var Divider = (0, _engines.component)(mergedDividerConfig);
103
106
  var mergedLinkButtonConfig = (0, _engines.mergeConfig)(_LinkButton.linkButtonConfig);
104
107
  var LinkButtonBase = (0, _engines.component)(mergedLinkButtonConfig);
105
108
  var base = (0, _styledcomponents.css)([
106
- "display:inline-block;overflow-y:auto;"
109
+ "display:inline-flex;flex-direction:column;align-items:flex-start;"
107
110
  ]);
111
+ var ScrollableWrapper = _styledcomponents.default.div.withConfig({
112
+ displayName: "Table.styles__ScrollableWrapper",
113
+ componentId: "sc-c4913190-0"
114
+ })([
115
+ "overflow-y:auto;max-height:",
116
+ ";"
117
+ ], function(param) {
118
+ var maxHeight = param.maxHeight;
119
+ return maxHeight || 'none';
120
+ });
108
121
  var Table = _styledcomponents.default.table.withConfig({
109
122
  displayName: "Table.styles__Table",
110
- componentId: "sc-382f3104-0"
123
+ componentId: "sc-c4913190-1"
111
124
  })([
112
125
  "width:fit-content;font-family:var(",
113
126
  ");font-size:var(",
@@ -123,7 +136,7 @@ var Table = _styledcomponents.default.table.withConfig({
123
136
  });
124
137
  var Tr = _styledcomponents.default.tr.withConfig({
125
138
  displayName: "Table.styles__Tr",
126
- componentId: "sc-382f3104-1"
139
+ componentId: "sc-c4913190-2"
127
140
  })([
128
141
  "box-sizing:content-box;width:fit-content;background-color:",
129
142
  ";"
@@ -133,11 +146,11 @@ var Tr = _styledcomponents.default.tr.withConfig({
133
146
  });
134
147
  var Thead = _styledcomponents.default.thead.withConfig({
135
148
  displayName: "Table.styles__Thead",
136
- componentId: "sc-382f3104-2"
149
+ componentId: "sc-c4913190-3"
137
150
  })([
138
151
  "position:",
139
152
  ";top:0;background:",
140
- ";z-index:1;box-shadow:",
153
+ ";z-index:10;box-shadow:",
141
154
  ";",
142
155
  "{background:transparent;}"
143
156
  ], function(param) {
@@ -153,13 +166,13 @@ var Thead = _styledcomponents.default.thead.withConfig({
153
166
  }, Tr);
154
167
  var Tbody = _styledcomponents.default.tbody.withConfig({
155
168
  displayName: "Table.styles__Tbody",
156
- componentId: "sc-382f3104-3"
169
+ componentId: "sc-c4913190-4"
157
170
  })([
158
171
  ""
159
172
  ]);
160
173
  var Resizer = _styledcomponents.default.div.withConfig({
161
174
  displayName: "Table.styles__Resizer",
162
- componentId: "sc-382f3104-4"
175
+ componentId: "sc-c4913190-5"
163
176
  })([
164
177
  "display:",
165
178
  ";position:absolute;z-index:1;top:-0.0625rem;bottom:0;right:-0.125rem;width:0.1875rem;background:var(--outline-accent);cursor:col-resize;user-select:none;touch-action:none;"
@@ -169,12 +182,12 @@ var Resizer = _styledcomponents.default.div.withConfig({
169
182
  });
170
183
  var Th = _styledcomponents.default.th.withConfig({
171
184
  displayName: "Table.styles__Th",
172
- componentId: "sc-382f3104-5"
185
+ componentId: "sc-c4913190-6"
173
186
  })([
174
187
  "padding:",
175
188
  ";position:relative;font-weight:600;text-align:left;height:var(",
176
189
  ");background-color:transparent;color:inherit;box-sizing:content-box;border-width:0.0625rem;border-top-width:0;border-bottom-width:0;border-style:solid;border-color:",
177
- ";&:hover{",
190
+ ";box-sizing:border-box;&:hover{",
178
191
  "{display:block;}}"
179
192
  ], function(param) {
180
193
  var selectionCell = param.selectionCell;
@@ -185,7 +198,7 @@ var Th = _styledcomponents.default.th.withConfig({
185
198
  }, Resizer);
186
199
  var StyledCheckbox = (0, _styledcomponents.default)(Checkbox).withConfig({
187
200
  displayName: "Table.styles__StyledCheckbox",
188
- componentId: "sc-382f3104-6"
201
+ componentId: "sc-c4913190-7"
189
202
  })([
190
203
  "",
191
204
  ":var(",
@@ -205,7 +218,7 @@ var StyledCheckbox = (0, _styledcomponents.default)(Checkbox).withConfig({
205
218
  ], _Checkbox.checkboxTokens.triggerSize, _Tabletokens.tableTokens.checkboxTriggerSize, _Checkbox.checkboxTokens.triggerBorderRadius, _Tabletokens.tableTokens.checkboxTriggerBorderRadius, _Checkbox.checkboxTokens.fillColor, _Tabletokens.tableTokens.checkboxFillColor, _Checkbox.checkboxTokens.iconColor, _Tabletokens.tableTokens.checkboxTriggerIconColor, _Checkbox.checkboxTokens.triggerBorderCheckedColor, _Tabletokens.tableTokens.checkboxTriggerBorderCheckedColor, _Checkbox.checkboxTokens.triggerBorderWidth, _Tabletokens.tableTokens.checkboxTriggerBorderWidth, _Checkbox.checkboxTokens.triggerBorderColor, _Tabletokens.tableTokens.checkboxTriggerBorderColor);
206
219
  var StyledDivider = (0, _styledcomponents.default)(Divider).withConfig({
207
220
  displayName: "Table.styles__StyledDivider",
208
- componentId: "sc-382f3104-7"
221
+ componentId: "sc-c4913190-8"
209
222
  })([
210
223
  "",
211
224
  ":0.0625rem;",
@@ -214,7 +227,7 @@ var StyledDivider = (0, _styledcomponents.default)(Divider).withConfig({
214
227
  ], _Divider.dividerTokens.baseSideSize, _Divider.dividerTokens.background, _Divider.dividerTokens.borderRadius);
215
228
  var Button = (0, _styledcomponents.default)(ButtonBase).withConfig({
216
229
  displayName: "Table.styles__Button",
217
- componentId: "sc-382f3104-8"
230
+ componentId: "sc-c4913190-9"
218
231
  })([
219
232
  "",
220
233
  ":var(",
@@ -235,7 +248,7 @@ var Button = (0, _styledcomponents.default)(ButtonBase).withConfig({
235
248
  ], _Button.buttonTokens.buttonHeight, _Tabletokens.tableTokens.buttonHeight, _Button.buttonTokens.buttonDisabledOpacity, _Button.buttonTokens.buttonFontFamily, _Tabletokens.tableTokens.buttonFontFamily, _Button.buttonTokens.buttonFontSize, _Tabletokens.tableTokens.buttonFontSize, _Button.buttonTokens.buttonFontStyle, _Tabletokens.tableTokens.buttonFontStyle, _Button.buttonTokens.buttonFontWeight, _Tabletokens.tableTokens.buttonFontWeight, _Button.buttonTokens.buttonLetterSpacing, _Tabletokens.tableTokens.buttonLetterSpacing, _Button.buttonTokens.buttonLineHeight, _Tabletokens.tableTokens.buttonLineHeight);
236
249
  var ButtonAccent = (0, _styledcomponents.default)(Button).withConfig({
237
250
  displayName: "Table.styles__ButtonAccent",
238
- componentId: "sc-382f3104-9"
251
+ componentId: "sc-c4913190-10"
239
252
  })([
240
253
  "",
241
254
  ":var(--on-dark-text-primary);",
@@ -246,7 +259,7 @@ var ButtonAccent = (0, _styledcomponents.default)(Button).withConfig({
246
259
  ], _Button.buttonTokens.buttonColor, _Button.buttonTokens.buttonValueColor, _Button.buttonTokens.buttonBackgroundColor, _Button.buttonTokens.buttonBackgroundColorHover, _Button.buttonTokens.buttonBackgroundColorActive);
247
260
  var LinkButton = (0, _styledcomponents.default)(LinkButtonBase).withConfig({
248
261
  displayName: "Table.styles__LinkButton",
249
- componentId: "sc-382f3104-10"
262
+ componentId: "sc-c4913190-11"
250
263
  })([
251
264
  "",
252
265
  ":var(--text-primary);",
@@ -22,7 +22,8 @@ var classes = {
22
22
  sortingAscIcon: 'sorting-asc-icon',
23
23
  sortingDescIcon: 'sorting-desc-icon',
24
24
  filterIcon: 'filter-icon',
25
- resizeDivider: 'resize-divider'
25
+ resizeDivider: 'resize-divider',
26
+ scrollableContainer: 'table-scrollable-container'
26
27
  };
27
28
  var tableTokens = {
28
29
  fontFamily: '--plasma-table-font-family',
@@ -16,7 +16,6 @@ _export(exports, {
16
16
  return getLastOverflowingTab;
17
17
  }
18
18
  });
19
- var TOLERANCE = 1; // Погрешность для субпиксельного рендеринга
20
19
  var getIsFirstOverflowingTab = function(item, maxScroll) {
21
20
  var orientation = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 'horizontal';
22
21
  if (!item.current) {
@@ -26,7 +25,7 @@ var getIsFirstOverflowingTab = function(item, maxScroll) {
26
25
  if (currentOffset === undefined) {
27
26
  return;
28
27
  }
29
- return currentOffset < maxScroll - TOLERANCE;
28
+ return currentOffset < maxScroll;
30
29
  };
31
30
  var getIsLastOverflowingTab = function(item, minScroll) {
32
31
  var orientation = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 'horizontal';
@@ -38,8 +37,7 @@ var getIsLastOverflowingTab = function(item, minScroll) {
38
37
  return;
39
38
  }
40
39
  var additionalOffset = orientation === 'horizontal' ? item.current.offsetWidth : item.current.offsetHeight;
41
- var itemRightEdge = currentOffset + additionalOffset;
42
- return itemRightEdge > minScroll + TOLERANCE;
40
+ return currentOffset + additionalOffset > minScroll;
43
41
  };
44
42
  var getFirstOverflowingTab = function(items, maxScroll) {
45
43
  var orientation = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 'horizontal';
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
@@ -1,16 +1 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "Combobox", {
6
- enumerable: true,
7
- get: function() {
8
- return Combobox;
9
- }
10
- });
11
- var _engines = require("../../../engines");
12
- var _ = require("../../..");
13
- var _Comboboxconfig = require("./Combobox.config");
14
- var mergedConfig = (0, _engines.mergeConfig)(_.comboboxNewConfig, _Comboboxconfig.config);
15
- var ComboboxComponent = (0, _engines.component)(mergedConfig);
16
- var Combobox = ComboboxComponent;
@@ -114,12 +114,13 @@ function _unsupported_iterable_to_array(o, minLen) {
114
114
  import React, { forwardRef, useState, useMemo, useRef } from "react";
115
115
  import { getCoreRowModel, useReactTable, getSortedRowModel, getFilteredRowModel } from "@tanstack/react-table";
116
116
  import { useForkRef } from "@salutejs/plasma-core";
117
+ import { classes } from "./Table.tokens";
117
118
  import { SELECT_COLUMN_ID } from "./utils";
118
119
  import { HeadCell, Cell, EditableCell } from "./ui";
119
- import { base, Table, Tr, Thead, StyledCheckbox, Tbody } from "./Table.styles";
120
+ import { base, Table, Tr, Thead, StyledCheckbox, Tbody, ScrollableWrapper } from "./Table.styles";
120
121
  export var tableRoot = function(Root) {
121
122
  return /*#__PURE__*/ forwardRef(function(_param, ref) {
122
- var data = _param.data, onChange = _param.onChange, columns = _param.columns, view = _param.view, size = _param.size, _param_borderVariant = _param.borderVariant, borderVariant = _param_borderVariant === void 0 ? 'all' : _param_borderVariant, _param_enableSelection = _param.enableSelection, enableSelection = _param_enableSelection === void 0 ? false : _param_enableSelection, outerSelected = _param.selected, outerFiltered = _param.filtered, outerSorted = _param.sorted, maxHeight = _param.maxHeight, _param_stickyHeader = _param.stickyHeader, stickyHeader = _param_stickyHeader === void 0 ? false : _param_stickyHeader, onCellUpdate = _param.onCellUpdate, setRowProps = _param.setRowProps, props = _object_without_properties(_param, [
123
+ var data = _param.data, onChange = _param.onChange, columns = _param.columns, view = _param.view, size = _param.size, _param_borderVariant = _param.borderVariant, borderVariant = _param_borderVariant === void 0 ? 'all' : _param_borderVariant, _param_enableSelection = _param.enableSelection, enableSelection = _param_enableSelection === void 0 ? false : _param_enableSelection, outerSelected = _param.selected, outerFiltered = _param.filtered, outerSorted = _param.sorted, maxHeight = _param.maxHeight, _param_stickyHeader = _param.stickyHeader, stickyHeader = _param_stickyHeader === void 0 ? false : _param_stickyHeader, onCellUpdate = _param.onCellUpdate, setRowProps = _param.setRowProps, topContent = _param.topContent, bottomContent = _param.bottomContent, loadingSlot = _param.loadingSlot, onScroll = _param.onScroll, props = _object_without_properties(_param, [
123
124
  "data",
124
125
  "onChange",
125
126
  "columns",
@@ -133,7 +134,11 @@ export var tableRoot = function(Root) {
133
134
  "maxHeight",
134
135
  "stickyHeader",
135
136
  "onCellUpdate",
136
- "setRowProps"
137
+ "setRowProps",
138
+ "topContent",
139
+ "bottomContent",
140
+ "loadingSlot",
141
+ "onScroll"
137
142
  ]);
138
143
  var _useState = _sliced_to_array(useState(outerSelected || {}), 2), innerSelected = _useState[0], innerSetSelected = _useState[1];
139
144
  var _useState1 = _sliced_to_array(useState(outerFiltered || []), 2), innerFiltered = _useState1[0], setInnerFiltered = _useState1[1];
@@ -256,6 +261,7 @@ export var tableRoot = function(Root) {
256
261
  onRowSelectionChange: handleRowSelection,
257
262
  columnResizeMode: 'onChange',
258
263
  columnResizeDirection: 'ltr',
264
+ manualPagination: true,
259
265
  meta: {
260
266
  updateData: function(rowId, columnId, value) {
261
267
  if (onCellUpdate) {
@@ -269,11 +275,12 @@ export var tableRoot = function(Root) {
269
275
  data: data,
270
276
  columns: columns,
271
277
  view: view,
272
- size: size,
273
- style: {
274
- maxHeight: maxHeight || 'none'
275
- }
276
- }, props), /*#__PURE__*/ React.createElement(Table, {
278
+ size: size
279
+ }, props), topContent, /*#__PURE__*/ React.createElement(ScrollableWrapper, {
280
+ className: classes.scrollableContainer,
281
+ onScroll: onScroll,
282
+ maxHeight: maxHeight
283
+ }, /*#__PURE__*/ React.createElement(Table, {
277
284
  borderVariant: borderVariant,
278
285
  stickyHeader: stickyHeader
279
286
  }, /*#__PURE__*/ React.createElement(Thead, {
@@ -300,8 +307,6 @@ export var tableRoot = function(Root) {
300
307
  }, setRowProps === null || setRowProps === void 0 ? void 0 : setRowProps(row.original)), row.getVisibleCells().map(function(cell) {
301
308
  var _cell_column_columnDef_meta_setCellProps, _cell_column_columnDef_meta, _cell_column_columnDef, _cell_column, _cell_column_columnDef_meta1, _cell_column_columnDef1, _cell_column1;
302
309
  var additionalProps = (cell === null || cell === void 0 ? void 0 : (_cell_column = cell.column) === null || _cell_column === void 0 ? void 0 : (_cell_column_columnDef = _cell_column.columnDef) === null || _cell_column_columnDef === void 0 ? void 0 : (_cell_column_columnDef_meta = _cell_column_columnDef.meta) === null || _cell_column_columnDef_meta === void 0 ? void 0 : (_cell_column_columnDef_meta_setCellProps = _cell_column_columnDef_meta.setCellProps) === null || _cell_column_columnDef_meta_setCellProps === void 0 ? void 0 : _cell_column_columnDef_meta_setCellProps.call(_cell_column_columnDef_meta, cell.row.original, cell.id)) || {};
303
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
304
- // @ts-ignore
305
310
  return (cell === null || cell === void 0 ? void 0 : (_cell_column1 = cell.column) === null || _cell_column1 === void 0 ? void 0 : (_cell_column_columnDef1 = _cell_column1.columnDef) === null || _cell_column_columnDef1 === void 0 ? void 0 : (_cell_column_columnDef_meta1 = _cell_column_columnDef1.meta) === null || _cell_column_columnDef_meta1 === void 0 ? void 0 : _cell_column_columnDef_meta1.enableEditing) ? /*#__PURE__*/ React.createElement(EditableCell, {
306
311
  key: cell.id,
307
312
  size: size,
@@ -320,7 +325,7 @@ export var tableRoot = function(Root) {
320
325
  additionalProps: additionalProps
321
326
  });
322
327
  }));
323
- }))));
328
+ }))), loadingSlot), bottomContent);
324
329
  });
325
330
  };
326
331
  export var tableConfig = {
@@ -15,11 +15,21 @@ var Divider = component(mergedDividerConfig);
15
15
  var mergedLinkButtonConfig = mergeConfig(linkButtonConfig);
16
16
  var LinkButtonBase = component(mergedLinkButtonConfig);
17
17
  export var base = css([
18
- "display:inline-block;overflow-y:auto;"
18
+ "display:inline-flex;flex-direction:column;align-items:flex-start;"
19
19
  ]);
20
+ export var ScrollableWrapper = styled.div.withConfig({
21
+ displayName: "Table.styles__ScrollableWrapper",
22
+ componentId: "sc-c4913190-0"
23
+ })([
24
+ "overflow-y:auto;max-height:",
25
+ ";"
26
+ ], function(param) {
27
+ var maxHeight = param.maxHeight;
28
+ return maxHeight || 'none';
29
+ });
20
30
  export var Table = styled.table.withConfig({
21
31
  displayName: "Table.styles__Table",
22
- componentId: "sc-382f3104-0"
32
+ componentId: "sc-c4913190-1"
23
33
  })([
24
34
  "width:fit-content;font-family:var(",
25
35
  ");font-size:var(",
@@ -35,7 +45,7 @@ export var Table = styled.table.withConfig({
35
45
  });
36
46
  export var Tr = styled.tr.withConfig({
37
47
  displayName: "Table.styles__Tr",
38
- componentId: "sc-382f3104-1"
48
+ componentId: "sc-c4913190-2"
39
49
  })([
40
50
  "box-sizing:content-box;width:fit-content;background-color:",
41
51
  ";"
@@ -45,11 +55,11 @@ export var Tr = styled.tr.withConfig({
45
55
  });
46
56
  export var Thead = styled.thead.withConfig({
47
57
  displayName: "Table.styles__Thead",
48
- componentId: "sc-382f3104-2"
58
+ componentId: "sc-c4913190-3"
49
59
  })([
50
60
  "position:",
51
61
  ";top:0;background:",
52
- ";z-index:1;box-shadow:",
62
+ ";z-index:10;box-shadow:",
53
63
  ";",
54
64
  "{background:transparent;}"
55
65
  ], function(param) {
@@ -65,13 +75,13 @@ export var Thead = styled.thead.withConfig({
65
75
  }, Tr);
66
76
  export var Tbody = styled.tbody.withConfig({
67
77
  displayName: "Table.styles__Tbody",
68
- componentId: "sc-382f3104-3"
78
+ componentId: "sc-c4913190-4"
69
79
  })([
70
80
  ""
71
81
  ]);
72
82
  export var Resizer = styled.div.withConfig({
73
83
  displayName: "Table.styles__Resizer",
74
- componentId: "sc-382f3104-4"
84
+ componentId: "sc-c4913190-5"
75
85
  })([
76
86
  "display:",
77
87
  ";position:absolute;z-index:1;top:-0.0625rem;bottom:0;right:-0.125rem;width:0.1875rem;background:var(--outline-accent);cursor:col-resize;user-select:none;touch-action:none;"
@@ -81,12 +91,12 @@ export var Resizer = styled.div.withConfig({
81
91
  });
82
92
  export var Th = styled.th.withConfig({
83
93
  displayName: "Table.styles__Th",
84
- componentId: "sc-382f3104-5"
94
+ componentId: "sc-c4913190-6"
85
95
  })([
86
96
  "padding:",
87
97
  ";position:relative;font-weight:600;text-align:left;height:var(",
88
98
  ");background-color:transparent;color:inherit;box-sizing:content-box;border-width:0.0625rem;border-top-width:0;border-bottom-width:0;border-style:solid;border-color:",
89
- ";&:hover{",
99
+ ";box-sizing:border-box;&:hover{",
90
100
  "{display:block;}}"
91
101
  ], function(param) {
92
102
  var selectionCell = param.selectionCell;
@@ -97,7 +107,7 @@ export var Th = styled.th.withConfig({
97
107
  }, Resizer);
98
108
  export var StyledCheckbox = styled(Checkbox).withConfig({
99
109
  displayName: "Table.styles__StyledCheckbox",
100
- componentId: "sc-382f3104-6"
110
+ componentId: "sc-c4913190-7"
101
111
  })([
102
112
  "",
103
113
  ":var(",
@@ -117,7 +127,7 @@ export var StyledCheckbox = styled(Checkbox).withConfig({
117
127
  ], checkboxTokens.triggerSize, tokens.checkboxTriggerSize, checkboxTokens.triggerBorderRadius, tokens.checkboxTriggerBorderRadius, checkboxTokens.fillColor, tokens.checkboxFillColor, checkboxTokens.iconColor, tokens.checkboxTriggerIconColor, checkboxTokens.triggerBorderCheckedColor, tokens.checkboxTriggerBorderCheckedColor, checkboxTokens.triggerBorderWidth, tokens.checkboxTriggerBorderWidth, checkboxTokens.triggerBorderColor, tokens.checkboxTriggerBorderColor);
118
128
  export var StyledDivider = styled(Divider).withConfig({
119
129
  displayName: "Table.styles__StyledDivider",
120
- componentId: "sc-382f3104-7"
130
+ componentId: "sc-c4913190-8"
121
131
  })([
122
132
  "",
123
133
  ":0.0625rem;",
@@ -126,7 +136,7 @@ export var StyledDivider = styled(Divider).withConfig({
126
136
  ], dividerTokens.baseSideSize, dividerTokens.background, dividerTokens.borderRadius);
127
137
  export var Button = styled(ButtonBase).withConfig({
128
138
  displayName: "Table.styles__Button",
129
- componentId: "sc-382f3104-8"
139
+ componentId: "sc-c4913190-9"
130
140
  })([
131
141
  "",
132
142
  ":var(",
@@ -147,7 +157,7 @@ export var Button = styled(ButtonBase).withConfig({
147
157
  ], buttonTokens.buttonHeight, tokens.buttonHeight, buttonTokens.buttonDisabledOpacity, buttonTokens.buttonFontFamily, tokens.buttonFontFamily, buttonTokens.buttonFontSize, tokens.buttonFontSize, buttonTokens.buttonFontStyle, tokens.buttonFontStyle, buttonTokens.buttonFontWeight, tokens.buttonFontWeight, buttonTokens.buttonLetterSpacing, tokens.buttonLetterSpacing, buttonTokens.buttonLineHeight, tokens.buttonLineHeight);
148
158
  export var ButtonAccent = styled(Button).withConfig({
149
159
  displayName: "Table.styles__ButtonAccent",
150
- componentId: "sc-382f3104-9"
160
+ componentId: "sc-c4913190-10"
151
161
  })([
152
162
  "",
153
163
  ":var(--on-dark-text-primary);",
@@ -158,7 +168,7 @@ export var ButtonAccent = styled(Button).withConfig({
158
168
  ], buttonTokens.buttonColor, buttonTokens.buttonValueColor, buttonTokens.buttonBackgroundColor, buttonTokens.buttonBackgroundColorHover, buttonTokens.buttonBackgroundColorActive);
159
169
  export var LinkButton = styled(LinkButtonBase).withConfig({
160
170
  displayName: "Table.styles__LinkButton",
161
- componentId: "sc-382f3104-10"
171
+ componentId: "sc-c4913190-11"
162
172
  })([
163
173
  "",
164
174
  ":var(--text-primary);",
@@ -4,7 +4,8 @@ export var classes = {
4
4
  sortingAscIcon: 'sorting-asc-icon',
5
5
  sortingDescIcon: 'sorting-desc-icon',
6
6
  filterIcon: 'filter-icon',
7
- resizeDivider: 'resize-divider'
7
+ resizeDivider: 'resize-divider',
8
+ scrollableContainer: 'table-scrollable-container'
8
9
  };
9
10
  export var tableTokens = {
10
11
  fontFamily: '--plasma-table-font-family',
@@ -1,4 +1,3 @@
1
- var TOLERANCE = 1; // Погрешность для субпиксельного рендеринга
2
1
  var getIsFirstOverflowingTab = function(item, maxScroll) {
3
2
  var orientation = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 'horizontal';
4
3
  if (!item.current) {
@@ -8,7 +7,7 @@ var getIsFirstOverflowingTab = function(item, maxScroll) {
8
7
  if (currentOffset === undefined) {
9
8
  return;
10
9
  }
11
- return currentOffset < maxScroll - TOLERANCE;
10
+ return currentOffset < maxScroll;
12
11
  };
13
12
  var getIsLastOverflowingTab = function(item, minScroll) {
14
13
  var orientation = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 'horizontal';
@@ -20,8 +19,7 @@ var getIsLastOverflowingTab = function(item, minScroll) {
20
19
  return;
21
20
  }
22
21
  var additionalOffset = orientation === 'horizontal' ? item.current.offsetWidth : item.current.offsetHeight;
23
- var itemRightEdge = currentOffset + additionalOffset;
24
- return itemRightEdge > minScroll + TOLERANCE;
22
+ return currentOffset + additionalOffset > minScroll;
25
23
  };
26
24
  export var getFirstOverflowingTab = function(items, maxScroll) {
27
25
  var orientation = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 'horizontal';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salutejs/plasma-new-hope",
3
- "version": "0.344.0-canary.2399.20427286988.0",
3
+ "version": "0.344.0-canary.2400.20429488881.0",
4
4
  "description": "Salute Design System blueprint",
5
5
  "exports": {
6
6
  ".": {
@@ -92,8 +92,8 @@
92
92
  "@rollup/plugin-babel": "^6.0.4",
93
93
  "@rollup/plugin-commonjs": "^25.0.4",
94
94
  "@rollup/plugin-node-resolve": "^15.1.0",
95
- "@salutejs/plasma-cy-utils": "0.142.0-canary.2399.20427286988.0",
96
- "@salutejs/plasma-sb-utils": "0.212.0-canary.2399.20427286988.0",
95
+ "@salutejs/plasma-cy-utils": "0.142.0-canary.2400.20429488881.0",
96
+ "@salutejs/plasma-sb-utils": "0.212.0-canary.2400.20429488881.0",
97
97
  "@salutejs/plasma-themes": "0.38.0",
98
98
  "@types/lodash": "^4.14.191",
99
99
  "@types/lodash.chunk": "4.2.9",
@@ -122,7 +122,7 @@
122
122
  "@linaria/react": "5.0.3",
123
123
  "@popperjs/core": "2.11.8",
124
124
  "@salutejs/input-core": "2.1.2",
125
- "@salutejs/plasma-core": "1.212.0-canary.2399.20427286988.0",
125
+ "@salutejs/plasma-core": "1.212.0-canary.2400.20429488881.0",
126
126
  "@salutejs/react-maskinput": "3.3.2",
127
127
  "@tanstack/react-table": "8.21.2",
128
128
  "@tanstack/react-virtual": "3.13.2",
@@ -142,5 +142,5 @@
142
142
  "sideEffects": [
143
143
  "*.css"
144
144
  ],
145
- "gitHead": "f0c9bdb4c21f80ebc691c0bce42e4d5589696172"
145
+ "gitHead": "07d448b97301354c40150cc3a097df0dc763992f"
146
146
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../../src/components/Table/Table.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAgD,MAAM,OAAO,CAAC;AAcrE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAIxC,OAAO,EAAE,UAAU,EAAgB,MAAM,eAAe,CAAC;AASzD,eAAO,MAAM,SAAS,SAAU,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC,sFA8OhE,CAAC;AAEN,eAAO,MAAM,WAAW;;;mBAhPQ,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC;;;;;;;CA0PpE,CAAC"}
1
+ {"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../../src/components/Table/Table.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAgD,MAAM,OAAO,CAAC;AAcrE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAKxC,OAAO,EAAE,UAAU,EAAgB,MAAM,eAAe,CAAC;AASzD,eAAO,MAAM,SAAS,SAAU,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC,sFAuPhE,CAAC;AAEN,eAAO,MAAM,WAAW;;;mBAzPQ,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC;;;;;;;CAmQpE,CAAC"}
@@ -1,5 +1,9 @@
1
+ import type { CSSProperties } from 'react';
1
2
  import { TableProps } from './Table.types';
2
3
  export declare const base: import("@linaria/core").LinariaClassName;
4
+ export declare const ScrollableWrapper: import("@linaria/react").StyledComponent<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement> & {
5
+ maxHeight: CSSProperties["maxHeight"];
6
+ }>;
3
7
  export declare const Table: import("@linaria/react").StyledComponent<import("react").ClassAttributes<HTMLTableElement> & import("react").TableHTMLAttributes<HTMLTableElement> & {
4
8
  borderVariant: TableProps["borderVariant"];
5
9
  stickyHeader?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"Table.styles.d.ts","sourceRoot":"","sources":["../../../src/components/Table/Table.styles.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAe3C,eAAO,MAAM,IAAI,0CAGhB,CAAC;AAEF,eAAO,MAAM,KAAK;mBAAiC,UAAU,CAAC,eAAe,CAAC;mBAAiB,OAAO;EAerG,CAAC;AAEF,eAAO,MAAM,EAAE;eAA0B,OAAO;EAI/C,CAAC;AAEF,eAAO,MAAM,KAAK;UACR,UAAU,CAAC,MAAM,CAAC;mBACT,UAAU,CAAC,eAAe,CAAC;mBAC3B,OAAO;EAiBzB,CAAC;AAEF,eAAO,MAAM,KAAK,uLAAiB,CAAC;AAEpC,eAAO,MAAM,OAAO;gBAA4B,OAAO;EAYtD,CAAC;AAEF,eAAO,MAAM,EAAE;mBAA8B,UAAU,CAAC,eAAe,CAAC;oBAAkB,OAAO;EAsBhG,CAAC;AAEF,eAAO,MAAM,cAAc,iQAQ1B,CAAC;AAEF,eAAO,MAAM,aAAa,8OAIzB,CAAC;AAEF,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uDAUlB,CAAC;AAEF,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uDAMxB,CAAC;AAEF,eAAO,MAAM,UAAU;;;;;;;;;;qDAatB,CAAC"}
1
+ {"version":3,"file":"Table.styles.d.ts","sourceRoot":"","sources":["../../../src/components/Table/Table.styles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAU3C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAe3C,eAAO,MAAM,IAAI,0CAIhB,CAAC;AAEF,eAAO,MAAM,iBAAiB;eAA2B,aAAa,CAAC,WAAW,CAAC;EAGlF,CAAC;AAEF,eAAO,MAAM,KAAK;mBAAiC,UAAU,CAAC,eAAe,CAAC;mBAAiB,OAAO;EAerG,CAAC;AAEF,eAAO,MAAM,EAAE;eAA0B,OAAO;EAI/C,CAAC;AAEF,eAAO,MAAM,KAAK;UACR,UAAU,CAAC,MAAM,CAAC;mBACT,UAAU,CAAC,eAAe,CAAC;mBAC3B,OAAO;EAiBzB,CAAC;AAEF,eAAO,MAAM,KAAK,uLAAiB,CAAC;AAEpC,eAAO,MAAM,OAAO;gBAA4B,OAAO;EAYtD,CAAC;AAEF,eAAO,MAAM,EAAE;mBAA8B,UAAU,CAAC,eAAe,CAAC;oBAAkB,OAAO;EAuBhG,CAAC;AAEF,eAAO,MAAM,cAAc,iQAQ1B,CAAC;AAEF,eAAO,MAAM,aAAa,8OAIzB,CAAC;AAEF,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uDAUlB,CAAC;AAEF,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uDAMxB,CAAC;AAEF,eAAO,MAAM,UAAU;;;;;;;;;;qDAatB,CAAC"}
@@ -5,6 +5,7 @@ export declare const classes: {
5
5
  sortingDescIcon: string;
6
6
  filterIcon: string;
7
7
  resizeDivider: string;
8
+ scrollableContainer: string;
8
9
  };
9
10
  export declare const tableTokens: {
10
11
  fontFamily: string;
@@ -1 +1 @@
1
- {"version":3,"file":"Table.tokens.d.ts","sourceRoot":"","sources":["../../../src/components/Table/Table.tokens.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO;;;;;;;CAOnB,CAAC;AAEF,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqEvB,CAAC"}
1
+ {"version":3,"file":"Table.tokens.d.ts","sourceRoot":"","sources":["../../../src/components/Table/Table.tokens.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO;;;;;;;;CAQnB,CAAC;AAEF,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqEvB,CAAC"}
@@ -129,6 +129,22 @@ export interface TableProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChan
129
129
  * Сеттер свойств для строки
130
130
  */
131
131
  setRowProps?: (row: TableRowData) => HTMLAttributes<any> & ThHTMLAttributes<any>;
132
+ /**
133
+ * Слот для контента над таблицей.
134
+ */
135
+ topContent?: ReactNode;
136
+ /**
137
+ * Слот для контента под таблицей.
138
+ */
139
+ bottomContent?: ReactNode;
140
+ /**
141
+ * Слот для лоадинга под контентом.
142
+ */
143
+ loadingSlot?: ReactNode;
144
+ /**
145
+ * Обработчик сколла контента.
146
+ */
147
+ onScroll?: (e: React.UIEvent<HTMLElement>) => void;
132
148
  /**
133
149
  * Размер таблицы
134
150
  */