pne-ui 4.3.0 → 4.3.2
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/README.md +29 -6
- package/cjs/component/table/AbstractTable.d.ts +15 -0
- package/cjs/component/table/AbstractTable.js.map +1 -1
- package/cjs/component/table/PneTablePaginationActions.d.ts +0 -15
- package/cjs/component/table/PneTablePaginationActions.js +123 -185
- package/cjs/component/table/PneTablePaginationActions.js.map +1 -1
- package/cjs/component/table/PneTableSelectionControls.js +1 -9
- package/cjs/component/table/PneTableSelectionControls.js.map +1 -1
- package/cjs/component/table/PneTableToolbar.d.ts +0 -9
- package/cjs/component/table/PneTableToolbar.js +28 -100
- package/cjs/component/table/PneTableToolbar.js.map +1 -1
- package/cjs/component/table/measureNaturalWidth.d.ts +21 -0
- package/cjs/component/table/measureNaturalWidth.js +42 -0
- package/cjs/component/table/measureNaturalWidth.js.map +1 -0
- package/esm/component/table/AbstractTable.d.ts +15 -0
- package/esm/component/table/AbstractTable.js.map +1 -1
- package/esm/component/table/PneTablePaginationActions.d.ts +0 -15
- package/esm/component/table/PneTablePaginationActions.js +124 -184
- package/esm/component/table/PneTablePaginationActions.js.map +1 -1
- package/esm/component/table/PneTableSelectionControls.js +1 -9
- package/esm/component/table/PneTableSelectionControls.js.map +1 -1
- package/esm/component/table/PneTableToolbar.d.ts +0 -9
- package/esm/component/table/PneTableToolbar.js +28 -98
- package/esm/component/table/PneTableToolbar.js.map +1 -1
- package/esm/component/table/measureNaturalWidth.d.ts +21 -0
- package/esm/component/table/measureNaturalWidth.js +38 -0
- package/esm/component/table/measureNaturalWidth.js.map +1 -0
- package/package.json +1 -1
- package/cjs/component/table/tableLayoutMeasurement.d.ts +0 -7
- package/cjs/component/table/tableLayoutMeasurement.js +0 -12
- package/cjs/component/table/tableLayoutMeasurement.js.map +0 -1
- package/esm/component/table/tableLayoutMeasurement.d.ts +0 -7
- package/esm/component/table/tableLayoutMeasurement.js +0 -8
- package/esm/component/table/tableLayoutMeasurement.js.map +0 -1
|
@@ -1,30 +1,33 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.resolvePneTableToolbarLayout = void 0;
|
|
4
3
|
const tslib_1 = require("tslib");
|
|
5
|
-
const react_1 = tslib_1.
|
|
4
|
+
const react_1 = tslib_1.__importDefault(require("react"));
|
|
6
5
|
const material_1 = require("@mui/material");
|
|
7
6
|
const AutoTestAttribute_1 = require("../AutoTestAttribute");
|
|
8
|
-
|
|
7
|
+
/** Gap between the control groups, and between the rows they wrap onto. */
|
|
9
8
|
const CONTROL_GROUP_GAP = 8;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
9
|
+
/**
|
|
10
|
+
* Each control group claims its natural single-row width (`flex-basis:
|
|
11
|
+
* max-content`), so the browser moves the whole group onto the next row rather
|
|
12
|
+
* than squeezing it - the group is never split mid-way. `flex-shrink: 1` then
|
|
13
|
+
* lets a group that already owns a row use that row and wrap inside itself.
|
|
14
|
+
*
|
|
15
|
+
* The band therefore reads its layout from the width the parent offers and from
|
|
16
|
+
* the intrinsic width of its content, and never from the layout it is currently
|
|
17
|
+
* rendering. That is what keeps it stable: a responsive decision that measures
|
|
18
|
+
* its own result feeds back into itself, and with fractional CSS pixels the
|
|
19
|
+
* feedback oscillates.
|
|
20
|
+
*/
|
|
21
|
+
const groupSx = {
|
|
21
22
|
alignItems: 'center',
|
|
22
23
|
display: 'flex',
|
|
24
|
+
flexBasis: 'max-content',
|
|
25
|
+
flexGrow: 0,
|
|
26
|
+
flexShrink: 1,
|
|
27
|
+
flexWrap: 'wrap',
|
|
23
28
|
justifyContent: 'flex-end',
|
|
24
|
-
maxWidth: '100%',
|
|
25
29
|
minWidth: 0,
|
|
26
|
-
|
|
27
|
-
});
|
|
30
|
+
};
|
|
28
31
|
const PneTableToolbar = (props) => {
|
|
29
32
|
const { 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy, contextual, persistent, sx, ...rootProps } = props;
|
|
30
33
|
const hasContextual = contextual !== undefined
|
|
@@ -33,95 +36,20 @@ const PneTableToolbar = (props) => {
|
|
|
33
36
|
const hasPersistent = persistent !== undefined
|
|
34
37
|
&& persistent !== null
|
|
35
38
|
&& typeof persistent !== 'boolean';
|
|
36
|
-
|
|
37
|
-
const contextualRef = (0, react_1.useRef)(null);
|
|
38
|
-
const contextualContentRef = (0, react_1.useRef)(null);
|
|
39
|
-
const persistentRef = (0, react_1.useRef)(null);
|
|
40
|
-
const persistentContentRef = (0, react_1.useRef)(null);
|
|
41
|
-
const [layout, setLayout] = (0, react_1.useState)('inline');
|
|
42
|
-
useToolbarLayoutEffect(() => {
|
|
43
|
-
const root = rootRef.current;
|
|
44
|
-
if (!root) {
|
|
45
|
-
return;
|
|
46
|
-
}
|
|
47
|
-
const ownerWindow = root.ownerDocument?.defaultView;
|
|
48
|
-
if (!ownerWindow) {
|
|
49
|
-
return;
|
|
50
|
-
}
|
|
51
|
-
const measureLayout = () => {
|
|
52
|
-
const measurePreferredWidth = (element) => {
|
|
53
|
-
if (!element) {
|
|
54
|
-
return 0;
|
|
55
|
-
}
|
|
56
|
-
return Math.max(element.scrollWidth, element.getBoundingClientRect().width);
|
|
57
|
-
};
|
|
58
|
-
const availableWidth = root.clientWidth || root.getBoundingClientRect().width;
|
|
59
|
-
const nextLayout = (0, exports.resolvePneTableToolbarLayout)({
|
|
60
|
-
availableWidth,
|
|
61
|
-
contextualWidth: measurePreferredWidth(contextualContentRef.current),
|
|
62
|
-
persistentWidth: measurePreferredWidth(persistentContentRef.current),
|
|
63
|
-
hasContextual,
|
|
64
|
-
hasPersistent,
|
|
65
|
-
});
|
|
66
|
-
setLayout(currentLayout => currentLayout === nextLayout
|
|
67
|
-
? currentLayout
|
|
68
|
-
: nextLayout);
|
|
69
|
-
};
|
|
70
|
-
measureLayout();
|
|
71
|
-
const ResizeObserverCtor = ownerWindow.ResizeObserver;
|
|
72
|
-
if (ResizeObserverCtor) {
|
|
73
|
-
const resizeObserver = new ResizeObserverCtor(measureLayout);
|
|
74
|
-
const observedElements = [
|
|
75
|
-
root,
|
|
76
|
-
contextualRef.current,
|
|
77
|
-
contextualContentRef.current,
|
|
78
|
-
...Array.from(contextualContentRef.current?.children ?? []),
|
|
79
|
-
persistentRef.current,
|
|
80
|
-
persistentContentRef.current,
|
|
81
|
-
...Array.from(persistentContentRef.current?.children ?? []),
|
|
82
|
-
];
|
|
83
|
-
observedElements.forEach(element => {
|
|
84
|
-
if (element) {
|
|
85
|
-
resizeObserver.observe(element);
|
|
86
|
-
}
|
|
87
|
-
});
|
|
88
|
-
return () => resizeObserver.disconnect();
|
|
89
|
-
}
|
|
90
|
-
ownerWindow.addEventListener('resize', measureLayout);
|
|
91
|
-
return () => ownerWindow.removeEventListener('resize', measureLayout);
|
|
92
|
-
}, [hasContextual, hasPersistent]);
|
|
93
|
-
const groupSx = getGroupSx(layout);
|
|
94
|
-
return react_1.default.createElement(material_1.Box, { ...rootProps, ...(0, AutoTestAttribute_1.createAutoTestAttributes)('table-control-bar', layout), "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, ref: rootRef, role: 'group', sx: [
|
|
39
|
+
return react_1.default.createElement(material_1.Box, { ...rootProps, ...(0, AutoTestAttribute_1.createAutoTestAttributes)('table-control-bar'), "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, role: 'group', sx: [
|
|
95
40
|
{
|
|
96
41
|
alignItems: 'center',
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
: 'minmax(0, 1fr)',
|
|
102
|
-
maxWidth: '100%',
|
|
42
|
+
display: 'flex',
|
|
43
|
+
flexWrap: 'wrap',
|
|
44
|
+
gap: `${CONTROL_GROUP_GAP}px`,
|
|
45
|
+
justifyContent: 'flex-end',
|
|
103
46
|
minWidth: 0,
|
|
104
|
-
|
|
105
|
-
width: layout === 'stacked' ? '100%' : 'max-content',
|
|
47
|
+
width: '100%',
|
|
106
48
|
},
|
|
107
49
|
...(Array.isArray(sx) ? sx : [sx]),
|
|
108
50
|
] },
|
|
109
|
-
hasContextual ? react_1.default.createElement(material_1.Box, { ...(0, AutoTestAttribute_1.createAutoTestAttributes)('table-contextual-controls'), key: 'contextual',
|
|
110
|
-
|
|
111
|
-
alignItems: 'center',
|
|
112
|
-
display: 'flex',
|
|
113
|
-
maxWidth: '100%',
|
|
114
|
-
minWidth: 0,
|
|
115
|
-
width: 'max-content',
|
|
116
|
-
} }, contextual)) : null,
|
|
117
|
-
hasPersistent ? react_1.default.createElement(material_1.Box, { ...(0, AutoTestAttribute_1.createAutoTestAttributes)('table-persistent-controls'), key: 'persistent', ref: persistentRef, sx: groupSx },
|
|
118
|
-
react_1.default.createElement(material_1.Box, { ref: persistentContentRef, sx: {
|
|
119
|
-
alignItems: 'center',
|
|
120
|
-
display: 'flex',
|
|
121
|
-
maxWidth: '100%',
|
|
122
|
-
minWidth: 0,
|
|
123
|
-
width: 'max-content',
|
|
124
|
-
} }, persistent)) : null);
|
|
51
|
+
hasContextual ? react_1.default.createElement(material_1.Box, { ...(0, AutoTestAttribute_1.createAutoTestAttributes)('table-contextual-controls'), key: 'contextual', sx: groupSx }, contextual) : null,
|
|
52
|
+
hasPersistent ? react_1.default.createElement(material_1.Box, { ...(0, AutoTestAttribute_1.createAutoTestAttributes)('table-persistent-controls'), key: 'persistent', sx: groupSx }, persistent) : null);
|
|
125
53
|
};
|
|
126
54
|
exports.default = PneTableToolbar;
|
|
127
55
|
//# sourceMappingURL=PneTableToolbar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PneTableToolbar.js","sourceRoot":"","sources":["../../../src/component/table/PneTableToolbar.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PneTableToolbar.js","sourceRoot":"","sources":["../../../src/component/table/PneTableToolbar.tsx"],"names":[],"mappings":";;;AAAA,0DAAyB;AACzB,4CAA2D;AAC3D,4DAA6D;AAsB7D,2EAA2E;AAC3E,MAAM,iBAAiB,GAAG,CAAC,CAAA;AAE3B;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,GAAmB;IAC5B,UAAU,EAAE,QAAQ;IACpB,OAAO,EAAE,MAAM;IACf,SAAS,EAAE,aAAa;IACxB,QAAQ,EAAE,CAAC;IACX,UAAU,EAAE,CAAC;IACb,QAAQ,EAAE,MAAM;IAChB,cAAc,EAAE,UAAU;IAC1B,QAAQ,EAAE,CAAC;CACd,CAAA;AAED,MAAM,eAAe,GAAG,CAAC,KAA2B,EAAE,EAAE;IACpD,MAAM,EACF,YAAY,EAAE,SAAS,EACvB,iBAAiB,EAAE,cAAc,EACjC,UAAU,EACV,UAAU,EACV,EAAE,EACF,GAAG,SAAS,EACf,GAAG,KAAK,CAAA;IACT,MAAM,aAAa,GAAG,UAAU,KAAK,SAAS;WACvC,UAAU,KAAK,IAAI;WACnB,OAAO,UAAU,KAAK,SAAS,CAAA;IACtC,MAAM,aAAa,GAAG,UAAU,KAAK,SAAS;WACvC,UAAU,KAAK,IAAI;WACnB,OAAO,UAAU,KAAK,SAAS,CAAA;IAEtC,OAAO,8BAAC,cAAG,OACH,SAAS,KACT,IAAA,4CAAwB,EAAC,mBAAmB,CAAC,gBACrC,SAAS,qBACJ,cAAc,EAC/B,IAAI,EAAC,OAAO,EACZ,EAAE,EAAE;YACA;gBACI,UAAU,EAAE,QAAQ;gBACpB,OAAO,EAAE,MAAM;gBACf,QAAQ,EAAE,MAAM;gBAChB,GAAG,EAAE,GAAG,iBAAiB,IAAI;gBAC7B,cAAc,EAAE,UAAU;gBAC1B,QAAQ,EAAE,CAAC;gBACX,KAAK,EAAE,MAAM;aAChB;YACD,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;SACrC;QAEA,aAAa,CAAC,CAAC,CAAC,8BAAC,cAAG,OACb,IAAA,4CAAwB,EAAC,2BAA2B,CAAC,EACzD,GAAG,EAAC,YAAY,EAChB,EAAE,EAAE,OAAO,IAEV,UAAU,CACT,CAAC,CAAC,CAAC,IAAI;QACZ,aAAa,CAAC,CAAC,CAAC,8BAAC,cAAG,OACb,IAAA,4CAAwB,EAAC,2BAA2B,CAAC,EACzD,GAAG,EAAC,YAAY,EAChB,EAAE,EAAE,OAAO,IAEV,UAAU,CACT,CAAC,CAAC,CAAC,IAAI,CACX,CAAA;AACV,CAAC,CAAA;AAED,kBAAe,eAAe,CAAA"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Width an element needs to lay its content out on a single row.
|
|
3
|
+
*
|
|
4
|
+
* This is deliberately *not* the measurement that made the control bands flap
|
|
5
|
+
* before. That code measured the elements it had just laid out, so the answer
|
|
6
|
+
* described the space the band had already been given and every fit check was
|
|
7
|
+
* self-confirming; with two such bands measuring each other, fractional CSS
|
|
8
|
+
* pixels were enough to start an endless ResizeObserver cycle.
|
|
9
|
+
*
|
|
10
|
+
* A natural width does not depend on the space offered: it is a property of the
|
|
11
|
+
* content alone. A layout decision taken from it therefore cannot feed back into
|
|
12
|
+
* the measurement, which is what lets the bands place their rows from CSS and
|
|
13
|
+
* measure only when their content changes - never on resize.
|
|
14
|
+
*
|
|
15
|
+
* The element is measured in place, by briefly taking it out of flow rather than
|
|
16
|
+
* by cloning it into `document.body`. A clone leaves inherited styles and
|
|
17
|
+
* ancestor selectors behind, so it measures a different element than the one on
|
|
18
|
+
* screen; taken out of flow, the element keeps its own cascade. Callers must run
|
|
19
|
+
* this inside `useLayoutEffect`, where the swap happens before paint.
|
|
20
|
+
*/
|
|
21
|
+
export declare const measureNaturalWidth: (element: HTMLElement | null | undefined) => number;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.measureNaturalWidth = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Width an element needs to lay its content out on a single row.
|
|
6
|
+
*
|
|
7
|
+
* This is deliberately *not* the measurement that made the control bands flap
|
|
8
|
+
* before. That code measured the elements it had just laid out, so the answer
|
|
9
|
+
* described the space the band had already been given and every fit check was
|
|
10
|
+
* self-confirming; with two such bands measuring each other, fractional CSS
|
|
11
|
+
* pixels were enough to start an endless ResizeObserver cycle.
|
|
12
|
+
*
|
|
13
|
+
* A natural width does not depend on the space offered: it is a property of the
|
|
14
|
+
* content alone. A layout decision taken from it therefore cannot feed back into
|
|
15
|
+
* the measurement, which is what lets the bands place their rows from CSS and
|
|
16
|
+
* measure only when their content changes - never on resize.
|
|
17
|
+
*
|
|
18
|
+
* The element is measured in place, by briefly taking it out of flow rather than
|
|
19
|
+
* by cloning it into `document.body`. A clone leaves inherited styles and
|
|
20
|
+
* ancestor selectors behind, so it measures a different element than the one on
|
|
21
|
+
* screen; taken out of flow, the element keeps its own cascade. Callers must run
|
|
22
|
+
* this inside `useLayoutEffect`, where the swap happens before paint.
|
|
23
|
+
*/
|
|
24
|
+
const measureNaturalWidth = (element) => {
|
|
25
|
+
if (!element) {
|
|
26
|
+
return 0;
|
|
27
|
+
}
|
|
28
|
+
const savedCssText = element.style.cssText;
|
|
29
|
+
Object.assign(element.style, {
|
|
30
|
+
left: '-99999px',
|
|
31
|
+
maxWidth: 'none',
|
|
32
|
+
position: 'fixed',
|
|
33
|
+
top: '0',
|
|
34
|
+
visibility: 'hidden',
|
|
35
|
+
width: 'max-content',
|
|
36
|
+
});
|
|
37
|
+
const naturalWidth = element.getBoundingClientRect().width;
|
|
38
|
+
element.style.cssText = savedCssText;
|
|
39
|
+
return naturalWidth;
|
|
40
|
+
};
|
|
41
|
+
exports.measureNaturalWidth = measureNaturalWidth;
|
|
42
|
+
//# sourceMappingURL=measureNaturalWidth.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"measureNaturalWidth.js","sourceRoot":"","sources":["../../../src/component/table/measureNaturalWidth.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACI,MAAM,mBAAmB,GAAG,CAAC,OAAuC,EAAU,EAAE;IACnF,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,OAAO,CAAC,CAAA;IACZ,CAAC;IAED,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAA;IAE1C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE;QACzB,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE,MAAM;QAChB,QAAQ,EAAE,OAAO;QACjB,GAAG,EAAE,GAAG;QACR,UAAU,EAAE,QAAQ;QACpB,KAAK,EAAE,aAAa;KACvB,CAAC,CAAA;IAEF,MAAM,YAAY,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC,KAAK,CAAA;IAE1D,OAAO,CAAC,KAAK,CAAC,OAAO,GAAG,YAAY,CAAA;IAEpC,OAAO,YAAY,CAAA;AACvB,CAAC,CAAA;AArBY,QAAA,mBAAmB,uBAqB/B"}
|
|
@@ -15,6 +15,21 @@ export type PaginatorProps = {
|
|
|
15
15
|
requestScrollToPagination?: () => void;
|
|
16
16
|
activeActionSx?: SxProps;
|
|
17
17
|
duplicatePagination?: boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Overrides the band width in px at which the toolbar stops sharing the
|
|
20
|
+
* pagination row. Normally there is nothing to set: the threshold is
|
|
21
|
+
* measured from the content, so it already fits whatever this table put in
|
|
22
|
+
* the toolbar and whatever the current locale makes of the labels.
|
|
23
|
+
*
|
|
24
|
+
* The band is a container query, so this is the width of the band itself,
|
|
25
|
+
* not of the viewport - a table inside a narrow column behaves like a narrow
|
|
26
|
+
* screen. The pagination needs no threshold at all: its two halves wrap by
|
|
27
|
+
* content.
|
|
28
|
+
*/
|
|
29
|
+
controlRowBreakpoints?: {
|
|
30
|
+
/** Below this width the toolbar takes a row of its own. */
|
|
31
|
+
toolbar?: number;
|
|
32
|
+
};
|
|
18
33
|
};
|
|
19
34
|
export type TableProps<D> = {
|
|
20
35
|
/** Stable, non-secret instance identifier; required for unambiguous multiple-table scopes. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractTable.js","sourceRoot":"","sources":["../../../src/component/table/AbstractTable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAC,QAAQ,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAmB,MAAM,OAAO,CAAC;AAC5F,OAAO,KAAK,MAAM,qBAAqB,CAAC;AACxC,OAAO,SAAS,MAAM,yBAAyB,CAAC;AAChD,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAC1D,OAAO,SAAS,MAAM,yBAAyB,CAAC;AAChD,OAAO,GAAG,MAAM,mBAAmB,CAAC;AACpC,OAAO,QAAQ,MAAM,wBAAwB,CAAC;AAG9C,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AACtD,OAAO,yBAAyB,MAAM,6BAA6B,CAAC;AAEpE,OAAO,EAAC,cAAc,EAAC,MAAM,eAAe,CAAC;AAC7C,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAC,wBAAwB,EAAC,MAAM,sBAAsB,CAAC;AAE9D,MAAM,iBAAiB,GAAG,OAAO,CAAC;AAClC,MAAM,6BAA6B,GAAG,aAAa,CAAC;AACpD,MAAM,4BAA4B,GAAG,YAAY,CAAC;AAClD,MAAM,0BAA0B,GAAG,gBAAgB,CAAC;AACpD,MAAM,8BAA8B,GAAG,oBAAoB,CAAC;AAC5D,MAAM,yBAAyB,GAAG,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"AbstractTable.js","sourceRoot":"","sources":["../../../src/component/table/AbstractTable.tsx"],"names":[],"mappings":"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"}
|
|
@@ -11,20 +11,5 @@ interface IPaginationActionsProps {
|
|
|
11
11
|
toolbarElementKey?: React.Key | null;
|
|
12
12
|
toolbarElementType?: unknown;
|
|
13
13
|
}
|
|
14
|
-
export type PneTablePaginationActionsLayout = 'inline' | 'toolbar-stacked' | 'pagination-stacked';
|
|
15
|
-
type ResolvePaginationActionsLayoutParams = {
|
|
16
|
-
availableWidth: number;
|
|
17
|
-
hasToolbar: boolean;
|
|
18
|
-
navigationMinimumWidth: number;
|
|
19
|
-
navigationPreferredWidth: number;
|
|
20
|
-
pageSizesWidth: number;
|
|
21
|
-
toolbarPreferredWidth: number;
|
|
22
|
-
};
|
|
23
|
-
/**
|
|
24
|
-
* Chooses the smallest layout that keeps each control group on an intentional row.
|
|
25
|
-
* Widths are measured from the rendered content, so consumers are not tied to a
|
|
26
|
-
* viewport breakpoint or to a particular set of view labels/page sizes.
|
|
27
|
-
*/
|
|
28
|
-
export declare const resolvePneTablePaginationActionsLayout: ({ availableWidth, hasToolbar, navigationMinimumWidth, navigationPreferredWidth, pageSizesWidth, toolbarPreferredWidth, }: ResolvePaginationActionsLayoutParams) => PneTablePaginationActionsLayout;
|
|
29
14
|
declare const PneTablePaginationActions: (props: IPaginationActionsProps) => React.JSX.Element;
|
|
30
15
|
export default PneTablePaginationActions;
|