@navikt/ds-react 0.17.14 → 0.17.17
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/cjs/index.js +1 -0
- package/cjs/read-more/ReadMore.js +1 -1
- package/cjs/table/ExpandableRow.js +76 -0
- package/cjs/table/Table.js +2 -0
- package/cjs/tooltip/Tooltip.js +153 -0
- package/cjs/tooltip/index.js +23 -0
- package/cjs/tooltip/package.json +6 -0
- package/cjs/tooltip/portal.js +17 -0
- package/cjs/util/index.js +11 -1
- package/esm/index.d.ts +1 -0
- package/esm/index.js +1 -0
- package/esm/index.js.map +1 -1
- package/esm/read-more/ReadMore.js +1 -1
- package/esm/read-more/ReadMore.js.map +1 -1
- package/esm/table/ExpandableRow.d.ts +31 -0
- package/esm/table/ExpandableRow.js +49 -0
- package/esm/table/ExpandableRow.js.map +1 -0
- package/esm/table/Row.d.ts +1 -1
- package/esm/table/Table.d.ts +2 -0
- package/esm/table/Table.js +2 -0
- package/esm/table/Table.js.map +1 -1
- package/esm/tooltip/Tooltip.d.ts +51 -0
- package/esm/tooltip/Tooltip.js +126 -0
- package/esm/tooltip/Tooltip.js.map +1 -0
- package/esm/tooltip/index.d.ts +2 -0
- package/esm/tooltip/index.js +3 -0
- package/esm/tooltip/index.js.map +1 -0
- package/esm/tooltip/portal.d.ts +5 -0
- package/esm/tooltip/portal.js +13 -0
- package/esm/tooltip/portal.js.map +1 -0
- package/esm/util/index.d.ts +1 -0
- package/esm/util/index.js +9 -0
- package/esm/util/index.js.map +1 -1
- package/package.json +3 -2
- package/src/index.ts +1 -0
- package/src/read-more/ReadMore.tsx +1 -0
- package/src/table/ExpandableRow.tsx +115 -0
- package/src/table/Row.tsx +1 -1
- package/src/table/Table.tsx +3 -0
- package/src/table/stories/table-expandable.stories.tsx +201 -0
- package/src/tooltip/Tooltip.tsx +301 -0
- package/src/tooltip/index.ts +2 -0
- package/src/tooltip/portal.tsx +15 -0
- package/src/tooltip/tooltip.stories.tsx +144 -0
- package/src/util/index.ts +14 -0
package/cjs/index.js
CHANGED
|
@@ -37,6 +37,7 @@ __exportStar(require("./tag"), exports);
|
|
|
37
37
|
__exportStar(require("./toggle-group"), exports);
|
|
38
38
|
__exportStar(require("./table"), exports);
|
|
39
39
|
__exportStar(require("./tabs"), exports);
|
|
40
|
+
__exportStar(require("./tooltip"), exports);
|
|
40
41
|
__exportStar(require("./typography"), exports);
|
|
41
42
|
__exportStar(require("./util"), exports);
|
|
42
43
|
/* Navno spesific packages */
|
|
@@ -50,7 +50,7 @@ const ReadMore = (0, react_1.forwardRef)((_a, ref) => {
|
|
|
50
50
|
: react_collapse_1.UnmountClosed;
|
|
51
51
|
const isOpened = open !== null && open !== void 0 ? open : internalOpen;
|
|
52
52
|
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
53
|
-
react_1.default.createElement("button", Object.assign({}, rest, { className: (0, classnames_1.default)("navds-read-more", "navds-body-short", "navds-body-short--small", className, {
|
|
53
|
+
react_1.default.createElement("button", Object.assign({ type: "button" }, rest, { className: (0, classnames_1.default)("navds-read-more", "navds-body-short", "navds-body-short--small", className, {
|
|
54
54
|
"navds-read-more--open": isOpened,
|
|
55
55
|
}), onClick: (e) => {
|
|
56
56
|
if (open === undefined) {
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
26
|
+
var t = {};
|
|
27
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
28
|
+
t[p] = s[p];
|
|
29
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
30
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
31
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
32
|
+
t[p[i]] = s[p[i]];
|
|
33
|
+
}
|
|
34
|
+
return t;
|
|
35
|
+
};
|
|
36
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
37
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
38
|
+
};
|
|
39
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
+
const react_1 = __importStar(require("react"));
|
|
41
|
+
const classnames_1 = __importDefault(require("classnames"));
|
|
42
|
+
const Row_1 = __importDefault(require("./Row"));
|
|
43
|
+
const DataCell_1 = __importDefault(require("./DataCell"));
|
|
44
|
+
const react_collapse_1 = require("react-collapse");
|
|
45
|
+
const ds_icons_1 = require("@navikt/ds-icons");
|
|
46
|
+
const __1 = require("..");
|
|
47
|
+
const ExpandableRow = (0, react_1.forwardRef)((_a, ref) => {
|
|
48
|
+
var { className, children, content, togglePlacement = "left", defaultOpen = false, open, onOpenChange } = _a, rest = __rest(_a, ["className", "children", "content", "togglePlacement", "defaultOpen", "open", "onOpenChange"]);
|
|
49
|
+
const [internalOpen, setInternalOpen] = (0, react_1.useState)(defaultOpen);
|
|
50
|
+
const id = `expandable-${(0, __1.useId)()}`;
|
|
51
|
+
const isOpen = open !== null && open !== void 0 ? open : internalOpen;
|
|
52
|
+
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
53
|
+
react_1.default.createElement(Row_1.default, Object.assign({}, rest, { ref: ref, className: (0, classnames_1.default)("navds-table__expandable-row", className, {
|
|
54
|
+
"navds-table__expandable-row--open": isOpen,
|
|
55
|
+
}) }),
|
|
56
|
+
togglePlacement === "right" && children,
|
|
57
|
+
react_1.default.createElement(DataCell_1.default, { className: (0, classnames_1.default)("navds-table__toggle-expand-cell", {
|
|
58
|
+
"navds-table__toggle-expand-cell--open": isOpen,
|
|
59
|
+
}) },
|
|
60
|
+
react_1.default.createElement("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
|
+
} },
|
|
66
|
+
react_1.default.createElement(ds_icons_1.Expand, { className: "navds-table__expandable-icon", title: isOpen ? "Vis mindre" : "Vis mer" }),
|
|
67
|
+
react_1.default.createElement(ds_icons_1.ExpandFilled, { className: "navds-table__expandable-icon navds-table__expandable-icon--filled", title: isOpen ? "Vis mindre" : "Vis mer" }))),
|
|
68
|
+
togglePlacement === "left" && children),
|
|
69
|
+
react_1.default.createElement("tr", { className: "navds-table__expanded-row", "aria-hidden": !isOpen, id: id },
|
|
70
|
+
react_1.default.createElement("td", { colSpan: 999, className: "navds-table__expanded-row-cell" },
|
|
71
|
+
react_1.default.createElement(react_collapse_1.UnmountClosed, { isOpened: isOpen, theme: {
|
|
72
|
+
collapse: "navds-table__expanded-row-collapse",
|
|
73
|
+
content: "navds-table__expanded-row-content",
|
|
74
|
+
} }, content)))));
|
|
75
|
+
});
|
|
76
|
+
exports.default = ExpandableRow;
|
package/cjs/table/Table.js
CHANGED
|
@@ -46,6 +46,7 @@ const Row_1 = __importDefault(require("./Row"));
|
|
|
46
46
|
const ColumnHeader_1 = __importDefault(require("./ColumnHeader"));
|
|
47
47
|
const HeaderCell_1 = __importDefault(require("./HeaderCell"));
|
|
48
48
|
const DataCell_1 = __importDefault(require("./DataCell"));
|
|
49
|
+
const ExpandableRow_1 = __importDefault(require("./ExpandableRow"));
|
|
49
50
|
exports.TableContext = (0, react_1.createContext)(null);
|
|
50
51
|
const Table = (0, react_1.forwardRef)((_a, ref) => {
|
|
51
52
|
var { className, zebraStripes = false, size = "medium", onSortChange, sort } = _a, rest = __rest(_a, ["className", "zebraStripes", "size", "onSortChange", "sort"]);
|
|
@@ -60,4 +61,5 @@ Table.Row = Row_1.default;
|
|
|
60
61
|
Table.ColumnHeader = ColumnHeader_1.default;
|
|
61
62
|
Table.HeaderCell = HeaderCell_1.default;
|
|
62
63
|
Table.DataCell = DataCell_1.default;
|
|
64
|
+
Table.ExpandableRow = ExpandableRow_1.default;
|
|
63
65
|
exports.default = Table;
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
26
|
+
var t = {};
|
|
27
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
28
|
+
t[p] = s[p];
|
|
29
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
30
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
31
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
32
|
+
t[p[i]] = s[p[i]];
|
|
33
|
+
}
|
|
34
|
+
return t;
|
|
35
|
+
};
|
|
36
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
37
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
38
|
+
};
|
|
39
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
+
const classnames_1 = __importDefault(require("classnames"));
|
|
41
|
+
const react_1 = __importStar(require("react"));
|
|
42
|
+
const __1 = require("..");
|
|
43
|
+
const react_dom_1 = require("@floating-ui/react-dom");
|
|
44
|
+
const react_merge_refs_1 = __importDefault(require("react-merge-refs"));
|
|
45
|
+
const portal_1 = __importDefault(require("./portal"));
|
|
46
|
+
const util_1 = require("../util");
|
|
47
|
+
const Tooltip = (0, react_1.forwardRef)((_a, ref) => {
|
|
48
|
+
var { children, className, arrow: _arrow = true, placement: _placement = "top", open, defaultOpen = false, offset: _offset, content, delay = 150, id, keys, maxChar = 80 } = _a, rest = __rest(_a, ["children", "className", "arrow", "placement", "open", "defaultOpen", "offset", "content", "delay", "id", "keys", "maxChar"]);
|
|
49
|
+
const arrowRef = (0, react_1.useRef)(null);
|
|
50
|
+
const [isOpen, setIsOpen] = (0, react_1.useState)(defaultOpen);
|
|
51
|
+
const openTimerRef = (0, react_1.useRef)(0);
|
|
52
|
+
const leaveTimerRef = (0, react_1.useRef)(0);
|
|
53
|
+
const isMouseDownRef = (0, react_1.useRef)(false);
|
|
54
|
+
const ariaId = (0, util_1.useId)(id);
|
|
55
|
+
const { x, y, update, placement, refs, middlewareData: { arrow: { x: arrowX, y: arrowY } = {}, hide: { referenceHidden } = {}, }, } = (0, react_dom_1.useFloating)({
|
|
56
|
+
placement: _placement,
|
|
57
|
+
middleware: [
|
|
58
|
+
(0, react_dom_1.shift)(),
|
|
59
|
+
(0, react_dom_1.flip)({ padding: 5, fallbackPlacements: ["bottom", "top"] }),
|
|
60
|
+
(0, react_dom_1.arrow)({ element: arrowRef, padding: 5 }),
|
|
61
|
+
(0, react_dom_1.hide)(),
|
|
62
|
+
],
|
|
63
|
+
});
|
|
64
|
+
/* https://floating-ui.com/docs/react-dom#updating */
|
|
65
|
+
(0, react_1.useEffect)(() => {
|
|
66
|
+
if (!refs.reference.current || !refs.floating.current) {
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
// Only call this when the floating element is rendered
|
|
70
|
+
return (0, react_dom_1.autoUpdate)(refs.reference.current, refs.floating.current, update);
|
|
71
|
+
}, [refs.reference, refs.floating, update, open, isOpen]);
|
|
72
|
+
const handleOpen = (0, react_1.useCallback)(() => {
|
|
73
|
+
window.clearTimeout(openTimerRef.current);
|
|
74
|
+
window.clearTimeout(leaveTimerRef.current);
|
|
75
|
+
setIsOpen(true);
|
|
76
|
+
}, [setIsOpen]);
|
|
77
|
+
const handleDelayedOpen = (0, react_1.useCallback)(() => {
|
|
78
|
+
window.clearTimeout(openTimerRef.current);
|
|
79
|
+
window.clearTimeout(leaveTimerRef.current);
|
|
80
|
+
openTimerRef.current = window.setTimeout(() => {
|
|
81
|
+
setIsOpen(true);
|
|
82
|
+
}, delay);
|
|
83
|
+
}, [delay, setIsOpen]);
|
|
84
|
+
const handleClose = (0, react_1.useCallback)(() => {
|
|
85
|
+
window.clearTimeout(openTimerRef.current);
|
|
86
|
+
leaveTimerRef.current = window.setTimeout(() => {
|
|
87
|
+
setIsOpen(false);
|
|
88
|
+
}, 50);
|
|
89
|
+
}, [setIsOpen]);
|
|
90
|
+
const handleMouseUp = (0, react_1.useCallback)(() => (isMouseDownRef.current = false), []);
|
|
91
|
+
(0, react_1.useEffect)(() => {
|
|
92
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
93
|
+
return () => window.clearTimeout(openTimerRef.current);
|
|
94
|
+
}, []);
|
|
95
|
+
(0, react_1.useEffect)(() => {
|
|
96
|
+
return () => document.removeEventListener("mouseup", handleMouseUp);
|
|
97
|
+
}, [handleMouseUp]);
|
|
98
|
+
(0, __1.useEventListener)("keydown", (0, react_1.useCallback)((e) => e.key === "Escape" && handleClose(), [handleClose]), document);
|
|
99
|
+
/* https://floating-ui.com/docs/react-dom#stable-ref-prop */
|
|
100
|
+
const stableRef = (0, react_1.useMemo)(() => (0, react_merge_refs_1.default)([ref, refs.floating]), [
|
|
101
|
+
ref,
|
|
102
|
+
refs.floating,
|
|
103
|
+
]);
|
|
104
|
+
if (!children ||
|
|
105
|
+
(children === null || children === void 0 ? void 0 : children.type) === react_1.default.Fragment ||
|
|
106
|
+
children === react_1.default.Fragment) {
|
|
107
|
+
console.error("<Tooltip> children needs to be a single ReactElement and not <React.Fragment/>/<></>");
|
|
108
|
+
return null;
|
|
109
|
+
}
|
|
110
|
+
if ((content === null || content === void 0 ? void 0 : content.length) > maxChar) {
|
|
111
|
+
console.error(`Because of strict accessibility concers we encourage all Tooltips to have less than 80 characters. Can be overwritten with the maxChar-prop`);
|
|
112
|
+
return null;
|
|
113
|
+
}
|
|
114
|
+
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
115
|
+
(0, react_1.cloneElement)(children, Object.assign(Object.assign({}, children.props), { "aria-describedby": open || isOpen
|
|
116
|
+
? (0, classnames_1.default)(ariaId, children === null || children === void 0 ? void 0 : children.props["aria-describedby"])
|
|
117
|
+
: children === null || children === void 0 ? void 0 : children.props["aria-describedby"], ref: (0, react_merge_refs_1.default)([children.ref, refs.reference]), onMouseEnter: (0, __1.composeEventHandlers)(children.props.onMouseEnter, handleDelayedOpen), onMouseLeave: (0, __1.composeEventHandlers)(children.props.onMouseLeave, handleClose), onMouseDown: (0, __1.composeEventHandlers)(children.props.onMouseDown, () => {
|
|
118
|
+
isMouseDownRef.current = true;
|
|
119
|
+
document.addEventListener("mouseup", handleMouseUp, { once: true });
|
|
120
|
+
}), onFocus: (0, __1.composeEventHandlers)(children.props.onFocus, () => !isMouseDownRef.current && handleOpen()), onBlur: (0, __1.composeEventHandlers)(children.props.onBlur, handleClose) })),
|
|
121
|
+
(open !== null && open !== void 0 ? open : isOpen) && (react_1.default.createElement(portal_1.default, null,
|
|
122
|
+
react_1.default.createElement("div", Object.assign({ ref: stableRef }, rest, { onMouseEnter: handleOpen, onMouseLeave: handleClose, role: "tooltip", id: ariaId, style: {
|
|
123
|
+
position: "absolute",
|
|
124
|
+
top: y !== null && y !== void 0 ? y : "",
|
|
125
|
+
left: x !== null && x !== void 0 ? x : "",
|
|
126
|
+
visibility: referenceHidden ? "hidden" : "visible",
|
|
127
|
+
}, "data-side": placement, className: (0, classnames_1.default)("navds-tooltip", "navds-detail navds-detail--small", className) }),
|
|
128
|
+
react_1.default.createElement("div", { className: "navds-tooltip__inner", style: {
|
|
129
|
+
[{
|
|
130
|
+
top: "marginBottom",
|
|
131
|
+
right: "marginLeft",
|
|
132
|
+
bottom: "marginTop",
|
|
133
|
+
left: "marginRight",
|
|
134
|
+
}[placement]]: _offset ? _offset : _arrow ? 10 : 2,
|
|
135
|
+
} },
|
|
136
|
+
content,
|
|
137
|
+
keys && (react_1.default.createElement("span", { className: "navds-tooltip__keys" }, keys.map((key) => (react_1.default.createElement(__1.Detail, { size: "small", as: "kbd", key: key, className: "navds-tooltip__key" }, key))))),
|
|
138
|
+
_arrow && (react_1.default.createElement("div", { ref: (node) => {
|
|
139
|
+
arrowRef.current = node;
|
|
140
|
+
}, className: "navds-tooltip__arrow", style: {
|
|
141
|
+
left: arrowX != null ? `${arrowX}px` : "",
|
|
142
|
+
top: arrowY != null ? `${arrowY}px` : "",
|
|
143
|
+
right: "",
|
|
144
|
+
bottom: "",
|
|
145
|
+
[{
|
|
146
|
+
top: "bottom",
|
|
147
|
+
right: "left",
|
|
148
|
+
bottom: "top",
|
|
149
|
+
left: "right",
|
|
150
|
+
}[placement]]: "-3.5px",
|
|
151
|
+
} }))))))));
|
|
152
|
+
});
|
|
153
|
+
exports.default = Tooltip;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
17
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
18
|
+
};
|
|
19
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
+
exports.Tooltip = void 0;
|
|
21
|
+
var Tooltip_1 = require("./Tooltip");
|
|
22
|
+
Object.defineProperty(exports, "Tooltip", { enumerable: true, get: function () { return __importDefault(Tooltip_1).default; } });
|
|
23
|
+
__exportStar(require("./Tooltip"), exports);
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
/* https://github.com/radix-ui/primitives/blob/main/packages/react/portal/src/Portal.tsx */
|
|
7
|
+
const react_dom_1 = __importDefault(require("react-dom"));
|
|
8
|
+
const Portal = ({ children }) => {
|
|
9
|
+
var _a;
|
|
10
|
+
const hostElement = (_a = globalThis === null || globalThis === void 0 ? void 0 : globalThis.document) === null || _a === void 0 ? void 0 : _a.body;
|
|
11
|
+
if (hostElement) {
|
|
12
|
+
return react_dom_1.default.createPortal(children, hostElement);
|
|
13
|
+
}
|
|
14
|
+
// bail out of ssr
|
|
15
|
+
return null;
|
|
16
|
+
};
|
|
17
|
+
exports.default = Portal;
|
package/cjs/util/index.js
CHANGED
|
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.useEventListener = exports.omit = void 0;
|
|
17
|
+
exports.composeEventHandlers = exports.useEventListener = exports.omit = void 0;
|
|
18
18
|
const react_1 = require("react");
|
|
19
19
|
__exportStar(require("./OverridableComponent"), exports);
|
|
20
20
|
__exportStar(require("./useId"), exports);
|
|
@@ -35,3 +35,13 @@ const useEventListener = (name, handler, target = window) => {
|
|
|
35
35
|
}, [name, handler, target]);
|
|
36
36
|
};
|
|
37
37
|
exports.useEventListener = useEventListener;
|
|
38
|
+
/* https://github.com/radix-ui/primitives/blob/main/packages/core/primitive/src/primitive.tsx */
|
|
39
|
+
const composeEventHandlers = (originalEventHandler, ourEventHandler) => {
|
|
40
|
+
return function handleEvent(event) {
|
|
41
|
+
originalEventHandler === null || originalEventHandler === void 0 ? void 0 : originalEventHandler(event);
|
|
42
|
+
if (!event.defaultPrevented) {
|
|
43
|
+
return ourEventHandler === null || ourEventHandler === void 0 ? void 0 : ourEventHandler(event);
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
};
|
|
47
|
+
exports.composeEventHandlers = composeEventHandlers;
|
package/esm/index.d.ts
CHANGED
package/esm/index.js
CHANGED
package/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,OAAO,CAAC;AACtB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,QAAQ,CAAC;AAEvB,6BAA6B;AAC7B,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,OAAO,CAAC;AACtB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,QAAQ,CAAC;AAEvB,6BAA6B;AAC7B,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC"}
|
|
@@ -22,7 +22,7 @@ const ReadMore = forwardRef((_a, ref) => {
|
|
|
22
22
|
: UnmountClosed;
|
|
23
23
|
const isOpened = open !== null && open !== void 0 ? open : internalOpen;
|
|
24
24
|
return (React.createElement(React.Fragment, null,
|
|
25
|
-
React.createElement("button", Object.assign({}, rest, { className: cl("navds-read-more", "navds-body-short", "navds-body-short--small", className, {
|
|
25
|
+
React.createElement("button", Object.assign({ type: "button" }, rest, { className: cl("navds-read-more", "navds-body-short", "navds-body-short--small", className, {
|
|
26
26
|
"navds-read-more--open": isOpened,
|
|
27
27
|
}), onClick: (e) => {
|
|
28
28
|
if (open === undefined) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReadMore.js","sourceRoot":"","sources":["../../src/read-more/ReadMore.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AA6BzC,MAAM,QAAQ,GAAG,UAAU,CACzB,CACE,EASC,EACD,GAAG,EACH,EAAE;QAXF,EACE,SAAS,EACT,MAAM,EACN,uBAAuB,GAAG,KAAK,EAC/B,QAAQ,EACR,IAAI,EACJ,WAAW,GAAG,KAAK,EACnB,OAAO,OAER,EADI,IAAI,cART,gGASC,CADQ;IAIT,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAU,WAAW,CAAC,CAAC;IACvE,MAAM,iBAAiB,GAAG,uBAAuB;QAC/C,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,aAAa,CAAC;IAElB,MAAM,QAAQ,GAAG,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,YAAY,CAAC;IAEtC,OAAO,CACL;QACE,
|
|
1
|
+
{"version":3,"file":"ReadMore.js","sourceRoot":"","sources":["../../src/read-more/ReadMore.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AA6BzC,MAAM,QAAQ,GAAG,UAAU,CACzB,CACE,EASC,EACD,GAAG,EACH,EAAE;QAXF,EACE,SAAS,EACT,MAAM,EACN,uBAAuB,GAAG,KAAK,EAC/B,QAAQ,EACR,IAAI,EACJ,WAAW,GAAG,KAAK,EACnB,OAAO,OAER,EADI,IAAI,cART,gGASC,CADQ;IAIT,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAU,WAAW,CAAC,CAAC;IACvE,MAAM,iBAAiB,GAAG,uBAAuB;QAC/C,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,aAAa,CAAC;IAElB,MAAM,QAAQ,GAAG,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,YAAY,CAAC;IAEtC,OAAO,CACL;QACE,8CACE,IAAI,EAAC,QAAQ,IACT,IAAI,IACR,SAAS,EAAE,EAAE,CACX,iBAAiB,EACjB,kBAAkB,EAClB,yBAAyB,EACzB,SAAS,EACT;gBACE,uBAAuB,EAAE,QAAQ;aAClC,CACF,EACD,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;gBACb,IAAI,IAAI,KAAK,SAAS,EAAE;oBACtB,eAAe,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;iBACtC;gBACD,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAG,CAAC,CAAC,CAAC;YACf,CAAC,mBACc,QAAQ,EACvB,GAAG,EAAE,GAAG;YAER,oBAAC,MAAM,IAAC,SAAS,EAAC,8BAA8B,wBAAe;YAC/D,kCAAO,MAAM,CAAQ,CACd;QACT,oBAAC,iBAAiB,IAAC,QAAQ,EAAE,QAAQ;YACnC,6BAAK,SAAS,EAAC,0BAA0B;gBACvC,oBAAC,QAAQ,IAAC,IAAI,EAAC,OAAO,IAAE,QAAQ,CAAY,CACxC,CACY,CACnB,CACJ,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,eAAe,QAAQ,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { RowProps } from "./Row";
|
|
3
|
+
interface ExpandableRowProps extends RowProps {
|
|
4
|
+
/**
|
|
5
|
+
* Content of the expanded row
|
|
6
|
+
*/
|
|
7
|
+
content: React.ReactNode;
|
|
8
|
+
/**
|
|
9
|
+
* Placement of toggle button
|
|
10
|
+
* @default "left"
|
|
11
|
+
*/
|
|
12
|
+
togglePlacement?: "left" | "right";
|
|
13
|
+
/**
|
|
14
|
+
* Opens component if 'true', closes if 'false'
|
|
15
|
+
* Using this props removes automatic control of open-state
|
|
16
|
+
*/
|
|
17
|
+
open?: boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Opened state default
|
|
20
|
+
* @default false
|
|
21
|
+
*/
|
|
22
|
+
defaultOpen?: boolean;
|
|
23
|
+
/**
|
|
24
|
+
* Change handler for open
|
|
25
|
+
*/
|
|
26
|
+
onOpenChange?: (open: boolean) => void;
|
|
27
|
+
}
|
|
28
|
+
export interface ExpandableRowType extends React.ForwardRefExoticComponent<ExpandableRowProps & React.RefAttributes<HTMLTableRowElement>> {
|
|
29
|
+
}
|
|
30
|
+
declare const ExpandableRow: ExpandableRowType;
|
|
31
|
+
export default ExpandableRow;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
2
|
+
var t = {};
|
|
3
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
4
|
+
t[p] = s[p];
|
|
5
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
6
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
7
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
8
|
+
t[p[i]] = s[p[i]];
|
|
9
|
+
}
|
|
10
|
+
return t;
|
|
11
|
+
};
|
|
12
|
+
import React, { forwardRef, useState } from "react";
|
|
13
|
+
import cl from "classnames";
|
|
14
|
+
import Row from "./Row";
|
|
15
|
+
import DataCell from "./DataCell";
|
|
16
|
+
import { UnmountClosed } from "react-collapse";
|
|
17
|
+
import { Expand, ExpandFilled } from "@navikt/ds-icons";
|
|
18
|
+
import { useId } from "..";
|
|
19
|
+
const ExpandableRow = forwardRef((_a, ref) => {
|
|
20
|
+
var { className, children, content, togglePlacement = "left", defaultOpen = false, open, onOpenChange } = _a, rest = __rest(_a, ["className", "children", "content", "togglePlacement", "defaultOpen", "open", "onOpenChange"]);
|
|
21
|
+
const [internalOpen, setInternalOpen] = useState(defaultOpen);
|
|
22
|
+
const id = `expandable-${useId()}`;
|
|
23
|
+
const isOpen = open !== null && open !== void 0 ? open : internalOpen;
|
|
24
|
+
return (React.createElement(React.Fragment, null,
|
|
25
|
+
React.createElement(Row, Object.assign({}, rest, { ref: ref, className: cl("navds-table__expandable-row", className, {
|
|
26
|
+
"navds-table__expandable-row--open": isOpen,
|
|
27
|
+
}) }),
|
|
28
|
+
togglePlacement === "right" && children,
|
|
29
|
+
React.createElement(DataCell, { className: cl("navds-table__toggle-expand-cell", {
|
|
30
|
+
"navds-table__toggle-expand-cell--open": isOpen,
|
|
31
|
+
}) },
|
|
32
|
+
React.createElement("button", { className: "navds-table__toggle-expand-button", "aria-controls": id, "aria-expanded": isOpen, onClick: () => {
|
|
33
|
+
onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(!isOpen);
|
|
34
|
+
if (open === undefined) {
|
|
35
|
+
setInternalOpen((open) => !open);
|
|
36
|
+
}
|
|
37
|
+
} },
|
|
38
|
+
React.createElement(Expand, { className: "navds-table__expandable-icon", title: isOpen ? "Vis mindre" : "Vis mer" }),
|
|
39
|
+
React.createElement(ExpandFilled, { className: "navds-table__expandable-icon navds-table__expandable-icon--filled", title: isOpen ? "Vis mindre" : "Vis mer" }))),
|
|
40
|
+
togglePlacement === "left" && children),
|
|
41
|
+
React.createElement("tr", { className: "navds-table__expanded-row", "aria-hidden": !isOpen, id: id },
|
|
42
|
+
React.createElement("td", { colSpan: 999, className: "navds-table__expanded-row-cell" },
|
|
43
|
+
React.createElement(UnmountClosed, { isOpened: isOpen, theme: {
|
|
44
|
+
collapse: "navds-table__expanded-row-collapse",
|
|
45
|
+
content: "navds-table__expanded-row-content",
|
|
46
|
+
} }, content)))));
|
|
47
|
+
});
|
|
48
|
+
export default ExpandableRow;
|
|
49
|
+
//# sourceMappingURL=ExpandableRow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExpandableRow.js","sourceRoot":"","sources":["../../src/table/ExpandableRow.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,GAAiB,MAAM,OAAO,CAAC;AACtC,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC;AAiC3B,MAAM,aAAa,GAAsB,UAAU,CACjD,CACE,EASC,EACD,GAAG,EACH,EAAE;QAXF,EACE,SAAS,EACT,QAAQ,EACR,OAAO,EACP,eAAe,GAAG,MAAM,EACxB,WAAW,GAAG,KAAK,EACnB,IAAI,EACJ,YAAY,OAEb,EADI,IAAI,cART,8FASC,CADQ;IAIT,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAU,WAAW,CAAC,CAAC;IACvE,MAAM,EAAE,GAAG,cAAc,KAAK,EAAE,EAAE,CAAC;IAEnC,MAAM,MAAM,GAAG,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,YAAY,CAAC;IAEpC,OAAO,CACL;QACE,oBAAC,GAAG,oBACE,IAAI,IACR,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CAAC,6BAA6B,EAAE,SAAS,EAAE;gBACtD,mCAAmC,EAAE,MAAM;aAC5C,CAAC;YAED,eAAe,KAAK,OAAO,IAAI,QAAQ;YACxC,oBAAC,QAAQ,IACP,SAAS,EAAE,EAAE,CAAC,iCAAiC,EAAE;oBAC/C,uCAAuC,EAAE,MAAM;iBAChD,CAAC;gBAEF,gCACE,SAAS,EAAC,mCAAmC,mBAC9B,EAAE,mBACF,MAAM,EACrB,OAAO,EAAE,GAAG,EAAE;wBACZ,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAG,CAAC,MAAM,CAAC,CAAC;wBACxB,IAAI,IAAI,KAAK,SAAS,EAAE;4BACtB,eAAe,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;yBAClC;oBACH,CAAC;oBAED,oBAAC,MAAM,IACL,SAAS,EAAC,8BAA8B,EACxC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,GACxC;oBACF,oBAAC,YAAY,IACX,SAAS,EAAC,mEAAmE,EAC7E,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,GACxC,CACK,CACA;YACV,eAAe,KAAK,MAAM,IAAI,QAAQ,CACnC;QACN,4BAAI,SAAS,EAAC,2BAA2B,iBAAc,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE;YACpE,4BAAI,OAAO,EAAE,GAAG,EAAE,SAAS,EAAC,gCAAgC;gBAC1D,oBAAC,aAAa,IACZ,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE;wBACL,QAAQ,EAAE,oCAAoC;wBAC9C,OAAO,EAAE,mCAAmC;qBAC7C,IAEA,OAAO,CACM,CACb,CACF,CACJ,CACJ,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,eAAe,aAAa,CAAC"}
|
package/esm/table/Row.d.ts
CHANGED
package/esm/table/Table.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ import { RowType } from "./Row";
|
|
|
5
5
|
import { ColumnHeaderType } from "./ColumnHeader";
|
|
6
6
|
import { HeaderCellType } from "./HeaderCell";
|
|
7
7
|
import { DataCellType } from "./DataCell";
|
|
8
|
+
import { ExpandableRowType } from "./ExpandableRow";
|
|
8
9
|
export interface SortState {
|
|
9
10
|
orderBy: string;
|
|
10
11
|
direction: "ascending" | "descending";
|
|
@@ -36,6 +37,7 @@ export interface TableType extends React.ForwardRefExoticComponent<TableProps &
|
|
|
36
37
|
DataCell: DataCellType;
|
|
37
38
|
HeaderCell: HeaderCellType;
|
|
38
39
|
ColumnHeader: ColumnHeaderType;
|
|
40
|
+
ExpandableRow: ExpandableRowType;
|
|
39
41
|
}
|
|
40
42
|
export interface TableContextProps {
|
|
41
43
|
size: "medium" | "small";
|
package/esm/table/Table.js
CHANGED
|
@@ -17,6 +17,7 @@ import Row from "./Row";
|
|
|
17
17
|
import ColumnHeader from "./ColumnHeader";
|
|
18
18
|
import HeaderCell from "./HeaderCell";
|
|
19
19
|
import DataCell from "./DataCell";
|
|
20
|
+
import ExpandableRow from "./ExpandableRow";
|
|
20
21
|
export const TableContext = createContext(null);
|
|
21
22
|
const Table = forwardRef((_a, ref) => {
|
|
22
23
|
var { className, zebraStripes = false, size = "medium", onSortChange, sort } = _a, rest = __rest(_a, ["className", "zebraStripes", "size", "onSortChange", "sort"]);
|
|
@@ -31,5 +32,6 @@ Table.Row = Row;
|
|
|
31
32
|
Table.ColumnHeader = ColumnHeader;
|
|
32
33
|
Table.HeaderCell = HeaderCell;
|
|
33
34
|
Table.DataCell = DataCell;
|
|
35
|
+
Table.ExpandableRow = ExpandableRow;
|
|
34
36
|
export default Table;
|
|
35
37
|
//# sourceMappingURL=Table.js.map
|
package/esm/table/Table.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.js","sourceRoot":"","sources":["../../src/table/Table.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,MAAsB,MAAM,UAAU,CAAC;AAC9C,OAAO,IAAkB,MAAM,QAAQ,CAAC;AACxC,OAAO,GAAgB,MAAM,OAAO,CAAC;AACrC,OAAO,YAAkC,MAAM,gBAAgB,CAAC;AAChE,OAAO,UAA8B,MAAM,cAAc,CAAC;AAC1D,OAAO,QAA0B,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"Table.js","sourceRoot":"","sources":["../../src/table/Table.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,MAAsB,MAAM,UAAU,CAAC;AAC9C,OAAO,IAAkB,MAAM,QAAQ,CAAC;AACxC,OAAO,GAAgB,MAAM,OAAO,CAAC;AACrC,OAAO,YAAkC,MAAM,gBAAgB,CAAC;AAChE,OAAO,UAA8B,MAAM,cAAc,CAAC;AAC1D,OAAO,QAA0B,MAAM,YAAY,CAAC;AACpD,OAAO,aAAoC,MAAM,iBAAiB,CAAC;AAgDnE,MAAM,CAAC,MAAM,YAAY,GAAG,aAAa,CAA2B,IAAI,CAAC,CAAC;AAE1E,MAAM,KAAK,GAAG,UAAU,CACtB,CACE,EAOC,EACD,GAAG,EACH,EAAE;QATF,EACE,SAAS,EACT,YAAY,GAAG,KAAK,EACpB,IAAI,GAAG,QAAQ,EACf,YAAY,EACZ,IAAI,OAEL,EADI,IAAI,cANT,6DAOC,CADQ;IAGN,OAAA,CACH,oBAAC,YAAY,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;QACxD,+CACM,IAAI,IACR,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CAAC,aAAa,EAAE,gBAAgB,IAAI,EAAE,EAAE,SAAS,EAAE;gBAC9D,4BAA4B,EAAE,YAAY;aAC3C,CAAC,IACF,CACoB,CACzB,CAAA;CAAA,CACW,CAAC;AAEf,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;AACtB,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;AAClB,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC;AAChB,KAAK,CAAC,YAAY,GAAG,YAAY,CAAC;AAClC,KAAK,CAAC,UAAU,GAAG,UAAU,CAAC;AAC9B,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;AAC1B,KAAK,CAAC,aAAa,GAAG,aAAa,CAAC;AAEpC,eAAe,KAAK,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import React, { HTMLAttributes } from "react";
|
|
2
|
+
export interface TooltipProps extends HTMLAttributes<HTMLDivElement> {
|
|
3
|
+
/**
|
|
4
|
+
* Element tooltip anchors to
|
|
5
|
+
*/
|
|
6
|
+
children: React.ReactElement & React.RefAttributes<HTMLElement>;
|
|
7
|
+
/**
|
|
8
|
+
* Open state for contolled tooltip
|
|
9
|
+
*/
|
|
10
|
+
open?: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* Tells tooltip to start in open state
|
|
13
|
+
* @note "open"-prop overwrites this
|
|
14
|
+
*/
|
|
15
|
+
defaultOpen?: boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Orientation for tooltip
|
|
18
|
+
* @default "top"
|
|
19
|
+
*/
|
|
20
|
+
placement?: "top" | "right" | "bottom" | "left";
|
|
21
|
+
/**
|
|
22
|
+
* Toggles rendering of arrow
|
|
23
|
+
* @default true
|
|
24
|
+
*/
|
|
25
|
+
arrow?: boolean;
|
|
26
|
+
/**
|
|
27
|
+
* Distance from anchor to tooltip
|
|
28
|
+
* @default 10px with arrow, 2px without arrow
|
|
29
|
+
*/
|
|
30
|
+
offset?: number;
|
|
31
|
+
/**
|
|
32
|
+
* Content shown in tooltip
|
|
33
|
+
*/
|
|
34
|
+
content: string;
|
|
35
|
+
/**
|
|
36
|
+
* Sets max allowed character length
|
|
37
|
+
* @default 80
|
|
38
|
+
*/
|
|
39
|
+
maxChar?: number;
|
|
40
|
+
/**
|
|
41
|
+
* Adds a delay in milliseconds before opening tooltip
|
|
42
|
+
* @default 300
|
|
43
|
+
*/
|
|
44
|
+
delay?: number;
|
|
45
|
+
/**
|
|
46
|
+
* List of Keyboard-keys for shortcuts
|
|
47
|
+
*/
|
|
48
|
+
keys?: string[];
|
|
49
|
+
}
|
|
50
|
+
declare const Tooltip: React.ForwardRefExoticComponent<TooltipProps & React.RefAttributes<HTMLDivElement>>;
|
|
51
|
+
export default Tooltip;
|