@xyo-network/react-payload-table 2.81.10 → 2.82.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 (271) hide show
  1. package/dist/browser/components/DynamicTable/DynamicTableRow.d.cts +2 -1
  2. package/dist/browser/components/DynamicTable/DynamicTableRow.d.cts.map +1 -1
  3. package/dist/browser/components/DynamicTable/DynamicTableRow.d.mts +2 -1
  4. package/dist/browser/components/DynamicTable/DynamicTableRow.d.mts.map +1 -1
  5. package/dist/browser/components/DynamicTable/DynamicTableRow.d.ts +2 -1
  6. package/dist/browser/components/DynamicTable/DynamicTableRow.d.ts.map +1 -1
  7. package/dist/browser/components/DynamicTable/Table.d.cts +2 -1
  8. package/dist/browser/components/DynamicTable/Table.d.cts.map +1 -1
  9. package/dist/browser/components/DynamicTable/Table.d.mts +2 -1
  10. package/dist/browser/components/DynamicTable/Table.d.mts.map +1 -1
  11. package/dist/browser/components/DynamicTable/Table.d.ts +2 -1
  12. package/dist/browser/components/DynamicTable/Table.d.ts.map +1 -1
  13. package/dist/browser/components/DynamicTable/index.d.cts +3 -3
  14. package/dist/browser/components/DynamicTable/index.d.cts.map +1 -1
  15. package/dist/browser/components/DynamicTable/index.d.mts +3 -3
  16. package/dist/browser/components/DynamicTable/index.d.mts.map +1 -1
  17. package/dist/browser/components/DynamicTable/index.d.ts +3 -3
  18. package/dist/browser/components/DynamicTable/index.d.ts.map +1 -1
  19. package/dist/browser/components/Table/Table.d.cts +5 -5
  20. package/dist/browser/components/Table/Table.d.cts.map +1 -1
  21. package/dist/browser/components/Table/Table.d.mts +5 -5
  22. package/dist/browser/components/Table/Table.d.mts.map +1 -1
  23. package/dist/browser/components/Table/Table.d.ts +5 -5
  24. package/dist/browser/components/Table/Table.d.ts.map +1 -1
  25. package/dist/browser/components/Table/TableBody.d.cts +2 -1
  26. package/dist/browser/components/Table/TableBody.d.cts.map +1 -1
  27. package/dist/browser/components/Table/TableBody.d.mts +2 -1
  28. package/dist/browser/components/Table/TableBody.d.mts.map +1 -1
  29. package/dist/browser/components/Table/TableBody.d.ts +2 -1
  30. package/dist/browser/components/Table/TableBody.d.ts.map +1 -1
  31. package/dist/browser/components/Table/TableFooter.d.cts +2 -1
  32. package/dist/browser/components/Table/TableFooter.d.cts.map +1 -1
  33. package/dist/browser/components/Table/TableFooter.d.mts +2 -1
  34. package/dist/browser/components/Table/TableFooter.d.mts.map +1 -1
  35. package/dist/browser/components/Table/TableFooter.d.ts +2 -1
  36. package/dist/browser/components/Table/TableFooter.d.ts.map +1 -1
  37. package/dist/browser/components/Table/TableHead.d.cts +2 -1
  38. package/dist/browser/components/Table/TableHead.d.cts.map +1 -1
  39. package/dist/browser/components/Table/TableHead.d.mts +2 -1
  40. package/dist/browser/components/Table/TableHead.d.mts.map +1 -1
  41. package/dist/browser/components/Table/TableHead.d.ts +2 -1
  42. package/dist/browser/components/Table/TableHead.d.ts.map +1 -1
  43. package/dist/browser/components/Table/TablePagination.d.cts +1 -0
  44. package/dist/browser/components/Table/TablePagination.d.cts.map +1 -1
  45. package/dist/browser/components/Table/TablePagination.d.mts +1 -0
  46. package/dist/browser/components/Table/TablePagination.d.mts.map +1 -1
  47. package/dist/browser/components/Table/TablePagination.d.ts +1 -0
  48. package/dist/browser/components/Table/TablePagination.d.ts.map +1 -1
  49. package/dist/browser/components/Table/TableRow.d.cts +2 -1
  50. package/dist/browser/components/Table/TableRow.d.cts.map +1 -1
  51. package/dist/browser/components/Table/TableRow.d.mts +2 -1
  52. package/dist/browser/components/Table/TableRow.d.mts.map +1 -1
  53. package/dist/browser/components/Table/TableRow.d.ts +2 -1
  54. package/dist/browser/components/Table/TableRow.d.ts.map +1 -1
  55. package/dist/browser/components/Table/TableRowNoData.d.cts +1 -0
  56. package/dist/browser/components/Table/TableRowNoData.d.cts.map +1 -1
  57. package/dist/browser/components/Table/TableRowNoData.d.mts +1 -0
  58. package/dist/browser/components/Table/TableRowNoData.d.mts.map +1 -1
  59. package/dist/browser/components/Table/TableRowNoData.d.ts +1 -0
  60. package/dist/browser/components/Table/TableRowNoData.d.ts.map +1 -1
  61. package/dist/browser/components/Table/index.d.cts +6 -6
  62. package/dist/browser/components/Table/index.d.cts.map +1 -1
  63. package/dist/browser/components/Table/index.d.mts +6 -6
  64. package/dist/browser/components/Table/index.d.mts.map +1 -1
  65. package/dist/browser/components/Table/index.d.ts +6 -6
  66. package/dist/browser/components/Table/index.d.ts.map +1 -1
  67. package/dist/browser/components/Table/types/PayloadTableHeadProps.d.cts +1 -1
  68. package/dist/browser/components/Table/types/PayloadTableHeadProps.d.mts +1 -1
  69. package/dist/browser/components/Table/types/PayloadTableHeadProps.d.ts +1 -1
  70. package/dist/browser/components/Table/types/index.d.cts +4 -4
  71. package/dist/browser/components/Table/types/index.d.mts +4 -4
  72. package/dist/browser/components/Table/types/index.d.ts +4 -4
  73. package/dist/browser/components/index.d.cts +2 -2
  74. package/dist/browser/components/index.d.mts +2 -2
  75. package/dist/browser/components/index.d.ts +2 -2
  76. package/dist/browser/index.cjs +634 -394
  77. package/dist/browser/index.cjs.map +1 -1
  78. package/dist/browser/index.d.cts +1 -1
  79. package/dist/browser/index.d.mts +1 -1
  80. package/dist/browser/index.d.ts +1 -1
  81. package/dist/browser/index.mjs +801 -0
  82. package/dist/browser/index.mjs.map +1 -0
  83. package/dist/neutral/components/DynamicTable/DynamicTableRow.d.cts +2 -1
  84. package/dist/neutral/components/DynamicTable/DynamicTableRow.d.cts.map +1 -1
  85. package/dist/neutral/components/DynamicTable/DynamicTableRow.d.mts +2 -1
  86. package/dist/neutral/components/DynamicTable/DynamicTableRow.d.mts.map +1 -1
  87. package/dist/neutral/components/DynamicTable/DynamicTableRow.d.ts +2 -1
  88. package/dist/neutral/components/DynamicTable/DynamicTableRow.d.ts.map +1 -1
  89. package/dist/neutral/components/DynamicTable/Table.d.cts +2 -1
  90. package/dist/neutral/components/DynamicTable/Table.d.cts.map +1 -1
  91. package/dist/neutral/components/DynamicTable/Table.d.mts +2 -1
  92. package/dist/neutral/components/DynamicTable/Table.d.mts.map +1 -1
  93. package/dist/neutral/components/DynamicTable/Table.d.ts +2 -1
  94. package/dist/neutral/components/DynamicTable/Table.d.ts.map +1 -1
  95. package/dist/neutral/components/DynamicTable/index.d.cts +3 -3
  96. package/dist/neutral/components/DynamicTable/index.d.cts.map +1 -1
  97. package/dist/neutral/components/DynamicTable/index.d.mts +3 -3
  98. package/dist/neutral/components/DynamicTable/index.d.mts.map +1 -1
  99. package/dist/neutral/components/DynamicTable/index.d.ts +3 -3
  100. package/dist/neutral/components/DynamicTable/index.d.ts.map +1 -1
  101. package/dist/neutral/components/Table/Table.d.cts +5 -5
  102. package/dist/neutral/components/Table/Table.d.cts.map +1 -1
  103. package/dist/neutral/components/Table/Table.d.mts +5 -5
  104. package/dist/neutral/components/Table/Table.d.mts.map +1 -1
  105. package/dist/neutral/components/Table/Table.d.ts +5 -5
  106. package/dist/neutral/components/Table/Table.d.ts.map +1 -1
  107. package/dist/neutral/components/Table/TableBody.d.cts +2 -1
  108. package/dist/neutral/components/Table/TableBody.d.cts.map +1 -1
  109. package/dist/neutral/components/Table/TableBody.d.mts +2 -1
  110. package/dist/neutral/components/Table/TableBody.d.mts.map +1 -1
  111. package/dist/neutral/components/Table/TableBody.d.ts +2 -1
  112. package/dist/neutral/components/Table/TableBody.d.ts.map +1 -1
  113. package/dist/neutral/components/Table/TableFooter.d.cts +2 -1
  114. package/dist/neutral/components/Table/TableFooter.d.cts.map +1 -1
  115. package/dist/neutral/components/Table/TableFooter.d.mts +2 -1
  116. package/dist/neutral/components/Table/TableFooter.d.mts.map +1 -1
  117. package/dist/neutral/components/Table/TableFooter.d.ts +2 -1
  118. package/dist/neutral/components/Table/TableFooter.d.ts.map +1 -1
  119. package/dist/neutral/components/Table/TableHead.d.cts +2 -1
  120. package/dist/neutral/components/Table/TableHead.d.cts.map +1 -1
  121. package/dist/neutral/components/Table/TableHead.d.mts +2 -1
  122. package/dist/neutral/components/Table/TableHead.d.mts.map +1 -1
  123. package/dist/neutral/components/Table/TableHead.d.ts +2 -1
  124. package/dist/neutral/components/Table/TableHead.d.ts.map +1 -1
  125. package/dist/neutral/components/Table/TablePagination.d.cts +1 -0
  126. package/dist/neutral/components/Table/TablePagination.d.cts.map +1 -1
  127. package/dist/neutral/components/Table/TablePagination.d.mts +1 -0
  128. package/dist/neutral/components/Table/TablePagination.d.mts.map +1 -1
  129. package/dist/neutral/components/Table/TablePagination.d.ts +1 -0
  130. package/dist/neutral/components/Table/TablePagination.d.ts.map +1 -1
  131. package/dist/neutral/components/Table/TableRow.d.cts +2 -1
  132. package/dist/neutral/components/Table/TableRow.d.cts.map +1 -1
  133. package/dist/neutral/components/Table/TableRow.d.mts +2 -1
  134. package/dist/neutral/components/Table/TableRow.d.mts.map +1 -1
  135. package/dist/neutral/components/Table/TableRow.d.ts +2 -1
  136. package/dist/neutral/components/Table/TableRow.d.ts.map +1 -1
  137. package/dist/neutral/components/Table/TableRowNoData.d.cts +1 -0
  138. package/dist/neutral/components/Table/TableRowNoData.d.cts.map +1 -1
  139. package/dist/neutral/components/Table/TableRowNoData.d.mts +1 -0
  140. package/dist/neutral/components/Table/TableRowNoData.d.mts.map +1 -1
  141. package/dist/neutral/components/Table/TableRowNoData.d.ts +1 -0
  142. package/dist/neutral/components/Table/TableRowNoData.d.ts.map +1 -1
  143. package/dist/neutral/components/Table/index.d.cts +6 -6
  144. package/dist/neutral/components/Table/index.d.cts.map +1 -1
  145. package/dist/neutral/components/Table/index.d.mts +6 -6
  146. package/dist/neutral/components/Table/index.d.mts.map +1 -1
  147. package/dist/neutral/components/Table/index.d.ts +6 -6
  148. package/dist/neutral/components/Table/index.d.ts.map +1 -1
  149. package/dist/neutral/components/Table/types/PayloadTableHeadProps.d.cts +1 -1
  150. package/dist/neutral/components/Table/types/PayloadTableHeadProps.d.mts +1 -1
  151. package/dist/neutral/components/Table/types/PayloadTableHeadProps.d.ts +1 -1
  152. package/dist/neutral/components/Table/types/index.d.cts +4 -4
  153. package/dist/neutral/components/Table/types/index.d.mts +4 -4
  154. package/dist/neutral/components/Table/types/index.d.ts +4 -4
  155. package/dist/neutral/components/index.d.cts +2 -2
  156. package/dist/neutral/components/index.d.mts +2 -2
  157. package/dist/neutral/components/index.d.ts +2 -2
  158. package/dist/neutral/index.cjs +634 -394
  159. package/dist/neutral/index.cjs.map +1 -1
  160. package/dist/neutral/index.d.cts +1 -1
  161. package/dist/neutral/index.d.mts +1 -1
  162. package/dist/neutral/index.d.ts +1 -1
  163. package/dist/neutral/index.mjs +801 -0
  164. package/dist/neutral/index.mjs.map +1 -0
  165. package/dist/node/components/DynamicTable/DynamicTableRow.d.cts +2 -1
  166. package/dist/node/components/DynamicTable/DynamicTableRow.d.cts.map +1 -1
  167. package/dist/node/components/DynamicTable/DynamicTableRow.d.mts +2 -1
  168. package/dist/node/components/DynamicTable/DynamicTableRow.d.mts.map +1 -1
  169. package/dist/node/components/DynamicTable/DynamicTableRow.d.ts +2 -1
  170. package/dist/node/components/DynamicTable/DynamicTableRow.d.ts.map +1 -1
  171. package/dist/node/components/DynamicTable/Table.d.cts +2 -1
  172. package/dist/node/components/DynamicTable/Table.d.cts.map +1 -1
  173. package/dist/node/components/DynamicTable/Table.d.mts +2 -1
  174. package/dist/node/components/DynamicTable/Table.d.mts.map +1 -1
  175. package/dist/node/components/DynamicTable/Table.d.ts +2 -1
  176. package/dist/node/components/DynamicTable/Table.d.ts.map +1 -1
  177. package/dist/node/components/DynamicTable/index.d.cts +3 -3
  178. package/dist/node/components/DynamicTable/index.d.cts.map +1 -1
  179. package/dist/node/components/DynamicTable/index.d.mts +3 -3
  180. package/dist/node/components/DynamicTable/index.d.mts.map +1 -1
  181. package/dist/node/components/DynamicTable/index.d.ts +3 -3
  182. package/dist/node/components/DynamicTable/index.d.ts.map +1 -1
  183. package/dist/node/components/Table/Table.d.cts +5 -5
  184. package/dist/node/components/Table/Table.d.cts.map +1 -1
  185. package/dist/node/components/Table/Table.d.mts +5 -5
  186. package/dist/node/components/Table/Table.d.mts.map +1 -1
  187. package/dist/node/components/Table/Table.d.ts +5 -5
  188. package/dist/node/components/Table/Table.d.ts.map +1 -1
  189. package/dist/node/components/Table/TableBody.d.cts +2 -1
  190. package/dist/node/components/Table/TableBody.d.cts.map +1 -1
  191. package/dist/node/components/Table/TableBody.d.mts +2 -1
  192. package/dist/node/components/Table/TableBody.d.mts.map +1 -1
  193. package/dist/node/components/Table/TableBody.d.ts +2 -1
  194. package/dist/node/components/Table/TableBody.d.ts.map +1 -1
  195. package/dist/node/components/Table/TableFooter.d.cts +2 -1
  196. package/dist/node/components/Table/TableFooter.d.cts.map +1 -1
  197. package/dist/node/components/Table/TableFooter.d.mts +2 -1
  198. package/dist/node/components/Table/TableFooter.d.mts.map +1 -1
  199. package/dist/node/components/Table/TableFooter.d.ts +2 -1
  200. package/dist/node/components/Table/TableFooter.d.ts.map +1 -1
  201. package/dist/node/components/Table/TableHead.d.cts +2 -1
  202. package/dist/node/components/Table/TableHead.d.cts.map +1 -1
  203. package/dist/node/components/Table/TableHead.d.mts +2 -1
  204. package/dist/node/components/Table/TableHead.d.mts.map +1 -1
  205. package/dist/node/components/Table/TableHead.d.ts +2 -1
  206. package/dist/node/components/Table/TableHead.d.ts.map +1 -1
  207. package/dist/node/components/Table/TablePagination.d.cts +1 -0
  208. package/dist/node/components/Table/TablePagination.d.cts.map +1 -1
  209. package/dist/node/components/Table/TablePagination.d.mts +1 -0
  210. package/dist/node/components/Table/TablePagination.d.mts.map +1 -1
  211. package/dist/node/components/Table/TablePagination.d.ts +1 -0
  212. package/dist/node/components/Table/TablePagination.d.ts.map +1 -1
  213. package/dist/node/components/Table/TableRow.d.cts +2 -1
  214. package/dist/node/components/Table/TableRow.d.cts.map +1 -1
  215. package/dist/node/components/Table/TableRow.d.mts +2 -1
  216. package/dist/node/components/Table/TableRow.d.mts.map +1 -1
  217. package/dist/node/components/Table/TableRow.d.ts +2 -1
  218. package/dist/node/components/Table/TableRow.d.ts.map +1 -1
  219. package/dist/node/components/Table/TableRowNoData.d.cts +1 -0
  220. package/dist/node/components/Table/TableRowNoData.d.cts.map +1 -1
  221. package/dist/node/components/Table/TableRowNoData.d.mts +1 -0
  222. package/dist/node/components/Table/TableRowNoData.d.mts.map +1 -1
  223. package/dist/node/components/Table/TableRowNoData.d.ts +1 -0
  224. package/dist/node/components/Table/TableRowNoData.d.ts.map +1 -1
  225. package/dist/node/components/Table/index.d.cts +6 -6
  226. package/dist/node/components/Table/index.d.cts.map +1 -1
  227. package/dist/node/components/Table/index.d.mts +6 -6
  228. package/dist/node/components/Table/index.d.mts.map +1 -1
  229. package/dist/node/components/Table/index.d.ts +6 -6
  230. package/dist/node/components/Table/index.d.ts.map +1 -1
  231. package/dist/node/components/Table/types/PayloadTableHeadProps.d.cts +1 -1
  232. package/dist/node/components/Table/types/PayloadTableHeadProps.d.mts +1 -1
  233. package/dist/node/components/Table/types/PayloadTableHeadProps.d.ts +1 -1
  234. package/dist/node/components/Table/types/index.d.cts +4 -4
  235. package/dist/node/components/Table/types/index.d.mts +4 -4
  236. package/dist/node/components/Table/types/index.d.ts +4 -4
  237. package/dist/node/components/index.d.cts +2 -2
  238. package/dist/node/components/index.d.mts +2 -2
  239. package/dist/node/components/index.d.ts +2 -2
  240. package/dist/node/index.cjs +635 -395
  241. package/dist/node/index.cjs.map +1 -1
  242. package/dist/node/index.d.cts +1 -1
  243. package/dist/node/index.d.mts +1 -1
  244. package/dist/node/index.d.ts +1 -1
  245. package/dist/node/index.mjs +809 -0
  246. package/dist/node/index.mjs.map +1 -0
  247. package/package.json +25 -25
  248. package/src/components/DynamicTable/DynamicTable.stories.tsx +5 -5
  249. package/src/components/DynamicTable/DynamicTableRow.tsx +32 -28
  250. package/src/components/DynamicTable/Table.tsx +83 -79
  251. package/src/components/DynamicTable/index.ts +3 -3
  252. package/src/components/Table/FetchMoreTable.stories.tsx +6 -5
  253. package/src/components/Table/Table.stories.tsx +6 -7
  254. package/src/components/Table/Table.tsx +7 -7
  255. package/src/components/Table/TableBody.tsx +15 -13
  256. package/src/components/Table/TableFooter.tsx +9 -8
  257. package/src/components/Table/TableHead.tsx +8 -6
  258. package/src/components/Table/TablePagination.tsx +17 -16
  259. package/src/components/Table/TableRow.tsx +24 -19
  260. package/src/components/Table/TableRowNoData.tsx +4 -3
  261. package/src/components/Table/index.ts +6 -6
  262. package/src/components/Table/types/PayloadTableHeadProps.ts +1 -1
  263. package/src/components/Table/types/index.ts +4 -4
  264. package/src/components/index.ts +2 -2
  265. package/src/index.ts +1 -1
  266. package/dist/browser/index.js +0 -590
  267. package/dist/browser/index.js.map +0 -1
  268. package/dist/neutral/index.js +0 -590
  269. package/dist/neutral/index.js.map +0 -1
  270. package/dist/node/index.js +0 -598
  271. package/dist/node/index.js.map +0 -1
