@caratlogic/design-system 0.1.50 → 0.1.52
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/molecules/DataEditableTable/DataEditableTable.d.ts +1 -1
- package/dist/components/molecules/DataEditableTable/DataEditableTable.d.ts.map +1 -1
- package/dist/components/molecules/DataEditableTable/DataEditableTable.types.d.ts +4 -0
- package/dist/components/molecules/DataEditableTable/DataEditableTable.types.d.ts.map +1 -1
- package/dist/components/molecules/DataEditableTable/DataEditableTable.utils.d.ts +3 -1
- package/dist/components/molecules/DataEditableTable/DataEditableTable.utils.d.ts.map +1 -1
- package/dist/components/molecules/DataEditableTable/index.d.ts +1 -1
- package/dist/components/molecules/DataEditableTable/index.d.ts.map +1 -1
- package/dist/index.cjs.js +24 -5
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +24 -5
- package/dist/index.esm.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { DataEditableTableProps } from './DataEditableTable.types';
|
|
2
2
|
declare function DataEditableTable<T extends {
|
|
3
3
|
id: string;
|
|
4
|
-
}>({ data, columns, onRowClick, enableSelection, columnStyles, onEditChange, onSaveRow, sortBy, setSortBy, sortOrder, setSortOrder, saving, selectedRows, onSelectionChange, isArchiveView, selectionInArchiveView, permissionKey, columnWidths, onColumnResize, pagination, fetchBusinessContacts, showGrid, striped, emptyState, loading, loadingRows, filterRowLeading, onColumnReorder, }: DataEditableTableProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
4
|
+
}>({ data, columns, onRowClick, enableSelection, columnStyles, onEditChange, onSaveRow, sortBy, setSortBy, sortOrder, setSortOrder, saving, selectedRows, onSelectionChange, isArchiveView, selectionInArchiveView, permissionKey, columnWidths, onColumnResize, pagination, fetchBusinessContacts, showGrid, striped, emptyState, loading, loadingRows, filterRowLeading, onColumnReorder, getRowTone, }: DataEditableTableProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
5
5
|
export { DataEditableTable };
|
|
6
6
|
//# sourceMappingURL=DataEditableTable.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataEditableTable.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/DataEditableTable/DataEditableTable.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DataEditableTable.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/DataEditableTable/DataEditableTable.tsx"],"names":[],"mappings":"AAiCA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAExE,iBAAS,iBAAiB,CAAC,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,EACnD,IAAI,EACJ,OAAO,EACP,UAAU,EACV,eAAuB,EACvB,YAAiB,EACjB,YAAY,EACZ,SAAS,EACT,MAAM,EACN,SAAS,EACT,SAAS,EACT,YAAY,EACZ,MAAM,EACN,YAAiB,EACjB,iBAAiB,EACjB,aAAqB,EACrB,sBAA8B,EAC9B,aAAkB,EAClB,YAAY,EACZ,cAAc,EACd,UAAU,EACV,qBAAqB,EACrB,QAAe,EACf,OAAc,EACd,UAAU,EACV,OAAe,EACf,WAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,UAAU,GACX,EAAE,sBAAsB,CAAC,CAAC,CAAC,2CAuX3B;AAED,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
|
|
@@ -26,6 +26,8 @@ export interface Column {
|
|
|
26
26
|
/** With `onColumnReorder`, `false` keeps this column in place: no grip, and nothing lands on it. `actions` never moves. */
|
|
27
27
|
reorderable?: boolean;
|
|
28
28
|
}
|
|
29
|
+
/** Soft row colour from the badge palette: `warning` is amber, `info` is blue. */
|
|
30
|
+
export type DataEditableTableRowTone = 'warning' | 'info';
|
|
29
31
|
export interface DataEditableTableProps<T extends {
|
|
30
32
|
id: string;
|
|
31
33
|
}> {
|
|
@@ -68,6 +70,8 @@ export interface DataEditableTableProps<T extends {
|
|
|
68
70
|
filterRowLeading?: React.ReactNode;
|
|
69
71
|
/** Turns on drag-to-reorder from a grip on each header; receives every column key in the new order. */
|
|
70
72
|
onColumnReorder?: (orderedKeys: string[]) => void;
|
|
73
|
+
/** Tints a row in a soft badge colour (e.g. by ownership); `undefined` keeps the normal row. Editing and selection colours still win. */
|
|
74
|
+
getRowTone?: (row: T) => DataEditableTableRowTone | undefined;
|
|
71
75
|
}
|
|
72
76
|
export type DropSide = 'before' | 'after';
|
|
73
77
|
export interface ColumnDropTarget {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataEditableTable.types.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/DataEditableTable/DataEditableTable.types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"DataEditableTable.types.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/DataEditableTable/DataEditableTable.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type React from 'react';
|
|
2
|
-
import type { Column, ColumnDropTarget, ColumnRect, OptionType } from './DataEditableTable.types';
|
|
2
|
+
import type { Column, ColumnDropTarget, ColumnRect, DataEditableTableRowTone, OptionType } from './DataEditableTable.types';
|
|
3
3
|
export declare function normalizeOptions(options: (string | OptionType)[]): {
|
|
4
4
|
value: string;
|
|
5
5
|
label: string;
|
|
@@ -7,6 +7,8 @@ export declare function normalizeOptions(options: (string | OptionType)[]): {
|
|
|
7
7
|
export declare function getDisplayName(options: (string | OptionType)[] | undefined, value: string): string;
|
|
8
8
|
export declare function pinnedHeaderClass(): string;
|
|
9
9
|
export declare function pinnedCellClass(pinnedBg: string): string;
|
|
10
|
+
export declare function rowToneClass(tone: DataEditableTableRowTone): string;
|
|
11
|
+
export declare function pinnedToneClass(tone: DataEditableTableRowTone): string;
|
|
10
12
|
/** Width for a header/body/filter cell: the resized width var while resized or dragging, a fixed width for the pinned actions column. */
|
|
11
13
|
export declare function getColumnWidthStyle(key: string, isSized: boolean, isPinnedRight: boolean): React.CSSProperties | undefined;
|
|
12
14
|
export declare function hasFilterRow(columns: readonly Column[], filterRowLeading: React.ReactNode): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataEditableTable.utils.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/DataEditableTable/DataEditableTable.utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EACV,MAAM,EACN,gBAAgB,EAChB,UAAU,EACV,UAAU,EACX,MAAM,2BAA2B,CAAC;AAEnC,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,CAAC,MAAM,GAAG,UAAU,CAAC,EAAE,GAC/B;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,CASpC;AAED,wBAAgB,cAAc,CAC5B,OAAO,EAAE,CAAC,MAAM,GAAG,UAAU,CAAC,EAAE,GAAG,SAAS,EAC5C,KAAK,EAAE,MAAM,GACZ,MAAM,CAaR;AAMD,wBAAgB,iBAAiB,IAAI,MAAM,CAM1C;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAExD;AAID,yIAAyI;AACzI,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,OAAO,GACrB,KAAK,CAAC,aAAa,GAAG,SAAS,CAYjC;AAED,wBAAgB,YAAY,CAC1B,OAAO,EAAE,SAAS,MAAM,EAAE,EAC1B,gBAAgB,EAAE,KAAK,CAAC,SAAS,GAChC,OAAO,CAIT;AAKD,6EAA6E;AAC7E,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,0FAA0F;AAC1F,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAExD;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,EAC9B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,gBAAgB,GACvB,MAAM,EAAE,CAeV;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,iFAAiF;AACjF,wBAAgB,UAAU,CACxB,KAAK,EAAE,SAAS,UAAU,EAAE,EAC5B,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,EAChC,CAAC,EAAE,MAAM,GACR,MAAM,GAAG,IAAI,CASf;AAED,6EAA6E;AAC7E,wBAAgB,eAAe,CAC7B,KAAK,EAAE,SAAS,UAAU,EAAE,EAC5B,SAAS,EAAE,SAAS,MAAM,EAAE,GAC3B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAYxB"}
|
|
1
|
+
{"version":3,"file":"DataEditableTable.utils.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/DataEditableTable/DataEditableTable.utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EACV,MAAM,EACN,gBAAgB,EAChB,UAAU,EACV,wBAAwB,EACxB,UAAU,EACX,MAAM,2BAA2B,CAAC;AAEnC,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,CAAC,MAAM,GAAG,UAAU,CAAC,EAAE,GAC/B;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,CASpC;AAED,wBAAgB,cAAc,CAC5B,OAAO,EAAE,CAAC,MAAM,GAAG,UAAU,CAAC,EAAE,GAAG,SAAS,EAC5C,KAAK,EAAE,MAAM,GACZ,MAAM,CAaR;AAMD,wBAAgB,iBAAiB,IAAI,MAAM,CAM1C;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAExD;AAeD,wBAAgB,YAAY,CAAC,IAAI,EAAE,wBAAwB,GAAG,MAAM,CAEnE;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,wBAAwB,GAAG,MAAM,CAKtE;AAID,yIAAyI;AACzI,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,OAAO,GACrB,KAAK,CAAC,aAAa,GAAG,SAAS,CAYjC;AAED,wBAAgB,YAAY,CAC1B,OAAO,EAAE,SAAS,MAAM,EAAE,EAC1B,gBAAgB,EAAE,KAAK,CAAC,SAAS,GAChC,OAAO,CAIT;AAKD,6EAA6E;AAC7E,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,0FAA0F;AAC1F,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAExD;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,EAC9B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,gBAAgB,GACvB,MAAM,EAAE,CAeV;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,iFAAiF;AACjF,wBAAgB,UAAU,CACxB,KAAK,EAAE,SAAS,UAAU,EAAE,EAC5B,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,EAChC,CAAC,EAAE,MAAM,GACR,MAAM,GAAG,IAAI,CASf;AAED,6EAA6E;AAC7E,wBAAgB,eAAe,CAC7B,KAAK,EAAE,SAAS,UAAU,EAAE,EAC5B,SAAS,EAAE,SAAS,MAAM,EAAE,GAC3B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAYxB"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { DataEditableTable } from './DataEditableTable';
|
|
2
|
-
export type { Column, OptionType, DataEditableTableProps, } from './DataEditableTable.types';
|
|
2
|
+
export type { Column, OptionType, DataEditableTableProps, DataEditableTableRowTone, } from './DataEditableTable.types';
|
|
3
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/DataEditableTable/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,YAAY,EACV,MAAM,EACN,UAAU,EACV,sBAAsB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/DataEditableTable/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,YAAY,EACV,MAAM,EACN,UAAU,EACV,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,2BAA2B,CAAC"}
|
package/dist/index.cjs.js
CHANGED
|
@@ -26518,6 +26518,22 @@ function pinnedHeaderClass() {
|
|
|
26518
26518
|
function pinnedCellClass(pinnedBg) {
|
|
26519
26519
|
return cn('sticky right-0 z-10', PINNED_BEFORE, PINNED_SHADOW, pinnedBg);
|
|
26520
26520
|
}
|
|
26521
|
+
// Dark badge backgrounds sit too close to the dark card, so dark mode tints with the status colour itself.
|
|
26522
|
+
const ROW_TONE = {
|
|
26523
|
+
warning: 'bg-badge-amber-bg/40 hover:bg-badge-amber-bg/60 dark:bg-warning/15 dark:hover:bg-warning/25',
|
|
26524
|
+
info: 'bg-badge-blue-bg/40 hover:bg-badge-blue-bg/60 dark:bg-info/15 dark:hover:bg-info/25',
|
|
26525
|
+
};
|
|
26526
|
+
// The pinned cell must stay opaque, so the tint is an overlay painted under its content.
|
|
26527
|
+
const PINNED_TONE = {
|
|
26528
|
+
warning: 'after:bg-badge-amber-bg/40 dark:after:bg-warning/15',
|
|
26529
|
+
info: 'after:bg-badge-blue-bg/40 dark:after:bg-info/15',
|
|
26530
|
+
};
|
|
26531
|
+
function rowToneClass(tone) {
|
|
26532
|
+
return ROW_TONE[tone];
|
|
26533
|
+
}
|
|
26534
|
+
function pinnedToneClass(tone) {
|
|
26535
|
+
return cn('after:pointer-events-none after:absolute after:inset-0 after:-z-10 after:content-[""]', PINNED_TONE[tone]);
|
|
26536
|
+
}
|
|
26521
26537
|
const PINNED_RIGHT_WIDTH = '72px';
|
|
26522
26538
|
/** Width for a header/body/filter cell: the resized width var while resized or dragging, a fixed width for the pinned actions column. */
|
|
26523
26539
|
function getColumnWidthStyle(key, isSized, isPinnedRight) {
|
|
@@ -27132,7 +27148,7 @@ function DocumentDetailSkeleton({ aside = 'payment', sections = 3, label = 'Load
|
|
|
27132
27148
|
return (jsxRuntime.jsxs("div", { role: "status", "aria-busy": "true", "aria-label": label, className: "space-y-4", children: [jsxRuntime.jsxs("div", { className: "flex flex-wrap items-center justify-between gap-3", children: [jsxRuntime.jsxs("div", { className: "flex items-center gap-3", children: [jsxRuntime.jsx(SquareSkeleton, { height: 14, width: 80, rounded: "full" }), jsxRuntime.jsx("span", { className: "h-5 w-px bg-border" }), jsxRuntime.jsx(SquareSkeleton, { height: 28, width: 200, rounded: "md" }), jsxRuntime.jsx(SquareSkeleton, { height: 22, width: 72, rounded: "full" })] }), jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [jsxRuntime.jsx(SquareSkeleton, { height: 36, width: 112, rounded: "lg" }), jsxRuntime.jsx(SquareSkeleton, { height: 36, width: 80, rounded: "lg" }), jsxRuntime.jsx(SquareSkeleton, { height: 36, width: 128, rounded: "lg" }), jsxRuntime.jsx(SquareSkeleton, { height: 36, width: 36, rounded: "lg" })] })] }), jsxRuntime.jsxs("section", { "aria-hidden": "true", className: "grid grid-cols-1 overflow-hidden rounded-2xl border border-border bg-card md:grid-cols-[minmax(0,1.4fr)_minmax(0,1fr)]", children: [jsxRuntime.jsxs("div", { className: "flex flex-col justify-center space-y-3 px-5 py-4 sm:px-7 sm:py-4", children: [jsxRuntime.jsx(SquareSkeleton, { height: 12, width: 96, rounded: "full" }), jsxRuntime.jsx(SquareSkeleton, { height: 40, width: 220, rounded: "md" }), aside !== 'none' && (jsxRuntime.jsxs("div", { className: "w-full max-w-xl space-y-2 pt-1", children: [jsxRuntime.jsx(SquareSkeleton, { height: 8, className: "w-full", rounded: "full" }), jsxRuntime.jsxs("div", { className: "flex justify-between", children: [jsxRuntime.jsx(SquareSkeleton, { height: 11, width: 88, rounded: "full" }), jsxRuntime.jsx(SquareSkeleton, { height: 11, width: 40, rounded: "full" })] })] }))] }), jsxRuntime.jsx("div", { className: "border-t border-border bg-muted/40 px-5 py-2 md:border-l md:border-t-0", children: [0, 1, 2, 3].map((i) => (jsxRuntime.jsxs("div", { className: "flex min-h-10 items-center gap-3 border-b border-border py-1.5 last:border-b-0", children: [jsxRuntime.jsx(SquareSkeleton, { height: 24, width: 24, rounded: "md" }), jsxRuntime.jsx(SquareSkeleton, { height: 12, width: 72, rounded: "full" }), jsxRuntime.jsx(SquareSkeleton, { height: 12, width: 88, rounded: "full", className: "ml-auto" })] }, i))) })] }), Array.from({ length: sections }).map((_, s) => (jsxRuntime.jsxs("section", { "aria-hidden": "true", className: "overflow-hidden rounded-2xl border border-border bg-card", children: [jsxRuntime.jsxs("div", { className: "flex items-center gap-2.5 border-b border-border px-4 py-3", children: [jsxRuntime.jsx(SquareSkeleton, { height: 28, width: 28, rounded: "lg" }), jsxRuntime.jsx(SquareSkeleton, { height: 15, width: 128, rounded: "full" })] }), jsxRuntime.jsx("div", { className: "space-y-3 p-4", children: Array.from({ length: s === 1 ? 4 : 2 }).map((__, row) => (jsxRuntime.jsx(SquareSkeleton, { height: s === 1 ? 36 : 14, className: row % 2 ? 'w-3/4' : 'w-full', rounded: "md" }, row))) })] }, s))), jsxRuntime.jsx("span", { className: "sr-only", children: label })] }));
|
|
27133
27149
|
}
|
|
27134
27150
|
|
|
27135
|
-
function DataEditableTable({ data, columns, onRowClick, enableSelection = false, columnStyles = {}, onEditChange, onSaveRow, sortBy, setSortBy, sortOrder, setSortOrder, saving, selectedRows = [], onSelectionChange, isArchiveView = false, selectionInArchiveView = false, permissionKey = '', columnWidths, onColumnResize, pagination, fetchBusinessContacts, showGrid = true, striped = true, emptyState, loading = false, loadingRows = 10, filterRowLeading, onColumnReorder, }) {
|
|
27151
|
+
function DataEditableTable({ data, columns, onRowClick, enableSelection = false, columnStyles = {}, onEditChange, onSaveRow, sortBy, setSortBy, sortOrder, setSortOrder, saving, selectedRows = [], onSelectionChange, isArchiveView = false, selectionInArchiveView = false, permissionKey = '', columnWidths, onColumnResize, pagination, fetchBusinessContacts, showGrid = true, striped = true, emptyState, loading = false, loadingRows = 10, filterRowLeading, onColumnReorder, getRowTone, }) {
|
|
27136
27152
|
const showSelectionColumn = enableSelection && (!isArchiveView || selectionInArchiveView);
|
|
27137
27153
|
const vBorder = showGrid ? 'border-r' : '';
|
|
27138
27154
|
const { localWidths, draggingKey, tableRef, handleResizeMouseDown } = useColumnResize({
|
|
@@ -27188,13 +27204,16 @@ function DataEditableTable({ data, columns, onRowClick, enableSelection = false,
|
|
|
27188
27204
|
const isEditing = editingRow === row.id && editingRow !== null;
|
|
27189
27205
|
const isSaving = savingRow === row.id;
|
|
27190
27206
|
const isSelected = selectedSet.has(row.id);
|
|
27207
|
+
const tone = isEditing || isSelected ? undefined : getRowTone?.(row);
|
|
27191
27208
|
const bgClass = isEditing
|
|
27192
27209
|
? 'bg-warning/10 hover:bg-warning/10'
|
|
27193
27210
|
: isSelected
|
|
27194
27211
|
? 'bg-primary/10 hover:bg-primary/10'
|
|
27195
|
-
:
|
|
27196
|
-
?
|
|
27197
|
-
:
|
|
27212
|
+
: tone
|
|
27213
|
+
? rowToneClass(tone)
|
|
27214
|
+
: !striped || rowIndex % 2 === 0
|
|
27215
|
+
? 'bg-card hover:bg-secondary'
|
|
27216
|
+
: 'bg-background hover:bg-secondary';
|
|
27198
27217
|
return (jsxRuntime.jsxs("tr", { className: cn('group/row h-[46px] transition-colors text-sm text-table-cell', bgClass, onRowClick && 'cursor-pointer'), onClick: () => onRowClick?.(row), children: [isArchiveView ? null : (jsxRuntime.jsx("td", { className: cn('px-3 py-1.5 text-center first:!pl-6 border-b border-solid !border-border', vBorder), children: jsxRuntime.jsx(Protected, { module: permissionKey, minLevel: PERMISSIONS.WRITE, children: jsxRuntime.jsx("button", { onClick: (e) => {
|
|
27199
27218
|
e.stopPropagation();
|
|
27200
27219
|
handleEditIconClick(row.id, row);
|
|
@@ -27212,7 +27231,7 @@ function DataEditableTable({ data, columns, onRowClick, enableSelection = false,
|
|
|
27212
27231
|
? 'bg-[#FEFCE8] dark:bg-[#422006]'
|
|
27213
27232
|
: isSelected
|
|
27214
27233
|
? 'bg-[#EFF6FF] dark:bg-[#172554]'
|
|
27215
|
-
: 'bg-card group-hover/row:bg-table-header'
|
|
27234
|
+
: cn('bg-card group-hover/row:bg-table-header', tone && pinnedToneClass(tone))
|
|
27216
27235
|
: '';
|
|
27217
27236
|
return (jsxRuntime.jsx("td", { className: cn('px-4 py-1.5 first:!pl-6 border-b border-border whitespace-nowrap text-table-cell border-solid !border-border', vBorder, isPinnedRight || col.align === 'center'
|
|
27218
27237
|
? 'text-center'
|