@snksergio/design-system 0.41.0 → 0.42.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-lib/chunks/{panel-DtU3KlKY.cjs → panel-BSyHW2J5.cjs} +120 -94
- package/dist-lib/chunks/panel-BSyHW2J5.cjs.map +1 -0
- package/dist-lib/chunks/{panel-Bje0kUTh.mjs → panel-CMRliQb2.mjs} +95 -69
- package/dist-lib/chunks/panel-CMRliQb2.mjs.map +1 -0
- package/dist-lib/chunks/{textarea-K20CL_gF.cjs → sheet-B68Q4-Hn.cjs} +206 -206
- package/dist-lib/chunks/sheet-B68Q4-Hn.cjs.map +1 -0
- package/dist-lib/chunks/{textarea-BPRIHZVd.mjs → sheet-BgA2g6m4.mjs} +206 -206
- package/dist-lib/chunks/sheet-BgA2g6m4.mjs.map +1 -0
- package/dist-lib/index.cjs +16 -16
- package/dist-lib/index.cjs.map +1 -1
- package/dist-lib/index.mjs +82 -82
- package/dist-lib/index.mjs.map +1 -1
- package/dist-lib/preview/clientes.cjs +2 -2
- package/dist-lib/preview/clientes.mjs +2 -2
- package/dist-lib/shadcn.cjs +50 -50
- package/dist-lib/shadcn.mjs +1 -1
- package/dist-lib/src/components/ui/ColorPicker/color-picker.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/builders/column-builders.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/parts/data-table-actions-cell.d.ts +7 -3
- package/dist-lib/src/components/ui/DataTable/parts/data-table-actions-cell.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/utils/action-slots.d.ts +76 -0
- package/dist-lib/src/components/ui/DataTable/utils/action-slots.d.ts.map +1 -0
- package/dist-lib/src/components/ui/DataTable/utils/calculate-column-widths.d.ts.map +1 -1
- package/package.json +208 -207
- package/dist-lib/chunks/panel-Bje0kUTh.mjs.map +0 -1
- package/dist-lib/chunks/panel-DtU3KlKY.cjs.map +0 -1
- package/dist-lib/chunks/textarea-BPRIHZVd.mjs.map +0 -1
- package/dist-lib/chunks/textarea-K20CL_gF.cjs.map +0 -1
|
@@ -5,10 +5,10 @@ const React = require("react");
|
|
|
5
5
|
const useTheme = require("../chunks/useTheme-3iZAognE.cjs");
|
|
6
6
|
const lucideReact = require("lucide-react");
|
|
7
7
|
const clientesShowcaseMocks = require("../chunks/clientes-showcase-mocks-CwhluBTT.cjs");
|
|
8
|
-
const panel = require("../chunks/panel-
|
|
8
|
+
const panel = require("../chunks/panel-BSyHW2J5.cjs");
|
|
9
9
|
const avatar = require("../chunks/avatar-eM5txRFZ.cjs");
|
|
10
10
|
require("../chunks/input-az2SuVXQ.cjs");
|
|
11
|
-
require("../chunks/
|
|
11
|
+
require("../chunks/sheet-B68Q4-Hn.cjs");
|
|
12
12
|
const pageHeader = require("../chunks/page-header-DvAJoEfb.cjs");
|
|
13
13
|
require("react-dom");
|
|
14
14
|
const appShellMocks = require("../chunks/app-shell-mocks-oO_IV3Gw.cjs");
|
|
@@ -3,10 +3,10 @@ import { useState, useEffect, useRef, useCallback, useMemo } from "react";
|
|
|
3
3
|
import { a as ChipGroup, b as ChipGroupItem, C as Chip, u as useTheme, A as AppShell } from "../chunks/useTheme-B3ZakPqk.mjs";
|
|
4
4
|
import { Pencil, Trash2, ChevronDown, MoreHorizontal, Plus, Download, Maximize2, Copy, Upload, RotateCcw, MessageSquare, Archive, Clock } from "lucide-react";
|
|
5
5
|
import { S as STATUSES, a as STATUS_DOT, C as CATEGORIES, b as CITIES, A as AGENTS, d as CATEGORY_KIND, f as formatBRL, e as formatShortDate, g as CLIENTS_87, K as KANBAN_COLUMNS, h as STATUS_OPTIONS, i as CATEGORY_OPTIONS, j as AGENTS_LOOKUP, k as AGENT_OPTIONS } from "../chunks/clientes-showcase-mocks-CwWGCCmf.mjs";
|
|
6
|
-
import { P as Panel, F as FormFieldInput, a as FormField, b as FormFieldSelect, c as FormFieldTextarea, d as FloatingPanel, p as presetView, D as DataTable, B as BulkActionButton, A as AlertModal } from "../chunks/panel-
|
|
6
|
+
import { P as Panel, F as FormFieldInput, a as FormField, b as FormFieldSelect, c as FormFieldTextarea, d as FloatingPanel, p as presetView, D as DataTable, B as BulkActionButton, A as AlertModal } from "../chunks/panel-CMRliQb2.mjs";
|
|
7
7
|
import { t as tv, B as Button, A as Avatar, a as AvatarFallback } from "../chunks/avatar-DFWEwBKu.mjs";
|
|
8
8
|
import "../chunks/input-CfmzMYtd.mjs";
|
|
9
|
-
import "../chunks/
|
|
9
|
+
import "../chunks/sheet-BgA2g6m4.mjs";
|
|
10
10
|
import { P as PageHeader } from "../chunks/page-header--cPS_Z-a.mjs";
|
|
11
11
|
import "react-dom";
|
|
12
12
|
import { b as APP_SHELL_LAYOUT_OPTIONS, f as APP_SHELL_USER, e as APP_SHELL_THEME_OPTIONS, c as APP_SHELL_MESSAGES, d as APP_SHELL_NOTIFICATIONS, A as APP_SHELL_COMMANDS, a as APP_SHELL_CONTEXTS } from "../chunks/app-shell-mocks-kWIVSzLs.mjs";
|
package/dist-lib/shadcn.cjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
3
|
const toggleGroup = require("./chunks/toggle-group-BEPs3e0Y.cjs");
|
|
4
|
-
const
|
|
4
|
+
const sheet = require("./chunks/sheet-B68Q4-Hn.cjs");
|
|
5
5
|
const AspectRatioPrimitive = require("@radix-ui/react-aspect-ratio");
|
|
6
6
|
const avatar = require("./chunks/avatar-eM5txRFZ.cjs");
|
|
7
7
|
const input = require("./chunks/input-az2SuVXQ.cjs");
|
|
@@ -177,55 +177,55 @@ exports.badgeVariants = toggleGroup.badgeVariants;
|
|
|
177
177
|
exports.navigationMenuTriggerStyle = toggleGroup.navigationMenuTriggerStyle;
|
|
178
178
|
exports.slotVariants = toggleGroup.slotVariants;
|
|
179
179
|
exports.toggleVariants = toggleGroup.toggleVariants;
|
|
180
|
-
exports.AlertDialog =
|
|
181
|
-
exports.AlertDialogAction =
|
|
182
|
-
exports.AlertDialogCancel =
|
|
183
|
-
exports.AlertDialogContent =
|
|
184
|
-
exports.AlertDialogDescription =
|
|
185
|
-
exports.AlertDialogFooter =
|
|
186
|
-
exports.AlertDialogHeader =
|
|
187
|
-
exports.AlertDialogOverlay =
|
|
188
|
-
exports.AlertDialogPortal =
|
|
189
|
-
exports.AlertDialogTitle =
|
|
190
|
-
exports.AlertDialogTrigger =
|
|
191
|
-
exports.Calendar =
|
|
192
|
-
exports.CalendarDayButton =
|
|
193
|
-
exports.Checkbox =
|
|
194
|
-
exports.Pagination =
|
|
195
|
-
exports.PaginationContent =
|
|
196
|
-
exports.PaginationEllipsis =
|
|
197
|
-
exports.PaginationFirst =
|
|
198
|
-
exports.PaginationItem =
|
|
199
|
-
exports.PaginationLast =
|
|
200
|
-
exports.PaginationLink =
|
|
201
|
-
exports.PaginationNext =
|
|
202
|
-
exports.PaginationPrevious =
|
|
203
|
-
exports.Select =
|
|
204
|
-
exports.SelectContent =
|
|
205
|
-
exports.SelectGroup =
|
|
206
|
-
exports.SelectItem =
|
|
207
|
-
exports.SelectLabel =
|
|
208
|
-
exports.SelectScrollDownButton =
|
|
209
|
-
exports.SelectScrollUpButton =
|
|
210
|
-
exports.SelectSeparator =
|
|
211
|
-
exports.SelectTrigger =
|
|
212
|
-
exports.SelectValue =
|
|
213
|
-
exports.Sheet =
|
|
214
|
-
exports.SheetClose =
|
|
215
|
-
exports.SheetContent =
|
|
216
|
-
exports.SheetDescription =
|
|
217
|
-
exports.SheetFooter =
|
|
218
|
-
exports.SheetHeader =
|
|
219
|
-
exports.SheetOverlay =
|
|
220
|
-
exports.SheetPortal =
|
|
221
|
-
exports.SheetTitle =
|
|
222
|
-
exports.SheetTrigger =
|
|
223
|
-
exports.Switch =
|
|
224
|
-
exports.Textarea =
|
|
225
|
-
exports.getPaginationRange =
|
|
226
|
-
exports.paginationLinkVariants =
|
|
227
|
-
exports.paginationNavVariants =
|
|
228
|
-
exports.textareaVariants =
|
|
180
|
+
exports.AlertDialog = sheet.AlertDialog;
|
|
181
|
+
exports.AlertDialogAction = sheet.AlertDialogAction;
|
|
182
|
+
exports.AlertDialogCancel = sheet.AlertDialogCancel;
|
|
183
|
+
exports.AlertDialogContent = sheet.AlertDialogContent;
|
|
184
|
+
exports.AlertDialogDescription = sheet.AlertDialogDescription;
|
|
185
|
+
exports.AlertDialogFooter = sheet.AlertDialogFooter;
|
|
186
|
+
exports.AlertDialogHeader = sheet.AlertDialogHeader;
|
|
187
|
+
exports.AlertDialogOverlay = sheet.AlertDialogOverlay;
|
|
188
|
+
exports.AlertDialogPortal = sheet.AlertDialogPortal;
|
|
189
|
+
exports.AlertDialogTitle = sheet.AlertDialogTitle;
|
|
190
|
+
exports.AlertDialogTrigger = sheet.AlertDialogTrigger;
|
|
191
|
+
exports.Calendar = sheet.Calendar;
|
|
192
|
+
exports.CalendarDayButton = sheet.CalendarDayButton;
|
|
193
|
+
exports.Checkbox = sheet.Checkbox;
|
|
194
|
+
exports.Pagination = sheet.Pagination;
|
|
195
|
+
exports.PaginationContent = sheet.PaginationContent;
|
|
196
|
+
exports.PaginationEllipsis = sheet.PaginationEllipsis;
|
|
197
|
+
exports.PaginationFirst = sheet.PaginationFirst;
|
|
198
|
+
exports.PaginationItem = sheet.PaginationItem;
|
|
199
|
+
exports.PaginationLast = sheet.PaginationLast;
|
|
200
|
+
exports.PaginationLink = sheet.PaginationLink;
|
|
201
|
+
exports.PaginationNext = sheet.PaginationNext;
|
|
202
|
+
exports.PaginationPrevious = sheet.PaginationPrevious;
|
|
203
|
+
exports.Select = sheet.Select;
|
|
204
|
+
exports.SelectContent = sheet.SelectContent;
|
|
205
|
+
exports.SelectGroup = sheet.SelectGroup;
|
|
206
|
+
exports.SelectItem = sheet.SelectItem;
|
|
207
|
+
exports.SelectLabel = sheet.SelectLabel;
|
|
208
|
+
exports.SelectScrollDownButton = sheet.SelectScrollDownButton;
|
|
209
|
+
exports.SelectScrollUpButton = sheet.SelectScrollUpButton;
|
|
210
|
+
exports.SelectSeparator = sheet.SelectSeparator;
|
|
211
|
+
exports.SelectTrigger = sheet.SelectTrigger;
|
|
212
|
+
exports.SelectValue = sheet.SelectValue;
|
|
213
|
+
exports.Sheet = sheet.Sheet;
|
|
214
|
+
exports.SheetClose = sheet.SheetClose;
|
|
215
|
+
exports.SheetContent = sheet.SheetContent;
|
|
216
|
+
exports.SheetDescription = sheet.SheetDescription;
|
|
217
|
+
exports.SheetFooter = sheet.SheetFooter;
|
|
218
|
+
exports.SheetHeader = sheet.SheetHeader;
|
|
219
|
+
exports.SheetOverlay = sheet.SheetOverlay;
|
|
220
|
+
exports.SheetPortal = sheet.SheetPortal;
|
|
221
|
+
exports.SheetTitle = sheet.SheetTitle;
|
|
222
|
+
exports.SheetTrigger = sheet.SheetTrigger;
|
|
223
|
+
exports.Switch = sheet.Switch;
|
|
224
|
+
exports.Textarea = sheet.Textarea;
|
|
225
|
+
exports.getPaginationRange = sheet.getPaginationRange;
|
|
226
|
+
exports.paginationLinkVariants = sheet.paginationLinkVariants;
|
|
227
|
+
exports.paginationNavVariants = sheet.paginationNavVariants;
|
|
228
|
+
exports.textareaVariants = sheet.textareaVariants;
|
|
229
229
|
exports.Avatar = avatar.Avatar;
|
|
230
230
|
exports.AvatarFallback = avatar.AvatarFallback;
|
|
231
231
|
exports.AvatarImage = avatar.AvatarImage;
|
package/dist-lib/shadcn.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { A, a, b, c, d, e, f, B, g, h, i, j, k, l, m, C, n, o, p, q, r, s, t, u, v, w, x, y, z, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, _, $, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, aa, ab, ac, ad, ae, af, ag, ah, ai, aj, ak, al, am, an, ao, ap, aq, ar, as, at, au, av, aw, ax, ay, az, aA, aB, aC, aD, aE, aF, aG, aH, aI, aJ, aK } from "./chunks/toggle-group-XMO6ReVo.mjs";
|
|
2
|
-
import { A as A2, a as a10, b as b2, c as c2, d as d2, e as e2, f as f2, g as g2, h as h2, i as i2, j as j2, C as C2, k as k2, l as l2, P as P2, m as m2, n as n2, o as o2, p as p2, q as q2, r as r2, s as s2, t as t2, S as S2, u as u2, v as v2, w as w2, x as x2, y as y2, z as z2, B as B2, D as D2, E as E2, F as F2, G as G2, H as H2, I as I2, J as J2, K as K2, L as L2, M as M2, N as N2, O as O2, Q as Q2, T as T2, R as R2, U as U2, V as V2, W as W2 } from "./chunks/
|
|
2
|
+
import { A as A2, a as a10, b as b2, c as c2, d as d2, e as e2, f as f2, g as g2, h as h2, i as i2, j as j2, C as C2, k as k2, l as l2, P as P2, m as m2, n as n2, o as o2, p as p2, q as q2, r as r2, s as s2, t as t2, S as S2, u as u2, v as v2, w as w2, x as x2, y as y2, z as z2, B as B2, D as D2, E as E2, F as F2, G as G2, H as H2, I as I2, J as J2, K as K2, L as L2, M as M2, N as N2, O as O2, Q as Q2, T as T2, R as R2, U as U2, V as V2, W as W2 } from "./chunks/sheet-BgA2g6m4.mjs";
|
|
3
3
|
import * as AspectRatioPrimitive from "@radix-ui/react-aspect-ratio";
|
|
4
4
|
import { c as cn } from "./chunks/avatar-DFWEwBKu.mjs";
|
|
5
5
|
import { A as A3, a as a11, b as b3, C as C3, d as d3, e as e3, f as f3, g as g3, h as h3, i as i3, j as j3, k as k3, l as l3, m as m3, n as n3, D as D3, o as o3, p as p3, q as q3, r as r3, s as s3, u as u3, v as v3, w as w3, x as x3, y as y3, z as z3, E as E3, F as F3, G as G3, H as H3, I as I3, J as J3, K as K3, L as L3, M as M3, N as N3, O as O3, P as P3, Q as Q3, R as R3, S as S3, T as T3, U as U3, V as V3, W as W3, X as X2, Y as Y2, Z as Z2, _ as _2, $ as $2, a0 as a02, a1 as a12, a2 as a22, a3 as a32, a4 as a42, a5 as a52, a6 as a62, a7 as a72, a8 as a82 } from "./chunks/avatar-DFWEwBKu.mjs";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"color-picker.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/ColorPicker/color-picker.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"color-picker.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/ColorPicker/color-picker.tsx"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AA0B7D;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,WAAW,gHAwLvB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"column-builders.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ui/DataTable/builders/column-builders.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"column-builders.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ui/DataTable/builders/column-builders.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,9 +6,13 @@ export type DataTableActionsCellProps<T> = {
|
|
|
6
6
|
actions: DataTableActionItem<T>[];
|
|
7
7
|
};
|
|
8
8
|
/**
|
|
9
|
-
* Celula da coluna `type: "actions"` — renderiza icone-buttons inline
|
|
10
|
-
*
|
|
11
|
-
*
|
|
9
|
+
* Celula da coluna `type: "actions"` — renderiza icone-buttons inline e/ou o
|
|
10
|
+
* dropdown "…". Quem decide o split é `splitActionSlots` (ver `utils/action-slots.ts`
|
|
11
|
+
* pra a regra e a geometria que a justifica):
|
|
12
|
+
*
|
|
13
|
+
* - algum item com `showInMenu` → o split do consumer manda, sem limite;
|
|
14
|
+
* - até 3 itens, nenhum marcado → todos inline, sem "…";
|
|
15
|
+
* - mais de 3, nenhum marcado → todos no "…" (4 ícones não cabem na coluna).
|
|
12
16
|
*
|
|
13
17
|
* Items com `hidden(row) === true` somem completamente. Items com
|
|
14
18
|
* `disabled(row) === true` ficam atenuados e sem click.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-table-actions-cell.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ui/DataTable/parts/data-table-actions-cell.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"data-table-actions-cell.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ui/DataTable/parts/data-table-actions-cell.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAG/D,MAAM,MAAM,yBAAyB,CAAC,CAAC,IAAI;IACzC,0DAA0D;IAC1D,GAAG,EAAE,CAAC,CAAC;IACP,+CAA+C;IAC/C,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC;CACnC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,EACtC,GAAG,EACH,OAAO,GACR,EAAE,yBAAyB,CAAC,CAAC,CAAC,kDAsE9B"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { DataTableActionItem } from '../data-table.types';
|
|
2
|
+
/**
|
|
3
|
+
* Regra de distribuição das ações de uma row entre ícones inline e o menu "…",
|
|
4
|
+
* e a largura que a coluna `type: "actions"` precisa pra caber o resultado.
|
|
5
|
+
*
|
|
6
|
+
* ## Por que isto é um módulo próprio
|
|
7
|
+
*
|
|
8
|
+
* A célula (`parts/data-table-actions-cell.tsx`) decide o que renderiza; o
|
|
9
|
+
* `calculate-column-widths.ts` decide quanto espaço reservar. Se cada um aplicasse a
|
|
10
|
+
* regra por conta, os dois divergiriam no primeiro ajuste — foi exatamente o defeito da
|
|
11
|
+
* L-038, onde header e footer liam `col.align` cru e discordavam do body. Aqui a regra
|
|
12
|
+
* mora num lugar e os dois a chamam.
|
|
13
|
+
*
|
|
14
|
+
* ## A geometria, MEDIDA NO BROWSER (e a versão errada que ela substituiu)
|
|
15
|
+
*
|
|
16
|
+
* A célula é `flex items-center gap-gp-2xs justify-end` dentro de uma `TableCell` que, na
|
|
17
|
+
* variante `actions`, usa **`px-pad-md`** — a variante sobrescreve o `px-pad-2xl` default
|
|
18
|
+
* das outras células (`Table/table.styles.ts`, bloco `variants.actions`). Com os tokens:
|
|
19
|
+
*
|
|
20
|
+
* padding = `pad-md` × 2 = 16px
|
|
21
|
+
* ícone = `icon-2xs` → `size-form-xs` = 28px
|
|
22
|
+
* gap = `gp-2xs` = 2px
|
|
23
|
+
*
|
|
24
|
+
* largura(n) = 16 + 28n + 2(n−1) = **30n + 14**
|
|
25
|
+
*
|
|
26
|
+
* Donde 1→44, 2→74, 3→104, 4→134.
|
|
27
|
+
*
|
|
28
|
+
* ⚠️ A primeira versão deste módulo usava `pad-2xl` (32px de padding) e chegava a
|
|
29
|
+
* `30n + 30` — 1→60, 3→120 — com a conclusão elegante de que o `ACTIONS_COLUMN_WIDTH`
|
|
30
|
+
* legado (120) "era exatamente 3 slots". **Falso**: 3 slots são 104, e 120 fica entre 3 e
|
|
31
|
+
* 4. O teste concordava porque derivava da mesma fórmula errada; quem pegou foi a medição
|
|
32
|
+
* no browser (`width: 64px` inline, `padding: 8px/8px`, botão 28px, folga 8px). É a L-064
|
|
33
|
+
* literal — teste escrito do mesmo modelo mental do código concorda por construção.
|
|
34
|
+
*
|
|
35
|
+
* ## O limite de 3 não é preferência estética
|
|
36
|
+
*
|
|
37
|
+
* É a capacidade da coluna que o componente já usava: dentro dos 120px legados sobram
|
|
38
|
+
* 104 úteis, e 4 ícones pedem 118. Ou a coluna cresce, ou o excedente vai pro menu. O
|
|
39
|
+
* default aqui é **mandar tudo pro menu**, porque coluna de ação larga empurra o conteúdo
|
|
40
|
+
* de dados e derrota o motivo de ela estar ancorada à direita.
|
|
41
|
+
*/
|
|
42
|
+
/** Quantos ícones cabem inline nos 120px que a coluna sempre usou. */
|
|
43
|
+
export declare const ACTIONS_INLINE_MAX = 3;
|
|
44
|
+
/** Largura da coluna pra `n` slots renderizados (ícones + o "…" quando existe). */
|
|
45
|
+
export declare function actionsWidthForSlots(slots: number): number;
|
|
46
|
+
/**
|
|
47
|
+
* Divide as ações visíveis de uma row entre inline e menu.
|
|
48
|
+
*
|
|
49
|
+
* Precedência — e a primeira regra existe pra não passar por cima de decisão explícita:
|
|
50
|
+
*
|
|
51
|
+
* 1. **Algum item marca `showInMenu`** → o consumer já decidiu o split; respeitado
|
|
52
|
+
* integralmente, sem limite de quantidade. Quem quer 5 ícones inline consegue.
|
|
53
|
+
* 2. Até `ACTIONS_INLINE_MAX` (3) itens → todos inline, sem "…". Uma ação só = um ícone
|
|
54
|
+
* só, que é o caso comum de "editar".
|
|
55
|
+
* 3. Mais de 3 → **todos** vão pro menu, e a coluna renderiza só o "…".
|
|
56
|
+
*/
|
|
57
|
+
export declare function splitActionSlots<T>(actions: DataTableActionItem<T>[], row: T): {
|
|
58
|
+
inline: DataTableActionItem<T>[];
|
|
59
|
+
menu: DataTableActionItem<T>[];
|
|
60
|
+
};
|
|
61
|
+
/** Slots renderizados: um por ícone inline, mais um pro "…" quando há menu. */
|
|
62
|
+
export declare function countActionSlots<T>(split: {
|
|
63
|
+
inline: DataTableActionItem<T>[];
|
|
64
|
+
menu: DataTableActionItem<T>[];
|
|
65
|
+
}): number;
|
|
66
|
+
/**
|
|
67
|
+
* Largura necessária pra uma coluna de ações, olhando as rows amostradas.
|
|
68
|
+
*
|
|
69
|
+
* Usa o **máximo** entre as rows: `hidden` pode variar por row (ex.: "cancelar" só em
|
|
70
|
+
* pedido aberto), e reservar pelo menor cortaria a row mais completa. Sem `getActions`
|
|
71
|
+
* ou sem rows, devolve `null` — quem chama decide o fallback.
|
|
72
|
+
*/
|
|
73
|
+
export declare function measureActionsWidth<T>(getActions: ((params: {
|
|
74
|
+
row: T;
|
|
75
|
+
}) => DataTableActionItem<T>[]) | undefined, rows: T[]): number | null;
|
|
76
|
+
//# sourceMappingURL=action-slots.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-slots.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ui/DataTable/utils/action-slots.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE/D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAEH,sEAAsE;AACtE,eAAO,MAAM,kBAAkB,IAAI,CAAC;AAEpC,mFAAmF;AACnF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE1D;AAOD;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAChC,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,EAAE,EACjC,GAAG,EAAE,CAAC,GACL;IAAE,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC;IAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAA;CAAE,CAetE;AAED,+EAA+E;AAC/E,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,KAAK,EAAE;IACzC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC;IACjC,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC;CAChC,GAAG,MAAM,CAET;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EACnC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IAAE,GAAG,EAAE,CAAC,CAAA;CAAE,KAAK,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,EAC1E,IAAI,EAAE,CAAC,EAAE,GACR,MAAM,GAAG,IAAI,CASf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calculate-column-widths.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ui/DataTable/utils/calculate-column-widths.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"calculate-column-widths.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ui/DataTable/utils/calculate-column-widths.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAO9D,iFAAiF;AACjF,eAAO,MAAM,oBAAoB,MAAM,CAAC;AACxC,oFAAoF;AACpF,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,sDAAsD;AACtD,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAEtC;;;;;GAKG;AACH,eAAO,MAAM,cAAc,QAAS,CAAC;AAErC;;;;;;;GAOG;AACH,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAyB5C,MAAM,WAAW,4BAA4B;IAC3C,iEAAiE;IACjE,cAAc,EAAE,MAAM,CAAC;IACvB,qDAAqD;IACrD,OAAO,EAAE,OAAO,CAAC;IACjB,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EACrC,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAAE,EAChC,IAAI,EAAE,CAAC,EAAE,EACT,OAAO,EAAE,4BAA4B,GACpC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAwLxB"}
|