@xyo-network/react-payload-table 2.64.9 → 2.64.10

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 (154) hide show
  1. package/dist/docs.json +116 -116
  2. package/package.json +18 -18
  3. package/dist/browser/components/DynamicTable/DynamicTableRow.cjs +0 -128
  4. package/dist/browser/components/DynamicTable/DynamicTableRow.cjs.map +0 -1
  5. package/dist/browser/components/DynamicTable/DynamicTableRow.js +0 -111
  6. package/dist/browser/components/DynamicTable/DynamicTableRow.js.map +0 -1
  7. package/dist/browser/components/DynamicTable/PayloadDynamicTableColumnConfig.cjs +0 -60
  8. package/dist/browser/components/DynamicTable/PayloadDynamicTableColumnConfig.cjs.map +0 -1
  9. package/dist/browser/components/DynamicTable/PayloadDynamicTableColumnConfig.js +0 -39
  10. package/dist/browser/components/DynamicTable/PayloadDynamicTableColumnConfig.js.map +0 -1
  11. package/dist/browser/components/DynamicTable/Table.cjs +0 -241
  12. package/dist/browser/components/DynamicTable/Table.cjs.map +0 -1
  13. package/dist/browser/components/DynamicTable/Table.js +0 -237
  14. package/dist/browser/components/DynamicTable/Table.js.map +0 -1
  15. package/dist/browser/components/DynamicTable/index.cjs +0 -243
  16. package/dist/browser/components/DynamicTable/index.cjs.map +0 -1
  17. package/dist/browser/components/DynamicTable/index.js +0 -237
  18. package/dist/browser/components/DynamicTable/index.js.map +0 -1
  19. package/dist/browser/components/Table/PayloadTableColumnConfig.cjs +0 -40
  20. package/dist/browser/components/Table/PayloadTableColumnConfig.cjs.map +0 -1
  21. package/dist/browser/components/Table/PayloadTableColumnConfig.js +0 -19
  22. package/dist/browser/components/Table/PayloadTableColumnConfig.js.map +0 -1
  23. package/dist/browser/components/Table/Table.cjs +0 -366
  24. package/dist/browser/components/Table/Table.cjs.map +0 -1
  25. package/dist/browser/components/Table/Table.js +0 -349
  26. package/dist/browser/components/Table/Table.js.map +0 -1
  27. package/dist/browser/components/Table/TableBody.cjs +0 -152
  28. package/dist/browser/components/Table/TableBody.cjs.map +0 -1
  29. package/dist/browser/components/Table/TableBody.js +0 -135
  30. package/dist/browser/components/Table/TableBody.js.map +0 -1
  31. package/dist/browser/components/Table/TableFooter.cjs +0 -109
  32. package/dist/browser/components/Table/TableFooter.cjs.map +0 -1
  33. package/dist/browser/components/Table/TableFooter.js +0 -88
  34. package/dist/browser/components/Table/TableFooter.js.map +0 -1
  35. package/dist/browser/components/Table/TableHead.cjs +0 -52
  36. package/dist/browser/components/Table/TableHead.cjs.map +0 -1
  37. package/dist/browser/components/Table/TableHead.js +0 -31
  38. package/dist/browser/components/Table/TableHead.js.map +0 -1
  39. package/dist/browser/components/Table/TablePagination.cjs +0 -68
  40. package/dist/browser/components/Table/TablePagination.cjs.map +0 -1
  41. package/dist/browser/components/Table/TablePagination.js +0 -47
  42. package/dist/browser/components/Table/TablePagination.js.map +0 -1
  43. package/dist/browser/components/Table/TableRow.cjs +0 -100
  44. package/dist/browser/components/Table/TableRow.cjs.map +0 -1
  45. package/dist/browser/components/Table/TableRow.js +0 -83
  46. package/dist/browser/components/Table/TableRow.js.map +0 -1
  47. package/dist/browser/components/Table/TableRowNoData.cjs +0 -40
  48. package/dist/browser/components/Table/TableRowNoData.cjs.map +0 -1
  49. package/dist/browser/components/Table/TableRowNoData.js +0 -19
  50. package/dist/browser/components/Table/TableRowNoData.js.map +0 -1
  51. package/dist/browser/components/Table/index.cjs +0 -371
  52. package/dist/browser/components/Table/index.cjs.map +0 -1
  53. package/dist/browser/components/Table/index.js +0 -352
  54. package/dist/browser/components/Table/index.js.map +0 -1
  55. package/dist/browser/components/Table/types/PaginationEventNouns.cjs +0 -19
  56. package/dist/browser/components/Table/types/PaginationEventNouns.cjs.map +0 -1
  57. package/dist/browser/components/Table/types/PaginationEventNouns.js +0 -1
  58. package/dist/browser/components/Table/types/PaginationEventNouns.js.map +0 -1
  59. package/dist/browser/components/Table/types/PayloadTableBodyProps.cjs +0 -19
  60. package/dist/browser/components/Table/types/PayloadTableBodyProps.cjs.map +0 -1
  61. package/dist/browser/components/Table/types/PayloadTableBodyProps.js +0 -1
  62. package/dist/browser/components/Table/types/PayloadTableBodyProps.js.map +0 -1
  63. package/dist/browser/components/Table/types/PayloadTableFooterProps.cjs +0 -19
  64. package/dist/browser/components/Table/types/PayloadTableFooterProps.cjs.map +0 -1
  65. package/dist/browser/components/Table/types/PayloadTableFooterProps.js +0 -1
  66. package/dist/browser/components/Table/types/PayloadTableFooterProps.js.map +0 -1
  67. package/dist/browser/components/Table/types/PayloadTableHeadProps.cjs +0 -19
  68. package/dist/browser/components/Table/types/PayloadTableHeadProps.cjs.map +0 -1
  69. package/dist/browser/components/Table/types/PayloadTableHeadProps.js +0 -1
  70. package/dist/browser/components/Table/types/PayloadTableHeadProps.js.map +0 -1
  71. package/dist/browser/components/Table/types/index.cjs +0 -19
  72. package/dist/browser/components/Table/types/index.cjs.map +0 -1
  73. package/dist/browser/components/Table/types/index.js +0 -1
  74. package/dist/browser/components/Table/types/index.js.map +0 -1
  75. package/dist/browser/components/index.cjs +0 -589
  76. package/dist/browser/components/index.cjs.map +0 -1
  77. package/dist/browser/components/index.js +0 -587
  78. package/dist/browser/components/index.js.map +0 -1
  79. package/dist/node/components/DynamicTable/DynamicTableRow.cjs +0 -135
  80. package/dist/node/components/DynamicTable/DynamicTableRow.cjs.map +0 -1
  81. package/dist/node/components/DynamicTable/DynamicTableRow.js +0 -114
  82. package/dist/node/components/DynamicTable/DynamicTableRow.js.map +0 -1
  83. package/dist/node/components/DynamicTable/PayloadDynamicTableColumnConfig.cjs +0 -64
  84. package/dist/node/components/DynamicTable/PayloadDynamicTableColumnConfig.cjs.map +0 -1
  85. package/dist/node/components/DynamicTable/PayloadDynamicTableColumnConfig.js +0 -39
  86. package/dist/node/components/DynamicTable/PayloadDynamicTableColumnConfig.js.map +0 -1
  87. package/dist/node/components/DynamicTable/Table.cjs +0 -249
  88. package/dist/node/components/DynamicTable/Table.cjs.map +0 -1
  89. package/dist/node/components/DynamicTable/Table.js +0 -241
  90. package/dist/node/components/DynamicTable/Table.js.map +0 -1
  91. package/dist/node/components/DynamicTable/index.cjs +0 -253
  92. package/dist/node/components/DynamicTable/index.cjs.map +0 -1
  93. package/dist/node/components/DynamicTable/index.js +0 -241
  94. package/dist/node/components/DynamicTable/index.js.map +0 -1
  95. package/dist/node/components/Table/PayloadTableColumnConfig.cjs +0 -45
  96. package/dist/node/components/Table/PayloadTableColumnConfig.cjs.map +0 -1
  97. package/dist/node/components/Table/PayloadTableColumnConfig.js +0 -19
  98. package/dist/node/components/Table/PayloadTableColumnConfig.js.map +0 -1
  99. package/dist/node/components/Table/Table.cjs +0 -375
  100. package/dist/node/components/Table/Table.cjs.map +0 -1
  101. package/dist/node/components/Table/Table.js +0 -353
  102. package/dist/node/components/Table/Table.js.map +0 -1
  103. package/dist/node/components/Table/TableBody.cjs +0 -157
  104. package/dist/node/components/Table/TableBody.cjs.map +0 -1
  105. package/dist/node/components/Table/TableBody.js +0 -136
  106. package/dist/node/components/Table/TableBody.js.map +0 -1
  107. package/dist/node/components/Table/TableFooter.cjs +0 -115
  108. package/dist/node/components/Table/TableFooter.cjs.map +0 -1
  109. package/dist/node/components/Table/TableFooter.js +0 -90
  110. package/dist/node/components/Table/TableFooter.js.map +0 -1
  111. package/dist/node/components/Table/TableHead.cjs +0 -57
  112. package/dist/node/components/Table/TableHead.cjs.map +0 -1
  113. package/dist/node/components/Table/TableHead.js +0 -32
  114. package/dist/node/components/Table/TableHead.js.map +0 -1
  115. package/dist/node/components/Table/TablePagination.cjs +0 -74
  116. package/dist/node/components/Table/TablePagination.cjs.map +0 -1
  117. package/dist/node/components/Table/TablePagination.js +0 -49
  118. package/dist/node/components/Table/TablePagination.js.map +0 -1
  119. package/dist/node/components/Table/TableRow.cjs +0 -105
  120. package/dist/node/components/Table/TableRow.cjs.map +0 -1
  121. package/dist/node/components/Table/TableRow.js +0 -84
  122. package/dist/node/components/Table/TableRow.js.map +0 -1
  123. package/dist/node/components/Table/TableRowNoData.cjs +0 -44
  124. package/dist/node/components/Table/TableRowNoData.cjs.map +0 -1
  125. package/dist/node/components/Table/TableRowNoData.js +0 -19
  126. package/dist/node/components/Table/TableRowNoData.js.map +0 -1
  127. package/dist/node/components/Table/index.cjs +0 -385
  128. package/dist/node/components/Table/index.cjs.map +0 -1
  129. package/dist/node/components/Table/index.js +0 -356
  130. package/dist/node/components/Table/index.js.map +0 -1
  131. package/dist/node/components/Table/types/PaginationEventNouns.cjs +0 -19
  132. package/dist/node/components/Table/types/PaginationEventNouns.cjs.map +0 -1
  133. package/dist/node/components/Table/types/PaginationEventNouns.js +0 -1
  134. package/dist/node/components/Table/types/PaginationEventNouns.js.map +0 -1
  135. package/dist/node/components/Table/types/PayloadTableBodyProps.cjs +0 -19
  136. package/dist/node/components/Table/types/PayloadTableBodyProps.cjs.map +0 -1
  137. package/dist/node/components/Table/types/PayloadTableBodyProps.js +0 -1
  138. package/dist/node/components/Table/types/PayloadTableBodyProps.js.map +0 -1
  139. package/dist/node/components/Table/types/PayloadTableFooterProps.cjs +0 -19
  140. package/dist/node/components/Table/types/PayloadTableFooterProps.cjs.map +0 -1
  141. package/dist/node/components/Table/types/PayloadTableFooterProps.js +0 -1
  142. package/dist/node/components/Table/types/PayloadTableFooterProps.js.map +0 -1
  143. package/dist/node/components/Table/types/PayloadTableHeadProps.cjs +0 -19
  144. package/dist/node/components/Table/types/PayloadTableHeadProps.cjs.map +0 -1
  145. package/dist/node/components/Table/types/PayloadTableHeadProps.js +0 -1
  146. package/dist/node/components/Table/types/PayloadTableHeadProps.js.map +0 -1
  147. package/dist/node/components/Table/types/index.cjs +0 -19
  148. package/dist/node/components/Table/types/index.cjs.map +0 -1
  149. package/dist/node/components/Table/types/index.js +0 -1
  150. package/dist/node/components/Table/types/index.js.map +0 -1
  151. package/dist/node/components/index.cjs +0 -610
  152. package/dist/node/components/index.cjs.map +0 -1
  153. package/dist/node/components/index.js +0 -595
  154. package/dist/node/components/index.js.map +0 -1
