@dnb/eufemia 9.38.0-beta.1 → 9.38.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/CHANGELOG.md +6 -1
- package/cjs/components/lib.d.ts +2 -3
- package/cjs/components/table/Table.d.ts +21 -6
- package/cjs/components/table/Table.js +14 -3
- package/cjs/components/table/TableContainer.d.ts +42 -0
- package/cjs/components/table/TableContainer.js +86 -0
- package/cjs/components/table/TableScrollView.d.ts +10 -0
- package/cjs/components/table/TableScrollView.js +40 -0
- package/cjs/components/table/TableStickyHeader.d.ts +2 -2
- package/cjs/components/table/TableTd.d.ts +10 -0
- package/cjs/components/table/TableTd.js +4 -2
- package/cjs/components/table/TableTh.d.ts +1 -0
- package/cjs/components/table/TableTh.js +14 -2
- package/cjs/components/table/TableTr.d.ts +5 -0
- package/cjs/components/table/TableTr.js +3 -2
- package/cjs/components/table/style/_table-cell.scss +21 -0
- package/cjs/components/table/style/_table-container.scss +61 -0
- package/cjs/components/table/style/_table-header-buttons.scss +0 -5
- package/cjs/components/table/style/_table-sticky.scss +42 -0
- package/cjs/components/table/style/_table-td.scss +132 -0
- package/cjs/components/table/style/_table-th.scss +36 -0
- package/cjs/components/table/style/_table-tr.scss +31 -0
- package/cjs/components/table/style/_table.scss +9 -36
- package/cjs/components/table/style/dnb-table.css +264 -37
- package/cjs/components/table/style/dnb-table.min.css +2 -2
- package/cjs/components/table/style/themes/dnb-table-theme-ui.css +12 -71
- package/cjs/components/table/style/themes/dnb-table-theme-ui.min.css +1 -1
- package/cjs/components/table/style/themes/dnb-table-theme-ui.scss +6 -72
- package/cjs/elements/Table.d.ts +6 -2
- package/cjs/elements/Td.d.ts +6 -2
- package/cjs/elements/Th.d.ts +6 -2
- package/cjs/elements/Tr.d.ts +6 -2
- package/cjs/elements/index.d.ts +1 -5
- package/cjs/elements/index.js +0 -32
- package/cjs/elements/lib.d.ts +1 -7
- package/cjs/elements/lib.js +0 -27
- package/cjs/index.d.ts +1 -4
- package/cjs/index.js +0 -24
- package/cjs/shared/Eufemia.js +1 -1
- package/cjs/style/dnb-ui-components.css +252 -37
- package/cjs/style/dnb-ui-components.min.css +2 -2
- package/cjs/style/dnb-ui-elements.css +15 -3
- package/cjs/style/dnb-ui-elements.min.css +1 -1
- package/cjs/style/dnb-ui-tags.css +25 -6
- package/cjs/style/dnb-ui-tags.min.css +1 -1
- package/cjs/style/elements/_anchor-mixins.scss +8 -4
- package/cjs/style/elements/typography.scss +14 -0
- package/cjs/style/themes/theme-eiendom/dnb-theme-eiendom.css +27 -74
- package/cjs/style/themes/theme-eiendom/dnb-theme-eiendom.min.css +2 -2
- package/cjs/style/themes/theme-ui/dnb-theme-ui.css +27 -74
- package/cjs/style/themes/theme-ui/dnb-theme-ui.min.css +2 -2
- package/components/lib.d.ts +2 -3
- package/components/table/Table.d.ts +21 -6
- package/components/table/Table.js +8 -3
- package/components/table/TableContainer.d.ts +42 -0
- package/components/table/TableContainer.js +52 -0
- package/components/table/TableScrollView.d.ts +10 -0
- package/components/table/TableScrollView.js +15 -0
- package/components/table/TableStickyHeader.d.ts +2 -2
- package/components/table/TableTd.d.ts +10 -0
- package/components/table/TableTd.js +4 -2
- package/components/table/TableTh.d.ts +1 -0
- package/components/table/TableTh.js +15 -2
- package/components/table/TableTr.d.ts +5 -0
- package/components/table/TableTr.js +3 -2
- package/components/table/style/_table-cell.scss +21 -0
- package/components/table/style/_table-container.scss +61 -0
- package/components/table/style/_table-header-buttons.scss +0 -5
- package/components/table/style/_table-sticky.scss +42 -0
- package/components/table/style/_table-td.scss +132 -0
- package/components/table/style/_table-th.scss +36 -0
- package/components/table/style/_table-tr.scss +31 -0
- package/components/table/style/_table.scss +9 -36
- package/components/table/style/dnb-table.css +264 -37
- package/components/table/style/dnb-table.min.css +2 -2
- package/components/table/style/themes/dnb-table-theme-ui.css +12 -71
- package/components/table/style/themes/dnb-table-theme-ui.min.css +1 -1
- package/components/table/style/themes/dnb-table-theme-ui.scss +6 -72
- package/elements/Table.d.ts +6 -2
- package/elements/Td.d.ts +6 -2
- package/elements/Th.d.ts +6 -2
- package/elements/Tr.d.ts +6 -2
- package/elements/index.d.ts +1 -5
- package/elements/index.js +1 -5
- package/elements/lib.d.ts +1 -7
- package/elements/lib.js +1 -7
- package/es/components/lib.d.ts +2 -3
- package/es/components/table/Table.d.ts +21 -6
- package/es/components/table/Table.js +9 -4
- package/es/components/table/TableContainer.d.ts +42 -0
- package/es/components/table/TableContainer.js +60 -0
- package/es/components/table/TableScrollView.d.ts +10 -0
- package/es/components/table/TableScrollView.js +17 -0
- package/es/components/table/TableStickyHeader.d.ts +2 -2
- package/es/components/table/TableTd.d.ts +10 -0
- package/es/components/table/TableTd.js +5 -3
- package/es/components/table/TableTh.d.ts +1 -0
- package/es/components/table/TableTh.js +16 -2
- package/es/components/table/TableTr.d.ts +5 -0
- package/es/components/table/TableTr.js +3 -2
- package/es/components/table/style/_table-cell.scss +21 -0
- package/es/components/table/style/_table-container.scss +61 -0
- package/es/components/table/style/_table-header-buttons.scss +0 -5
- package/es/components/table/style/_table-sticky.scss +42 -0
- package/es/components/table/style/_table-td.scss +132 -0
- package/es/components/table/style/_table-th.scss +36 -0
- package/es/components/table/style/_table-tr.scss +31 -0
- package/es/components/table/style/_table.scss +9 -36
- package/es/components/table/style/dnb-table.css +264 -37
- package/es/components/table/style/dnb-table.min.css +2 -2
- package/es/components/table/style/themes/dnb-table-theme-ui.css +12 -71
- package/es/components/table/style/themes/dnb-table-theme-ui.min.css +1 -1
- package/es/components/table/style/themes/dnb-table-theme-ui.scss +6 -72
- package/es/elements/Table.d.ts +6 -2
- package/es/elements/Td.d.ts +6 -2
- package/es/elements/Th.d.ts +6 -2
- package/es/elements/Tr.d.ts +6 -2
- package/es/elements/index.d.ts +1 -5
- package/es/elements/index.js +1 -5
- package/es/elements/lib.d.ts +1 -7
- package/es/elements/lib.js +1 -7
- package/es/index.d.ts +1 -4
- package/es/index.js +1 -4
- package/es/shared/Eufemia.js +1 -1
- package/es/style/dnb-ui-components.css +252 -37
- package/es/style/dnb-ui-components.min.css +2 -2
- package/es/style/dnb-ui-elements.css +15 -3
- package/es/style/dnb-ui-elements.min.css +1 -1
- package/es/style/dnb-ui-tags.css +25 -6
- package/es/style/dnb-ui-tags.min.css +1 -1
- package/es/style/elements/_anchor-mixins.scss +8 -4
- package/es/style/elements/typography.scss +14 -0
- package/es/style/themes/theme-eiendom/dnb-theme-eiendom.css +27 -74
- package/es/style/themes/theme-eiendom/dnb-theme-eiendom.min.css +2 -2
- package/es/style/themes/theme-ui/dnb-theme-ui.css +27 -74
- package/es/style/themes/theme-ui/dnb-theme-ui.min.css +2 -2
- package/esm/dnb-ui-basis.min.mjs +1 -1
- package/esm/dnb-ui-components.min.mjs +1 -1
- package/esm/dnb-ui-elements.min.mjs +4 -4
- package/esm/dnb-ui-extensions.min.mjs +1 -1
- package/esm/dnb-ui-lib.min.mjs +2 -2
- package/esm/dnb-ui-web-components.min.mjs +2 -2
- package/index.d.ts +1 -4
- package/index.js +1 -4
- package/package.json +1 -1
- package/shared/Eufemia.js +1 -1
- package/style/dnb-ui-components.css +252 -37
- package/style/dnb-ui-components.min.css +2 -2
- package/style/dnb-ui-elements.css +15 -3
- package/style/dnb-ui-elements.min.css +1 -1
- package/style/dnb-ui-tags.css +25 -6
- package/style/dnb-ui-tags.min.css +1 -1
- package/style/elements/_anchor-mixins.scss +8 -4
- package/style/elements/typography.scss +14 -0
- package/style/themes/theme-eiendom/dnb-theme-eiendom.css +27 -74
- package/style/themes/theme-eiendom/dnb-theme-eiendom.min.css +2 -2
- package/style/themes/theme-ui/dnb-theme-ui.css +27 -74
- package/style/themes/theme-ui/dnb-theme-ui.min.css +2 -2
- package/umd/dnb-ui-basis.min.js +1 -1
- package/umd/dnb-ui-components.min.js +1 -1
- package/umd/dnb-ui-elements.min.js +5 -5
- package/umd/dnb-ui-extensions.min.js +1 -1
- package/umd/dnb-ui-lib.min.js +2 -2
- package/umd/dnb-ui-web-components.min.js +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
All notable changes to @dnb/eufemia will be documented in this file. See
|
|
4
4
|
[Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
-
# [9.38.0
|
|
6
|
+
# [9.38.0](https://github.com/dnbexperience/eufemia/compare/v9.37.0...v9.38.0) (2022-11-22)
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
### Bug Fixes
|
|
@@ -18,10 +18,15 @@ All notable changes to @dnb/eufemia will be documented in this file. See
|
|
|
18
18
|
### Features
|
|
19
19
|
|
|
20
20
|
* **Table:** add "fixed" prop for fixed table layouts ([#1708](https://github.com/dnbexperience/eufemia/issues/1708)) ([241ee0f](https://github.com/dnbexperience/eufemia/commit/241ee0f77bc48c0dd9ac84d0035971c784ba3a8b))
|
|
21
|
+
* **Table:** add table "border" and "outline" property ([#1739](https://github.com/dnbexperience/eufemia/issues/1739)) ([ad63ffb](https://github.com/dnbexperience/eufemia/commit/ad63ffbda03b6a72f9567df6d8d02033f0d4434c))
|
|
22
|
+
* **Table:** add Table.ScrolView to support horizontal scroll ([#1735](https://github.com/dnbexperience/eufemia/issues/1735)) ([85a4d86](https://github.com/dnbexperience/eufemia/commit/85a4d86afa20ea775d89c2bfcef56dd32a2e6004))
|
|
21
23
|
* **Table:** add Table.SortButton ([#1709](https://github.com/dnbexperience/eufemia/issues/1709)) ([288a8db](https://github.com/dnbexperience/eufemia/commit/288a8dbaf2e0622208d567b62302e5b668bd90b7))
|
|
24
|
+
* **Table:** add TableContainer to stack tables with an outline ([#1740](https://github.com/dnbexperience/eufemia/issues/1740)) ([376ac06](https://github.com/dnbexperience/eufemia/commit/376ac063518d8741223b39d87197d207b939c008))
|
|
22
25
|
* **Table:** add Th.HelpButton to be used in Table Headers ([#1711](https://github.com/dnbexperience/eufemia/issues/1711)) ([c142323](https://github.com/dnbexperience/eufemia/commit/c142323b56389218b5f2451c55fc7282dec5d0c4))
|
|
26
|
+
* **Table:** support rowSpan ([#1733](https://github.com/dnbexperience/eufemia/issues/1733)) ([463692d](https://github.com/dnbexperience/eufemia/commit/463692db1e803903a93c32a1028689f3f9e55afc))
|
|
23
27
|
* **Th:** add table header sortable props ([#1706](https://github.com/dnbexperience/eufemia/issues/1706)) ([c40393a](https://github.com/dnbexperience/eufemia/commit/c40393addb8bc75fc84320ad21f5c0f1c5c42bc0))
|
|
24
28
|
* **Tr:** automate odd/even and make it overridable ([#1705](https://github.com/dnbexperience/eufemia/issues/1705)) ([d73d3cb](https://github.com/dnbexperience/eufemia/commit/d73d3cbdc115ceb5b9e9609a719ff58b919d9c69))
|
|
29
|
+
* **Typography:** support styles for superscript and subscript elements ([#1721](https://github.com/dnbexperience/eufemia/issues/1721)) ([c2b043d](https://github.com/dnbexperience/eufemia/commit/c2b043db0bfddb9678e526f4eb2a9a0b1ca16d9d))
|
|
25
30
|
* **Upload:** support files dropped on the document body ([#1719](https://github.com/dnbexperience/eufemia/issues/1719)) ([f206243](https://github.com/dnbexperience/eufemia/commit/f20624303468789b89a907cb5157e5a975ac43a7))
|
|
26
31
|
|
|
27
32
|
# [9.37.0](https://github.com/dnbexperience/eufemia/compare/v9.36.0...v9.37.0) (2022-11-07)
|
package/cjs/components/lib.d.ts
CHANGED
|
@@ -51,10 +51,9 @@ export function getComponents(): {
|
|
|
51
51
|
StepIndicator: typeof StepIndicator;
|
|
52
52
|
Switch: typeof Switch;
|
|
53
53
|
Table: {
|
|
54
|
-
(componentProps: import("./table/Table").
|
|
55
|
-
space?: import("./space/types").SpaceTypes | import("./space/types").SpacingElementProps;
|
|
56
|
-
}): JSX.Element;
|
|
54
|
+
(componentProps: import("./table/Table").TableAllProps): JSX.Element;
|
|
57
55
|
StickyHelper: () => JSX.Element;
|
|
56
|
+
ScrollView: typeof import("./table/TableScrollView").default;
|
|
58
57
|
};
|
|
59
58
|
Tabs: typeof Tabs;
|
|
60
59
|
Tag: {
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
2
|
+
import ScrollView from './TableScrollView';
|
|
3
|
+
import { StickyHelper } from './TableStickyHeader';
|
|
4
|
+
import type { StickyTableHeaderProps } from './TableStickyHeader';
|
|
5
|
+
import type { SkeletonShow } from '../skeleton/Skeleton';
|
|
6
|
+
import type { SpacingProps } from '../../shared/types';
|
|
5
7
|
export declare type TableSizes = 'large' | 'medium';
|
|
6
8
|
export declare type TableVariants = 'generic';
|
|
7
9
|
export { StickyHelper };
|
|
8
|
-
export
|
|
10
|
+
export { ScrollView };
|
|
11
|
+
export declare type TableProps = {
|
|
9
12
|
/**
|
|
10
13
|
* The content of the component.
|
|
11
14
|
*/
|
|
@@ -28,18 +31,30 @@ export interface TableProps extends StickyTableHeaderProps {
|
|
|
28
31
|
* Default: generic.
|
|
29
32
|
*/
|
|
30
33
|
variant?: TableVariants;
|
|
34
|
+
/**
|
|
35
|
+
* Use `true` to show borders between table data cell
|
|
36
|
+
* Default: false
|
|
37
|
+
*/
|
|
38
|
+
border?: boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Use `true` to show a outline border around the table
|
|
41
|
+
* Default: false
|
|
42
|
+
*/
|
|
43
|
+
outline?: boolean;
|
|
31
44
|
/**
|
|
32
45
|
* Defines if the table should behave with a fixed table layout, using: "table-layout: fixed;"
|
|
33
46
|
* Default: null.
|
|
34
47
|
*/
|
|
35
48
|
fixed?: boolean;
|
|
36
|
-
}
|
|
49
|
+
} & StickyTableHeaderProps;
|
|
50
|
+
export declare type TableAllProps = TableProps & React.TableHTMLAttributes<HTMLTableElement> & SpacingProps;
|
|
37
51
|
export declare const defaultProps: {
|
|
38
52
|
size: string;
|
|
39
53
|
variant: string;
|
|
40
54
|
};
|
|
41
55
|
declare const Table: {
|
|
42
|
-
(componentProps:
|
|
56
|
+
(componentProps: TableAllProps): JSX.Element;
|
|
43
57
|
StickyHelper: () => JSX.Element;
|
|
58
|
+
ScrollView: typeof ScrollView;
|
|
44
59
|
};
|
|
45
60
|
export default Table;
|
|
@@ -39,6 +39,12 @@ require("core-js/modules/es.object.assign.js");
|
|
|
39
39
|
Object.defineProperty(exports, "__esModule", {
|
|
40
40
|
value: true
|
|
41
41
|
});
|
|
42
|
+
Object.defineProperty(exports, "ScrollView", {
|
|
43
|
+
enumerable: true,
|
|
44
|
+
get: function get() {
|
|
45
|
+
return _TableScrollView.default;
|
|
46
|
+
}
|
|
47
|
+
});
|
|
42
48
|
Object.defineProperty(exports, "StickyHelper", {
|
|
43
49
|
enumerable: true,
|
|
44
50
|
get: function get() {
|
|
@@ -63,11 +69,13 @@ var _SkeletonHelper = require("../skeleton/SkeletonHelper");
|
|
|
63
69
|
|
|
64
70
|
var _componentHelper = require("../../shared/component-helper");
|
|
65
71
|
|
|
72
|
+
var _TableScrollView = _interopRequireDefault(require("./TableScrollView"));
|
|
73
|
+
|
|
66
74
|
var _TableContext = _interopRequireDefault(require("./TableContext"));
|
|
67
75
|
|
|
68
76
|
var _TableStickyHeader = require("./TableStickyHeader");
|
|
69
77
|
|
|
70
|
-
var _excluded = ["className", "children", "size", "skeleton", "variant", "sticky", "stickyOffset", "fixed"];
|
|
78
|
+
var _excluded = ["className", "children", "size", "skeleton", "variant", "sticky", "stickyOffset", "fixed", "border", "outline"];
|
|
71
79
|
|
|
72
80
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
73
81
|
|
|
@@ -116,6 +124,8 @@ var Table = function Table(componentProps) {
|
|
|
116
124
|
sticky = allProps.sticky,
|
|
117
125
|
stickyOffset = allProps.stickyOffset,
|
|
118
126
|
fixed = allProps.fixed,
|
|
127
|
+
border = allProps.border,
|
|
128
|
+
outline = allProps.outline,
|
|
119
129
|
props = _objectWithoutProperties(allProps, _excluded);
|
|
120
130
|
|
|
121
131
|
var skeletonClasses = (0, _SkeletonHelper.createSkeletonClass)('font', skeleton, context);
|
|
@@ -144,7 +154,7 @@ var Table = function Table(componentProps) {
|
|
|
144
154
|
allProps: _objectSpread(_objectSpread({}, context.getTranslation(componentProps).Table), allProps)
|
|
145
155
|
}
|
|
146
156
|
}, _react.default.createElement("table", _extends({
|
|
147
|
-
className: (0, _classnames.default)('dnb-table', spacingClasses, skeletonClasses, className, variant && "dnb-table__variant--".concat(variant), size && "dnb-table__size--".concat(size), sticky && "dnb-table--sticky", fixed && "dnb-table--fixed"),
|
|
157
|
+
className: (0, _classnames.default)('dnb-table', spacingClasses, skeletonClasses, className, variant && "dnb-table__variant--".concat(variant), size && "dnb-table__size--".concat(size), sticky && "dnb-table--sticky", fixed && "dnb-table--fixed", border && "dnb-table--border", outline && "dnb-table--outline"),
|
|
148
158
|
ref: elementRef
|
|
149
159
|
}, props), children)));
|
|
150
160
|
|
|
@@ -156,4 +166,5 @@ var Table = function Table(componentProps) {
|
|
|
156
166
|
|
|
157
167
|
var _default = Table;
|
|
158
168
|
exports.default = _default;
|
|
159
|
-
Table.StickyHelper = _TableStickyHeader.StickyHelper;
|
|
169
|
+
Table.StickyHelper = _TableStickyHeader.StickyHelper;
|
|
170
|
+
Table.ScrollView = _TableScrollView.default;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { TableProps } from './Table';
|
|
3
|
+
import type { SpacingProps } from '../space/types';
|
|
4
|
+
export declare type TableContainerProps = {
|
|
5
|
+
/**
|
|
6
|
+
* The content of the component.
|
|
7
|
+
*/
|
|
8
|
+
children: [
|
|
9
|
+
React.ReactElement<TableContainerHeadProps>,
|
|
10
|
+
React.ReactElement<TableContainerBodyProps>,
|
|
11
|
+
React.ReactElement<TableContainerFootProps>
|
|
12
|
+
];
|
|
13
|
+
};
|
|
14
|
+
export declare type TableContainerAllProps = TableContainerProps & React.TableHTMLAttributes<HTMLTableRowElement> & SpacingProps;
|
|
15
|
+
declare function TableContainer(props: TableContainerAllProps): JSX.Element;
|
|
16
|
+
declare namespace TableContainer {
|
|
17
|
+
var Body: typeof TableContainerBody;
|
|
18
|
+
var Head: typeof TableContainerHead;
|
|
19
|
+
var Foot: typeof TableContainerFoot;
|
|
20
|
+
}
|
|
21
|
+
export default TableContainer;
|
|
22
|
+
export declare type TableContainerBodyProps = {
|
|
23
|
+
/**
|
|
24
|
+
* The content of the component.
|
|
25
|
+
*/
|
|
26
|
+
children: React.ReactElement<TableProps> | Array<React.ReactElement<TableProps>>;
|
|
27
|
+
};
|
|
28
|
+
export declare function TableContainerBody(props: TableContainerBodyProps & React.HTMLAttributes<HTMLDivElement>): JSX.Element;
|
|
29
|
+
export declare type TableContainerHeadProps = {
|
|
30
|
+
/**
|
|
31
|
+
* The content of the component.
|
|
32
|
+
*/
|
|
33
|
+
children: React.ReactNode;
|
|
34
|
+
};
|
|
35
|
+
export declare function TableContainerHead(props: TableContainerHeadProps & React.HTMLAttributes<HTMLDivElement>): JSX.Element;
|
|
36
|
+
export declare type TableContainerFootProps = {
|
|
37
|
+
/**
|
|
38
|
+
* The content of the component.
|
|
39
|
+
*/
|
|
40
|
+
children: React.ReactNode;
|
|
41
|
+
};
|
|
42
|
+
export declare function TableContainerFoot(props: TableContainerFootProps & React.HTMLAttributes<HTMLDivElement>): JSX.Element;
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.object.keys.js");
|
|
4
|
+
|
|
5
|
+
require("core-js/modules/es.array.index-of.js");
|
|
6
|
+
|
|
7
|
+
require("core-js/modules/es.symbol.js");
|
|
8
|
+
|
|
9
|
+
require("core-js/modules/es.object.assign.js");
|
|
10
|
+
|
|
11
|
+
Object.defineProperty(exports, "__esModule", {
|
|
12
|
+
value: true
|
|
13
|
+
});
|
|
14
|
+
exports.TableContainerBody = TableContainerBody;
|
|
15
|
+
exports.TableContainerFoot = TableContainerFoot;
|
|
16
|
+
exports.TableContainerHead = TableContainerHead;
|
|
17
|
+
exports.default = TableContainer;
|
|
18
|
+
|
|
19
|
+
var _react = _interopRequireDefault(require("react"));
|
|
20
|
+
|
|
21
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
22
|
+
|
|
23
|
+
var _ScrollView = _interopRequireDefault(require("../../fragments/scroll-view/ScrollView"));
|
|
24
|
+
|
|
25
|
+
var _SpacingUtils = require("../space/SpacingUtils");
|
|
26
|
+
|
|
27
|
+
var _componentHelper = require("../../shared/component-helper");
|
|
28
|
+
|
|
29
|
+
var _excluded = ["children", "className"],
|
|
30
|
+
_excluded2 = ["children", "className"],
|
|
31
|
+
_excluded3 = ["children", "className"],
|
|
32
|
+
_excluded4 = ["children", "className"];
|
|
33
|
+
|
|
34
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
35
|
+
|
|
36
|
+
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
37
|
+
|
|
38
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
39
|
+
|
|
40
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
41
|
+
|
|
42
|
+
function TableContainer(props) {
|
|
43
|
+
var children = props.children,
|
|
44
|
+
className = props.className,
|
|
45
|
+
rest = _objectWithoutProperties(props, _excluded);
|
|
46
|
+
|
|
47
|
+
var spacingClasses = (0, _SpacingUtils.createSpacingClasses)(props);
|
|
48
|
+
(0, _componentHelper.validateDOMAttributes)(props, rest);
|
|
49
|
+
return _react.default.createElement("section", _extends({
|
|
50
|
+
className: (0, _classnames.default)('dnb-table__container', className, spacingClasses)
|
|
51
|
+
}, rest), _react.default.createElement(_ScrollView.default, null, children));
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
function TableContainerBody(props) {
|
|
55
|
+
var children = props.children,
|
|
56
|
+
className = props.className,
|
|
57
|
+
rest = _objectWithoutProperties(props, _excluded2);
|
|
58
|
+
|
|
59
|
+
return _react.default.createElement("div", _extends({
|
|
60
|
+
className: (0, _classnames.default)('dnb-table__container__body', className)
|
|
61
|
+
}, rest), children);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
function TableContainerHead(props) {
|
|
65
|
+
var children = props.children,
|
|
66
|
+
className = props.className,
|
|
67
|
+
rest = _objectWithoutProperties(props, _excluded3);
|
|
68
|
+
|
|
69
|
+
return _react.default.createElement("div", _extends({
|
|
70
|
+
className: (0, _classnames.default)('dnb-table__container__head', className)
|
|
71
|
+
}, rest), children);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
function TableContainerFoot(props) {
|
|
75
|
+
var children = props.children,
|
|
76
|
+
className = props.className,
|
|
77
|
+
rest = _objectWithoutProperties(props, _excluded4);
|
|
78
|
+
|
|
79
|
+
return _react.default.createElement("div", _extends({
|
|
80
|
+
className: (0, _classnames.default)('dnb-table__container__foot', className)
|
|
81
|
+
}, rest), children);
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
TableContainer.Body = TableContainerBody;
|
|
85
|
+
TableContainer.Head = TableContainerHead;
|
|
86
|
+
TableContainer.Foot = TableContainerFoot;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { SpacingProps } from '../../shared/types';
|
|
3
|
+
export declare type TableScrollViewProps = {
|
|
4
|
+
/**
|
|
5
|
+
* The content of the component.
|
|
6
|
+
*/
|
|
7
|
+
children: React.ReactElement<HTMLTableElement>;
|
|
8
|
+
};
|
|
9
|
+
export declare type TableScrollViewAllProps = TableScrollViewProps & Omit<React.TableHTMLAttributes<HTMLDivElement>, 'children'> & SpacingProps;
|
|
10
|
+
export default function TableScrollView(props: TableScrollViewAllProps): JSX.Element;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.object.keys.js");
|
|
4
|
+
|
|
5
|
+
require("core-js/modules/es.array.index-of.js");
|
|
6
|
+
|
|
7
|
+
require("core-js/modules/es.symbol.js");
|
|
8
|
+
|
|
9
|
+
require("core-js/modules/es.object.assign.js");
|
|
10
|
+
|
|
11
|
+
Object.defineProperty(exports, "__esModule", {
|
|
12
|
+
value: true
|
|
13
|
+
});
|
|
14
|
+
exports.default = TableScrollView;
|
|
15
|
+
|
|
16
|
+
var _react = _interopRequireDefault(require("react"));
|
|
17
|
+
|
|
18
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
19
|
+
|
|
20
|
+
var _ScrollView = _interopRequireDefault(require("../../fragments/scroll-view/ScrollView"));
|
|
21
|
+
|
|
22
|
+
var _excluded = ["className", "children"];
|
|
23
|
+
|
|
24
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
|
+
|
|
26
|
+
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
27
|
+
|
|
28
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
29
|
+
|
|
30
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
31
|
+
|
|
32
|
+
function TableScrollView(props) {
|
|
33
|
+
var className = props.className,
|
|
34
|
+
children = props.children,
|
|
35
|
+
rest = _objectWithoutProperties(props, _excluded);
|
|
36
|
+
|
|
37
|
+
return _react.default.createElement(_ScrollView.default, _extends({
|
|
38
|
+
className: (0, _classnames.default)('dnb-table__scroll-view', className)
|
|
39
|
+
}, rest), children);
|
|
40
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
export
|
|
2
|
+
export declare type StickyTableHeaderProps = {
|
|
3
3
|
/**
|
|
4
4
|
* Makes the Table header sticky
|
|
5
5
|
* Default: false
|
|
@@ -14,7 +14,7 @@ export interface StickyTableHeaderProps {
|
|
|
14
14
|
* @deprecated Please use `stickyOffset`
|
|
15
15
|
*/
|
|
16
16
|
sticky_offset?: string | number;
|
|
17
|
-
}
|
|
17
|
+
};
|
|
18
18
|
export declare const useStickyHeader: ({ sticky, stickyOffset, sticky_offset, }: StickyTableHeaderProps) => {
|
|
19
19
|
elementRef: React.MutableRefObject<HTMLTableElement>;
|
|
20
20
|
};
|
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
export declare type TableTdProps = {
|
|
3
|
+
/**
|
|
4
|
+
* if set to `true`, no padding will be added
|
|
5
|
+
* Default: false
|
|
6
|
+
*/
|
|
7
|
+
noSpacing?: boolean;
|
|
8
|
+
/**
|
|
9
|
+
* Set to `horizontal` for padding on left and right side
|
|
10
|
+
* Default: false
|
|
11
|
+
*/
|
|
12
|
+
spacing?: 'horizontal';
|
|
3
13
|
/**
|
|
4
14
|
* The content of the component.
|
|
5
15
|
* Default: null
|
|
@@ -17,7 +17,7 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
17
17
|
|
|
18
18
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
19
19
|
|
|
20
|
-
var _excluded = ["className", "children"];
|
|
20
|
+
var _excluded = ["className", "children", "noSpacing", "spacing"];
|
|
21
21
|
|
|
22
22
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
23
23
|
|
|
@@ -30,10 +30,12 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
|
|
|
30
30
|
function Td(componentProps) {
|
|
31
31
|
var className = componentProps.className,
|
|
32
32
|
children = componentProps.children,
|
|
33
|
+
noSpacing = componentProps.noSpacing,
|
|
34
|
+
spacing = componentProps.spacing,
|
|
33
35
|
props = _objectWithoutProperties(componentProps, _excluded);
|
|
34
36
|
|
|
35
37
|
return _react.default.createElement("td", _extends({
|
|
36
38
|
role: "cell",
|
|
37
|
-
className: (0, _classnames.default)('dnb-table__td', className)
|
|
39
|
+
className: (0, _classnames.default)('dnb-table__td', className, noSpacing && 'dnb-table__td--no-spacing', spacing && "dnb-table__td--spacing-".concat(spacing))
|
|
38
40
|
}, props), children);
|
|
39
41
|
}
|
|
@@ -32,5 +32,6 @@ declare function Th(componentProps: TableThProps & React.ThHTMLAttributes<HTMLTa
|
|
|
32
32
|
declare namespace Th {
|
|
33
33
|
var SortButton: typeof TableSortButton;
|
|
34
34
|
var HelpButton: typeof TableHelpButton;
|
|
35
|
+
var Horizontal: ({ className, ...rest }: React.ThHTMLAttributes<HTMLDivElement>) => JSX.Element;
|
|
35
36
|
}
|
|
36
37
|
export default Th;
|
|
@@ -21,7 +21,8 @@ var _TableSortButton = _interopRequireDefault(require("./TableSortButton"));
|
|
|
21
21
|
|
|
22
22
|
var _TableHelpButton = _interopRequireDefault(require("./TableHelpButton"));
|
|
23
23
|
|
|
24
|
-
var _excluded = ["className", "children", "sortable", "active", "reversed", "noWrap"]
|
|
24
|
+
var _excluded = ["className", "children", "sortable", "active", "reversed", "noWrap"],
|
|
25
|
+
_excluded2 = ["className"];
|
|
25
26
|
|
|
26
27
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
27
28
|
|
|
@@ -46,5 +47,16 @@ function Th(componentProps) {
|
|
|
46
47
|
}, props), children);
|
|
47
48
|
}
|
|
48
49
|
|
|
50
|
+
function Horizontal(_ref) {
|
|
51
|
+
var _ref$className = _ref.className,
|
|
52
|
+
className = _ref$className === void 0 ? null : _ref$className,
|
|
53
|
+
rest = _objectWithoutProperties(_ref, _excluded2);
|
|
54
|
+
|
|
55
|
+
return _react.default.createElement("div", _extends({}, rest, {
|
|
56
|
+
className: (0, _classnames.default)('dnb-table__th__horizontal', className)
|
|
57
|
+
}));
|
|
58
|
+
}
|
|
59
|
+
|
|
49
60
|
Th.SortButton = _TableSortButton.default;
|
|
50
|
-
Th.HelpButton = _TableHelpButton.default;
|
|
61
|
+
Th.HelpButton = _TableHelpButton.default;
|
|
62
|
+
Th.Horizontal = Horizontal;
|
|
@@ -5,6 +5,11 @@ export declare type TableTrProps = {
|
|
|
5
5
|
* The variant of the tr
|
|
6
6
|
*/
|
|
7
7
|
variant?: 'even' | 'odd';
|
|
8
|
+
/**
|
|
9
|
+
* If set to true, the inherited header text will not wrap to new lines
|
|
10
|
+
* Default: false
|
|
11
|
+
*/
|
|
12
|
+
noWrap?: boolean;
|
|
8
13
|
/**
|
|
9
14
|
* The content of the component.
|
|
10
15
|
*/
|
|
@@ -19,7 +19,7 @@ var _classnames = _interopRequireDefault(require("classnames"));
|
|
|
19
19
|
|
|
20
20
|
var _TableContext = _interopRequireDefault(require("./TableContext"));
|
|
21
21
|
|
|
22
|
-
var _excluded = ["variant", "children", "className"];
|
|
22
|
+
var _excluded = ["variant", "noWrap", "children", "className"];
|
|
23
23
|
|
|
24
24
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
25
|
|
|
@@ -31,6 +31,7 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
|
|
|
31
31
|
|
|
32
32
|
function Tr(componentProps) {
|
|
33
33
|
var variant = componentProps.variant,
|
|
34
|
+
noWrap = componentProps.noWrap,
|
|
34
35
|
children = componentProps.children,
|
|
35
36
|
_className = componentProps.className,
|
|
36
37
|
props = _objectWithoutProperties(componentProps, _excluded);
|
|
@@ -40,7 +41,7 @@ function Tr(componentProps) {
|
|
|
40
41
|
}),
|
|
41
42
|
currentVariant = _useHandleTrVariant.currentVariant;
|
|
42
43
|
|
|
43
|
-
var className = (0, _classnames.default)('dnb-table__tr', _className, currentVariant && "dnb-table__tr--".concat(currentVariant));
|
|
44
|
+
var className = (0, _classnames.default)('dnb-table__tr', _className, currentVariant && "dnb-table__tr--".concat(currentVariant), noWrap && 'dnb-table--no-wrap');
|
|
44
45
|
return _react.default.createElement("tr", _extends({
|
|
45
46
|
role: "row",
|
|
46
47
|
className: className
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Table component
|
|
3
|
+
*
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
.dnb-table {
|
|
7
|
+
& > tr > th,
|
|
8
|
+
& > tr > td,
|
|
9
|
+
& > thead > tr > th,
|
|
10
|
+
& > tbody > tr > td,
|
|
11
|
+
&__th,
|
|
12
|
+
&__td {
|
|
13
|
+
position: relative;
|
|
14
|
+
|
|
15
|
+
font-size: var(--font-size-basis);
|
|
16
|
+
line-height: var(--line-height-basis);
|
|
17
|
+
border-spacing: 0;
|
|
18
|
+
|
|
19
|
+
word-break: keep-all;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Table component
|
|
3
|
+
*
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
@mixin tableBorder {
|
|
7
|
+
content: '';
|
|
8
|
+
position: absolute;
|
|
9
|
+
top: 0;
|
|
10
|
+
left: 0;
|
|
11
|
+
right: 0;
|
|
12
|
+
bottom: 0;
|
|
13
|
+
z-index: 1;
|
|
14
|
+
|
|
15
|
+
pointer-events: none;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.dnb-table__container {
|
|
19
|
+
position: relative;
|
|
20
|
+
|
|
21
|
+
--border: 0.0625rem solid var(--color-black-8);
|
|
22
|
+
background-color: var(--color-white);
|
|
23
|
+
|
|
24
|
+
&::after {
|
|
25
|
+
@include tableBorder();
|
|
26
|
+
|
|
27
|
+
border: var(--border);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
&,
|
|
31
|
+
&::after {
|
|
32
|
+
border-radius: 0.5rem;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
&,
|
|
36
|
+
&__body,
|
|
37
|
+
&__head,
|
|
38
|
+
&__foot {
|
|
39
|
+
display: flex;
|
|
40
|
+
flex-direction: column;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
&__body {
|
|
44
|
+
.dnb-table {
|
|
45
|
+
&:not([class*='space__bottom']) {
|
|
46
|
+
margin-bottom: 0;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
&__head {
|
|
52
|
+
padding: 2rem 1rem 0;
|
|
53
|
+
|
|
54
|
+
.dnb-spacing & .dnb-h--large:not([class*='space__top']) {
|
|
55
|
+
margin: 0;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
&__foot {
|
|
59
|
+
padding: 0.5rem 1rem 2rem;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Table component
|
|
3
|
+
*
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
.dnb-table {
|
|
7
|
+
&__sticky-helper > td {
|
|
8
|
+
display: block;
|
|
9
|
+
overflow: hidden;
|
|
10
|
+
padding: 0 !important;
|
|
11
|
+
height: 0;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
tr.sticky th {
|
|
15
|
+
position: sticky;
|
|
16
|
+
top: var(--table-top, 0); // is set by "stickyOffset" prop
|
|
17
|
+
z-index: 2;
|
|
18
|
+
|
|
19
|
+
&::before {
|
|
20
|
+
content: '';
|
|
21
|
+
position: absolute;
|
|
22
|
+
opacity: 0;
|
|
23
|
+
left: 0;
|
|
24
|
+
right: 0;
|
|
25
|
+
bottom: 0;
|
|
26
|
+
height: 6px;
|
|
27
|
+
|
|
28
|
+
// The @mixin defaultDropShadow() does not work in this case
|
|
29
|
+
// because we need only a bottom shadow (with clip-path)
|
|
30
|
+
box-shadow: var(--shadow-default-x) -2px 12px 8px var(--shadow-default-color);
|
|
31
|
+
clip-path: inset(6px 0 -48px 0);
|
|
32
|
+
|
|
33
|
+
transition: opacity 300ms ease-out;
|
|
34
|
+
[data-visual-test-wrapper] & {
|
|
35
|
+
transition: none;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
tr.sticky.show-shadow th::before {
|
|
40
|
+
opacity: 1;
|
|
41
|
+
}
|
|
42
|
+
}
|