@cloudgrid-io/ui 0.40.0 → 0.42.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/blocks/action-link.d.ts +31 -0
- package/dist/blocks/action-link.d.ts.map +1 -0
- package/dist/blocks/action-link.js +40 -0
- package/dist/blocks/action-link.js.map +1 -0
- package/dist/blocks/activity-row.d.ts +42 -0
- package/dist/blocks/activity-row.d.ts.map +1 -0
- package/dist/blocks/activity-row.js +37 -0
- package/dist/blocks/activity-row.js.map +1 -0
- package/dist/blocks/add-tile.d.ts +31 -0
- package/dist/blocks/add-tile.d.ts.map +1 -0
- package/dist/blocks/add-tile.js +29 -0
- package/dist/blocks/add-tile.js.map +1 -0
- package/dist/blocks/avatar-stack.d.ts +40 -0
- package/dist/blocks/avatar-stack.d.ts.map +1 -0
- package/dist/blocks/avatar-stack.js +41 -0
- package/dist/blocks/avatar-stack.js.map +1 -0
- package/dist/blocks/avatar.d.ts +31 -5
- package/dist/blocks/avatar.d.ts.map +1 -1
- package/dist/blocks/avatar.js +57 -9
- package/dist/blocks/avatar.js.map +1 -1
- package/dist/blocks/confirm-delete-dialog.d.ts.map +1 -1
- package/dist/blocks/confirm-delete-dialog.js +5 -1
- package/dist/blocks/confirm-delete-dialog.js.map +1 -1
- package/dist/blocks/copy-button.d.ts +59 -0
- package/dist/blocks/copy-button.d.ts.map +1 -0
- package/dist/blocks/copy-button.js +76 -0
- package/dist/blocks/copy-button.js.map +1 -0
- package/dist/blocks/dashed-banner.d.ts +36 -0
- package/dist/blocks/dashed-banner.d.ts.map +1 -0
- package/dist/blocks/dashed-banner.js +31 -0
- package/dist/blocks/dashed-banner.js.map +1 -0
- package/dist/blocks/dashed-line.d.ts +44 -0
- package/dist/blocks/dashed-line.d.ts.map +1 -0
- package/dist/blocks/dashed-line.js +46 -0
- package/dist/blocks/dashed-line.js.map +1 -0
- package/dist/blocks/empty-creations.d.ts +18 -1
- package/dist/blocks/empty-creations.d.ts.map +1 -1
- package/dist/blocks/empty-creations.js +25 -9
- package/dist/blocks/empty-creations.js.map +1 -1
- package/dist/blocks/entity-card.d.ts +37 -2
- package/dist/blocks/entity-card.d.ts.map +1 -1
- package/dist/blocks/entity-card.js +70 -7
- package/dist/blocks/entity-card.js.map +1 -1
- package/dist/blocks/filter-tabs.d.ts +45 -0
- package/dist/blocks/filter-tabs.d.ts.map +1 -0
- package/dist/blocks/filter-tabs.js +48 -0
- package/dist/blocks/filter-tabs.js.map +1 -0
- package/dist/blocks/header-menu.d.ts +54 -0
- package/dist/blocks/header-menu.d.ts.map +1 -0
- package/dist/blocks/header-menu.js +63 -0
- package/dist/blocks/header-menu.js.map +1 -0
- package/dist/blocks/header-pill.d.ts +41 -0
- package/dist/blocks/header-pill.d.ts.map +1 -0
- package/dist/blocks/header-pill.js +67 -0
- package/dist/blocks/header-pill.js.map +1 -0
- package/dist/blocks/icons.d.ts +19 -2
- package/dist/blocks/icons.d.ts.map +1 -1
- package/dist/blocks/icons.js +22 -2
- package/dist/blocks/icons.js.map +1 -1
- package/dist/blocks/locked-section.d.ts +36 -9
- package/dist/blocks/locked-section.d.ts.map +1 -1
- package/dist/blocks/locked-section.js +31 -6
- package/dist/blocks/locked-section.js.map +1 -1
- package/dist/blocks/menu-trigger.d.ts +35 -0
- package/dist/blocks/menu-trigger.d.ts.map +1 -0
- package/dist/blocks/menu-trigger.js +24 -0
- package/dist/blocks/menu-trigger.js.map +1 -0
- package/dist/blocks/meter.d.ts +9 -1
- package/dist/blocks/meter.d.ts.map +1 -1
- package/dist/blocks/meter.js +6 -2
- package/dist/blocks/meter.js.map +1 -1
- package/dist/blocks/phosphor-marks.d.ts +8 -2
- package/dist/blocks/phosphor-marks.d.ts.map +1 -1
- package/dist/blocks/phosphor-marks.js +12 -3
- package/dist/blocks/phosphor-marks.js.map +1 -1
- package/dist/blocks/ranked-list.d.ts +15 -1
- package/dist/blocks/ranked-list.d.ts.map +1 -1
- package/dist/blocks/ranked-list.js +18 -5
- package/dist/blocks/ranked-list.js.map +1 -1
- package/dist/blocks/scroll-rail.d.ts +15 -0
- package/dist/blocks/scroll-rail.d.ts.map +1 -0
- package/dist/blocks/scroll-rail.js +134 -0
- package/dist/blocks/scroll-rail.js.map +1 -0
- package/dist/blocks/section-heading.d.ts +21 -0
- package/dist/blocks/section-heading.d.ts.map +1 -0
- package/dist/blocks/section-heading.js +18 -0
- package/dist/blocks/section-heading.js.map +1 -0
- package/dist/blocks/shelf.d.ts +24 -9
- package/dist/blocks/shelf.d.ts.map +1 -1
- package/dist/blocks/shelf.js +52 -15
- package/dist/blocks/shelf.js.map +1 -1
- package/dist/blocks/stat-tile.d.ts +21 -1
- package/dist/blocks/stat-tile.d.ts.map +1 -1
- package/dist/blocks/stat-tile.js +11 -6
- package/dist/blocks/stat-tile.js.map +1 -1
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +13 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/cloudgrid-cn.d.ts +14 -0
- package/dist/lib/cloudgrid-cn.d.ts.map +1 -1
- package/dist/lib/cloudgrid-cn.js +17 -0
- package/dist/lib/cloudgrid-cn.js.map +1 -1
- package/dist/theme.css +2 -0
- package/dist/tokens/base.json +42 -2
- package/dist/tokens.css +18 -2
- package/dist/tokens.json +6 -2
- package/dist/ui/badge.d.ts +1 -1
- package/dist/ui/badge.d.ts.map +1 -1
- package/dist/ui/badge.js +19 -0
- package/dist/ui/badge.js.map +1 -1
- package/dist/ui/button.d.ts +5 -3
- package/dist/ui/button.d.ts.map +1 -1
- package/dist/ui/button.js +107 -43
- package/dist/ui/button.js.map +1 -1
- package/dist/ui/dialog.d.ts +52 -0
- package/dist/ui/dialog.d.ts.map +1 -1
- package/dist/ui/dialog.js +57 -5
- package/dist/ui/dialog.js.map +1 -1
- package/dist/ui/drawer.d.ts +1 -1
- package/dist/ui/table.d.ts +27 -0
- package/dist/ui/table.d.ts.map +1 -1
- package/dist/ui/table.js +39 -6
- package/dist/ui/table.js.map +1 -1
- package/dist/ui/tabs.d.ts +1 -1
- package/package.json +1 -1
package/dist/ui/table.d.ts
CHANGED
|
@@ -1,4 +1,31 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
+
/**
|
|
3
|
+
* The 2026 Figma list (#383): the Users table in the Admin frame, node
|
|
4
|
+
* 7406:5146. An N3 13px header with no rule under it, then rounded rows 2px
|
|
5
|
+
* apart, every other one on N1 at half strength, starting with the first.
|
|
6
|
+
*
|
|
7
|
+
* ## Rounded zebra rows on a real <table>
|
|
8
|
+
*
|
|
9
|
+
* This stays a `<table>`, so a screen reader keeps announcing rows and columns.
|
|
10
|
+
* Two things a table does not do on its own are done like this:
|
|
11
|
+
*
|
|
12
|
+
* - **The 2px between rows** is `border-separate` with `border-spacing: 0 2px`.
|
|
13
|
+
* Spacing is the only gap a table can put between rows. It also adds 2px
|
|
14
|
+
* above the header and below the last row, at the table's outer edges.
|
|
15
|
+
* - **The 12px corner** is on the CELLS, not the row: the first cell rounds
|
|
16
|
+
* its left corners and the last its right. A `<tr>` cannot clip its own
|
|
17
|
+
* background to its cells' corners, so the row paints nothing. Every ground
|
|
18
|
+
* (zebra, hover, selected) is painted by the cells, keyed off the row through
|
|
19
|
+
* `group/row`, so the corners clip it.
|
|
20
|
+
*
|
|
21
|
+
* Horizontal rhythm: the frame's rows are auto-layout with padding 12 and a
|
|
22
|
+
* 16px gap. Cells get 8px each side (8 + 8 = 16 between neighbours), and the
|
|
23
|
+
* first and last cell take 12 at the row's two ends.
|
|
24
|
+
*
|
|
25
|
+
* Row states, cell grounds over the zebra: hover (and a row whose menu is
|
|
26
|
+
* open) takes N1 at full strength, `bg-page`; `data-state="selected"` takes
|
|
27
|
+
* the primary tint, `bg-brand-tint`.
|
|
28
|
+
*/
|
|
2
29
|
declare function Table({ className, ...props }: React.ComponentProps<"table">): React.JSX.Element;
|
|
3
30
|
declare function TableHeader({ className, ...props }: React.ComponentProps<"thead">): React.JSX.Element;
|
|
4
31
|
declare function TableBody({ className, ...props }: React.ComponentProps<"tbody">): React.JSX.Element;
|
package/dist/ui/table.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../src/ui/table.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,iBAAS,KAAK,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../src/ui/table.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,iBAAS,KAAK,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,qBAgBpE;AAED,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,qBAQ1E;AAED,iBAAS,SAAS,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,qBAQxE;AAED,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,qBAW1E;AAED,iBAAS,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,qBAapE;AAED,iBAAS,SAAS,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,qBAWrE;AAED,iBAAS,SAAS,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,qBAcrE;AAED,iBAAS,YAAY,CAAC,EACpB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,qBAQjC;AAED,OAAO,EACL,KAAK,EACL,WAAW,EACX,SAAS,EACT,WAAW,EACX,SAAS,EACT,QAAQ,EACR,SAAS,EACT,YAAY,GACb,CAAA"}
|
package/dist/ui/table.js
CHANGED
|
@@ -2,26 +2,59 @@
|
|
|
2
2
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
3
|
import * as React from "react";
|
|
4
4
|
import { cn } from "../lib/cloudgrid-cn.js";
|
|
5
|
+
/**
|
|
6
|
+
* The 2026 Figma list (#383): the Users table in the Admin frame, node
|
|
7
|
+
* 7406:5146. An N3 13px header with no rule under it, then rounded rows 2px
|
|
8
|
+
* apart, every other one on N1 at half strength, starting with the first.
|
|
9
|
+
*
|
|
10
|
+
* ## Rounded zebra rows on a real <table>
|
|
11
|
+
*
|
|
12
|
+
* This stays a `<table>`, so a screen reader keeps announcing rows and columns.
|
|
13
|
+
* Two things a table does not do on its own are done like this:
|
|
14
|
+
*
|
|
15
|
+
* - **The 2px between rows** is `border-separate` with `border-spacing: 0 2px`.
|
|
16
|
+
* Spacing is the only gap a table can put between rows. It also adds 2px
|
|
17
|
+
* above the header and below the last row, at the table's outer edges.
|
|
18
|
+
* - **The 12px corner** is on the CELLS, not the row: the first cell rounds
|
|
19
|
+
* its left corners and the last its right. A `<tr>` cannot clip its own
|
|
20
|
+
* background to its cells' corners, so the row paints nothing. Every ground
|
|
21
|
+
* (zebra, hover, selected) is painted by the cells, keyed off the row through
|
|
22
|
+
* `group/row`, so the corners clip it.
|
|
23
|
+
*
|
|
24
|
+
* Horizontal rhythm: the frame's rows are auto-layout with padding 12 and a
|
|
25
|
+
* 16px gap. Cells get 8px each side (8 + 8 = 16 between neighbours), and the
|
|
26
|
+
* first and last cell take 12 at the row's two ends.
|
|
27
|
+
*
|
|
28
|
+
* Row states, cell grounds over the zebra: hover (and a row whose menu is
|
|
29
|
+
* open) takes N1 at full strength, `bg-page`; `data-state="selected"` takes
|
|
30
|
+
* the primary tint, `bg-brand-tint`.
|
|
31
|
+
*/
|
|
5
32
|
function Table({ className, ...props }) {
|
|
6
|
-
return (_jsx("div", { "data-slot": "table-container", className: "relative w-full overflow-x-auto", children: _jsx("table", { "data-slot": "table", className: cn("w-full caption-bottom text-body-sm", className), ...props }) }));
|
|
33
|
+
return (_jsx("div", { "data-slot": "table-container", className: "relative w-full overflow-x-auto", children: _jsx("table", { "data-slot": "table", className: cn("w-full caption-bottom border-separate border-spacing-x-0 border-spacing-y-0.5 text-body-sm text-ink", className), ...props }) }));
|
|
7
34
|
}
|
|
8
35
|
function TableHeader({ className, ...props }) {
|
|
9
|
-
return (_jsx("thead", { "data-slot": "table-header", className:
|
|
36
|
+
return (_jsx("thead", { "data-slot": "table-header", className: className, ...props }));
|
|
10
37
|
}
|
|
11
38
|
function TableBody({ className, ...props }) {
|
|
12
|
-
return (_jsx("tbody", { "data-slot": "table-body", className:
|
|
39
|
+
return (_jsx("tbody", { "data-slot": "table-body", className: className, ...props }));
|
|
13
40
|
}
|
|
14
41
|
function TableFooter({ className, ...props }) {
|
|
15
42
|
return (_jsx("tfoot", { "data-slot": "table-footer", className: cn("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0", className), ...props }));
|
|
16
43
|
}
|
|
17
44
|
function TableRow({ className, ...props }) {
|
|
18
|
-
return (_jsx("tr", { "data-slot": "table-row", className: cn(
|
|
45
|
+
return (_jsx("tr", { "data-slot": "table-row", className: cn(
|
|
46
|
+
// No ground of its own: see the docblock on Table. The cells read
|
|
47
|
+
// the row's parity, hover and selection through this group.
|
|
48
|
+
"group/row", className), ...props }));
|
|
19
49
|
}
|
|
20
50
|
function TableHead({ className, ...props }) {
|
|
21
|
-
return (_jsx("th", { "data-slot": "table-head", className: cn("
|
|
51
|
+
return (_jsx("th", { "data-slot": "table-head", className: cn("px-2 py-2 text-left align-middle text-caption font-normal whitespace-nowrap text-steel first:pl-3 last:pr-3 [&:has([role=checkbox])]:pr-0", className), ...props }));
|
|
22
52
|
}
|
|
23
53
|
function TableCell({ className, ...props }) {
|
|
24
|
-
return (_jsx("td", { "data-slot": "table-cell", className: cn("
|
|
54
|
+
return (_jsx("td", { "data-slot": "table-cell", className: cn("px-2 py-2 align-middle whitespace-nowrap transition-colors first:rounded-l-md first:pl-3 last:rounded-r-md last:pr-3 [&:has([role=checkbox])]:pr-0",
|
|
55
|
+
// The zebra, then the states over it. Odd first: the first body row
|
|
56
|
+
// is tinted.
|
|
57
|
+
"group-odd/row:bg-page/50 group-hover/row:bg-page group-has-aria-expanded/row:bg-page group-data-[state=selected]/row:bg-brand-tint", className), ...props }));
|
|
25
58
|
}
|
|
26
59
|
function TableCaption({ className, ...props }) {
|
|
27
60
|
return (_jsx("caption", { "data-slot": "table-caption", className: cn("mt-4 text-body-sm text-muted-foreground", className), ...props }));
|
package/dist/ui/table.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.js","sourceRoot":"","sources":["../../src/ui/table.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAA;AAEvC,SAAS,KAAK,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAiC;IACnE,OAAO,CACL,2BACY,iBAAiB,EAC3B,SAAS,EAAC,iCAAiC,YAE3C,6BACY,OAAO,EACjB,SAAS,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"table.js","sourceRoot":"","sources":["../../src/ui/table.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAA;AAEvC;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,SAAS,KAAK,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAiC;IACnE,OAAO,CACL,2BACY,iBAAiB,EAC3B,SAAS,EAAC,iCAAiC,YAE3C,6BACY,OAAO,EACjB,SAAS,EAAE,EAAE,CACX,qGAAqG,EACrG,SAAS,CACV,KACG,KAAK,GACT,GACE,CACP,CAAA;AACH,CAAC;AAED,SAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAiC;IACzE,OAAO,CACL,6BACY,cAAc,EACxB,SAAS,EAAE,SAAS,KAChB,KAAK,GACT,CACH,CAAA;AACH,CAAC;AAED,SAAS,SAAS,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAiC;IACvE,OAAO,CACL,6BACY,YAAY,EACtB,SAAS,EAAE,SAAS,KAChB,KAAK,GACT,CACH,CAAA;AACH,CAAC;AAED,SAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAiC;IACzE,OAAO,CACL,6BACY,cAAc,EACxB,SAAS,EAAE,EAAE,CACX,yDAAyD,EACzD,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAA;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAA8B;IACnE,OAAO,CACL,0BACY,WAAW,EACrB,SAAS,EAAE,EAAE;QACX,kEAAkE;QAClE,4DAA4D;QAC5D,WAAW,EACX,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAA;AACH,CAAC;AAED,SAAS,SAAS,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAA8B;IACpE,OAAO,CACL,0BACY,YAAY,EACtB,SAAS,EAAE,EAAE,CACX,2IAA2I,EAC3I,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAA;AACH,CAAC;AAED,SAAS,SAAS,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAA8B;IACpE,OAAO,CACL,0BACY,YAAY,EACtB,SAAS,EAAE,EAAE,CACX,oJAAoJ;QACpJ,oEAAoE;QACpE,aAAa;QACb,oIAAoI,EACpI,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAA;AACH,CAAC;AAED,SAAS,YAAY,CAAC,EACpB,SAAS,EACT,GAAG,KAAK,EACwB;IAChC,OAAO,CACL,+BACY,eAAe,EACzB,SAAS,EAAE,EAAE,CAAC,yCAAyC,EAAE,SAAS,CAAC,KAC/D,KAAK,GACT,CACH,CAAA;AACH,CAAC;AAED,OAAO,EACL,KAAK,EACL,WAAW,EACX,SAAS,EACT,WAAW,EACX,SAAS,EACT,QAAQ,EACR,SAAS,EACT,YAAY,GACb,CAAA"}
|
package/dist/ui/tabs.d.ts
CHANGED
|
@@ -49,7 +49,7 @@ import { type VariantProps } from "class-variance-authority";
|
|
|
49
49
|
declare function scrollActiveTabIntoView(list: HTMLElement | null | undefined): void;
|
|
50
50
|
declare function Tabs({ className, orientation, ...props }: TabsPrimitive.Root.Props): React.JSX.Element;
|
|
51
51
|
declare const tabsListVariants: (props?: ({
|
|
52
|
-
variant?: "
|
|
52
|
+
variant?: "pill" | "line" | "default" | null | undefined;
|
|
53
53
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
54
54
|
declare function TabsList({ className, variant, ref, ...props }: TabsPrimitive.List.Props & VariantProps<typeof tabsListVariants>): React.JSX.Element;
|
|
55
55
|
declare function TabsTrigger({ className, ...props }: TabsPrimitive.Tab.Props): React.JSX.Element;
|
package/package.json
CHANGED