@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.
Files changed (126) hide show
  1. package/dist/blocks/action-link.d.ts +31 -0
  2. package/dist/blocks/action-link.d.ts.map +1 -0
  3. package/dist/blocks/action-link.js +40 -0
  4. package/dist/blocks/action-link.js.map +1 -0
  5. package/dist/blocks/activity-row.d.ts +42 -0
  6. package/dist/blocks/activity-row.d.ts.map +1 -0
  7. package/dist/blocks/activity-row.js +37 -0
  8. package/dist/blocks/activity-row.js.map +1 -0
  9. package/dist/blocks/add-tile.d.ts +31 -0
  10. package/dist/blocks/add-tile.d.ts.map +1 -0
  11. package/dist/blocks/add-tile.js +29 -0
  12. package/dist/blocks/add-tile.js.map +1 -0
  13. package/dist/blocks/avatar-stack.d.ts +40 -0
  14. package/dist/blocks/avatar-stack.d.ts.map +1 -0
  15. package/dist/blocks/avatar-stack.js +41 -0
  16. package/dist/blocks/avatar-stack.js.map +1 -0
  17. package/dist/blocks/avatar.d.ts +31 -5
  18. package/dist/blocks/avatar.d.ts.map +1 -1
  19. package/dist/blocks/avatar.js +57 -9
  20. package/dist/blocks/avatar.js.map +1 -1
  21. package/dist/blocks/confirm-delete-dialog.d.ts.map +1 -1
  22. package/dist/blocks/confirm-delete-dialog.js +5 -1
  23. package/dist/blocks/confirm-delete-dialog.js.map +1 -1
  24. package/dist/blocks/copy-button.d.ts +59 -0
  25. package/dist/blocks/copy-button.d.ts.map +1 -0
  26. package/dist/blocks/copy-button.js +76 -0
  27. package/dist/blocks/copy-button.js.map +1 -0
  28. package/dist/blocks/dashed-banner.d.ts +36 -0
  29. package/dist/blocks/dashed-banner.d.ts.map +1 -0
  30. package/dist/blocks/dashed-banner.js +31 -0
  31. package/dist/blocks/dashed-banner.js.map +1 -0
  32. package/dist/blocks/dashed-line.d.ts +44 -0
  33. package/dist/blocks/dashed-line.d.ts.map +1 -0
  34. package/dist/blocks/dashed-line.js +46 -0
  35. package/dist/blocks/dashed-line.js.map +1 -0
  36. package/dist/blocks/empty-creations.d.ts +18 -1
  37. package/dist/blocks/empty-creations.d.ts.map +1 -1
  38. package/dist/blocks/empty-creations.js +25 -9
  39. package/dist/blocks/empty-creations.js.map +1 -1
  40. package/dist/blocks/entity-card.d.ts +37 -2
  41. package/dist/blocks/entity-card.d.ts.map +1 -1
  42. package/dist/blocks/entity-card.js +70 -7
  43. package/dist/blocks/entity-card.js.map +1 -1
  44. package/dist/blocks/filter-tabs.d.ts +45 -0
  45. package/dist/blocks/filter-tabs.d.ts.map +1 -0
  46. package/dist/blocks/filter-tabs.js +48 -0
  47. package/dist/blocks/filter-tabs.js.map +1 -0
  48. package/dist/blocks/header-menu.d.ts +54 -0
  49. package/dist/blocks/header-menu.d.ts.map +1 -0
  50. package/dist/blocks/header-menu.js +63 -0
  51. package/dist/blocks/header-menu.js.map +1 -0
  52. package/dist/blocks/header-pill.d.ts +41 -0
  53. package/dist/blocks/header-pill.d.ts.map +1 -0
  54. package/dist/blocks/header-pill.js +67 -0
  55. package/dist/blocks/header-pill.js.map +1 -0
  56. package/dist/blocks/icons.d.ts +19 -2
  57. package/dist/blocks/icons.d.ts.map +1 -1
  58. package/dist/blocks/icons.js +22 -2
  59. package/dist/blocks/icons.js.map +1 -1
  60. package/dist/blocks/locked-section.d.ts +36 -9
  61. package/dist/blocks/locked-section.d.ts.map +1 -1
  62. package/dist/blocks/locked-section.js +31 -6
  63. package/dist/blocks/locked-section.js.map +1 -1
  64. package/dist/blocks/menu-trigger.d.ts +35 -0
  65. package/dist/blocks/menu-trigger.d.ts.map +1 -0
  66. package/dist/blocks/menu-trigger.js +24 -0
  67. package/dist/blocks/menu-trigger.js.map +1 -0
  68. package/dist/blocks/meter.d.ts +9 -1
  69. package/dist/blocks/meter.d.ts.map +1 -1
  70. package/dist/blocks/meter.js +6 -2
  71. package/dist/blocks/meter.js.map +1 -1
  72. package/dist/blocks/phosphor-marks.d.ts +8 -2
  73. package/dist/blocks/phosphor-marks.d.ts.map +1 -1
  74. package/dist/blocks/phosphor-marks.js +12 -3
  75. package/dist/blocks/phosphor-marks.js.map +1 -1
  76. package/dist/blocks/ranked-list.d.ts +15 -1
  77. package/dist/blocks/ranked-list.d.ts.map +1 -1
  78. package/dist/blocks/ranked-list.js +18 -5
  79. package/dist/blocks/ranked-list.js.map +1 -1
  80. package/dist/blocks/scroll-rail.d.ts +15 -0
  81. package/dist/blocks/scroll-rail.d.ts.map +1 -0
  82. package/dist/blocks/scroll-rail.js +134 -0
  83. package/dist/blocks/scroll-rail.js.map +1 -0
  84. package/dist/blocks/section-heading.d.ts +21 -0
  85. package/dist/blocks/section-heading.d.ts.map +1 -0
  86. package/dist/blocks/section-heading.js +18 -0
  87. package/dist/blocks/section-heading.js.map +1 -0
  88. package/dist/blocks/shelf.d.ts +24 -9
  89. package/dist/blocks/shelf.d.ts.map +1 -1
  90. package/dist/blocks/shelf.js +52 -15
  91. package/dist/blocks/shelf.js.map +1 -1
  92. package/dist/blocks/stat-tile.d.ts +21 -1
  93. package/dist/blocks/stat-tile.d.ts.map +1 -1
  94. package/dist/blocks/stat-tile.js +11 -6
  95. package/dist/blocks/stat-tile.js.map +1 -1
  96. package/dist/index.d.ts +13 -0
  97. package/dist/index.d.ts.map +1 -1
  98. package/dist/index.js +13 -0
  99. package/dist/index.js.map +1 -1
  100. package/dist/lib/cloudgrid-cn.d.ts +14 -0
  101. package/dist/lib/cloudgrid-cn.d.ts.map +1 -1
  102. package/dist/lib/cloudgrid-cn.js +17 -0
  103. package/dist/lib/cloudgrid-cn.js.map +1 -1
  104. package/dist/theme.css +2 -0
  105. package/dist/tokens/base.json +42 -2
  106. package/dist/tokens.css +18 -2
  107. package/dist/tokens.json +6 -2
  108. package/dist/ui/badge.d.ts +1 -1
  109. package/dist/ui/badge.d.ts.map +1 -1
  110. package/dist/ui/badge.js +19 -0
  111. package/dist/ui/badge.js.map +1 -1
  112. package/dist/ui/button.d.ts +5 -3
  113. package/dist/ui/button.d.ts.map +1 -1
  114. package/dist/ui/button.js +107 -43
  115. package/dist/ui/button.js.map +1 -1
  116. package/dist/ui/dialog.d.ts +52 -0
  117. package/dist/ui/dialog.d.ts.map +1 -1
  118. package/dist/ui/dialog.js +57 -5
  119. package/dist/ui/dialog.js.map +1 -1
  120. package/dist/ui/drawer.d.ts +1 -1
  121. package/dist/ui/table.d.ts +27 -0
  122. package/dist/ui/table.d.ts.map +1 -1
  123. package/dist/ui/table.js +39 -6
  124. package/dist/ui/table.js.map +1 -1
  125. package/dist/ui/tabs.d.ts +1 -1
  126. package/package.json +1 -1
