@dbcdk/react-components 0.0.119 → 0.0.121
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/button/Button.module.css +2 -2
- package/dist/components/card/Card.cjs +4 -7
- package/dist/components/card/Card.js +4 -7
- package/dist/components/card/Card.module.css +4 -9
- package/dist/components/lightbox/Lightbox.cjs +94 -23
- package/dist/components/lightbox/Lightbox.d.ts +14 -1
- package/dist/components/lightbox/Lightbox.js +95 -24
- package/dist/components/lightbox/Lightbox.module.css +56 -3
- package/dist/components/search-box/SearchBox.cjs +9 -4
- package/dist/components/search-box/SearchBox.js +9 -4
- package/dist/components/skeleton-loader/skeleton-loader-item/SkeletonLoaderItem.cjs +1 -1
- package/dist/components/skeleton-loader/skeleton-loader-item/SkeletonLoaderItem.js +1 -1
- package/dist/components/skeleton-loader/skeleton-loader-item/SkeletonLoaderItem.module.css +11 -7
- package/dist/components/table/Table.cjs +9 -4
- package/dist/components/table/Table.d.ts +1 -1
- package/dist/components/table/Table.js +10 -5
- package/dist/components/table/Table.module.css +25 -0
- package/dist/components/table/Table.types.d.ts +13 -0
- package/dist/components/table/TanstackTable.cjs +10 -1
- package/dist/components/table/TanstackTable.js +10 -1
- package/dist/components/table/components/TableBody.cjs +2 -0
- package/dist/components/table/components/TableBody.d.ts +7 -2
- package/dist/components/table/components/TableBody.js +2 -0
- package/dist/components/table/components/TableHeader.cjs +10 -1
- package/dist/components/table/components/TableHeader.d.ts +2 -1
- package/dist/components/table/components/TableHeader.js +10 -1
- package/dist/components/table/components/TableRow.cjs +75 -1
- package/dist/components/table/components/TableRow.d.ts +7 -2
- package/dist/components/table/components/TableRow.js +75 -1
- package/dist/components/table/hooks/useTableRowInteractions.cjs +2 -2
- package/dist/components/table/hooks/useTableRowInteractions.js +2 -2
- package/dist/components/table/table.utils.cjs +2 -0
- package/dist/components/table/table.utils.d.ts +1 -0
- package/dist/components/table/table.utils.js +2 -1
- package/dist/components/table/tanstackTable.utils.cjs +6 -4
- package/dist/components/table/tanstackTable.utils.d.ts +2 -0
- package/dist/components/table/tanstackTable.utils.js +7 -5
- package/package.json +1 -1
- package/dist/components/table/components/TableLoadingBody.cjs +0 -35
- package/dist/components/table/components/TableLoadingBody.d.ts +0 -9
- package/dist/components/table/components/TableLoadingBody.js +0 -29
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
const SELECTION_COLUMN_PX = 40;
|
|
4
|
+
const CONTEXT_MENU_COLUMN_PX = 44;
|
|
4
5
|
const DEFAULT_COLUMN_PX = 150;
|
|
5
6
|
function getVisibleColumns(columns) {
|
|
6
7
|
return columns.filter((column) => !column.hidden);
|
|
@@ -44,6 +45,7 @@ function getCellDisplayValue(row, column) {
|
|
|
44
45
|
return empty;
|
|
45
46
|
}
|
|
46
47
|
|
|
48
|
+
exports.CONTEXT_MENU_COLUMN_PX = CONTEXT_MENU_COLUMN_PX;
|
|
47
49
|
exports.DEFAULT_COLUMN_PX = DEFAULT_COLUMN_PX;
|
|
48
50
|
exports.SELECTION_COLUMN_PX = SELECTION_COLUMN_PX;
|
|
49
51
|
exports.getAriaSort = getAriaSort;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { ReactNode } from 'react';
|
|
2
2
|
import type { ColumnItem } from './Table.types';
|
|
3
3
|
export declare const SELECTION_COLUMN_PX: 40;
|
|
4
|
+
export declare const CONTEXT_MENU_COLUMN_PX: 44;
|
|
4
5
|
export declare const DEFAULT_COLUMN_PX: 150;
|
|
5
6
|
export type SortDirection = 'asc' | 'desc' | null;
|
|
6
7
|
export declare function getVisibleColumns<T>(columns: Array<ColumnItem<T>>): Array<ColumnItem<T>>;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
const SELECTION_COLUMN_PX = 40;
|
|
2
|
+
const CONTEXT_MENU_COLUMN_PX = 44;
|
|
2
3
|
const DEFAULT_COLUMN_PX = 150;
|
|
3
4
|
function getVisibleColumns(columns) {
|
|
4
5
|
return columns.filter((column) => !column.hidden);
|
|
@@ -42,4 +43,4 @@ function getCellDisplayValue(row, column) {
|
|
|
42
43
|
return empty;
|
|
43
44
|
}
|
|
44
45
|
|
|
45
|
-
export { DEFAULT_COLUMN_PX, SELECTION_COLUMN_PX, getAriaSort, getCellDisplayValue, getHeaderLabel, getNextSortDirection, getVisibleColumns, isActiveSort, isModifierClick, shouldAllowWrap, shouldToggleOnKey };
|
|
46
|
+
export { CONTEXT_MENU_COLUMN_PX, DEFAULT_COLUMN_PX, SELECTION_COLUMN_PX, getAriaSort, getCellDisplayValue, getHeaderLabel, getNextSortDirection, getVisibleColumns, isActiveSort, isModifierClick, shouldAllowWrap, shouldToggleOnKey };
|
|
@@ -93,9 +93,10 @@ function toIntegerTrackWidths(tracks, targetWidth) {
|
|
|
93
93
|
return Object.fromEntries(floored.map((track) => [track.id, track.width]));
|
|
94
94
|
}
|
|
95
95
|
function buildDistributedColumnWidths(args) {
|
|
96
|
-
const { table, hasSelection, defaultMinPx, columnSizing, availableWidth } = args;
|
|
96
|
+
const { table, hasSelection, hasContextMenu, defaultMinPx, columnSizing, availableWidth } = args;
|
|
97
97
|
const leaf = table.getVisibleLeafColumns();
|
|
98
98
|
const selectionWidth = hasSelection ? table_utils.SELECTION_COLUMN_PX : 0;
|
|
99
|
+
const contextMenuWidth = hasContextMenu ? table_utils.CONTEXT_MENU_COLUMN_PX : 0;
|
|
99
100
|
const tracks = leaf.map((c) => {
|
|
100
101
|
var _a, _b, _c, _d;
|
|
101
102
|
const def = c.columnDef;
|
|
@@ -123,7 +124,7 @@ function buildDistributedColumnWidths(args) {
|
|
|
123
124
|
fixed: false
|
|
124
125
|
};
|
|
125
126
|
});
|
|
126
|
-
const fixedWidth = selectionWidth + tracks.reduce((sum, track) => sum + track.width, 0);
|
|
127
|
+
const fixedWidth = selectionWidth + contextMenuWidth + tracks.reduce((sum, track) => sum + track.width, 0);
|
|
127
128
|
let remaining = Math.max(0, availableWidth - fixedWidth);
|
|
128
129
|
let active = tracks.filter(
|
|
129
130
|
(track) => !track.fixed && (track.max == null || track.width < track.max)
|
|
@@ -148,18 +149,19 @@ function buildDistributedColumnWidths(args) {
|
|
|
148
149
|
active = nextActive;
|
|
149
150
|
}
|
|
150
151
|
const floatTrackTotal = tracks.reduce((sum, track) => sum + track.width, 0);
|
|
151
|
-
const maxTrackWidth = availableWidth - selectionWidth;
|
|
152
|
+
const maxTrackWidth = availableWidth - selectionWidth - contextMenuWidth;
|
|
152
153
|
const targetTrackWidth = Math.min(
|
|
153
154
|
floatTrackTotal <= maxTrackWidth ? Math.floor(floatTrackTotal) : Math.ceil(floatTrackTotal),
|
|
154
155
|
maxTrackWidth
|
|
155
156
|
);
|
|
156
157
|
const widths = toIntegerTrackWidths(tracks, targetTrackWidth);
|
|
157
158
|
const totalWidth = Math.min(
|
|
158
|
-
selectionWidth + Object.values(widths).reduce((sum, width) => sum + width, 0),
|
|
159
|
+
selectionWidth + contextMenuWidth + Object.values(widths).reduce((sum, width) => sum + width, 0),
|
|
159
160
|
availableWidth
|
|
160
161
|
);
|
|
161
162
|
return {
|
|
162
163
|
selectionWidth: hasSelection ? table_utils.SELECTION_COLUMN_PX : void 0,
|
|
164
|
+
contextMenuWidth: hasContextMenu ? table_utils.CONTEXT_MENU_COLUMN_PX : void 0,
|
|
163
165
|
widths,
|
|
164
166
|
totalWidth
|
|
165
167
|
};
|
|
@@ -14,11 +14,13 @@ export declare function getSortPropsFromSorting(sorting: SortingState): {
|
|
|
14
14
|
export declare function buildDistributedColumnWidths(args: {
|
|
15
15
|
table: any;
|
|
16
16
|
hasSelection: boolean;
|
|
17
|
+
hasContextMenu: boolean;
|
|
17
18
|
defaultMinPx: number;
|
|
18
19
|
columnSizing: ColumnSizingState;
|
|
19
20
|
availableWidth: number;
|
|
20
21
|
}): {
|
|
21
22
|
selectionWidth?: number;
|
|
23
|
+
contextMenuWidth?: number;
|
|
22
24
|
widths: Record<string, number>;
|
|
23
25
|
totalWidth: number;
|
|
24
26
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DEFAULT_COLUMN_PX, SELECTION_COLUMN_PX } from './table.utils';
|
|
1
|
+
import { DEFAULT_COLUMN_PX, CONTEXT_MENU_COLUMN_PX, SELECTION_COLUMN_PX } from './table.utils';
|
|
2
2
|
|
|
3
3
|
function getColumnId(def, index) {
|
|
4
4
|
const d = def;
|
|
@@ -91,9 +91,10 @@ function toIntegerTrackWidths(tracks, targetWidth) {
|
|
|
91
91
|
return Object.fromEntries(floored.map((track) => [track.id, track.width]));
|
|
92
92
|
}
|
|
93
93
|
function buildDistributedColumnWidths(args) {
|
|
94
|
-
const { table, hasSelection, defaultMinPx, columnSizing, availableWidth } = args;
|
|
94
|
+
const { table, hasSelection, hasContextMenu, defaultMinPx, columnSizing, availableWidth } = args;
|
|
95
95
|
const leaf = table.getVisibleLeafColumns();
|
|
96
96
|
const selectionWidth = hasSelection ? SELECTION_COLUMN_PX : 0;
|
|
97
|
+
const contextMenuWidth = hasContextMenu ? CONTEXT_MENU_COLUMN_PX : 0;
|
|
97
98
|
const tracks = leaf.map((c) => {
|
|
98
99
|
var _a, _b, _c, _d;
|
|
99
100
|
const def = c.columnDef;
|
|
@@ -121,7 +122,7 @@ function buildDistributedColumnWidths(args) {
|
|
|
121
122
|
fixed: false
|
|
122
123
|
};
|
|
123
124
|
});
|
|
124
|
-
const fixedWidth = selectionWidth + tracks.reduce((sum, track) => sum + track.width, 0);
|
|
125
|
+
const fixedWidth = selectionWidth + contextMenuWidth + tracks.reduce((sum, track) => sum + track.width, 0);
|
|
125
126
|
let remaining = Math.max(0, availableWidth - fixedWidth);
|
|
126
127
|
let active = tracks.filter(
|
|
127
128
|
(track) => !track.fixed && (track.max == null || track.width < track.max)
|
|
@@ -146,18 +147,19 @@ function buildDistributedColumnWidths(args) {
|
|
|
146
147
|
active = nextActive;
|
|
147
148
|
}
|
|
148
149
|
const floatTrackTotal = tracks.reduce((sum, track) => sum + track.width, 0);
|
|
149
|
-
const maxTrackWidth = availableWidth - selectionWidth;
|
|
150
|
+
const maxTrackWidth = availableWidth - selectionWidth - contextMenuWidth;
|
|
150
151
|
const targetTrackWidth = Math.min(
|
|
151
152
|
floatTrackTotal <= maxTrackWidth ? Math.floor(floatTrackTotal) : Math.ceil(floatTrackTotal),
|
|
152
153
|
maxTrackWidth
|
|
153
154
|
);
|
|
154
155
|
const widths = toIntegerTrackWidths(tracks, targetTrackWidth);
|
|
155
156
|
const totalWidth = Math.min(
|
|
156
|
-
selectionWidth + Object.values(widths).reduce((sum, width) => sum + width, 0),
|
|
157
|
+
selectionWidth + contextMenuWidth + Object.values(widths).reduce((sum, width) => sum + width, 0),
|
|
157
158
|
availableWidth
|
|
158
159
|
);
|
|
159
160
|
return {
|
|
160
161
|
selectionWidth: hasSelection ? SELECTION_COLUMN_PX : void 0,
|
|
162
|
+
contextMenuWidth: hasContextMenu ? CONTEXT_MENU_COLUMN_PX : void 0,
|
|
161
163
|
widths,
|
|
162
164
|
totalWidth
|
|
163
165
|
};
|
package/package.json
CHANGED
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var jsxRuntime = require('react/jsx-runtime');
|
|
4
|
-
var SkeletonLoaderItem = require('../../../components/skeleton-loader/skeleton-loader-item/SkeletonLoaderItem');
|
|
5
|
-
var table_classes = require('../table.classes');
|
|
6
|
-
var styles = require('../Table.module.css');
|
|
7
|
-
|
|
8
|
-
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
-
|
|
10
|
-
var styles__default = /*#__PURE__*/_interopDefault(styles);
|
|
11
|
-
|
|
12
|
-
function TableLoadingBody({ rows, columns, hasSelection }) {
|
|
13
|
-
return /* @__PURE__ */ jsxRuntime.jsx("tbody", { className: styles__default.default.body, children: Array.from({ length: rows }).map((_, rowIndex) => /* @__PURE__ */ jsxRuntime.jsxs("tr", { className: styles__default.default.row, children: [
|
|
14
|
-
hasSelection ? /* @__PURE__ */ jsxRuntime.jsx("td", { className: table_classes.cx(styles__default.default.cell, styles__default.default.selectionCell), children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles__default.default.cellContent, children: /* @__PURE__ */ jsxRuntime.jsx(SkeletonLoaderItem.SkeletonLoaderItem, { height: 20, width: 20 }) }) }) : null,
|
|
15
|
-
columns.map((column) => {
|
|
16
|
-
var _a;
|
|
17
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
18
|
-
"td",
|
|
19
|
-
{
|
|
20
|
-
className: table_classes.cx(
|
|
21
|
-
styles__default.default.cell,
|
|
22
|
-
column.divider === "left" && styles__default.default.dividerLeft,
|
|
23
|
-
column.divider === "right" && styles__default.default.dividerRight
|
|
24
|
-
),
|
|
25
|
-
"data-align": (_a = column.align) != null ? _a : "left",
|
|
26
|
-
"data-divider": column.divider,
|
|
27
|
-
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles__default.default.cellContent, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles__default.default.cellValueEllipsis, children: /* @__PURE__ */ jsxRuntime.jsx(SkeletonLoaderItem.SkeletonLoaderItem, { height: 20, width: "100%" }) }) })
|
|
28
|
-
},
|
|
29
|
-
column.id
|
|
30
|
-
);
|
|
31
|
-
})
|
|
32
|
-
] }, `loading-row-${rowIndex}`)) });
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
exports.TableLoadingBody = TableLoadingBody;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import type { ReactNode } from 'react';
|
|
2
|
-
import type { ColumnItem } from '../Table.types';
|
|
3
|
-
type Props<T> = {
|
|
4
|
-
rows: number;
|
|
5
|
-
columns: ColumnItem<T>[];
|
|
6
|
-
hasSelection: boolean;
|
|
7
|
-
};
|
|
8
|
-
export declare function TableLoadingBody<T>({ rows, columns, hasSelection }: Props<T>): ReactNode;
|
|
9
|
-
export {};
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
|
-
import { SkeletonLoaderItem } from '../../../components/skeleton-loader/skeleton-loader-item/SkeletonLoaderItem';
|
|
3
|
-
import { cx } from '../table.classes';
|
|
4
|
-
import styles from '../Table.module.css';
|
|
5
|
-
|
|
6
|
-
function TableLoadingBody({ rows, columns, hasSelection }) {
|
|
7
|
-
return /* @__PURE__ */ jsx("tbody", { className: styles.body, children: Array.from({ length: rows }).map((_, rowIndex) => /* @__PURE__ */ jsxs("tr", { className: styles.row, children: [
|
|
8
|
-
hasSelection ? /* @__PURE__ */ jsx("td", { className: cx(styles.cell, styles.selectionCell), children: /* @__PURE__ */ jsx("div", { className: styles.cellContent, children: /* @__PURE__ */ jsx(SkeletonLoaderItem, { height: 20, width: 20 }) }) }) : null,
|
|
9
|
-
columns.map((column) => {
|
|
10
|
-
var _a;
|
|
11
|
-
return /* @__PURE__ */ jsx(
|
|
12
|
-
"td",
|
|
13
|
-
{
|
|
14
|
-
className: cx(
|
|
15
|
-
styles.cell,
|
|
16
|
-
column.divider === "left" && styles.dividerLeft,
|
|
17
|
-
column.divider === "right" && styles.dividerRight
|
|
18
|
-
),
|
|
19
|
-
"data-align": (_a = column.align) != null ? _a : "left",
|
|
20
|
-
"data-divider": column.divider,
|
|
21
|
-
children: /* @__PURE__ */ jsx("div", { className: styles.cellContent, children: /* @__PURE__ */ jsx("div", { className: styles.cellValueEllipsis, children: /* @__PURE__ */ jsx(SkeletonLoaderItem, { height: 20, width: "100%" }) }) })
|
|
22
|
-
},
|
|
23
|
-
column.id
|
|
24
|
-
);
|
|
25
|
-
})
|
|
26
|
-
] }, `loading-row-${rowIndex}`)) });
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
export { TableLoadingBody };
|