@ltht-react/table 2.0.149 → 2.0.152
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.
- package/lib/molecules/table-styled-components.d.ts +1 -0
- package/lib/molecules/table-styled-components.js +12 -3
- package/lib/molecules/table-styled-components.js.map +1 -1
- package/lib/molecules/table.d.ts +1 -0
- package/lib/molecules/table.js +9 -9
- package/lib/molecules/table.js.map +1 -1
- package/package.json +8 -8
- package/src/molecules/table-styled-components.tsx +19 -3
- package/src/molecules/table.tsx +8 -1
|
@@ -76,5 +76,6 @@ interface IScrollableContainer {
|
|
|
76
76
|
tableHeaderAxis: Axis;
|
|
77
77
|
maxHeight?: string;
|
|
78
78
|
maxWidth?: string;
|
|
79
|
+
isFlex: boolean;
|
|
79
80
|
}
|
|
80
81
|
export { StyledTable, StyledTableHeader, StyledTableRow, StyledTableData, PaginationContainer, StyledPaginationPageInput, StyledPaginationPageSelect, StyledHideOnMobile, StyledPaginationButton, ScrollableContainer, StyledPaginationButtonDiv, StyledPageCountDiv, StyledStandardButton, StyledSpinnerIcon, StyledNextPageButtonContainer, StyledTHead, StyledSpinnerContainer, };
|
|
@@ -34,12 +34,21 @@ exports.StyledSpinnerContainer = exports.StyledTHead = exports.StyledNextPageBut
|
|
|
34
34
|
var styles_1 = require("@ltht-react/styles");
|
|
35
35
|
var styled_1 = __importDefault(require("@emotion/styled"));
|
|
36
36
|
var icon_1 = __importStar(require("@ltht-react/icon"));
|
|
37
|
+
var setScrollableDisplay = function (tableHeaderAxis, isFlex) {
|
|
38
|
+
if (isFlex) {
|
|
39
|
+
return 'flex';
|
|
40
|
+
}
|
|
41
|
+
if (tableHeaderAxis === 'y') {
|
|
42
|
+
return 'inline-flex';
|
|
43
|
+
}
|
|
44
|
+
return 'inline-block';
|
|
45
|
+
};
|
|
37
46
|
var ScrollableContainer = styled_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n ", ";\n background-color: white;\n ", "\n border-radius: 6px;\n overflow: auto;\n &::-webkit-scrollbar {\n width: 7px;\n height: 7px;\n border: 0;\n }\n &::-webkit-scrollbar-thumb {\n background: ", ";\n border-radius: 10px;\n }\n"], ["\n ", ";\n background-color: white;\n ", "\n border-radius: 6px;\n overflow: auto;\n &::-webkit-scrollbar {\n width: 7px;\n height: 7px;\n border: 0;\n }\n &::-webkit-scrollbar-thumb {\n background: ", ";\n border-radius: 10px;\n }\n"])), styles_1.CSS_RESET, function (_a) {
|
|
38
|
-
var tableHeaderAxis = _a.tableHeaderAxis, maxWidth = _a.maxWidth, maxHeight = _a.maxHeight;
|
|
39
|
-
return "\n display: ".concat(tableHeaderAxis
|
|
47
|
+
var tableHeaderAxis = _a.tableHeaderAxis, maxWidth = _a.maxWidth, maxHeight = _a.maxHeight, isFlex = _a.isFlex;
|
|
48
|
+
return "\n display: ".concat(setScrollableDisplay(tableHeaderAxis, isFlex), "\n ").concat(isFlex && 'flex-direction: column', "\n max-width: ").concat(maxWidth !== null && maxWidth !== void 0 ? maxWidth : '100%', ";\n max-height: ").concat(maxHeight !== null && maxHeight !== void 0 ? maxHeight : '100%', ";\n ");
|
|
40
49
|
}, styles_1.SCROLLBAR);
|
|
41
50
|
exports.ScrollableContainer = ScrollableContainer;
|
|
42
|
-
var StyledTable = styled_1.default.table(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n border-spacing:
|
|
51
|
+
var StyledTable = styled_1.default.table(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n border-spacing: 0;\n border-radius: 6px;\n"], ["\n border-spacing: 0;\n border-radius: 6px;\n"])));
|
|
43
52
|
exports.StyledTable = StyledTable;
|
|
44
53
|
var StyledTableHeader = styled_1.default.th(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n background-color: ", ";\n border: thin solid ", ";\n font-weight: bold;\n padding: 0.5rem;\n\n ", "\n"], ["\n background-color: ", ";\n border: thin solid ", ";\n font-weight: bold;\n padding: 0.5rem;\n\n ", "\n"])), styles_1.TABLE_COLOURS.HEADER, styles_1.TABLE_COLOURS.BORDER, function (_a) {
|
|
45
54
|
var stickyWidth = _a.stickyWidth;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-styled-components.js","sourceRoot":"","sources":["../../src/molecules/table-styled-components.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAU2B;AAC3B,2DAAoC;AACpC,uDAAmD;AAGnD,IAAM,mBAAmB,GAAG,gBAAM,CAAC,GAAG,sUAAsB,MACxD,EAAS,mCAET,
|
|
1
|
+
{"version":3,"file":"table-styled-components.js","sourceRoot":"","sources":["../../src/molecules/table-styled-components.tsx"],"names":[],"mappings":"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"}
|
package/lib/molecules/table.d.ts
CHANGED
package/lib/molecules/table.js
CHANGED
|
@@ -45,19 +45,19 @@ var useScrollRef_1 = __importDefault(require("./useScrollRef"));
|
|
|
45
45
|
var table_methods_1 = require("./table-methods");
|
|
46
46
|
var table_component_1 = __importStar(require("./table-component"));
|
|
47
47
|
var Table = function (_a) {
|
|
48
|
-
var tableData = _a.tableData, _b = _a.staticColumns, staticColumns = _b === void 0 ? 0 : _b, _c = _a.currentPage, currentPage = _c === void 0 ? 1 : _c, _d = _a.pageSize, pageSizeParam = _d === void 0 ? 10 : _d, _e = _a.headerAxis, headerAxis = _e === void 0 ? 'x' : _e, _f = _a.manualPagination, manualPagination = _f === void 0 ? false : _f, _g = _a.getCanNextPage, getCanNextPage = _g === void 0 ? function () { return false; } : _g, _h = _a.nextPage, nextPage = _h === void 0 ? function () { return null; } : _h, _j = _a.isFetching, isFetching = _j === void 0 ? false : _j, _k = _a.keepPreviousData, keepPreviousData = _k === void 0 ? false : _k, maxHeight = _a.maxHeight, maxWidth = _a.maxWidth, _l = _a.
|
|
48
|
+
var tableData = _a.tableData, _b = _a.staticColumns, staticColumns = _b === void 0 ? 0 : _b, _c = _a.currentPage, currentPage = _c === void 0 ? 1 : _c, _d = _a.pageSize, pageSizeParam = _d === void 0 ? 10 : _d, _e = _a.headerAxis, headerAxis = _e === void 0 ? 'x' : _e, _f = _a.manualPagination, manualPagination = _f === void 0 ? false : _f, _g = _a.getCanNextPage, getCanNextPage = _g === void 0 ? function () { return false; } : _g, _h = _a.nextPage, nextPage = _h === void 0 ? function () { return null; } : _h, _j = _a.isFetching, isFetching = _j === void 0 ? false : _j, _k = _a.keepPreviousData, keepPreviousData = _k === void 0 ? false : _k, maxHeight = _a.maxHeight, maxWidth = _a.maxWidth, _l = _a.isFlex, isFlex = _l === void 0 ? false : _l, _m = _a.enableSorting, enableSorting = _m === void 0 ? true : _m, _o = _a.sortingFunctions, sortingFunctions = _o === void 0 ? undefined : _o;
|
|
49
49
|
var scrollableDivElement = (0, react_1.useRef)(null);
|
|
50
50
|
var scrollState = (0, useScrollRef_1.default)(scrollableDivElement);
|
|
51
|
-
var
|
|
52
|
-
var
|
|
53
|
-
var
|
|
51
|
+
var _p = (0, react_1.useState)({}), expanded = _p[0], setExpanded = _p[1];
|
|
52
|
+
var _q = (0, react_1.useState)([]), sorting = _q[0], setSorting = _q[1];
|
|
53
|
+
var _r = (0, react_1.useState)({
|
|
54
54
|
pageIndex: currentPage - 1,
|
|
55
55
|
pageSize: pageSizeParam,
|
|
56
|
-
}),
|
|
56
|
+
}), _s = _r[0], pageIndex = _s.pageIndex, pageSize = _s.pageSize, setPagination = _r[1];
|
|
57
57
|
var pagination = (0, react_1.useMemo)(function () { return ({ pageIndex: pageIndex, pageSize: pageSize }); }, [pageIndex, pageSize]);
|
|
58
|
-
var
|
|
59
|
-
var
|
|
60
|
-
var
|
|
58
|
+
var _t = (0, react_1.useState)([]), data = _t[0], setData = _t[1];
|
|
59
|
+
var _u = (0, react_1.useState)([]), columns = _u[0], setColumns = _u[1];
|
|
60
|
+
var _v = (0, react_1.useState)(-1), pageCount = _v[0], setPageCount = _v[1];
|
|
61
61
|
(0, react_1.useEffect)(function () {
|
|
62
62
|
if (!manualPagination) {
|
|
63
63
|
(0, table_methods_1.handleDataUpdate)(tableData, pageIndex, pageSize, headerAxis, setColumns, setData, setPageCount);
|
|
@@ -85,7 +85,7 @@ var Table = function (_a) {
|
|
|
85
85
|
table.nextPage();
|
|
86
86
|
}
|
|
87
87
|
};
|
|
88
|
-
return ((0, jsx_runtime_1.jsxs)(table_styled_components_1.ScrollableContainer, { ref: scrollableDivElement, tableHeaderAxis: headerAxis, maxHeight: maxHeight, maxWidth: maxWidth, children: [(0, jsx_runtime_1.jsx)(table_component_1.default, { table: table, staticColumns: staticColumns, headerAxis: headerAxis }), manualPagination ? ((0, jsx_runtime_1.jsx)(table_component_1.TableSpinner, { position: headerAxis === 'x' ? 'bottom' : 'right', hidden: !isFetching })) : null, (0, jsx_runtime_1.jsx)(table_component_1.TableNavigationButton, { position: headerAxis === 'x' ? 'bottom' : 'right', hidden: isFetching || (manualPagination ? !getCanNextPage() : !table.getCanNextPage()), clickHandler: getNextPage })] }));
|
|
88
|
+
return ((0, jsx_runtime_1.jsxs)(table_styled_components_1.ScrollableContainer, { ref: scrollableDivElement, tableHeaderAxis: headerAxis, maxHeight: maxHeight, maxWidth: maxWidth, isFlex: isFlex, children: [(0, jsx_runtime_1.jsx)(table_component_1.default, { table: table, staticColumns: staticColumns, headerAxis: headerAxis }), manualPagination ? ((0, jsx_runtime_1.jsx)(table_component_1.TableSpinner, { position: headerAxis === 'x' ? 'bottom' : 'right', hidden: !isFetching })) : null, (0, jsx_runtime_1.jsx)(table_component_1.TableNavigationButton, { position: headerAxis === 'x' ? 'bottom' : 'right', hidden: isFetching || (manualPagination ? !getCanNextPage() : !table.getCanNextPage()), clickHandler: getNextPage })] }));
|
|
89
89
|
};
|
|
90
90
|
exports.default = Table;
|
|
91
91
|
//# sourceMappingURL=table.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.js","sourceRoot":"","sources":["../../src/molecules/table.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAAgE;AAChE,qDAU8B;AAE9B,qEAA+D;AAC/D,gEAAyC;AACzC,iDAA0G;AAC1G,mEAAuF;AAGvF,IAAM,KAAK,GAAe,UAAC,
|
|
1
|
+
{"version":3,"file":"table.js","sourceRoot":"","sources":["../../src/molecules/table.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ltht-react/table",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.152",
|
|
4
4
|
"description": "ltht-react Table component.",
|
|
5
5
|
"author": "LTHT",
|
|
6
6
|
"homepage": "",
|
|
@@ -28,15 +28,15 @@
|
|
|
28
28
|
"dependencies": {
|
|
29
29
|
"@emotion/react": "^11.0.0",
|
|
30
30
|
"@emotion/styled": "^11.0.0",
|
|
31
|
-
"@ltht-react/button": "^2.0.
|
|
32
|
-
"@ltht-react/icon": "^2.0.
|
|
33
|
-
"@ltht-react/menu": "^2.0.
|
|
34
|
-
"@ltht-react/styles": "^2.0.
|
|
35
|
-
"@ltht-react/types": "^2.0.
|
|
36
|
-
"@ltht-react/utils": "^2.0.
|
|
31
|
+
"@ltht-react/button": "^2.0.152",
|
|
32
|
+
"@ltht-react/icon": "^2.0.152",
|
|
33
|
+
"@ltht-react/menu": "^2.0.152",
|
|
34
|
+
"@ltht-react/styles": "^2.0.152",
|
|
35
|
+
"@ltht-react/types": "^2.0.152",
|
|
36
|
+
"@ltht-react/utils": "^2.0.152",
|
|
37
37
|
"@tanstack/react-table": "^8.10.7",
|
|
38
38
|
"react": "^18.2.0",
|
|
39
39
|
"react-uuid": "^2.0.0"
|
|
40
40
|
},
|
|
41
|
-
"gitHead": "
|
|
41
|
+
"gitHead": "4438f604949fc9f5a0b77f4aa7a4bb717f11d1c6"
|
|
42
42
|
}
|
|
@@ -13,11 +13,24 @@ import styled from '@emotion/styled'
|
|
|
13
13
|
import Icon, { IconButton } from '@ltht-react/icon'
|
|
14
14
|
import { Axis } from '@ltht-react/types'
|
|
15
15
|
|
|
16
|
+
const setScrollableDisplay = (tableHeaderAxis: Axis, isFlex: boolean) => {
|
|
17
|
+
if (isFlex) {
|
|
18
|
+
return 'flex'
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
if (tableHeaderAxis === 'y') {
|
|
22
|
+
return 'inline-flex'
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
return 'inline-block'
|
|
26
|
+
}
|
|
27
|
+
|
|
16
28
|
const ScrollableContainer = styled.div<IScrollableContainer>`
|
|
17
29
|
${CSS_RESET};
|
|
18
30
|
background-color: white;
|
|
19
|
-
${({ tableHeaderAxis, maxWidth, maxHeight }) => `
|
|
20
|
-
display: ${tableHeaderAxis
|
|
31
|
+
${({ tableHeaderAxis, maxWidth, maxHeight, isFlex }) => `
|
|
32
|
+
display: ${setScrollableDisplay(tableHeaderAxis, isFlex)}
|
|
33
|
+
${isFlex && 'flex-direction: column'}
|
|
21
34
|
max-width: ${maxWidth ?? '100%'};
|
|
22
35
|
max-height: ${maxHeight ?? '100%'};
|
|
23
36
|
`}
|
|
@@ -33,10 +46,12 @@ const ScrollableContainer = styled.div<IScrollableContainer>`
|
|
|
33
46
|
border-radius: 10px;
|
|
34
47
|
}
|
|
35
48
|
`
|
|
49
|
+
|
|
36
50
|
const StyledTable = styled.table`
|
|
37
|
-
border-spacing:
|
|
51
|
+
border-spacing: 0;
|
|
38
52
|
border-radius: 6px;
|
|
39
53
|
`
|
|
54
|
+
|
|
40
55
|
const StyledTableHeader = styled.th<IStyledTableCell>`
|
|
41
56
|
background-color: ${TABLE_COLOURS.HEADER};
|
|
42
57
|
border: thin solid ${TABLE_COLOURS.BORDER};
|
|
@@ -210,6 +225,7 @@ interface IScrollableContainer {
|
|
|
210
225
|
tableHeaderAxis: Axis
|
|
211
226
|
maxHeight?: string
|
|
212
227
|
maxWidth?: string
|
|
228
|
+
isFlex: boolean
|
|
213
229
|
}
|
|
214
230
|
|
|
215
231
|
export {
|
package/src/molecules/table.tsx
CHANGED
|
@@ -30,6 +30,7 @@ const Table: FC<IProps> = ({
|
|
|
30
30
|
keepPreviousData = false,
|
|
31
31
|
maxHeight,
|
|
32
32
|
maxWidth,
|
|
33
|
+
isFlex = false,
|
|
33
34
|
enableSorting = true,
|
|
34
35
|
sortingFunctions = undefined,
|
|
35
36
|
}) => {
|
|
@@ -100,7 +101,12 @@ const Table: FC<IProps> = ({
|
|
|
100
101
|
}
|
|
101
102
|
|
|
102
103
|
return (
|
|
103
|
-
<ScrollableContainer
|
|
104
|
+
<ScrollableContainer
|
|
105
|
+
ref={scrollableDivElement}
|
|
106
|
+
tableHeaderAxis={headerAxis}
|
|
107
|
+
{...{ maxHeight, maxWidth }}
|
|
108
|
+
isFlex={isFlex}
|
|
109
|
+
>
|
|
104
110
|
<TableComponent table={table} staticColumns={staticColumns} headerAxis={headerAxis} />
|
|
105
111
|
{manualPagination ? (
|
|
106
112
|
<TableSpinner position={headerAxis === 'x' ? 'bottom' : 'right'} hidden={!isFetching} />
|
|
@@ -139,6 +145,7 @@ export interface IPaginationProps {
|
|
|
139
145
|
export interface ITableDimensionProps {
|
|
140
146
|
maxWidth?: string
|
|
141
147
|
maxHeight?: string
|
|
148
|
+
isFlex?: boolean
|
|
142
149
|
}
|
|
143
150
|
|
|
144
151
|
type DataEntity = Record<string, CellProps | DataEntity[]> & {
|