@@ -71,6 +71,34 @@ export const ENTITY_KIND_TINT = {
71
71
  * `SIZE_STYLE` and typecheck says so.
72
72
  */
73
73
  export const ENTITY_CARD_SIZE_ORDER = ["default", "compact", "row"];
74
+ /**
75
+ * The rail tiles (#382), larger first. A type of their own rather than two
76
+ * more entries in `EntityCardSize`: a consumer that keeps a
77
+ * `Record<EntityCardSize, …>` of grid tracks (the Console's `entityCardTrack`)
78
+ * would otherwise stop compiling on upgrade, and a tile has no grid track.
79
+ */
80
+ export const ENTITY_CARD_TILE_SIZE_ORDER = ["tile-lg", "tile"];
81
+ /**
82
+ * THE TWO TILES (#382, spec §4.4 and §4.8, Figma "Tile" `4122:250`).
83
+ *
84
+ * The 2026 Home lays cards in horizontal rails, and a rail needs a card whose
85
+ * box is fixed rather than one that stretches to a grid track: 329 x 242 under
86
+ * My Creations (`tile-lg`), 250 x 184 under On the Grid (`tile`). Both are the
87
+ * media card unchanged inside: the 159/92 picture at an 11px corner, the 20px
88
+ * kind badge, the name and the dot at rest, the panel on hover and focus.
89
+ *
90
+ * What differs: the box is fixed and does not shrink; `tile-lg` puts 16 rather
91
+ * than 12 under the picture and centres its name row in the height left over,
92
+ * as the frame does; neither draws a stat rule or a footer, because at a fixed
93
+ * height those would push the name out of the box. The count a tile does show
94
+ * is `restStat`, on the name row.
95
+ *
96
+ * `AddTile` reads this table, so the dashed Add tile is the same box.
97
+ */
98
+ export const ENTITY_CARD_TILE_BOX = {
99
+ tile: "w-62.5 h-46",
100
+ "tile-lg": "w-[329px] h-60.5",
101
+ };
74
102
  /**
75
103
  * WHAT EACH SIZE CHANGES, in one table.
76
104
  *
@@ -110,6 +138,30 @@ const SIZE_STYLE = {
110
138
  reveal: "gap-2 px-3 pt-3 pb-2",
111
139
  revealTitle: "text-caption",
112
140
  },
141
+ // The default card's measurements in a fixed box (#382).
142
+ tile: {
143
+ cardSpacing: "",
144
+ body: "gap-3",
145
+ title: "text-body-sm leading-none",
146
+ description: "text-body-sm",
147
+ stats: "",
148
+ nameRow: "gap-2 px-[11px] pb-[11px]",
149
+ reveal: "gap-3 px-[15px] pt-[15px] pb-[11px]",
150
+ revealTitle: "text-body-sm",
151
+ },
152
+ // 16 under the picture, 16 aside, and the name row takes the rest of the
153
+ // 242 with the name centred in it (Figma I11324:91033). The panel pads
154
+ // 16/16/12/16.
155
+ "tile-lg": {
156
+ cardSpacing: "",
157
+ body: "gap-4",
158
+ title: "text-body-sm leading-none",
159
+ description: "text-body-sm",
160
+ stats: "",
161
+ nameRow: "flex-1 gap-2 px-4",
162
+ reveal: "gap-3 px-4 pt-4 pb-3",
163
+ revealTitle: "text-body-sm",
164
+ },
113
165
  row: {
114
166
  cardSpacing: "[--card-spacing:--spacing(3)]",
115
167
  body: "gap-0.5",
@@ -267,7 +319,7 @@ function statusDotFrom(status) {
267
319
  return null;
268
320
  return _jsx(EntityStateDot, { status: props.status, label: props.label });
269
321
  }
270
- function EntityCard({ title, slug, description, size = "default", titleLines = 2, descriptionLines = 1, status, statusDot, headerActions, stats, seed, previewUrl, kind, reveal = false, openDisabledReason, dashboardHref, settingsHref, primaryAction = "details", linkComponent, creator, panelMeta, href, ariaLabel, meta, footer, className, children, ...props }) {
322
+ function EntityCard({ title, slug, description, size = "default", titleLines = 2, descriptionLines = 1, status, statusDot, headerActions, stats, restStat, seed, previewUrl, kind, reveal = false, openDisabledReason, dashboardHref, settingsHref, primaryAction = "details", linkComponent, creator, panelMeta, href, ariaLabel, meta, footer, className, children, ...props }) {
271
323
  const sized = SIZE_STYLE[size];
272
324
  // The reveal owns the preview, so `seed` is what it needs and all it needs: a
273
325
  // panel over nothing is not a panel. It deliberately does NOT ask for an
@@ -278,7 +330,12 @@ function EntityCard({ title, slug, description, size = "default", titleLines = 2
278
330
  // already shows everything the panel carries, so there is nothing to reveal —
279
331
  // see the size note at the top. Its two actions are rendered at the end of the
280
332
  // row and appear on hover, which is the half of the behaviour that survives.
281
- const revealed = reveal && Boolean(seed) && size !== "row";
333
+ //
334
+ // A tile always reveals when it has a picture (#382): its box is fixed, and the
335
+ // full body would overflow it, so a tile's rest state is the name row whatever
336
+ // `reveal` says.
337
+ const tile = size === "tile" || size === "tile-lg";
338
+ const revealed = (reveal || tile) && Boolean(seed) && size !== "row";
282
339
  // Whether the live link has anywhere to go. One boolean, read in four places —
283
340
  // the live link's own markup, which door owns the stretched layer, the pair's
284
341
  // order, and the reason line — so they can never disagree about which state
@@ -324,7 +381,8 @@ function EntityCard({ title, slug, description, size = "default", titleLines = 2
324
381
  // carry it and some do not has two card heights in one grid. Which stat
325
382
  // survives is the caller's order, not a rule here: a card that reordered its
326
383
  // caller's stats would be deciding which one matters.
327
- const shownStats = stats && size === "compact" ? stats.slice(0, 1) : stats;
384
+ // A tile's height is fixed, so it has no room for a stat rule (#382).
385
+ const shownStats = tile ? undefined : stats && size === "compact" ? stats.slice(0, 1) : stats;
328
386
  // One line on compact and on row, whatever the caller asked for. See the note
329
387
  // on the prop: this is a height rule, not a preference.
330
388
  const clampDescription = size === "default" && descriptionLines === 2 ? "line-clamp-2" : "truncate";
@@ -340,7 +398,9 @@ function EntityCard({ title, slug, description, size = "default", titleLines = 2
340
398
  // this change: a card with no panel has nowhere to move that information TO,
341
399
  // so it keeps the body it always had. Every existing caller that does not pass
342
400
  // `reveal` renders exactly as it did.
343
- const minimal = revealed;
401
+ // A tile without a picture still draws only the name row (#382), for the same
402
+ // reason: nothing else fits its fixed box.
403
+ const minimal = revealed || tile;
344
404
  /**
345
405
  * THE TWO ACTIONS. One pair, written once, used by the reveal panel and by the
346
406
  * row alike — because #182's premise is that every entity card offers the same
@@ -438,7 +498,7 @@ function EntityCard({ title, slug, description, size = "default", titleLines = 2
438
498
  // items-center against the title's first line, and -mt-1 to pull an
439
499
  // icon button's own padding back so the glyph optically lines up
440
500
  // with the title rather than sitting a couple of pixels low.
441
- className: "-mt-1 flex shrink-0 items-center gap-1", children: headerActions })) : null] }), description ? (_jsx("p", { dir: "auto", "data-slot": "entity-card-description", title: description, className: cn("m-0 text-body", sized.description, clampDescription), children: description })) : null, meta, _jsx("div", { "aria-hidden": "true", className: "grow" }), shownStats && shownStats.length > 0 ? (_jsx("div", { "data-slot": "entity-card-stats", className: cn("flex flex-wrap items-center border-t border-hairline text-caption text-body", sized.stats), children: shownStats.map((stat) => (_jsxs("span", { className: "inline-flex items-center gap-1.5", children: [stat.icon ? (_jsx("span", { "aria-hidden": "true", className: "inline-flex [&>svg]:size-4", children: stat.icon })) : null, stat.value, _jsx("span", { className: "sr-only", children: stat.label })] }, stat.label))) })) : null, footer] }));
501
+ className: "-mt-1 flex shrink-0 items-center gap-1", children: headerActions })) : null] }), description ? (_jsx("p", { dir: "auto", "data-slot": "entity-card-description", title: description, className: cn("m-0 text-body", sized.description, clampDescription), children: description })) : null, meta, _jsx("div", { "aria-hidden": "true", className: "grow" }), shownStats && shownStats.length > 0 ? (_jsx("div", { "data-slot": "entity-card-stats", className: cn("flex flex-wrap items-center border-t border-hairline text-caption text-body", sized.stats), children: shownStats.map((stat) => (_jsxs("span", { className: "inline-flex items-center gap-1.5", children: [stat.icon ? (_jsx("span", { "aria-hidden": "true", className: "inline-flex [&>svg]:size-4", children: stat.icon })) : null, stat.value, _jsx("span", { className: "sr-only", children: stat.label })] }, stat.label))) })) : null, tile ? null : footer] }));
442
502
  /**
443
503
  * THE REST STATE of a card that has a panel: the name, and the dot (#196).
444
504
  *
@@ -451,7 +511,7 @@ function EntityCard({ title, slug, description, size = "default", titleLines = 2
451
511
  * `truncate`, always: this row is one line by construction, and `titleLines`
452
512
  * is the body's rule, not this one's.
453
513
  */
454
- const nameRow = (_jsxs("div", { className: cn("flex w-full min-w-0 items-center", sized.nameRow), children: [_jsx("span", { dir: "auto", "data-slot": "entity-card-title", title: title, className: cn("min-w-0 flex-1 truncate font-medium text-ink", sized.title), children: title }), dot ? (_jsx("span", { "data-slot": "entity-card-state", className: "flex shrink-0 items-center", children: dot })) : null] }));
514
+ const nameRow = (_jsxs("div", { className: cn("flex w-full min-w-0 items-center", sized.nameRow), children: [_jsx("span", { dir: "auto", "data-slot": "entity-card-title", title: title, className: cn("min-w-0 flex-1 truncate font-medium text-ink", sized.title), children: title }), dot ? (_jsx("span", { "data-slot": "entity-card-state", className: "flex shrink-0 items-center", children: dot })) : null, restStat ? (_jsxs("span", { "data-slot": "entity-card-rest-stat", className: "inline-flex shrink-0 items-center gap-1 text-caption leading-none text-ink tabular-nums", children: [restStat.icon ? (_jsx("span", { "aria-hidden": "true", className: "inline-flex text-steel [&>svg]:size-3.5", children: restStat.icon })) : null, restStat.value, _jsx("span", { className: "sr-only", children: restStat.label })] })) : null] }));
455
515
  /**
456
516
  * The preview region, shared by all three sizes.
457
517
  *
@@ -666,7 +726,10 @@ function EntityCard({ title, slug, description, size = "default", titleLines = 2
666
726
  // anchor. As a direct grid item it must NOT be h-full: a grid area has a
667
727
  // definite height, so height:100% pins the card to the tallest card in
668
728
  // the row even when the grid was told `items-start`.
669
- href && !revealed && "h-full", sized.cardSpacing, className), ...props, children: [previewRegion(
729
+ href && !revealed && "h-full",
730
+ // A tile's box is fixed (#382): the rail lines them up. After `h-full`,
731
+ // so the tile's own height wins inside a link wrapper too.
732
+ tile && cn("shrink-0", ENTITY_CARD_TILE_BOX[size]), sized.cardSpacing, className), ...props, children: [previewRegion(
670
733
  // 159/92, the draft's ratio, and an 11px corner: the card's 12 less the
671
734
  // 1px pad around it. Written as the arithmetic rather than as a second
672
735
  // radius token, so the two can never drift apart.
@@ -1 +1 @@
1
- {"version":3,"file":"entity-card.js","sourceRoot":"","sources":["../../src/blocks/entity-card.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity-card.js","sourceRoot":"","sources":["../../src/blocks/entity-card.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ import * as React from "react";
2
+ import { Toggle } from "@base-ui/react/toggle";
3
+ import { ToggleGroup } from "@base-ui/react/toggle-group";
4
+ /**
5
+ * The filter tabs over a list: "Recent / Most Popular / Pinned" on Home's My
6
+ * Creations (#382, spec §4.4, Figma "tabs pills" `4957:3389`, "_tab pill"
7
+ * `4957:3384`).
8
+ *
9
+ * ## A toggle group, not a tablist
10
+ *
11
+ * They look like a tab strip and behave like a filter. There is one list and
12
+ * the selection orders it; nothing switches panels. `Tabs` is a tablist, which
13
+ * promises a reader a panel per tab and wires `aria-controls` to it, so a
14
+ * filter built on it announces something that is not there. This is a named
15
+ * `role="group"` of buttons carrying `aria-pressed` (Base UI's `ToggleGroup`,
16
+ * which also gives the arrow keys), the same semantics as the Console's own
17
+ * `SegmentedFilter`.
18
+ *
19
+ * ## Exactly one is pressed
20
+ *
21
+ * A filter with nothing selected is a list with no order. Base UI lets a single
22
+ * group be emptied by pressing the pressed item again; that change is dropped
23
+ * here, so `onValueChange` only ever receives a value and only when it changes.
24
+ *
25
+ * ## The look
26
+ *
27
+ * 24 tall, 8 aside, radius 8, Regular 15. Pressed: Ink on the page colour.
28
+ * The rest: muted, Ink on hover. The frame's inactive text is slate-500
29
+ * (3.41:1 on white); a label is content, so it takes `--cg-text-muted-strong`
30
+ * (#232). On a page-coloured page the pressed pill's ground matches the page,
31
+ * as the frame draws it: the darker text is what marks it.
32
+ */
33
+ declare function FilterTabs({ value, onValueChange, label, className, ...props }: Omit<ToggleGroup.Props, "value" | "defaultValue" | "onValueChange" | "multiple"> & {
34
+ /** The pressed tab's value. */
35
+ value: string;
36
+ /** Called with the newly pressed tab's value. Never called with nothing. */
37
+ onValueChange: (value: string) => void;
38
+ /** Names the group, e.g. "Filter my creations". */
39
+ label: string;
40
+ }): React.JSX.Element;
41
+ declare function FilterTab({ className, ...props }: Omit<Toggle.Props, "value"> & {
42
+ value: string;
43
+ }): React.JSX.Element;
44
+ export { FilterTab, FilterTabs };
45
+ //# sourceMappingURL=filter-tabs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter-tabs.d.ts","sourceRoot":"","sources":["../../src/blocks/filter-tabs.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAIzD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,iBAAS,UAAU,CAAC,EAClB,KAAK,EACL,aAAa,EACb,KAAK,EACL,SAAS,EACT,GAAG,KAAK,EACT,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,cAAc,GAAG,eAAe,GAAG,UAAU,CAAC,GAAG;IACpF,+BAA+B;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,4EAA4E;IAC5E,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACtC,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAA;CACd,qBAeA;AAED,iBAAS,SAAS,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,qBAa1F;AAED,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,CAAA"}
@@ -0,0 +1,48 @@
1
+ "use client";
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import * as React from "react";
4
+ import { Toggle } from "@base-ui/react/toggle";
5
+ import { ToggleGroup } from "@base-ui/react/toggle-group";
6
+ import { cn } from "../lib/cloudgrid-cn.js";
7
+ /**
8
+ * The filter tabs over a list: "Recent / Most Popular / Pinned" on Home's My
9
+ * Creations (#382, spec §4.4, Figma "tabs pills" `4957:3389`, "_tab pill"
10
+ * `4957:3384`).
11
+ *
12
+ * ## A toggle group, not a tablist
13
+ *
14
+ * They look like a tab strip and behave like a filter. There is one list and
15
+ * the selection orders it; nothing switches panels. `Tabs` is a tablist, which
16
+ * promises a reader a panel per tab and wires `aria-controls` to it, so a
17
+ * filter built on it announces something that is not there. This is a named
18
+ * `role="group"` of buttons carrying `aria-pressed` (Base UI's `ToggleGroup`,
19
+ * which also gives the arrow keys), the same semantics as the Console's own
20
+ * `SegmentedFilter`.
21
+ *
22
+ * ## Exactly one is pressed
23
+ *
24
+ * A filter with nothing selected is a list with no order. Base UI lets a single
25
+ * group be emptied by pressing the pressed item again; that change is dropped
26
+ * here, so `onValueChange` only ever receives a value and only when it changes.
27
+ *
28
+ * ## The look
29
+ *
30
+ * 24 tall, 8 aside, radius 8, Regular 15. Pressed: Ink on the page colour.
31
+ * The rest: muted, Ink on hover. The frame's inactive text is slate-500
32
+ * (3.41:1 on white); a label is content, so it takes `--cg-text-muted-strong`
33
+ * (#232). On a page-coloured page the pressed pill's ground matches the page,
34
+ * as the frame draws it: the darker text is what marks it.
35
+ */
36
+ function FilterTabs({ value, onValueChange, label, className, ...props }) {
37
+ return (_jsx(ToggleGroup, { "data-slot": "filter-tabs", "aria-label": label, value: [value], onValueChange: (next) => {
38
+ const picked = next[0];
39
+ if (picked === undefined || picked === value)
40
+ return;
41
+ onValueChange(String(picked));
42
+ }, className: cn("inline-flex items-center gap-1 text-ink", className), ...props }));
43
+ }
44
+ function FilterTab({ className, ...props }) {
45
+ return (_jsx(Toggle, { "data-slot": "filter-tab", className: cn("inline-flex h-6 shrink-0 items-center rounded-xs px-2 text-body-sm leading-none font-normal whitespace-nowrap text-faint-strong outline-none", "hover:text-ink data-[pressed]:bg-page data-[pressed]:text-ink", "focus-visible:ring-3 focus-visible:ring-ring", className), ...props }));
46
+ }
47
+ export { FilterTab, FilterTabs };
48
+ //# sourceMappingURL=filter-tabs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter-tabs.js","sourceRoot":"","sources":["../../src/blocks/filter-tabs.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAEzD,OAAO,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAA;AAEvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,SAAS,UAAU,CAAC,EAClB,KAAK,EACL,aAAa,EACb,KAAK,EACL,SAAS,EACT,GAAG,KAAK,EAQT;IACC,OAAO,CACL,KAAC,WAAW,iBACA,aAAa,gBACX,KAAK,EACjB,KAAK,EAAE,CAAC,KAAK,CAAC,EACd,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE;YACtB,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;YACtB,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,KAAK;gBAAE,OAAM;YACpD,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAA;QAC/B,CAAC,EACD,SAAS,EAAE,EAAE,CAAC,yCAAyC,EAAE,SAAS,CAAC,KAC/D,KAAK,GACT,CACH,CAAA;AACH,CAAC;AAED,SAAS,SAAS,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAmD;IACzF,OAAO,CACL,KAAC,MAAM,iBACK,YAAY,EACtB,SAAS,EAAE,EAAE,CACX,8IAA8I,EAC9I,+DAA+D,EAC/D,8CAA8C,EAC9C,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAA;AACH,CAAC;AAED,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,CAAA"}
@@ -0,0 +1,54 @@
1
+ import * as React from "react";
2
+ import { Menu as MenuPrimitive } from "@base-ui/react/menu";
3
+ import { DropdownMenuContent } from "../ui/dropdown-menu.js";
4
+ declare function HeaderMenuContent({ width, className, style, ...props }: React.ComponentProps<typeof DropdownMenuContent> & {
5
+ /** 252 for the grid and space menus (the default), 258 for the account menu. */
6
+ width?: number;
7
+ }): React.JSX.Element;
8
+ declare function HeaderMenuSection({ label, action, spaced, className, children, ...props }: Omit<MenuPrimitive.Group.Props, "children"> & {
9
+ /** The eyebrow: "Grid", "Space", "Shared with you". Drawn upper-case. */
10
+ label: React.ReactNode;
11
+ /** A trailing action on the header row, e.g. a `HeaderMenuAction` "+ New". */
12
+ action?: React.ReactNode;
13
+ /** 24px above the header row, for a second section. */
14
+ spaced?: boolean;
15
+ children?: React.ReactNode;
16
+ }): React.JSX.Element;
17
+ declare function HeaderMenuAction({ className, ...props }: MenuPrimitive.LinkItem.Props): React.JSX.Element;
18
+ declare function HeaderMenuRow({ children, leading, trailing, selected, size, href, render, onClick, disabled, closeOnClick, className, }: {
19
+ children: React.ReactNode;
20
+ /** An avatar or a 20px glyph before the label. Glyphs are toned slate-500. */
21
+ leading?: React.ReactNode;
22
+ /** A `HeaderMenuRowAction`, e.g. the selected row's gear. */
23
+ trailing?: React.ReactNode;
24
+ /** The current grid or space: the page colour, `aria-current`, "(current)" for a reader. */
25
+ selected?: boolean;
26
+ /** `default` 40 tall (grid and space menus), `lg` 44 tall (account menu). */
27
+ size?: "default" | "lg";
28
+ href?: string;
29
+ render?: MenuPrimitive.LinkItem.Props["render"];
30
+ onClick?: React.MouseEventHandler<HTMLElement>;
31
+ disabled?: boolean;
32
+ closeOnClick?: boolean;
33
+ className?: string;
34
+ }): React.JSX.Element;
35
+ declare function HeaderMenuRowAction({ label, icon, href, render, onClick, }: {
36
+ /** The accessible name, e.g. "Grid settings". */
37
+ label: string;
38
+ /** A 20px glyph, e.g. `MenuSettingsIcon`. */
39
+ icon: React.ReactNode;
40
+ href?: string;
41
+ render?: MenuPrimitive.LinkItem.Props["render"];
42
+ onClick?: React.MouseEventHandler<HTMLElement>;
43
+ }): React.JSX.Element;
44
+ declare function HeaderMenuSeparator({ className, ...props }: MenuPrimitive.Separator.Props): React.JSX.Element;
45
+ declare function HeaderMenuIdentity({ avatar, name, detail, className, }: {
46
+ /** The person's 64px avatar. */
47
+ avatar: React.ReactNode;
48
+ name: React.ReactNode;
49
+ /** The line under the name, e.g. "2 followers". */
50
+ detail?: React.ReactNode;
51
+ className?: string;
52
+ }): React.JSX.Element;
53
+ export { HeaderMenuAction, HeaderMenuContent, HeaderMenuIdentity, HeaderMenuRow, HeaderMenuRowAction, HeaderMenuSection, HeaderMenuSeparator, };
54
+ //# sourceMappingURL=header-menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"header-menu.d.ts","sourceRoot":"","sources":["../../src/blocks/header-menu.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
+ import * as React from "react";
4
+ import { Menu as MenuPrimitive } from "@base-ui/react/menu";
5
+ import { cn } from "../lib/cloudgrid-cn.js";
6
+ import { DropdownMenuContent } from "../ui/dropdown-menu.js";
7
+ /**
8
+ * THE HEADER MENUS' LOOK (#381): the grid, space and account menus of the
9
+ * CloudGrid-2026 header (frames 11324:90626, 11324:90892, 11324:92125).
10
+ *
11
+ * A block over the copy-in `DropdownMenu` primitive, not a `look` prop on it:
12
+ * the primitive stays unopinionated for every other menu, and these parts carry
13
+ * the header's measurements.
14
+ *
15
+ * panel white, a 1px `--cg-border-control` line, radius 16, the card
16
+ * shadow, 12/8 padding, 2px between rows; 252 wide (account 258)
17
+ * section an eyebrow label in slate-500 with an optional action ("+ New" in
18
+ * `--cg-tertiary-dark`); 24 above it when `spaced` (SHARED WITH YOU)
19
+ * row 40 tall (44 for the account menu), 8/20 padding, radius 12,
20
+ * Medium 15 Ink; selected on the page colour with a trailing action
21
+ * (the gear) whose right edge is 20 from the row's
22
+ * band a 24px band with a 1px page-colour line, before Sign out
23
+ *
24
+ * Two calls the frames left open (spec §8.3, §8.4): row text is Ink (#222), not
25
+ * the frames' #000; Sign out is the same 44px row as Profile. Hover and keyboard
26
+ * highlight are not drawn in the frames and use `--cg-hover`.
27
+ */
28
+ const PANEL_WIDTH = 252;
29
+ function HeaderMenuContent({ width = PANEL_WIDTH, className, style, ...props }) {
30
+ return (_jsx(DropdownMenuContent, { "data-variant": "header", className: cn(
31
+ // 8/12 padding less the 1px inside stroke, so the outer box is the frame's.
32
+ "flex min-w-0 flex-col gap-0.5 rounded-xl border border-line bg-card px-[7px] py-[11px] text-ink shadow-card ring-0", className), style: { width, ...style }, ...props }));
33
+ }
34
+ function HeaderMenuSection({ label, action, spaced = false, className, children, ...props }) {
35
+ return (_jsxs(MenuPrimitive.Group, { "data-slot": "header-menu-section", className: cn("flex flex-col gap-0.5", className), ...props, children: [_jsxs("div", { "data-slot": "header-menu-section-header", className: cn("flex items-center justify-between px-5 pb-2", spaced && "pt-6"), children: [_jsx(MenuPrimitive.GroupLabel, { "data-slot": "header-menu-section-label", className: "text-eyebrow text-steel uppercase", children: label }), action] }), children] }));
36
+ }
37
+ function HeaderMenuAction({ className, ...props }) {
38
+ return (_jsx(MenuPrimitive.LinkItem, { "data-slot": "header-menu-action", className: cn("rounded-xs text-body-sm font-semibold text-cyan-dark no-underline outline-none", "data-highlighted:bg-(--cg-hover) focus-visible:ring-3 focus-visible:ring-ring", className), ...props }));
39
+ }
40
+ function HeaderMenuRow({ children, leading, trailing, selected = false, size = "default", href, render, onClick, disabled, closeOnClick, className, }) {
41
+ const itemClass = cn("flex min-w-0 flex-1 items-center gap-3 self-stretch rounded-md px-5 text-body-sm leading-none font-medium text-ink no-underline outline-none", "focus-visible:ring-3 focus-visible:ring-ring", "data-disabled:cursor-default data-disabled:opacity-50", size === "lg" ? "py-3" : "py-2", trailing && "pr-3");
42
+ const content = (_jsxs(_Fragment, { children: [leading ? (_jsx("span", { "data-slot": "header-menu-row-leading", className: "inline-flex shrink-0 text-steel", children: leading })) : null, _jsx("span", { "data-slot": "header-menu-row-label", className: "-my-1 truncate leading-normal", children: children }), selected ? _jsx("span", { className: "sr-only", children: " (current)" }) : null] }));
43
+ const shared = {
44
+ "data-slot": "header-menu-item",
45
+ "aria-current": selected ? "true" : undefined,
46
+ className: itemClass,
47
+ onClick,
48
+ closeOnClick,
49
+ };
50
+ return (_jsxs("div", { "data-slot": "header-menu-row", "data-selected": selected ? "" : undefined, className: cn("flex items-center self-stretch rounded-md", size === "lg" ? "min-h-11" : "min-h-10", selected ? "bg-page" : "has-[[data-highlighted]]:bg-(--cg-hover)", trailing && "pr-4", className), children: [href || render ? (_jsx(MenuPrimitive.LinkItem, { ...shared, href: href, render: render, children: content })) : (_jsx(MenuPrimitive.Item, { ...shared, disabled: disabled, children: content })), trailing] }));
51
+ }
52
+ function HeaderMenuRowAction({ label, icon, href, render, onClick, }) {
53
+ const className = cn("inline-flex size-7 shrink-0 items-center justify-center rounded-xs text-steel no-underline outline-none", "data-highlighted:bg-(--cg-hover) focus-visible:ring-3 focus-visible:ring-ring [&_svg]:size-5");
54
+ return href || render ? (_jsx(MenuPrimitive.LinkItem, { "data-slot": "header-menu-row-action", "aria-label": label, href: href, render: render, onClick: onClick, className: className, children: icon })) : (_jsx(MenuPrimitive.Item, { "data-slot": "header-menu-row-action", "aria-label": label, onClick: onClick, className: className, children: icon }));
55
+ }
56
+ function HeaderMenuSeparator({ className, ...props }) {
57
+ return (_jsx(MenuPrimitive.Separator, { "data-slot": "header-menu-separator", className: cn("relative h-6 shrink-0 after:absolute after:inset-x-0 after:top-1/2 after:h-px after:bg-page", className), ...props }));
58
+ }
59
+ function HeaderMenuIdentity({ avatar, name, detail, className, }) {
60
+ return (_jsxs("div", { "data-slot": "header-menu-identity", className: cn("flex items-center gap-4 pb-1.5", className), children: [avatar, _jsxs("div", { className: "flex min-w-0 flex-col", children: [_jsx("span", { className: "truncate text-body-sm font-medium text-ink", children: name }), detail ? _jsx("span", { className: "truncate text-body-sm text-steel", children: detail }) : null] })] }));
61
+ }
62
+ export { HeaderMenuAction, HeaderMenuContent, HeaderMenuIdentity, HeaderMenuRow, HeaderMenuRowAction, HeaderMenuSection, HeaderMenuSeparator, };
63
+ //# sourceMappingURL=header-menu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"header-menu.js","sourceRoot":"","sources":["../../src/blocks/header-menu.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ import * as React from "react";
2
+ import { useRender } from "@base-ui/react/use-render";
3
+ /**
4
+ * THE HEADER PILL (#381): the centred pill of the CloudGrid-2026 header
5
+ * (frame 11324:90751), absorbed from the Console's hand-built `PillHeader`.
6
+ *
7
+ * Measured: white, a 1px hairline drawn inside, radius 12, the card shadow,
8
+ * 2/6/2/4 padding, 4 between items; the logo cell 8/20/8/12 around a 23px logo
9
+ * in the accent role; tabs and New 44×32, radius 8, 20px glyphs.
10
+ *
11
+ * The Console's pill has four tabs plus New (Home, Discover, Pulse, Spaces; the
12
+ * frames omit Pulse by mistake, spec §3.4). The active tab stands on the page
13
+ * colour with its glyph in the accent role; only Home has a filled twin
14
+ * (`activeIcon`), so the other tabs draw their regular glyph when active
15
+ * (spec §8.8). Links in DOM order, no roving keys, as the Console has them.
16
+ */
17
+ declare function HeaderPill({ label, className, children, ...props }: Omit<React.ComponentProps<"nav">, "aria-label"> & {
18
+ /** Names the landmark, e.g. "Primary". */
19
+ label: string;
20
+ }): React.JSX.Element;
21
+ declare function HeaderPillLogo({ label, render, className, ...props }: Omit<useRender.ComponentProps<"a">, "children"> & {
22
+ /** The link's accessible name. */
23
+ label?: string;
24
+ }): React.ReactElement<unknown, string | React.JSXElementConstructor<any>>;
25
+ declare function HeaderPillTab({ label, icon, activeIcon, active, render, className, ...props }: Omit<useRender.ComponentProps<"a">, "children"> & {
26
+ /** Announced; the glyph carries no name. */
27
+ label: string;
28
+ /** The 20px regular glyph. */
29
+ icon: React.ReactNode;
30
+ /** Drawn instead of `icon` while active, e.g. Home's filled twin. */
31
+ activeIcon?: React.ReactNode;
32
+ active?: boolean;
33
+ }): React.ReactElement<unknown, string | React.JSXElementConstructor<any>>;
34
+ declare function HeaderPillAction({ label, icon, render, className, ...props }: Omit<useRender.ComponentProps<"a">, "children"> & {
35
+ /** Announced, e.g. "New". */
36
+ label: string;
37
+ /** The 20px glyph, e.g. `PlusIcon`. */
38
+ icon: React.ReactNode;
39
+ }): React.ReactElement<unknown, string | React.JSXElementConstructor<any>>;
40
+ export { HeaderPill, HeaderPillAction, HeaderPillLogo, HeaderPillTab };
41
+ //# sourceMappingURL=header-pill.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"header-pill.d.ts","sourceRoot":"","sources":["../../src/blocks/header-pill.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAKrD;;;;;;;;;;;;;GAaG;AAEH,iBAAS,UAAU,CAAC,EAClB,KAAK,EACL,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC,GAAG;IACnD,0CAA0C;IAC1C,KAAK,EAAE,MAAM,CAAA;CACd,qBAeA;AAED,iBAAS,cAAc,CAAC,EACtB,KAAwB,EACxB,MAAM,EACN,SAAS,EACT,GAAG,KAAK,EACT,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,GAAG;IACnD,kCAAkC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,0EAgBA;AAID,iBAAS,aAAa,CAAC,EACrB,KAAK,EACL,IAAI,EACJ,UAAU,EACV,MAAc,EACd,MAAM,EACN,SAAS,EACT,GAAG,KAAK,EACT,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,GAAG;IACnD,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAA;IACb,8BAA8B;IAC9B,IAAI,EAAE,KAAK,CAAC,SAAS,CAAA;IACrB,qEAAqE;IACrE,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,0EAwBA;AAED,iBAAS,gBAAgB,CAAC,EACxB,KAAK,EACL,IAAI,EACJ,MAAM,EACN,SAAS,EACT,GAAG,KAAK,EACT,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,GAAG;IACnD,6BAA6B;IAC7B,KAAK,EAAE,MAAM,CAAA;IACb,uCAAuC;IACvC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAA;CACtB,0EAkBA;AAED,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAAE,aAAa,EAAE,CAAA"}
@@ -0,0 +1,67 @@
1
+ "use client";
2
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import * as React from "react";
4
+ import { useRender } from "@base-ui/react/use-render";
5
+ import { cn } from "../lib/cloudgrid-cn.js";
6
+ import { Logo } from "./logo.js";
7
+ /**
8
+ * THE HEADER PILL (#381): the centred pill of the CloudGrid-2026 header
9
+ * (frame 11324:90751), absorbed from the Console's hand-built `PillHeader`.
10
+ *
11
+ * Measured: white, a 1px hairline drawn inside, radius 12, the card shadow,
12
+ * 2/6/2/4 padding, 4 between items; the logo cell 8/20/8/12 around a 23px logo
13
+ * in the accent role; tabs and New 44×32, radius 8, 20px glyphs.
14
+ *
15
+ * The Console's pill has four tabs plus New (Home, Discover, Pulse, Spaces; the
16
+ * frames omit Pulse by mistake, spec §3.4). The active tab stands on the page
17
+ * colour with its glyph in the accent role; only Home has a filled twin
18
+ * (`activeIcon`), so the other tabs draw their regular glyph when active
19
+ * (spec §8.8). Links in DOM order, no roving keys, as the Console has them.
20
+ */
21
+ function HeaderPill({ label, className, children, ...props }) {
22
+ return (_jsx("nav", { "data-slot": "header-pill", "aria-label": label, className: cn(
23
+ // 2/6/2/4 less the 1px stroke Figma draws inside the box.
24
+ "inline-flex items-center gap-1 rounded-md border border-hairline bg-card pt-px pr-[5px] pb-px pl-[3px] text-ink shadow-card", className), ...props, children: children }));
25
+ }
26
+ function HeaderPillLogo({ label = "CloudGrid home", render, className, ...props }) {
27
+ return useRender({
28
+ render,
29
+ defaultTagName: "a",
30
+ props: {
31
+ "data-slot": "header-pill-logo",
32
+ "aria-label": label,
33
+ className: cn("inline-flex items-center rounded-xs py-2 pr-5 pl-3 text-(--cg-text-accent) no-underline", "focus-visible:ring-3 focus-visible:ring-ring focus-visible:outline-none", className),
34
+ children: _jsx(Logo, { height: 23, label: "" }),
35
+ ...props,
36
+ },
37
+ });
38
+ }
39
+ const CELL = "inline-flex h-8 w-11 shrink-0 items-center justify-center rounded-xs no-underline transition-colors focus-visible:ring-3 focus-visible:ring-ring focus-visible:outline-none";
40
+ function HeaderPillTab({ label, icon, activeIcon, active = false, render, className, ...props }) {
41
+ return useRender({
42
+ render,
43
+ defaultTagName: "a",
44
+ props: {
45
+ "data-slot": "header-pill-tab",
46
+ "data-active": active ? "" : undefined,
47
+ "aria-current": active ? "page" : undefined,
48
+ className: cn(CELL, active ? "bg-page" : "text-ink hover:bg-(--cg-hover)", className),
49
+ children: (_jsxs(_Fragment, { children: [_jsx("span", { "data-slot": "header-pill-glyph", "aria-hidden": "true", className: cn("inline-flex size-5 items-center justify-center", active && "text-(--cg-text-accent)"), children: active ? activeIcon ?? icon : icon }), _jsx("span", { className: "sr-only", children: label })] })),
50
+ ...props,
51
+ },
52
+ });
53
+ }
54
+ function HeaderPillAction({ label, icon, render, className, ...props }) {
55
+ return useRender({
56
+ render,
57
+ defaultTagName: "a",
58
+ props: {
59
+ "data-slot": "header-pill-action",
60
+ className: cn(CELL, "bg-cyan text-(--cg-text-on-accent) hover:bg-cyan-press", className),
61
+ children: (_jsxs(_Fragment, { children: [_jsx("span", { "data-slot": "header-pill-glyph", "aria-hidden": "true", className: "inline-flex size-5 items-center justify-center", children: icon }), _jsx("span", { className: "sr-only", children: label })] })),
62
+ ...props,
63
+ },
64
+ });
65
+ }
66
+ export { HeaderPill, HeaderPillAction, HeaderPillLogo, HeaderPillTab };
67
+ //# sourceMappingURL=header-pill.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"header-pill.js","sourceRoot":"","sources":["../../src/blocks/header-pill.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAErD,OAAO,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AAEzC;;;;;;;;;;;;;GAaG;AAEH,SAAS,UAAU,CAAC,EAClB,KAAK,EACL,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EAIT;IACC,OAAO,CACL,2BACY,aAAa,gBACX,KAAK,EACjB,SAAS,EAAE,EAAE;QACX,0DAA0D;QAC1D,6HAA6H,EAC7H,SAAS,CACV,KACG,KAAK,YAER,QAAQ,GACL,CACP,CAAA;AACH,CAAC;AAED,SAAS,cAAc,CAAC,EACtB,KAAK,GAAG,gBAAgB,EACxB,MAAM,EACN,SAAS,EACT,GAAG,KAAK,EAIT;IACC,OAAO,SAAS,CAAC;QACf,MAAM;QACN,cAAc,EAAE,GAAG;QACnB,KAAK,EAAE;YACL,WAAW,EAAE,kBAAkB;YAC/B,YAAY,EAAE,KAAK;YACnB,SAAS,EAAE,EAAE,CACX,yFAAyF,EACzF,yEAAyE,EACzE,SAAS,CACV;YACD,QAAQ,EAAE,KAAC,IAAI,IAAC,MAAM,EAAE,EAAE,EAAE,KAAK,EAAC,EAAE,GAAG;YACvC,GAAG,KAAK;SACT;KACF,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,IAAI,GAAG,6KAA6K,CAAA;AAE1L,SAAS,aAAa,CAAC,EACrB,KAAK,EACL,IAAI,EACJ,UAAU,EACV,MAAM,GAAG,KAAK,EACd,MAAM,EACN,SAAS,EACT,GAAG,KAAK,EAST;IACC,OAAO,SAAS,CAAC;QACf,MAAM;QACN,cAAc,EAAE,GAAG;QACnB,KAAK,EAAE;YACL,WAAW,EAAE,iBAAiB;YAC9B,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;YACtC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAE,MAAgB,CAAC,CAAC,CAAC,SAAS;YACtD,SAAS,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,gCAAgC,EAAE,SAAS,CAAC;YACrF,QAAQ,EAAE,CACR,8BACE,4BACY,mBAAmB,iBACjB,MAAM,EAClB,SAAS,EAAE,EAAE,CAAC,gDAAgD,EAAE,MAAM,IAAI,yBAAyB,CAAC,YAEnG,MAAM,CAAC,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,GAC9B,EACP,eAAM,SAAS,EAAC,SAAS,YAAE,KAAK,GAAQ,IACvC,CACJ;YACD,GAAG,KAAK;SACT;KACF,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,EACxB,KAAK,EACL,IAAI,EACJ,MAAM,EACN,SAAS,EACT,GAAG,KAAK,EAMT;IACC,OAAO,SAAS,CAAC;QACf,MAAM;QACN,cAAc,EAAE,GAAG;QACnB,KAAK,EAAE;YACL,WAAW,EAAE,oBAAoB;YACjC,SAAS,EAAE,EAAE,CAAC,IAAI,EAAE,wDAAwD,EAAE,SAAS,CAAC;YACxF,QAAQ,EAAE,CACR,8BACE,4BAAgB,mBAAmB,iBAAa,MAAM,EAAC,SAAS,EAAC,gDAAgD,YAC9G,IAAI,GACA,EACP,eAAM,SAAS,EAAC,SAAS,YAAE,KAAK,GAAQ,IACvC,CACJ;YACD,GAAG,KAAK;SACT;KACF,CAAC,CAAA;AACJ,CAAC;AAED,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAAE,aAAa,EAAE,CAAA"}