@fiestaboard/ui 2.1.0 → 2.1.2

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/index.js CHANGED
@@ -53,13 +53,13 @@ import { HIDE_FESTIVE_COOKIE as Pt, PRIDE_SEASON as Ft, SEASONS as It, fireSeaso
53
53
  import { ALL_COLOR_CODES as Ut, AVAILABLE_COLORS as Wt, BOARD_COLORS as Gt, COLOR_CODE_MAP as Kt, COLOR_DISPLAY as qt, getBoardColor as Jt, isValidBoardColor as Yt, resolveColorCode as Xt } from "./lib/board-colors.js";
54
54
  import { BOARD_CHARS as Zt, EXTRA_CHARS as Qt, getCharFromToken as $t, getCharIndex as en, isColorTile as tn, messageToGrid as nn, parseLine as rn, tokensEqual as an } from "./lib/board-characters.js";
55
55
  import { DEVICE_DIMENSIONS as on, MAX_NOTES_PER_AXIS as sn, NOTE_COLS as cn, NOTE_ROWS as ln, isNoteArray as un, noteArrayDimensions as dn, resolveDimensions as fn } from "./lib/board-dimensions.js";
56
- import { BoardDisplay as pn } from "./components/board/board-display.js";
57
- import { BoardTeaser as mn } from "./components/board/board-teaser.js";
58
- import { ScaledBoardDisplay as hn } from "./components/board/scaled-board-display.js";
59
- import { StaticBoardDisplay as gn } from "./components/board/static-board-display.js";
60
- import { DEFAULT_SHAPE_LABELS as _n, previewLabel as vn, previewLabels as yn, previewMessage as bn } from "./lib/board-previews.js";
61
- import { BoardShowcase as xn, DEFAULT_SHOWCASE_LABELS as Sn } from "./components/plugin/board-showcase.js";
62
- import { PLUGIN_CATEGORIES as Cn, PluginCategoryBadge as wn } from "./components/plugin/plugin-category-badge.js";
63
- import { ScaledBoardTeaser as Tn } from "./components/plugin/scaled-board-teaser.js";
64
- import { PluginCard as En } from "./components/plugin/plugin-card.js";
65
- export { Ut as ALL_COLOR_CODES, Wt as AVAILABLE_COLORS, t as Accordion, n as AccordionContent, r as AccordionItem, i as AccordionTrigger, a as Alert, o as AlertDescription, p as AlertDialog, m as AlertDialogAction, h as AlertDialogCancel, g as AlertDialogContent, _ as AlertDialogDescription, v as AlertDialogFooter, y as AlertDialogHeader, b as AlertDialogOverlay, x as AlertDialogPortal, S as AlertDialogTitle, C as AlertDialogTrigger, s as AlertTitle, w as Aurora, Zt as BOARD_CHARS, Gt as BOARD_COLORS, T as Badge, pn as BoardDisplay, gt as BoardIcon, _t as BoardSelector, xn as BoardShowcase, mn as BoardTeaser, D as Box, d as Button, Kt as COLOR_CODE_MAP, qt as COLOR_DISPLAY, O as Card, k as CardAction, A as CardContent, j as CardDescription, M as CardFooter, N as CardHeader, P as CardTitle, F as Checkbox, I as Code, L as Collapsible, R as CollapsibleContent, z as CollapsibleTrigger, _n as DEFAULT_SHAPE_LABELS, Sn as DEFAULT_SHOWCASE_LABELS, on as DEVICE_DIMENSIONS, Ce as DecryptedText, B as Dialog, V as DialogClose, H as DialogContent, U as DialogDescription, W as DialogFooter, G as DialogHeader, K as DialogOverlay, q as DialogPortal, J as DialogTitle, Y as DialogTrigger, X as DropdownMenu, Z as DropdownMenuCheckboxItem, Q as DropdownMenuContent, $ as DropdownMenuGroup, ee as DropdownMenuItem, te as DropdownMenuLabel, ne as DropdownMenuPortal, re as DropdownMenuRadioGroup, ie as DropdownMenuRadioItem, ae as DropdownMenuSeparator, oe as DropdownMenuShortcut, se as DropdownMenuSub, ce as DropdownMenuSubContent, le as DropdownMenuSubTrigger, ue as DropdownMenuTrigger, Qt as EXTRA_CHARS, de as EmptyState, vt as FIESTA_ICON_DATA_URI, yt as FIESTA_ICON_PALETTE, bt as FIESTA_ICON_SVG, we as FadeContent, xt as FiestaIcon, St as FiestaLogo, fe as Flex, me as Grid, Pt as HIDE_FESTIVE_COOKIE, ge as Heading, ve as Input, ye as Label, Ct as LanguageSelector, be as List, xe as ListItem, sn as MAX_NOTES_PER_AXIS, wt as MainContent, cn as NOTE_COLS, ln as NOTE_ROWS, Cn as PLUGIN_CATEGORIES, Ft as PRIDE_SEASON, Tt as PageHeader, Et as PageIconGradientDefs, Dt as PageLayout, Ot as PageToolbar, En as PluginCard, wn as PluginCategoryBadge, It as SEASONS, hn as ScaledBoardDisplay, Tn as ScaledBoardTeaser, Te as ScrollArea, Ee as ScrollBar, De as Select, Oe as SelectContent, ke as SelectGroup, Ae as SelectItem, je as SelectLabel, Me as SelectScrollDownButton, Ne as SelectScrollUpButton, Pe as SelectSeparator, Fe as SelectTrigger, Ie as SelectValue, Le as Sheet, Re as SheetClose, ze as SheetContent, Be as SheetDescription, Ve as SheetFooter, He as SheetHeader, Ue as SheetOverlay, We as SheetPortal, Ge as SheetTitle, Ke as SheetTrigger, jt as Sidebar, kt as SidebarAurora, At as SidebarAuroraHorizontal, qe as Skeleton, Mt as SkipToContent, Je as Slider, l as Spinner, Ye as Stack, gn as StaticBoardDisplay, Ze as Switch, Qe as Table, $e as TableBody, et as TableCell, tt as TableHead, nt as TableHeader, rt as TableRow, it as Tabs, at as TabsContent, ot as TabsList, st as TabsTrigger, ct as Text, ut as TextLink, dt as Textarea, Nt as ThemeToggle, ft as Tooltip, pt as TooltipContent, mt as TooltipProvider, ht as TooltipTrigger, c as alertVariants, E as badgeVariants, f as buttonVariants, e as cn, Lt as fireSeasonBurst, pe as flexVariants, Rt as getActiveSeason, Jt as getBoardColor, $t as getCharFromToken, en as getCharIndex, he as gridVariants, _e as headingVariants, tn as isColorTile, un as isNoteArray, Yt as isValidBoardColor, Se as listVariants, nn as messageToGrid, dn as noteArrayDimensions, rn as parseLine, vn as previewLabel, yn as previewLabels, bn as previewMessage, zt as readCookieString, Xt as resolveColorCode, fn as resolveDimensions, Bt as shouldShowPride, u as spinnerVariants, Xe as stackVariants, lt as textVariants, an as tokensEqual, Vt as useActiveSeason, Ht as usePrideActive };
56
+ import { BoardDisplay as pn, FLAP_SPEED_PRESETS as mn, deriveFlapTiming as hn, resolveFlapSpeed as gn } from "./components/board/board-display.js";
57
+ import { BoardTeaser as _n } from "./components/board/board-teaser.js";
58
+ import { ScaledBoardDisplay as vn } from "./components/board/scaled-board-display.js";
59
+ import { StaticBoardDisplay as yn } from "./components/board/static-board-display.js";
60
+ import { DEFAULT_SHAPE_LABELS as bn, previewLabel as xn, previewLabels as Sn, previewMessage as Cn } from "./lib/board-previews.js";
61
+ import { BoardShowcase as wn, DEFAULT_SHOWCASE_LABELS as Tn } from "./components/plugin/board-showcase.js";
62
+ import { PLUGIN_CATEGORIES as En, PluginCategoryBadge as Dn } from "./components/plugin/plugin-category-badge.js";
63
+ import { ScaledBoardTeaser as On } from "./components/plugin/scaled-board-teaser.js";
64
+ import { PluginCard as kn } from "./components/plugin/plugin-card.js";
65
+ export { Ut as ALL_COLOR_CODES, Wt as AVAILABLE_COLORS, t as Accordion, n as AccordionContent, r as AccordionItem, i as AccordionTrigger, a as Alert, o as AlertDescription, p as AlertDialog, m as AlertDialogAction, h as AlertDialogCancel, g as AlertDialogContent, _ as AlertDialogDescription, v as AlertDialogFooter, y as AlertDialogHeader, b as AlertDialogOverlay, x as AlertDialogPortal, S as AlertDialogTitle, C as AlertDialogTrigger, s as AlertTitle, w as Aurora, Zt as BOARD_CHARS, Gt as BOARD_COLORS, T as Badge, pn as BoardDisplay, gt as BoardIcon, _t as BoardSelector, wn as BoardShowcase, _n as BoardTeaser, D as Box, d as Button, Kt as COLOR_CODE_MAP, qt as COLOR_DISPLAY, O as Card, k as CardAction, A as CardContent, j as CardDescription, M as CardFooter, N as CardHeader, P as CardTitle, F as Checkbox, I as Code, L as Collapsible, R as CollapsibleContent, z as CollapsibleTrigger, bn as DEFAULT_SHAPE_LABELS, Tn as DEFAULT_SHOWCASE_LABELS, on as DEVICE_DIMENSIONS, Ce as DecryptedText, B as Dialog, V as DialogClose, H as DialogContent, U as DialogDescription, W as DialogFooter, G as DialogHeader, K as DialogOverlay, q as DialogPortal, J as DialogTitle, Y as DialogTrigger, X as DropdownMenu, Z as DropdownMenuCheckboxItem, Q as DropdownMenuContent, $ as DropdownMenuGroup, ee as DropdownMenuItem, te as DropdownMenuLabel, ne as DropdownMenuPortal, re as DropdownMenuRadioGroup, ie as DropdownMenuRadioItem, ae as DropdownMenuSeparator, oe as DropdownMenuShortcut, se as DropdownMenuSub, ce as DropdownMenuSubContent, le as DropdownMenuSubTrigger, ue as DropdownMenuTrigger, Qt as EXTRA_CHARS, de as EmptyState, vt as FIESTA_ICON_DATA_URI, yt as FIESTA_ICON_PALETTE, bt as FIESTA_ICON_SVG, mn as FLAP_SPEED_PRESETS, we as FadeContent, xt as FiestaIcon, St as FiestaLogo, fe as Flex, me as Grid, Pt as HIDE_FESTIVE_COOKIE, ge as Heading, ve as Input, ye as Label, Ct as LanguageSelector, be as List, xe as ListItem, sn as MAX_NOTES_PER_AXIS, wt as MainContent, cn as NOTE_COLS, ln as NOTE_ROWS, En as PLUGIN_CATEGORIES, Ft as PRIDE_SEASON, Tt as PageHeader, Et as PageIconGradientDefs, Dt as PageLayout, Ot as PageToolbar, kn as PluginCard, Dn as PluginCategoryBadge, It as SEASONS, vn as ScaledBoardDisplay, On as ScaledBoardTeaser, Te as ScrollArea, Ee as ScrollBar, De as Select, Oe as SelectContent, ke as SelectGroup, Ae as SelectItem, je as SelectLabel, Me as SelectScrollDownButton, Ne as SelectScrollUpButton, Pe as SelectSeparator, Fe as SelectTrigger, Ie as SelectValue, Le as Sheet, Re as SheetClose, ze as SheetContent, Be as SheetDescription, Ve as SheetFooter, He as SheetHeader, Ue as SheetOverlay, We as SheetPortal, Ge as SheetTitle, Ke as SheetTrigger, jt as Sidebar, kt as SidebarAurora, At as SidebarAuroraHorizontal, qe as Skeleton, Mt as SkipToContent, Je as Slider, l as Spinner, Ye as Stack, yn as StaticBoardDisplay, Ze as Switch, Qe as Table, $e as TableBody, et as TableCell, tt as TableHead, nt as TableHeader, rt as TableRow, it as Tabs, at as TabsContent, ot as TabsList, st as TabsTrigger, ct as Text, ut as TextLink, dt as Textarea, Nt as ThemeToggle, ft as Tooltip, pt as TooltipContent, mt as TooltipProvider, ht as TooltipTrigger, c as alertVariants, E as badgeVariants, f as buttonVariants, e as cn, hn as deriveFlapTiming, Lt as fireSeasonBurst, pe as flexVariants, Rt as getActiveSeason, Jt as getBoardColor, $t as getCharFromToken, en as getCharIndex, he as gridVariants, _e as headingVariants, tn as isColorTile, un as isNoteArray, Yt as isValidBoardColor, Se as listVariants, nn as messageToGrid, dn as noteArrayDimensions, rn as parseLine, xn as previewLabel, Sn as previewLabels, Cn as previewMessage, zt as readCookieString, Xt as resolveColorCode, fn as resolveDimensions, gn as resolveFlapSpeed, Bt as shouldShowPride, u as spinnerVariants, Xe as stackVariants, lt as textVariants, an as tokensEqual, Vt as useActiveSeason, Ht as usePrideActive };
@@ -1,19 +1,122 @@
1
1
  /**
2
- * Render-invariant Tailwind class maps keyed by board size ("sm" | "md" | "lg").
3
- *
4
- * These are a single shared source for BoardDisplay, StaticBoardDisplay, and
5
- * BoardTeaser so a teaser strip and a static preview match a full animated
6
- * board row rendered at the same size. Keeping one copy here means the three
7
- * renderers can't drift apart.
8
- *
9
- * They live at module scope (imported once) rather than inside a component body
10
- * so they are allocated a single time at import instead of on every render.
11
- * BoardDisplay originally hoisted its own copies for this reason (PR #31 /
12
- * issue #24); StaticBoardDisplay and BoardTeaser re-allocated equivalents per
13
- * render until they were consolidated here (issue #68).
2
+ * Board tile geometry one free variable, everything else derived from it.
3
+ *
4
+ * A split-flap module is a physical object, so its proportions have to be
5
+ * invariant: the same tile rendered at any scale keeps one aspect ratio, one
6
+ * gutter-to-tile ratio, one glyph-to-tile ratio, and a corner radius that
7
+ * scales with it. Before issue #176 this file kept four independent class maps
8
+ * and they had drifted apart (aspect spread 12.3%, gutter/tile 53.1%,
9
+ * glyph/tile 24.2%, corner radius a flat 3px from a 18px tile to a 46px one —
10
+ * and `gapClasses.md` had silently lost its `lg:` step, so at ≥1024px an
11
+ * `md` board grew its tiles and kept its gutter).
12
+ *
13
+ * Now there is exactly one free variable per size/breakpoint — the tile
14
+ * **height** — and every other dimension comes out of {@link TILE_RATIOS}:
15
+ *
16
+ * width = round(h × 0.70) aspect, matching the md/lg cluster
17
+ * gutter = round(h × 0.145) ≈ 0.207 of width, the old md/lg centre
18
+ * glyph = round(h × 0.39) font-size
19
+ * radius = h × 0.075 corner radius (see note below)
20
+ *
21
+ * Resulting ratios across all 12 size × breakpoint steps:
22
+ *
23
+ * aspect 0.692 … 0.722 spread 4.3% (was 12.3%)
24
+ * gutter/tile 0.200 … 0.231 spread 15.4% (was 53.1%)
25
+ * glyph/tile 0.382 … 0.400 spread 4.6% (was 24.2%)
26
+ * radius/tile 0.075 spread 0.0% (was 155.6%)
27
+ *
28
+ * The residual spread is entirely integer-pixel quantisation: no dimension is
29
+ * more than 0.5px from its ideal value, and the relative error looks large
30
+ * only because a 3px gutter cannot be expressed more precisely than ±0.5px.
31
+ * That is a rendering limit, not drift — there is no per-size fudge factor
32
+ * left in this file. Corner radius is the one exception to integer rounding:
33
+ * it is paint-only (never affects layout) and antialiases cleanly, so it is
34
+ * kept fractional and the ratio is exactly invariant.
35
+ *
36
+ * Steps are declared for every breakpoint, and a breakpoint that intentionally
37
+ * inherits the previous step must say so with an explicit `null`. That makes
38
+ * the "gapClasses.md forgot its lg: step" bug a type error rather than
39
+ * something you have to notice by eye.
40
+ *
41
+ * These maps are a single shared source for BoardDisplay, StaticBoardDisplay,
42
+ * and BoardTeaser so a teaser strip and a static preview match a full animated
43
+ * board row rendered at the same size. They live at module scope (built once at
44
+ * import) rather than inside a component body, because during loading each of
45
+ * the ~132 tiles of a flagship board re-renders every flap step and
46
+ * re-allocating these per render churned continuously across the grid
47
+ * (PR #31 / issue #24; consolidated here in issue #68).
14
48
  */
15
49
  export type BoardSize = "sm" | "md" | "lg";
50
+ /** Tailwind's responsive steps, in cascade order. `base` is the unprefixed one. */
51
+ export declare const BOARD_STEPS: readonly ["base", "sm", "md", "lg"];
52
+ export type BoardStep = (typeof BOARD_STEPS)[number];
53
+ /** Fixed tile proportions, all expressed against the tile height. */
54
+ export declare const TILE_RATIOS: {
55
+ /** Tile width ÷ tile height. */
56
+ readonly width: 0.7;
57
+ /** Gutter between tiles ÷ tile height (≈ 0.207 of the tile width). */
58
+ readonly gutter: 0.145;
59
+ /** Glyph font-size ÷ tile height. */
60
+ readonly glyph: 0.39;
61
+ /** Corner radius ÷ tile height. */
62
+ readonly radius: 0.075;
63
+ };
64
+ export interface TileMetrics {
65
+ height: number;
66
+ width: number;
67
+ gutter: number;
68
+ glyph: number;
69
+ radius: number;
70
+ }
71
+ /**
72
+ * The whole tile scale, derived from a single tile height.
73
+ *
74
+ * Layout dimensions are rounded to whole pixels (fractional tile widths make
75
+ * the grid seams blurry and the glyph centring uneven); the corner radius is
76
+ * paint-only and is kept fractional so the ratio stays exact.
77
+ */
78
+ export declare function deriveTileMetrics(height: number): TileMetrics;
79
+ /** Tile width + height. */
16
80
  export declare const sizeClasses: Record<BoardSize, string>;
81
+ /** Glyph font-size. */
17
82
  export declare const textSizeClasses: Record<BoardSize, string>;
18
- export declare const paddingClasses: Record<BoardSize, string>;
83
+ /** Gutter between tiles (also the row gap — the grid is square-pitched). */
19
84
  export declare const gapClasses: Record<BoardSize, string>;
85
+ /** Tile (and leaf) corner radius. Scales with the tile — see issue #176. */
86
+ export declare const radiusClasses: Record<BoardSize, string>;
87
+ /**
88
+ * Bezel padding around the grid.
89
+ *
90
+ * Deliberately *not* derived from the tile height: this is the frame the tiles
91
+ * sit in, not a property of a tile, and the physical bezel does not scale with
92
+ * the module. It is authored per step and left at the values the boards have
93
+ * always shipped with, so deriving the tile scale does not resize every board.
94
+ * It is declared here alongside the tile maps only so all board metrics stay in
95
+ * one file.
96
+ */
97
+ export declare const paddingClasses: Record<BoardSize, string>;
98
+ export interface TileScaleRow extends TileMetrics {
99
+ size: BoardSize;
100
+ step: BoardStep;
101
+ /** Ratios as rendered, i.e. after integer-pixel rounding. */
102
+ aspect: number;
103
+ gutterRatio: number;
104
+ glyphRatio: number;
105
+ radiusRatio: number;
106
+ }
107
+ /** Every authored step, with the ratios it actually renders at. */
108
+ export declare function tileScaleRows(): TileScaleRow[];
109
+ export interface TileScaleIssue {
110
+ size: BoardSize;
111
+ step: BoardStep;
112
+ field: "size" | "gap" | "text" | "radius";
113
+ expected: string;
114
+ actual: string;
115
+ }
116
+ /**
117
+ * Re-derive every authored class string from its tile height and report any
118
+ * that no longer matches. The class strings have to be literals for Tailwind's
119
+ * scanner (see {@link TileStep}), so this is what keeps them honest; the
120
+ * "Tile geometry" story calls it.
121
+ */
122
+ export declare function verifyTileScale(): TileScaleIssue[];
@@ -1,22 +1,105 @@
1
1
  //#region src/lib/board-metrics.ts
2
- var e = {
3
- sm: "w-[14px] h-[18px]",
4
- md: "w-[14px] h-[20px] sm:w-[20px] sm:h-[28px] md:w-[24px] md:h-[34px] lg:w-[28px] lg:h-[40px]",
5
- lg: "w-[18px] h-[26px] sm:w-[24px] sm:h-[34px] md:w-[28px] md:h-[40px] lg:w-[32px] lg:h-[46px]"
6
- }, t = {
7
- sm: "text-[7px]",
8
- md: "text-[7px] sm:text-[10px] md:text-[13px] lg:text-[16px]",
9
- lg: "text-[10px] sm:text-[13px] md:text-[16px] lg:text-[20px]"
10
- }, n = {
2
+ var e = [
3
+ "base",
4
+ "sm",
5
+ "md",
6
+ "lg"
7
+ ], t = {
8
+ sm: {
9
+ base: {
10
+ h: 18,
11
+ size: "w-[13px] h-[18px]",
12
+ gap: "gap-[3px]",
13
+ text: "text-[7px]",
14
+ radius: "rounded-[1.35px]"
15
+ },
16
+ sm: null,
17
+ md: null,
18
+ lg: null
19
+ },
20
+ md: {
21
+ base: {
22
+ h: 20,
23
+ size: "w-[14px] h-[20px]",
24
+ gap: "gap-[3px]",
25
+ text: "text-[8px]",
26
+ radius: "rounded-[1.5px]"
27
+ },
28
+ sm: {
29
+ h: 28,
30
+ size: "sm:w-[20px] sm:h-[28px]",
31
+ gap: "sm:gap-[4px]",
32
+ text: "sm:text-[11px]",
33
+ radius: "sm:rounded-[2.1px]"
34
+ },
35
+ md: {
36
+ h: 34,
37
+ size: "md:w-[24px] md:h-[34px]",
38
+ gap: "md:gap-[5px]",
39
+ text: "md:text-[13px]",
40
+ radius: "md:rounded-[2.55px]"
41
+ },
42
+ lg: {
43
+ h: 40,
44
+ size: "lg:w-[28px] lg:h-[40px]",
45
+ gap: "lg:gap-[6px]",
46
+ text: "lg:text-[16px]",
47
+ radius: "lg:rounded-[3px]"
48
+ }
49
+ },
50
+ lg: {
51
+ base: {
52
+ h: 26,
53
+ size: "w-[18px] h-[26px]",
54
+ gap: "gap-[4px]",
55
+ text: "text-[10px]",
56
+ radius: "rounded-[1.95px]"
57
+ },
58
+ sm: {
59
+ h: 34,
60
+ size: "sm:w-[24px] sm:h-[34px]",
61
+ gap: "sm:gap-[5px]",
62
+ text: "sm:text-[13px]",
63
+ radius: "sm:rounded-[2.55px]"
64
+ },
65
+ md: {
66
+ h: 40,
67
+ size: "md:w-[28px] md:h-[40px]",
68
+ gap: "md:gap-[6px]",
69
+ text: "md:text-[16px]",
70
+ radius: "md:rounded-[3px]"
71
+ },
72
+ lg: {
73
+ h: 46,
74
+ size: "lg:w-[32px] lg:h-[46px]",
75
+ gap: "lg:gap-[7px]",
76
+ text: "lg:text-[18px]",
77
+ radius: "lg:rounded-[3.45px]"
78
+ }
79
+ }
80
+ }, n = [
81
+ "sm",
82
+ "md",
83
+ "lg"
84
+ ];
85
+ function r(r) {
86
+ let i = {};
87
+ for (let a of n) {
88
+ let n = [];
89
+ for (let i of e) {
90
+ let e = t[a][i];
91
+ e && n.push(r(e));
92
+ }
93
+ i[a] = n.join(" ");
94
+ }
95
+ return i;
96
+ }
97
+ var i = r((e) => e.size), a = r((e) => e.text), o = r((e) => e.gap), s = r((e) => e.radius), c = {
11
98
  sm: "px-3 py-4",
12
99
  md: "px-2 py-3 sm:px-4 sm:py-6 md:px-5 md:py-8 lg:px-6 lg:py-10",
13
100
  lg: "px-3 py-4 sm:px-5 sm:py-7 md:px-6 md:py-9 lg:px-8 lg:py-12"
14
- }, r = {
15
- sm: "gap-[3px]",
16
- md: "gap-[2px] sm:gap-[4px] md:gap-[5px]",
17
- lg: "gap-[3px] sm:gap-[5px] md:gap-[6px] lg:gap-[7px]"
18
101
  };
19
102
  //#endregion
20
- export { r as gapClasses, n as paddingClasses, e as sizeClasses, t as textSizeClasses };
103
+ export { e as BOARD_STEPS, o as gapClasses, c as paddingClasses, s as radiusClasses, i as sizeClasses, a as textSizeClasses };
21
104
 
22
105
  //# sourceMappingURL=board-metrics.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"board-metrics.js","names":[],"sources":["../../src/lib/board-metrics.ts"],"mappings":";AAiBA,IAAa,IAAyC;CACpD,IAAI;CACJ,IAAI;CACJ,IAAI;AACN,GAEa,IAA6C;CACxD,IAAI;CACJ,IAAI;CACJ,IAAI;AACN,GAEa,IAA4C;CACvD,IAAI;CACJ,IAAI;CACJ,IAAI;AACN,GAEa,IAAwC;CACnD,IAAI;CACJ,IAAI;CACJ,IAAI;AACN"}
1
+ {"version":3,"file":"board-metrics.js","names":[],"sources":["../../src/lib/board-metrics.ts"],"mappings":";AAoDA,IAAa,IAAc;CAAC;CAAQ;CAAM;CAAM;AAAI,GAgE9C,IAAoE;CAExE,IAAI;EACF,MAAM;GAAE,GAAG;GAAI,MAAM;GAAqB,KAAK;GAAa,MAAM;GAAc,QAAQ;EAAmB;EAC3G,IAAI;EACJ,IAAI;EACJ,IAAI;CACN;CACA,IAAI;EACF,MAAM;GAAE,GAAG;GAAI,MAAM;GAAqB,KAAK;GAAa,MAAM;GAAc,QAAQ;EAAkB;EAC1G,IAAI;GACF,GAAG;GACH,MAAM;GACN,KAAK;GACL,MAAM;GACN,QAAQ;EACV;EACA,IAAI;GACF,GAAG;GACH,MAAM;GACN,KAAK;GACL,MAAM;GACN,QAAQ;EACV;EACA,IAAI;GACF,GAAG;GACH,MAAM;GACN,KAAK;GACL,MAAM;GACN,QAAQ;EACV;CACF;CACA,IAAI;EACF,MAAM;GAAE,GAAG;GAAI,MAAM;GAAqB,KAAK;GAAa,MAAM;GAAe,QAAQ;EAAmB;EAC5G,IAAI;GACF,GAAG;GACH,MAAM;GACN,KAAK;GACL,MAAM;GACN,QAAQ;EACV;EACA,IAAI;GACF,GAAG;GACH,MAAM;GACN,KAAK;GACL,MAAM;GACN,QAAQ;EACV;EACA,IAAI;GACF,GAAG;GACH,MAAM;GACN,KAAK;GACL,MAAM;GACN,QAAQ;EACV;CACF;AACF,GAEM,IAAoC;CAAC;CAAM;CAAM;AAAI;AAE3D,SAAS,EAAU,GAA6D;CAC9E,IAAM,IAAM,CAAC;CACb,KAAK,IAAM,KAAQ,GAAa;EAC9B,IAAM,IAAkB,CAAC;EACzB,KAAK,IAAM,KAAQ,GAAa;GAC9B,IAAM,IAAQ,EAAW,EAAK,CAAC;GAC/B,AAAI,KAAO,EAAM,KAAK,EAAK,CAAK,CAAC;EACnC;EACA,EAAI,KAAQ,EAAM,KAAK,GAAG;CAC5B;CACA,OAAO;AACT;AAGA,IAAa,IAAyC,GAAW,MAAS,EAAK,IAAI,GAGtE,IAA6C,GAAW,MAAS,EAAK,IAAI,GAG1E,IAAwC,GAAW,MAAS,EAAK,GAAG,GAGpE,IAA2C,GAAW,MAAS,EAAK,MAAM,GAY1E,IAA4C;CACvD,IAAI;CACJ,IAAI;CACJ,IAAI;AACN"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fiestaboard/ui",
3
- "version": "2.1.0",
3
+ "version": "2.1.2",
4
4
  "description": "FiestaUI — the FiestaBoard design system. React components on Base UI with Tailwind v4 design tokens.",
5
5
  "license": "MIT",
6
6
  "repository": {