@apia/table 2.0.9 → 2.0.11

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 (134) hide show
  1. package/dist/Cell.js +52 -0
  2. package/dist/Cell.js.map +1 -0
  3. package/dist/FilterCell.js +68 -0
  4. package/dist/FilterCell.js.map +1 -0
  5. package/dist/Header.js +171 -0
  6. package/dist/Header.js.map +1 -0
  7. package/dist/HeaderCell.js +223 -0
  8. package/dist/HeaderCell.js.map +1 -0
  9. package/dist/KeyHandler.js +28 -0
  10. package/dist/KeyHandler.js.map +1 -0
  11. package/dist/ResponsiveTable.d.ts +8 -0
  12. package/dist/ResponsiveTable.d.ts.map +1 -0
  13. package/dist/ResponsiveTable.js +29 -0
  14. package/dist/ResponsiveTable.js.map +1 -0
  15. package/dist/ResponsiveTableContext.d.ts +8 -0
  16. package/dist/ResponsiveTableContext.d.ts.map +1 -0
  17. package/dist/ResponsiveTableContext.js +143 -0
  18. package/dist/ResponsiveTableContext.js.map +1 -0
  19. package/dist/Row.js +230 -0
  20. package/dist/Row.js.map +1 -0
  21. package/dist/SeparatorCell.js +20 -0
  22. package/dist/SeparatorCell.js.map +1 -0
  23. package/dist/StateCell.js +19 -0
  24. package/dist/StateCell.js.map +1 -0
  25. package/dist/filters/RangeFilter.js +61 -0
  26. package/dist/filters/RangeFilter.js.map +1 -0
  27. package/dist/index.d.ts +24 -787
  28. package/dist/index.js +24 -3648
  29. package/dist/index.js.map +1 -1
  30. package/dist/renderers/AccordionCell.d.ts +15 -0
  31. package/dist/renderers/AccordionCell.d.ts.map +1 -0
  32. package/dist/renderers/AccordionCell.js +23 -0
  33. package/dist/renderers/AccordionCell.js.map +1 -0
  34. package/dist/renderers/AccordionDocNameCellRenderer.d.ts +11 -0
  35. package/dist/renderers/AccordionDocNameCellRenderer.d.ts.map +1 -0
  36. package/dist/renderers/AccordionDocNameCellRenderer.js +39 -0
  37. package/dist/renderers/AccordionDocNameCellRenderer.js.map +1 -0
  38. package/dist/renderers/AccordionElement.d.ts +11 -0
  39. package/dist/renderers/AccordionElement.d.ts.map +1 -0
  40. package/dist/renderers/AccordionElement.js +115 -0
  41. package/dist/renderers/AccordionElement.js.map +1 -0
  42. package/dist/renderers/AccordionHTMLCellRenderer.d.ts +8 -0
  43. package/dist/renderers/AccordionHTMLCellRenderer.d.ts.map +1 -0
  44. package/dist/renderers/AccordionHTMLCellRenderer.js +37 -0
  45. package/dist/renderers/AccordionHTMLCellRenderer.js.map +1 -0
  46. package/dist/renderers/AccordionRenderer.d.ts +6 -0
  47. package/dist/renderers/AccordionRenderer.d.ts.map +1 -0
  48. package/dist/renderers/AccordionRenderer.js +76 -0
  49. package/dist/renderers/AccordionRenderer.js.map +1 -0
  50. package/dist/renderers/AdditionalColumnDefaultRenderer.d.ts +7 -0
  51. package/dist/renderers/AdditionalColumnDefaultRenderer.d.ts.map +1 -0
  52. package/dist/renderers/AdditionalColumnDefaultRenderer.js +31 -0
  53. package/dist/renderers/AdditionalColumnDefaultRenderer.js.map +1 -0
  54. package/dist/renderers/DefaultCellRenderer.d.ts +11 -0
  55. package/dist/renderers/DefaultCellRenderer.d.ts.map +1 -0
  56. package/dist/renderers/DefaultCellRenderer.js +49 -0
  57. package/dist/renderers/DefaultCellRenderer.js.map +1 -0
  58. package/dist/renderers/DefaultRowRenderer.d.ts +6 -0
  59. package/dist/renderers/DefaultRowRenderer.d.ts.map +1 -0
  60. package/dist/renderers/DefaultRowRenderer.js +26 -0
  61. package/dist/renderers/DefaultRowRenderer.js.map +1 -0
  62. package/dist/renderers/DocNameCellRenderer.d.ts +10 -0
  63. package/dist/renderers/DocNameCellRenderer.d.ts.map +1 -0
  64. package/dist/renderers/DocNameCellRenderer.js +43 -0
  65. package/dist/renderers/DocNameCellRenderer.js.map +1 -0
  66. package/dist/renderers/HTMLCellRenderer.d.ts +8 -0
  67. package/dist/renderers/HTMLCellRenderer.d.ts.map +1 -0
  68. package/dist/renderers/HTMLCellRenderer.js +29 -0
  69. package/dist/renderers/HTMLCellRenderer.js.map +1 -0
  70. package/dist/renderers/IsLoadingRenderer.d.ts +6 -0
  71. package/dist/renderers/IsLoadingRenderer.d.ts.map +1 -0
  72. package/dist/renderers/IsLoadingRenderer.js +9 -0
  73. package/dist/renderers/IsLoadingRenderer.js.map +1 -0
  74. package/dist/renderers/NoRegistersRenderer.d.ts +6 -0
  75. package/dist/renderers/NoRegistersRenderer.d.ts.map +1 -0
  76. package/dist/renderers/NoRegistersRenderer.js +11 -0
  77. package/dist/renderers/NoRegistersRenderer.js.map +1 -0
  78. package/dist/renderers/PriorityAccordionRenderer.d.ts +6 -0
  79. package/dist/renderers/PriorityAccordionRenderer.d.ts.map +1 -0
  80. package/dist/renderers/PriorityAccordionRenderer.js +36 -0
  81. package/dist/renderers/PriorityAccordionRenderer.js.map +1 -0
  82. package/dist/renderers/PriorityRenderer.d.ts +9 -0
  83. package/dist/renderers/PriorityRenderer.d.ts.map +1 -0
  84. package/dist/renderers/PriorityRenderer.js +46 -0
  85. package/dist/renderers/PriorityRenderer.js.map +1 -0
  86. package/dist/renderers/RowStatesRenderer.d.ts +9 -0
  87. package/dist/renderers/RowStatesRenderer.d.ts.map +1 -0
  88. package/dist/renderers/RowStatesRenderer.js +34 -0
  89. package/dist/renderers/RowStatesRenderer.js.map +1 -0
  90. package/dist/renderers/StatusAccordionRenderer.d.ts +6 -0
  91. package/dist/renderers/StatusAccordionRenderer.d.ts.map +1 -0
  92. package/dist/renderers/StatusAccordionRenderer.js +23 -0
  93. package/dist/renderers/StatusAccordionRenderer.js.map +1 -0
  94. package/dist/renderers/StatusRenderer.d.ts +9 -0
  95. package/dist/renderers/StatusRenderer.d.ts.map +1 -0
  96. package/dist/renderers/StatusRenderer.js +54 -0
  97. package/dist/renderers/StatusRenderer.js.map +1 -0
  98. package/dist/renderers/TableRenderer.d.ts +6 -0
  99. package/dist/renderers/TableRenderer.d.ts.map +1 -0
  100. package/dist/renderers/TableRenderer.js +50 -0
  101. package/dist/renderers/TableRenderer.js.map +1 -0
  102. package/dist/renderers/makeAccordionAsyncRenderer.d.ts +9 -0
  103. package/dist/renderers/makeAccordionAsyncRenderer.d.ts.map +1 -0
  104. package/dist/renderers/makeAccordionAsyncRenderer.js +35 -0
  105. package/dist/renderers/makeAccordionAsyncRenderer.js.map +1 -0
  106. package/dist/renderers/makeAsyncRenderer.d.ts +10 -0
  107. package/dist/renderers/makeAsyncRenderer.d.ts.map +1 -0
  108. package/dist/renderers/makeAsyncRenderer.js +47 -0
  109. package/dist/renderers/makeAsyncRenderer.js.map +1 -0
  110. package/dist/store/index.d.ts +72 -0
  111. package/dist/store/index.d.ts.map +1 -0
  112. package/dist/store/index.js +131 -0
  113. package/dist/store/index.js.map +1 -0
  114. package/dist/store/selection/getInitialState.js +22 -0
  115. package/dist/store/selection/getInitialState.js.map +1 -0
  116. package/dist/store/selection/getReduxActions.js +42 -0
  117. package/dist/store/selection/getReduxActions.js.map +1 -0
  118. package/dist/store/selection/handleKey.js +143 -0
  119. package/dist/store/selection/handleKey.js.map +1 -0
  120. package/dist/store/selection/makeKeyHandler.js +336 -0
  121. package/dist/store/selection/makeKeyHandler.js.map +1 -0
  122. package/dist/store/selection/setNewFocused.js +101 -0
  123. package/dist/store/selection/setNewFocused.js.map +1 -0
  124. package/dist/store/selection/types.d.ts +150 -0
  125. package/dist/store/selection/types.d.ts.map +1 -0
  126. package/dist/store/selection/useDomProps.js +181 -0
  127. package/dist/store/selection/useDomProps.js.map +1 -0
  128. package/dist/store/types.d.ts +19 -0
  129. package/dist/store/types.d.ts.map +1 -0
  130. package/dist/types.d.ts +315 -0
  131. package/dist/types.d.ts.map +1 -0
  132. package/dist/types.js +6 -0
  133. package/dist/types.js.map +1 -0
  134. package/package.json +7 -7
