@wellingtonhlc/shared-ui 0.27.0 → 0.27.1
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.js +1 -1
- package/dist/components/ConfirmationDialog.js +3 -3
- package/dist/components/Modal.js +1 -1
- package/dist/components/Page.d.ts.map +1 -1
- package/dist/components/Page.js +1 -0
- package/dist/components/Table.d.ts +36 -3
- package/dist/components/Table.d.ts.map +1 -1
- package/dist/components/Table.js +84 -5
- package/dist/components/Workspace.d.ts +3 -1
- package/dist/components/Workspace.d.ts.map +1 -1
- package/dist/components/Workspace.js +11 -3
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/styles.css +126 -13
- package/package.json +1 -1
|
@@ -10,7 +10,7 @@ const variantClasses = {
|
|
|
10
10
|
success: 'border-[var(--status-success-border,#86efac)] bg-[var(--status-success-bg,rgba(220,252,231,0.8))] text-[var(--status-success-text,#15803d)] shadow-[inset_0_0_0_1px_color-mix(in_srgb,var(--status-success-border,#86efac)_18%,transparent)] hover:bg-[color-mix(in_srgb,var(--status-success-bg,rgba(220,252,231,0.8))_78%,var(--status-success-border,#86efac))]',
|
|
11
11
|
warning: 'border-[var(--status-warning-border,#fcd34d)] bg-[var(--status-warning-bg,rgba(254,243,199,0.8))] text-[var(--status-warning-text,#92400e)] shadow-[inset_0_0_0_1px_color-mix(in_srgb,var(--status-warning-border,#fcd34d)_18%,transparent)] hover:bg-[color-mix(in_srgb,var(--status-warning-bg,rgba(254,243,199,0.8))_78%,var(--status-warning-border,#fcd34d))]',
|
|
12
12
|
danger: 'border-[var(--status-danger-border,#fca5a5)] bg-[var(--status-danger-bg,rgba(254,202,202,0.8))] text-[var(--status-danger-text,#b91c1c)] shadow-[inset_0_0_0_1px_color-mix(in_srgb,var(--status-danger-border,#fca5a5)_18%,transparent)] hover:bg-[color-mix(in_srgb,var(--status-danger-bg,rgba(254,202,202,0.8))_78%,var(--status-danger-border,#fca5a5))]',
|
|
13
|
-
destructive: 'border-transparent bg-[
|
|
13
|
+
destructive: 'border-transparent bg-[#dc2626] text-white hover:bg-[#b91c1c]',
|
|
14
14
|
sidebar: 'border-transparent bg-transparent text-foreground-muted hover:bg-[color-mix(in_srgb,var(--brand)_10%,transparent)] hover:text-[var(--brand)]',
|
|
15
15
|
};
|
|
16
16
|
const sizeClasses = {
|
|
@@ -26,8 +26,8 @@ const dialogVariantStyles = {
|
|
|
26
26
|
},
|
|
27
27
|
destructive: {
|
|
28
28
|
icon: AlertCircleIcon,
|
|
29
|
-
iconClassName: 'text-[color-mix(in_srgb
|
|
30
|
-
titleClassName: 'text-[color-mix(in_srgb
|
|
29
|
+
iconClassName: 'text-[color-mix(in_srgb,#dc2626_86%,var(--foreground))]',
|
|
30
|
+
titleClassName: 'text-[color-mix(in_srgb,#dc2626_86%,var(--foreground))]',
|
|
31
31
|
},
|
|
32
32
|
};
|
|
33
33
|
const buttonVariantDefaults = {
|
|
@@ -150,7 +150,7 @@ function Root({ children, className, closeOnEscape = true, onOpenChange, open, o
|
|
|
150
150
|
if (!open) {
|
|
151
151
|
return null;
|
|
152
152
|
}
|
|
153
|
-
return createPortal(_jsx(ConfirmationDialogContext.Provider, { value: value, children: _jsx("div", { className: cn('fixed inset-0 z-[
|
|
153
|
+
return createPortal(_jsx(ConfirmationDialogContext.Provider, { value: value, children: _jsx("div", { className: cn('fixed inset-0 z-[10000] flex items-center justify-center bg-black/50 p-4 backdrop-blur-[2px]', overlayClassName), role: "presentation", children: _jsxs("section", { "aria-describedby": descriptionId, "aria-labelledby": titleId, "aria-modal": "true", className: cn('border-app-border bg-background-secondary text-foreground relative grid gap-4 rounded-xl border p-6 shadow-2xl', className), role: "alertdialog", style: { width: 'min(29rem, calc(100vw - 2rem))' }, children: [_jsx("button", { "aria-label": "Fechar", className: cn('text-foreground-muted hover:bg-background hover:text-foreground absolute right-4 top-4 inline-flex size-7 cursor-pointer items-center justify-center rounded-md opacity-60 transition disabled:cursor-not-allowed disabled:opacity-30'), disabled: isBusy, onClick: close, type: "button", children: _jsx(XIcon, { className: "size-3.5" }) }), children] }) }) }), document.body);
|
|
154
154
|
}
|
|
155
155
|
function Icon({ className }) {
|
|
156
156
|
const { variant } = useConfirmationDialog();
|
package/dist/components/Modal.js
CHANGED
|
@@ -73,7 +73,7 @@ function ModalRoot({ allowExternalFocus = false, centered = false, children, cla
|
|
|
73
73
|
onOpenChange?.(nextOpen);
|
|
74
74
|
}
|
|
75
75
|
const hasFooter = React.Children.toArray(children).some((child) => React.isValidElement(child) && child.type === ModalFooter);
|
|
76
|
-
return (_jsx(DialogPrimitive.Root, { ...props, open: open, onOpenChange: handleOpenChange, children: _jsxs(DialogPrimitive.Portal, { children: [_jsx(DialogPrimitive.Overlay, { style: { zIndex: overlayZIndex }, className: cn('fixed inset-0 z-[100] bg-black/50 backdrop-blur-[2px]', overlayClassName) }), _jsxs(DialogPrimitive.Content, {
|
|
76
|
+
return (_jsx(DialogPrimitive.Root, { ...props, modal: !allowExternalFocus, open: open, onOpenChange: handleOpenChange, children: _jsxs(DialogPrimitive.Portal, { children: [_jsx(DialogPrimitive.Overlay, { style: { zIndex: overlayZIndex }, className: cn('fixed inset-0 z-[100] bg-black/50 backdrop-blur-[2px]', allowExternalFocus && 'pointer-events-none', overlayClassName) }), _jsxs(DialogPrimitive.Content, { style: {
|
|
77
77
|
zIndex: contentZIndex,
|
|
78
78
|
width: widthVariants[size],
|
|
79
79
|
...(!centered && offset ? { top: `${offset}px` } : {}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Page.d.ts","sourceRoot":"","sources":["../../src/components/Page.tsx"],"names":[],"mappings":"AAAA,OAAO,EAUL,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,OAAO,EAIL,KAAK,0BAA0B,EAC/B,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,6BAA6B,EACnC,MAAM,oBAAoB,CAAC;AAI5B,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,CAAC;AACtE,MAAM,MAAM,gBAAgB,GAAG,gBAAgB,CAAC;AAChD,MAAM,MAAM,eAAe,GAAG,eAAe,CAAC;AAE9C,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,mBAAmB,CAAC;IAC/B,eAAe,CAAC,EAAE,mBAAmB,CAAC;IACtC,cAAc,CAAC,EAAE,mBAAmB,CAAC;IACrC,gBAAgB,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACzC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAC3D,kBAAkB,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,CAAC;IACnD,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,MAAM,kBAAkB,GAAG,YAAY,CAAC,gBAAgB,EAAE,OAAO,OAAO,CAAC,CAAC;AAChF,MAAM,MAAM,yBAAyB,GAAG,6BAA6B,CAAC;AACtE,MAAM,WAAW,qBAAsB,SAAQ,IAAI,CAAC,0BAA0B,EAAE,OAAO,CAAC;IACtF,KAAK,EAAE,SAAS,CAAC;CAClB;AAWD,MAAM,WAAW,sBAAsB;IACrC,gBAAgB,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACzC,eAAe,CAAC,EAAE,mBAAmB,CAAC;IACtC,cAAc,CAAC,EAAE,mBAAmB,CAAC;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAC3D,kBAAkB,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,CAAC;IACnD,QAAQ,CAAC,EAAE,mBAAmB,CAAC;IAC/B,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAsCD,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC;IACpB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAED,iBAAS,kBAAkB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,2BAA2B,+BAc7F;
|
|
1
|
+
{"version":3,"file":"Page.d.ts","sourceRoot":"","sources":["../../src/components/Page.tsx"],"names":[],"mappings":"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"}
|
package/dist/components/Page.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { type ButtonHTMLAttributes, type HTMLAttributes, type TableHTMLAttributes, type TdHTMLAttributes, type ThHTMLAttributes } from 'react';
|
|
1
|
+
import { type ButtonHTMLAttributes, type ColHTMLAttributes, type HTMLAttributes, type TableHTMLAttributes, type TdHTMLAttributes, type ThHTMLAttributes } from 'react';
|
|
2
2
|
import { Pagination } from './Pagination';
|
|
3
3
|
interface TableRootProps extends TableHTMLAttributes<HTMLTableElement> {
|
|
4
4
|
chrome?: 'default' | 'flat';
|
|
5
5
|
density?: 'default' | 'compact';
|
|
6
6
|
fill?: boolean;
|
|
7
|
+
layout?: 'auto' | 'fixed';
|
|
7
8
|
isFramed?: boolean;
|
|
8
9
|
viewportClassName?: string;
|
|
9
10
|
wrapperClassName?: string;
|
|
@@ -12,8 +13,38 @@ interface TableRootProps extends TableHTMLAttributes<HTMLTableElement> {
|
|
|
12
13
|
interface TableRowProps extends HTMLAttributes<HTMLTableRowElement> {
|
|
13
14
|
isInteractive?: boolean;
|
|
14
15
|
}
|
|
16
|
+
export declare const TABLE_ACTION_CELL_WIDTH_PX: number;
|
|
17
|
+
/**
|
|
18
|
+
* O rotulo "Ações" ocupa ~45px. Um grupo com um unico botao (28px) nao o comporta,
|
|
19
|
+
* entao o grupo inteiro respeita este minimo — sem nunca absorver a sobra da tabela.
|
|
20
|
+
*/
|
|
21
|
+
export declare const TABLE_ACTION_GROUP_MIN_WIDTH_PX = 56;
|
|
22
|
+
/**
|
|
23
|
+
* Folga entre o icone da ponta e a borda da tabela: sem ela o botao encosta na
|
|
24
|
+
* moldura. Entra como padding, entao o valor inteiro vira folga na borda
|
|
25
|
+
* (centralizar o botao mandaria metade dela para o vao entre icones).
|
|
26
|
+
*/
|
|
27
|
+
export declare const TABLE_ACTION_EDGE_GUTTER_PX = 12;
|
|
28
|
+
export declare function getTableActionColumnWidth(actionCount?: number, hasEdgeGutter?: boolean): number;
|
|
29
|
+
export type TableActionColumnSize = 'sm' | 'md' | 'lg';
|
|
30
|
+
interface TableActionHeadProps extends ThHTMLAttributes<HTMLTableCellElement> {
|
|
31
|
+
size?: TableActionColumnSize;
|
|
32
|
+
}
|
|
33
|
+
interface TableActionColProps extends ColHTMLAttributes<HTMLTableColElement> {
|
|
34
|
+
actionCount?: number;
|
|
35
|
+
hasEdgeGutter?: boolean;
|
|
36
|
+
}
|
|
37
|
+
interface TableActionCellProps extends TdHTMLAttributes<HTMLTableCellElement> {
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Tonalidade semantica do icone. Todas mantem o corpo do `ghost` (sem preenchimento
|
|
41
|
+
* nem borda) e so trocam a cor: icone tonalizado em repouso e hover com a mesma cor
|
|
42
|
+
* suavizada, igual ao default faz com a `--brand`.
|
|
43
|
+
*/
|
|
44
|
+
export type TableActionTone = 'default' | 'success' | 'danger';
|
|
15
45
|
interface TableActionProps extends ButtonHTMLAttributes<HTMLButtonElement> {
|
|
16
|
-
|
|
46
|
+
size?: 'xs' | 'sm';
|
|
47
|
+
tone?: TableActionTone;
|
|
17
48
|
tooltip?: string;
|
|
18
49
|
}
|
|
19
50
|
export declare const Table: {
|
|
@@ -23,8 +54,10 @@ export declare const Table: {
|
|
|
23
54
|
Footer: import("react").ForwardRefExoticComponent<HTMLAttributes<HTMLTableSectionElement> & import("react").RefAttributes<HTMLTableSectionElement>>;
|
|
24
55
|
Row: import("react").ForwardRefExoticComponent<TableRowProps & import("react").RefAttributes<HTMLTableRowElement>>;
|
|
25
56
|
Head: import("react").ForwardRefExoticComponent<ThHTMLAttributes<HTMLTableCellElement> & import("react").RefAttributes<HTMLTableCellElement>>;
|
|
57
|
+
ActionHead: import("react").ForwardRefExoticComponent<TableActionHeadProps & import("react").RefAttributes<HTMLTableCellElement>>;
|
|
58
|
+
ActionCol: import("react").ForwardRefExoticComponent<TableActionColProps & import("react").RefAttributes<HTMLTableColElement>>;
|
|
26
59
|
Cell: import("react").ForwardRefExoticComponent<TdHTMLAttributes<HTMLTableCellElement> & import("react").RefAttributes<HTMLTableCellElement>>;
|
|
27
|
-
ActionCell: import("react").ForwardRefExoticComponent<
|
|
60
|
+
ActionCell: import("react").ForwardRefExoticComponent<TableActionCellProps & import("react").RefAttributes<HTMLTableCellElement>>;
|
|
28
61
|
Action: import("react").ForwardRefExoticComponent<TableActionProps & import("react").RefAttributes<HTMLButtonElement>>;
|
|
29
62
|
Pagination: typeof Pagination;
|
|
30
63
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../src/components/Table.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACtB,MAAM,OAAO,CAAC;AAIf,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,UAAU,cAAe,SAAQ,mBAAmB,CAAC,gBAAgB,CAAC;IACpE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5B,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAChC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,cAAc,CAAC,cAAc,CAAC,CAAC;CAC/C;
|
|
1
|
+
{"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../src/components/Table.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EAEtB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACtB,MAAM,OAAO,CAAC;AAIf,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,UAAU,cAAe,SAAQ,mBAAmB,CAAC,gBAAgB,CAAC;IACpE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5B,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAChC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,cAAc,CAAC,cAAc,CAAC,CAAC;CAC/C;AA6ED,UAAU,aAAc,SAAQ,cAAc,CAAC,mBAAmB,CAAC;IACjE,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AA4CD,eAAO,MAAM,0BAA0B,QAAqD,CAAC;AAE7F;;;GAGG;AACH,eAAO,MAAM,+BAA+B,KAAK,CAAC;AAElD;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAyB9C,wBAAgB,yBAAyB,CAAC,WAAW,SAAI,EAAE,aAAa,UAAQ,UAQ/E;AAED,MAAM,MAAM,qBAAqB,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AACvD,UAAU,oBAAqB,SAAQ,gBAAgB,CAAC,oBAAoB,CAAC;IAC3E,IAAI,CAAC,EAAE,qBAAqB,CAAC;CAC9B;AA+BD,UAAU,mBAAoB,SAAQ,iBAAiB,CAAC,mBAAmB,CAAC;IAC1E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAYD,UAAU,oBAAqB,SAAQ,gBAAgB,CAAC,oBAAoB,CAAC;CAAG;AA8BhF;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;AAmB/D,UAAU,gBAAiB,SAAQ,oBAAoB,CAAC,iBAAiB,CAAC;IACxE,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACnB,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAoBD,eAAO,MAAM,KAAK;;;;;;;;;;;;;CAajB,CAAC"}
|
package/dist/components/Table.js
CHANGED
|
@@ -3,12 +3,12 @@ import { Children, forwardRef, isValidElement, } from 'react';
|
|
|
3
3
|
import { cn } from '../utils/cn';
|
|
4
4
|
import { Button } from './Button';
|
|
5
5
|
import { Pagination } from './Pagination';
|
|
6
|
-
const Root = forwardRef(({ children, chrome = 'default', className, density = 'default', fill = true, isFramed = true, viewportClassName, wrapperClassName, wrapperProps, ...props }, ref) => {
|
|
6
|
+
const Root = forwardRef(({ children, chrome = 'default', className, density = 'default', fill = true, layout = 'auto', isFramed = true, viewportClassName, wrapperClassName, wrapperProps, ...props }, ref) => {
|
|
7
7
|
const childNodes = Children.toArray(children);
|
|
8
8
|
const tableChildren = childNodes.filter((child) => !isValidElement(child) || child.type !== Pagination);
|
|
9
9
|
const paginationChildren = childNodes.filter((child) => isValidElement(child) && child.type === Pagination);
|
|
10
10
|
const { className: wrapperPropsClassName, ...resolvedWrapperProps } = wrapperProps ?? {};
|
|
11
|
-
return (_jsxs("div", { ...resolvedWrapperProps, "data-slot": "table-root", className: cn('bg-surface flex w-full min-w-0 flex-col overflow-hidden', fill && 'h-full min-h-0 grow', isFramed && 'border-app-border rounded-[var(--radius)] border', isFramed && chrome === 'default' && 'shadow-[0_4px_6px_-1px_rgb(0_0_0/0.07),0_2px_4px_-2px_rgb(0_0_0/0.05)]', density === 'compact' && '[&_td]:py-2 [&_th]:py-2', wrapperPropsClassName, wrapperClassName), children: [_jsx("div", { className: cn('min-h-0 flex-1 overflow-auto', viewportClassName), children: _jsx("table", { ref: ref, className: cn('w-full border-separate border-spacing-0 caption-bottom text-sm text-foreground', className), ...props, children: tableChildren }) }), paginationChildren.length > 0 && (_jsx("div", { "data-slot": "table-pagination", className: cn('border-app-border bg-background-secondary shrink-0 border-t px-3 py-2', density === 'compact' && 'px-3 py-2'), children: paginationChildren }))] }));
|
|
11
|
+
return (_jsxs("div", { ...resolvedWrapperProps, "data-slot": "table-root", className: cn('bg-surface flex w-full min-w-0 flex-col overflow-hidden', fill && 'h-full min-h-0 grow', isFramed && 'border-app-border rounded-[var(--radius)] border', isFramed && chrome === 'default' && 'shadow-[0_4px_6px_-1px_rgb(0_0_0/0.07),0_2px_4px_-2px_rgb(0_0_0/0.05)]', density === 'compact' && '[&_td]:py-2 [&_th]:py-2', wrapperPropsClassName, wrapperClassName), children: [_jsx("div", { className: cn('min-h-0 flex-1 overflow-auto', viewportClassName), children: _jsx("table", { ref: ref, className: cn('w-full border-separate border-spacing-0 caption-bottom text-sm text-foreground', layout === 'fixed' && 'table-fixed', className), ...props, children: tableChildren }) }), paginationChildren.length > 0 && (_jsx("div", { "data-slot": "table-pagination", className: cn('border-app-border bg-background-secondary shrink-0 border-t px-3 py-2', density === 'compact' && 'px-3 py-2'), children: paginationChildren }))] }));
|
|
12
12
|
});
|
|
13
13
|
Root.displayName = 'Table.Root';
|
|
14
14
|
const Header = forwardRef(({ className, ...props }, ref) => _jsx("thead", { ref: ref, className: cn('bg-background-secondary', className), ...props }));
|
|
@@ -17,15 +17,92 @@ const Body = forwardRef(({ className, ...props }, ref) => _jsx("tbody", { ref: r
|
|
|
17
17
|
Body.displayName = 'Table.Body';
|
|
18
18
|
const Footer = forwardRef(({ className, ...props }, ref) => (_jsx("tfoot", { ref: ref, className: cn('border-app-border bg-background border-t font-medium', className), ...props })));
|
|
19
19
|
Footer.displayName = 'Table.Footer';
|
|
20
|
-
const Row = forwardRef(({ className, isInteractive = true, ...props }, ref) => (_jsx("tr", { ref: ref, className: cn('transition-colors hover:bg-[color-mix(in_srgb,var(--brand)_5%,transparent)] last:[&>td]:border-b-0', isInteractive && 'cursor-pointer', className), ...props })));
|
|
20
|
+
const Row = forwardRef(({ className, isInteractive = true, ...props }, ref) => (_jsx("tr", { ref: ref, className: cn('transition-colors hover:bg-[color-mix(in_srgb,var(--brand)_5%,transparent)] has-[td[data-slot=table-action-cell]:hover]:bg-transparent last:[&>td]:border-b-0', isInteractive && 'cursor-pointer', className), ...props })));
|
|
21
21
|
Row.displayName = 'Table.Row';
|
|
22
22
|
const Head = forwardRef(({ className, ...props }, ref) => (_jsx("th", { ref: ref, className: cn('border-app-border bg-background-secondary sticky top-0 z-[2] h-10 whitespace-nowrap border-b px-3 py-2.5 text-left align-middle text-xs font-extrabold tracking-[0.045em] text-foreground-muted uppercase', className), ...props })));
|
|
23
23
|
Head.displayName = 'Table.Head';
|
|
24
24
|
const Cell = forwardRef(({ className, ...props }, ref) => (_jsx("td", { ref: ref, className: cn('border-app-border border-b px-3 py-2.5 align-middle text-foreground', className), ...props })));
|
|
25
25
|
Cell.displayName = 'Table.Cell';
|
|
26
|
-
|
|
26
|
+
/** Tamanho `xs` do Button (min-h-7): nao encolher abaixo disso. */
|
|
27
|
+
const ACTION_BUTTON_SIZE_PX = 28;
|
|
28
|
+
const ACTION_CELL_PADDING_PX = 2;
|
|
29
|
+
export const TABLE_ACTION_CELL_WIDTH_PX = ACTION_BUTTON_SIZE_PX + ACTION_CELL_PADDING_PX * 2;
|
|
30
|
+
/**
|
|
31
|
+
* O rotulo "Ações" ocupa ~45px. Um grupo com um unico botao (28px) nao o comporta,
|
|
32
|
+
* entao o grupo inteiro respeita este minimo — sem nunca absorver a sobra da tabela.
|
|
33
|
+
*/
|
|
34
|
+
export const TABLE_ACTION_GROUP_MIN_WIDTH_PX = 56;
|
|
35
|
+
/**
|
|
36
|
+
* Folga entre o icone da ponta e a borda da tabela: sem ela o botao encosta na
|
|
37
|
+
* moldura. Entra como padding, entao o valor inteiro vira folga na borda
|
|
38
|
+
* (centralizar o botao mandaria metade dela para o vao entre icones).
|
|
39
|
+
*/
|
|
40
|
+
export const TABLE_ACTION_EDGE_GUTTER_PX = 12;
|
|
41
|
+
/**
|
|
42
|
+
* A folga vale para a celula que encosta na moldura — `:first-child`/`:last-child`
|
|
43
|
+
* dizem isso sem prop nenhuma, entao qualquer tabela que use `Table.ActionCell`
|
|
44
|
+
* ganha o comportamento (e o `ActionHead` recebe o mesmo recuo, o que mantem o
|
|
45
|
+
* rotulo centralizado sobre os icones, e nao sobre o grupo + folga).
|
|
46
|
+
*/
|
|
47
|
+
const ACTION_EDGE_PAD_VAR = '--table-action-edge-pad';
|
|
48
|
+
const actionEdgeStyle = {
|
|
49
|
+
[ACTION_EDGE_PAD_VAR]: `${ACTION_CELL_PADDING_PX + TABLE_ACTION_EDGE_GUTTER_PX}px`,
|
|
50
|
+
};
|
|
51
|
+
const actionEdgeClasses = 'first:[padding-inline-start:var(--table-action-edge-pad)] last:[padding-inline-end:var(--table-action-edge-pad)]';
|
|
52
|
+
/**
|
|
53
|
+
* O Head traz `px-3`, entao o ActionHead precisa de `!` para reduzir o padding —
|
|
54
|
+
* e `!important` ganha de regra normal mesmo com especificidade menor. Logo a
|
|
55
|
+
* folga da ponta tambem precisa ser `!` aqui, senao o rotulo fica fora de centro.
|
|
56
|
+
*/
|
|
57
|
+
const actionEdgeImportantClasses = 'first:[padding-inline-start:var(--table-action-edge-pad)]! last:[padding-inline-end:var(--table-action-edge-pad)]!';
|
|
58
|
+
export function getTableActionColumnWidth(actionCount = 1, hasEdgeGutter = false) {
|
|
59
|
+
const columnCount = Math.max(actionCount, 1);
|
|
60
|
+
const groupWidth = Math.max(columnCount * TABLE_ACTION_CELL_WIDTH_PX, TABLE_ACTION_GROUP_MIN_WIDTH_PX);
|
|
61
|
+
return groupWidth / columnCount + (hasEdgeGutter ? TABLE_ACTION_EDGE_GUTTER_PX : 0);
|
|
62
|
+
}
|
|
63
|
+
const actionColumnWidthClasses = {
|
|
64
|
+
sm: 'w-16',
|
|
65
|
+
md: 'w-20',
|
|
66
|
+
lg: 'w-28',
|
|
67
|
+
};
|
|
68
|
+
const ActionHead = forwardRef(({ children = 'Ações', className, colSpan, size = 'sm', style, ...props }, ref) => (_jsx(Head, { ref: ref, colSpan: colSpan,
|
|
69
|
+
// O sufixo `!` vence o `px-3` do Head: o cn do pacote nao usa tailwind-merge.
|
|
70
|
+
className: cn(!colSpan && actionColumnWidthClasses[size], 'px-0.5!', actionEdgeImportantClasses, 'text-center', className), style: { ...actionEdgeStyle, ...style }, ...props, children: children })));
|
|
71
|
+
ActionHead.displayName = 'Table.ActionHead';
|
|
72
|
+
const ActionCol = forwardRef(({ actionCount = 1, hasEdgeGutter = false, style, ...props }, ref) => {
|
|
73
|
+
const width = `${getTableActionColumnWidth(actionCount, hasEdgeGutter)}px`;
|
|
74
|
+
return _jsx("col", { ref: ref, style: { ...style, width, minWidth: width, maxWidth: width }, ...props });
|
|
75
|
+
});
|
|
76
|
+
ActionCol.displayName = 'Table.ActionCol';
|
|
77
|
+
const ActionCell = forwardRef(({ children, className, style, ...props }, ref) => (_jsx("td", { ref: ref, "data-slot": "table-action-cell", className: cn('border-app-border border-b px-0.5 py-0.5 text-center align-middle', actionEdgeClasses, className),
|
|
78
|
+
// A largura e obrigatoria: em layout `auto` (tabela sem colgroup) uma celula
|
|
79
|
+
// sem width volta a absorver a sobra da tabela. Em `fixed` quem manda e o
|
|
80
|
+
// <col>, e na ponta o proprio padding faz a celula crescer o necessario.
|
|
81
|
+
style: {
|
|
82
|
+
...actionEdgeStyle,
|
|
83
|
+
...style,
|
|
84
|
+
width: `${TABLE_ACTION_CELL_WIDTH_PX}px`,
|
|
85
|
+
minWidth: `${TABLE_ACTION_CELL_WIDTH_PX}px`,
|
|
86
|
+
}, ...props, children: _jsx("div", { className: "flex min-h-7 items-center justify-center", children: children }) })));
|
|
27
87
|
ActionCell.displayName = 'Table.ActionCell';
|
|
28
|
-
|
|
88
|
+
/**
|
|
89
|
+
* Mesmo vermelho do `destructive` do ConfirmationDialog: a cor chapada misturada
|
|
90
|
+
* com o `--foreground` puxa para escuro no tema claro e para claro no escuro, o que
|
|
91
|
+
* mantem o tom saturado nos dois. Nao usar os tokens `--status-*-text`: eles sao
|
|
92
|
+
* feitos para texto sobre o fundo do badge e, no escuro, saem lavados (rosa/menta).
|
|
93
|
+
*
|
|
94
|
+
* `!` obrigatorio: o cn do pacote nao usa tailwind-merge, entao sem ele o
|
|
95
|
+
* `text-foreground-muted`/`hover:bg` do ghost venceria pela ordem do CSS.
|
|
96
|
+
*/
|
|
97
|
+
const actionToneClasses = {
|
|
98
|
+
default: '',
|
|
99
|
+
success: 'text-[color-mix(in_srgb,#16a34a_86%,var(--foreground))]! hover:bg-[color-mix(in_srgb,#16a34a_10%,transparent)]! hover:text-[color-mix(in_srgb,#16a34a_86%,var(--foreground))]! dark:hover:bg-[color-mix(in_srgb,#16a34a_16%,transparent)]!',
|
|
100
|
+
danger: 'text-[color-mix(in_srgb,#dc2626_86%,var(--foreground))]! hover:bg-[color-mix(in_srgb,#dc2626_10%,transparent)]! hover:text-[color-mix(in_srgb,#dc2626_86%,var(--foreground))]! dark:hover:bg-[color-mix(in_srgb,#dc2626_16%,transparent)]!',
|
|
101
|
+
};
|
|
102
|
+
const Action = forwardRef(({ className, size = 'xs', tone = 'default', tooltip, ...props }, ref) => (
|
|
103
|
+
// `props` vem primeiro: o corpo (variant/size/className) e do Table.Action, e nao
|
|
104
|
+
// pode ser sobrescrito por quem chama — o tom e a unica alavanca de cor.
|
|
105
|
+
_jsx(Button, { ...props, ref: ref, "aria-label": props['aria-label'] ?? tooltip, className: cn('size-7 min-h-7 min-w-7 p-0', actionToneClasses[tone], className), size: size, variant: "ghost", tooltip: tooltip })));
|
|
29
106
|
Action.displayName = 'Table.Action';
|
|
30
107
|
export const Table = {
|
|
31
108
|
Root,
|
|
@@ -34,6 +111,8 @@ export const Table = {
|
|
|
34
111
|
Footer,
|
|
35
112
|
Row,
|
|
36
113
|
Head,
|
|
114
|
+
ActionHead,
|
|
115
|
+
ActionCol,
|
|
37
116
|
Cell,
|
|
38
117
|
ActionCell,
|
|
39
118
|
Action,
|
|
@@ -11,10 +11,12 @@ export interface WorkspaceTableProps {
|
|
|
11
11
|
children: ReactNode;
|
|
12
12
|
}
|
|
13
13
|
declare function WorkspaceTable({ children }: WorkspaceTableProps): import("react").JSX.Element;
|
|
14
|
-
declare function
|
|
14
|
+
declare function WorkspaceFilterTrigger(): import("react").JSX.Element;
|
|
15
|
+
declare function WorkspaceRoot({ filters, children, className, appearance, }: WorkspaceRootProps): import("react").JSX.Element;
|
|
15
16
|
export declare const Workspace: {
|
|
16
17
|
Root: typeof WorkspaceRoot;
|
|
17
18
|
Table: typeof WorkspaceTable;
|
|
19
|
+
FilterTrigger: typeof WorkspaceFilterTrigger;
|
|
18
20
|
};
|
|
19
21
|
export {};
|
|
20
22
|
//# sourceMappingURL=Workspace.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Workspace.d.ts","sourceRoot":"","sources":["../../src/components/Workspace.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"Workspace.d.ts","sourceRoot":"","sources":["../../src/components/Workspace.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAYtE,MAAM,WAAW,kBAAkB;IACjC,iEAAiE;IACjE,OAAO,EAAE,SAAS,CAAC;IACnB,6DAA6D;IAC7D,QAAQ,EAAE,YAAY,CAAC,mBAAmB,EAAE,OAAO,cAAc,CAAC,CAAC;IACnE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,WAAW,GAAG,QAAQ,CAAC;CACrC;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,iBAAS,cAAc,CAAC,EAAE,QAAQ,EAAE,EAAE,mBAAmB,+BAExD;AAED,iBAAS,sBAAsB,gCAgB9B;AAED,iBAAS,aAAa,CAAC,EACrB,OAAO,EACP,QAAQ,EACR,SAAS,EACT,UAAwB,GACzB,EAAE,kBAAkB,+BAgDpB;AAED,eAAO,MAAM,SAAS;;;;CAIrB,CAAC"}
|
|
@@ -1,25 +1,33 @@
|
|
|
1
1
|
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useContext } from 'react';
|
|
3
|
+
import { FilterIcon, FilterXIcon } from 'lucide-react';
|
|
3
4
|
import { cn } from '../utils/cn';
|
|
4
5
|
import { Card } from './Card';
|
|
5
6
|
import { EmptyState } from './EmptyState';
|
|
6
|
-
import { FilterVisibilityContext } from './Filter';
|
|
7
|
+
import { Filter, FilterVisibilityContext } from './Filter';
|
|
8
|
+
import { Page } from './Page';
|
|
7
9
|
import { RenderCase } from './RenderCase';
|
|
8
10
|
import { RenderIf } from './RenderIf';
|
|
9
11
|
import { WorkspaceResultContext } from './WorkspaceContext';
|
|
10
12
|
function WorkspaceTable({ children }) {
|
|
11
13
|
return _jsx(_Fragment, { children: children });
|
|
12
14
|
}
|
|
13
|
-
function
|
|
15
|
+
function WorkspaceFilterTrigger() {
|
|
16
|
+
const visibility = useContext(FilterVisibilityContext);
|
|
17
|
+
const isFilterOpen = visibility?.open ?? true;
|
|
18
|
+
return (_jsx(Filter.Trigger, { triggerSlot: (_jsx(Page.ActionButton, { "aria-label": isFilterOpen ? 'Ocultar filtros' : 'Mostrar filtros', icon: isFilterOpen ? _jsx(FilterXIcon, { "aria-hidden": "true" }) : _jsx(FilterIcon, { "aria-hidden": "true" }), label: isFilterOpen ? 'Ocultar filtros' : 'Mostrar filtros', tooltip: isFilterOpen ? 'Ocultar filtros' : 'Mostrar filtros' })) }));
|
|
19
|
+
}
|
|
20
|
+
function WorkspaceRoot({ filters, children, className, appearance = 'separated', }) {
|
|
14
21
|
const visibility = useContext(FilterVisibilityContext);
|
|
15
22
|
const isJoined = appearance === 'joined';
|
|
16
23
|
const isFilterOpen = visibility?.open ?? true;
|
|
17
24
|
const result = children;
|
|
18
25
|
return (_jsxs("div", { className: cn('grid h-full min-h-0 flex-1 xl:grid-rows-[minmax(0,1fr)]', isJoined
|
|
19
26
|
? 'gap-0 overflow-hidden rounded-[var(--radius)] border border-app-border bg-background-secondary [&_[data-slot=filter-root]]:rounded-none [&_[data-slot=filter-root]]:border-0 [&_[data-slot=filter-root]]:!border-r [&_[data-slot=filter-root]]:!border-app-border [&_[data-slot=filter-header]]:!h-10 [&_[data-slot=filter-header]]:!rounded-none [&_[data-slot=filter-header]]:!bg-background-secondary [&_[data-slot=filter-footer]]:!px-3 [&_[data-slot=filter-footer]]:!py-2 [&_[data-slot=filter-footer]_button]:!h-8 [&_[data-slot=filter-footer]_button]:!min-h-8 [&_[data-slot=filter-footer]_button]:!px-2.5 [&_[data-slot=filter-footer]_button]:!py-0 [&_[data-slot=filter-footer]_button]:!text-xs [&_[data-slot=table-root]]:!rounded-none [&_[data-slot=table-root]]:!border-0 [&_[data-slot=table-root]]:!shadow-none [&_[data-slot=table-pagination]]:!px-3 [&_[data-slot=table-pagination]]:!py-2'
|
|
20
|
-
: 'gap-3', isFilterOpen ? 'xl:grid-cols-[280px_minmax(0,1fr)]' : 'xl:grid-cols-[minmax(0,1fr)]', className), children: [_jsx(RenderIf, { when: isFilterOpen, children: _jsx("aside", { className: "min-h-0 xl:self-stretch xl:[&>*]:h-full xl:[&>*]:min-h-0", children: filters }) }), _jsx("section", { className: cn(
|
|
27
|
+
: 'gap-3', isFilterOpen ? 'xl:grid-cols-[280px_minmax(0,1fr)]' : 'xl:grid-cols-[minmax(0,1fr)]', className), children: [_jsx(RenderIf, { when: isFilterOpen, children: _jsx("aside", { className: "min-h-0 xl:self-stretch xl:[&>*]:h-full xl:[&>*]:min-h-0", children: filters }) }), _jsx("section", { className: cn("flex h-full min-h-0 flex-1 flex-col", isJoined ? "bg-background-secondary" : "bg-transparent"), children: _jsx(WorkspaceResultContext.Provider, { value: true, children: _jsxs(RenderCase.Root, { children: [_jsx(RenderCase.If, { when: Boolean(result && (Array.isArray(result) ? result.length > 0 : true)), children: result }), _jsx(RenderCase.Else, { children: _jsx(Card.Root, { className: "flex flex-1 items-center justify-center bg-surface/60 p-8 shadow-sm", children: _jsx(EmptyState, { title: "Nenhum resultado", description: "Ajuste os filtros e pesquise novamente." }) }) })] }) }) })] }));
|
|
21
28
|
}
|
|
22
29
|
export const Workspace = {
|
|
23
30
|
Root: WorkspaceRoot,
|
|
24
31
|
Table: WorkspaceTable,
|
|
32
|
+
FilterTrigger: WorkspaceFilterTrigger,
|
|
25
33
|
};
|
package/dist/index.d.ts
CHANGED
|
@@ -34,7 +34,7 @@ export { PasswordInput, type PasswordInputProps } from './components/PasswordInp
|
|
|
34
34
|
export { Filter, FilterVisibilityContext, type FilterFooterProps, type FilterRootProps, type FilterTriggerProps, type FilterVisibilityProps, } from './components/Filter';
|
|
35
35
|
export { Workspace, type WorkspaceRootProps } from './components/Workspace';
|
|
36
36
|
export { Sidebar, type SidebarRootProps } from './components/Sidebar';
|
|
37
|
-
export { Table } from './components/Table';
|
|
37
|
+
export { Table, TABLE_ACTION_CELL_WIDTH_PX, TABLE_ACTION_EDGE_GUTTER_PX, TABLE_ACTION_GROUP_MIN_WIDTH_PX, getTableActionColumnWidth, type TableActionColumnSize, type TableActionTone, } from './components/Table';
|
|
38
38
|
export { TabsUnderlined, type TabsUnderlinedProps, type UnderlinedTabItem } from './components/TabsUnderlined';
|
|
39
39
|
export { Tooltip, type TooltipProps, type TooltipSide } from './components/Tooltip';
|
|
40
40
|
export { ThemePreferencesSelector, type ThemeAppearance, type ThemeColorOption, type ThemePreferencesSelectorProps, type ThemePreferencesValue, } from './components/ThemePreferencesSelector';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -34,7 +34,7 @@ export { PasswordInput } from './components/PasswordInput';
|
|
|
34
34
|
export { Filter, FilterVisibilityContext, } from './components/Filter';
|
|
35
35
|
export { Workspace } from './components/Workspace';
|
|
36
36
|
export { Sidebar } from './components/Sidebar';
|
|
37
|
-
export { Table } from './components/Table';
|
|
37
|
+
export { Table, TABLE_ACTION_CELL_WIDTH_PX, TABLE_ACTION_EDGE_GUTTER_PX, TABLE_ACTION_GROUP_MIN_WIDTH_PX, getTableActionColumnWidth, } from './components/Table';
|
|
38
38
|
export { TabsUnderlined } from './components/TabsUnderlined';
|
|
39
39
|
export { Tooltip } from './components/Tooltip';
|
|
40
40
|
export { ThemePreferencesSelector, } from './components/ThemePreferencesSelector';
|
package/dist/styles.css
CHANGED
|
@@ -960,6 +960,9 @@ h2.react-datepicker__current-month {
|
|
|
960
960
|
.z-\[999\] {
|
|
961
961
|
z-index: 999;
|
|
962
962
|
}
|
|
963
|
+
.z-\[10000\] {
|
|
964
|
+
z-index: 10000;
|
|
965
|
+
}
|
|
963
966
|
.order-3 {
|
|
964
967
|
order: 3;
|
|
965
968
|
}
|
|
@@ -1380,12 +1383,18 @@ h2.react-datepicker__current-month {
|
|
|
1380
1383
|
.w-14 {
|
|
1381
1384
|
width: calc(var(--spacing) * 14);
|
|
1382
1385
|
}
|
|
1386
|
+
.w-16 {
|
|
1387
|
+
width: calc(var(--spacing) * 16);
|
|
1388
|
+
}
|
|
1383
1389
|
.w-20 {
|
|
1384
1390
|
width: calc(var(--spacing) * 20);
|
|
1385
1391
|
}
|
|
1386
1392
|
.w-24 {
|
|
1387
1393
|
width: calc(var(--spacing) * 24);
|
|
1388
1394
|
}
|
|
1395
|
+
.w-28 {
|
|
1396
|
+
width: calc(var(--spacing) * 28);
|
|
1397
|
+
}
|
|
1389
1398
|
.w-32 {
|
|
1390
1399
|
width: calc(var(--spacing) * 32);
|
|
1391
1400
|
}
|
|
@@ -1560,6 +1569,9 @@ h2.react-datepicker__current-month {
|
|
|
1560
1569
|
.grow {
|
|
1561
1570
|
flex-grow: 1;
|
|
1562
1571
|
}
|
|
1572
|
+
.table-fixed {
|
|
1573
|
+
table-layout: fixed;
|
|
1574
|
+
}
|
|
1563
1575
|
.caption-bottom {
|
|
1564
1576
|
caption-side: bottom;
|
|
1565
1577
|
}
|
|
@@ -1976,6 +1988,9 @@ h2.react-datepicker__current-month {
|
|
|
1976
1988
|
.\!bg-transparent {
|
|
1977
1989
|
background-color: transparent !important;
|
|
1978
1990
|
}
|
|
1991
|
+
.bg-\[\#dc2626\] {
|
|
1992
|
+
background-color: #dc2626;
|
|
1993
|
+
}
|
|
1979
1994
|
.bg-\[color-mix\(in_srgb\,\#3b82f6_16\%\,var\(--background-secondary\)\)\] {
|
|
1980
1995
|
background-color: #3b82f6;
|
|
1981
1996
|
@supports (color: color-mix(in lab, red, red)) {
|
|
@@ -2084,9 +2099,6 @@ h2.react-datepicker__current-month {
|
|
|
2084
2099
|
.bg-\[var\(--brand\)\] {
|
|
2085
2100
|
background-color: var(--brand);
|
|
2086
2101
|
}
|
|
2087
|
-
.bg-\[var\(--destructive\)\] {
|
|
2088
|
-
background-color: var(--destructive);
|
|
2089
|
-
}
|
|
2090
2102
|
.bg-\[var\(--status-danger-bg\,rgba\(254\,202\,202\,0\.8\)\)\] {
|
|
2091
2103
|
background-color: var(--status-danger-bg,rgba(254,202,202,0.8));
|
|
2092
2104
|
}
|
|
@@ -2219,6 +2231,12 @@ h2.react-datepicker__current-month {
|
|
|
2219
2231
|
.p-8 {
|
|
2220
2232
|
padding: calc(var(--spacing) * 8);
|
|
2221
2233
|
}
|
|
2234
|
+
.px-0\.5 {
|
|
2235
|
+
padding-inline: calc(var(--spacing) * 0.5);
|
|
2236
|
+
}
|
|
2237
|
+
.px-0\.5\! {
|
|
2238
|
+
padding-inline: calc(var(--spacing) * 0.5) !important;
|
|
2239
|
+
}
|
|
2222
2240
|
.px-1\.5 {
|
|
2223
2241
|
padding-inline: calc(var(--spacing) * 1.5);
|
|
2224
2242
|
}
|
|
@@ -2525,6 +2543,24 @@ h2.react-datepicker__current-month {
|
|
|
2525
2543
|
.whitespace-nowrap {
|
|
2526
2544
|
white-space: nowrap;
|
|
2527
2545
|
}
|
|
2546
|
+
.text-\[color-mix\(in_srgb\,\#16a34a_86\%\,var\(--foreground\)\)\]\! {
|
|
2547
|
+
color: #16a34a !important;
|
|
2548
|
+
@supports (color: color-mix(in lab, red, red)) {
|
|
2549
|
+
color: color-mix(in srgb,#16a34a 86%,var(--foreground)) !important;
|
|
2550
|
+
}
|
|
2551
|
+
}
|
|
2552
|
+
.text-\[color-mix\(in_srgb\,\#dc2626_86\%\,var\(--foreground\)\)\] {
|
|
2553
|
+
color: #dc2626;
|
|
2554
|
+
@supports (color: color-mix(in lab, red, red)) {
|
|
2555
|
+
color: color-mix(in srgb,#dc2626 86%,var(--foreground));
|
|
2556
|
+
}
|
|
2557
|
+
}
|
|
2558
|
+
.text-\[color-mix\(in_srgb\,\#dc2626_86\%\,var\(--foreground\)\)\]\! {
|
|
2559
|
+
color: #dc2626 !important;
|
|
2560
|
+
@supports (color: color-mix(in lab, red, red)) {
|
|
2561
|
+
color: color-mix(in srgb,#dc2626 86%,var(--foreground)) !important;
|
|
2562
|
+
}
|
|
2563
|
+
}
|
|
2528
2564
|
.text-\[color-mix\(in_srgb\,var\(--brand\)_68\%\,var\(--foreground-muted\)\)\] {
|
|
2529
2565
|
color: var(--brand);
|
|
2530
2566
|
@supports (color: color-mix(in lab, red, red)) {
|
|
@@ -2815,6 +2851,9 @@ h2.react-datepicker__current-month {
|
|
|
2815
2851
|
--tw-saturate: saturate(50%);
|
|
2816
2852
|
filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
|
|
2817
2853
|
}
|
|
2854
|
+
.filter {
|
|
2855
|
+
filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
|
|
2856
|
+
}
|
|
2818
2857
|
.backdrop-blur-\[1\.5px\] {
|
|
2819
2858
|
--tw-backdrop-blur: blur(1.5px);
|
|
2820
2859
|
-webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
|
|
@@ -2985,6 +3024,26 @@ h2.react-datepicker__current-month {
|
|
|
2985
3024
|
border-left-width: 0px;
|
|
2986
3025
|
}
|
|
2987
3026
|
}
|
|
3027
|
+
.first\:\[padding-inline-start\:var\(--table-action-edge-pad\)\] {
|
|
3028
|
+
&:first-child {
|
|
3029
|
+
padding-inline-start: var(--table-action-edge-pad);
|
|
3030
|
+
}
|
|
3031
|
+
}
|
|
3032
|
+
.first\:\[padding-inline-start\:var\(--table-action-edge-pad\)\]\! {
|
|
3033
|
+
&:first-child {
|
|
3034
|
+
padding-inline-start: var(--table-action-edge-pad) !important;
|
|
3035
|
+
}
|
|
3036
|
+
}
|
|
3037
|
+
.last\:\[padding-inline-end\:var\(--table-action-edge-pad\)\] {
|
|
3038
|
+
&:last-child {
|
|
3039
|
+
padding-inline-end: var(--table-action-edge-pad);
|
|
3040
|
+
}
|
|
3041
|
+
}
|
|
3042
|
+
.last\:\[padding-inline-end\:var\(--table-action-edge-pad\)\]\! {
|
|
3043
|
+
&:last-child {
|
|
3044
|
+
padding-inline-end: var(--table-action-edge-pad) !important;
|
|
3045
|
+
}
|
|
3046
|
+
}
|
|
2988
3047
|
.hover\:-translate-y-px {
|
|
2989
3048
|
&:hover {
|
|
2990
3049
|
@media (hover: hover) {
|
|
@@ -3079,6 +3138,27 @@ h2.react-datepicker__current-month {
|
|
|
3079
3138
|
}
|
|
3080
3139
|
}
|
|
3081
3140
|
}
|
|
3141
|
+
.hover\:bg-\[\#b91c1c\] {
|
|
3142
|
+
&:hover {
|
|
3143
|
+
@media (hover: hover) {
|
|
3144
|
+
background-color: #b91c1c;
|
|
3145
|
+
}
|
|
3146
|
+
}
|
|
3147
|
+
}
|
|
3148
|
+
.hover\:bg-\[color-mix\(in_srgb\,\#16a34a_10\%\,transparent\)\]\! {
|
|
3149
|
+
&:hover {
|
|
3150
|
+
@media (hover: hover) {
|
|
3151
|
+
background-color: color-mix(in srgb,#16a34a 10%,transparent) !important;
|
|
3152
|
+
}
|
|
3153
|
+
}
|
|
3154
|
+
}
|
|
3155
|
+
.hover\:bg-\[color-mix\(in_srgb\,\#dc2626_10\%\,transparent\)\]\! {
|
|
3156
|
+
&:hover {
|
|
3157
|
+
@media (hover: hover) {
|
|
3158
|
+
background-color: color-mix(in srgb,#dc2626 10%,transparent) !important;
|
|
3159
|
+
}
|
|
3160
|
+
}
|
|
3161
|
+
}
|
|
3082
3162
|
.hover\:bg-\[color-mix\(in_srgb\,\#facc15_14\%\,transparent\)\] {
|
|
3083
3163
|
&:hover {
|
|
3084
3164
|
@media (hover: hover) {
|
|
@@ -3186,16 +3266,6 @@ h2.react-datepicker__current-month {
|
|
|
3186
3266
|
}
|
|
3187
3267
|
}
|
|
3188
3268
|
}
|
|
3189
|
-
.hover\:bg-\[color-mix\(in_srgb\,var\(--destructive\)_88\%\,\#000\)\] {
|
|
3190
|
-
&:hover {
|
|
3191
|
-
@media (hover: hover) {
|
|
3192
|
-
background-color: var(--destructive);
|
|
3193
|
-
@supports (color: color-mix(in lab, red, red)) {
|
|
3194
|
-
background-color: color-mix(in srgb,var(--destructive) 88%,#000);
|
|
3195
|
-
}
|
|
3196
|
-
}
|
|
3197
|
-
}
|
|
3198
|
-
}
|
|
3199
3269
|
.hover\:bg-\[color-mix\(in_srgb\,var\(--foreground-muted\)_8\%\,var\(--background-secondary\)\)\] {
|
|
3200
3270
|
&:hover {
|
|
3201
3271
|
@media (hover: hover) {
|
|
@@ -3326,6 +3396,26 @@ h2.react-datepicker__current-month {
|
|
|
3326
3396
|
}
|
|
3327
3397
|
}
|
|
3328
3398
|
}
|
|
3399
|
+
.hover\:text-\[color-mix\(in_srgb\,\#16a34a_86\%\,var\(--foreground\)\)\]\! {
|
|
3400
|
+
&:hover {
|
|
3401
|
+
@media (hover: hover) {
|
|
3402
|
+
color: #16a34a !important;
|
|
3403
|
+
@supports (color: color-mix(in lab, red, red)) {
|
|
3404
|
+
color: color-mix(in srgb,#16a34a 86%,var(--foreground)) !important;
|
|
3405
|
+
}
|
|
3406
|
+
}
|
|
3407
|
+
}
|
|
3408
|
+
}
|
|
3409
|
+
.hover\:text-\[color-mix\(in_srgb\,\#dc2626_86\%\,var\(--foreground\)\)\]\! {
|
|
3410
|
+
&:hover {
|
|
3411
|
+
@media (hover: hover) {
|
|
3412
|
+
color: #dc2626 !important;
|
|
3413
|
+
@supports (color: color-mix(in lab, red, red)) {
|
|
3414
|
+
color: color-mix(in srgb,#dc2626 86%,var(--foreground)) !important;
|
|
3415
|
+
}
|
|
3416
|
+
}
|
|
3417
|
+
}
|
|
3418
|
+
}
|
|
3329
3419
|
.hover\:text-\[color-mix\(in_srgb\,var\(--brand\)_86\%\,var\(--foreground\)\)\] {
|
|
3330
3420
|
&:hover {
|
|
3331
3421
|
@media (hover: hover) {
|
|
@@ -3681,6 +3771,11 @@ h2.react-datepicker__current-month {
|
|
|
3681
3771
|
filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
|
|
3682
3772
|
}
|
|
3683
3773
|
}
|
|
3774
|
+
.has-\[td\[data-slot\=table-action-cell\]\:hover\]\:bg-transparent {
|
|
3775
|
+
&:has(*:is(td[data-slot=table-action-cell]:hover)) {
|
|
3776
|
+
background-color: transparent;
|
|
3777
|
+
}
|
|
3778
|
+
}
|
|
3684
3779
|
.data-\[expanded\=true\]\:grid-rows-\[1fr\] {
|
|
3685
3780
|
&[data-expanded="true"] {
|
|
3686
3781
|
grid-template-rows: 1fr;
|
|
@@ -4084,6 +4179,24 @@ h2.react-datepicker__current-month {
|
|
|
4084
4179
|
}
|
|
4085
4180
|
}
|
|
4086
4181
|
}
|
|
4182
|
+
.dark\:hover\:bg-\[color-mix\(in_srgb\,\#16a34a_16\%\,transparent\)\]\! {
|
|
4183
|
+
@media (prefers-color-scheme: dark) {
|
|
4184
|
+
&:hover {
|
|
4185
|
+
@media (hover: hover) {
|
|
4186
|
+
background-color: color-mix(in srgb,#16a34a 16%,transparent) !important;
|
|
4187
|
+
}
|
|
4188
|
+
}
|
|
4189
|
+
}
|
|
4190
|
+
}
|
|
4191
|
+
.dark\:hover\:bg-\[color-mix\(in_srgb\,\#dc2626_16\%\,transparent\)\]\! {
|
|
4192
|
+
@media (prefers-color-scheme: dark) {
|
|
4193
|
+
&:hover {
|
|
4194
|
+
@media (hover: hover) {
|
|
4195
|
+
background-color: color-mix(in srgb,#dc2626 16%,transparent) !important;
|
|
4196
|
+
}
|
|
4197
|
+
}
|
|
4198
|
+
}
|
|
4199
|
+
}
|
|
4087
4200
|
.dark\:hover\:bg-\[color-mix\(in_srgb\,var\(--brand\)_12\%\,transparent\)\] {
|
|
4088
4201
|
@media (prefers-color-scheme: dark) {
|
|
4089
4202
|
&:hover {
|