@snack-uikit/table 0.23.8 → 0.23.9-preview-71543426.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 (235) hide show
  1. package/dist/cjs/components/ServerTable/ServerTable.js +89 -0
  2. package/dist/cjs/components/ServerTable/constants.js +8 -0
  3. package/dist/cjs/components/ServerTable/index.js +25 -0
  4. package/dist/cjs/components/ServerTable/utils.js +16 -0
  5. package/dist/cjs/components/Table/Table.js +393 -0
  6. package/dist/cjs/components/Table/hooks/index.js +26 -0
  7. package/dist/cjs/components/Table/hooks/useLoadingTable.js +44 -0
  8. package/dist/cjs/components/Table/hooks/usePageReset.js +27 -0
  9. package/dist/cjs/components/Table/hooks/useStateControl.js +19 -0
  10. package/dist/cjs/components/Table/index.js +25 -0
  11. package/dist/cjs/components/Table/utils.js +56 -0
  12. package/dist/cjs/components/index.js +27 -0
  13. package/dist/cjs/components/types.js +5 -0
  14. package/dist/cjs/constants.js +35 -0
  15. package/dist/cjs/exportTable.js +95 -0
  16. package/dist/cjs/helperComponents/Cells/BodyCell/BodyCell.js +44 -0
  17. package/dist/cjs/helperComponents/Cells/BodyCell/index.js +25 -0
  18. package/dist/cjs/helperComponents/Cells/Cell.js +47 -0
  19. package/dist/cjs/helperComponents/Cells/CopyCell/CopyCell.js +55 -0
  20. package/dist/cjs/helperComponents/Cells/CopyCell/index.js +25 -0
  21. package/dist/cjs/helperComponents/Cells/HeaderCell/HeaderCell.js +76 -0
  22. package/dist/cjs/helperComponents/Cells/HeaderCell/ResizeHandle.js +79 -0
  23. package/dist/cjs/helperComponents/Cells/HeaderCell/helpers.js +27 -0
  24. package/dist/cjs/helperComponents/Cells/HeaderCell/index.js +25 -0
  25. package/dist/cjs/helperComponents/Cells/RowActionsCell/RowActionsCell.js +93 -0
  26. package/dist/cjs/helperComponents/Cells/RowActionsCell/index.js +25 -0
  27. package/dist/cjs/helperComponents/Cells/SelectionCell/SelectionCell.js +77 -0
  28. package/dist/cjs/helperComponents/Cells/SelectionCell/index.js +25 -0
  29. package/dist/cjs/helperComponents/Cells/StatusCell/StatusCell.js +94 -0
  30. package/dist/cjs/helperComponents/Cells/StatusCell/constants.js +19 -0
  31. package/dist/cjs/helperComponents/Cells/StatusCell/index.js +25 -0
  32. package/dist/cjs/helperComponents/Cells/StatusCell/types.js +5 -0
  33. package/dist/cjs/helperComponents/Cells/index.js +30 -0
  34. package/dist/cjs/helperComponents/ExportButton/ExportButton.js +76 -0
  35. package/dist/cjs/helperComponents/ExportButton/index.js +25 -0
  36. package/dist/cjs/helperComponents/Rows/BodyRow.js +71 -0
  37. package/dist/cjs/helperComponents/Rows/HeaderRow.js +43 -0
  38. package/dist/cjs/helperComponents/Rows/PinnedCells.js +26 -0
  39. package/dist/cjs/helperComponents/Rows/Row.js +40 -0
  40. package/dist/cjs/helperComponents/Rows/index.js +26 -0
  41. package/dist/cjs/helperComponents/TableEmptyState/TableEmptyState.js +38 -0
  42. package/dist/cjs/helperComponents/TableEmptyState/hooks.js +52 -0
  43. package/dist/cjs/helperComponents/TableEmptyState/index.js +26 -0
  44. package/dist/cjs/helperComponents/TablePagination/TablePagination.js +62 -0
  45. package/dist/cjs/helperComponents/TablePagination/index.js +25 -0
  46. package/dist/cjs/helperComponents/contexts.js +22 -0
  47. package/dist/cjs/helperComponents/helpers.js +15 -0
  48. package/dist/cjs/helperComponents/hooks.js +72 -0
  49. package/dist/cjs/helperComponents/index.js +33 -0
  50. package/dist/cjs/helperComponents/types.js +5 -0
  51. package/dist/cjs/index.js +35 -0
  52. package/dist/cjs/types.js +5 -0
  53. package/dist/cjs/utils.js +25 -0
  54. package/dist/esm/components/ServerTable/ServerTable.d.ts +7 -0
  55. package/dist/esm/components/ServerTable/constants.d.ts +2 -0
  56. package/dist/esm/components/ServerTable/index.js +1 -0
  57. package/dist/esm/components/ServerTable/utils.d.ts +1 -0
  58. package/dist/esm/components/Table/Table.d.ts +8 -0
  59. package/dist/esm/components/Table/hooks/index.js +2 -0
  60. package/dist/esm/components/Table/hooks/useLoadingTable.d.ts +11 -0
  61. package/dist/esm/components/Table/hooks/usePageReset.d.ts +10 -0
  62. package/dist/esm/components/Table/hooks/useStateControl.d.ts +8 -0
  63. package/dist/esm/components/Table/index.js +1 -0
  64. package/dist/esm/components/Table/styles.module.css +65 -0
  65. package/dist/esm/components/Table/utils.d.ts +17 -0
  66. package/dist/esm/components/index.js +3 -0
  67. package/dist/esm/components/types.d.ts +174 -0
  68. package/dist/esm/constants.d.ts +29 -0
  69. package/dist/esm/exportTable.d.ts +9 -0
  70. package/dist/esm/helperComponents/Cells/BodyCell/BodyCell.d.ts +7 -0
  71. package/dist/esm/helperComponents/Cells/BodyCell/index.js +1 -0
  72. package/dist/esm/helperComponents/Cells/BodyCell/styles.module.css +12 -0
  73. package/dist/esm/helperComponents/Cells/Cell.d.ts +18 -0
  74. package/dist/esm/helperComponents/Cells/CopyCell/CopyCell.d.ts +4 -0
  75. package/dist/esm/helperComponents/Cells/CopyCell/index.js +1 -0
  76. package/dist/esm/helperComponents/Cells/CopyCell/styles.module.css +18 -0
  77. package/dist/esm/helperComponents/Cells/HeaderCell/HeaderCell.d.ts +9 -0
  78. package/dist/esm/helperComponents/Cells/HeaderCell/ResizeHandle.d.ts +8 -0
  79. package/dist/esm/helperComponents/Cells/HeaderCell/helpers.d.ts +4 -0
  80. package/dist/esm/helperComponents/Cells/HeaderCell/index.js +1 -0
  81. package/dist/esm/helperComponents/Cells/HeaderCell/styles.module.css +132 -0
  82. package/dist/esm/helperComponents/Cells/RowActionsCell/RowActionsCell.d.ts +12 -0
  83. package/dist/esm/helperComponents/Cells/RowActionsCell/index.js +1 -0
  84. package/dist/esm/helperComponents/Cells/RowActionsCell/styles.module.css +29 -0
  85. package/dist/esm/helperComponents/Cells/SelectionCell/SelectionCell.d.ts +2 -0
  86. package/dist/esm/helperComponents/Cells/SelectionCell/index.js +1 -0
  87. package/dist/esm/helperComponents/Cells/SelectionCell/styles.module.css +13 -0
  88. package/dist/esm/helperComponents/Cells/StatusCell/StatusCell.d.ts +37 -0
  89. package/dist/esm/helperComponents/Cells/StatusCell/constants.d.ts +2 -0
  90. package/dist/esm/helperComponents/Cells/StatusCell/index.js +1 -0
  91. package/dist/esm/helperComponents/Cells/StatusCell/styles.module.css +96 -0
  92. package/dist/esm/helperComponents/Cells/StatusCell/types.d.ts +3 -0
  93. package/dist/esm/helperComponents/Cells/index.js +6 -0
  94. package/dist/esm/helperComponents/Cells/styles.module.css +13 -0
  95. package/dist/esm/helperComponents/ExportButton/ExportButton.d.ts +27 -0
  96. package/dist/esm/helperComponents/ExportButton/index.js +1 -0
  97. package/dist/esm/helperComponents/Rows/BodyRow.d.ts +15 -0
  98. package/dist/esm/helperComponents/Rows/HeaderRow.d.ts +1 -0
  99. package/dist/esm/helperComponents/Rows/PinnedCells.d.ts +9 -0
  100. package/dist/esm/helperComponents/Rows/Row.d.ts +9 -0
  101. package/dist/esm/helperComponents/Rows/index.js +2 -0
  102. package/dist/esm/helperComponents/Rows/styles.module.css +88 -0
  103. package/dist/esm/helperComponents/TableEmptyState/TableEmptyState.d.ts +20 -0
  104. package/dist/esm/helperComponents/TableEmptyState/hooks.d.ts +10 -0
  105. package/dist/esm/helperComponents/TableEmptyState/index.js +2 -0
  106. package/dist/esm/helperComponents/TableEmptyState/styles.module.css +9 -0
  107. package/dist/esm/helperComponents/TablePagination/TablePagination.d.ts +9 -0
  108. package/dist/esm/helperComponents/TablePagination/index.js +1 -0
  109. package/dist/esm/helperComponents/TablePagination/styles.module.css +11 -0
  110. package/dist/esm/helperComponents/contexts.d.ts +14 -0
  111. package/dist/esm/helperComponents/helpers.d.ts +2 -0
  112. package/dist/esm/helperComponents/hooks.d.ts +25 -0
  113. package/dist/esm/helperComponents/index.js +9 -0
  114. package/dist/esm/helperComponents/types.d.ts +7 -0
  115. package/dist/esm/index.d.ts +4 -0
  116. package/dist/esm/types.d.ts +43 -0
  117. package/dist/esm/utils.d.ts +3 -0
  118. package/package.json +21 -19
  119. /package/dist/{components → cjs/components}/ServerTable/ServerTable.d.ts +0 -0
  120. /package/dist/{components → cjs/components}/ServerTable/constants.d.ts +0 -0
  121. /package/dist/{components → cjs/components}/ServerTable/index.d.ts +0 -0
  122. /package/dist/{components → cjs/components}/ServerTable/utils.d.ts +0 -0
  123. /package/dist/{components → cjs/components}/Table/Table.d.ts +0 -0
  124. /package/dist/{components → cjs/components}/Table/hooks/index.d.ts +0 -0
  125. /package/dist/{components → cjs/components}/Table/hooks/useLoadingTable.d.ts +0 -0
  126. /package/dist/{components → cjs/components}/Table/hooks/usePageReset.d.ts +0 -0
  127. /package/dist/{components → cjs/components}/Table/hooks/useStateControl.d.ts +0 -0
  128. /package/dist/{components → cjs/components}/Table/index.d.ts +0 -0
  129. /package/dist/{components → cjs/components}/Table/styles.module.css +0 -0
  130. /package/dist/{components → cjs/components}/Table/utils.d.ts +0 -0
  131. /package/dist/{components → cjs/components}/index.d.ts +0 -0
  132. /package/dist/{components → cjs/components}/types.d.ts +0 -0
  133. /package/dist/{constants.d.ts → cjs/constants.d.ts} +0 -0
  134. /package/dist/{exportTable.d.ts → cjs/exportTable.d.ts} +0 -0
  135. /package/dist/{helperComponents → cjs/helperComponents}/Cells/BodyCell/BodyCell.d.ts +0 -0
  136. /package/dist/{helperComponents → cjs/helperComponents}/Cells/BodyCell/index.d.ts +0 -0
  137. /package/dist/{helperComponents → cjs/helperComponents}/Cells/BodyCell/styles.module.css +0 -0
  138. /package/dist/{helperComponents → cjs/helperComponents}/Cells/Cell.d.ts +0 -0
  139. /package/dist/{helperComponents → cjs/helperComponents}/Cells/CopyCell/CopyCell.d.ts +0 -0
  140. /package/dist/{helperComponents → cjs/helperComponents}/Cells/CopyCell/index.d.ts +0 -0
  141. /package/dist/{helperComponents → cjs/helperComponents}/Cells/CopyCell/styles.module.css +0 -0
  142. /package/dist/{helperComponents → cjs/helperComponents}/Cells/HeaderCell/HeaderCell.d.ts +0 -0
  143. /package/dist/{helperComponents → cjs/helperComponents}/Cells/HeaderCell/ResizeHandle.d.ts +0 -0
  144. /package/dist/{helperComponents → cjs/helperComponents}/Cells/HeaderCell/helpers.d.ts +0 -0
  145. /package/dist/{helperComponents → cjs/helperComponents}/Cells/HeaderCell/index.d.ts +0 -0
  146. /package/dist/{helperComponents → cjs/helperComponents}/Cells/HeaderCell/styles.module.css +0 -0
  147. /package/dist/{helperComponents → cjs/helperComponents}/Cells/RowActionsCell/RowActionsCell.d.ts +0 -0
  148. /package/dist/{helperComponents → cjs/helperComponents}/Cells/RowActionsCell/index.d.ts +0 -0
  149. /package/dist/{helperComponents → cjs/helperComponents}/Cells/RowActionsCell/styles.module.css +0 -0
  150. /package/dist/{helperComponents → cjs/helperComponents}/Cells/SelectionCell/SelectionCell.d.ts +0 -0
  151. /package/dist/{helperComponents → cjs/helperComponents}/Cells/SelectionCell/index.d.ts +0 -0
  152. /package/dist/{helperComponents → cjs/helperComponents}/Cells/SelectionCell/styles.module.css +0 -0
  153. /package/dist/{helperComponents → cjs/helperComponents}/Cells/StatusCell/StatusCell.d.ts +0 -0
  154. /package/dist/{helperComponents → cjs/helperComponents}/Cells/StatusCell/constants.d.ts +0 -0
  155. /package/dist/{helperComponents → cjs/helperComponents}/Cells/StatusCell/index.d.ts +0 -0
  156. /package/dist/{helperComponents → cjs/helperComponents}/Cells/StatusCell/styles.module.css +0 -0
  157. /package/dist/{helperComponents → cjs/helperComponents}/Cells/StatusCell/types.d.ts +0 -0
  158. /package/dist/{helperComponents → cjs/helperComponents}/Cells/index.d.ts +0 -0
  159. /package/dist/{helperComponents → cjs/helperComponents}/Cells/styles.module.css +0 -0
  160. /package/dist/{helperComponents → cjs/helperComponents}/ExportButton/ExportButton.d.ts +0 -0
  161. /package/dist/{helperComponents → cjs/helperComponents}/ExportButton/index.d.ts +0 -0
  162. /package/dist/{helperComponents → cjs/helperComponents}/Rows/BodyRow.d.ts +0 -0
  163. /package/dist/{helperComponents → cjs/helperComponents}/Rows/HeaderRow.d.ts +0 -0
  164. /package/dist/{helperComponents → cjs/helperComponents}/Rows/PinnedCells.d.ts +0 -0
  165. /package/dist/{helperComponents → cjs/helperComponents}/Rows/Row.d.ts +0 -0
  166. /package/dist/{helperComponents → cjs/helperComponents}/Rows/index.d.ts +0 -0
  167. /package/dist/{helperComponents → cjs/helperComponents}/Rows/styles.module.css +0 -0
  168. /package/dist/{helperComponents → cjs/helperComponents}/TableEmptyState/TableEmptyState.d.ts +0 -0
  169. /package/dist/{helperComponents → cjs/helperComponents}/TableEmptyState/hooks.d.ts +0 -0
  170. /package/dist/{helperComponents → cjs/helperComponents}/TableEmptyState/index.d.ts +0 -0
  171. /package/dist/{helperComponents → cjs/helperComponents}/TableEmptyState/styles.module.css +0 -0
  172. /package/dist/{helperComponents → cjs/helperComponents}/TablePagination/TablePagination.d.ts +0 -0
  173. /package/dist/{helperComponents → cjs/helperComponents}/TablePagination/index.d.ts +0 -0
  174. /package/dist/{helperComponents → cjs/helperComponents}/TablePagination/styles.module.css +0 -0
  175. /package/dist/{helperComponents → cjs/helperComponents}/contexts.d.ts +0 -0
  176. /package/dist/{helperComponents → cjs/helperComponents}/helpers.d.ts +0 -0
  177. /package/dist/{helperComponents → cjs/helperComponents}/hooks.d.ts +0 -0
  178. /package/dist/{helperComponents → cjs/helperComponents}/index.d.ts +0 -0
  179. /package/dist/{helperComponents → cjs/helperComponents}/types.d.ts +0 -0
  180. /package/dist/{index.d.ts → cjs/index.d.ts} +0 -0
  181. /package/dist/{types.d.ts → cjs/types.d.ts} +0 -0
  182. /package/dist/{utils.d.ts → cjs/utils.d.ts} +0 -0
  183. /package/dist/{components → esm/components}/ServerTable/ServerTable.js +0 -0
  184. /package/dist/{components → esm/components}/ServerTable/constants.js +0 -0
  185. /package/dist/{components/ServerTable/index.js → esm/components/ServerTable/index.d.ts} +0 -0
  186. /package/dist/{components → esm/components}/ServerTable/utils.js +0 -0
  187. /package/dist/{components → esm/components}/Table/Table.js +0 -0
  188. /package/dist/{components/Table/hooks/index.js → esm/components/Table/hooks/index.d.ts} +0 -0
  189. /package/dist/{components → esm/components}/Table/hooks/useLoadingTable.js +0 -0
  190. /package/dist/{components → esm/components}/Table/hooks/usePageReset.js +0 -0
  191. /package/dist/{components → esm/components}/Table/hooks/useStateControl.js +0 -0
  192. /package/dist/{components/Table/index.js → esm/components/Table/index.d.ts} +0 -0
  193. /package/dist/{components → esm/components}/Table/utils.js +0 -0
  194. /package/dist/{components/index.js → esm/components/index.d.ts} +0 -0
  195. /package/dist/{components → esm/components}/types.js +0 -0
  196. /package/dist/{constants.js → esm/constants.js} +0 -0
  197. /package/dist/{exportTable.js → esm/exportTable.js} +0 -0
  198. /package/dist/{helperComponents → esm/helperComponents}/Cells/BodyCell/BodyCell.js +0 -0
  199. /package/dist/{helperComponents/Cells/BodyCell/index.js → esm/helperComponents/Cells/BodyCell/index.d.ts} +0 -0
  200. /package/dist/{helperComponents → esm/helperComponents}/Cells/Cell.js +0 -0
  201. /package/dist/{helperComponents → esm/helperComponents}/Cells/CopyCell/CopyCell.js +0 -0
  202. /package/dist/{helperComponents/Cells/CopyCell/index.js → esm/helperComponents/Cells/CopyCell/index.d.ts} +0 -0
  203. /package/dist/{helperComponents → esm/helperComponents}/Cells/HeaderCell/HeaderCell.js +0 -0
  204. /package/dist/{helperComponents → esm/helperComponents}/Cells/HeaderCell/ResizeHandle.js +0 -0
  205. /package/dist/{helperComponents → esm/helperComponents}/Cells/HeaderCell/helpers.js +0 -0
  206. /package/dist/{helperComponents/Cells/HeaderCell/index.js → esm/helperComponents/Cells/HeaderCell/index.d.ts} +0 -0
  207. /package/dist/{helperComponents → esm/helperComponents}/Cells/RowActionsCell/RowActionsCell.js +0 -0
  208. /package/dist/{helperComponents/Cells/RowActionsCell/index.js → esm/helperComponents/Cells/RowActionsCell/index.d.ts} +0 -0
  209. /package/dist/{helperComponents → esm/helperComponents}/Cells/SelectionCell/SelectionCell.js +0 -0
  210. /package/dist/{helperComponents/Cells/SelectionCell/index.js → esm/helperComponents/Cells/SelectionCell/index.d.ts} +0 -0
  211. /package/dist/{helperComponents → esm/helperComponents}/Cells/StatusCell/StatusCell.js +0 -0
  212. /package/dist/{helperComponents → esm/helperComponents}/Cells/StatusCell/constants.js +0 -0
  213. /package/dist/{helperComponents/Cells/StatusCell/index.js → esm/helperComponents/Cells/StatusCell/index.d.ts} +0 -0
  214. /package/dist/{helperComponents → esm/helperComponents}/Cells/StatusCell/types.js +0 -0
  215. /package/dist/{helperComponents/Cells/index.js → esm/helperComponents/Cells/index.d.ts} +0 -0
  216. /package/dist/{helperComponents → esm/helperComponents}/ExportButton/ExportButton.js +0 -0
  217. /package/dist/{helperComponents/ExportButton/index.js → esm/helperComponents/ExportButton/index.d.ts} +0 -0
  218. /package/dist/{helperComponents → esm/helperComponents}/Rows/BodyRow.js +0 -0
  219. /package/dist/{helperComponents → esm/helperComponents}/Rows/HeaderRow.js +0 -0
  220. /package/dist/{helperComponents → esm/helperComponents}/Rows/PinnedCells.js +0 -0
  221. /package/dist/{helperComponents → esm/helperComponents}/Rows/Row.js +0 -0
  222. /package/dist/{helperComponents/Rows/index.js → esm/helperComponents/Rows/index.d.ts} +0 -0
  223. /package/dist/{helperComponents → esm/helperComponents}/TableEmptyState/TableEmptyState.js +0 -0
  224. /package/dist/{helperComponents → esm/helperComponents}/TableEmptyState/hooks.js +0 -0
  225. /package/dist/{helperComponents/TableEmptyState/index.js → esm/helperComponents/TableEmptyState/index.d.ts} +0 -0
  226. /package/dist/{helperComponents → esm/helperComponents}/TablePagination/TablePagination.js +0 -0
  227. /package/dist/{helperComponents/TablePagination/index.js → esm/helperComponents/TablePagination/index.d.ts} +0 -0
  228. /package/dist/{helperComponents → esm/helperComponents}/contexts.js +0 -0
  229. /package/dist/{helperComponents → esm/helperComponents}/helpers.js +0 -0
  230. /package/dist/{helperComponents → esm/helperComponents}/hooks.js +0 -0
  231. /package/dist/{helperComponents/index.js → esm/helperComponents/index.d.ts} +0 -0
  232. /package/dist/{helperComponents → esm/helperComponents}/types.js +0 -0
  233. /package/dist/{index.js → esm/index.js} +0 -0
  234. /package/dist/{types.js → esm/types.js} +0 -0
  235. /package/dist/{utils.js → esm/utils.js} +0 -0
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+
3
+ var __rest = void 0 && (void 0).__rest || function (s, e) {
4
+ var t = {};
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
8
+ }
9
+ return t;
10
+ };
11
+ Object.defineProperty(exports, "__esModule", {
12
+ value: true
13
+ });
14
+ exports.ServerTable = ServerTable;
15
+ const jsx_runtime_1 = require("react/jsx-runtime");
16
+ const react_1 = require("react");
17
+ const helperComponents_1 = require("../../helperComponents");
18
+ const Table_1 = require("../Table");
19
+ const hooks_1 = require("../Table/hooks");
20
+ const constants_1 = require("./constants");
21
+ const utils_1 = require("./utils");
22
+ function ServerTable(_a) {
23
+ // добавить uncontrolledState
24
+ var {
25
+ items,
26
+ total = constants_1.DEFAULT_PAGINATION_LIMIT,
27
+ limit = constants_1.DEFAULT_PAGINATION_LIMIT,
28
+ offset = 0,
29
+ onChangePage,
30
+ search: searchProp,
31
+ pagination,
32
+ columnFilters,
33
+ manualSorting = true,
34
+ manualPagination = true,
35
+ manualFiltering = true
36
+ } = _a,
37
+ rest = __rest(_a, ["items", "total", "limit", "offset", "onChangePage", "search", "pagination", "columnFilters", "manualSorting", "manualPagination", "manualFiltering"]);
38
+ const {
39
+ state: search,
40
+ onStateChange: setSearch
41
+ } = (0, hooks_1.useStateControl)(searchProp, '');
42
+ const [tempSearch, setTempSearch] = (0, react_1.useState)(search || '');
43
+ (0, react_1.useEffect)(() => {
44
+ var _a;
45
+ if ((searchProp === null || searchProp === void 0 ? void 0 : searchProp.state) !== tempSearch) {
46
+ setTempSearch((_a = searchProp === null || searchProp === void 0 ? void 0 : searchProp.state) !== null && _a !== void 0 ? _a : '');
47
+ }
48
+ // Needs update only when prop changes
49
+ // eslint-disable-next-line react-hooks/exhaustive-deps
50
+ }, [searchProp === null || searchProp === void 0 ? void 0 : searchProp.state]);
51
+ const handleSearch = (0, react_1.useCallback)(newValue => {
52
+ setTempSearch(newValue);
53
+ (0, utils_1.onSearchDebounced)(newValue.trim(), setSearch);
54
+ }, [setSearch]);
55
+ const handlePageChange = (0, react_1.useCallback)(_ref => {
56
+ let {
57
+ pageSize,
58
+ pageIndex
59
+ } = _ref;
60
+ return onChangePage(pageIndex * pageSize, pageSize);
61
+ }, [onChangePage]);
62
+ const pageIndex = (0, react_1.useMemo)(() => Math.floor(offset / limit), [limit, offset]);
63
+ const pageCount = (0, react_1.useMemo)(() => Math.ceil(total / limit), [limit, total]);
64
+ return (0, jsx_runtime_1.jsx)(Table_1.Table, Object.assign({}, rest, {
65
+ data: items || [],
66
+ search: {
67
+ state: tempSearch,
68
+ onChange: handleSearch,
69
+ loading: searchProp === null || searchProp === void 0 ? void 0 : searchProp.loading,
70
+ placeholder: searchProp === null || searchProp === void 0 ? void 0 : searchProp.placeholder
71
+ },
72
+ columnFilters: columnFilters,
73
+ pageCount: pageCount,
74
+ pagination: Object.assign(Object.assign({}, pagination), {
75
+ state: {
76
+ pageIndex,
77
+ pageSize: limit
78
+ },
79
+ onChange: handlePageChange
80
+ }),
81
+ pageSize: limit,
82
+ manualSorting: manualSorting,
83
+ manualFiltering: manualFiltering,
84
+ manualPagination: manualPagination
85
+ }));
86
+ }
87
+ ServerTable.getRowActionsColumnDef = Table_1.Table.getRowActionsColumnDef;
88
+ ServerTable.statusAppearances = helperComponents_1.STATUS_APPEARANCE;
89
+ ServerTable.getStatusColumnDef = Table_1.Table.getStatusColumnDef;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.DEFAULT_PAGINATION_LIMIT = exports.SEARCH_DELAY = void 0;
7
+ exports.SEARCH_DELAY = 500;
8
+ exports.DEFAULT_PAGINATION_LIMIT = 10;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ var __createBinding = void 0 && (void 0).__createBinding || (Object.create ? function (o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = {
8
+ enumerable: true,
9
+ get: function () {
10
+ return m[k];
11
+ }
12
+ };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ } : function (o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ });
19
+ var __exportStar = void 0 && (void 0).__exportStar || function (m, exports) {
20
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
21
+ };
22
+ Object.defineProperty(exports, "__esModule", {
23
+ value: true
24
+ });
25
+ __exportStar(require("./ServerTable"), exports);
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ var __importDefault = void 0 && (void 0).__importDefault || function (mod) {
4
+ return mod && mod.__esModule ? mod : {
5
+ "default": mod
6
+ };
7
+ };
8
+ Object.defineProperty(exports, "__esModule", {
9
+ value: true
10
+ });
11
+ exports.onSearchDebounced = void 0;
12
+ const lodash_debounce_1 = __importDefault(require("lodash.debounce"));
13
+ const constants_1 = require("./constants");
14
+ exports.onSearchDebounced = (0, lodash_debounce_1.default)((newValue, onChange) => {
15
+ onChange(newValue);
16
+ }, constants_1.SEARCH_DELAY);
@@ -0,0 +1,393 @@
1
+ "use strict";
2
+
3
+ var __rest = void 0 && (void 0).__rest || function (s, e) {
4
+ var t = {};
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
8
+ }
9
+ return t;
10
+ };
11
+ var __importDefault = void 0 && (void 0).__importDefault || function (mod) {
12
+ return mod && mod.__esModule ? mod : {
13
+ "default": mod
14
+ };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", {
17
+ value: true
18
+ });
19
+ exports.Table = Table;
20
+ const jsx_runtime_1 = require("react/jsx-runtime");
21
+ const react_table_1 = require("@tanstack/react-table");
22
+ const classnames_1 = __importDefault(require("classnames"));
23
+ const react_1 = require("react");
24
+ const locale_1 = require("@snack-uikit/locale");
25
+ const scroll_1 = require("@snack-uikit/scroll");
26
+ const skeleton_1 = require("@snack-uikit/skeleton");
27
+ const toolbar_1 = require("@snack-uikit/toolbar");
28
+ const truncate_string_1 = require("@snack-uikit/truncate-string");
29
+ const utils_1 = require("@snack-uikit/utils");
30
+ const constants_1 = require("../../constants");
31
+ const helperComponents_1 = require("../../helperComponents");
32
+ const utils_2 = require("../../utils");
33
+ const hooks_1 = require("./hooks");
34
+ const usePageReset_1 = require("./hooks/usePageReset");
35
+ const styles_module_scss_1 = __importDefault(require('./styles.module.css'));
36
+ const utils_3 = require("./utils");
37
+ /** Компонент таблицы */
38
+ function Table(_a) {
39
+ var {
40
+ data,
41
+ rowPinning = {
42
+ top: []
43
+ },
44
+ columnDefinitions,
45
+ keepPinnedRows = false,
46
+ copyPinnedRows = false,
47
+ enableSelectPinned = false,
48
+ rowSelection: rowSelectionProp,
49
+ search,
50
+ sorting: sortingProp,
51
+ columnFilters,
52
+ pagination: paginationProp,
53
+ className,
54
+ onRowClick,
55
+ onRefresh,
56
+ onDelete,
57
+ pageSize = constants_1.DEFAULT_PAGE_SIZE,
58
+ pageCount,
59
+ loading = false,
60
+ outline = false,
61
+ moreActions,
62
+ exportSettings,
63
+ dataFiltered,
64
+ dataError,
65
+ noDataState,
66
+ noResultsState,
67
+ errorDataState,
68
+ suppressToolbar = false,
69
+ toolbarBefore,
70
+ toolbarAfter,
71
+ suppressPagination = false,
72
+ manualSorting = false,
73
+ manualPagination = false,
74
+ manualFiltering = false,
75
+ autoResetPageIndex = false,
76
+ scrollRef,
77
+ scrollContainerRef,
78
+ getRowId,
79
+ enableFuzzySearch,
80
+ savedState
81
+ } = _a,
82
+ rest = __rest(_a, ["data", "rowPinning", "columnDefinitions", "keepPinnedRows", "copyPinnedRows", "enableSelectPinned", "rowSelection", "search", "sorting", "columnFilters", "pagination", "className", "onRowClick", "onRefresh", "onDelete", "pageSize", "pageCount", "loading", "outline", "moreActions", "exportSettings", "dataFiltered", "dataError", "noDataState", "noResultsState", "errorDataState", "suppressToolbar", "toolbarBefore", "toolbarAfter", "suppressPagination", "manualSorting", "manualPagination", "manualFiltering", "autoResetPageIndex", "scrollRef", "scrollContainerRef", "getRowId", "enableFuzzySearch", "savedState"]);
83
+ const {
84
+ state: globalFilter,
85
+ onStateChange: onGlobalFilterChange
86
+ } = (0, hooks_1.useStateControl)(search, '');
87
+ const {
88
+ state: rowSelection,
89
+ onStateChange: onRowSelectionChange
90
+ } = (0, hooks_1.useStateControl)(rowSelectionProp, {});
91
+ const defaultPaginationState = (0, react_1.useMemo)(() => ({
92
+ pageIndex: 0,
93
+ pageSize
94
+ }), [pageSize]);
95
+ const {
96
+ state: sorting,
97
+ onStateChange: onSortingChange
98
+ } = (0, hooks_1.useStateControl)(sortingProp, []);
99
+ const {
100
+ state: pagination,
101
+ onStateChange: onPaginationChange
102
+ } = (0, hooks_1.useStateControl)(paginationProp, defaultPaginationState);
103
+ const enableSelection = Boolean(rowSelectionProp === null || rowSelectionProp === void 0 ? void 0 : rowSelectionProp.enable);
104
+ const tableColumns = (0, react_1.useMemo)(() => {
105
+ let cols = columnDefinitions;
106
+ if (enableSelection) {
107
+ cols = [(0, helperComponents_1.getSelectionCellColumnDef)(enableSelectPinned), ...cols];
108
+ }
109
+ return cols;
110
+ }, [columnDefinitions, enableSelection, enableSelectPinned]);
111
+ const columnPinning = (0, react_1.useMemo)(() => {
112
+ var _a;
113
+ const pinningState = {
114
+ left: [],
115
+ right: []
116
+ };
117
+ for (const col of tableColumns) {
118
+ const id = (0, helperComponents_1.getColumnId)(col);
119
+ if (col.pinned && id) {
120
+ (_a = pinningState[col.pinned]) === null || _a === void 0 ? void 0 : _a.push(id);
121
+ }
122
+ }
123
+ return pinningState;
124
+ }, [tableColumns]);
125
+ const table = (0, react_table_1.useReactTable)({
126
+ data,
127
+ columns: tableColumns,
128
+ state: {
129
+ columnPinning,
130
+ globalFilter,
131
+ rowSelection,
132
+ sorting,
133
+ pagination,
134
+ rowPinning
135
+ },
136
+ pageCount,
137
+ defaultColumn: {
138
+ enableSorting: false,
139
+ enableResizing: false,
140
+ minSize: 40,
141
+ cell: cell => (0, jsx_runtime_1.jsx)(truncate_string_1.TruncateString, {
142
+ text: String(cell.getValue()),
143
+ maxLines: 1
144
+ })
145
+ },
146
+ manualSorting,
147
+ manualPagination,
148
+ manualFiltering,
149
+ globalFilterFn: enableFuzzySearch ? utils_2.fuzzyFilter : 'includesString',
150
+ onGlobalFilterChange,
151
+ getRowId,
152
+ onRowSelectionChange,
153
+ enableRowSelection: rowSelectionProp === null || rowSelectionProp === void 0 ? void 0 : rowSelectionProp.enable,
154
+ enableMultiRowSelection: rowSelectionProp === null || rowSelectionProp === void 0 ? void 0 : rowSelectionProp.multiRow,
155
+ enableFilters: true,
156
+ getFilteredRowModel: (0, react_table_1.getFilteredRowModel)(),
157
+ enableColumnResizing: true,
158
+ enableSorting: true,
159
+ enableMultiSort: true,
160
+ onSortingChange,
161
+ getSortedRowModel: (0, react_table_1.getSortedRowModel)(),
162
+ onPaginationChange,
163
+ autoResetPageIndex,
164
+ getPaginationRowModel: (0, react_table_1.getPaginationRowModel)(),
165
+ getCoreRowModel: (0, react_table_1.getCoreRowModel)(),
166
+ columnResizeMode: 'onEnd',
167
+ keepPinnedRows
168
+ });
169
+ const {
170
+ loadingTable
171
+ } = (0, hooks_1.useLoadingTable)({
172
+ pageSize: Math.min(Math.max(pageSize, 5), constants_1.DEFAULT_PAGE_SIZE),
173
+ columnDefinitions: tableColumns,
174
+ columnPinning
175
+ });
176
+ const handleOnRefresh = (0, react_1.useCallback)(() => {
177
+ table.resetRowSelection();
178
+ onRefresh === null || onRefresh === void 0 ? void 0 : onRefresh();
179
+ }, [onRefresh, table]);
180
+ const handleOnDelete = (0, react_1.useCallback)(() => {
181
+ if (loading) {
182
+ return;
183
+ }
184
+ if (onDelete) {
185
+ onDelete(table.getState().rowSelection, table.resetRowSelection);
186
+ }
187
+ }, [loading, onDelete, table]);
188
+ const handleOnCheck = (0, react_1.useCallback)(() => {
189
+ if (!loading && !enableSelectPinned && table.getTopRows().length) {
190
+ const centerRows = table.getCenterRows();
191
+ const isSomeRowsSelected = table.getIsSomePageRowsSelected();
192
+ const isAllCenterRowsSelected = centerRows.every(row => row.getIsSelected());
193
+ if (isAllCenterRowsSelected) {
194
+ table.resetRowSelection();
195
+ return;
196
+ }
197
+ centerRows.forEach(row => row.toggleSelected(isSomeRowsSelected ? true : undefined));
198
+ return;
199
+ }
200
+ if (!loading && (rowSelectionProp === null || rowSelectionProp === void 0 ? void 0 : rowSelectionProp.multiRow)) {
201
+ table.toggleAllPageRowsSelected();
202
+ return;
203
+ }
204
+ }, [loading, rowSelectionProp === null || rowSelectionProp === void 0 ? void 0 : rowSelectionProp.multiRow, table, enableSelectPinned]);
205
+ const columnSizeVarsRef = (0, react_1.useRef)();
206
+ const headers = table.getFlatHeaders();
207
+ const columnSizeVars = (0, react_1.useMemo)(() => {
208
+ var _a;
209
+ const originalColumnDefs = table._getColumnDefs();
210
+ const colSizes = {};
211
+ for (let i = 0; i < headers.length; i++) {
212
+ const header = headers[i];
213
+ const {
214
+ sizeKey,
215
+ flexKey
216
+ } = (0, utils_3.getColumnStyleVars)(header.id);
217
+ const originalColDef = originalColumnDefs.find(col => (0, helperComponents_1.getColumnId)(header) === col.id);
218
+ if (header.id === 'snack_predefined_statusColumn' && !(originalColDef === null || originalColDef === void 0 ? void 0 : originalColDef.header) && !(originalColDef === null || originalColDef === void 0 ? void 0 : originalColDef.enableSorting)) {
219
+ const indicatorSize = 'var(--size-table-cell-status-indicator-horizontal)';
220
+ colSizes[sizeKey] = indicatorSize;
221
+ colSizes[flexKey] = '100%';
222
+ } else {
223
+ const originalColumnDefSize = originalColDef === null || originalColDef === void 0 ? void 0 : originalColDef.size;
224
+ let initSize = originalColumnDefSize ? `${originalColumnDefSize}px` : '100%';
225
+ const prevSize = (_a = columnSizeVarsRef.current) === null || _a === void 0 ? void 0 : _a[sizeKey];
226
+ const isResizeSavedToStore = (originalColDef === null || originalColDef === void 0 ? void 0 : originalColDef.enableResizing) && (savedState === null || savedState === void 0 ? void 0 : savedState.id) && (savedState === null || savedState === void 0 ? void 0 : savedState.resize) !== false;
227
+ if (isResizeSavedToStore) {
228
+ const savedSize = (0, utils_3.getInitColumnSizeFromLocalStorage)({
229
+ id: savedState.id,
230
+ columnId: header.id
231
+ });
232
+ if (savedSize) {
233
+ initSize = savedSize;
234
+ }
235
+ }
236
+ let size = initSize;
237
+ if (header.column.getCanResize()) {
238
+ const currentSize = header.getSize();
239
+ const colDefSize = header.column.columnDef.size;
240
+ size = currentSize === colDefSize ? initSize : `${currentSize}px`;
241
+ if (prevSize === '100%' && currentSize !== colDefSize) {
242
+ const realSize = (0, utils_3.getCurrentlyConfiguredHeaderWidth)(header.id);
243
+ table.setColumnSizing(old => Object.assign(Object.assign({}, old), {
244
+ [header.id]: realSize
245
+ }));
246
+ size = `${realSize}px`;
247
+ }
248
+ }
249
+ if (isResizeSavedToStore) {
250
+ (0, utils_3.saveStateToLocalStorage)({
251
+ id: savedState.id,
252
+ columnId: header.id,
253
+ size
254
+ });
255
+ }
256
+ colSizes[sizeKey] = size;
257
+ colSizes[flexKey] = size === '100%' ? 'unset' : '0';
258
+ }
259
+ }
260
+ return colSizes;
261
+ /*
262
+ effect must be called only on columnSizingInfo.isResizingColumn changes
263
+ to reduce unnecessary recalculations
264
+ headers ids can also change, so they also should present here
265
+ table.getTotalSize() will trigger re-render after double-click size reset
266
+ */
267
+ // eslint-disable-next-line react-hooks/exhaustive-deps
268
+ }, [table.getState().columnSizingInfo.isResizingColumn, headers, table.getTotalSize()]);
269
+ (0, react_1.useEffect)(() => {
270
+ columnSizeVarsRef.current = columnSizeVars;
271
+ }, [columnSizeVars]);
272
+ const tableRows = table.getRowModel().rows;
273
+ const tableCenterRows = table.getCenterRows();
274
+ const tableFilteredRows = table.getFilteredRowModel().rows;
275
+ const tableFilteredRowsIds = tableFilteredRows.map(row => row.id);
276
+ const topRows = table.getTopRows();
277
+ const loadingTableRows = loadingTable.getRowModel().rows;
278
+ const tablePagination = table.getState().pagination;
279
+ const filteredTopRows = table.getState().globalFilter ? topRows.filter(tr => tableFilteredRowsIds.includes(tr.id)) : topRows;
280
+ const centerRows = copyPinnedRows ? tableRows : tableCenterRows;
281
+ const {
282
+ t
283
+ } = (0, locale_1.useLocale)('Table');
284
+ const emptyStates = (0, helperComponents_1.useEmptyState)({
285
+ noDataState,
286
+ noResultsState,
287
+ errorDataState
288
+ });
289
+ const cssPageSize = (0, react_1.useMemo)(() => {
290
+ const tempPageSize = (!suppressPagination ? tablePagination === null || tablePagination === void 0 ? void 0 : tablePagination.pageSize : pageSize) + filteredTopRows.length;
291
+ return !tableRows.length ? Math.min(Math.max(tempPageSize, 5), constants_1.DEFAULT_PAGE_SIZE) : tempPageSize;
292
+ }, [filteredTopRows.length, pageSize, suppressPagination, tablePagination === null || tablePagination === void 0 ? void 0 : tablePagination.pageSize, tableRows.length]);
293
+ (0, usePageReset_1.usePageReset)({
294
+ manualPagination,
295
+ maximumAvailablePage: pageCount || data.length / pagination.pageSize,
296
+ pagination,
297
+ onPaginationChange,
298
+ autoResetPageIndex
299
+ });
300
+ return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, {
301
+ children: (0, jsx_runtime_1.jsxs)("div", Object.assign({
302
+ style: {
303
+ '--page-size': cssPageSize
304
+ },
305
+ className: (0, classnames_1.default)(styles_module_scss_1.default.wrapper, className)
306
+ }, (0, utils_1.extractSupportProps)(rest), {
307
+ children: [!suppressToolbar && (0, jsx_runtime_1.jsxs)("div", {
308
+ className: styles_module_scss_1.default.header,
309
+ children: [(0, jsx_runtime_1.jsx)(toolbar_1.Toolbar, {
310
+ search: {
311
+ value: globalFilter,
312
+ onChange: onGlobalFilterChange,
313
+ loading: search === null || search === void 0 ? void 0 : search.loading,
314
+ placeholder: (search === null || search === void 0 ? void 0 : search.placeholder) || t('searchPlaceholder')
315
+ },
316
+ checked: table.getIsAllPageRowsSelected(),
317
+ indeterminate: table.getIsSomePageRowsSelected(),
318
+ className: styles_module_scss_1.default.toolbar,
319
+ onRefresh: onRefresh ? handleOnRefresh : undefined,
320
+ onDelete: enableSelection && onDelete ? handleOnDelete : undefined,
321
+ onCheck: enableSelection ? handleOnCheck : undefined,
322
+ outline: outline,
323
+ selectionMode: (rowSelectionProp === null || rowSelectionProp === void 0 ? void 0 : rowSelectionProp.multiRow) ? 'multiple' : 'single',
324
+ before: toolbarBefore,
325
+ after: toolbarAfter || exportSettings ? (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, {
326
+ children: [toolbarAfter, exportSettings && (0, jsx_runtime_1.jsx)(helperComponents_1.ExportButton, {
327
+ settings: exportSettings,
328
+ columnDefinitions: columnDefinitions,
329
+ data: data,
330
+ topRows: filteredTopRows,
331
+ centerRows: centerRows
332
+ })]
333
+ }) : undefined,
334
+ moreActions: moreActions
335
+ }), columnFilters && (0, jsx_runtime_1.jsxs)("div", {
336
+ className: styles_module_scss_1.default.filtersWrapper,
337
+ children: [" ", columnFilters, " "]
338
+ })]
339
+ }), (0, jsx_runtime_1.jsx)("div", {
340
+ className: styles_module_scss_1.default.scrollWrapper,
341
+ "data-outline": outline || undefined,
342
+ children: (0, jsx_runtime_1.jsxs)(scroll_1.Scroll, {
343
+ size: 's',
344
+ className: styles_module_scss_1.default.table,
345
+ ref: scrollContainerRef,
346
+ children: [(0, jsx_runtime_1.jsx)("div", {
347
+ className: styles_module_scss_1.default.tableContent,
348
+ style: columnSizeVars,
349
+ children: (0, jsx_runtime_1.jsx)(helperComponents_1.TableContext.Provider, {
350
+ value: {
351
+ table
352
+ },
353
+ children: loading ? (0, jsx_runtime_1.jsxs)(skeleton_1.SkeletonContextProvider, {
354
+ loading: true,
355
+ children: [(0, jsx_runtime_1.jsx)(helperComponents_1.HeaderRow, {}), loadingTableRows.map(row => (0, jsx_runtime_1.jsx)(helperComponents_1.BodyRow, {
356
+ row: row
357
+ }, row.id))]
358
+ }) : (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, {
359
+ children: [centerRows.length || filteredTopRows.length ? (0, jsx_runtime_1.jsx)(helperComponents_1.HeaderRow, {}) : null, filteredTopRows.length ? (0, jsx_runtime_1.jsx)("div", {
360
+ className: styles_module_scss_1.default.topRowWrapper,
361
+ children: filteredTopRows.map(row => (0, jsx_runtime_1.jsx)(helperComponents_1.BodyRow, {
362
+ row: row,
363
+ onRowClick: onRowClick
364
+ }, row.id))
365
+ }) : null, centerRows.map(row => (0, jsx_runtime_1.jsx)(helperComponents_1.BodyRow, {
366
+ row: row,
367
+ onRowClick: onRowClick
368
+ }, row.id)), (0, jsx_runtime_1.jsx)(helperComponents_1.TableEmptyState, {
369
+ emptyStates: emptyStates,
370
+ dataError: dataError,
371
+ dataFiltered: dataFiltered || Boolean(table.getState().globalFilter),
372
+ tableRowsLength: tableRows.length + filteredTopRows.length
373
+ })]
374
+ })
375
+ })
376
+ }), (0, jsx_runtime_1.jsx)("div", {
377
+ className: styles_module_scss_1.default.scrollStub,
378
+ ref: scrollRef
379
+ })]
380
+ })
381
+ }), !suppressPagination && (0, jsx_runtime_1.jsx)(helperComponents_1.TablePagination, {
382
+ table: table,
383
+ options: paginationProp === null || paginationProp === void 0 ? void 0 : paginationProp.options,
384
+ optionsLabel: paginationProp === null || paginationProp === void 0 ? void 0 : paginationProp.optionsLabel,
385
+ pageCount: pageCount,
386
+ optionsRender: paginationProp === null || paginationProp === void 0 ? void 0 : paginationProp.optionsRender
387
+ })]
388
+ }))
389
+ });
390
+ }
391
+ Table.getStatusColumnDef = helperComponents_1.getStatusColumnDef;
392
+ Table.statusAppearances = helperComponents_1.STATUS_APPEARANCE;
393
+ Table.getRowActionsColumnDef = helperComponents_1.getRowActionsColumnDef;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ var __createBinding = void 0 && (void 0).__createBinding || (Object.create ? function (o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = {
8
+ enumerable: true,
9
+ get: function () {
10
+ return m[k];
11
+ }
12
+ };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ } : function (o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ });
19
+ var __exportStar = void 0 && (void 0).__exportStar || function (m, exports) {
20
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
21
+ };
22
+ Object.defineProperty(exports, "__esModule", {
23
+ value: true
24
+ });
25
+ __exportStar(require("./useLoadingTable"), exports);
26
+ __exportStar(require("./useStateControl"), exports);
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ var __importDefault = void 0 && (void 0).__importDefault || function (mod) {
4
+ return mod && mod.__esModule ? mod : {
5
+ "default": mod
6
+ };
7
+ };
8
+ Object.defineProperty(exports, "__esModule", {
9
+ value: true
10
+ });
11
+ exports.useLoadingTable = useLoadingTable;
12
+ const jsx_runtime_1 = require("react/jsx-runtime");
13
+ const react_table_1 = require("@tanstack/react-table");
14
+ const react_1 = require("react");
15
+ const skeleton_1 = require("@snack-uikit/skeleton");
16
+ const styles_module_scss_1 = __importDefault(require('../styles.module.css'));
17
+ function useLoadingTable(_ref) {
18
+ let {
19
+ pageSize,
20
+ columnDefinitions,
21
+ columnPinning
22
+ } = _ref;
23
+ const data = (0, react_1.useMemo)(() => Array.from({
24
+ length: pageSize
25
+ }).map(() => '') || [], [pageSize]);
26
+ const columns = (0, react_1.useMemo)(() => columnDefinitions.map(column => Object.assign(Object.assign({}, column), {
27
+ cell: () => (0, jsx_runtime_1.jsx)(skeleton_1.SkeletonText, {
28
+ className: styles_module_scss_1.default.skeleton,
29
+ lines: 1,
30
+ width: '100%'
31
+ })
32
+ })), [columnDefinitions]);
33
+ const loadingTable = (0, react_table_1.useReactTable)({
34
+ data,
35
+ columns,
36
+ state: {
37
+ columnPinning
38
+ },
39
+ getCoreRowModel: (0, react_table_1.getCoreRowModel)()
40
+ });
41
+ return {
42
+ loadingTable
43
+ };
44
+ }
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.usePageReset = usePageReset;
7
+ const react_1 = require("react");
8
+ function usePageReset(_ref) {
9
+ let {
10
+ manualPagination,
11
+ pagination,
12
+ maximumAvailablePage,
13
+ onPaginationChange,
14
+ autoResetPageIndex
15
+ } = _ref;
16
+ (0, react_1.useEffect)(() => {
17
+ if (autoResetPageIndex) return;
18
+ const {
19
+ pageIndex
20
+ } = pagination;
21
+ if (!manualPagination && pageIndex > 0 && pageIndex >= maximumAvailablePage) {
22
+ onPaginationChange(Object.assign(Object.assign({}, pagination), {
23
+ pageIndex: 0
24
+ }));
25
+ }
26
+ }, [maximumAvailablePage, manualPagination, onPaginationChange, pagination, autoResetPageIndex]);
27
+ }
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useStateControl = useStateControl;
7
+ const uncontrollable_1 = require("uncontrollable");
8
+ function useStateControl(control, defaultState) {
9
+ var _a, _b;
10
+ const [state, onStateChange] = (0, uncontrollable_1.useUncontrolledProp)(control === null || control === void 0 ? void 0 : control.state, (_b = (_a = control === null || control === void 0 ? void 0 : control.state) !== null && _a !== void 0 ? _a : control === null || control === void 0 ? void 0 : control.initialState) !== null && _b !== void 0 ? _b : defaultState, controlState => {
11
+ var _a;
12
+ const newState = typeof controlState === 'function' ? controlState(state) : controlState;
13
+ (_a = control === null || control === void 0 ? void 0 : control.onChange) === null || _a === void 0 ? void 0 : _a.call(control, newState);
14
+ });
15
+ return {
16
+ state,
17
+ onStateChange
18
+ };
19
+ }
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ var __createBinding = void 0 && (void 0).__createBinding || (Object.create ? function (o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = {
8
+ enumerable: true,
9
+ get: function () {
10
+ return m[k];
11
+ }
12
+ };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ } : function (o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ });
19
+ var __exportStar = void 0 && (void 0).__exportStar || function (m, exports) {
20
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
21
+ };
22
+ Object.defineProperty(exports, "__esModule", {
23
+ value: true
24
+ });
25
+ __exportStar(require("./Table"), exports);