@@ -0,0 +1,15 @@
1
+ import { FunctionComponent } from 'react';
2
+ import { TResponsiveTableCell, TResponsiveTableColumn, TResponsiveTableRow } from '../types.js';
3
+
4
+ type TAccordionCellRendererProps<CellProps = Record<string, unknown>> = {
5
+ cell: TResponsiveTableCell<CellProps>;
6
+ column: TResponsiveTableColumn;
7
+ columnIndex: number;
8
+ row: TResponsiveTableRow;
9
+ rowIndex: number;
10
+ };
11
+ type TAccordionCellRenderer<CellProps = Record<string, unknown>> = FunctionComponent<TAccordionCellRendererProps<CellProps>>;
12
+ declare const AccordionCell: TAccordionCellRenderer<Record<string, unknown>>;
13
+
14
+ export { AccordionCell, type TAccordionCellRenderer, type TAccordionCellRendererProps };
15
+ //# sourceMappingURL=AccordionCell.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccordionCell.d.ts","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,23 @@
1
+ import { jsxs, jsx } from '@apia/theme/jsx-runtime';
2
+ import { Box } from '@apia/theme';
3
+
4
+ const NoMemoAccordionCell = ({ cell, column }) => {
5
+ return /* @__PURE__ */ jsxs(
6
+ Box,
7
+ {
8
+ className: `responsiveTable__accordionElement__column ${cell.className ?? ""}`,
9
+ children: [
10
+ /* @__PURE__ */ jsxs(Box, { as: "strong", children: [
11
+ column.label ?? column.name,
12
+ ": "
13
+ ] }),
14
+ /* @__PURE__ */ jsx(Box, { as: "span", sx: { color: cell.color, background: cell.background }, children: cell?.children })
15
+ ]
16
+ },
17
+ column.name
18
+ );
19
+ };
20
+ const AccordionCell = NoMemoAccordionCell;
21
+
22
+ export { AccordionCell };
23
+ //# sourceMappingURL=AccordionCell.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccordionCell.js","sources":["../../src/renderers/AccordionCell.tsx"],"sourcesContent":["import { Box } from '@apia/theme';\r\nimport { FunctionComponent } from 'react';\r\nimport {\r\n TResponsiveTableCell,\r\n TResponsiveTableColumn,\r\n TResponsiveTableRow,\r\n} from '../types';\r\n\r\nexport type TAccordionCellRendererProps<CellProps = Record<string, unknown>> = {\r\n cell: TResponsiveTableCell<CellProps>;\r\n column: TResponsiveTableColumn;\r\n columnIndex: number;\r\n row: TResponsiveTableRow;\r\n rowIndex: number;\r\n};\r\n\r\nexport type TAccordionCellRenderer<CellProps = Record<string, unknown>> =\r\n FunctionComponent<TAccordionCellRendererProps<CellProps>>;\r\n\r\nconst NoMemoAccordionCell: TAccordionCellRenderer = ({ cell, column }) => {\r\n return (\r\n <Box\r\n key={column.name}\r\n className={`responsiveTable__accordionElement__column ${\r\n cell.className ?? ''\r\n }`}\r\n >\r\n <Box as=\"strong\">{column.label ?? column.name}: </Box>\r\n <Box as=\"span\" sx={{ color: cell.color, background: cell.background }}>\r\n {cell?.children}\r\n </Box>\r\n </Box>\r\n );\r\n};\r\n\r\nexport const AccordionCell = NoMemoAccordionCell;\r\n"],"names":[],"mappings":";;;AAmBA,MAAM,mBAA8C,GAAA,CAAC,EAAE,IAAA,EAAM,QAAa,KAAA;AACxE,EACE,uBAAA,IAAA;AAAA,IAAC,GAAA;AAAA,IAAA;AAAA,MAEC,SAAW,EAAA,CAAA,0CAAA,EACT,IAAK,CAAA,SAAA,IAAa,EACpB,CAAA,CAAA;AAAA,MAEA,QAAA,EAAA;AAAA,wBAAC,IAAA,CAAA,GAAA,EAAA,EAAI,IAAG,QAAU,EAAA,QAAA,EAAA;AAAA,UAAA,MAAA,CAAO,SAAS,MAAO,CAAA,IAAA;AAAA,UAAK,IAAA;AAAA,SAAE,EAAA,CAAA;AAAA,wBAC/C,GAAA,CAAA,GAAA,EAAA,EAAI,EAAG,EAAA,MAAA,EAAO,IAAI,EAAE,KAAA,EAAO,IAAK,CAAA,KAAA,EAAO,UAAY,EAAA,IAAA,CAAK,UAAW,EAAA,EACjE,gBAAM,QACT,EAAA,CAAA;AAAA,OAAA;AAAA,KAAA;AAAA,IARK,MAAO,CAAA,IAAA;AAAA,GASd,CAAA;AAEJ,CAAA,CAAA;AAEO,MAAM,aAAgB,GAAA;;;;"}
@@ -0,0 +1,11 @@
1
+ import { TAccordionCellRendererProps, TAccordionCellRenderer } from './AccordionCell.js';
2
+
3
+ type TDocNameCellRendererProps = {
4
+ docName: string;
5
+ docUrl: string;
6
+ };
7
+ type TDocNameCellRenderer = TAccordionCellRendererProps<TDocNameCellRendererProps>;
8
+ declare const AccordionDocNameCellRenderer: TAccordionCellRenderer<TDocNameCellRendererProps>;
9
+
10
+ export { AccordionDocNameCellRenderer, type TDocNameCellRenderer, type TDocNameCellRendererProps };
11
+ //# sourceMappingURL=AccordionDocNameCellRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccordionDocNameCellRenderer.d.ts","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,39 @@
1
+ import { jsxs, jsx } from '@apia/theme/jsx-runtime';
2
+ import React from 'react';
3
+ import { Box, Link } from '@apia/theme';
4
+ import { downloadUrl } from '@apia/util';
5
+ import { Icon } from '@apia/icons';
6
+
7
+ const NoMemoAccordionDocNameCellRenderer = React.forwardRef(
8
+ ({
9
+ cell: { children, Renderer, rendererProps, AccordionRenderer, ...cell },
10
+ column
11
+ }, currentRef) => /* @__PURE__ */ jsxs(Box, { ref: currentRef, ...cell, children: [
12
+ /* @__PURE__ */ jsxs(Box, { as: "strong", children: [
13
+ column.label ?? column.name,
14
+ ": "
15
+ ] }),
16
+ /* @__PURE__ */ jsxs(
17
+ Link,
18
+ {
19
+ className: "cell__download__document",
20
+ title: rendererProps?.docName,
21
+ href: rendererProps?.docUrl,
22
+ onClick: (ev) => {
23
+ ev.preventDefault();
24
+ if (rendererProps?.docUrl)
25
+ void downloadUrl(rendererProps?.docUrl);
26
+ },
27
+ children: [
28
+ /* @__PURE__ */ jsx(Icon, { title: "", name: "Download" }),
29
+ rendererProps?.docName
30
+ ]
31
+ }
32
+ )
33
+ ] })
34
+ );
35
+ NoMemoAccordionDocNameCellRenderer.displayName = "AccordionDocNameCellRenderer";
36
+ const AccordionDocNameCellRenderer = NoMemoAccordionDocNameCellRenderer;
37
+
38
+ export { AccordionDocNameCellRenderer };
39
+ //# sourceMappingURL=AccordionDocNameCellRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccordionDocNameCellRenderer.js","sources":["../../src/renderers/AccordionDocNameCellRenderer.tsx"],"sourcesContent":["import React from 'react';\r\nimport { Box, Link } from '@apia/theme';\r\nimport { downloadUrl } from '@apia/util';\r\nimport { Icon } from '@apia/icons';\r\nimport {\r\n TAccordionCellRenderer,\r\n TAccordionCellRendererProps,\r\n} from './AccordionCell';\r\n\r\nexport type TDocNameCellRendererProps = {\r\n docName: string;\r\n docUrl: string;\r\n};\r\n\r\nexport type TDocNameCellRenderer =\r\n TAccordionCellRendererProps<TDocNameCellRendererProps>;\r\n\r\nconst NoMemoAccordionDocNameCellRenderer: TAccordionCellRenderer<TDocNameCellRendererProps> =\r\n React.forwardRef<HTMLElement, TDocNameCellRenderer>(\r\n (\r\n {\r\n cell: { children, Renderer, rendererProps, AccordionRenderer, ...cell },\r\n column,\r\n },\r\n currentRef,\r\n ) => (\r\n <Box ref={currentRef as React.RefObject<HTMLElement>} {...cell}>\r\n <Box as=\"strong\">{column.label ?? column.name}: </Box>\r\n <Link\r\n className=\"cell__download__document\"\r\n title={rendererProps?.docName}\r\n href={rendererProps?.docUrl}\r\n onClick={(ev) => {\r\n ev.preventDefault();\r\n if (rendererProps?.docUrl) void downloadUrl(rendererProps?.docUrl);\r\n }}\r\n >\r\n <Icon title=\"\" name=\"Download\" />\r\n {rendererProps?.docName}\r\n </Link>\r\n </Box>\r\n ),\r\n );\r\n\r\nNoMemoAccordionDocNameCellRenderer.displayName = 'AccordionDocNameCellRenderer';\r\n\r\nexport const AccordionDocNameCellRenderer = NoMemoAccordionDocNameCellRenderer;\r\n"],"names":[],"mappings":";;;;;;AAiBA,MAAM,qCACJ,KAAM,CAAA,UAAA;AAAA,EACJ,CACE;AAAA,IACE,MAAM,EAAE,QAAA,EAAU,UAAU,aAAe,EAAA,iBAAA,EAAmB,GAAG,IAAK,EAAA;AAAA,IACtE,MAAA;AAAA,KAEF,UAEA,qBAAA,IAAA,CAAC,OAAI,GAAK,EAAA,UAAA,EAA6C,GAAG,IACxD,EAAA,QAAA,EAAA;AAAA,oBAAC,IAAA,CAAA,GAAA,EAAA,EAAI,IAAG,QAAU,EAAA,QAAA,EAAA;AAAA,MAAA,MAAA,CAAO,SAAS,MAAO,CAAA,IAAA;AAAA,MAAK,IAAA;AAAA,KAAE,EAAA,CAAA;AAAA,oBAChD,IAAA;AAAA,MAAC,IAAA;AAAA,MAAA;AAAA,QACC,SAAU,EAAA,0BAAA;AAAA,QACV,OAAO,aAAe,EAAA,OAAA;AAAA,QACtB,MAAM,aAAe,EAAA,MAAA;AAAA,QACrB,OAAA,EAAS,CAAC,EAAO,KAAA;AACf,UAAA,EAAA,CAAG,cAAe,EAAA,CAAA;AAClB,UAAA,IAAI,aAAe,EAAA,MAAA;AAAQ,YAAK,KAAA,WAAA,CAAY,eAAe,MAAM,CAAA,CAAA;AAAA,SACnE;AAAA,QAEA,QAAA,EAAA;AAAA,0BAAA,GAAA,CAAC,IAAK,EAAA,EAAA,KAAA,EAAM,EAAG,EAAA,IAAA,EAAK,UAAW,EAAA,CAAA;AAAA,UAC9B,aAAe,EAAA,OAAA;AAAA,SAAA;AAAA,OAAA;AAAA,KAClB;AAAA,GACF,EAAA,CAAA;AAEJ,CAAA,CAAA;AAEF,kCAAA,CAAmC,WAAc,GAAA,8BAAA,CAAA;AAE1C,MAAM,4BAA+B,GAAA;;;;"}
@@ -0,0 +1,11 @@
1
+ import React__default from 'react';
2
+ import { TResponsiveTableRow } from '../types.js';
3
+
4
+ interface IAccordionElement {
5
+ row: TResponsiveTableRow;
6
+ rowIndex: number;
7
+ }
8
+ declare const AccordionElement: React__default.MemoExoticComponent<({ row, rowIndex }: IAccordionElement) => React__default.JSX.Element | null>;
9
+
10
+ export { AccordionElement, type IAccordionElement };
11
+ //# sourceMappingURL=AccordionElement.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccordionElement.d.ts","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,115 @@
1
+ import { jsxs, jsx } from '@apia/theme/jsx-runtime';
2
+ import React, { memo, useMemo } from 'react';
3
+ import { shallowEqual } from 'react-redux';
4
+ import { useResponsiveTableContext } from '../ResponsiveTableContext.js';
5
+ import { AccordionCell } from './AccordionCell.js';
6
+ import { useResponsiveTable, responsiveTableStore, responsiveTableActions } from '../store/index.js';
7
+ import { AccordionItem } from '@apia/components';
8
+
9
+ const NoMemoAccordionElement = ({ row, rowIndex }) => {
10
+ const { name } = useResponsiveTableContext();
11
+ const indexColumns = useResponsiveTable((global) => {
12
+ const tableState = global.responsiveTableSlice[name];
13
+ return tableState?.accordionIndexColumns;
14
+ }, shallowEqual);
15
+ const columns = useResponsiveTable((global) => {
16
+ const tableState = global.responsiveTableSlice[name];
17
+ return tableState?.columns;
18
+ }, shallowEqual);
19
+ const title = React.useMemo(() => {
20
+ if (row.title)
21
+ return row.title;
22
+ if (Array.isArray(indexColumns))
23
+ return indexColumns.map(
24
+ (current) => (
25
+ // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
26
+ row.cells[current.index].title || row.cells[current.index].children
27
+ )
28
+ ).join(" | ");
29
+ return row.cells[0].title ?? row.cells[0].children;
30
+ }, [indexColumns, row.cells, row.title]);
31
+ const isSelected = useResponsiveTable(
32
+ (global) => global.responsiveTableSlice[name].allowSelection !== false ? global.responsiveTableSlice[name].selectedRows.includes(rowIndex) : void 0
33
+ );
34
+ const isFocused = useResponsiveTable(
35
+ (global) => global.responsiveTableSlice[name].focusedRow === rowIndex
36
+ );
37
+ const buttonProps = useMemo(
38
+ () => ({
39
+ title,
40
+ ariaLabel: title,
41
+ label: title,
42
+ checked: isSelected,
43
+ onChange: (isChecked) => {
44
+ const isMultiple = responsiveTableStore.getState().responsiveTableSlice[name].isMultiple;
45
+ responsiveTableStore.dispatch(
46
+ responsiveTableActions.update({
47
+ tableName: name,
48
+ selectedRows: isMultiple ? isChecked ? [
49
+ ...responsiveTableStore.getState().responsiveTableSlice[name].selectedRows,
50
+ rowIndex
51
+ ] : responsiveTableStore.getState().responsiveTableSlice[name].selectedRows.filter(
52
+ (current) => current !== rowIndex
53
+ ) : [rowIndex]
54
+ })
55
+ );
56
+ },
57
+ tabIndex: isFocused ? 0 : -1,
58
+ rightButtons: row.accordionButtonProps?.rightButtons,
59
+ onUserPressEnter: row.accordionButtonProps?.onUserPressEnter,
60
+ domButtonProps: {
61
+ buttonSx: {
62
+ "&.accordion__item__button .accordion__item__button__label": {
63
+ color: row.color
64
+ }
65
+ }
66
+ }
67
+ }),
68
+ [
69
+ isFocused,
70
+ isSelected,
71
+ name,
72
+ row.accordionButtonProps?.onUserPressEnter,
73
+ row.accordionButtonProps?.rightButtons,
74
+ row.color,
75
+ rowIndex,
76
+ title
77
+ ]
78
+ );
79
+ if (!Array.isArray(indexColumns) || !columns)
80
+ return null;
81
+ return /* @__PURE__ */ jsxs(AccordionItem, { id: row.id, buttonProps, children: [
82
+ columns.map((currentColumn, columnIndex) => {
83
+ const Renderer = row.cells[columnIndex].AccordionRenderer ?? currentColumn.AccordionRenderer ?? AccordionCell;
84
+ return currentColumn.hideFromAccordion || currentColumn.showAsAdditional ? null : /* @__PURE__ */ jsx(
85
+ Renderer,
86
+ {
87
+ cell: row.cells[columnIndex],
88
+ column: currentColumn,
89
+ columnIndex,
90
+ row,
91
+ rowIndex
92
+ },
93
+ currentColumn.name
94
+ );
95
+ }),
96
+ columns.filter((current) => !!current.showAsAdditional).map((currentColumn, columnIndex) => {
97
+ const Renderer = row.cells[columnIndex].AccordionRenderer ?? currentColumn.AccordionRenderer ?? AccordionCell;
98
+ return currentColumn.hideFromAccordion ? null : /* @__PURE__ */ jsx(
99
+ Renderer,
100
+ {
101
+ cell: row.cells[columnIndex],
102
+ column: currentColumn,
103
+ columnIndex,
104
+ row,
105
+ rowIndex
106
+ },
107
+ currentColumn.name
108
+ );
109
+ })
110
+ ] });
111
+ };
112
+ const AccordionElement = memo(NoMemoAccordionElement);
113
+
114
+ export { AccordionElement };
115
+ //# sourceMappingURL=AccordionElement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccordionElement.js","sources":["../../src/renderers/AccordionElement.tsx"],"sourcesContent":["import React, { memo, useMemo } from 'react';\r\nimport { shallowEqual } from 'react-redux';\r\nimport { useResponsiveTableContext } from '../ResponsiveTableContext';\r\nimport { TResponsiveTableRow } from '../types';\r\nimport { AccordionCell } from './AccordionCell';\r\nimport {\r\n responsiveTableActions,\r\n responsiveTableStore,\r\n useResponsiveTable,\r\n} from '../store';\r\nimport { AccordionItem, IAccordionItemButton } from '@apia/components';\r\n\r\nexport interface IAccordionElement {\r\n row: TResponsiveTableRow;\r\n rowIndex: number;\r\n}\r\n\r\nconst NoMemoAccordionElement = ({ row, rowIndex }: IAccordionElement) => {\r\n const { name } = useResponsiveTableContext();\r\n\r\n const indexColumns = useResponsiveTable((global) => {\r\n const tableState = global.responsiveTableSlice[name];\r\n return tableState?.accordionIndexColumns;\r\n }, shallowEqual);\r\n const columns = useResponsiveTable((global) => {\r\n const tableState = global.responsiveTableSlice[name];\r\n return tableState?.columns;\r\n }, shallowEqual);\r\n\r\n const title = React.useMemo(() => {\r\n if (row.title) return row.title;\r\n if (Array.isArray(indexColumns))\r\n return indexColumns\r\n .map(\r\n (current) =>\r\n // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing\r\n row.cells[current.index].title ||\r\n (row.cells[current.index].children as string),\r\n )\r\n .join(' | ');\r\n return row.cells[0].title ?? (row.cells[0].children as string);\r\n }, [indexColumns, row.cells, row.title]);\r\n const isSelected = useResponsiveTable((global) =>\r\n global.responsiveTableSlice[name].allowSelection !== false\r\n ? global.responsiveTableSlice[name].selectedRows.includes(rowIndex)\r\n : undefined,\r\n );\r\n const isFocused = useResponsiveTable(\r\n (global) => global.responsiveTableSlice[name].focusedRow === rowIndex,\r\n );\r\n const buttonProps = useMemo<IAccordionItemButton>(\r\n () => ({\r\n title,\r\n ariaLabel: title,\r\n label: title,\r\n checked: isSelected,\r\n onChange: (isChecked: boolean) => {\r\n const isMultiple =\r\n responsiveTableStore.getState().responsiveTableSlice[name].isMultiple;\r\n responsiveTableStore.dispatch(\r\n responsiveTableActions.update({\r\n tableName: name,\r\n selectedRows: isMultiple\r\n ? isChecked\r\n ? [\r\n ...responsiveTableStore.getState().responsiveTableSlice[\r\n name\r\n ].selectedRows,\r\n rowIndex,\r\n ]\r\n : responsiveTableStore\r\n .getState()\r\n .responsiveTableSlice[name].selectedRows.filter(\r\n (current) => current !== rowIndex,\r\n )\r\n : [rowIndex],\r\n }),\r\n );\r\n },\r\n tabIndex: isFocused ? 0 : -1,\r\n rightButtons: row.accordionButtonProps?.rightButtons,\r\n onUserPressEnter: row.accordionButtonProps?.onUserPressEnter,\r\n domButtonProps: {\r\n buttonSx: {\r\n '&.accordion__item__button .accordion__item__button__label': {\r\n color: row.color,\r\n },\r\n },\r\n },\r\n }),\r\n [\r\n isFocused,\r\n isSelected,\r\n name,\r\n row.accordionButtonProps?.onUserPressEnter,\r\n row.accordionButtonProps?.rightButtons,\r\n row.color,\r\n rowIndex,\r\n title,\r\n ],\r\n );\r\n\r\n if (!Array.isArray(indexColumns) || !columns) return null;\r\n\r\n return (\r\n <AccordionItem id={row.id} buttonProps={buttonProps}>\r\n {columns.map((currentColumn, columnIndex) => {\r\n const Renderer =\r\n row.cells[columnIndex].AccordionRenderer ??\r\n currentColumn.AccordionRenderer ??\r\n AccordionCell;\r\n\r\n return currentColumn.hideFromAccordion ||\r\n currentColumn.showAsAdditional ? null : (\r\n <Renderer\r\n cell={row.cells[columnIndex]}\r\n column={currentColumn}\r\n columnIndex={columnIndex}\r\n key={currentColumn.name}\r\n row={row}\r\n rowIndex={rowIndex}\r\n />\r\n );\r\n })}\r\n\r\n {columns\r\n .filter((current) => !!current.showAsAdditional)\r\n .map((currentColumn, columnIndex) => {\r\n const Renderer =\r\n row.cells[columnIndex].AccordionRenderer ??\r\n currentColumn.AccordionRenderer ??\r\n AccordionCell;\r\n\r\n return currentColumn.hideFromAccordion ? null : (\r\n <Renderer\r\n cell={row.cells[columnIndex]}\r\n column={currentColumn}\r\n columnIndex={columnIndex}\r\n key={currentColumn.name}\r\n row={row}\r\n rowIndex={rowIndex}\r\n />\r\n );\r\n })}\r\n </AccordionItem>\r\n );\r\n};\r\n\r\nexport const AccordionElement = memo(NoMemoAccordionElement);\r\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { TAccordionCellRenderer } from './AccordionCell.js';
2
+
3
+ declare const AccordionHTMLCellRenderer: TAccordionCellRenderer<{
4
+ html: string;
5
+ }>;
6
+
7
+ export { AccordionHTMLCellRenderer };
8
+ //# sourceMappingURL=AccordionHTMLCellRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccordionHTMLCellRenderer.d.ts","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,37 @@
1
+ import { jsx } from '@apia/theme/jsx-runtime';
2
+ import React from 'react';
3
+ import { Box } from '@apia/theme';
4
+
5
+ const NoMemoAccordionHTMLCellRenderer = React.forwardRef(
6
+ ({
7
+ cell: { children, Renderer, rendererProps, AccordionRenderer, ...cell },
8
+ column,
9
+ row,
10
+ ...props
11
+ }, currentRef) => (
12
+ /**
13
+ * Aca falta el title de la columna
14
+ */
15
+ /* @__PURE__ */ jsx(
16
+ Box,
17
+ {
18
+ ref: currentRef,
19
+ ...props,
20
+ ...cell,
21
+ className: "accordion__cell__renderer",
22
+ dangerouslySetInnerHTML: {
23
+ __html: String(rendererProps?.html ?? children ?? "").replaceAll(
24
+ /<TOK(\d+)/g,
25
+ "&lt;TOK$1"
26
+ )
27
+ },
28
+ as: "span"
29
+ }
30
+ )
31
+ )
32
+ );
33
+ NoMemoAccordionHTMLCellRenderer.displayName = "AccordionHTMLCellRenderer";
34
+ const AccordionHTMLCellRenderer = NoMemoAccordionHTMLCellRenderer;
35
+
36
+ export { AccordionHTMLCellRenderer };
37
+ //# sourceMappingURL=AccordionHTMLCellRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccordionHTMLCellRenderer.js","sources":["../../src/renderers/AccordionHTMLCellRenderer.tsx"],"sourcesContent":["import React from 'react';\r\nimport { Box } from '@apia/theme';\r\nimport { TResponsiveTableCellRendererProps } from '../types';\r\nimport { TAccordionCellRenderer } from './AccordionCell';\r\n\r\nconst NoMemoAccordionHTMLCellRenderer: TAccordionCellRenderer<{\r\n html: string;\r\n}> = React.forwardRef<\r\n HTMLSpanElement,\r\n TResponsiveTableCellRendererProps<{ html: string }>\r\n>(\r\n (\r\n {\r\n cell: { children, Renderer, rendererProps, AccordionRenderer, ...cell },\r\n column,\r\n row,\r\n ...props\r\n },\r\n currentRef,\r\n ) => (\r\n /**\r\n * Aca falta el title de la columna\r\n */\r\n <Box\r\n ref={currentRef as React.RefObject<HTMLTableCellElement>}\r\n {...props}\r\n {...cell}\r\n className=\"accordion__cell__renderer\"\r\n dangerouslySetInnerHTML={{\r\n __html: String(rendererProps?.html ?? children ?? '').replaceAll(\r\n /<TOK(\\d+)/g,\r\n '&lt;TOK$1',\r\n ),\r\n }}\r\n as=\"span\"\r\n />\r\n ),\r\n);\r\n\r\nNoMemoAccordionHTMLCellRenderer.displayName = 'AccordionHTMLCellRenderer';\r\n\r\nexport const AccordionHTMLCellRenderer = NoMemoAccordionHTMLCellRenderer;\r\n"],"names":[],"mappings":";;;;AAKA,MAAM,kCAED,KAAM,CAAA,UAAA;AAAA,EAIT,CACE;AAAA,IACE,MAAM,EAAE,QAAA,EAAU,UAAU,aAAe,EAAA,iBAAA,EAAmB,GAAG,IAAK,EAAA;AAAA,IACtE,MAAA;AAAA,IACA,GAAA;AAAA,IACA,GAAG,KAAA;AAAA,GAEL,EAAA,UAAA;AAAA;AAAA;AAAA;AAAA,oBAKA,GAAA;AAAA,MAAC,GAAA;AAAA,MAAA;AAAA,QACC,GAAK,EAAA,UAAA;AAAA,QACJ,GAAG,KAAA;AAAA,QACH,GAAG,IAAA;AAAA,QACJ,SAAU,EAAA,2BAAA;AAAA,QACV,uBAAyB,EAAA;AAAA,UACvB,QAAQ,MAAO,CAAA,aAAA,EAAe,IAAQ,IAAA,QAAA,IAAY,EAAE,CAAE,CAAA,UAAA;AAAA,YACpD,YAAA;AAAA,YACA,WAAA;AAAA,WACF;AAAA,SACF;AAAA,QACA,EAAG,EAAA,MAAA;AAAA,OAAA;AAAA,KACL;AAAA,GAAA;AAEJ,CAAA,CAAA;AAEA,+BAAA,CAAgC,WAAc,GAAA,2BAAA,CAAA;AAEvC,MAAM,yBAA4B,GAAA;;;;"}
@@ -0,0 +1,6 @@
1
+ import React__default from 'react';
2
+
3
+ declare const AccordionRenderer: React__default.MemoExoticComponent<() => React__default.JSX.Element>;
4
+
5
+ export { AccordionRenderer };
6
+ //# sourceMappingURL=AccordionRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccordionRenderer.d.ts","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,76 @@
1
+ import { jsxs, jsx } from '@apia/theme/jsx-runtime';
2
+ import React from 'react';
3
+ import { shallowEqual } from 'react-redux';
4
+ import { useResponsiveTableContext } from '../ResponsiveTableContext.js';
5
+ import { AccordionElement } from './AccordionElement.js';
6
+ import { NoRegistersRenderer } from './NoRegistersRenderer.js';
7
+ import { useResponsiveTable, responsiveTableStore, responsiveTableActions } from '../store/index.js';
8
+ import { Accordion } from '@apia/components';
9
+
10
+ const NoMemoAccordionRenderer = () => {
11
+ const { name } = useResponsiveTableContext();
12
+ const { columns, rows } = useResponsiveTable((global) => {
13
+ const tableState = global.responsiveTableSlice[name];
14
+ return {
15
+ columns: tableState?.columns,
16
+ rows: tableState?.rows
17
+ };
18
+ }, shallowEqual);
19
+ React.useEffect(() => {
20
+ if (columns && rows) {
21
+ const markedAsTitleColumns = [];
22
+ columns.forEach((column, index) => {
23
+ if (column.showInAccordionTitle)
24
+ markedAsTitleColumns.push({ column, index });
25
+ });
26
+ if (markedAsTitleColumns.length > 0) {
27
+ responsiveTableStore.dispatch(
28
+ responsiveTableActions.update({
29
+ tableName: name,
30
+ accordionIndexColumns: markedAsTitleColumns
31
+ })
32
+ );
33
+ } else {
34
+ const columnsLength = columns.length;
35
+ let indexColumn = null;
36
+ let currentIndex = 0;
37
+ while (!indexColumn && currentIndex < columns.length) {
38
+ let isAnyEmptyRow = false;
39
+ for (const row of rows) {
40
+ if (!row.cells[currentIndex].children) {
41
+ isAnyEmptyRow = true;
42
+ break;
43
+ }
44
+ }
45
+ if (!isAnyEmptyRow && columns[currentIndex]) {
46
+ indexColumn = columns[currentIndex];
47
+ } else {
48
+ currentIndex += 1;
49
+ if (currentIndex === columnsLength)
50
+ break;
51
+ }
52
+ }
53
+ if (!indexColumn) {
54
+ [indexColumn] = columns;
55
+ currentIndex = 0;
56
+ }
57
+ responsiveTableStore.dispatch(
58
+ responsiveTableActions.update({
59
+ tableName: name,
60
+ accordionIndexColumns: [
61
+ { column: indexColumn, index: currentIndex }
62
+ ]
63
+ })
64
+ );
65
+ }
66
+ }
67
+ }, [columns, name, rows]);
68
+ return /* @__PURE__ */ jsxs(Accordion, { children: [
69
+ !rows || rows.length === 0 && /* @__PURE__ */ jsx(NoRegistersRenderer, {}),
70
+ rows?.map((current, rowIndex) => /* @__PURE__ */ jsx(AccordionElement, { row: current, rowIndex }, current.id))
71
+ ] });
72
+ };
73
+ const AccordionRenderer = React.memo(NoMemoAccordionRenderer);
74
+
75
+ export { AccordionRenderer };
76
+ //# sourceMappingURL=AccordionRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccordionRenderer.js","sources":["../../src/renderers/AccordionRenderer.tsx"],"sourcesContent":["import React from 'react';\r\nimport { shallowEqual } from 'react-redux';\r\nimport { useResponsiveTableContext } from '../ResponsiveTableContext';\r\nimport { TResponsiveTableColumn } from '../types';\r\nimport { AccordionElement } from './AccordionElement';\r\nimport { NoRegistersRenderer } from './NoRegistersRenderer';\r\nimport {\r\n responsiveTableActions,\r\n useResponsiveTable,\r\n responsiveTableStore,\r\n} from '../store';\r\nimport { TResponsiveTableIndexColumns } from '../store/types';\r\nimport { Accordion } from '@apia/components';\r\n\r\nconst NoMemoAccordionRenderer = () => {\r\n const { name } = useResponsiveTableContext();\r\n\r\n const { columns, rows } = useResponsiveTable((global) => {\r\n const tableState = global.responsiveTableSlice[name];\r\n return {\r\n columns: tableState?.columns,\r\n rows: tableState?.rows,\r\n };\r\n }, shallowEqual);\r\n\r\n React.useEffect(() => {\r\n /**\r\n * Método para seleccionar qué columnas se utilizarán\r\n * como cabezal en cada fila.\r\n *\r\n * - Si existe al menos una columna marcada con showInAccordionTitle,\r\n * todas las columnas que estén marcadas con esta propiedad serán\r\n * mostradas como parte del título.\r\n *\r\n * - Si no existe ninguna, se busca cuál es la primera columna\r\n * que no tiene ninguna entrada vacía y se utiliza como título\r\n * del acordión.\r\n *\r\n * - Si ninguna columna no tiene ninguna fila vacía, entonces se\r\n * utiliza la primera columna.\r\n */\r\n\r\n if (columns && rows) {\r\n /**\r\n * Buscar columnas marcadas\r\n */\r\n const markedAsTitleColumns: TResponsiveTableIndexColumns = [];\r\n columns.forEach((column, index) => {\r\n if (column.showInAccordionTitle)\r\n markedAsTitleColumns.push({ column, index });\r\n });\r\n if (markedAsTitleColumns.length > 0) {\r\n responsiveTableStore.dispatch(\r\n responsiveTableActions.update({\r\n tableName: name,\r\n accordionIndexColumns: markedAsTitleColumns,\r\n }),\r\n );\r\n } else {\r\n /**\r\n * No se encontró ninguna columna marcada, se busca la primera sin\r\n * entradas vacías.\r\n */\r\n const columnsLength = columns.length;\r\n let indexColumn: TResponsiveTableColumn | null = null;\r\n let currentIndex = 0;\r\n\r\n while (!indexColumn && currentIndex < columns.length) {\r\n let isAnyEmptyRow = false;\r\n // eslint-disable-next-line no-restricted-syntax\r\n for (const row of rows) {\r\n if (!row.cells[currentIndex].children) {\r\n isAnyEmptyRow = true;\r\n break;\r\n }\r\n }\r\n if (!isAnyEmptyRow && columns[currentIndex]) {\r\n indexColumn = columns[currentIndex];\r\n } else {\r\n currentIndex += 1;\r\n if (currentIndex === columnsLength) break;\r\n }\r\n }\r\n if (!indexColumn) {\r\n /**\r\n * No hay ninguna sin ninguna entrada vacía,\r\n * se usa la primera columna.\r\n */\r\n [indexColumn] = columns;\r\n currentIndex = 0;\r\n }\r\n responsiveTableStore.dispatch(\r\n responsiveTableActions.update({\r\n tableName: name,\r\n accordionIndexColumns: [\r\n { column: indexColumn, index: currentIndex },\r\n ],\r\n }),\r\n );\r\n }\r\n }\r\n }, [columns, name, rows]);\r\n\r\n return (\r\n <Accordion>\r\n {!rows || (rows.length === 0 && <NoRegistersRenderer />)}\r\n {rows?.map((current, rowIndex) => (\r\n <AccordionElement row={current} rowIndex={rowIndex} key={current.id} />\r\n ))}\r\n </Accordion>\r\n );\r\n};\r\n\r\nexport const AccordionRenderer = React.memo(NoMemoAccordionRenderer);\r\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import React__default from 'react';
2
+ import { TResponsiveTableCellRendererProps } from '../types.js';
3
+
4
+ declare const AdditionalColumnDefaultRenderer: React__default.MemoExoticComponent<({ column, cell, }: TResponsiveTableCellRendererProps) => React__default.JSX.Element>;
5
+
6
+ export { AdditionalColumnDefaultRenderer };
7
+ //# sourceMappingURL=AdditionalColumnDefaultRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AdditionalColumnDefaultRenderer.d.ts","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,31 @@
1
+ import { jsxs } from '@apia/theme/jsx-runtime';
2
+ import React from 'react';
3
+ import { Box } from '@apia/theme';
4
+
5
+ const NoMemoAdditionalColumnDefaultRenderer = ({
6
+ column,
7
+ cell
8
+ }) => {
9
+ return /* @__PURE__ */ jsxs(
10
+ Box,
11
+ {
12
+ className: `${cell.className ?? ""} responsiveTable__additionalInfoItem`,
13
+ id: cell.id,
14
+ title: cell.title,
15
+ children: [
16
+ /* @__PURE__ */ jsxs(Box, { as: "strong", children: [
17
+ column.name,
18
+ ":"
19
+ ] }),
20
+ " ",
21
+ cell.children
22
+ ]
23
+ }
24
+ );
25
+ };
26
+ const AdditionalColumnDefaultRenderer = React.memo(
27
+ NoMemoAdditionalColumnDefaultRenderer
28
+ );
29
+
30
+ export { AdditionalColumnDefaultRenderer };
31
+ //# sourceMappingURL=AdditionalColumnDefaultRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AdditionalColumnDefaultRenderer.js","sources":["../../src/renderers/AdditionalColumnDefaultRenderer.tsx"],"sourcesContent":["import React from 'react';\r\nimport { Box } from '@apia/theme';\r\nimport { TResponsiveTableCellRendererProps } from '../types';\r\n\r\nconst NoMemoAdditionalColumnDefaultRenderer = ({\r\n column,\r\n cell,\r\n}: TResponsiveTableCellRendererProps) => {\r\n return (\r\n <Box\r\n className={`${cell.className ?? ''} responsiveTable__additionalInfoItem`}\r\n id={cell.id}\r\n title={cell.title}\r\n >\r\n <Box as=\"strong\">{column.name}:</Box> {cell.children}\r\n </Box>\r\n );\r\n};\r\n\r\nexport const AdditionalColumnDefaultRenderer = React.memo(\r\n NoMemoAdditionalColumnDefaultRenderer,\r\n);\r\n"],"names":[],"mappings":";;;;AAIA,MAAM,wCAAwC,CAAC;AAAA,EAC7C,MAAA;AAAA,EACA,IAAA;AACF,CAAyC,KAAA;AACvC,EACE,uBAAA,IAAA;AAAA,IAAC,GAAA;AAAA,IAAA;AAAA,MACC,SAAW,EAAA,CAAA,EAAG,IAAK,CAAA,SAAA,IAAa,EAAE,CAAA,oCAAA,CAAA;AAAA,MAClC,IAAI,IAAK,CAAA,EAAA;AAAA,MACT,OAAO,IAAK,CAAA,KAAA;AAAA,MAEZ,QAAA,EAAA;AAAA,wBAAC,IAAA,CAAA,GAAA,EAAA,EAAI,IAAG,QAAU,EAAA,QAAA,EAAA;AAAA,UAAO,MAAA,CAAA,IAAA;AAAA,UAAK,GAAA;AAAA,SAAC,EAAA,CAAA;AAAA,QAAM,GAAA;AAAA,QAAE,IAAK,CAAA,QAAA;AAAA,OAAA;AAAA,KAAA;AAAA,GAC9C,CAAA;AAEJ,CAAA,CAAA;AAEO,MAAM,kCAAkC,KAAM,CAAA,IAAA;AAAA,EACnD,qCAAA;AACF;;;;"}
@@ -0,0 +1,11 @@
1
+ import { TResponsiveTableCell, TResponsiveTableColumn, TResponsiveTableRow } from '../types.js';
2
+ import React__default from 'react';
3
+
4
+ declare const DefaultCellRenderer: React__default.ForwardRefExoticComponent<{
5
+ cell: TResponsiveTableCell<Record<string, unknown>>;
6
+ column: TResponsiveTableColumn;
7
+ row: TResponsiveTableRow<Record<string, unknown>>;
8
+ } & React__default.AllHTMLAttributes<HTMLTableCellElement> & React__default.RefAttributes<HTMLTableCellElement>>;
9
+
10
+ export { DefaultCellRenderer };
11
+ //# sourceMappingURL=DefaultCellRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultCellRenderer.d.ts","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,49 @@
1
+ import { jsx } from '@apia/theme/jsx-runtime';
2
+ import React, { useMemo } from 'react';
3
+ import { Box } from '@apia/theme';
4
+ import { AutoEllipsis } from '@apia/components';
5
+
6
+ const NoMemoDefaultCellRenderer = React.forwardRef(
7
+ ({
8
+ cell: { Renderer, rendererProps, AccordionRenderer, ariaLabel, ...cell },
9
+ column,
10
+ row,
11
+ ...props
12
+ }, currentRef) => /* @__PURE__ */ jsx(
13
+ Box,
14
+ {
15
+ as: "td",
16
+ sx: useMemo(
17
+ () => ({
18
+ "&.colored": {
19
+ background: cell.background,
20
+ color: cell.color,
21
+ fontWeight: "bold"
22
+ }
23
+ }),
24
+ [cell.background, cell.color]
25
+ ),
26
+ ref: currentRef,
27
+ ...props,
28
+ ...cell,
29
+ "aria-label": ariaLabel,
30
+ children: /* @__PURE__ */ jsx(
31
+ AutoEllipsis,
32
+ {
33
+ overrideStyles: (el) => {
34
+ const td = el.closest("td");
35
+ return {
36
+ width: window.getComputedStyle(td).width
37
+ };
38
+ },
39
+ children: props.children ?? cell.children
40
+ }
41
+ )
42
+ }
43
+ )
44
+ );
45
+ NoMemoDefaultCellRenderer.displayName = "DefaultCellRenderer";
46
+ const DefaultCellRenderer = NoMemoDefaultCellRenderer;
47
+
48
+ export { DefaultCellRenderer };
49
+ //# sourceMappingURL=DefaultCellRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultCellRenderer.js","sources":["../../src/renderers/DefaultCellRenderer.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\r\nimport React, { useMemo } from 'react';\r\nimport { Box } from '@apia/theme';\r\nimport { TResponsiveTableCellRendererProps } from '../types';\r\nimport { AutoEllipsis } from '@apia/components';\r\n\r\nconst NoMemoDefaultCellRenderer = React.forwardRef<\r\n HTMLTableCellElement,\r\n TResponsiveTableCellRendererProps\r\n>(\r\n (\r\n {\r\n cell: { Renderer, rendererProps, AccordionRenderer, ariaLabel, ...cell },\r\n column,\r\n row,\r\n ...props\r\n },\r\n currentRef,\r\n ) => (\r\n <Box\r\n as={'td' as any}\r\n sx={useMemo(\r\n () => ({\r\n '&.colored': {\r\n background: cell.background,\r\n color: cell.color,\r\n fontWeight: 'bold',\r\n },\r\n }),\r\n [cell.background, cell.color],\r\n )}\r\n ref={currentRef as React.RefObject<HTMLTableCellElement>}\r\n {...props}\r\n {...cell}\r\n aria-label={ariaLabel as string}\r\n >\r\n <AutoEllipsis\r\n overrideStyles={(el) => {\r\n const td = el.closest('td') as HTMLElement;\r\n\r\n return {\r\n width: window.getComputedStyle(td).width,\r\n };\r\n }}\r\n >\r\n {props.children ?? cell.children}\r\n </AutoEllipsis>\r\n </Box>\r\n ),\r\n);\r\nNoMemoDefaultCellRenderer.displayName = 'DefaultCellRenderer';\r\nexport const DefaultCellRenderer = NoMemoDefaultCellRenderer;\r\n"],"names":[],"mappings":";;;;;AAMA,MAAM,4BAA4B,KAAM,CAAA,UAAA;AAAA,EAItC,CACE;AAAA,IACE,MAAM,EAAE,QAAA,EAAU,eAAe,iBAAmB,EAAA,SAAA,EAAW,GAAG,IAAK,EAAA;AAAA,IACvE,MAAA;AAAA,IACA,GAAA;AAAA,IACA,GAAG,KAAA;AAAA,KAEL,UAEA,qBAAA,GAAA;AAAA,IAAC,GAAA;AAAA,IAAA;AAAA,MACC,EAAI,EAAA,IAAA;AAAA,MACJ,EAAI,EAAA,OAAA;AAAA,QACF,OAAO;AAAA,UACL,WAAa,EAAA;AAAA,YACX,YAAY,IAAK,CAAA,UAAA;AAAA,YACjB,OAAO,IAAK,CAAA,KAAA;AAAA,YACZ,UAAY,EAAA,MAAA;AAAA,WACd;AAAA,SACF,CAAA;AAAA,QACA,CAAC,IAAA,CAAK,UAAY,EAAA,IAAA,CAAK,KAAK,CAAA;AAAA,OAC9B;AAAA,MACA,GAAK,EAAA,UAAA;AAAA,MACJ,GAAG,KAAA;AAAA,MACH,GAAG,IAAA;AAAA,MACJ,YAAY,EAAA,SAAA;AAAA,MAEZ,QAAA,kBAAA,GAAA;AAAA,QAAC,YAAA;AAAA,QAAA;AAAA,UACC,cAAA,EAAgB,CAAC,EAAO,KAAA;AACtB,YAAM,MAAA,EAAA,GAAK,EAAG,CAAA,OAAA,CAAQ,IAAI,CAAA,CAAA;AAE1B,YAAO,OAAA;AAAA,cACL,KAAO,EAAA,MAAA,CAAO,gBAAiB,CAAA,EAAE,CAAE,CAAA,KAAA;AAAA,aACrC,CAAA;AAAA,WACF;AAAA,UAEC,QAAA,EAAA,KAAA,CAAM,YAAY,IAAK,CAAA,QAAA;AAAA,SAAA;AAAA,OAC1B;AAAA,KAAA;AAAA,GACF;AAEJ,CAAA,CAAA;AACA,yBAAA,CAA0B,WAAc,GAAA,qBAAA,CAAA;AACjC,MAAM,mBAAsB,GAAA;;;;"}
@@ -0,0 +1,6 @@
1
+ import { TResponsiveTableRowRenderer } from '../types.js';
2
+
3
+ declare const DefaultRowRenderer: TResponsiveTableRowRenderer;
4
+
5
+ export { DefaultRowRenderer };
6
+ //# sourceMappingURL=DefaultRowRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultRowRenderer.d.ts","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,26 @@
1
+ import { jsx } from '@apia/theme/jsx-runtime';
2
+ import React, { useMemo } from 'react';
3
+ import { Box } from '@apia/theme';
4
+
5
+ const NoMemoDefaultRowRenderer = React.forwardRef(({ row, rowIndex, ...props }, currentRef) => /* @__PURE__ */ jsx(
6
+ Box,
7
+ {
8
+ as: "tr",
9
+ sx: useMemo(
10
+ () => ({
11
+ "&.colored, & > *": {
12
+ color: row.color,
13
+ background: row.background
14
+ }
15
+ }),
16
+ [row.background, row.color]
17
+ ),
18
+ ref: currentRef,
19
+ ...props
20
+ }
21
+ ));
22
+ NoMemoDefaultRowRenderer.displayName = "DefaultRowRenderer";
23
+ const DefaultRowRenderer = NoMemoDefaultRowRenderer;
24
+
25
+ export { DefaultRowRenderer };
26
+ //# sourceMappingURL=DefaultRowRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultRowRenderer.js","sources":["../../src/renderers/DefaultRowRenderer.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\r\nimport React, { useMemo } from 'react';\r\nimport { Box } from '@apia/theme';\r\nimport {\r\n TResponsiveTableRowRenderer,\r\n TResponsiveTableRowRendererProps,\r\n} from '../types';\r\n\r\nconst NoMemoDefaultRowRenderer: TResponsiveTableRowRenderer = React.forwardRef<\r\n HTMLTableRowElement,\r\n TResponsiveTableRowRendererProps\r\n>(({ row, rowIndex, ...props }, currentRef) => (\r\n <Box\r\n as={'tr' as any}\r\n sx={useMemo(\r\n () => ({\r\n '&.colored, & > *': {\r\n color: row.color,\r\n background: row.background,\r\n },\r\n }),\r\n [row.background, row.color],\r\n )}\r\n ref={currentRef as React.RefObject<HTMLTableRowElement>}\r\n {...props}\r\n />\r\n));\r\n\r\nNoMemoDefaultRowRenderer.displayName = 'DefaultRowRenderer';\r\n\r\nexport const DefaultRowRenderer = NoMemoDefaultRowRenderer;\r\n"],"names":[],"mappings":";;;;AAQA,MAAM,wBAAA,GAAwD,KAAM,CAAA,UAAA,CAGlE,CAAC,EAAE,KAAK,QAAU,EAAA,GAAG,KAAM,EAAA,EAAG,UAC9B,qBAAA,GAAA;AAAA,EAAC,GAAA;AAAA,EAAA;AAAA,IACC,EAAI,EAAA,IAAA;AAAA,IACJ,EAAI,EAAA,OAAA;AAAA,MACF,OAAO;AAAA,QACL,kBAAoB,EAAA;AAAA,UAClB,OAAO,GAAI,CAAA,KAAA;AAAA,UACX,YAAY,GAAI,CAAA,UAAA;AAAA,SAClB;AAAA,OACF,CAAA;AAAA,MACA,CAAC,GAAA,CAAI,UAAY,EAAA,GAAA,CAAI,KAAK,CAAA;AAAA,KAC5B;AAAA,IACA,GAAK,EAAA,UAAA;AAAA,IACJ,GAAG,KAAA;AAAA,GAAA;AACN,CACD,CAAA,CAAA;AAED,wBAAA,CAAyB,WAAc,GAAA,oBAAA,CAAA;AAEhC,MAAM,kBAAqB,GAAA;;;;"}
@@ -0,0 +1,10 @@
1
+ import { TResponsiveTableCellRenderer } from '../types.js';
2
+
3
+ type TDocNameCellRendererProps = {
4
+ docName: string;
5
+ docUrl: string;
6
+ };
7
+ declare const DocNameCellRenderer: TResponsiveTableCellRenderer<TDocNameCellRendererProps>;
8
+
9
+ export { DocNameCellRenderer, type TDocNameCellRendererProps };
10
+ //# sourceMappingURL=DocNameCellRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DocNameCellRenderer.d.ts","sources":[],"sourcesContent":[],"names":[],"mappings":""}