@@ -1,135 +0,0 @@
1
- // src/components/Table/TableBody.tsx
2
- import { Alert, TableBody, Typography as Typography2 } from "@mui/material";
3
- import { ThrownErrorBoundary } from "@xyo-network/react-error";
4
- import { usePayloadHashes } from "@xyo-network/react-shared";
5
-
6
- // src/components/Table/TableRow.tsx
7
- import {
8
- CheckCircleOutlineRounded as CheckCircleOutlineRoundedIcon,
9
- ErrorOutlineRounded as ErrorOutlineRoundedIcon,
10
- WarningAmberRounded as WarningAmberRoundedIcon
11
- } from "@mui/icons-material";
12
- import { alpha, TableCell, TableRow, Typography } from "@mui/material";
13
- import { usePromise } from "@xylabs/react-promise";
14
- import { useBreakpoint } from "@xylabs/react-shared";
15
- import { PayloadValidator } from "@xyo-network/payload-validator";
16
- import { useNetwork } from "@xyo-network/react-network";
17
- import { HashTableCell, usePayloadHash } from "@xyo-network/react-shared";
18
-
19
- // src/components/Table/PayloadTableColumnConfig.ts
20
- var payloadTableColumnConfigDefaults = () => {
21
- const xs = ["hash", "schema", "valid"];
22
- const sm = ["hash", "schema", "valid"];
23
- const md = ["hash", "schema", "valid"];
24
- const lg = ["hash", "schema", "valid"];
25
- const xl = ["hash", "schema", "valid"];
26
- return { lg, md, sm, xl, xs };
27
- };
28
-
29
- // src/components/Table/TableRow.tsx
30
- import { Fragment, jsx, jsxs } from "react/jsx-runtime";
31
- var PayloadTableRow = ({
32
- archive,
33
- columns = payloadTableColumnConfigDefaults(),
34
- exploreDomain,
35
- maxSchemaDepth,
36
- network: networkProp,
37
- payload,
38
- ...props
39
- }) => {
40
- const breakPoint = useBreakpoint();
41
- const payloadHash = usePayloadHash(payload);
42
- const { network } = useNetwork();
43
- const [errors = []] = usePromise(async () => payload ? await new PayloadValidator(payload).validate() : void 0, [payload]);
44
- const isValid = errors.length === 0;
45
- const hash = (props2) => /* @__PURE__ */ jsx(
46
- HashTableCell,
47
- {
48
- archive,
49
- width: "100%",
50
- value: payloadHash,
51
- dataType: "payload",
52
- exploreDomain,
53
- network: networkProp ?? network?.slug,
54
- ...props2
55
- },
56
- "hash"
57
- );
58
- const reduceSchemaDepth = (schema2, maxSchemaDepth2) => {
59
- if (maxSchemaDepth2) {
60
- const parts = schema2?.split(".") ?? [];
61
- const partsToRemove = parts.length - maxSchemaDepth2 > 0 ? parts.length - maxSchemaDepth2 : 0;
62
- if (partsToRemove > 0) {
63
- return /* @__PURE__ */ jsxs(Fragment, { children: [
64
- /* @__PURE__ */ jsx(Fragment, { children: "\u2026" }),
65
- `${parts.slice(partsToRemove).reduce((previousValue, part) => `${previousValue}.${part}`)}`
66
- ] });
67
- }
68
- }
69
- return schema2;
70
- };
71
- const schema = (props2) => /* @__PURE__ */ jsx(TableCell, { title: payload?.schema, align: "center", ...props2, children: /* @__PURE__ */ jsx(Typography, { fontFamily: "monospace", variant: "body2", noWrap: true, children: reduceSchemaDepth(payload?.schema, maxSchemaDepth) }) }, "payloads");
72
- 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" }) : (
73
- //to keep row height consistent when no data provided, may need fix later
74
- /* @__PURE__ */ jsx(ErrorOutlineRoundedIcon, { sx: { color: alpha("#fff", 0) }, fontSize: "small" })
75
- ) }, "valid");
76
- const tableCells = {
77
- hash,
78
- schema,
79
- valid
80
- };
81
- return breakPoint ? /* @__PURE__ */ jsx(TableRow, { style: { maxWidth: "100vw" }, ...props, children: columns[breakPoint]?.map((column) => {
82
- return tableCells[column]({});
83
- }) }) : null;
84
- };
85
-
86
- // src/components/Table/TableBody.tsx
87
- import { jsx as jsx2, jsxs as jsxs2 } from "react/jsx-runtime";
88
- var PayloadTableBody = ({
89
- children,
90
- exploreDomain,
91
- payloads,
92
- archive,
93
- maxSchemaDepth,
94
- onRowClick,
95
- emptyRows,
96
- noResults,
97
- NoResultRowComponent,
98
- ...props
99
- }) => {
100
- const payloadPairs = usePayloadHashes(payloads);
101
- return /* @__PURE__ */ jsxs2(TableBody, { ...props, children: [
102
- noResults && NoResultRowComponent ? /* @__PURE__ */ jsx2(NoResultRowComponent, {}) : null,
103
- payloadPairs?.map(([payload, hash], index) => {
104
- return /* @__PURE__ */ jsx2(
105
- ThrownErrorBoundary,
106
- {
107
- boundaryName: "PayloadTableBody",
108
- errorComponent: (e) => /* @__PURE__ */ jsxs2(Alert, { severity: "error", children: [
109
- "Error Loading Payload: ",
110
- /* @__PURE__ */ jsx2(Typography2, { fontWeight: "bold", children: e.message })
111
- ] }),
112
- children: /* @__PURE__ */ jsx2(
113
- PayloadTableRow,
114
- {
115
- maxSchemaDepth,
116
- archive,
117
- onClick: onRowClick ? () => {
118
- onRowClick(payload);
119
- } : void 0,
120
- exploreDomain,
121
- payload
122
- }
123
- )
124
- },
125
- `${hash}-${index}`
126
- );
127
- }),
128
- children,
129
- (emptyRows ?? 0) > 0 && Array(emptyRows).fill(/* @__PURE__ */ jsx2(PayloadTableRow, {}))
130
- ] });
131
- };
132
- export {
133
- PayloadTableBody
134
- };
135
- //# sourceMappingURL=TableBody.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/Table/TableBody.tsx","../../../../src/components/Table/TableRow.tsx","../../../../src/components/Table/PayloadTableColumnConfig.ts"],"sourcesContent":["import { Alert, TableBody, Typography } from '@mui/material'\nimport { ThrownErrorBoundary } from '@xyo-network/react-error'\nimport { usePayloadHashes } from '@xyo-network/react-shared'\n\nimport { PayloadTableRow } from './TableRow'\nimport { PayloadTableBodyProps } from './types'\n\nexport const PayloadTableBody: React.FC<PayloadTableBodyProps> = ({\n children,\n exploreDomain,\n payloads,\n archive,\n maxSchemaDepth,\n onRowClick,\n emptyRows,\n noResults,\n NoResultRowComponent,\n ...props\n}) => {\n const payloadPairs = usePayloadHashes(payloads)\n\n return (\n <TableBody {...props}>\n {noResults && NoResultRowComponent ? <NoResultRowComponent /> : null}\n {payloadPairs?.map(([payload, hash], index) => {\n return (\n <ThrownErrorBoundary\n boundaryName=\"PayloadTableBody\"\n key={`${hash}-${index}`}\n errorComponent={(e) => (\n <Alert severity=\"error\">\n Error Loading Payload: <Typography fontWeight=\"bold\">{e.message}</Typography>\n </Alert>\n )}\n >\n <PayloadTableRow\n maxSchemaDepth={maxSchemaDepth}\n archive={archive}\n onClick={\n onRowClick\n ? () => {\n onRowClick(payload)\n }\n : undefined\n }\n exploreDomain={exploreDomain}\n payload={payload}\n />\n </ThrownErrorBoundary>\n )\n })}\n {children}\n {(emptyRows ?? 0) > 0 && Array(emptyRows).fill(<PayloadTableRow />)}\n </TableBody>\n )\n}\n","import {\n CheckCircleOutlineRounded as CheckCircleOutlineRoundedIcon,\n ErrorOutlineRounded as ErrorOutlineRoundedIcon,\n WarningAmberRounded as WarningAmberRoundedIcon,\n} from '@mui/icons-material'\nimport { alpha, TableCell, TableCellProps, TableRow, TableRowProps, Typography } from '@mui/material'\nimport { usePromise } from '@xylabs/react-promise'\nimport { useBreakpoint } from '@xylabs/react-shared'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadValidator } from '@xyo-network/payload-validator'\nimport { useNetwork } from '@xyo-network/react-network'\nimport { HashTableCell, usePayloadHash } from '@xyo-network/react-shared'\n\nimport { PayloadTableColumnConfig, payloadTableColumnConfigDefaults, PayloadTableColumnSlug } from './PayloadTableColumnConfig'\n\nexport interface PayloadTableRowProps extends TableRowProps {\n archive?: string\n columns?: PayloadTableColumnConfig\n exploreDomain?: string\n maxSchemaDepth?: number\n network?: string\n payload?: Payload\n}\n\nexport const PayloadTableRow: React.FC<PayloadTableRowProps> = ({\n archive,\n columns = payloadTableColumnConfigDefaults(),\n exploreDomain,\n maxSchemaDepth,\n network: networkProp,\n payload,\n ...props\n}) => {\n const breakPoint = useBreakpoint()\n const payloadHash = usePayloadHash(payload)\n const { network } = useNetwork()\n const [errors = []] = usePromise(async () => (payload ? await new PayloadValidator(payload).validate() : undefined), [payload])\n const isValid = errors.length === 0\n\n const hash: React.FC<TableCellProps> = (props) => (\n <HashTableCell\n key=\"hash\"\n archive={archive}\n width=\"100%\"\n value={payloadHash}\n dataType=\"payload\"\n exploreDomain={exploreDomain}\n network={networkProp ?? network?.slug}\n {...props}\n />\n )\n\n const reduceSchemaDepth = (schema?: string, maxSchemaDepth?: number) => {\n if (maxSchemaDepth) {\n const parts = schema?.split('.') ?? []\n const partsToRemove = parts.length - maxSchemaDepth > 0 ? parts.length - maxSchemaDepth : 0\n if (partsToRemove > 0) {\n return (\n <>\n <>&#x2026;</>\n {`${parts.slice(partsToRemove).reduce((previousValue, part) => `${previousValue}.${part}`)}`}\n </>\n )\n }\n }\n return schema\n }\n\n const schema: React.FC<TableCellProps> = (props) => (\n <TableCell title={payload?.schema} key=\"payloads\" align=\"center\" {...props}>\n <Typography fontFamily=\"monospace\" variant=\"body2\" noWrap>\n {reduceSchemaDepth(payload?.schema, maxSchemaDepth)}\n </Typography>\n </TableCell>\n )\n\n const valid: React.FC<TableCellProps> = (props) => (\n <TableCell key=\"valid\" align=\"center\" {...props}>\n {isValid === undefined && payload != undefined ? (\n <WarningAmberRoundedIcon fontSize=\"small\" color=\"warning\" />\n ) : isValid === true ? (\n <CheckCircleOutlineRoundedIcon fontSize=\"small\" color=\"success\" />\n ) : isValid === false ? (\n <ErrorOutlineRoundedIcon color=\"error\" fontSize=\"small\" />\n ) : (\n //to keep row height consistent when no data provided, may need fix later\n <ErrorOutlineRoundedIcon sx={{ color: alpha('#fff', 0) }} fontSize=\"small\" />\n )}\n </TableCell>\n )\n\n const tableCells: Record<PayloadTableColumnSlug, React.FC<TableCellProps>> = {\n hash,\n schema,\n valid,\n }\n\n return breakPoint ? (\n <TableRow style={{ maxWidth: '100vw' }} {...props}>\n {columns[breakPoint]?.map((column) => {\n return tableCells[column]({})\n })}\n </TableRow>\n ) : null\n}\n","export type PayloadTableColumnSlug = 'hash' | 'schema' | 'valid'\n\nexport interface PayloadTableColumnConfig<T = PayloadTableColumnSlug> {\n xs?: T[]\n // eslint-disable-next-line @typescript-eslint/member-ordering\n sm?: T[]\n // eslint-disable-next-line @typescript-eslint/member-ordering\n md?: T[]\n // eslint-disable-next-line @typescript-eslint/member-ordering\n lg?: T[]\n xl?: T[]\n}\n\nexport const payloadColumnNames: Record<PayloadTableColumnSlug, string> = {\n hash: 'Hash',\n schema: 'Schema',\n valid: 'Valid',\n}\n\nexport const payloadTableColumnConfigDefaults = (): PayloadTableColumnConfig => {\n const xs: PayloadTableColumnSlug[] = ['hash', 'schema', 'valid']\n const sm: PayloadTableColumnSlug[] = ['hash', 'schema', 'valid']\n const md: PayloadTableColumnSlug[] = ['hash', 'schema', 'valid']\n const lg: PayloadTableColumnSlug[] = ['hash', 'schema', 'valid']\n const xl: PayloadTableColumnSlug[] = ['hash', 'schema', 'valid']\n return { lg, md, sm, xl, xs }\n}\n"],"mappings":"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","names":["Typography","props","schema","maxSchemaDepth","jsx","jsxs","Typography"]}
@@ -1,109 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/components/Table/TableFooter.tsx
21
- var TableFooter_exports = {};
22
- __export(TableFooter_exports, {
23
- PayloadTableFooter: () => PayloadTableFooter
24
- });
25
- module.exports = __toCommonJS(TableFooter_exports);
26
- var import_material2 = require("@mui/material");
27
- var import_react_table = require("@xyo-network/react-table");
28
-
29
- // src/components/Table/TablePagination.tsx
30
- var import_icons_material = require("@mui/icons-material");
31
- var import_material = require("@mui/material");
32
- var import_react_event = require("@xyo-network/react-event");
33
- var import_jsx_runtime = require("react/jsx-runtime");
34
- function TablePaginationActions({ count, enableNextPage, loading, onPageChange, page, rowsPerPage }) {
35
- const theme = (0, import_material.useTheme)();
36
- const [paginationRef, paginationDispatch] = (0, import_react_event.useEvent)();
37
- const handleFirstPageButtonClick = (event) => {
38
- paginationDispatch("firstPage", "click", "true");
39
- onPageChange(event, 0);
40
- };
41
- const handleBackButtonClick = (event) => {
42
- paginationDispatch("previousPage", "click", (page - 1)?.toString());
43
- onPageChange(event, page - 1);
44
- };
45
- const handleNextButtonClick = (event) => {
46
- paginationDispatch("nextPage", "click", (page + 1)?.toString());
47
- onPageChange(event, page + 1);
48
- };
49
- const handleLastPageButtonClick = (event) => {
50
- paginationDispatch("lastPage", "click", "true");
51
- onPageChange(event, Math.max(0, Math.ceil(count / rowsPerPage) - 1));
52
- };
53
- return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
54
- loading ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.CircularProgress, { size: "small", sx: { height: theme.spacing(2), position: "absolute", width: theme.spacing(2) } }) : null,
55
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_material.Box, { sx: { flexShrink: 0, ml: 2.5 }, children: [
56
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.IconButton, { onClick: handleFirstPageButtonClick, disabled: page === 0, "aria-label": "first page", children: theme.direction === "rtl" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.LastPage, {}) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.FirstPage, {}) }),
57
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.IconButton, { ref: paginationRef, onClick: handleBackButtonClick, disabled: page === 0, "aria-label": "previous page", children: theme.direction === "rtl" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.KeyboardArrowRight, {}) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.KeyboardArrowLeft, {}) }),
58
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
59
- import_material.IconButton,
60
- {
61
- ref: paginationRef,
62
- onClick: handleNextButtonClick,
63
- disabled: !enableNextPage && page >= Math.ceil(count / rowsPerPage) - 1,
64
- "aria-label": "next page",
65
- children: theme.direction === "rtl" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.KeyboardArrowLeft, {}) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.KeyboardArrowRight, {})
66
- }
67
- ),
68
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.IconButton, { onClick: handleLastPageButtonClick, disabled: page >= Math.ceil(count / rowsPerPage) - 1, "aria-label": "last page", children: theme.direction === "rtl" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.FirstPage, {}) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.LastPage, {}) })
69
- ] })
70
- ] });
71
- }
72
-
73
- // src/components/Table/TableFooter.tsx
74
- var import_jsx_runtime2 = require("react/jsx-runtime");
75
- var PayloadTableFooter = ({
76
- count,
77
- variant,
78
- page,
79
- rowsPerPage,
80
- handleChangePage = () => void 0,
81
- handleChangeRowsPerPage = () => void 0,
82
- fetchMorePayloads,
83
- loading
84
- }) => /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react_table.TableFooterEx, { variant, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.TableRow, { children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
85
- StyledTablePagination,
86
- {
87
- rowsPerPageOptions: [5, 10, 25, { label: "All", value: -1 }],
88
- count: count ?? 0,
89
- rowsPerPage: rowsPerPage ?? 10,
90
- page: page ?? 0,
91
- SelectProps: {
92
- inputProps: {
93
- "aria-label": "rows per page"
94
- },
95
- native: true
96
- },
97
- onPageChange: handleChangePage,
98
- onRowsPerPageChange: handleChangeRowsPerPage,
99
- ActionsComponent: (props) => /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(TablePaginationActions, { enableNextPage: !!fetchMorePayloads, loading, ...props })
100
- }
101
- ) }) });
102
- var StyledTablePagination = (0, import_material2.styled)(import_material2.TablePagination)(({ theme }) => ({
103
- "& > .MuiToolbar-root": {
104
- paddingLeft: theme.spacing(1)
105
- },
106
- borderTop: "1px solid",
107
- borderTopColor: theme.palette.divider
108
- }));
109
- //# sourceMappingURL=TableFooter.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/Table/TableFooter.tsx","../../../../src/components/Table/TablePagination.tsx"],"sourcesContent":["import { styled, TablePagination, TableRow } from '@mui/material'\nimport { TableFooterEx } from '@xyo-network/react-table'\n\nimport { TablePaginationActions } from './TablePagination'\nimport { PayloadTableFooterProps } from './types'\n\nexport const PayloadTableFooter: React.FC<PayloadTableFooterProps> = ({\n count,\n variant,\n page,\n rowsPerPage,\n handleChangePage = () => undefined,\n handleChangeRowsPerPage = () => undefined,\n fetchMorePayloads,\n loading,\n}) => (\n <TableFooterEx variant={variant}>\n <TableRow>\n <StyledTablePagination\n rowsPerPageOptions={[5, 10, 25, { label: 'All', value: -1 }]}\n count={count ?? 0}\n rowsPerPage={rowsPerPage ?? 10}\n page={page ?? 0}\n SelectProps={{\n inputProps: {\n 'aria-label': 'rows per page',\n },\n native: true,\n }}\n onPageChange={handleChangePage}\n onRowsPerPageChange={handleChangeRowsPerPage}\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ActionsComponent={(props: any) => <TablePaginationActions enableNextPage={!!fetchMorePayloads} loading={loading} {...props} />}\n />\n </TableRow>\n </TableFooterEx>\n)\n\nconst StyledTablePagination = styled(TablePagination)(({ theme }) => ({\n '& > .MuiToolbar-root': {\n paddingLeft: theme.spacing(1),\n },\n borderTop: '1px solid',\n borderTopColor: theme.palette.divider,\n}))\n","import { FirstPage as FirstPageIcon, KeyboardArrowLeft, KeyboardArrowRight, LastPage as LastPageIcon } from '@mui/icons-material'\nimport { Box, CircularProgress, IconButton, useTheme } from '@mui/material'\nimport { useEvent } from '@xyo-network/react-event'\n\nimport { PaginationNouns } from './types'\n\nexport interface TablePaginationActionsProps {\n count: number\n enableNextPage?: boolean\n loading?: boolean\n onPageChange: (event: React.MouseEvent<HTMLButtonElement>, newPage: number) => void\n page: number\n rowsPerPage: number\n}\n\nexport function TablePaginationActions({ count, enableNextPage, loading, onPageChange, page, rowsPerPage }: TablePaginationActionsProps) {\n const theme = useTheme()\n const [paginationRef, paginationDispatch] = useEvent<HTMLButtonElement, PaginationNouns>()\n\n const handleFirstPageButtonClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n paginationDispatch('firstPage', 'click', 'true')\n onPageChange(event, 0)\n }\n\n const handleBackButtonClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n paginationDispatch('previousPage', 'click', (page - 1)?.toString())\n onPageChange(event, page - 1)\n }\n\n const handleNextButtonClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n paginationDispatch('nextPage', 'click', (page + 1)?.toString())\n onPageChange(event, page + 1)\n }\n\n const handleLastPageButtonClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n paginationDispatch('lastPage', 'click', 'true')\n onPageChange(event, Math.max(0, Math.ceil(count / rowsPerPage) - 1))\n }\n\n return (\n <>\n {loading ? <CircularProgress size={'small'} sx={{ height: theme.spacing(2), position: 'absolute', width: theme.spacing(2) }} /> : null}\n <Box sx={{ flexShrink: 0, ml: 2.5 }}>\n <IconButton onClick={handleFirstPageButtonClick} disabled={page === 0} aria-label=\"first page\">\n {theme.direction === 'rtl' ? <LastPageIcon /> : <FirstPageIcon />}\n </IconButton>\n <IconButton ref={paginationRef} onClick={handleBackButtonClick} disabled={page === 0} aria-label=\"previous page\">\n {theme.direction === 'rtl' ? <KeyboardArrowRight /> : <KeyboardArrowLeft />}\n </IconButton>\n <IconButton\n ref={paginationRef}\n onClick={handleNextButtonClick}\n disabled={!enableNextPage && page >= Math.ceil(count / rowsPerPage) - 1}\n aria-label=\"next page\"\n >\n {theme.direction === 'rtl' ? <KeyboardArrowLeft /> : <KeyboardArrowRight />}\n </IconButton>\n <IconButton onClick={handleLastPageButtonClick} disabled={page >= Math.ceil(count / rowsPerPage) - 1} aria-label=\"last page\">\n {theme.direction === 'rtl' ? <FirstPageIcon /> : <LastPageIcon />}\n </IconButton>\n </Box>\n </>\n )\n}\n"],"mappings":"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","names":["import_material","LastPageIcon","FirstPageIcon","import_jsx_runtime"]}
@@ -1,88 +0,0 @@
1
- // src/components/Table/TableFooter.tsx
2
- import { styled, TablePagination, TableRow } from "@mui/material";
3
- import { TableFooterEx } from "@xyo-network/react-table";
4
-
5
- // src/components/Table/TablePagination.tsx
6
- import { FirstPage as FirstPageIcon, KeyboardArrowLeft, KeyboardArrowRight, LastPage as LastPageIcon } from "@mui/icons-material";
7
- import { Box, CircularProgress, IconButton, useTheme } from "@mui/material";
8
- import { useEvent } from "@xyo-network/react-event";
9
- import { Fragment, jsx, jsxs } from "react/jsx-runtime";
10
- function TablePaginationActions({ count, enableNextPage, loading, onPageChange, page, rowsPerPage }) {
11
- const theme = useTheme();
12
- const [paginationRef, paginationDispatch] = useEvent();
13
- const handleFirstPageButtonClick = (event) => {
14
- paginationDispatch("firstPage", "click", "true");
15
- onPageChange(event, 0);
16
- };
17
- const handleBackButtonClick = (event) => {
18
- paginationDispatch("previousPage", "click", (page - 1)?.toString());
19
- onPageChange(event, page - 1);
20
- };
21
- const handleNextButtonClick = (event) => {
22
- paginationDispatch("nextPage", "click", (page + 1)?.toString());
23
- onPageChange(event, page + 1);
24
- };
25
- const handleLastPageButtonClick = (event) => {
26
- paginationDispatch("lastPage", "click", "true");
27
- onPageChange(event, Math.max(0, Math.ceil(count / rowsPerPage) - 1));
28
- };
29
- return /* @__PURE__ */ jsxs(Fragment, { children: [
30
- loading ? /* @__PURE__ */ jsx(CircularProgress, { size: "small", sx: { height: theme.spacing(2), position: "absolute", width: theme.spacing(2) } }) : null,
31
- /* @__PURE__ */ jsxs(Box, { sx: { flexShrink: 0, ml: 2.5 }, children: [
32
- /* @__PURE__ */ jsx(IconButton, { onClick: handleFirstPageButtonClick, disabled: page === 0, "aria-label": "first page", children: theme.direction === "rtl" ? /* @__PURE__ */ jsx(LastPageIcon, {}) : /* @__PURE__ */ jsx(FirstPageIcon, {}) }),
33
- /* @__PURE__ */ jsx(IconButton, { ref: paginationRef, onClick: handleBackButtonClick, disabled: page === 0, "aria-label": "previous page", children: theme.direction === "rtl" ? /* @__PURE__ */ jsx(KeyboardArrowRight, {}) : /* @__PURE__ */ jsx(KeyboardArrowLeft, {}) }),
34
- /* @__PURE__ */ jsx(
35
- IconButton,
36
- {
37
- ref: paginationRef,
38
- onClick: handleNextButtonClick,
39
- disabled: !enableNextPage && page >= Math.ceil(count / rowsPerPage) - 1,
40
- "aria-label": "next page",
41
- children: theme.direction === "rtl" ? /* @__PURE__ */ jsx(KeyboardArrowLeft, {}) : /* @__PURE__ */ jsx(KeyboardArrowRight, {})
42
- }
43
- ),
44
- /* @__PURE__ */ jsx(IconButton, { onClick: handleLastPageButtonClick, disabled: page >= Math.ceil(count / rowsPerPage) - 1, "aria-label": "last page", children: theme.direction === "rtl" ? /* @__PURE__ */ jsx(FirstPageIcon, {}) : /* @__PURE__ */ jsx(LastPageIcon, {}) })
45
- ] })
46
- ] });
47
- }
48
-
49
- // src/components/Table/TableFooter.tsx
50
- import { jsx as jsx2 } from "react/jsx-runtime";
51
- var PayloadTableFooter = ({
52
- count,
53
- variant,
54
- page,
55
- rowsPerPage,
56
- handleChangePage = () => void 0,
57
- handleChangeRowsPerPage = () => void 0,
58
- fetchMorePayloads,
59
- loading
60
- }) => /* @__PURE__ */ jsx2(TableFooterEx, { variant, children: /* @__PURE__ */ jsx2(TableRow, { children: /* @__PURE__ */ jsx2(
61
- StyledTablePagination,
62
- {
63
- rowsPerPageOptions: [5, 10, 25, { label: "All", value: -1 }],
64
- count: count ?? 0,
65
- rowsPerPage: rowsPerPage ?? 10,
66
- page: page ?? 0,
67
- SelectProps: {
68
- inputProps: {
69
- "aria-label": "rows per page"
70
- },
71
- native: true
72
- },
73
- onPageChange: handleChangePage,
74
- onRowsPerPageChange: handleChangeRowsPerPage,
75
- ActionsComponent: (props) => /* @__PURE__ */ jsx2(TablePaginationActions, { enableNextPage: !!fetchMorePayloads, loading, ...props })
76
- }
77
- ) }) });
78
- var StyledTablePagination = styled(TablePagination)(({ theme }) => ({
79
- "& > .MuiToolbar-root": {
80
- paddingLeft: theme.spacing(1)
81
- },
82
- borderTop: "1px solid",
83
- borderTopColor: theme.palette.divider
84
- }));
85
- export {
86
- PayloadTableFooter
87
- };
88
- //# sourceMappingURL=TableFooter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/Table/TableFooter.tsx","../../../../src/components/Table/TablePagination.tsx"],"sourcesContent":["import { styled, TablePagination, TableRow } from '@mui/material'\nimport { TableFooterEx } from '@xyo-network/react-table'\n\nimport { TablePaginationActions } from './TablePagination'\nimport { PayloadTableFooterProps } from './types'\n\nexport const PayloadTableFooter: React.FC<PayloadTableFooterProps> = ({\n count,\n variant,\n page,\n rowsPerPage,\n handleChangePage = () => undefined,\n handleChangeRowsPerPage = () => undefined,\n fetchMorePayloads,\n loading,\n}) => (\n <TableFooterEx variant={variant}>\n <TableRow>\n <StyledTablePagination\n rowsPerPageOptions={[5, 10, 25, { label: 'All', value: -1 }]}\n count={count ?? 0}\n rowsPerPage={rowsPerPage ?? 10}\n page={page ?? 0}\n SelectProps={{\n inputProps: {\n 'aria-label': 'rows per page',\n },\n native: true,\n }}\n onPageChange={handleChangePage}\n onRowsPerPageChange={handleChangeRowsPerPage}\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ActionsComponent={(props: any) => <TablePaginationActions enableNextPage={!!fetchMorePayloads} loading={loading} {...props} />}\n />\n </TableRow>\n </TableFooterEx>\n)\n\nconst StyledTablePagination = styled(TablePagination)(({ theme }) => ({\n '& > .MuiToolbar-root': {\n paddingLeft: theme.spacing(1),\n },\n borderTop: '1px solid',\n borderTopColor: theme.palette.divider,\n}))\n","import { FirstPage as FirstPageIcon, KeyboardArrowLeft, KeyboardArrowRight, LastPage as LastPageIcon } from '@mui/icons-material'\nimport { Box, CircularProgress, IconButton, useTheme } from '@mui/material'\nimport { useEvent } from '@xyo-network/react-event'\n\nimport { PaginationNouns } from './types'\n\nexport interface TablePaginationActionsProps {\n count: number\n enableNextPage?: boolean\n loading?: boolean\n onPageChange: (event: React.MouseEvent<HTMLButtonElement>, newPage: number) => void\n page: number\n rowsPerPage: number\n}\n\nexport function TablePaginationActions({ count, enableNextPage, loading, onPageChange, page, rowsPerPage }: TablePaginationActionsProps) {\n const theme = useTheme()\n const [paginationRef, paginationDispatch] = useEvent<HTMLButtonElement, PaginationNouns>()\n\n const handleFirstPageButtonClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n paginationDispatch('firstPage', 'click', 'true')\n onPageChange(event, 0)\n }\n\n const handleBackButtonClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n paginationDispatch('previousPage', 'click', (page - 1)?.toString())\n onPageChange(event, page - 1)\n }\n\n const handleNextButtonClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n paginationDispatch('nextPage', 'click', (page + 1)?.toString())\n onPageChange(event, page + 1)\n }\n\n const handleLastPageButtonClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n paginationDispatch('lastPage', 'click', 'true')\n onPageChange(event, Math.max(0, Math.ceil(count / rowsPerPage) - 1))\n }\n\n return (\n <>\n {loading ? <CircularProgress size={'small'} sx={{ height: theme.spacing(2), position: 'absolute', width: theme.spacing(2) }} /> : null}\n <Box sx={{ flexShrink: 0, ml: 2.5 }}>\n <IconButton onClick={handleFirstPageButtonClick} disabled={page === 0} aria-label=\"first page\">\n {theme.direction === 'rtl' ? <LastPageIcon /> : <FirstPageIcon />}\n </IconButton>\n <IconButton ref={paginationRef} onClick={handleBackButtonClick} disabled={page === 0} aria-label=\"previous page\">\n {theme.direction === 'rtl' ? <KeyboardArrowRight /> : <KeyboardArrowLeft />}\n </IconButton>\n <IconButton\n ref={paginationRef}\n onClick={handleNextButtonClick}\n disabled={!enableNextPage && page >= Math.ceil(count / rowsPerPage) - 1}\n aria-label=\"next page\"\n >\n {theme.direction === 'rtl' ? <KeyboardArrowLeft /> : <KeyboardArrowRight />}\n </IconButton>\n <IconButton onClick={handleLastPageButtonClick} disabled={page >= Math.ceil(count / rowsPerPage) - 1} aria-label=\"last page\">\n {theme.direction === 'rtl' ? <FirstPageIcon /> : <LastPageIcon />}\n </IconButton>\n </Box>\n </>\n )\n}\n"],"mappings":"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","names":["jsx"]}
@@ -1,52 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/components/Table/TableHead.tsx
21
- var TableHead_exports = {};
22
- __export(TableHead_exports, {
23
- PayloadTableHead: () => PayloadTableHead
24
- });
25
- module.exports = __toCommonJS(TableHead_exports);
26
- var import_material = require("@mui/material");
27
- var import_react_shared = require("@xylabs/react-shared");
28
-
29
- // src/components/Table/PayloadTableColumnConfig.ts
30
- var payloadColumnNames = {
31
- hash: "Hash",
32
- schema: "Schema",
33
- valid: "Valid"
34
- };
35
- var payloadTableColumnConfigDefaults = () => {
36
- const xs = ["hash", "schema", "valid"];
37
- const sm = ["hash", "schema", "valid"];
38
- const md = ["hash", "schema", "valid"];
39
- const lg = ["hash", "schema", "valid"];
40
- const xl = ["hash", "schema", "valid"];
41
- return { lg, md, sm, xl, xs };
42
- };
43
-
44
- // src/components/Table/TableHead.tsx
45
- var import_jsx_runtime = require("react/jsx-runtime");
46
- var PayloadTableHead = ({ columns = payloadTableColumnConfigDefaults(), ...props }) => {
47
- const breakPoint = (0, import_react_shared.useBreakpoint)();
48
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.TableHead, { ...props, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.TableRow, { children: breakPoint && columns ? columns[breakPoint]?.map((column, index) => {
49
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.TableCell, { width: index === 0 ? "100%" : void 0, align: index === 0 ? "left" : "center", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.Typography, { variant: "body2", noWrap: true, children: payloadColumnNames[column] }) }, index);
50
- }) : null }) });
51
- };
52
- //# sourceMappingURL=TableHead.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/Table/TableHead.tsx","../../../../src/components/Table/PayloadTableColumnConfig.ts"],"sourcesContent":["import { TableCell, TableHead, TableRow, Typography } from '@mui/material'\nimport { useBreakpoint } from '@xylabs/react-shared'\n\nimport { payloadColumnNames, payloadTableColumnConfigDefaults } from './PayloadTableColumnConfig'\nimport { PayloadTableHeadProps } from './types'\n\nexport const PayloadTableHead: React.FC<PayloadTableHeadProps> = ({ columns = payloadTableColumnConfigDefaults(), ...props }) => {\n const breakPoint = useBreakpoint()\n return (\n <TableHead {...props}>\n <TableRow>\n {breakPoint && columns\n ? columns[breakPoint]?.map((column, index) => {\n return (\n <TableCell key={index} width={index === 0 ? '100%' : undefined} align={index === 0 ? 'left' : 'center'}>\n <Typography variant=\"body2\" noWrap>\n {payloadColumnNames[column]}\n </Typography>\n </TableCell>\n )\n })\n : null}\n </TableRow>\n </TableHead>\n )\n}\n","export type PayloadTableColumnSlug = 'hash' | 'schema' | 'valid'\n\nexport interface PayloadTableColumnConfig<T = PayloadTableColumnSlug> {\n xs?: T[]\n // eslint-disable-next-line @typescript-eslint/member-ordering\n sm?: T[]\n // eslint-disable-next-line @typescript-eslint/member-ordering\n md?: T[]\n // eslint-disable-next-line @typescript-eslint/member-ordering\n lg?: T[]\n xl?: T[]\n}\n\nexport const payloadColumnNames: Record<PayloadTableColumnSlug, string> = {\n hash: 'Hash',\n schema: 'Schema',\n valid: 'Valid',\n}\n\nexport const payloadTableColumnConfigDefaults = (): PayloadTableColumnConfig => {\n const xs: PayloadTableColumnSlug[] = ['hash', 'schema', 'valid']\n const sm: PayloadTableColumnSlug[] = ['hash', 'schema', 'valid']\n const md: PayloadTableColumnSlug[] = ['hash', 'schema', 'valid']\n const lg: PayloadTableColumnSlug[] = ['hash', 'schema', 'valid']\n const xl: PayloadTableColumnSlug[] = ['hash', 'schema', 'valid']\n return { lg, md, sm, xl, xs }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAA2D;AAC3D,0BAA8B;;;ACYvB,IAAM,qBAA6D;AAAA,EACxE,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,OAAO;AACT;AAEO,IAAM,mCAAmC,MAAgC;AAC9E,QAAM,KAA+B,CAAC,QAAQ,UAAU,OAAO;AAC/D,QAAM,KAA+B,CAAC,QAAQ,UAAU,OAAO;AAC/D,QAAM,KAA+B,CAAC,QAAQ,UAAU,OAAO;AAC/D,QAAM,KAA+B,CAAC,QAAQ,UAAU,OAAO;AAC/D,QAAM,KAA+B,CAAC,QAAQ,UAAU,OAAO;AAC/D,SAAO,EAAE,IAAI,IAAI,IAAI,IAAI,GAAG;AAC9B;;;ADXkB;AATX,IAAM,mBAAoD,CAAC,EAAE,UAAU,iCAAiC,GAAG,GAAG,MAAM,MAAM;AAC/H,QAAM,iBAAa,mCAAc;AACjC,SACE,4CAAC,6BAAW,GAAG,OACb,sDAAC,4BACE,wBAAc,UACX,QAAQ,UAAU,GAAG,IAAI,CAAC,QAAQ,UAAU;AAC1C,WACE,4CAAC,6BAAsB,OAAO,UAAU,IAAI,SAAS,QAAW,OAAO,UAAU,IAAI,SAAS,UAC5F,sDAAC,8BAAW,SAAQ,SAAQ,QAAM,MAC/B,6BAAmB,MAAM,GAC5B,KAHc,KAIhB;AAAA,EAEJ,CAAC,IACD,MACN,GACF;AAEJ;","names":[]}
@@ -1,31 +0,0 @@
1
- // src/components/Table/TableHead.tsx
2
- import { TableCell, TableHead, TableRow, Typography } from "@mui/material";
3
- import { useBreakpoint } from "@xylabs/react-shared";
4
-
5
- // src/components/Table/PayloadTableColumnConfig.ts
6
- var payloadColumnNames = {
7
- hash: "Hash",
8
- schema: "Schema",
9
- valid: "Valid"
10
- };
11
- var payloadTableColumnConfigDefaults = () => {
12
- const xs = ["hash", "schema", "valid"];
13
- const sm = ["hash", "schema", "valid"];
14
- const md = ["hash", "schema", "valid"];
15
- const lg = ["hash", "schema", "valid"];
16
- const xl = ["hash", "schema", "valid"];
17
- return { lg, md, sm, xl, xs };
18
- };
19
-
20
- // src/components/Table/TableHead.tsx
21
- import { jsx } from "react/jsx-runtime";
22
- var PayloadTableHead = ({ columns = payloadTableColumnConfigDefaults(), ...props }) => {
23
- const breakPoint = useBreakpoint();
24
- return /* @__PURE__ */ jsx(TableHead, { ...props, children: /* @__PURE__ */ jsx(TableRow, { children: breakPoint && columns ? columns[breakPoint]?.map((column, index) => {
25
- return /* @__PURE__ */ jsx(TableCell, { width: index === 0 ? "100%" : void 0, align: index === 0 ? "left" : "center", children: /* @__PURE__ */ jsx(Typography, { variant: "body2", noWrap: true, children: payloadColumnNames[column] }) }, index);
26
- }) : null }) });
27
- };
28
- export {
29
- PayloadTableHead
30
- };
31
- //# sourceMappingURL=TableHead.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/Table/TableHead.tsx","../../../../src/components/Table/PayloadTableColumnConfig.ts"],"sourcesContent":["import { TableCell, TableHead, TableRow, Typography } from '@mui/material'\nimport { useBreakpoint } from '@xylabs/react-shared'\n\nimport { payloadColumnNames, payloadTableColumnConfigDefaults } from './PayloadTableColumnConfig'\nimport { PayloadTableHeadProps } from './types'\n\nexport const PayloadTableHead: React.FC<PayloadTableHeadProps> = ({ columns = payloadTableColumnConfigDefaults(), ...props }) => {\n const breakPoint = useBreakpoint()\n return (\n <TableHead {...props}>\n <TableRow>\n {breakPoint && columns\n ? columns[breakPoint]?.map((column, index) => {\n return (\n <TableCell key={index} width={index === 0 ? '100%' : undefined} align={index === 0 ? 'left' : 'center'}>\n <Typography variant=\"body2\" noWrap>\n {payloadColumnNames[column]}\n </Typography>\n </TableCell>\n )\n })\n : null}\n </TableRow>\n </TableHead>\n )\n}\n","export type PayloadTableColumnSlug = 'hash' | 'schema' | 'valid'\n\nexport interface PayloadTableColumnConfig<T = PayloadTableColumnSlug> {\n xs?: T[]\n // eslint-disable-next-line @typescript-eslint/member-ordering\n sm?: T[]\n // eslint-disable-next-line @typescript-eslint/member-ordering\n md?: T[]\n // eslint-disable-next-line @typescript-eslint/member-ordering\n lg?: T[]\n xl?: T[]\n}\n\nexport const payloadColumnNames: Record<PayloadTableColumnSlug, string> = {\n hash: 'Hash',\n schema: 'Schema',\n valid: 'Valid',\n}\n\nexport const payloadTableColumnConfigDefaults = (): PayloadTableColumnConfig => {\n const xs: PayloadTableColumnSlug[] = ['hash', 'schema', 'valid']\n const sm: PayloadTableColumnSlug[] = ['hash', 'schema', 'valid']\n const md: PayloadTableColumnSlug[] = ['hash', 'schema', 'valid']\n const lg: PayloadTableColumnSlug[] = ['hash', 'schema', 'valid']\n const xl: PayloadTableColumnSlug[] = ['hash', 'schema', 'valid']\n return { lg, md, sm, xl, xs }\n}\n"],"mappings":";AAAA,SAAS,WAAW,WAAW,UAAU,kBAAkB;AAC3D,SAAS,qBAAqB;;;ACYvB,IAAM,qBAA6D;AAAA,EACxE,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,OAAO;AACT;AAEO,IAAM,mCAAmC,MAAgC;AAC9E,QAAM,KAA+B,CAAC,QAAQ,UAAU,OAAO;AAC/D,QAAM,KAA+B,CAAC,QAAQ,UAAU,OAAO;AAC/D,QAAM,KAA+B,CAAC,QAAQ,UAAU,OAAO;AAC/D,QAAM,KAA+B,CAAC,QAAQ,UAAU,OAAO;AAC/D,QAAM,KAA+B,CAAC,QAAQ,UAAU,OAAO;AAC/D,SAAO,EAAE,IAAI,IAAI,IAAI,IAAI,GAAG;AAC9B;;;ADXkB;AATX,IAAM,mBAAoD,CAAC,EAAE,UAAU,iCAAiC,GAAG,GAAG,MAAM,MAAM;AAC/H,QAAM,aAAa,cAAc;AACjC,SACE,oBAAC,aAAW,GAAG,OACb,8BAAC,YACE,wBAAc,UACX,QAAQ,UAAU,GAAG,IAAI,CAAC,QAAQ,UAAU;AAC1C,WACE,oBAAC,aAAsB,OAAO,UAAU,IAAI,SAAS,QAAW,OAAO,UAAU,IAAI,SAAS,UAC5F,8BAAC,cAAW,SAAQ,SAAQ,QAAM,MAC/B,6BAAmB,MAAM,GAC5B,KAHc,KAIhB;AAAA,EAEJ,CAAC,IACD,MACN,GACF;AAEJ;","names":[]}
@@ -1,68 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/components/Table/TablePagination.tsx
21
- var TablePagination_exports = {};
22
- __export(TablePagination_exports, {
23
- TablePaginationActions: () => TablePaginationActions
24
- });
25
- module.exports = __toCommonJS(TablePagination_exports);
26
- var import_icons_material = require("@mui/icons-material");
27
- var import_material = require("@mui/material");
28
- var import_react_event = require("@xyo-network/react-event");
29
- var import_jsx_runtime = require("react/jsx-runtime");
30
- function TablePaginationActions({ count, enableNextPage, loading, onPageChange, page, rowsPerPage }) {
31
- const theme = (0, import_material.useTheme)();
32
- const [paginationRef, paginationDispatch] = (0, import_react_event.useEvent)();
33
- const handleFirstPageButtonClick = (event) => {
34
- paginationDispatch("firstPage", "click", "true");
35
- onPageChange(event, 0);
36
- };
37
- const handleBackButtonClick = (event) => {
38
- paginationDispatch("previousPage", "click", (page - 1)?.toString());
39
- onPageChange(event, page - 1);
40
- };
41
- const handleNextButtonClick = (event) => {
42
- paginationDispatch("nextPage", "click", (page + 1)?.toString());
43
- onPageChange(event, page + 1);
44
- };
45
- const handleLastPageButtonClick = (event) => {
46
- paginationDispatch("lastPage", "click", "true");
47
- onPageChange(event, Math.max(0, Math.ceil(count / rowsPerPage) - 1));
48
- };
49
- return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
50
- loading ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.CircularProgress, { size: "small", sx: { height: theme.spacing(2), position: "absolute", width: theme.spacing(2) } }) : null,
51
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_material.Box, { sx: { flexShrink: 0, ml: 2.5 }, children: [
52
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.IconButton, { onClick: handleFirstPageButtonClick, disabled: page === 0, "aria-label": "first page", children: theme.direction === "rtl" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.LastPage, {}) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.FirstPage, {}) }),
53
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.IconButton, { ref: paginationRef, onClick: handleBackButtonClick, disabled: page === 0, "aria-label": "previous page", children: theme.direction === "rtl" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.KeyboardArrowRight, {}) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.KeyboardArrowLeft, {}) }),
54
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
55
- import_material.IconButton,
56
- {
57
- ref: paginationRef,
58
- onClick: handleNextButtonClick,
59
- disabled: !enableNextPage && page >= Math.ceil(count / rowsPerPage) - 1,
60
- "aria-label": "next page",
61
- children: theme.direction === "rtl" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.KeyboardArrowLeft, {}) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.KeyboardArrowRight, {})
62
- }
63
- ),
64
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.IconButton, { onClick: handleLastPageButtonClick, disabled: page >= Math.ceil(count / rowsPerPage) - 1, "aria-label": "last page", children: theme.direction === "rtl" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.FirstPage, {}) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons_material.LastPage, {}) })
65
- ] })
66
- ] });
67
- }
68
- //# sourceMappingURL=TablePagination.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/Table/TablePagination.tsx"],"sourcesContent":["import { FirstPage as FirstPageIcon, KeyboardArrowLeft, KeyboardArrowRight, LastPage as LastPageIcon } from '@mui/icons-material'\nimport { Box, CircularProgress, IconButton, useTheme } from '@mui/material'\nimport { useEvent } from '@xyo-network/react-event'\n\nimport { PaginationNouns } from './types'\n\nexport interface TablePaginationActionsProps {\n count: number\n enableNextPage?: boolean\n loading?: boolean\n onPageChange: (event: React.MouseEvent<HTMLButtonElement>, newPage: number) => void\n page: number\n rowsPerPage: number\n}\n\nexport function TablePaginationActions({ count, enableNextPage, loading, onPageChange, page, rowsPerPage }: TablePaginationActionsProps) {\n const theme = useTheme()\n const [paginationRef, paginationDispatch] = useEvent<HTMLButtonElement, PaginationNouns>()\n\n const handleFirstPageButtonClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n paginationDispatch('firstPage', 'click', 'true')\n onPageChange(event, 0)\n }\n\n const handleBackButtonClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n paginationDispatch('previousPage', 'click', (page - 1)?.toString())\n onPageChange(event, page - 1)\n }\n\n const handleNextButtonClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n paginationDispatch('nextPage', 'click', (page + 1)?.toString())\n onPageChange(event, page + 1)\n }\n\n const handleLastPageButtonClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n paginationDispatch('lastPage', 'click', 'true')\n onPageChange(event, Math.max(0, Math.ceil(count / rowsPerPage) - 1))\n }\n\n return (\n <>\n {loading ? <CircularProgress size={'small'} sx={{ height: theme.spacing(2), position: 'absolute', width: theme.spacing(2) }} /> : null}\n <Box sx={{ flexShrink: 0, ml: 2.5 }}>\n <IconButton onClick={handleFirstPageButtonClick} disabled={page === 0} aria-label=\"first page\">\n {theme.direction === 'rtl' ? <LastPageIcon /> : <FirstPageIcon />}\n </IconButton>\n <IconButton ref={paginationRef} onClick={handleBackButtonClick} disabled={page === 0} aria-label=\"previous page\">\n {theme.direction === 'rtl' ? <KeyboardArrowRight /> : <KeyboardArrowLeft />}\n </IconButton>\n <IconButton\n ref={paginationRef}\n onClick={handleNextButtonClick}\n disabled={!enableNextPage && page >= Math.ceil(count / rowsPerPage) - 1}\n aria-label=\"next page\"\n >\n {theme.direction === 'rtl' ? <KeyboardArrowLeft /> : <KeyboardArrowRight />}\n </IconButton>\n <IconButton onClick={handleLastPageButtonClick} disabled={page >= Math.ceil(count / rowsPerPage) - 1} aria-label=\"last page\">\n {theme.direction === 'rtl' ? <FirstPageIcon /> : <LastPageIcon />}\n </IconButton>\n </Box>\n </>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BAA4G;AAC5G,sBAA4D;AAC5D,yBAAyB;AAsCrB;AAzBG,SAAS,uBAAuB,EAAE,OAAO,gBAAgB,SAAS,cAAc,MAAM,YAAY,GAAgC;AACvI,QAAM,YAAQ,0BAAS;AACvB,QAAM,CAAC,eAAe,kBAAkB,QAAI,6BAA6C;AAEzF,QAAM,6BAA6B,CAAC,UAA+C;AACjF,uBAAmB,aAAa,SAAS,MAAM;AAC/C,iBAAa,OAAO,CAAC;AAAA,EACvB;AAEA,QAAM,wBAAwB,CAAC,UAA+C;AAC5E,uBAAmB,gBAAgB,UAAU,OAAO,IAAI,SAAS,CAAC;AAClE,iBAAa,OAAO,OAAO,CAAC;AAAA,EAC9B;AAEA,QAAM,wBAAwB,CAAC,UAA+C;AAC5E,uBAAmB,YAAY,UAAU,OAAO,IAAI,SAAS,CAAC;AAC9D,iBAAa,OAAO,OAAO,CAAC;AAAA,EAC9B;AAEA,QAAM,4BAA4B,CAAC,UAA+C;AAChF,uBAAmB,YAAY,SAAS,MAAM;AAC9C,iBAAa,OAAO,KAAK,IAAI,GAAG,KAAK,KAAK,QAAQ,WAAW,IAAI,CAAC,CAAC;AAAA,EACrE;AAEA,SACE,4EACG;AAAA,cAAU,4CAAC,oCAAiB,MAAM,SAAS,IAAI,EAAE,QAAQ,MAAM,QAAQ,CAAC,GAAG,UAAU,YAAY,OAAO,MAAM,QAAQ,CAAC,EAAE,GAAG,IAAK;AAAA,IAClI,6CAAC,uBAAI,IAAI,EAAE,YAAY,GAAG,IAAI,IAAI,GAChC;AAAA,kDAAC,8BAAW,SAAS,4BAA4B,UAAU,SAAS,GAAG,cAAW,cAC/E,gBAAM,cAAc,QAAQ,4CAAC,sBAAAA,UAAA,EAAa,IAAK,4CAAC,sBAAAC,WAAA,EAAc,GACjE;AAAA,MACA,4CAAC,8BAAW,KAAK,eAAe,SAAS,uBAAuB,UAAU,SAAS,GAAG,cAAW,iBAC9F,gBAAM,cAAc,QAAQ,4CAAC,4CAAmB,IAAK,4CAAC,2CAAkB,GAC3E;AAAA,MACA;AAAA,QAAC;AAAA;AAAA,UACC,KAAK;AAAA,UACL,SAAS;AAAA,UACT,UAAU,CAAC,kBAAkB,QAAQ,KAAK,KAAK,QAAQ,WAAW,IAAI;AAAA,UACtE,cAAW;AAAA,UAEV,gBAAM,cAAc,QAAQ,4CAAC,2CAAkB,IAAK,4CAAC,4CAAmB;AAAA;AAAA,MAC3E;AAAA,MACA,4CAAC,8BAAW,SAAS,2BAA2B,UAAU,QAAQ,KAAK,KAAK,QAAQ,WAAW,IAAI,GAAG,cAAW,aAC9G,gBAAM,cAAc,QAAQ,4CAAC,sBAAAA,WAAA,EAAc,IAAK,4CAAC,sBAAAD,UAAA,EAAa,GACjE;AAAA,OACF;AAAA,KACF;AAEJ;","names":["LastPageIcon","FirstPageIcon"]}
@@ -1,47 +0,0 @@
1
- // src/components/Table/TablePagination.tsx
2
- import { FirstPage as FirstPageIcon, KeyboardArrowLeft, KeyboardArrowRight, LastPage as LastPageIcon } from "@mui/icons-material";
3
- import { Box, CircularProgress, IconButton, useTheme } from "@mui/material";
4
- import { useEvent } from "@xyo-network/react-event";
5
- import { Fragment, jsx, jsxs } from "react/jsx-runtime";
6
- function TablePaginationActions({ count, enableNextPage, loading, onPageChange, page, rowsPerPage }) {
7
- const theme = useTheme();
8
- const [paginationRef, paginationDispatch] = useEvent();
9
- const handleFirstPageButtonClick = (event) => {
10
- paginationDispatch("firstPage", "click", "true");
11
- onPageChange(event, 0);
12
- };
13
- const handleBackButtonClick = (event) => {
14
- paginationDispatch("previousPage", "click", (page - 1)?.toString());
15
- onPageChange(event, page - 1);
16
- };
17
- const handleNextButtonClick = (event) => {
18
- paginationDispatch("nextPage", "click", (page + 1)?.toString());
19
- onPageChange(event, page + 1);
20
- };
21
- const handleLastPageButtonClick = (event) => {
22
- paginationDispatch("lastPage", "click", "true");
23
- onPageChange(event, Math.max(0, Math.ceil(count / rowsPerPage) - 1));
24
- };
25
- return /* @__PURE__ */ jsxs(Fragment, { children: [
26
- loading ? /* @__PURE__ */ jsx(CircularProgress, { size: "small", sx: { height: theme.spacing(2), position: "absolute", width: theme.spacing(2) } }) : null,
27
- /* @__PURE__ */ jsxs(Box, { sx: { flexShrink: 0, ml: 2.5 }, children: [
28
- /* @__PURE__ */ jsx(IconButton, { onClick: handleFirstPageButtonClick, disabled: page === 0, "aria-label": "first page", children: theme.direction === "rtl" ? /* @__PURE__ */ jsx(LastPageIcon, {}) : /* @__PURE__ */ jsx(FirstPageIcon, {}) }),
29
- /* @__PURE__ */ jsx(IconButton, { ref: paginationRef, onClick: handleBackButtonClick, disabled: page === 0, "aria-label": "previous page", children: theme.direction === "rtl" ? /* @__PURE__ */ jsx(KeyboardArrowRight, {}) : /* @__PURE__ */ jsx(KeyboardArrowLeft, {}) }),
30
- /* @__PURE__ */ jsx(
31
- IconButton,
32
- {
33
- ref: paginationRef,
34
- onClick: handleNextButtonClick,
35
- disabled: !enableNextPage && page >= Math.ceil(count / rowsPerPage) - 1,
36
- "aria-label": "next page",
37
- children: theme.direction === "rtl" ? /* @__PURE__ */ jsx(KeyboardArrowLeft, {}) : /* @__PURE__ */ jsx(KeyboardArrowRight, {})
38
- }
39
- ),
40
- /* @__PURE__ */ jsx(IconButton, { onClick: handleLastPageButtonClick, disabled: page >= Math.ceil(count / rowsPerPage) - 1, "aria-label": "last page", children: theme.direction === "rtl" ? /* @__PURE__ */ jsx(FirstPageIcon, {}) : /* @__PURE__ */ jsx(LastPageIcon, {}) })
41
- ] })
42
- ] });
43
- }
44
- export {
45
- TablePaginationActions
46
- };
47
- //# sourceMappingURL=TablePagination.js.map