@@ -1,598 +0,0 @@
1
- // src/components/DynamicTable/DynamicTableRow.tsx
2
- import {
3
- CheckCircleOutlineRounded as CheckCircleOutlineRoundedIcon,
4
- ErrorOutlineRounded as ErrorOutlineRoundedIcon,
5
- WarningAmberRounded as WarningAmberRoundedIcon
6
- } from "@mui/icons-material";
7
- import { TableCell, TableRow, Typography } from "@mui/material";
8
- import { usePromise } from "@xylabs/react-promise";
9
- import { useBreakpoint } from "@xylabs/react-shared";
10
- import { PayloadHasher } from "@xyo-network/hash";
11
- import { PayloadValidator } from "@xyo-network/payload-validator";
12
- import { useNetwork } from "@xyo-network/react-network";
13
- import { usePayloadRenderPluginResolver } from "@xyo-network/react-payload-plugin-resolver";
14
- import { HashTableCell, usePayloadHash } from "@xyo-network/react-shared";
15
-
16
- // src/components/DynamicTable/PayloadDynamicTableColumnConfig.ts
17
- var payloadDynamicTableColumnConfigDefaults = () => {
18
- const xs = [
19
- { alignment: "left", name: "Hash", slug: "hash", width: "100%" },
20
- { alignment: "left", name: "Schema", slug: "schema", width: "50px" },
21
- { alignment: "left", name: "Valid", slug: "valid", width: "50px" }
22
- ];
23
- const sm = [
24
- { alignment: "left", name: "Icon", slug: "icon", width: "50px" },
25
- { alignment: "left", name: "Hash", slug: "hash", width: "100%" },
26
- { alignment: "left", name: "Schema", slug: "schema", width: "50px" },
27
- { alignment: "left", name: "Valid", slug: "valid", width: "50px" }
28
- ];
29
- const md = [
30
- { alignment: "left", name: "Icon", slug: "icon", width: "50px" },
31
- { alignment: "left", name: "Hash", slug: "hash", width: "100%" },
32
- { alignment: "left", name: "Schema", slug: "schema", width: "50px" },
33
- { alignment: "left", name: "Valid", slug: "valid", width: "50px" }
34
- ];
35
- const lg = [
36
- { alignment: "left", name: "Icon", slug: "icon", width: "50px" },
37
- { alignment: "left", name: "Hash", slug: "hash", width: "100%" },
38
- { alignment: "left", name: "Schema", slug: "schema", width: "50px" },
39
- { alignment: "left", name: "Render", slug: "render", width: "50px" },
40
- { alignment: "left", name: "Valid", slug: "valid", width: "50px" }
41
- ];
42
- const xl = [
43
- { alignment: "left", name: "Icon", slug: "icon", width: "50px" },
44
- { alignment: "left", name: "Hash", slug: "hash", width: "100%" },
45
- { alignment: "left", name: "Schema", slug: "schema", width: "50px" },
46
- { alignment: "left", name: "Render", slug: "render", width: "50px" },
47
- { alignment: "left", name: "Valid", slug: "valid", width: "50px" }
48
- ];
49
- return { lg, md, sm, xl, xs };
50
- };
51
-
52
- // src/components/DynamicTable/DynamicTableRow.tsx
53
- import { jsx } from "react/jsx-runtime";
54
- var PayloadDynamicTableRow = ({
55
- archive,
56
- columns = payloadDynamicTableColumnConfigDefaults(),
57
- exploreDomain,
58
- network: networkProp,
59
- payload,
60
- ...props
61
- }) => {
62
- var _a;
63
- const breakPoint = useBreakpoint();
64
- const payloadHash = usePayloadHash(payload);
65
- const { network } = useNetwork();
66
- const { resolver } = usePayloadRenderPluginResolver();
67
- const [validationErrors = []] = usePromise(async () => payload ? await new PayloadValidator(payload).validate() : void 0, [payload]);
68
- const isValid = validationErrors.length === 0;
69
- const payloadFieldCount = payload ? Object.keys(PayloadHasher.hashFields(payload)).length : 0;
70
- const hash = (props2) => /* @__PURE__ */ jsx(
71
- HashTableCell,
72
- {
73
- align: "left",
74
- archive,
75
- value: payloadHash,
76
- dataType: "payload",
77
- exploreDomain,
78
- network: networkProp ?? (network == null ? void 0 : network.slug),
79
- ...props2
80
- },
81
- "hash"
82
- );
83
- const schema = (props2) => /* @__PURE__ */ jsx(TableCell, { align: "left", ...props2, children: /* @__PURE__ */ jsx(Typography, { fontFamily: "monospace", variant: "body2", noWrap: true, children: payload == null ? void 0 : payload.schema }) }, "payloads");
84
- const details = (props2) => /* @__PURE__ */ jsx(TableCell, { align: "left", ...props2, children: /* @__PURE__ */ jsx(Typography, { fontFamily: "monospace", variant: "body2", noWrap: true, children: payloadFieldCount }) }, "payloads");
85
- const render = (props2) => {
86
- var _a2;
87
- const Render = payload ? (_a2 = resolver == null ? void 0 : resolver.resolve(payload)) == null ? void 0 : _a2.components.table.cell : void 0;
88
- return Render ? /* @__PURE__ */ jsx(Render, { payload, ...props2 }) : /* @__PURE__ */ jsx(TableCell, { align: "left", ...props2 }, "payloads");
89
- };
90
- const icon = (props2) => {
91
- var _a2;
92
- const Avatar = payload ? (_a2 = resolver == null ? void 0 : resolver.resolve(payload)) == null ? void 0 : _a2.components.avatar.image : void 0;
93
- return /* @__PURE__ */ jsx(TableCell, { align: "left", ...props2, children: Avatar ? /* @__PURE__ */ jsx(Avatar, { payload }) : null }, "payloads");
94
- };
95
- const valid = (props2) => /* @__PURE__ */ jsx(TableCell, { align: "center", ...props2, children: isValid === void 0 && payload != void 0 ? /* @__PURE__ */ jsx(WarningAmberRoundedIcon, { fontSize: "small", color: "warning" }) : isValid === true ? /* @__PURE__ */ jsx(CheckCircleOutlineRoundedIcon, { fontSize: "small", color: "success" }) : isValid === false ? /* @__PURE__ */ jsx(ErrorOutlineRoundedIcon, { color: "error", fontSize: "small" }) : /* @__PURE__ */ jsx(Typography, { children: " \xA0" }) }, "valid");
96
- const tableCells = {
97
- details,
98
- hash,
99
- icon,
100
- render,
101
- schema,
102
- valid
103
- };
104
- return breakPoint ? /* @__PURE__ */ jsx(TableRow, { style: { maxWidth: "100vw" }, ...props, children: (_a = columns[breakPoint]) == null ? void 0 : _a.map((column) => {
105
- return column.slug ? tableCells[column.slug]({}) : null;
106
- }) }) : null;
107
- };
108
-
109
- // src/components/DynamicTable/Table.tsx
110
- import { FirstPage as FirstPageIcon, KeyboardArrowLeft, KeyboardArrowRight, LastPage as LastPageIcon } from "@mui/icons-material";
111
- import {
112
- Alert,
113
- Box,
114
- IconButton,
115
- Table,
116
- TableBody,
117
- TableCell as TableCell2,
118
- TableFooter,
119
- TableHead,
120
- TablePagination,
121
- TableRow as TableRow2,
122
- Typography as Typography2,
123
- useTheme
124
- } from "@mui/material";
125
- import { useBreakpoint as useBreakpoint2 } from "@xylabs/react-shared";
126
- import { ThrownErrorBoundary } from "@xyo-network/react-error";
127
- import { usePayloadHashes } from "@xyo-network/react-shared";
128
- import { useEffect, useMemo, useState } from "react";
129
- import { jsx as jsx2, jsxs } from "react/jsx-runtime";
130
- function TablePaginationActions(props) {
131
- const theme = useTheme();
132
- const { count, page, rowsPerPage, onPageChange } = props;
133
- const handleFirstPageButtonClick = (event) => {
134
- onPageChange(event, 0);
135
- };
136
- const handleBackButtonClick = (event) => {
137
- onPageChange(event, page - 1);
138
- };
139
- const handleNextButtonClick = (event) => {
140
- onPageChange(event, page + 1);
141
- };
142
- const handleLastPageButtonClick = (event) => {
143
- onPageChange(event, Math.max(0, Math.ceil(count / rowsPerPage) - 1));
144
- };
145
- return /* @__PURE__ */ jsxs(Box, { sx: { flexShrink: 0, ml: 2.5 }, children: [
146
- /* @__PURE__ */ jsx2(IconButton, { onClick: handleFirstPageButtonClick, disabled: page === 0, "aria-label": "first page", children: theme.direction === "rtl" ? /* @__PURE__ */ jsx2(LastPageIcon, {}) : /* @__PURE__ */ jsx2(FirstPageIcon, {}) }),
147
- /* @__PURE__ */ jsx2(IconButton, { onClick: handleBackButtonClick, disabled: page === 0, "aria-label": "previous page", children: theme.direction === "rtl" ? /* @__PURE__ */ jsx2(KeyboardArrowRight, {}) : /* @__PURE__ */ jsx2(KeyboardArrowLeft, {}) }),
148
- /* @__PURE__ */ jsx2(IconButton, { onClick: handleNextButtonClick, disabled: page >= Math.ceil(count / rowsPerPage) - 1, "aria-label": "next page", children: theme.direction === "rtl" ? /* @__PURE__ */ jsx2(KeyboardArrowLeft, {}) : /* @__PURE__ */ jsx2(KeyboardArrowRight, {}) }),
149
- /* @__PURE__ */ jsx2(IconButton, { onClick: handleLastPageButtonClick, disabled: page >= Math.ceil(count / rowsPerPage) - 1, "aria-label": "last page", children: theme.direction === "rtl" ? /* @__PURE__ */ jsx2(FirstPageIcon, {}) : /* @__PURE__ */ jsx2(LastPageIcon, {}) })
150
- ] });
151
- }
152
- var PayloadDynamicTable = ({
153
- archive,
154
- children,
155
- columns = payloadDynamicTableColumnConfigDefaults(),
156
- exploreDomain,
157
- onRowClick,
158
- rowsPerPage: rowsPerPageProp = 10,
159
- payloads,
160
- ...props
161
- }) => {
162
- var _a;
163
- const breakPoint = useBreakpoint2();
164
- const [page, setPage] = useState(0);
165
- const [rowsPerPage, setRowsPerPage] = useState(rowsPerPageProp);
166
- const payloadCount = payloads ? payloads.length : 0;
167
- const emptyRows = page > 0 ? Math.max(0, (1 + page) * rowsPerPage - payloadCount) : 0;
168
- const pagedPayloads = useMemo(() => payloads == null ? void 0 : payloads.slice(page * rowsPerPage, page * rowsPerPage + rowsPerPage), [payloads, page, rowsPerPage]);
169
- const payloadPairs = usePayloadHashes(pagedPayloads);
170
- useEffect(() => {
171
- setRowsPerPage(rowsPerPageProp);
172
- }, [rowsPerPageProp]);
173
- const handleChangePage = (event, newPage) => {
174
- setPage(newPage);
175
- };
176
- const handleChangeRowsPerPage = (event) => {
177
- setRowsPerPage(Number.parseInt(event.target.value, 10));
178
- setPage(0);
179
- };
180
- return breakPoint ? /* @__PURE__ */ jsxs(Table, { stickyHeader: true, ...props, children: [
181
- /* @__PURE__ */ jsx2(TableHead, { children: /* @__PURE__ */ jsx2(TableRow2, { children: (_a = columns[breakPoint]) == null ? void 0 : _a.map((column, index) => {
182
- return /* @__PURE__ */ jsx2(TableCell2, { align: column.alignment ?? "left", width: column.width, children: /* @__PURE__ */ jsx2(Typography2, { variant: "body2", noWrap: true, children: column.name }) }, index);
183
- }) }) }),
184
- /* @__PURE__ */ jsxs(TableBody, { sx: { overflowY: "scroll " }, children: [
185
- payloadPairs == null ? void 0 : payloadPairs.map(([payload, hash], index) => {
186
- return /* @__PURE__ */ jsx2(
187
- ThrownErrorBoundary,
188
- {
189
- boundaryName: "PayloadTableBody",
190
- errorComponent: (e) => /* @__PURE__ */ jsxs(Alert, { severity: "error", children: [
191
- "Error Loading Payload: ",
192
- /* @__PURE__ */ jsx2(Typography2, { fontWeight: "bold", children: e.message })
193
- ] }),
194
- children: /* @__PURE__ */ jsx2(
195
- PayloadDynamicTableRow,
196
- {
197
- archive,
198
- onClick: onRowClick ? () => {
199
- onRowClick(payload);
200
- } : void 0,
201
- exploreDomain,
202
- payload
203
- }
204
- )
205
- },
206
- `${hash}-${index}`
207
- );
208
- }),
209
- children,
210
- emptyRows ? Array.from({ length: emptyRows }).fill(/* @__PURE__ */ jsx2(PayloadDynamicTableRow, {})) : null
211
- ] }),
212
- /* @__PURE__ */ jsx2(TableFooter, { children: /* @__PURE__ */ jsx2(TableRow2, { children: /* @__PURE__ */ jsx2(
213
- TablePagination,
214
- {
215
- rowsPerPageOptions: [5, 10, 25, { label: "All", value: -1 }],
216
- colSpan: 5,
217
- count: payloadCount,
218
- rowsPerPage,
219
- page,
220
- SelectProps: {
221
- inputProps: {
222
- "aria-label": "rows per page"
223
- },
224
- native: true
225
- },
226
- onPageChange: handleChangePage,
227
- onRowsPerPageChange: handleChangeRowsPerPage,
228
- ActionsComponent: TablePaginationActions
229
- }
230
- ) }) })
231
- ] }) : null;
232
- };
233
-
234
- // src/components/Table/PayloadTableColumnConfig.ts
235
- var payloadColumnNames = {
236
- hash: "Hash",
237
- schema: "Schema",
238
- valid: "Valid"
239
- };
240
- var payloadTableColumnConfigDefaults = () => {
241
- const xs = ["hash", "schema", "valid"];
242
- const sm = ["hash", "schema", "valid"];
243
- const md = ["hash", "schema", "valid"];
244
- const lg = ["hash", "schema", "valid"];
245
- const xl = ["hash", "schema", "valid"];
246
- return { lg, md, sm, xl, xs };
247
- };
248
-
249
- // src/components/Table/Table.tsx
250
- import { TableEx } from "@xyo-network/react-table";
251
- import { forwardRef, useEffect as useEffect2, useMemo as useMemo2, useState as useState2 } from "react";
252
-
253
- // src/components/Table/TableBody.tsx
254
- import { Alert as Alert2, TableBody as TableBody2, Typography as Typography4 } from "@mui/material";
255
- import { ThrownErrorBoundary as ThrownErrorBoundary2 } from "@xyo-network/react-error";
256
- import { usePayloadHashes as usePayloadHashes2 } from "@xyo-network/react-shared";
257
-
258
- // src/components/Table/TableRow.tsx
259
- import {
260
- CheckCircleOutlineRounded as CheckCircleOutlineRoundedIcon2,
261
- ErrorOutlineRounded as ErrorOutlineRoundedIcon2,
262
- WarningAmberRounded as WarningAmberRoundedIcon2
263
- } from "@mui/icons-material";
264
- import { alpha, TableCell as TableCell3, TableRow as TableRow3, Typography as Typography3 } from "@mui/material";
265
- import { usePromise as usePromise2 } from "@xylabs/react-promise";
266
- import { useBreakpoint as useBreakpoint3 } from "@xylabs/react-shared";
267
- import { PayloadValidator as PayloadValidator2 } from "@xyo-network/payload-validator";
268
- import { useNetwork as useNetwork2 } from "@xyo-network/react-network";
269
- import { HashTableCell as HashTableCell2, usePayloadHash as usePayloadHash2 } from "@xyo-network/react-shared";
270
- import { Fragment, jsx as jsx3, jsxs as jsxs2 } from "react/jsx-runtime";
271
- var PayloadTableRow = ({
272
- archive,
273
- columns = payloadTableColumnConfigDefaults(),
274
- exploreDomain,
275
- maxSchemaDepth,
276
- network: networkProp,
277
- onHashClick,
278
- payload,
279
- ...props
280
- }) => {
281
- var _a;
282
- const breakPoint = useBreakpoint3();
283
- const payloadHash = usePayloadHash2(payload);
284
- const { network } = useNetwork2();
285
- const [errors = []] = usePromise2(async () => payload ? await new PayloadValidator2(payload).validate() : void 0, [payload]);
286
- const isValid = errors.length === 0;
287
- const hash = (props2) => /* @__PURE__ */ jsx3(
288
- HashTableCell2,
289
- {
290
- archive,
291
- width: "100%",
292
- value: payloadHash,
293
- onHashClick,
294
- dataType: "payload",
295
- exploreDomain,
296
- network: networkProp ?? (network == null ? void 0 : network.slug),
297
- ...props2
298
- },
299
- "hash"
300
- );
301
- const reduceSchemaDepth = (schema2, maxSchemaDepth2) => {
302
- if (maxSchemaDepth2) {
303
- const parts = (schema2 == null ? void 0 : schema2.split(".")) ?? [];
304
- const partsToRemove = parts.length - maxSchemaDepth2 > 0 ? parts.length - maxSchemaDepth2 : 0;
305
- if (partsToRemove > 0) {
306
- return /* @__PURE__ */ jsxs2(Fragment, { children: [
307
- /* @__PURE__ */ jsx3(Fragment, { children: "\u2026" }),
308
- // eslint-disable-next-line unicorn/no-array-reduce
309
- `${parts.slice(partsToRemove).reduce((previousValue, part) => `${previousValue}.${part}`)}`
310
- ] });
311
- }
312
- }
313
- return schema2;
314
- };
315
- const schema = (props2) => /* @__PURE__ */ jsx3(TableCell3, { title: payload == null ? void 0 : payload.schema, align: "center", ...props2, children: /* @__PURE__ */ jsx3(Typography3, { fontFamily: "monospace", variant: "body2", noWrap: true, children: reduceSchemaDepth(payload == null ? void 0 : payload.schema, maxSchemaDepth) }) }, "payloads");
316
- const valid = (props2) => /* @__PURE__ */ jsx3(TableCell3, { align: "center", ...props2, children: isValid === void 0 && payload != void 0 ? /* @__PURE__ */ jsx3(WarningAmberRoundedIcon2, { fontSize: "small", color: "warning" }) : isValid === true ? /* @__PURE__ */ jsx3(CheckCircleOutlineRoundedIcon2, { fontSize: "small", color: "success" }) : isValid === false ? /* @__PURE__ */ jsx3(ErrorOutlineRoundedIcon2, { color: "error", fontSize: "small" }) : /* @__PURE__ */ jsx3(ErrorOutlineRoundedIcon2, { sx: { color: alpha("#fff", 0) }, fontSize: "small" }) }, "valid");
317
- const tableCells = {
318
- hash,
319
- schema,
320
- valid
321
- };
322
- return breakPoint ? /* @__PURE__ */ jsx3(TableRow3, { style: { maxWidth: "100vw" }, ...props, children: (_a = columns[breakPoint]) == null ? void 0 : _a.map((column) => {
323
- return tableCells[column]({});
324
- }) }) : null;
325
- };
326
-
327
- // src/components/Table/TableBody.tsx
328
- import { jsx as jsx4, jsxs as jsxs3 } from "react/jsx-runtime";
329
- var PayloadTableBody = ({
330
- children,
331
- exploreDomain,
332
- payloads,
333
- archive,
334
- maxSchemaDepth,
335
- onHashClick,
336
- onRowClick,
337
- emptyRows,
338
- noResults,
339
- NoResultRowComponent,
340
- ...props
341
- }) => {
342
- const payloadPairs = usePayloadHashes2(payloads);
343
- return /* @__PURE__ */ jsxs3(TableBody2, { ...props, children: [
344
- noResults && NoResultRowComponent ? /* @__PURE__ */ jsx4(NoResultRowComponent, {}) : null,
345
- payloadPairs == null ? void 0 : payloadPairs.map(([payload, hash], index) => {
346
- return /* @__PURE__ */ jsx4(
347
- ThrownErrorBoundary2,
348
- {
349
- boundaryName: "PayloadTableBody",
350
- errorComponent: (e) => /* @__PURE__ */ jsxs3(Alert2, { severity: "error", children: [
351
- "Error Loading Payload: ",
352
- /* @__PURE__ */ jsx4(Typography4, { fontWeight: "bold", children: e.message })
353
- ] }),
354
- children: /* @__PURE__ */ jsx4(
355
- PayloadTableRow,
356
- {
357
- maxSchemaDepth,
358
- archive,
359
- onClick: onRowClick ? () => {
360
- onRowClick(payload);
361
- } : void 0,
362
- onHashClick,
363
- exploreDomain,
364
- payload
365
- }
366
- )
367
- },
368
- `${hash}-${index}`
369
- );
370
- }),
371
- children,
372
- emptyRows ? Array.from({ length: emptyRows }).fill(/* @__PURE__ */ jsx4(PayloadTableRow, {})) : null
373
- ] });
374
- };
375
-
376
- // src/components/Table/TableFooter.tsx
377
- import { styled, TablePagination as TablePagination2, TableRow as TableRow4 } from "@mui/material";
378
- import { TableFooterEx } from "@xyo-network/react-table";
379
-
380
- // src/components/Table/TablePagination.tsx
381
- import { FirstPage as FirstPageIcon2, KeyboardArrowLeft as KeyboardArrowLeft2, KeyboardArrowRight as KeyboardArrowRight2, LastPage as LastPageIcon2 } from "@mui/icons-material";
382
- import { Box as Box2, CircularProgress, IconButton as IconButton2, useTheme as useTheme2 } from "@mui/material";
383
- import { useEvent } from "@xyo-network/react-event";
384
- import { Fragment as Fragment2, jsx as jsx5, jsxs as jsxs4 } from "react/jsx-runtime";
385
- function TablePaginationActions2({ count, enableNextPage, loading, onPageChange, page, rowsPerPage }) {
386
- const theme = useTheme2();
387
- const [paginationRef, paginationDispatch] = useEvent();
388
- const handleFirstPageButtonClick = (event) => {
389
- paginationDispatch("firstPage", "click", "true");
390
- onPageChange(event, 0);
391
- };
392
- const handleBackButtonClick = (event) => {
393
- var _a;
394
- paginationDispatch("previousPage", "click", (_a = page - 1) == null ? void 0 : _a.toString());
395
- onPageChange(event, page - 1);
396
- };
397
- const handleNextButtonClick = (event) => {
398
- var _a;
399
- paginationDispatch("nextPage", "click", (_a = page + 1) == null ? void 0 : _a.toString());
400
- onPageChange(event, page + 1);
401
- };
402
- const handleLastPageButtonClick = (event) => {
403
- paginationDispatch("lastPage", "click", "true");
404
- onPageChange(event, Math.max(0, Math.ceil(count / rowsPerPage) - 1));
405
- };
406
- return /* @__PURE__ */ jsxs4(Fragment2, { children: [
407
- loading ? /* @__PURE__ */ jsx5(CircularProgress, { size: "small", sx: { height: theme.spacing(2), position: "absolute", width: theme.spacing(2) } }) : null,
408
- /* @__PURE__ */ jsxs4(Box2, { sx: { flexShrink: 0, ml: 2.5 }, children: [
409
- /* @__PURE__ */ jsx5(IconButton2, { onClick: handleFirstPageButtonClick, disabled: page === 0, "aria-label": "first page", children: theme.direction === "rtl" ? /* @__PURE__ */ jsx5(LastPageIcon2, {}) : /* @__PURE__ */ jsx5(FirstPageIcon2, {}) }),
410
- /* @__PURE__ */ jsx5(IconButton2, { ref: paginationRef, onClick: handleBackButtonClick, disabled: page === 0, "aria-label": "previous page", children: theme.direction === "rtl" ? /* @__PURE__ */ jsx5(KeyboardArrowRight2, {}) : /* @__PURE__ */ jsx5(KeyboardArrowLeft2, {}) }),
411
- /* @__PURE__ */ jsx5(
412
- IconButton2,
413
- {
414
- ref: paginationRef,
415
- onClick: handleNextButtonClick,
416
- disabled: !enableNextPage && page >= Math.ceil(count / rowsPerPage) - 1,
417
- "aria-label": "next page",
418
- children: theme.direction === "rtl" ? /* @__PURE__ */ jsx5(KeyboardArrowLeft2, {}) : /* @__PURE__ */ jsx5(KeyboardArrowRight2, {})
419
- }
420
- ),
421
- /* @__PURE__ */ jsx5(IconButton2, { onClick: handleLastPageButtonClick, disabled: page >= Math.ceil(count / rowsPerPage) - 1, "aria-label": "last page", children: theme.direction === "rtl" ? /* @__PURE__ */ jsx5(FirstPageIcon2, {}) : /* @__PURE__ */ jsx5(LastPageIcon2, {}) })
422
- ] })
423
- ] });
424
- }
425
-
426
- // src/components/Table/TableFooter.tsx
427
- import { jsx as jsx6 } from "react/jsx-runtime";
428
- var PayloadTableFooter = ({
429
- count,
430
- variant,
431
- page,
432
- rowsPerPage,
433
- handleChangePage = () => {
434
- },
435
- handleChangeRowsPerPage = () => {
436
- },
437
- fetchMorePayloads,
438
- loading
439
- }) => /* @__PURE__ */ jsx6(TableFooterEx, { variant, children: /* @__PURE__ */ jsx6(TableRow4, { children: /* @__PURE__ */ jsx6(
440
- StyledTablePagination,
441
- {
442
- rowsPerPageOptions: [5, 10, 25, { label: "All", value: -1 }],
443
- count: count ?? 0,
444
- rowsPerPage: rowsPerPage ?? 10,
445
- page: page ?? 0,
446
- SelectProps: {
447
- inputProps: {
448
- "aria-label": "rows per page"
449
- },
450
- native: true
451
- },
452
- onPageChange: handleChangePage,
453
- onRowsPerPageChange: handleChangeRowsPerPage,
454
- ActionsComponent: (props) => /* @__PURE__ */ jsx6(TablePaginationActions2, { enableNextPage: !!fetchMorePayloads, loading, ...props })
455
- }
456
- ) }) });
457
- var StyledTablePagination = styled(TablePagination2)(({ theme }) => ({
458
- "& > .MuiToolbar-root": {
459
- paddingLeft: theme.spacing(1)
460
- },
461
- borderTop: "1px solid",
462
- borderTopColor: theme.palette.divider
463
- }));
464
-
465
- // src/components/Table/TableHead.tsx
466
- import { TableCell as TableCell4, TableHead as TableHead2, TableRow as TableRow5, Typography as Typography5 } from "@mui/material";
467
- import { useBreakpoint as useBreakpoint4 } from "@xylabs/react-shared";
468
- import { jsx as jsx7 } from "react/jsx-runtime";
469
- var PayloadTableHead = ({ columns = payloadTableColumnConfigDefaults(), ...props }) => {
470
- var _a;
471
- const breakPoint = useBreakpoint4();
472
- return /* @__PURE__ */ jsx7(TableHead2, { ...props, children: /* @__PURE__ */ jsx7(TableRow5, { children: breakPoint && columns ? (_a = columns[breakPoint]) == null ? void 0 : _a.map((column, index) => {
473
- return /* @__PURE__ */ jsx7(TableCell4, { width: index === 0 ? "100%" : void 0, align: index === 0 ? "left" : "center", children: /* @__PURE__ */ jsx7(Typography5, { variant: "body2", noWrap: true, children: payloadColumnNames[column] }) }, index);
474
- }) : null }) });
475
- };
476
-
477
- // src/components/Table/TableRowNoData.tsx
478
- import { styled as styled2, TableCell as TableCell5, TableRow as TableRow6, Typography as Typography6 } from "@mui/material";
479
- import { jsx as jsx8, jsxs as jsxs5 } from "react/jsx-runtime";
480
- var TableRowNoData = ({ additionalCells, hideBorder = false, typographyProps, ...props }) => {
481
- return /* @__PURE__ */ jsxs5(TableRow6, { ...props, children: [
482
- /* @__PURE__ */ jsx8(StyledTableCell, { hideBorder, children: /* @__PURE__ */ jsx8(Typography6, { variant: "body2", ...typographyProps, children: "No Data To Display..." }) }),
483
- additionalCells ? Array.from({ length: additionalCells }).fill(null).map((_fill, index) => /* @__PURE__ */ jsx8(StyledTableCell, { hideBorder }, index)) : null
484
- ] });
485
- };
486
- var StyledTableCell = styled2(TableCell5, {
487
- name: "StyledTableCell",
488
- shouldForwardProp: (prop) => prop !== "hideBorder"
489
- })(({ hideBorder }) => ({
490
- ...hideBorder && { border: "none" }
491
- }));
492
-
493
- // src/components/Table/Table.tsx
494
- import { jsx as jsx9, jsxs as jsxs6 } from "react/jsx-runtime";
495
- var PayloadTableWithRef = forwardRef(
496
- ({
497
- exploreDomain,
498
- archive,
499
- onHashClick,
500
- onRowClick,
501
- fetchMorePayloads,
502
- rowsPerPage: rowsPerPageProp = 25,
503
- payloads,
504
- columns,
505
- PayloadTableHeadComponent = PayloadTableHead,
506
- PayloadTableBodyComponent = PayloadTableBody,
507
- PayloadTableFooterComponent = PayloadTableFooter,
508
- maxSchemaDepth,
509
- count = 0,
510
- loading = false,
511
- variant = "scrollable",
512
- ...props
513
- }, ref) => {
514
- const [page, setPage] = useState2(0);
515
- const [rowsPerPage, setRowsPerPage] = useState2(rowsPerPageProp);
516
- const [visiblePayloads, setVisiblePayloads] = useState2([]);
517
- const emptyRows = page > 0 ? Math.max(0, (1 + page) * rowsPerPage - count || 0) : 0;
518
- useEffect2(() => {
519
- setRowsPerPage(rowsPerPageProp);
520
- }, [rowsPerPageProp]);
521
- useEffect2(() => {
522
- if (payloads) {
523
- setVisiblePayloads(payloads.slice(page * rowsPerPage, page * rowsPerPage + rowsPerPage));
524
- }
525
- }, [count, page, payloads, rowsPerPage]);
526
- useEffect2(() => {
527
- setPage(0);
528
- }, [payloads]);
529
- const handleAdditionalPayloads = () => {
530
- if (fetchMorePayloads && payloads) {
531
- const buffer = rowsPerPage * 2;
532
- const lastVisiblePayload = visiblePayloads == null ? void 0 : visiblePayloads.at(-1);
533
- if (lastVisiblePayload) {
534
- const lastVisibleIndex = payloads == null ? void 0 : payloads.indexOf(lastVisiblePayload);
535
- if (lastVisibleIndex !== void 0 && payloads.length - (lastVisibleIndex + 1) <= buffer) {
536
- fetchMorePayloads();
537
- }
538
- }
539
- }
540
- };
541
- const handleChangePage = (_event, newPage) => {
542
- handleAdditionalPayloads();
543
- setPage(newPage);
544
- };
545
- const handleChangeRowsPerPage = (event) => {
546
- setRowsPerPage(Number.parseInt(event.target.value, 10));
547
- setPage(0);
548
- };
549
- const noResults = useMemo2(() => {
550
- return !loading && (!visiblePayloads || visiblePayloads.length === 0);
551
- }, [loading, visiblePayloads]);
552
- return /* @__PURE__ */ jsxs6(TableEx, { variant, ref, ...props, children: [
553
- /* @__PURE__ */ jsx9(PayloadTableHeadComponent, { columns }),
554
- /* @__PURE__ */ jsx9(
555
- PayloadTableBodyComponent,
556
- {
557
- payloads: visiblePayloads,
558
- exploreDomain,
559
- archive,
560
- maxSchemaDepth,
561
- onRowClick,
562
- onHashClick,
563
- emptyRows,
564
- noResults,
565
- NoResultRowComponent: TableRowNoData
566
- }
567
- ),
568
- /* @__PURE__ */ jsx9(
569
- PayloadTableFooterComponent,
570
- {
571
- count,
572
- variant,
573
- rowsPerPage,
574
- handleChangePage,
575
- handleChangeRowsPerPage,
576
- fetchMorePayloads,
577
- loading,
578
- page
579
- }
580
- )
581
- ] });
582
- }
583
- );
584
- PayloadTableWithRef.displayName = "PayloadTable";
585
- var PayloadTable = PayloadTableWithRef;
586
- export {
587
- PayloadDynamicTable,
588
- PayloadDynamicTableRow,
589
- PayloadTable,
590
- PayloadTableRow,
591
- PayloadTableWithRef,
592
- TablePaginationActions2 as TablePaginationActions,
593
- TableRowNoData,
594
- payloadColumnNames,
595
- payloadDynamicTableColumnConfigDefaults,
596
- payloadTableColumnConfigDefaults
597
- };
598
- //# sourceMappingURL=index.js.map