@multiplatform.one/table 7.7.4 → 7.7.6
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/dist/cjs/components/DataTablePagination/index.cjs +23 -3
- package/dist/cjs/components/DataTablePagination/index.native.js +25 -3
- package/dist/cjs/components/DataTablePagination/index.native.js.map +1 -1
- package/dist/esm/components/DataTablePagination/index.mjs +26 -6
- package/dist/esm/components/DataTablePagination/index.mjs.map +1 -1
- package/dist/esm/components/DataTablePagination/index.native.js +28 -6
- package/dist/esm/components/DataTablePagination/index.native.js.map +1 -1
- package/dist/jsx/components/DataTablePagination/index.mjs +26 -6
- package/dist/jsx/components/DataTablePagination/index.mjs.map +1 -1
- package/dist/jsx/components/DataTablePagination/index.native.js +25 -3
- package/dist/jsx/components/DataTablePagination/index.native.js.map +1 -1
- package/package.json +12 -12
- package/src/components/DataTablePagination/DataTablePagination.spec.tsx +9 -2
- package/src/components/DataTablePagination/DataTablePagination.stories.tsx +19 -0
- package/src/components/DataTablePagination/DataTablePagination.width.spec.tsx +58 -0
- package/src/components/DataTablePagination/index.tsx +43 -7
- package/types/components/DataTablePagination/index.d.ts +1 -1
- package/types/components/DataTablePagination/index.d.ts.map +1 -1
|
@@ -77,6 +77,11 @@ function DataTablePagination(props) {
|
|
|
77
77
|
compact
|
|
78
78
|
});
|
|
79
79
|
const isMobile = !sm;
|
|
80
|
+
const [availableWidth, setAvailableWidth] = (0, import_react.useState)();
|
|
81
|
+
const measureWidth = event => {
|
|
82
|
+
const width = event.nativeEvent.layout.width;
|
|
83
|
+
if (width > 0) setAvailableWidth(previous => previous === width ? previous : width);
|
|
84
|
+
};
|
|
80
85
|
(0, import_theme.ensureCompositeFocusRing)();
|
|
81
86
|
const handlePageSizeChange = newPageSize => {
|
|
82
87
|
if (!Number.isFinite(newPageSize) || newPageSize <= 0) return;
|
|
@@ -100,6 +105,13 @@ function DataTablePagination(props) {
|
|
|
100
105
|
const totalCount = pagination.totalCount || 0;
|
|
101
106
|
const startItem = totalCount === 0 ? 0 : pagination.pageIndex * pagination.pageSize + 1;
|
|
102
107
|
const endItem = Math.min((pagination.pageIndex + 1) * pagination.pageSize, totalCount);
|
|
108
|
+
const pageControls = (0, import_components.getPaginationItems)(totalPages, currentPage).length + 2 + (!compact && !isMobile ? 2 : 0);
|
|
109
|
+
const controlBudget = Math.max(import_theme.MIN_PRESS_TARGET, knobProps.control.height + knobProps.control.paddingHorizontal * 2);
|
|
110
|
+
const gapPixels = Number((0, import_tamagui.getTokenValue)(knobProps.gap.gap, "space"));
|
|
111
|
+
const paddingPixels = Number((0, import_tamagui.getTokenValue)(knobProps.panelPadding.padding, "space"));
|
|
112
|
+
const measuredBudget = pageControls * controlBudget + Math.max(0, pageControls - 1) * gapPixels + paddingPixels * 2;
|
|
113
|
+
const numberedBudget = Number.isFinite(measuredBudget) ? measuredBudget : Infinity;
|
|
114
|
+
const simplePager = availableWidth === void 0 || availableWidth < numberedBudget;
|
|
103
115
|
const sizeOptions = (0, import_react.useMemo)(() => {
|
|
104
116
|
const sizes = new Set(pageSizeOptions.filter(n => Number.isFinite(n) && n > 0));
|
|
105
117
|
if (pagination.pageSize > 0) sizes.add(pagination.pageSize);
|
|
@@ -107,7 +119,7 @@ function DataTablePagination(props) {
|
|
|
107
119
|
}, [pageSizeOptions, pagination.pageSize]);
|
|
108
120
|
const showSize = showPageSizeSelector;
|
|
109
121
|
const showRange = showInfo && !(compact && insideTable);
|
|
110
|
-
const showJump = showPageJump && showPager && !compact && !isMobile;
|
|
122
|
+
const showJump = showPageJump && showPager && !compact && !isMobile && !simplePager;
|
|
111
123
|
const [jumpNonce, setJumpNonce] = (0, import_react.useState)(0);
|
|
112
124
|
const commitJump = (pageNumber, revertInvalid = false) => {
|
|
113
125
|
const page = Number.parseInt(pageNumber, 10) - 1;
|
|
@@ -155,11 +167,11 @@ function DataTablePagination(props) {
|
|
|
155
167
|
})]
|
|
156
168
|
}) : null;
|
|
157
169
|
const pager = showPager ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Pagination, {
|
|
158
|
-
variant: "numbered",
|
|
170
|
+
variant: simplePager ? "simple" : "numbered",
|
|
159
171
|
total: totalPages,
|
|
160
172
|
page: currentPage,
|
|
161
173
|
onPageChange: page => handlePageChange(page - 1),
|
|
162
|
-
showFirstLast: !compact && !isMobile,
|
|
174
|
+
showFirstLast: !simplePager && !compact && !isMobile,
|
|
163
175
|
"aria-label": "Page"
|
|
164
176
|
}) : null;
|
|
165
177
|
const jumpControl = showJump ? /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
|
|
@@ -214,6 +226,12 @@ function DataTablePagination(props) {
|
|
|
214
226
|
return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
|
|
215
227
|
role: "group",
|
|
216
228
|
"aria-label": "Table pagination",
|
|
229
|
+
onLayout: measureWidth,
|
|
230
|
+
minWidth: 0,
|
|
231
|
+
maxWidth: "100%",
|
|
232
|
+
flexGrow: 1,
|
|
233
|
+
flexShrink: 1,
|
|
234
|
+
flexWrap: "wrap",
|
|
217
235
|
alignItems: "center",
|
|
218
236
|
overflow: "visible",
|
|
219
237
|
...knobProps.gap,
|
|
@@ -228,6 +246,8 @@ function DataTablePagination(props) {
|
|
|
228
246
|
(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
|
|
229
247
|
role: "group",
|
|
230
248
|
"aria-label": "Table pagination",
|
|
249
|
+
onLayout: measureWidth,
|
|
250
|
+
minWidth: 0,
|
|
231
251
|
alignItems: "center",
|
|
232
252
|
overflow: "visible",
|
|
233
253
|
...knobProps.gapLg,
|
|
@@ -82,6 +82,13 @@ function DataTablePagination(props) {
|
|
|
82
82
|
compact
|
|
83
83
|
});
|
|
84
84
|
var isMobile = !sm;
|
|
85
|
+
var [availableWidth, setAvailableWidth] = (0, import_react.useState)();
|
|
86
|
+
var measureWidth = function measureWidth2(event) {
|
|
87
|
+
var width = event.nativeEvent.layout.width;
|
|
88
|
+
if (width > 0) setAvailableWidth(function (previous) {
|
|
89
|
+
return previous === width ? previous : width;
|
|
90
|
+
});
|
|
91
|
+
};
|
|
85
92
|
(0, import_theme.ensureCompositeFocusRing)();
|
|
86
93
|
var handlePageSizeChange = function handlePageSizeChange2(newPageSize) {
|
|
87
94
|
if (!Number.isFinite(newPageSize) || newPageSize <= 0) return;
|
|
@@ -105,6 +112,13 @@ function DataTablePagination(props) {
|
|
|
105
112
|
var totalCount = pagination.totalCount || 0;
|
|
106
113
|
var startItem = totalCount === 0 ? 0 : pagination.pageIndex * pagination.pageSize + 1;
|
|
107
114
|
var endItem = Math.min((pagination.pageIndex + 1) * pagination.pageSize, totalCount);
|
|
115
|
+
var pageControls = (0, import_components.getPaginationItems)(totalPages, currentPage).length + 2 + (!compact && !isMobile ? 2 : 0);
|
|
116
|
+
var controlBudget = Math.max(import_theme.MIN_PRESS_TARGET, knobProps.control.height + knobProps.control.paddingHorizontal * 2);
|
|
117
|
+
var gapPixels = Number((0, import_tamagui.getTokenValue)(knobProps.gap.gap, "space"));
|
|
118
|
+
var paddingPixels = Number((0, import_tamagui.getTokenValue)(knobProps.panelPadding.padding, "space"));
|
|
119
|
+
var measuredBudget = pageControls * controlBudget + Math.max(0, pageControls - 1) * gapPixels + paddingPixels * 2;
|
|
120
|
+
var numberedBudget = Number.isFinite(measuredBudget) ? measuredBudget : Infinity;
|
|
121
|
+
var simplePager = availableWidth === void 0 || availableWidth < numberedBudget;
|
|
108
122
|
var sizeOptions = (0, import_react.useMemo)(function () {
|
|
109
123
|
var sizes = new Set(pageSizeOptions.filter(function (n) {
|
|
110
124
|
return Number.isFinite(n) && n > 0;
|
|
@@ -116,7 +130,7 @@ function DataTablePagination(props) {
|
|
|
116
130
|
}, [pageSizeOptions, pagination.pageSize]);
|
|
117
131
|
var showSize = showPageSizeSelector;
|
|
118
132
|
var showRange = showInfo && !(compact && insideTable);
|
|
119
|
-
var showJump = showPageJump && showPager && !compact && !isMobile;
|
|
133
|
+
var showJump = showPageJump && showPager && !compact && !isMobile && !simplePager;
|
|
120
134
|
var [jumpNonce, setJumpNonce] = (0, import_react.useState)(0);
|
|
121
135
|
var commitJump = function commitJump2(pageNumber) {
|
|
122
136
|
var revertInvalid = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;
|
|
@@ -171,13 +185,13 @@ function DataTablePagination(props) {
|
|
|
171
185
|
})]
|
|
172
186
|
}) : null;
|
|
173
187
|
var pager = showPager ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Pagination, {
|
|
174
|
-
variant: "numbered",
|
|
188
|
+
variant: simplePager ? "simple" : "numbered",
|
|
175
189
|
total: totalPages,
|
|
176
190
|
page: currentPage,
|
|
177
191
|
onPageChange: function onPageChange(page) {
|
|
178
192
|
return handlePageChange(page - 1);
|
|
179
193
|
},
|
|
180
|
-
showFirstLast: !compact && !isMobile,
|
|
194
|
+
showFirstLast: !simplePager && !compact && !isMobile,
|
|
181
195
|
"aria-label": "Page"
|
|
182
196
|
}) : null;
|
|
183
197
|
var jumpControl = showJump ? /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
|
|
@@ -232,6 +246,12 @@ function DataTablePagination(props) {
|
|
|
232
246
|
return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
|
|
233
247
|
role: "group",
|
|
234
248
|
"aria-label": "Table pagination",
|
|
249
|
+
onLayout: measureWidth,
|
|
250
|
+
minWidth: 0,
|
|
251
|
+
maxWidth: "100%",
|
|
252
|
+
flexGrow: 1,
|
|
253
|
+
flexShrink: 1,
|
|
254
|
+
flexWrap: "wrap",
|
|
235
255
|
alignItems: "center",
|
|
236
256
|
overflow: "visible",
|
|
237
257
|
...knobProps.gap,
|
|
@@ -246,6 +266,8 @@ function DataTablePagination(props) {
|
|
|
246
266
|
(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
|
|
247
267
|
role: "group",
|
|
248
268
|
"aria-label": "Table pagination",
|
|
269
|
+
onLayout: measureWidth,
|
|
270
|
+
minWidth: 0,
|
|
249
271
|
alignItems: "center",
|
|
250
272
|
overflow: "visible",
|
|
251
273
|
...knobProps.gapLg,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","DataTablePagination_exports","__export","DataTablePagination","module","exports","import_jsx_runtime","require","import_theme","import_components","import_react","import_forms","import_tamagui","import_paginationDefaults","import_withInterp","import_DataTableStateContext","controlWidth","chars","chrome","Math","max","formatRange","start","end","total","props","_props_pagination","_props_onPaginationChange","ctx","useDataTableState","insideTable","Boolean","pagination","pageIndex","state","pageSize","totalPages","computed","totalCount","totalRows","hasPreviousPage","hasNextPage","DEFAULT_PAGE_SIZE","onPaginationChange","p","actions","setPagination","pageSizeOptions","DEFAULT_PAGE_SIZE_OPTIONS","showInfo","showPageSizeSelector","showPageJump","showPagerWhenSinglePage","compact","sm","useMedia","knobProps","useResolvedKnobs","isMobile","ensureCompositeFocusRing","handlePageSizeChange","handlePageSizeChange2","newPageSize","Number","isFinite","handlePageChange","handlePageChange2","newPageIndex","currentPage","showPager","startItem","endItem","min","sizeOptions","useMemo","sizes","Set","filter","n","add","sort","a","b","showSize","showRange","showJump","jumpNonce","setJumpNonce","
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","DataTablePagination_exports","__export","DataTablePagination","module","exports","import_jsx_runtime","require","import_theme","import_components","import_react","import_forms","import_tamagui","import_paginationDefaults","import_withInterp","import_DataTableStateContext","controlWidth","chars","chrome","Math","max","formatRange","start","end","total","props","_props_pagination","_props_onPaginationChange","ctx","useDataTableState","insideTable","Boolean","pagination","pageIndex","state","pageSize","totalPages","computed","totalCount","totalRows","hasPreviousPage","hasNextPage","DEFAULT_PAGE_SIZE","onPaginationChange","p","actions","setPagination","pageSizeOptions","DEFAULT_PAGE_SIZE_OPTIONS","showInfo","showPageSizeSelector","showPageJump","showPagerWhenSinglePage","compact","sm","useMedia","knobProps","useResolvedKnobs","isMobile","availableWidth","setAvailableWidth","useState","measureWidth","measureWidth2","event","width","nativeEvent","layout","previous","ensureCompositeFocusRing","handlePageSizeChange","handlePageSizeChange2","newPageSize","Number","isFinite","handlePageChange","handlePageChange2","newPageIndex","currentPage","showPager","startItem","endItem","min","pageControls","getPaginationItems","length","controlBudget","MIN_PRESS_TARGET","control","height","paddingHorizontal","gapPixels","getTokenValue","gap","paddingPixels","panelPadding","padding","measuredBudget","numberedBudget","Infinity","simplePager","sizeOptions","useMemo","sizes","Set","filter","n","add","sort","a","b","showSize","showRange","showJump","jumpNonce","setJumpNonce","commitJump","commitJump2","pageNumber","revertInvalid","arguments","page","parseInt","isNaN","helperText","label","color","userSelect","sizeControl","jsxs","XStack","alignItems","flexShrink","children","jsx","Text","View","map","String","overflow","Select","onChange","options","size","sizeToken","pager","Pagination","variant","onPageChange","showFirstLast","jumpControl","Input","defaultValue","inputProps","inputMode","autoComplete","style","textAlign","onKeyDown","e","key","target","placeholder","bidiIsolate","rangeControl","whiteSpace","packed","role","onLayout","minWidth","maxWidth","flexGrow","flexWrap","gapLg","rowGap"],"sources":["../../../../src/components/DataTablePagination/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { ensureCompositeFocusRing, useResolvedKnobs } from "@multiplatform.one/theme";
|
|
2
|
-
import { Pagination } from "@multiplatform.one/components";
|
|
1
|
+
import { ensureCompositeFocusRing, MIN_PRESS_TARGET, useResolvedKnobs } from "@multiplatform.one/theme";
|
|
2
|
+
import { Pagination, getPaginationItems } from "@multiplatform.one/components";
|
|
3
3
|
import { useMemo, useState } from "react";
|
|
4
4
|
import { Input, Select } from "@multiplatform.one/forms";
|
|
5
|
-
import { Text, View, XStack, useMedia } from "tamagui";
|
|
5
|
+
import { Text, View, XStack, getTokenValue, useMedia } from "tamagui";
|
|
6
6
|
import { DEFAULT_PAGE_SIZE, DEFAULT_PAGE_SIZE_OPTIONS } from "../../utils/paginationDefaults.mjs";
|
|
7
7
|
import { bidiIsolate } from "../../utils/withInterp.mjs";
|
|
8
8
|
import { useDataTableState } from "../DataTable/DataTableStateContext.mjs";
|
|
@@ -50,6 +50,11 @@ function DataTablePagination(props) {
|
|
|
50
50
|
compact
|
|
51
51
|
});
|
|
52
52
|
const isMobile = !sm;
|
|
53
|
+
const [availableWidth, setAvailableWidth] = useState();
|
|
54
|
+
const measureWidth = event => {
|
|
55
|
+
const width = event.nativeEvent.layout.width;
|
|
56
|
+
if (width > 0) setAvailableWidth(previous => previous === width ? previous : width);
|
|
57
|
+
};
|
|
53
58
|
ensureCompositeFocusRing();
|
|
54
59
|
const handlePageSizeChange = newPageSize => {
|
|
55
60
|
if (!Number.isFinite(newPageSize) || newPageSize <= 0) return;
|
|
@@ -73,6 +78,13 @@ function DataTablePagination(props) {
|
|
|
73
78
|
const totalCount = pagination.totalCount || 0;
|
|
74
79
|
const startItem = totalCount === 0 ? 0 : pagination.pageIndex * pagination.pageSize + 1;
|
|
75
80
|
const endItem = Math.min((pagination.pageIndex + 1) * pagination.pageSize, totalCount);
|
|
81
|
+
const pageControls = getPaginationItems(totalPages, currentPage).length + 2 + (!compact && !isMobile ? 2 : 0);
|
|
82
|
+
const controlBudget = Math.max(MIN_PRESS_TARGET, knobProps.control.height + knobProps.control.paddingHorizontal * 2);
|
|
83
|
+
const gapPixels = Number(getTokenValue(knobProps.gap.gap, "space"));
|
|
84
|
+
const paddingPixels = Number(getTokenValue(knobProps.panelPadding.padding, "space"));
|
|
85
|
+
const measuredBudget = pageControls * controlBudget + Math.max(0, pageControls - 1) * gapPixels + paddingPixels * 2;
|
|
86
|
+
const numberedBudget = Number.isFinite(measuredBudget) ? measuredBudget : Infinity;
|
|
87
|
+
const simplePager = availableWidth === void 0 || availableWidth < numberedBudget;
|
|
76
88
|
const sizeOptions = useMemo(() => {
|
|
77
89
|
const sizes = new Set(pageSizeOptions.filter(n => Number.isFinite(n) && n > 0));
|
|
78
90
|
if (pagination.pageSize > 0) sizes.add(pagination.pageSize);
|
|
@@ -80,7 +92,7 @@ function DataTablePagination(props) {
|
|
|
80
92
|
}, [pageSizeOptions, pagination.pageSize]);
|
|
81
93
|
const showSize = showPageSizeSelector;
|
|
82
94
|
const showRange = showInfo && !(compact && insideTable);
|
|
83
|
-
const showJump = showPageJump && showPager && !compact && !isMobile;
|
|
95
|
+
const showJump = showPageJump && showPager && !compact && !isMobile && !simplePager;
|
|
84
96
|
const [jumpNonce, setJumpNonce] = useState(0);
|
|
85
97
|
const commitJump = (pageNumber, revertInvalid = false) => {
|
|
86
98
|
const page = Number.parseInt(pageNumber, 10) - 1;
|
|
@@ -128,11 +140,11 @@ function DataTablePagination(props) {
|
|
|
128
140
|
})]
|
|
129
141
|
}) : null;
|
|
130
142
|
const pager = showPager ? /* @__PURE__ */jsx(Pagination, {
|
|
131
|
-
variant: "numbered",
|
|
143
|
+
variant: simplePager ? "simple" : "numbered",
|
|
132
144
|
total: totalPages,
|
|
133
145
|
page: currentPage,
|
|
134
146
|
onPageChange: page => handlePageChange(page - 1),
|
|
135
|
-
showFirstLast: !compact && !isMobile,
|
|
147
|
+
showFirstLast: !simplePager && !compact && !isMobile,
|
|
136
148
|
"aria-label": "Page"
|
|
137
149
|
}) : null;
|
|
138
150
|
const jumpControl = showJump ? /* @__PURE__ */jsxs(XStack, {
|
|
@@ -187,6 +199,12 @@ function DataTablePagination(props) {
|
|
|
187
199
|
return /* @__PURE__ */jsxs(XStack, {
|
|
188
200
|
role: "group",
|
|
189
201
|
"aria-label": "Table pagination",
|
|
202
|
+
onLayout: measureWidth,
|
|
203
|
+
minWidth: 0,
|
|
204
|
+
maxWidth: "100%",
|
|
205
|
+
flexGrow: 1,
|
|
206
|
+
flexShrink: 1,
|
|
207
|
+
flexWrap: "wrap",
|
|
190
208
|
alignItems: "center",
|
|
191
209
|
overflow: "visible",
|
|
192
210
|
...knobProps.gap,
|
|
@@ -201,6 +219,8 @@ function DataTablePagination(props) {
|
|
|
201
219
|
jsxs(XStack, {
|
|
202
220
|
role: "group",
|
|
203
221
|
"aria-label": "Table pagination",
|
|
222
|
+
onLayout: measureWidth,
|
|
223
|
+
minWidth: 0,
|
|
204
224
|
alignItems: "center",
|
|
205
225
|
overflow: "visible",
|
|
206
226
|
...knobProps.gapLg,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ensureCompositeFocusRing","useResolvedKnobs","Pagination","useMemo","useState","Input","Select","Text","View","XStack","useMedia","DEFAULT_PAGE_SIZE","DEFAULT_PAGE_SIZE_OPTIONS","bidiIsolate","useDataTableState","jsx","jsxs","controlWidth","chars","chrome","Math","max","formatRange","start","end","total","DataTablePagination","props","ctx","insideTable","Boolean","pagination","pageIndex","state","pageSize","totalPages","computed","totalCount","totalRows","hasPreviousPage","hasNextPage","onPaginationChange","p","actions","setPagination","pageSizeOptions","showInfo","showPageSizeSelector","showPageJump","showPagerWhenSinglePage","compact","sm","knobProps","isMobile","handlePageSizeChange","newPageSize","Number","isFinite","handlePageChange","newPageIndex","currentPage","showPager","startItem","endItem","min","sizeOptions","sizes","Set","filter","n","add","sort","a","b","showSize","showRange","showJump","jumpNonce","setJumpNonce","commitJump","pageNumber","revertInvalid","page","parseInt","isNaN","helperText","label","color","userSelect","sizeControl","alignItems","gap","flexShrink","children","width","map","String","length","overflow","value","onChange","options","size","sizeToken","pager","variant","onPageChange","showFirstLast","jumpControl","defaultValue","inputProps","inputMode","autoComplete","style","textAlign","onKeyDown","e","key","target","placeholder","rangeControl","whiteSpace","packed","role","gapLg","rowGap","flexWrap","paddingHorizontal","panelPadding","padding","paddingVertical","flexGrow","flexBasis","justifyContent"],"sources":["../../../../src/components/DataTablePagination/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["ensureCompositeFocusRing","MIN_PRESS_TARGET","useResolvedKnobs","Pagination","getPaginationItems","useMemo","useState","Input","Select","Text","View","XStack","getTokenValue","useMedia","DEFAULT_PAGE_SIZE","DEFAULT_PAGE_SIZE_OPTIONS","bidiIsolate","useDataTableState","jsx","jsxs","controlWidth","chars","chrome","Math","max","formatRange","start","end","total","DataTablePagination","props","ctx","insideTable","Boolean","pagination","pageIndex","state","pageSize","totalPages","computed","totalCount","totalRows","hasPreviousPage","hasNextPage","onPaginationChange","p","actions","setPagination","pageSizeOptions","showInfo","showPageSizeSelector","showPageJump","showPagerWhenSinglePage","compact","sm","knobProps","isMobile","availableWidth","setAvailableWidth","measureWidth","event","width","nativeEvent","layout","previous","handlePageSizeChange","newPageSize","Number","isFinite","handlePageChange","newPageIndex","currentPage","showPager","startItem","endItem","min","pageControls","length","controlBudget","control","height","paddingHorizontal","gapPixels","gap","paddingPixels","panelPadding","padding","measuredBudget","numberedBudget","Infinity","simplePager","sizeOptions","sizes","Set","filter","n","add","sort","a","b","showSize","showRange","showJump","jumpNonce","setJumpNonce","commitJump","pageNumber","revertInvalid","page","parseInt","isNaN","helperText","label","color","userSelect","sizeControl","alignItems","flexShrink","children","map","String","overflow","value","onChange","options","size","sizeToken","pager","variant","onPageChange","showFirstLast","jumpControl","defaultValue","inputProps","inputMode","autoComplete","style","textAlign","onKeyDown","e","key","target","placeholder","rangeControl","whiteSpace","packed","role","onLayout","minWidth","maxWidth","flexGrow","flexWrap","gapLg","rowGap","paddingVertical","flexBasis","justifyContent"],"sources":["../../../../src/components/DataTablePagination/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { ensureCompositeFocusRing, useResolvedKnobs } from "@multiplatform.one/theme";
|
|
3
|
-
import { Pagination } from "@multiplatform.one/components";
|
|
2
|
+
import { ensureCompositeFocusRing, MIN_PRESS_TARGET, useResolvedKnobs } from "@multiplatform.one/theme";
|
|
3
|
+
import { Pagination, getPaginationItems } from "@multiplatform.one/components";
|
|
4
4
|
import { useMemo, useState } from "react";
|
|
5
5
|
import { Input, Select } from "@multiplatform.one/forms";
|
|
6
|
-
import { Text, View, XStack, useMedia } from "tamagui";
|
|
6
|
+
import { Text, View, XStack, getTokenValue, useMedia } from "tamagui";
|
|
7
7
|
import { DEFAULT_PAGE_SIZE, DEFAULT_PAGE_SIZE_OPTIONS } from "../../utils/paginationDefaults.native.js";
|
|
8
8
|
import { bidiIsolate } from "../../utils/withInterp.native.js";
|
|
9
9
|
import { useDataTableState } from "../DataTable/DataTableStateContext.native.js";
|
|
@@ -53,6 +53,13 @@ function DataTablePagination(props) {
|
|
|
53
53
|
compact
|
|
54
54
|
});
|
|
55
55
|
var isMobile = !sm;
|
|
56
|
+
var [availableWidth, setAvailableWidth] = useState();
|
|
57
|
+
var measureWidth = function measureWidth2(event) {
|
|
58
|
+
var width = event.nativeEvent.layout.width;
|
|
59
|
+
if (width > 0) setAvailableWidth(function (previous) {
|
|
60
|
+
return previous === width ? previous : width;
|
|
61
|
+
});
|
|
62
|
+
};
|
|
56
63
|
ensureCompositeFocusRing();
|
|
57
64
|
var handlePageSizeChange = function handlePageSizeChange2(newPageSize) {
|
|
58
65
|
if (!Number.isFinite(newPageSize) || newPageSize <= 0) return;
|
|
@@ -76,6 +83,13 @@ function DataTablePagination(props) {
|
|
|
76
83
|
var totalCount = pagination.totalCount || 0;
|
|
77
84
|
var startItem = totalCount === 0 ? 0 : pagination.pageIndex * pagination.pageSize + 1;
|
|
78
85
|
var endItem = Math.min((pagination.pageIndex + 1) * pagination.pageSize, totalCount);
|
|
86
|
+
var pageControls = getPaginationItems(totalPages, currentPage).length + 2 + (!compact && !isMobile ? 2 : 0);
|
|
87
|
+
var controlBudget = Math.max(MIN_PRESS_TARGET, knobProps.control.height + knobProps.control.paddingHorizontal * 2);
|
|
88
|
+
var gapPixels = Number(getTokenValue(knobProps.gap.gap, "space"));
|
|
89
|
+
var paddingPixels = Number(getTokenValue(knobProps.panelPadding.padding, "space"));
|
|
90
|
+
var measuredBudget = pageControls * controlBudget + Math.max(0, pageControls - 1) * gapPixels + paddingPixels * 2;
|
|
91
|
+
var numberedBudget = Number.isFinite(measuredBudget) ? measuredBudget : Infinity;
|
|
92
|
+
var simplePager = availableWidth === void 0 || availableWidth < numberedBudget;
|
|
79
93
|
var sizeOptions = useMemo(function () {
|
|
80
94
|
var sizes = new Set(pageSizeOptions.filter(function (n) {
|
|
81
95
|
return Number.isFinite(n) && n > 0;
|
|
@@ -87,7 +101,7 @@ function DataTablePagination(props) {
|
|
|
87
101
|
}, [pageSizeOptions, pagination.pageSize]);
|
|
88
102
|
var showSize = showPageSizeSelector;
|
|
89
103
|
var showRange = showInfo && !(compact && insideTable);
|
|
90
|
-
var showJump = showPageJump && showPager && !compact && !isMobile;
|
|
104
|
+
var showJump = showPageJump && showPager && !compact && !isMobile && !simplePager;
|
|
91
105
|
var [jumpNonce, setJumpNonce] = useState(0);
|
|
92
106
|
var commitJump = function commitJump2(pageNumber) {
|
|
93
107
|
var revertInvalid = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;
|
|
@@ -142,13 +156,13 @@ function DataTablePagination(props) {
|
|
|
142
156
|
})]
|
|
143
157
|
}) : null;
|
|
144
158
|
var pager = showPager ? /* @__PURE__ */_jsx(Pagination, {
|
|
145
|
-
variant: "numbered",
|
|
159
|
+
variant: simplePager ? "simple" : "numbered",
|
|
146
160
|
total: totalPages,
|
|
147
161
|
page: currentPage,
|
|
148
162
|
onPageChange: function onPageChange(page) {
|
|
149
163
|
return handlePageChange(page - 1);
|
|
150
164
|
},
|
|
151
|
-
showFirstLast: !compact && !isMobile,
|
|
165
|
+
showFirstLast: !simplePager && !compact && !isMobile,
|
|
152
166
|
"aria-label": "Page"
|
|
153
167
|
}) : null;
|
|
154
168
|
var jumpControl = showJump ? /* @__PURE__ */_jsxs(XStack, {
|
|
@@ -203,6 +217,12 @@ function DataTablePagination(props) {
|
|
|
203
217
|
return /* @__PURE__ */_jsxs(XStack, {
|
|
204
218
|
role: "group",
|
|
205
219
|
"aria-label": "Table pagination",
|
|
220
|
+
onLayout: measureWidth,
|
|
221
|
+
minWidth: 0,
|
|
222
|
+
maxWidth: "100%",
|
|
223
|
+
flexGrow: 1,
|
|
224
|
+
flexShrink: 1,
|
|
225
|
+
flexWrap: "wrap",
|
|
206
226
|
alignItems: "center",
|
|
207
227
|
overflow: "visible",
|
|
208
228
|
...knobProps.gap,
|
|
@@ -217,6 +237,8 @@ function DataTablePagination(props) {
|
|
|
217
237
|
_jsxs(XStack, {
|
|
218
238
|
role: "group",
|
|
219
239
|
"aria-label": "Table pagination",
|
|
240
|
+
onLayout: measureWidth,
|
|
241
|
+
minWidth: 0,
|
|
220
242
|
alignItems: "center",
|
|
221
243
|
overflow: "visible",
|
|
222
244
|
...knobProps.gapLg,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["jsx","_jsx","jsxs","_jsxs","ensureCompositeFocusRing","useResolvedKnobs","Pagination","useMemo","useState","Input","Select","Text","View","XStack","useMedia","DEFAULT_PAGE_SIZE","DEFAULT_PAGE_SIZE_OPTIONS","bidiIsolate","useDataTableState","controlWidth","chars","chrome","Math","max","formatRange","start","end","total","DataTablePagination","props","_props_pagination","_props_onPaginationChange","ctx","insideTable","Boolean","pagination","pageIndex","state","pageSize","totalPages","computed","totalCount","totalRows","hasPreviousPage","hasNextPage","onPaginationChange","p","actions","setPagination","pageSizeOptions","showInfo","showPageSizeSelector","showPageJump","showPagerWhenSinglePage","compact","sm","knobProps","isMobile","handlePageSizeChange","handlePageSizeChange2","newPageSize","Number","isFinite","handlePageChange","handlePageChange2","newPageIndex","currentPage","showPager","startItem","endItem","min","sizeOptions","sizes","Set","filter","n","add","sort","a","b","showSize","showRange","showJump","jumpNonce","setJumpNonce","commitJump","commitJump2","pageNumber","revertInvalid","arguments","
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","jsxs","_jsxs","ensureCompositeFocusRing","MIN_PRESS_TARGET","useResolvedKnobs","Pagination","getPaginationItems","useMemo","useState","Input","Select","Text","View","XStack","getTokenValue","useMedia","DEFAULT_PAGE_SIZE","DEFAULT_PAGE_SIZE_OPTIONS","bidiIsolate","useDataTableState","controlWidth","chars","chrome","Math","max","formatRange","start","end","total","DataTablePagination","props","_props_pagination","_props_onPaginationChange","ctx","insideTable","Boolean","pagination","pageIndex","state","pageSize","totalPages","computed","totalCount","totalRows","hasPreviousPage","hasNextPage","onPaginationChange","p","actions","setPagination","pageSizeOptions","showInfo","showPageSizeSelector","showPageJump","showPagerWhenSinglePage","compact","sm","knobProps","isMobile","availableWidth","setAvailableWidth","measureWidth","measureWidth2","event","width","nativeEvent","layout","previous","handlePageSizeChange","handlePageSizeChange2","newPageSize","Number","isFinite","handlePageChange","handlePageChange2","newPageIndex","currentPage","showPager","startItem","endItem","min","pageControls","length","controlBudget","control","height","paddingHorizontal","gapPixels","gap","paddingPixels","panelPadding","padding","measuredBudget","numberedBudget","Infinity","simplePager","sizeOptions","sizes","Set","filter","n","add","sort","a","b","showSize","showRange","showJump","jumpNonce","setJumpNonce","commitJump","commitJump2","pageNumber","revertInvalid","arguments","page","parseInt","isNaN","helperText","label","color","userSelect","sizeControl","alignItems","flexShrink","children","map","String","overflow","value","onChange","options","size","sizeToken","pager","variant","onPageChange","showFirstLast","jumpControl","defaultValue","inputProps","inputMode","autoComplete","style","textAlign","onKeyDown","e","key","target","placeholder","rangeControl","whiteSpace","packed","role","onLayout","minWidth","maxWidth","flexGrow","flexWrap","gapLg","rowGap","paddingVertical"],"sources":["../../../../src/components/DataTablePagination/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { ensureCompositeFocusRing, useResolvedKnobs } from "@multiplatform.one/theme";
|
|
2
|
-
import { Pagination } from "@multiplatform.one/components";
|
|
1
|
+
import { ensureCompositeFocusRing, MIN_PRESS_TARGET, useResolvedKnobs } from "@multiplatform.one/theme";
|
|
2
|
+
import { Pagination, getPaginationItems } from "@multiplatform.one/components";
|
|
3
3
|
import { useMemo, useState } from "react";
|
|
4
4
|
import { Input, Select } from "@multiplatform.one/forms";
|
|
5
|
-
import { Text, View, XStack, useMedia } from "tamagui";
|
|
5
|
+
import { Text, View, XStack, getTokenValue, useMedia } from "tamagui";
|
|
6
6
|
import { DEFAULT_PAGE_SIZE, DEFAULT_PAGE_SIZE_OPTIONS } from "../../utils/paginationDefaults.mjs";
|
|
7
7
|
import { bidiIsolate } from "../../utils/withInterp.mjs";
|
|
8
8
|
import { useDataTableState } from "../DataTable/DataTableStateContext.mjs";
|
|
@@ -50,6 +50,11 @@ function DataTablePagination(props) {
|
|
|
50
50
|
compact
|
|
51
51
|
});
|
|
52
52
|
const isMobile = !sm;
|
|
53
|
+
const [availableWidth, setAvailableWidth] = useState();
|
|
54
|
+
const measureWidth = event => {
|
|
55
|
+
const width = event.nativeEvent.layout.width;
|
|
56
|
+
if (width > 0) setAvailableWidth(previous => previous === width ? previous : width);
|
|
57
|
+
};
|
|
53
58
|
ensureCompositeFocusRing();
|
|
54
59
|
const handlePageSizeChange = newPageSize => {
|
|
55
60
|
if (!Number.isFinite(newPageSize) || newPageSize <= 0) return;
|
|
@@ -73,6 +78,13 @@ function DataTablePagination(props) {
|
|
|
73
78
|
const totalCount = pagination.totalCount || 0;
|
|
74
79
|
const startItem = totalCount === 0 ? 0 : pagination.pageIndex * pagination.pageSize + 1;
|
|
75
80
|
const endItem = Math.min((pagination.pageIndex + 1) * pagination.pageSize, totalCount);
|
|
81
|
+
const pageControls = getPaginationItems(totalPages, currentPage).length + 2 + (!compact && !isMobile ? 2 : 0);
|
|
82
|
+
const controlBudget = Math.max(MIN_PRESS_TARGET, knobProps.control.height + knobProps.control.paddingHorizontal * 2);
|
|
83
|
+
const gapPixels = Number(getTokenValue(knobProps.gap.gap, "space"));
|
|
84
|
+
const paddingPixels = Number(getTokenValue(knobProps.panelPadding.padding, "space"));
|
|
85
|
+
const measuredBudget = pageControls * controlBudget + Math.max(0, pageControls - 1) * gapPixels + paddingPixels * 2;
|
|
86
|
+
const numberedBudget = Number.isFinite(measuredBudget) ? measuredBudget : Infinity;
|
|
87
|
+
const simplePager = availableWidth === void 0 || availableWidth < numberedBudget;
|
|
76
88
|
const sizeOptions = useMemo(() => {
|
|
77
89
|
const sizes = new Set(pageSizeOptions.filter(n => Number.isFinite(n) && n > 0));
|
|
78
90
|
if (pagination.pageSize > 0) sizes.add(pagination.pageSize);
|
|
@@ -80,7 +92,7 @@ function DataTablePagination(props) {
|
|
|
80
92
|
}, [pageSizeOptions, pagination.pageSize]);
|
|
81
93
|
const showSize = showPageSizeSelector;
|
|
82
94
|
const showRange = showInfo && !(compact && insideTable);
|
|
83
|
-
const showJump = showPageJump && showPager && !compact && !isMobile;
|
|
95
|
+
const showJump = showPageJump && showPager && !compact && !isMobile && !simplePager;
|
|
84
96
|
const [jumpNonce, setJumpNonce] = useState(0);
|
|
85
97
|
const commitJump = (pageNumber, revertInvalid = false) => {
|
|
86
98
|
const page = Number.parseInt(pageNumber, 10) - 1;
|
|
@@ -128,11 +140,11 @@ function DataTablePagination(props) {
|
|
|
128
140
|
})]
|
|
129
141
|
}) : null;
|
|
130
142
|
const pager = showPager ? /* @__PURE__ */jsx(Pagination, {
|
|
131
|
-
variant: "numbered",
|
|
143
|
+
variant: simplePager ? "simple" : "numbered",
|
|
132
144
|
total: totalPages,
|
|
133
145
|
page: currentPage,
|
|
134
146
|
onPageChange: page => handlePageChange(page - 1),
|
|
135
|
-
showFirstLast: !compact && !isMobile,
|
|
147
|
+
showFirstLast: !simplePager && !compact && !isMobile,
|
|
136
148
|
"aria-label": "Page"
|
|
137
149
|
}) : null;
|
|
138
150
|
const jumpControl = showJump ? /* @__PURE__ */jsxs(XStack, {
|
|
@@ -187,6 +199,12 @@ function DataTablePagination(props) {
|
|
|
187
199
|
return /* @__PURE__ */jsxs(XStack, {
|
|
188
200
|
role: "group",
|
|
189
201
|
"aria-label": "Table pagination",
|
|
202
|
+
onLayout: measureWidth,
|
|
203
|
+
minWidth: 0,
|
|
204
|
+
maxWidth: "100%",
|
|
205
|
+
flexGrow: 1,
|
|
206
|
+
flexShrink: 1,
|
|
207
|
+
flexWrap: "wrap",
|
|
190
208
|
alignItems: "center",
|
|
191
209
|
overflow: "visible",
|
|
192
210
|
...knobProps.gap,
|
|
@@ -201,6 +219,8 @@ function DataTablePagination(props) {
|
|
|
201
219
|
jsxs(XStack, {
|
|
202
220
|
role: "group",
|
|
203
221
|
"aria-label": "Table pagination",
|
|
222
|
+
onLayout: measureWidth,
|
|
223
|
+
minWidth: 0,
|
|
204
224
|
alignItems: "center",
|
|
205
225
|
overflow: "visible",
|
|
206
226
|
...knobProps.gapLg,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ensureCompositeFocusRing","useResolvedKnobs","Pagination","useMemo","useState","Input","Select","Text","View","XStack","useMedia","DEFAULT_PAGE_SIZE","DEFAULT_PAGE_SIZE_OPTIONS","bidiIsolate","useDataTableState","jsx","jsxs","controlWidth","chars","chrome","Math","max","formatRange","start","end","total","DataTablePagination","props","ctx","insideTable","Boolean","pagination","pageIndex","state","pageSize","totalPages","computed","totalCount","totalRows","hasPreviousPage","hasNextPage","onPaginationChange","p","actions","setPagination","pageSizeOptions","showInfo","showPageSizeSelector","showPageJump","showPagerWhenSinglePage","compact","sm","knobProps","isMobile","handlePageSizeChange","newPageSize","Number","isFinite","handlePageChange","newPageIndex","currentPage","showPager","startItem","endItem","min","sizeOptions","sizes","Set","filter","n","add","sort","a","b","showSize","showRange","showJump","jumpNonce","setJumpNonce","commitJump","pageNumber","revertInvalid","page","parseInt","isNaN","helperText","label","color","userSelect","sizeControl","alignItems","gap","flexShrink","children","width","map","String","length","overflow","value","onChange","options","size","sizeToken","pager","variant","onPageChange","showFirstLast","jumpControl","defaultValue","inputProps","inputMode","autoComplete","style","textAlign","onKeyDown","e","key","target","placeholder","rangeControl","whiteSpace","packed","role","gapLg","rowGap","flexWrap","paddingHorizontal","panelPadding","padding","paddingVertical","flexGrow","flexBasis","justifyContent"],"sources":["../../../../src/components/DataTablePagination/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["ensureCompositeFocusRing","MIN_PRESS_TARGET","useResolvedKnobs","Pagination","getPaginationItems","useMemo","useState","Input","Select","Text","View","XStack","getTokenValue","useMedia","DEFAULT_PAGE_SIZE","DEFAULT_PAGE_SIZE_OPTIONS","bidiIsolate","useDataTableState","jsx","jsxs","controlWidth","chars","chrome","Math","max","formatRange","start","end","total","DataTablePagination","props","ctx","insideTable","Boolean","pagination","pageIndex","state","pageSize","totalPages","computed","totalCount","totalRows","hasPreviousPage","hasNextPage","onPaginationChange","p","actions","setPagination","pageSizeOptions","showInfo","showPageSizeSelector","showPageJump","showPagerWhenSinglePage","compact","sm","knobProps","isMobile","availableWidth","setAvailableWidth","measureWidth","event","width","nativeEvent","layout","previous","handlePageSizeChange","newPageSize","Number","isFinite","handlePageChange","newPageIndex","currentPage","showPager","startItem","endItem","min","pageControls","length","controlBudget","control","height","paddingHorizontal","gapPixels","gap","paddingPixels","panelPadding","padding","measuredBudget","numberedBudget","Infinity","simplePager","sizeOptions","sizes","Set","filter","n","add","sort","a","b","showSize","showRange","showJump","jumpNonce","setJumpNonce","commitJump","pageNumber","revertInvalid","page","parseInt","isNaN","helperText","label","color","userSelect","sizeControl","alignItems","flexShrink","children","map","String","overflow","value","onChange","options","size","sizeToken","pager","variant","onPageChange","showFirstLast","jumpControl","defaultValue","inputProps","inputMode","autoComplete","style","textAlign","onKeyDown","e","key","target","placeholder","rangeControl","whiteSpace","packed","role","onLayout","minWidth","maxWidth","flexGrow","flexWrap","gapLg","rowGap","paddingVertical","flexBasis","justifyContent"],"sources":["../../../../src/components/DataTablePagination/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -82,6 +82,13 @@ function DataTablePagination(props) {
|
|
|
82
82
|
compact
|
|
83
83
|
});
|
|
84
84
|
var isMobile = !sm;
|
|
85
|
+
var [availableWidth, setAvailableWidth] = (0, import_react.useState)();
|
|
86
|
+
var measureWidth = function measureWidth2(event) {
|
|
87
|
+
var width = event.nativeEvent.layout.width;
|
|
88
|
+
if (width > 0) setAvailableWidth(function (previous) {
|
|
89
|
+
return previous === width ? previous : width;
|
|
90
|
+
});
|
|
91
|
+
};
|
|
85
92
|
(0, import_theme.ensureCompositeFocusRing)();
|
|
86
93
|
var handlePageSizeChange = function handlePageSizeChange2(newPageSize) {
|
|
87
94
|
if (!Number.isFinite(newPageSize) || newPageSize <= 0) return;
|
|
@@ -105,6 +112,13 @@ function DataTablePagination(props) {
|
|
|
105
112
|
var totalCount = pagination.totalCount || 0;
|
|
106
113
|
var startItem = totalCount === 0 ? 0 : pagination.pageIndex * pagination.pageSize + 1;
|
|
107
114
|
var endItem = Math.min((pagination.pageIndex + 1) * pagination.pageSize, totalCount);
|
|
115
|
+
var pageControls = (0, import_components.getPaginationItems)(totalPages, currentPage).length + 2 + (!compact && !isMobile ? 2 : 0);
|
|
116
|
+
var controlBudget = Math.max(import_theme.MIN_PRESS_TARGET, knobProps.control.height + knobProps.control.paddingHorizontal * 2);
|
|
117
|
+
var gapPixels = Number((0, import_tamagui.getTokenValue)(knobProps.gap.gap, "space"));
|
|
118
|
+
var paddingPixels = Number((0, import_tamagui.getTokenValue)(knobProps.panelPadding.padding, "space"));
|
|
119
|
+
var measuredBudget = pageControls * controlBudget + Math.max(0, pageControls - 1) * gapPixels + paddingPixels * 2;
|
|
120
|
+
var numberedBudget = Number.isFinite(measuredBudget) ? measuredBudget : Infinity;
|
|
121
|
+
var simplePager = availableWidth === void 0 || availableWidth < numberedBudget;
|
|
108
122
|
var sizeOptions = (0, import_react.useMemo)(function () {
|
|
109
123
|
var sizes = new Set(pageSizeOptions.filter(function (n) {
|
|
110
124
|
return Number.isFinite(n) && n > 0;
|
|
@@ -116,7 +130,7 @@ function DataTablePagination(props) {
|
|
|
116
130
|
}, [pageSizeOptions, pagination.pageSize]);
|
|
117
131
|
var showSize = showPageSizeSelector;
|
|
118
132
|
var showRange = showInfo && !(compact && insideTable);
|
|
119
|
-
var showJump = showPageJump && showPager && !compact && !isMobile;
|
|
133
|
+
var showJump = showPageJump && showPager && !compact && !isMobile && !simplePager;
|
|
120
134
|
var [jumpNonce, setJumpNonce] = (0, import_react.useState)(0);
|
|
121
135
|
var commitJump = function commitJump2(pageNumber) {
|
|
122
136
|
var revertInvalid = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;
|
|
@@ -171,13 +185,13 @@ function DataTablePagination(props) {
|
|
|
171
185
|
})]
|
|
172
186
|
}) : null;
|
|
173
187
|
var pager = showPager ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Pagination, {
|
|
174
|
-
variant: "numbered",
|
|
188
|
+
variant: simplePager ? "simple" : "numbered",
|
|
175
189
|
total: totalPages,
|
|
176
190
|
page: currentPage,
|
|
177
191
|
onPageChange: function onPageChange(page) {
|
|
178
192
|
return handlePageChange(page - 1);
|
|
179
193
|
},
|
|
180
|
-
showFirstLast: !compact && !isMobile,
|
|
194
|
+
showFirstLast: !simplePager && !compact && !isMobile,
|
|
181
195
|
"aria-label": "Page"
|
|
182
196
|
}) : null;
|
|
183
197
|
var jumpControl = showJump ? /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
|
|
@@ -232,6 +246,12 @@ function DataTablePagination(props) {
|
|
|
232
246
|
return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
|
|
233
247
|
role: "group",
|
|
234
248
|
"aria-label": "Table pagination",
|
|
249
|
+
onLayout: measureWidth,
|
|
250
|
+
minWidth: 0,
|
|
251
|
+
maxWidth: "100%",
|
|
252
|
+
flexGrow: 1,
|
|
253
|
+
flexShrink: 1,
|
|
254
|
+
flexWrap: "wrap",
|
|
235
255
|
alignItems: "center",
|
|
236
256
|
overflow: "visible",
|
|
237
257
|
...knobProps.gap,
|
|
@@ -246,6 +266,8 @@ function DataTablePagination(props) {
|
|
|
246
266
|
(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
|
|
247
267
|
role: "group",
|
|
248
268
|
"aria-label": "Table pagination",
|
|
269
|
+
onLayout: measureWidth,
|
|
270
|
+
minWidth: 0,
|
|
249
271
|
alignItems: "center",
|
|
250
272
|
overflow: "visible",
|
|
251
273
|
...knobProps.gapLg,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","DataTablePagination_exports","DataTablePagination","module","exports","import_jsx_runtime","require","import_theme","import_components","import_react","import_forms","import_tamagui","import_paginationDefaults","import_withInterp","import_DataTableStateContext","controlWidth","chars","chrome","Math","max","formatRange","start","end","total","props","_props_pagination","_props_onPaginationChange","ctx","useDataTableState","insideTable","Boolean","pagination","pageIndex","state","pageSize","totalPages","computed","totalCount","totalRows","hasPreviousPage","hasNextPage","DEFAULT_PAGE_SIZE","onPaginationChange","p","actions","setPagination","pageSizeOptions","DEFAULT_PAGE_SIZE_OPTIONS","showInfo","showPageSizeSelector","showPageJump","showPagerWhenSinglePage","compact","sm","useMedia","knobProps","useResolvedKnobs","isMobile","ensureCompositeFocusRing","handlePageSizeChange","handlePageSizeChange2","newPageSize","Number","isFinite","handlePageChange","handlePageChange2","newPageIndex","currentPage","showPager","startItem","endItem","min","sizeOptions","useMemo","sizes","Set","filter","n","add","sort","a","b","showSize","showRange","showJump","jumpNonce","setJumpNonce","useState","commitJump","commitJump2","pageNumber","revertInvalid","arguments","length","page","parseInt","isNaN","helperText","label","color","userSelect","sizeControl","jsxs","XStack","alignItems","gap","flexShrink","children","jsx","Text","View","width","map","String","overflow","Select","onChange","options","size","sizeToken","pager","Pagination","variant","onPageChange","showFirstLast","jumpControl","Input","defaultValue","inputProps","inputMode","autoComplete","style","textAlign","onKeyDown","e","placeholder","bidiIsolate","rangeControl","whiteSpace"],"sources":["../../../../src/components/DataTablePagination/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","DataTablePagination_exports","DataTablePagination","module","exports","import_jsx_runtime","require","import_theme","import_components","import_react","import_forms","import_tamagui","import_paginationDefaults","import_withInterp","import_DataTableStateContext","controlWidth","chars","chrome","Math","max","formatRange","start","end","total","props","_props_pagination","_props_onPaginationChange","ctx","useDataTableState","insideTable","Boolean","pagination","pageIndex","state","pageSize","totalPages","computed","totalCount","totalRows","hasPreviousPage","hasNextPage","DEFAULT_PAGE_SIZE","onPaginationChange","p","actions","setPagination","pageSizeOptions","DEFAULT_PAGE_SIZE_OPTIONS","showInfo","showPageSizeSelector","showPageJump","showPagerWhenSinglePage","compact","sm","useMedia","knobProps","useResolvedKnobs","isMobile","availableWidth","setAvailableWidth","useState","measureWidth","measureWidth2","event","width","nativeEvent","layout","previous","ensureCompositeFocusRing","handlePageSizeChange","handlePageSizeChange2","newPageSize","Number","isFinite","handlePageChange","handlePageChange2","newPageIndex","currentPage","showPager","startItem","endItem","min","pageControls","getPaginationItems","length","controlBudget","MIN_PRESS_TARGET","control","height","paddingHorizontal","gapPixels","getTokenValue","gap","paddingPixels","panelPadding","padding","measuredBudget","numberedBudget","Infinity","simplePager","sizeOptions","useMemo","sizes","Set","filter","n","add","sort","a","b","showSize","showRange","showJump","jumpNonce","setJumpNonce","commitJump","commitJump2","pageNumber","revertInvalid","arguments","page","parseInt","isNaN","helperText","label","color","userSelect","sizeControl","jsxs","XStack","alignItems","flexShrink","children","jsx","Text","View","map","String","overflow","Select","onChange","options","size","sizeToken","pager","Pagination","variant","onPageChange","showFirstLast","jumpControl","Input","defaultValue","inputProps","inputMode","autoComplete","style","textAlign","onKeyDown","e","placeholder","bidiIsolate","rangeControl","whiteSpace","packed","role","onLayout","minWidth","maxWidth","flexGrow","flexWrap"],"sources":["../../../../src/components/DataTablePagination/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@multiplatform.one/table",
|
|
3
|
-
"version": "7.7.
|
|
3
|
+
"version": "7.7.6",
|
|
4
4
|
"description": "Advanced table components with filtering, pagination, sorting, and URL state management",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cross-platform",
|
|
@@ -80,13 +80,13 @@
|
|
|
80
80
|
"@tanstack/react-table": "^8.21.3",
|
|
81
81
|
"@tanstack/table-core": "^8.21.3",
|
|
82
82
|
"tamagui": "2.7.6",
|
|
83
|
-
"@multiplatform.one/components": "7.7.
|
|
84
|
-
"@multiplatform.one/forms": "7.7.
|
|
85
|
-
"@multiplatform.one/platform": "7.7.
|
|
86
|
-
"@multiplatform.one/rich-text": "7.7.
|
|
87
|
-
"@multiplatform.one/router": "7.7.
|
|
88
|
-
"@multiplatform.one/table-primitives": "7.7.
|
|
89
|
-
"@multiplatform.one/theme": "7.7.
|
|
83
|
+
"@multiplatform.one/components": "7.7.6",
|
|
84
|
+
"@multiplatform.one/forms": "7.7.6",
|
|
85
|
+
"@multiplatform.one/platform": "7.7.6",
|
|
86
|
+
"@multiplatform.one/rich-text": "7.7.6",
|
|
87
|
+
"@multiplatform.one/router": "7.7.6",
|
|
88
|
+
"@multiplatform.one/table-primitives": "7.7.6",
|
|
89
|
+
"@multiplatform.one/theme": "7.7.6"
|
|
90
90
|
},
|
|
91
91
|
"devDependencies": {
|
|
92
92
|
"@tamagui/build": "2.7.6",
|
|
@@ -98,10 +98,10 @@
|
|
|
98
98
|
"react": "19.2.5",
|
|
99
99
|
"react-dom": "19.2.5",
|
|
100
100
|
"vitest": "^4.1.5",
|
|
101
|
-
"@multiplatform.one/config": "7.7.
|
|
102
|
-
"@multiplatform.one/router": "7.7.
|
|
103
|
-
"@multiplatform.one/storybook": "7.7.
|
|
104
|
-
"@multiplatform.one/test-utils": "7.7.
|
|
101
|
+
"@multiplatform.one/config": "7.7.6",
|
|
102
|
+
"@multiplatform.one/router": "7.7.6",
|
|
103
|
+
"@multiplatform.one/storybook": "7.7.6",
|
|
104
|
+
"@multiplatform.one/test-utils": "7.7.6"
|
|
105
105
|
},
|
|
106
106
|
"peerDependencies": {
|
|
107
107
|
"i18next": "^25.0.0",
|
|
@@ -1,16 +1,23 @@
|
|
|
1
|
-
import { useState } from "react";
|
|
1
|
+
import { createElement, forwardRef, useEffect, useState } from "react";
|
|
2
2
|
import { renderWithProviders } from "@multiplatform.one/test-utils";
|
|
3
3
|
import { fireEvent, screen } from "@testing-library/react";
|
|
4
4
|
import { describe, expect, it, vi } from "vitest";
|
|
5
5
|
|
|
6
6
|
// The happy-dom env resolves useMedia to { sm: false } (mobile), which hides
|
|
7
|
-
// the desktop-only meta clusters
|
|
7
|
+
// the desktop-only meta clusters. Model a measured wide container and pin sm on
|
|
8
8
|
// so the range-label contract below is testable (same pattern as
|
|
9
9
|
// components/Debug and markdown/mdx specs).
|
|
10
10
|
vi.mock("tamagui", async (importOriginal) => {
|
|
11
11
|
const actual = await importOriginal<typeof import("tamagui")>();
|
|
12
12
|
return {
|
|
13
13
|
...actual,
|
|
14
|
+
XStack: forwardRef((props: any, ref) => {
|
|
15
|
+
const onLayout = props["aria-label"] === "Table pagination" ? props.onLayout : undefined;
|
|
16
|
+
useEffect(() => {
|
|
17
|
+
onLayout?.({ nativeEvent: { layout: { width: 1200, height: 44, x: 0, y: 0 } } });
|
|
18
|
+
}, [onLayout]);
|
|
19
|
+
return createElement(actual.XStack, { ...props, ref });
|
|
20
|
+
}),
|
|
14
21
|
useMedia: (...args: any[]) => ({ ...(actual.useMedia as any)(...args), sm: true }),
|
|
15
22
|
};
|
|
16
23
|
});
|
|
@@ -780,3 +780,22 @@ export const InfiniteVirtualized: Story = {
|
|
|
780
780
|
/>
|
|
781
781
|
),
|
|
782
782
|
};
|
|
783
|
+
|
|
784
|
+
export const NarrowPanel: Story = {
|
|
785
|
+
render: () => {
|
|
786
|
+
const [pagination, setPagination] = React.useState({ pageIndex: 0, pageSize: 25 });
|
|
787
|
+
return (
|
|
788
|
+
<YStack width={249}>
|
|
789
|
+
<DataTablePagination
|
|
790
|
+
compact
|
|
791
|
+
pagination={{
|
|
792
|
+
...pagination,
|
|
793
|
+
totalCount: 1000,
|
|
794
|
+
totalPages: Math.ceil(1000 / pagination.pageSize),
|
|
795
|
+
}}
|
|
796
|
+
onPaginationChange={setPagination}
|
|
797
|
+
/>
|
|
798
|
+
</YStack>
|
|
799
|
+
);
|
|
800
|
+
},
|
|
801
|
+
};
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { createElement, forwardRef } from "react";
|
|
2
|
+
import { renderWithProviders } from "@multiplatform.one/test-utils";
|
|
3
|
+
import { act, fireEvent, screen, within } from "@testing-library/react";
|
|
4
|
+
import { beforeEach, describe, expect, it, vi } from "vitest";
|
|
5
|
+
import type { LayoutChangeEvent } from "react-native";
|
|
6
|
+
|
|
7
|
+
const observed = vi.hoisted(() => ({
|
|
8
|
+
onLayout: undefined as undefined | ((event: LayoutChangeEvent) => void),
|
|
9
|
+
change: vi.fn(),
|
|
10
|
+
}));
|
|
11
|
+
vi.mock("tamagui", async (importOriginal) => {
|
|
12
|
+
const actual = await importOriginal<typeof import("tamagui")>();
|
|
13
|
+
return {
|
|
14
|
+
...actual,
|
|
15
|
+
useMedia: () => ({ sm: true }),
|
|
16
|
+
XStack: forwardRef((props: any, ref) => {
|
|
17
|
+
if (props["aria-label"] === "Table pagination") observed.onLayout = props.onLayout;
|
|
18
|
+
return createElement(actual.XStack, { ...props, ref });
|
|
19
|
+
}),
|
|
20
|
+
};
|
|
21
|
+
});
|
|
22
|
+
vi.mock("../DataTable/DataTableStateContext", () => ({
|
|
23
|
+
useDataTableState: () => ({
|
|
24
|
+
state: { pagination: { pageIndex: 0, pageSize: 25 } },
|
|
25
|
+
computed: { totalPages: 40, totalRows: 1000 },
|
|
26
|
+
actions: { setPagination: observed.change },
|
|
27
|
+
}),
|
|
28
|
+
}));
|
|
29
|
+
import { DataTablePagination } from "./index";
|
|
30
|
+
|
|
31
|
+
function measure(width: number) {
|
|
32
|
+
expect(observed.onLayout).toBeTypeOf("function");
|
|
33
|
+
act(() =>
|
|
34
|
+
observed.onLayout?.({
|
|
35
|
+
nativeEvent: { layout: { width, height: 44, x: 0, y: 0 } },
|
|
36
|
+
} as LayoutChangeEvent),
|
|
37
|
+
);
|
|
38
|
+
}
|
|
39
|
+
beforeEach(() => {
|
|
40
|
+
observed.change.mockReset();
|
|
41
|
+
observed.onLayout = undefined;
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
describe("bounded compact table pagination", () => {
|
|
45
|
+
it("starts safely and responds to container width even on a desktop viewport", () => {
|
|
46
|
+
renderWithProviders(<DataTablePagination compact />);
|
|
47
|
+
const pager = () => within(screen.getByRole("navigation", { name: "Page" }));
|
|
48
|
+
expect(pager().getAllByRole("button")).toHaveLength(2);
|
|
49
|
+
measure(1000);
|
|
50
|
+
expect(pager().getAllByRole("button").length).toBeGreaterThan(2);
|
|
51
|
+
measure(249);
|
|
52
|
+
expect(pager().getAllByRole("button")).toHaveLength(2);
|
|
53
|
+
expect(pager().getByText(/1.*40/)).toBeInTheDocument();
|
|
54
|
+
expect(screen.getByLabelText("Select rows per page")).toBeInTheDocument();
|
|
55
|
+
fireEvent.click(pager().getByLabelText("Go to next page"));
|
|
56
|
+
expect(observed.change).toHaveBeenCalledExactlyOnceWith({ pageIndex: 1, pageSize: 25 });
|
|
57
|
+
});
|
|
58
|
+
});
|
|
@@ -1,9 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import {
|
|
2
|
+
ensureCompositeFocusRing,
|
|
3
|
+
MIN_PRESS_TARGET,
|
|
4
|
+
useResolvedKnobs,
|
|
5
|
+
} from "@multiplatform.one/theme";
|
|
6
|
+
import { Pagination, getPaginationItems } from "@multiplatform.one/components";
|
|
3
7
|
import { useMemo, useState } from "react";
|
|
4
8
|
import type React from "react";
|
|
5
9
|
import { Input, Select } from "@multiplatform.one/forms";
|
|
6
|
-
import { Text, View, XStack, useMedia } from "tamagui";
|
|
10
|
+
import { Text, View, XStack, getTokenValue, useMedia } from "tamagui";
|
|
7
11
|
import type { TablePagination, TablePaginationState } from "../../types";
|
|
8
12
|
import { DEFAULT_PAGE_SIZE, DEFAULT_PAGE_SIZE_OPTIONS } from "../../utils/paginationDefaults";
|
|
9
13
|
import { bidiIsolate } from "../../utils/withInterp";
|
|
@@ -35,7 +39,7 @@ function formatRange(start: number, end: number, total: number) {
|
|
|
35
39
|
|
|
36
40
|
/**
|
|
37
41
|
* DataTable footer pager. Page navigation is the catalog
|
|
38
|
-
* `Pagination` component (`variant="numbered"`) — one pagination idiom
|
|
42
|
+
* `Pagination` component (`variant={simplePager ? "simple" : "numbered"}`) — one pagination idiom
|
|
39
43
|
* across the system. This wrapper adds the table-specific chrome:
|
|
40
44
|
* rows-per-page selector, go-to-page jump, and the item-range summary.
|
|
41
45
|
*
|
|
@@ -84,6 +88,11 @@ export function DataTablePagination(props: DataTablePaginationProps) {
|
|
|
84
88
|
const { sm } = useMedia();
|
|
85
89
|
const { knobProps } = useResolvedKnobs(compact === undefined ? undefined : { compact });
|
|
86
90
|
const isMobile = !sm;
|
|
91
|
+
const [availableWidth, setAvailableWidth] = useState<number | undefined>();
|
|
92
|
+
const measureWidth = (event: import("react-native").LayoutChangeEvent) => {
|
|
93
|
+
const width = event.nativeEvent.layout.width;
|
|
94
|
+
if (width > 0) setAvailableWidth((previous) => (previous === width ? previous : width));
|
|
95
|
+
};
|
|
87
96
|
// LC-71: mount the composite-boundary ring sheet before Select/Input paint.
|
|
88
97
|
ensureCompositeFocusRing();
|
|
89
98
|
|
|
@@ -112,6 +121,25 @@ export function DataTablePagination(props: DataTablePaginationProps) {
|
|
|
112
121
|
const startItem = totalCount === 0 ? 0 : pagination.pageIndex * pagination.pageSize + 1;
|
|
113
122
|
const endItem = Math.min((pagination.pageIndex + 1) * pagination.pageSize, totalCount);
|
|
114
123
|
|
|
124
|
+
// Budget the numbered window from the active theme's control geometry.
|
|
125
|
+
// An unmeasured host uses the safe simple presentation, including SSR.
|
|
126
|
+
const pageControls =
|
|
127
|
+
getPaginationItems(totalPages, currentPage).length + 2 + (!compact && !isMobile ? 2 : 0);
|
|
128
|
+
const controlBudget = Math.max(
|
|
129
|
+
MIN_PRESS_TARGET,
|
|
130
|
+
knobProps.control.height + knobProps.control.paddingHorizontal * 2,
|
|
131
|
+
);
|
|
132
|
+
const gapPixels = Number(
|
|
133
|
+
getTokenValue(knobProps.gap.gap as Parameters<typeof getTokenValue>[0], "space"),
|
|
134
|
+
);
|
|
135
|
+
const paddingPixels = Number(
|
|
136
|
+
getTokenValue(knobProps.panelPadding.padding as Parameters<typeof getTokenValue>[0], "space"),
|
|
137
|
+
);
|
|
138
|
+
const measuredBudget =
|
|
139
|
+
pageControls * controlBudget + Math.max(0, pageControls - 1) * gapPixels + paddingPixels * 2;
|
|
140
|
+
const numberedBudget = Number.isFinite(measuredBudget) ? measuredBudget : Infinity;
|
|
141
|
+
const simplePager = availableWidth === undefined || availableWidth < numberedBudget;
|
|
142
|
+
|
|
115
143
|
const sizeOptions = useMemo(() => {
|
|
116
144
|
const sizes = new Set(pageSizeOptions.filter((n) => Number.isFinite(n) && n > 0));
|
|
117
145
|
if (pagination.pageSize > 0) sizes.add(pagination.pageSize);
|
|
@@ -121,7 +149,7 @@ export function DataTablePagination(props: DataTablePaginationProps) {
|
|
|
121
149
|
const showSize = showPageSizeSelector;
|
|
122
150
|
// Compact-inside-DataTable: the table footer already paints the range.
|
|
123
151
|
const showRange = showInfo && !(compact && insideTable);
|
|
124
|
-
const showJump = showPageJump && showPager && !compact && !isMobile;
|
|
152
|
+
const showJump = showPageJump && showPager && !compact && !isMobile && !simplePager;
|
|
125
153
|
|
|
126
154
|
const [jumpNonce, setJumpNonce] = useState(0);
|
|
127
155
|
|
|
@@ -172,11 +200,11 @@ export function DataTablePagination(props: DataTablePaginationProps) {
|
|
|
172
200
|
|
|
173
201
|
const pager = showPager ? (
|
|
174
202
|
<Pagination
|
|
175
|
-
variant="numbered"
|
|
203
|
+
variant={simplePager ? "simple" : "numbered"}
|
|
176
204
|
total={totalPages}
|
|
177
205
|
page={currentPage}
|
|
178
206
|
onPageChange={(page) => handlePageChange(page - 1)}
|
|
179
|
-
showFirstLast={!compact && !isMobile}
|
|
207
|
+
showFirstLast={!simplePager && !compact && !isMobile}
|
|
180
208
|
aria-label="Page"
|
|
181
209
|
/>
|
|
182
210
|
) : null;
|
|
@@ -228,6 +256,12 @@ export function DataTablePagination(props: DataTablePaginationProps) {
|
|
|
228
256
|
<XStack
|
|
229
257
|
role="group"
|
|
230
258
|
aria-label="Table pagination"
|
|
259
|
+
onLayout={measureWidth}
|
|
260
|
+
minWidth={0}
|
|
261
|
+
maxWidth="100%"
|
|
262
|
+
flexGrow={1}
|
|
263
|
+
flexShrink={1}
|
|
264
|
+
flexWrap="wrap"
|
|
231
265
|
alignItems="center"
|
|
232
266
|
overflow="visible"
|
|
233
267
|
{...knobProps.gap}
|
|
@@ -245,6 +279,8 @@ export function DataTablePagination(props: DataTablePaginationProps) {
|
|
|
245
279
|
<XStack
|
|
246
280
|
role="group"
|
|
247
281
|
aria-label="Table pagination"
|
|
282
|
+
onLayout={measureWidth}
|
|
283
|
+
minWidth={0}
|
|
248
284
|
alignItems="center"
|
|
249
285
|
overflow="visible"
|
|
250
286
|
{...knobProps.gapLg}
|
|
@@ -15,7 +15,7 @@ export interface DataTablePaginationProps {
|
|
|
15
15
|
}
|
|
16
16
|
/**
|
|
17
17
|
* DataTable footer pager. Page navigation is the catalog
|
|
18
|
-
* `Pagination` component (`variant="numbered"`) — one pagination idiom
|
|
18
|
+
* `Pagination` component (`variant={simplePager ? "simple" : "numbered"}`) — one pagination idiom
|
|
19
19
|
* across the system. This wrapper adds the table-specific chrome:
|
|
20
20
|
* rows-per-page selector, go-to-page jump, and the item-range summary.
|
|
21
21
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/DataTablePagination/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/DataTablePagination/index.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAKzE,MAAM,WAAW,wBAAwB;IACvC,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAClC,kBAAkB,CAAC,EAAE,CAAC,UAAU,EAAE,eAAe,KAAK,IAAI,CAAC;IAC3D,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;OAGG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAWD;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,kDA2QlE"}
|