@navikt/ds-react 4.8.0 → 4.9.0
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/_docs.json +22 -1
- package/cjs/table/ExpandableRow.js +20 -8
- package/esm/table/ExpandableRow.d.ts +6 -1
- package/esm/table/ExpandableRow.js +20 -8
- package/esm/table/ExpandableRow.js.map +1 -1
- package/package.json +2 -2
- package/src/table/ExpandableRow.tsx +28 -8
- package/src/table/stories/table-expandable.stories.tsx +62 -1
package/_docs.json
CHANGED
|
@@ -7810,7 +7810,7 @@
|
|
|
7810
7810
|
"defaultValue": {
|
|
7811
7811
|
"value": "false"
|
|
7812
7812
|
},
|
|
7813
|
-
"description": "Disable
|
|
7813
|
+
"description": "Disable expansion. shadeOnHover will not be visible.",
|
|
7814
7814
|
"name": "expansionDisabled",
|
|
7815
7815
|
"parent": {
|
|
7816
7816
|
"fileName": "src/table/ExpandableRow.tsx",
|
|
@@ -7827,6 +7827,27 @@
|
|
|
7827
7827
|
"name": "boolean"
|
|
7828
7828
|
}
|
|
7829
7829
|
},
|
|
7830
|
+
"expandOnRowClick": {
|
|
7831
|
+
"defaultValue": {
|
|
7832
|
+
"value": "false"
|
|
7833
|
+
},
|
|
7834
|
+
"description": "Makes the whole row clickable",
|
|
7835
|
+
"name": "expandOnRowClick",
|
|
7836
|
+
"parent": {
|
|
7837
|
+
"fileName": "src/table/ExpandableRow.tsx",
|
|
7838
|
+
"name": "ExpandableRowProps"
|
|
7839
|
+
},
|
|
7840
|
+
"declarations": [
|
|
7841
|
+
{
|
|
7842
|
+
"fileName": "src/table/ExpandableRow.tsx",
|
|
7843
|
+
"name": "ExpandableRowProps"
|
|
7844
|
+
}
|
|
7845
|
+
],
|
|
7846
|
+
"required": false,
|
|
7847
|
+
"type": {
|
|
7848
|
+
"name": "boolean"
|
|
7849
|
+
}
|
|
7850
|
+
},
|
|
7830
7851
|
"colSpan": {
|
|
7831
7852
|
"defaultValue": {
|
|
7832
7853
|
"value": "999"
|
|
@@ -46,23 +46,35 @@ const DataCell_1 = __importDefault(require("./DataCell"));
|
|
|
46
46
|
const Row_1 = __importDefault(require("./Row"));
|
|
47
47
|
const aksel_icons_1 = require("@navikt/aksel-icons");
|
|
48
48
|
exports.ExpandableRow = (0, react_1.forwardRef)((_a, ref) => {
|
|
49
|
-
var { className, children, content, togglePlacement = "left", defaultOpen = false, open, onOpenChange, expansionDisabled = false, colSpan = 999 } = _a, rest = __rest(_a, ["className", "children", "content", "togglePlacement", "defaultOpen", "open", "onOpenChange", "expansionDisabled", "colSpan"]);
|
|
49
|
+
var { className, children, content, togglePlacement = "left", defaultOpen = false, open, onOpenChange, expansionDisabled = false, expandOnRowClick = false, colSpan = 999 } = _a, rest = __rest(_a, ["className", "children", "content", "togglePlacement", "defaultOpen", "open", "onOpenChange", "expansionDisabled", "expandOnRowClick", "colSpan"]);
|
|
50
50
|
const [internalOpen, setInternalOpen] = (0, react_1.useState)(defaultOpen);
|
|
51
51
|
const id = (0, __1.useId)();
|
|
52
52
|
const isOpen = open !== null && open !== void 0 ? open : internalOpen;
|
|
53
|
+
const expansionHandler = (e) => {
|
|
54
|
+
onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(!isOpen);
|
|
55
|
+
if (open === undefined) {
|
|
56
|
+
setInternalOpen((open) => !open);
|
|
57
|
+
}
|
|
58
|
+
e.stopPropagation();
|
|
59
|
+
};
|
|
60
|
+
const onRowClick = (e) => {
|
|
61
|
+
if (e.target.nodeName === "TD" || e.target.nodeName === "TH") {
|
|
62
|
+
expansionHandler(e);
|
|
63
|
+
}
|
|
64
|
+
};
|
|
53
65
|
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
54
66
|
react_1.default.createElement(Row_1.default, Object.assign({}, rest, { ref: ref, className: (0, clsx_1.default)("navds-table__expandable-row", className, {
|
|
55
67
|
"navds-table__expandable-row--open": isOpen,
|
|
56
|
-
|
|
68
|
+
"navds-table__expandable-row--expansion-disabled": expansionDisabled,
|
|
69
|
+
}), onClick: (e) => {
|
|
70
|
+
var _a;
|
|
71
|
+
!expansionDisabled && expandOnRowClick && onRowClick(e);
|
|
72
|
+
(_a = rest === null || rest === void 0 ? void 0 : rest.onClick) === null || _a === void 0 ? void 0 : _a.call(rest, e);
|
|
73
|
+
} }),
|
|
57
74
|
togglePlacement === "right" && children,
|
|
58
75
|
react_1.default.createElement(DataCell_1.default, { className: (0, clsx_1.default)("navds-table__toggle-expand-cell", {
|
|
59
76
|
"navds-table__toggle-expand-cell--open": isOpen,
|
|
60
|
-
}) }, !expansionDisabled && (react_1.default.createElement("button", { type: "button", className: "navds-table__toggle-expand-button", "aria-controls": id, "aria-expanded": isOpen, onClick:
|
|
61
|
-
onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(!isOpen);
|
|
62
|
-
if (open === undefined) {
|
|
63
|
-
setInternalOpen((open) => !open);
|
|
64
|
-
}
|
|
65
|
-
} },
|
|
77
|
+
}) }, !expansionDisabled && (react_1.default.createElement("button", { type: "button", className: "navds-table__toggle-expand-button", "aria-controls": id, "aria-expanded": isOpen, onClick: expansionHandler },
|
|
66
78
|
react_1.default.createElement(aksel_icons_1.ChevronDownIcon, { className: "navds-table__expandable-icon", title: isOpen ? "Vis mindre" : "Vis mer" })))),
|
|
67
79
|
togglePlacement === "left" && children),
|
|
68
80
|
react_1.default.createElement("tr", { className: "navds-table__expanded-row", "aria-hidden": !isOpen, id: id },
|
|
@@ -25,10 +25,15 @@ export interface ExpandableRowProps extends Omit<RowProps, "content"> {
|
|
|
25
25
|
*/
|
|
26
26
|
onOpenChange?: (open: boolean) => void;
|
|
27
27
|
/**
|
|
28
|
-
* Disable
|
|
28
|
+
* Disable expansion. shadeOnHover will not be visible.
|
|
29
29
|
* @default false
|
|
30
30
|
*/
|
|
31
31
|
expansionDisabled?: boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Makes the whole row clickable
|
|
34
|
+
* @default false
|
|
35
|
+
*/
|
|
36
|
+
expandOnRowClick?: boolean;
|
|
32
37
|
/**
|
|
33
38
|
* The width of the expanded row's internal cell
|
|
34
39
|
* @default 999
|
|
@@ -17,23 +17,35 @@ import DataCell from "./DataCell";
|
|
|
17
17
|
import Row from "./Row";
|
|
18
18
|
import { ChevronDownIcon } from "@navikt/aksel-icons";
|
|
19
19
|
export const ExpandableRow = forwardRef((_a, ref) => {
|
|
20
|
-
var { className, children, content, togglePlacement = "left", defaultOpen = false, open, onOpenChange, expansionDisabled = false, colSpan = 999 } = _a, rest = __rest(_a, ["className", "children", "content", "togglePlacement", "defaultOpen", "open", "onOpenChange", "expansionDisabled", "colSpan"]);
|
|
20
|
+
var { className, children, content, togglePlacement = "left", defaultOpen = false, open, onOpenChange, expansionDisabled = false, expandOnRowClick = false, colSpan = 999 } = _a, rest = __rest(_a, ["className", "children", "content", "togglePlacement", "defaultOpen", "open", "onOpenChange", "expansionDisabled", "expandOnRowClick", "colSpan"]);
|
|
21
21
|
const [internalOpen, setInternalOpen] = useState(defaultOpen);
|
|
22
22
|
const id = useId();
|
|
23
23
|
const isOpen = open !== null && open !== void 0 ? open : internalOpen;
|
|
24
|
+
const expansionHandler = (e) => {
|
|
25
|
+
onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(!isOpen);
|
|
26
|
+
if (open === undefined) {
|
|
27
|
+
setInternalOpen((open) => !open);
|
|
28
|
+
}
|
|
29
|
+
e.stopPropagation();
|
|
30
|
+
};
|
|
31
|
+
const onRowClick = (e) => {
|
|
32
|
+
if (e.target.nodeName === "TD" || e.target.nodeName === "TH") {
|
|
33
|
+
expansionHandler(e);
|
|
34
|
+
}
|
|
35
|
+
};
|
|
24
36
|
return (React.createElement(React.Fragment, null,
|
|
25
37
|
React.createElement(Row, Object.assign({}, rest, { ref: ref, className: cl("navds-table__expandable-row", className, {
|
|
26
38
|
"navds-table__expandable-row--open": isOpen,
|
|
27
|
-
|
|
39
|
+
"navds-table__expandable-row--expansion-disabled": expansionDisabled,
|
|
40
|
+
}), onClick: (e) => {
|
|
41
|
+
var _a;
|
|
42
|
+
!expansionDisabled && expandOnRowClick && onRowClick(e);
|
|
43
|
+
(_a = rest === null || rest === void 0 ? void 0 : rest.onClick) === null || _a === void 0 ? void 0 : _a.call(rest, e);
|
|
44
|
+
} }),
|
|
28
45
|
togglePlacement === "right" && children,
|
|
29
46
|
React.createElement(DataCell, { className: cl("navds-table__toggle-expand-cell", {
|
|
30
47
|
"navds-table__toggle-expand-cell--open": isOpen,
|
|
31
|
-
}) }, !expansionDisabled && (React.createElement("button", { type: "button", className: "navds-table__toggle-expand-button", "aria-controls": id, "aria-expanded": isOpen, onClick:
|
|
32
|
-
onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(!isOpen);
|
|
33
|
-
if (open === undefined) {
|
|
34
|
-
setInternalOpen((open) => !open);
|
|
35
|
-
}
|
|
36
|
-
} },
|
|
48
|
+
}) }, !expansionDisabled && (React.createElement("button", { type: "button", className: "navds-table__toggle-expand-button", "aria-controls": id, "aria-expanded": isOpen, onClick: expansionHandler },
|
|
37
49
|
React.createElement(ChevronDownIcon, { className: "navds-table__expandable-icon", title: isOpen ? "Vis mindre" : "Vis mer" })))),
|
|
38
50
|
togglePlacement === "left" && children),
|
|
39
51
|
React.createElement("tr", { className: "navds-table__expanded-row", "aria-hidden": !isOpen, id: id },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExpandableRow.js","sourceRoot":"","sources":["../../src/table/ExpandableRow.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,MAAM,CAAC;AACtB,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC;AAC3B,OAAO,aAAa,MAAM,uBAAuB,CAAC;AAClD,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,GAAiB,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"ExpandableRow.js","sourceRoot":"","sources":["../../src/table/ExpandableRow.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@navikt/ds-react",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.9.0",
|
|
4
4
|
"description": "Aksel react-components for NAV designsystem",
|
|
5
5
|
"author": "Aksel | NAV designsystem team",
|
|
6
6
|
"license": "MIT",
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
},
|
|
39
39
|
"dependencies": {
|
|
40
40
|
"@floating-ui/react": "0.24.1",
|
|
41
|
-
"@navikt/aksel-icons": "^4.
|
|
41
|
+
"@navikt/aksel-icons": "^4.9.0",
|
|
42
42
|
"@radix-ui/react-tabs": "1.0.0",
|
|
43
43
|
"@radix-ui/react-toggle-group": "1.0.0",
|
|
44
44
|
"clsx": "^1.2.1",
|
|
@@ -31,10 +31,15 @@ export interface ExpandableRowProps extends Omit<RowProps, "content"> {
|
|
|
31
31
|
*/
|
|
32
32
|
onOpenChange?: (open: boolean) => void;
|
|
33
33
|
/**
|
|
34
|
-
* Disable
|
|
34
|
+
* Disable expansion. shadeOnHover will not be visible.
|
|
35
35
|
* @default false
|
|
36
36
|
*/
|
|
37
37
|
expansionDisabled?: boolean;
|
|
38
|
+
/**
|
|
39
|
+
* Makes the whole row clickable
|
|
40
|
+
* @default false
|
|
41
|
+
*/
|
|
42
|
+
expandOnRowClick?: boolean;
|
|
38
43
|
/**
|
|
39
44
|
* The width of the expanded row's internal cell
|
|
40
45
|
* @default 999
|
|
@@ -58,6 +63,7 @@ export const ExpandableRow: ExpandableRowType = forwardRef(
|
|
|
58
63
|
open,
|
|
59
64
|
onOpenChange,
|
|
60
65
|
expansionDisabled = false,
|
|
66
|
+
expandOnRowClick = false,
|
|
61
67
|
colSpan = 999,
|
|
62
68
|
...rest
|
|
63
69
|
},
|
|
@@ -65,9 +71,22 @@ export const ExpandableRow: ExpandableRowType = forwardRef(
|
|
|
65
71
|
) => {
|
|
66
72
|
const [internalOpen, setInternalOpen] = useState<boolean>(defaultOpen);
|
|
67
73
|
const id = useId();
|
|
68
|
-
|
|
69
74
|
const isOpen = open ?? internalOpen;
|
|
70
75
|
|
|
76
|
+
const expansionHandler = (e) => {
|
|
77
|
+
onOpenChange?.(!isOpen);
|
|
78
|
+
if (open === undefined) {
|
|
79
|
+
setInternalOpen((open) => !open);
|
|
80
|
+
}
|
|
81
|
+
e.stopPropagation();
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
const onRowClick = (e) => {
|
|
85
|
+
if (e.target.nodeName === "TD" || e.target.nodeName === "TH") {
|
|
86
|
+
expansionHandler(e);
|
|
87
|
+
}
|
|
88
|
+
};
|
|
89
|
+
|
|
71
90
|
return (
|
|
72
91
|
<>
|
|
73
92
|
<Row
|
|
@@ -75,7 +94,13 @@ export const ExpandableRow: ExpandableRowType = forwardRef(
|
|
|
75
94
|
ref={ref}
|
|
76
95
|
className={cl("navds-table__expandable-row", className, {
|
|
77
96
|
"navds-table__expandable-row--open": isOpen,
|
|
97
|
+
"navds-table__expandable-row--expansion-disabled":
|
|
98
|
+
expansionDisabled,
|
|
78
99
|
})}
|
|
100
|
+
onClick={(e) => {
|
|
101
|
+
!expansionDisabled && expandOnRowClick && onRowClick(e);
|
|
102
|
+
rest?.onClick?.(e);
|
|
103
|
+
}}
|
|
79
104
|
>
|
|
80
105
|
{togglePlacement === "right" && children}
|
|
81
106
|
<DataCell
|
|
@@ -89,12 +114,7 @@ export const ExpandableRow: ExpandableRowType = forwardRef(
|
|
|
89
114
|
className="navds-table__toggle-expand-button"
|
|
90
115
|
aria-controls={id}
|
|
91
116
|
aria-expanded={isOpen}
|
|
92
|
-
onClick={
|
|
93
|
-
onOpenChange?.(!isOpen);
|
|
94
|
-
if (open === undefined) {
|
|
95
|
-
setInternalOpen((open) => !open);
|
|
96
|
-
}
|
|
97
|
-
}}
|
|
117
|
+
onClick={expansionHandler}
|
|
98
118
|
>
|
|
99
119
|
<ChevronDownIcon
|
|
100
120
|
className="navds-table__expandable-icon"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React, { useState } from "react";
|
|
2
2
|
import { Table } from "..";
|
|
3
|
-
import { Link } from "../..";
|
|
3
|
+
import { Button, Checkbox, Link } from "../..";
|
|
4
4
|
|
|
5
5
|
export default {
|
|
6
6
|
title: "ds-react/Table",
|
|
@@ -37,6 +37,7 @@ export const Expandable = () => {
|
|
|
37
37
|
};
|
|
38
38
|
|
|
39
39
|
export const ExpandableSmall = () => {
|
|
40
|
+
// eslint-disable-next-line react-hooks/rules-of-hooks
|
|
40
41
|
const [open, setOpen] = useState(false);
|
|
41
42
|
return (
|
|
42
43
|
<Table size="small">
|
|
@@ -227,3 +228,63 @@ export const ExpandableOpen = () => {
|
|
|
227
228
|
</Table>
|
|
228
229
|
);
|
|
229
230
|
};
|
|
231
|
+
|
|
232
|
+
export const ClickableRow = {
|
|
233
|
+
render: () => {
|
|
234
|
+
// eslint-disable-next-line react-hooks/rules-of-hooks
|
|
235
|
+
const [isRowOpen1, setIsRowOpen1] = useState(false);
|
|
236
|
+
// eslint-disable-next-line react-hooks/rules-of-hooks
|
|
237
|
+
const [isRowOpen2, setIsRowOpen2] = useState(false);
|
|
238
|
+
|
|
239
|
+
return (
|
|
240
|
+
<>
|
|
241
|
+
<Table zebraStripes>
|
|
242
|
+
<Table.Header>
|
|
243
|
+
<Table.Row>
|
|
244
|
+
<Table.HeaderCell>Navn</Table.HeaderCell>
|
|
245
|
+
<Table.HeaderCell>Info</Table.HeaderCell>
|
|
246
|
+
<Table.HeaderCell aria-hidden />
|
|
247
|
+
</Table.Row>
|
|
248
|
+
</Table.Header>
|
|
249
|
+
<Table.Body>
|
|
250
|
+
<Table.ExpandableRow
|
|
251
|
+
content={<div>placeholder row 1</div>}
|
|
252
|
+
togglePlacement="right"
|
|
253
|
+
onOpenChange={setIsRowOpen1}
|
|
254
|
+
data-testid="row1"
|
|
255
|
+
open={isRowOpen1}
|
|
256
|
+
expandOnRowClick
|
|
257
|
+
>
|
|
258
|
+
<Table.DataCell>Ola</Table.DataCell>
|
|
259
|
+
<Table.DataCell>
|
|
260
|
+
<Button
|
|
261
|
+
size="xsmall"
|
|
262
|
+
onClick={(e) => {
|
|
263
|
+
alert("Mer info");
|
|
264
|
+
}}
|
|
265
|
+
>
|
|
266
|
+
Mer info
|
|
267
|
+
</Button>
|
|
268
|
+
</Table.DataCell>
|
|
269
|
+
</Table.ExpandableRow>
|
|
270
|
+
<Table.ExpandableRow
|
|
271
|
+
content={<div>placeholder row 2</div>}
|
|
272
|
+
togglePlacement="right"
|
|
273
|
+
onOpenChange={setIsRowOpen2}
|
|
274
|
+
data-testid="row2"
|
|
275
|
+
open={isRowOpen2}
|
|
276
|
+
expandOnRowClick
|
|
277
|
+
>
|
|
278
|
+
<Table.DataCell>Hans</Table.DataCell>
|
|
279
|
+
<Table.DataCell>
|
|
280
|
+
<Checkbox hideLabel size="small">
|
|
281
|
+
Sett
|
|
282
|
+
</Checkbox>
|
|
283
|
+
</Table.DataCell>
|
|
284
|
+
</Table.ExpandableRow>
|
|
285
|
+
</Table.Body>
|
|
286
|
+
</Table>
|
|
287
|
+
</>
|
|
288
|
+
);
|
|
289
|
+
},
|
|
290
|
+
};
|