@fiestaboard/ui 5.10.0 → 5.11.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/components/chrome/page-card.d.ts +122 -0
- package/dist/components/chrome/page-card.js +46 -0
- package/dist/components/chrome/page-card.js.map +1 -0
- package/dist/components/chrome/page-header.js +1 -0
- package/dist/components/chrome/page-header.js.map +1 -1
- package/dist/components/chrome/page-inset.d.ts +6 -0
- package/dist/components/chrome/page-inset.js.map +1 -1
- package/dist/components/chrome/page-toolbar.js +1 -0
- package/dist/components/chrome/page-toolbar.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +56 -55
- package/package.json +1 -1
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
interface PageCardProps {
|
|
2
|
+
children: React.ReactNode;
|
|
3
|
+
className?: string;
|
|
4
|
+
/**
|
|
5
|
+
* Pins the card to its parent's height so one section can scroll inside it
|
|
6
|
+
* rather than the page scrolling as a whole — the schedule calendar's shape.
|
|
7
|
+
* Pair with `PageLayout`'s own `fillHeight`, and mark the scrolling block
|
|
8
|
+
* with `<PageSection fill>`.
|
|
9
|
+
*/
|
|
10
|
+
fillHeight?: boolean;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* THE WHOLE ROUTE, IN ONE CARD. The page title, the toolbar and the content
|
|
14
|
+
* are blocks inside a single surface whose border sits on `PageLayout`'s
|
|
15
|
+
* gutter.
|
|
16
|
+
*
|
|
17
|
+
* WHY, given that the three of them already shared a column. `Card` puts its
|
|
18
|
+
* border on the gutter and its words 24px inboard of it, and #270/#272 moved
|
|
19
|
+
* `PageHeader`, `PageToolbar` and bare content onto that same 24. The column
|
|
20
|
+
* was right. What was missing is that nothing DREW the border explaining it —
|
|
21
|
+
* so a reader met words indented from the page edge for no visible reason, and
|
|
22
|
+
* a route had two left edges of which only one was ever justified by something
|
|
23
|
+
* you could see. Three passes tried to align blocks to an invisible landmark.
|
|
24
|
+
* This makes the landmark visible instead, which is the one move that ends the
|
|
25
|
+
* argument rather than relocating it.
|
|
26
|
+
*
|
|
27
|
+
* BLOCKS THAT PAD THEMSELVES. The padding and the divider live on
|
|
28
|
+
* `PageSection`, not on a `[&>*]` rule here. That was the first shape and
|
|
29
|
+
* adoption killed it within a day: a settings route wraps its sections in
|
|
30
|
+
* `TabsContent`, an expandable one wraps its section in `Collapsible`, and a
|
|
31
|
+
* conditional wraps one in nothing at all — none of which are direct children,
|
|
32
|
+
* so every one of them lost its inset and its rule. A child selector can only
|
|
33
|
+
* see one level, and real routes nest.
|
|
34
|
+
*
|
|
35
|
+
* So this styles only what it must: `PageHeader` and `PageToolbar` predate the
|
|
36
|
+
* component and space themselves with a bottom margin, which is right on a
|
|
37
|
+
* page background and wrong inside a card. Those two get their margin swapped
|
|
38
|
+
* for block padding here, by slot. Everything else pads itself and composes to
|
|
39
|
+
* any depth.
|
|
40
|
+
*
|
|
41
|
+
* WHAT KEEPS ITS BORDER INSIDE. Sections flatten; items do not. A settings
|
|
42
|
+
* group or a Setup/Preview panel is a region of the page, so it loses its
|
|
43
|
+
* border and becomes a `PageSection`. A page tile, a collection tile or a
|
|
44
|
+
* plugin card is a thing you click to open, and its border IS the click
|
|
45
|
+
* target — flattening those removes the affordance, so they stay bordered
|
|
46
|
+
* inside whatever section holds them. That is a call-site judgement rather
|
|
47
|
+
* than a prop: a route swaps `Card`/`CardHeader`/`CardTitle` for
|
|
48
|
+
* `PageSection title=…` and leaves its tile grids alone.
|
|
49
|
+
*
|
|
50
|
+
* ADDITIVE ON PURPOSE. FiestaUI reaches FiestaBoard through npm, so the two
|
|
51
|
+
* repos cannot turn over in one commit. `PageHeader` and `PageToolbar` keep
|
|
52
|
+
* the standalone bottom margins they carry today and this zeroes them through
|
|
53
|
+
* their `data-slot`s, so a route that has not migrated renders exactly as it
|
|
54
|
+
* does now.
|
|
55
|
+
*/
|
|
56
|
+
export declare const PageCard: import("react").MemoExoticComponent<({ children, className, fillHeight }: PageCardProps) => import("react").JSX.Element>;
|
|
57
|
+
/**
|
|
58
|
+
* Standard div props come along so a section can take an `id` (the settings
|
|
59
|
+
* screens deep-link to one), an `aria-*`, a `style`. `title` is omitted
|
|
60
|
+
* because the HTML attribute of that name is a string tooltip and this one is
|
|
61
|
+
* a heading node — leaving both in scope would let a typo silently render a
|
|
62
|
+
* browser tooltip instead of a heading.
|
|
63
|
+
*/
|
|
64
|
+
interface PageSectionProps extends Omit<React.ComponentProps<"div">, "title"> {
|
|
65
|
+
children: React.ReactNode;
|
|
66
|
+
/** Renders a `CardTitle` at the settings-card scale (#274). */
|
|
67
|
+
title?: React.ReactNode;
|
|
68
|
+
/**
|
|
69
|
+
* Leading glyph for the title, forwarded to `CardTitle`'s icon slot — so it
|
|
70
|
+
* is decorative and never announced, the title's text being the name.
|
|
71
|
+
*
|
|
72
|
+
* Exists because the settings screens this component replaces had already
|
|
73
|
+
* converged on it: 24 of FiestaBoard's section headers spell out
|
|
74
|
+
* `flex items-center gap-2 text-base` with an `h-4 w-4` glyph by hand, which
|
|
75
|
+
* is the exact pattern #274 added the slot for.
|
|
76
|
+
*/
|
|
77
|
+
icon?: React.ReactNode;
|
|
78
|
+
/** Sits under the title, in `CardDescription`'s tone. */
|
|
79
|
+
description?: React.ReactNode;
|
|
80
|
+
/** Right-aligned slot on the title row — a section-level action. */
|
|
81
|
+
action?: React.ReactNode;
|
|
82
|
+
/**
|
|
83
|
+
* Makes this the block that scrolls under `PageCard fillHeight`. Exactly one
|
|
84
|
+
* section per card should take it.
|
|
85
|
+
*/
|
|
86
|
+
fill?: boolean;
|
|
87
|
+
/**
|
|
88
|
+
* Accessible name for the scroll region `fill` creates. Only read when
|
|
89
|
+
* `fill` is set. Defaults to the section's `title` when that is a string.
|
|
90
|
+
*/
|
|
91
|
+
scrollLabel?: string;
|
|
92
|
+
className?: string;
|
|
93
|
+
/**
|
|
94
|
+
* Classes for the CONTENT region, below the heading.
|
|
95
|
+
*
|
|
96
|
+
* This exists because the collapse costs something: `Card` split its
|
|
97
|
+
* heading and its body into two components a consumer could class
|
|
98
|
+
* separately, and `PageSection` is one node doing both. Nearly every
|
|
99
|
+
* settings section it replaces carries a `space-y-*` that belongs to the
|
|
100
|
+
* body alone — put on the root it would also space the heading away from
|
|
101
|
+
* the body, on top of the heading's own margin.
|
|
102
|
+
*/
|
|
103
|
+
contentClassName?: string;
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* A BLOCK INSIDE A `PageCard`, optionally titled. This is what a content
|
|
107
|
+
* `Card` becomes once the route itself is the card — the same heading and the
|
|
108
|
+
* same words, with its border traded for the hairline above it.
|
|
109
|
+
*
|
|
110
|
+
* IT PADS ITSELF, and draws its own top rule when it is not the first thing in
|
|
111
|
+
* its container. That is what lets it sit inside a `TabsContent`, a
|
|
112
|
+
* `Collapsible` or a bare conditional and still land on the content column —
|
|
113
|
+
* the arrangement every real settings route turns out to need, and the one a
|
|
114
|
+
* parent's `[&>*]` rule cannot reach.
|
|
115
|
+
*
|
|
116
|
+
* REPLACES `PageInset`. That component existed to put bare body content on the
|
|
117
|
+
* content column of a route that had no card to explain the column. A route
|
|
118
|
+
* that IS a card does not need it: the block padding here does the same 24 and
|
|
119
|
+
* draws the rule as well.
|
|
120
|
+
*/
|
|
121
|
+
export declare const PageSection: import("react").MemoExoticComponent<({ children, title, icon, description, action, fill, scrollLabel, className, contentClassName, ...rest }: PageSectionProps) => import("react").JSX.Element>;
|
|
122
|
+
export {};
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { cn as e } from "../../lib/utils.js";
|
|
2
|
+
import { Card as t, CardDescription as n, CardTitle as r } from "../containment/card.js";
|
|
3
|
+
import { memo as i } from "react";
|
|
4
|
+
import { jsx as a, jsxs as o } from "react/jsx-runtime";
|
|
5
|
+
//#region src/components/chrome/page-card.tsx
|
|
6
|
+
var s = i(function({ children: n, className: r, fillHeight: i }) {
|
|
7
|
+
return /* @__PURE__ */ a(t, {
|
|
8
|
+
"data-slot": "page-card",
|
|
9
|
+
className: e("gap-0 overflow-hidden py-0", "[&>[data-slot=page-header]]:mb-0 [&>[data-slot=page-header]]:py-6", "[&>[data-slot=page-toolbar]]:mb-0 [&>[data-slot=page-toolbar]]:py-6", "[&>[data-slot=page-toolbar]]:border-t", i && "min-h-0 flex-1", r),
|
|
10
|
+
children: n
|
|
11
|
+
});
|
|
12
|
+
}), c = i(function({ children: t, title: i, icon: s, description: c, action: l, fill: u, scrollLabel: d, className: f, contentClassName: p, ...m }) {
|
|
13
|
+
let h = i != null || c != null || l != null, g = d ?? (typeof i == "string" ? i : void 0);
|
|
14
|
+
return /* @__PURE__ */ o("div", {
|
|
15
|
+
"data-slot": "page-section",
|
|
16
|
+
className: e("px-6 py-6 [&:not(:first-child)]:border-t", u && "flex min-h-0 flex-1 flex-col overflow-hidden", f),
|
|
17
|
+
...m,
|
|
18
|
+
children: [h && /* @__PURE__ */ o("div", {
|
|
19
|
+
className: "mb-4 flex items-start justify-between gap-4",
|
|
20
|
+
children: [/* @__PURE__ */ o("div", {
|
|
21
|
+
className: "min-w-0",
|
|
22
|
+
children: [i != null && /* @__PURE__ */ a(r, {
|
|
23
|
+
size: "base",
|
|
24
|
+
icon: s,
|
|
25
|
+
children: i
|
|
26
|
+
}), c != null && /* @__PURE__ */ a(n, {
|
|
27
|
+
className: "mt-1.5",
|
|
28
|
+
children: c
|
|
29
|
+
})]
|
|
30
|
+
}), l]
|
|
31
|
+
}), u ? /* @__PURE__ */ a("div", {
|
|
32
|
+
className: e("min-h-0 flex-1 overflow-auto", p),
|
|
33
|
+
tabIndex: 0,
|
|
34
|
+
role: g ? "region" : void 0,
|
|
35
|
+
"aria-label": g,
|
|
36
|
+
children: t
|
|
37
|
+
}) : p ? /* @__PURE__ */ a("div", {
|
|
38
|
+
className: p,
|
|
39
|
+
children: t
|
|
40
|
+
}) : t]
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
//#endregion
|
|
44
|
+
export { s as PageCard, c as PageSection };
|
|
45
|
+
|
|
46
|
+
//# sourceMappingURL=page-card.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"page-card.js","names":[],"sources":["../../../src/components/chrome/page-card.tsx"],"mappings":";;;;;AA6DA,IAAa,IAAW,EAAK,SAAkB,EAAE,aAAU,cAAW,iBAA6B;CACjG,OACE,kBAAC,GAAD;EACE,aAAU;EACV,WAAW,EAET,8BAKA,qEACA,uEACA,yCACA,KAAc,kBACd,CACF;EAEC;CACG,CAAA;AAEV,CAAC,GAmEY,IAAc,EAAK,SAAqB,EACnD,aACA,UACA,SACA,gBACA,WACA,SACA,gBACA,cACA,qBACA,GAAG,KACgB;CACnB,IAAM,IAAa,KAAS,QAAQ,KAAe,QAAQ,KAAU,MAQ/D,IAAQ,MAAgB,OAAO,KAAU,WAAW,IAAQ,KAAA;CAClE,OACE,kBAAC,OAAD;EACE,aAAU;EACV,WAAW,EAKT,4CACA,KAAQ,gDACR,CACF;EACA,GAAI;EAXN,UAAA,CAaG,KACC,kBAAC,OAAD;GAAK,WAAU;GAAf,UAAA,CACE,kBAAC,OAAD;IAAK,WAAU;IAAf,UAAA,CACG,KAAS,QACR,kBAAC,GAAD;KAAW,MAAK;KAAa;KAC1B,UAAA;IACQ,CAAA,GAEZ,KAAe,QAAQ,kBAAC,GAAD;KAAiB,WAAU;KAAU,UAAA;IAA6B,CAAA,CACvF;GACJ,CAAA,GAAA,CACE;EAEN,CAAA,GAAA,IACC,kBAAC,OAAD;GACE,WAAW,EAAG,gCAAgC,CAAgB;GAC9D,UAAU;GAIV,MAAM,IAAQ,WAAW,KAAA;GACzB,cAAY;GAEX;EACE,CAAA,IACH,IAEF,kBAAC,OAAD;GAAK,WAAW;GAAmB;EAAc,CAAA,IAEjD,CAEC;;AAET,CAAC"}
|
|
@@ -25,6 +25,7 @@ function s(e) {
|
|
|
25
25
|
var c = t(function({ icon: t, title: i, description: a, children: c, className: l, animationDelay: u = "0ms", hue: d }) {
|
|
26
26
|
let f = d ?? s(i);
|
|
27
27
|
return /* @__PURE__ */ r("div", {
|
|
28
|
+
"data-slot": "page-header",
|
|
28
29
|
className: e("mb-6 flex flex-wrap items-start justify-between gap-x-6 gap-y-3 px-6 animate-card-fade-in", l),
|
|
29
30
|
style: { animationDelay: u },
|
|
30
31
|
children: [/* @__PURE__ */ r("div", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-header.js","names":[],"sources":["../../../src/components/chrome/page-header.tsx"],"mappings":";;;;AAMA,IAAM,IAAsC,EAAE,UAAU,WAAW,GAStD,IAAY;CAAC;CAAO;CAAU;CAAU;CAAS;CAAQ;AAAQ,GAIxE,IAAqC;CACzC,KAAK;CACL,QAAQ;CACR,QAAQ;CACR,OAAO;CACP,MAAM;CACN,QAAQ;AACV;AAqBA,SAAgB,EAAQ,GAAuB;CAC7C,IAAI,IAAI;CACR,KAAK,IAAI,IAAI,GAAG,IAAI,EAAK,QAAQ,KAE/B,AADA,KAAK,EAAK,WAAW,CAAC,GACtB,IAAI,KAAK,KAAK,GAAG,QAAU;CAE7B,OAAO,EAAU,KAAK,IAAI,CAAC,IAAI,EAAU;AAC3C;AA8DA,IAAa,IAAa,EAAK,SAAoB,EACjD,MAAM,GACN,UACA,gBACA,aACA,cACA,oBAAiB,OACjB,UACkB;CAClB,IAAM,IAAW,KAAO,EAAQ,CAAK;CACrC,OACE,kBAAC,OAAD;EACE,WAAW,EACT,6FACA,CACF;EACA,OAAO,EAAE,kBAAe;
|
|
1
|
+
{"version":3,"file":"page-header.js","names":[],"sources":["../../../src/components/chrome/page-header.tsx"],"mappings":";;;;AAMA,IAAM,IAAsC,EAAE,UAAU,WAAW,GAStD,IAAY;CAAC;CAAO;CAAU;CAAU;CAAS;CAAQ;AAAQ,GAIxE,IAAqC;CACzC,KAAK;CACL,QAAQ;CACR,QAAQ;CACR,OAAO;CACP,MAAM;CACN,QAAQ;AACV;AAqBA,SAAgB,EAAQ,GAAuB;CAC7C,IAAI,IAAI;CACR,KAAK,IAAI,IAAI,GAAG,IAAI,EAAK,QAAQ,KAE/B,AADA,KAAK,EAAK,WAAW,CAAC,GACtB,IAAI,KAAK,KAAK,GAAG,QAAU;CAE7B,OAAO,EAAU,KAAK,IAAI,CAAC,IAAI,EAAU;AAC3C;AA8DA,IAAa,IAAa,EAAK,SAAoB,EACjD,MAAM,GACN,UACA,gBACA,aACA,cACA,oBAAiB,OACjB,UACkB;CAClB,IAAM,IAAW,KAAO,EAAQ,CAAK;CACrC,OACE,kBAAC,OAAD;EACE,aAAU;EACV,WAAW,EACT,6FACA,CACF;EACA,OAAO,EAAE,kBAAe;EAN1B,UAAA,CAQE,kBAAC,OAAD;GAAK,WAAU;GAAf,UAAA,CACE,kBAAC,MAAD;IAAI,WAAU;IAAd,UAAA,CACE,kBAAC,GAAD;KAAM,WAAW,EAAG,yBAAyB,EAAU,EAAS;KAAG,eAAY;IAAQ,CAAA,GACtF,CACC;GACJ,CAAA,GAAA,kBAAC,KAAD;IAAG,WAAU;IAAoB,UAAA;GAAe,CAAA,CAC7C;EACJ,CAAA,GAAA,CACE;;AAET,CAAC,GAcY,IAAuB,EAAK,WAAgC;CACvE,OACE,kBAAC,OAAD;EAAK,OAAM;EAAI,QAAO;EAAI,eAAY;EAAO,OAAO;EAClD,UAAA,kBAAC,QAAD,EAAA,UACE,kBAAC,kBAAD;GAAgB,IAAG;GAAqB,eAAc;GAAiB,IAAG;GAAI,IAAG;GAAI,IAAG;GAAK,IAAG;GAAhG,UAAA;IACE,kBAAC,QAAD;KAAM,QAAO;KAAK,WAAU;IAAkB,CAAA;IAC9C,kBAAC,QAAD;KAAM,QAAO;KAAM,WAAU;IAAkB,CAAA;IAC/C,kBAAC,QAAD;KAAM,QAAO;KAAM,WAAU;IAAkB,CAAA;IAC/C,kBAAC,QAAD;KAAM,QAAO;KAAM,WAAU;IAAkB,CAAA;IAC/C,kBAAC,QAAD;KAAM,QAAO;KAAM,WAAU;IAAkB,CAAA;IAC/C,kBAAC,QAAD;KAAM,QAAO;KAAO,WAAU;IAAkB,CAAA;GAClC;EACZ,CAAA,EAAA,CAAA;CACH,CAAA;AAET,CAAC"}
|
|
@@ -3,6 +3,12 @@ interface PageInsetProps {
|
|
|
3
3
|
className?: string;
|
|
4
4
|
}
|
|
5
5
|
/**
|
|
6
|
+
* @deprecated Use `PageSection` inside a `PageCard`. This component exists to
|
|
7
|
+
* put bare body content on the content column of a route that has no card to
|
|
8
|
+
* explain that column — and the route is now the card, so the column explains
|
|
9
|
+
* itself and the section draws the divider too. Kept working for consumers
|
|
10
|
+
* mid-migration; removed no earlier than the next major.
|
|
11
|
+
*
|
|
6
12
|
* THE CONTENT COLUMN, FOR BODY CONTENT THAT IS NOT A CARD. Wraps its children
|
|
7
13
|
* in the same `px-6` that `PageHeader` and `PageToolbar` carry, so a tab strip,
|
|
8
14
|
* a byline or a bare paragraph lands on the vertical the page title and every
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-inset.js","names":[],"sources":["../../../src/components/chrome/page-inset.tsx"],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"page-inset.js","names":[],"sources":["../../../src/components/chrome/page-inset.tsx"],"mappings":";;;;AA8CA,IAAa,IAAY,EAAK,SAAmB,EAAE,aAAU,gBAA6B;CACxF,OAAO,kBAAC,OAAD;EAAK,WAAW,EAAG,QAAQ,CAAS;EAAI;CAAc,CAAA;AAC/D,CAAC"}
|
|
@@ -4,6 +4,7 @@ import { jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
|
4
4
|
//#region src/components/chrome/page-toolbar.tsx
|
|
5
5
|
var i = { animationDelay: "50ms" }, a = t(function({ left: t, right: a, children: o, className: s }) {
|
|
6
6
|
return /* @__PURE__ */ n("div", {
|
|
7
|
+
"data-slot": "page-toolbar",
|
|
7
8
|
className: e("mb-4 px-6 animate-card-fade-in", s),
|
|
8
9
|
style: i,
|
|
9
10
|
children: o ?? /* @__PURE__ */ r("div", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-toolbar.js","names":[],"sources":["../../../src/components/chrome/page-toolbar.tsx"],"mappings":";;;;AAKA,IAAM,IAAqC,EAAE,gBAAgB,OAAO,GAmCvD,IAAc,EAAK,SAAqB,EAAE,SAAM,UAAO,aAAU,gBAA+B;CAC3G,OACE,kBAAC,OAAD;EAAK,WAAW,EAAG,kCAAkC,CAAS;EAAG,OAAO;
|
|
1
|
+
{"version":3,"file":"page-toolbar.js","names":[],"sources":["../../../src/components/chrome/page-toolbar.tsx"],"mappings":";;;;AAKA,IAAM,IAAqC,EAAE,gBAAgB,OAAO,GAmCvD,IAAc,EAAK,SAAqB,EAAE,SAAM,UAAO,aAAU,gBAA+B;CAC3G,OACE,kBAAC,OAAD;EAAK,aAAU;EAAe,WAAW,EAAG,kCAAkC,CAAS;EAAG,OAAO;EAC9F,UAAA,KACC,kBAAC,OAAD;GACE,WAAW,EACT,qCACA,KAAQ,IAAQ,oBAAoB,IAAQ,gBAAgB,eAC9D;GAJF,UAAA,CAMG,KAAQ,kBAAC,OAAD;IAAK,WAAU;IAA2B,UAAA;GAAU,CAAA,GAC5D,KAAS,kBAAC,OAAD;IAAK,WAAU;IAA2B,UAAA;GAAW,CAAA,CAC5D;;CAEJ,CAAA;AAET,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -66,6 +66,7 @@ export * from "./components/chrome/fiesta-logo";
|
|
|
66
66
|
export * from "./components/chrome/language-selector";
|
|
67
67
|
export * from "./components/chrome/main-content";
|
|
68
68
|
export * from "./components/chrome/nav-list";
|
|
69
|
+
export * from "./components/chrome/page-card";
|
|
69
70
|
export * from "./components/chrome/page-header";
|
|
70
71
|
export * from "./components/chrome/page-inset";
|
|
71
72
|
export * from "./components/chrome/page-layout";
|
package/dist/index.js
CHANGED
|
@@ -59,58 +59,59 @@ import { FiestaLogo as jn } from "./components/chrome/fiesta-logo.js";
|
|
|
59
59
|
import { LanguageSelector as Mn } from "./components/chrome/language-selector.js";
|
|
60
60
|
import { MainContent as Nn } from "./components/chrome/main-content.js";
|
|
61
61
|
import { NavList as Pn, NavListItem as Fn, NavListLink as In, NavListSection as Ln, NavListSectionContent as Rn, NavListSectionTrigger as zn } from "./components/chrome/nav-list.js";
|
|
62
|
-
import {
|
|
63
|
-
import {
|
|
64
|
-
import {
|
|
65
|
-
import {
|
|
66
|
-
import {
|
|
67
|
-
import {
|
|
68
|
-
import {
|
|
69
|
-
import {
|
|
70
|
-
import {
|
|
71
|
-
import {
|
|
72
|
-
import {
|
|
73
|
-
import {
|
|
74
|
-
import {
|
|
75
|
-
import {
|
|
76
|
-
import {
|
|
77
|
-
import {
|
|
78
|
-
import {
|
|
79
|
-
import {
|
|
80
|
-
import {
|
|
81
|
-
import {
|
|
82
|
-
import {
|
|
83
|
-
import {
|
|
84
|
-
import {
|
|
85
|
-
import {
|
|
86
|
-
import {
|
|
87
|
-
import {
|
|
88
|
-
import {
|
|
89
|
-
import {
|
|
90
|
-
import {
|
|
91
|
-
import {
|
|
92
|
-
import {
|
|
93
|
-
import {
|
|
94
|
-
import {
|
|
95
|
-
import {
|
|
96
|
-
import {
|
|
97
|
-
import {
|
|
98
|
-
import {
|
|
99
|
-
import {
|
|
100
|
-
import {
|
|
101
|
-
import {
|
|
102
|
-
import {
|
|
103
|
-
import {
|
|
104
|
-
import {
|
|
105
|
-
import {
|
|
106
|
-
import {
|
|
107
|
-
import {
|
|
108
|
-
import {
|
|
109
|
-
import {
|
|
110
|
-
import {
|
|
111
|
-
import {
|
|
112
|
-
import {
|
|
113
|
-
import {
|
|
114
|
-
import {
|
|
115
|
-
import {
|
|
116
|
-
|
|
62
|
+
import { PageCard as Bn, PageSection as Vn } from "./components/chrome/page-card.js";
|
|
63
|
+
import { PAGE_HUES as Hn, PageHeader as Un, PageIconGradientDefs as Wn, pageHue as Gn } from "./components/chrome/page-header.js";
|
|
64
|
+
import { PageInset as Kn } from "./components/chrome/page-inset.js";
|
|
65
|
+
import { PageLayout as qn } from "./components/chrome/page-layout.js";
|
|
66
|
+
import { PageToolbar as Jn } from "./components/chrome/page-toolbar.js";
|
|
67
|
+
import { Pagination as Yn, paginationRange as Xn } from "./components/chrome/pagination.js";
|
|
68
|
+
import { Sidebar as Zn } from "./components/chrome/sidebar.js";
|
|
69
|
+
import { SkipToContent as Qn } from "./components/chrome/skip-to-content.js";
|
|
70
|
+
import { ThemeToggle as $n } from "./components/chrome/theme-toggle.js";
|
|
71
|
+
import { TopNav as er, TopNavActions as tr, TopNavBrand as nr, TopNavItem as rr, TopNavLink as ir, TopNavList as ar, TopNavMenuTrigger as or } from "./components/chrome/top-nav.js";
|
|
72
|
+
import { WizardProgress as sr } from "./components/wizard/wizard-progress.js";
|
|
73
|
+
import { ALL_COLOR_CODES as cr, AVAILABLE_COLORS as lr, BOARD_COLORS as ur, COLOR_CODE_MAP as dr, COLOR_DISPLAY as fr, FIESTABOARD_COLORS as pr, getBoardColor as mr, isValidBoardColor as hr, resolveColorCode as gr } from "./lib/board-colors.js";
|
|
74
|
+
import { BOARD_CHARS as _r, EXTRA_CHARS as vr, applyCode62Glyph as yr, getCharFromToken as br, getCharIndex as xr, isColorTile as Sr, messageToGrid as Cr, messageToText as wr, parseLine as Tr, resolveCode62Glyph as Er, tokensEqual as Dr } from "./lib/board-characters.js";
|
|
75
|
+
import { BoardTeaser as Or } from "./components/board/board-teaser.js";
|
|
76
|
+
import { BoardBackdrop as kr } from "./components/board/board-backdrop.js";
|
|
77
|
+
import { WizardShell as Ar } from "./components/wizard/wizard-shell.js";
|
|
78
|
+
import { DEVICE_DIMENSIONS as jr, MAX_NOTES_PER_AXIS as Mr, NOTE_COLS as Nr, NOTE_ROWS as Pr, isNoteArray as Fr, noteArrayDimensions as Ir, resolveDimensions as Lr } from "./lib/board-dimensions.js";
|
|
79
|
+
import { BoardDisplay as Rr, FLAP_SPEED_PRESETS as zr, deriveFlapTiming as Br, resolveFlapSpeed as Vr } from "./components/board/board-display.js";
|
|
80
|
+
import { ScaledBoardDisplay as Hr } from "./components/board/scaled-board-display.js";
|
|
81
|
+
import { StaticBoardDisplay as Ur } from "./components/board/static-board-display.js";
|
|
82
|
+
import { DEFAULT_SHAPE_LABELS as Wr, previewLabel as Gr, previewLabels as Kr, previewMessage as qr } from "./lib/board-previews.js";
|
|
83
|
+
import { BarList as Jr } from "./components/data/bar-list.js";
|
|
84
|
+
import { StatStrip as Yr, StatStripItem as Xr } from "./components/data/stat-strip.js";
|
|
85
|
+
import { BoardShowcase as Zr, DEFAULT_SHOWCASE_LABELS as Qr } from "./components/plugin/board-showcase.js";
|
|
86
|
+
import { PLUGIN_CATEGORIES as $r, PluginCategoryBadge as ei } from "./components/plugin/plugin-category-badge.js";
|
|
87
|
+
import { ScaledBoardTeaser as ti } from "./components/plugin/scaled-board-teaser.js";
|
|
88
|
+
import { PluginCard as ni } from "./components/plugin/plugin-card.js";
|
|
89
|
+
import { BOARD_CODE_TO_COLOR as ri, BOARD_COLOR_CODES as ii, CURSOR_ANCHOR as ai, DEFAULT_BOARD_LINES as oi, DEFAULT_BOARD_WIDTH as si, FILL_SPACE_REPEAT_VAR as ci, FILL_SPACE_VAR as li } from "./components/editor/constants.js";
|
|
90
|
+
import { NodeViewInjectionProvider as ui, useNodeViewInjection as di } from "./components/editor/node-views/node-view-context.js";
|
|
91
|
+
import { ColorTileNodeView as fi, DEFAULT_COLOR_TILE_NODE_VIEW_LABELS as pi } from "./components/editor/node-views/color-tile-node-view.js";
|
|
92
|
+
import { ColorTileNode as mi } from "./components/editor/extensions/color-tile-node.js";
|
|
93
|
+
import { DEFAULT_FILL_SPACE_NODE_VIEW_LABELS as hi, FillSpaceNodeView as gi } from "./components/editor/node-views/fill-space-node-view.js";
|
|
94
|
+
import { FillSpaceNode as _i } from "./components/editor/extensions/fill-space-node.js";
|
|
95
|
+
import { DEFAULT_FORMULA_NODE_VIEW_LABELS as vi, FormulaNodeView as yi } from "./components/editor/node-views/formula-node-view.js";
|
|
96
|
+
import { FormulaNode as bi } from "./components/editor/extensions/formula-node.js";
|
|
97
|
+
import { LineNavigation as xi } from "./components/editor/extensions/line-navigation.js";
|
|
98
|
+
import { SingleParagraphDoc as Si } from "./components/editor/extensions/single-paragraph-doc.js";
|
|
99
|
+
import { TrailingNewline as Ci } from "./components/editor/extensions/trailing-newline.js";
|
|
100
|
+
import { DEFAULT_VARIABLE_NODE_VIEW_LABELS as wi, VariableNodeView as Ti } from "./components/editor/node-views/variable-node-view.js";
|
|
101
|
+
import { VariableNode as Ei } from "./components/editor/extensions/variable-node.js";
|
|
102
|
+
import { DEFAULT_WRAPPED_TEXT_VIEW_LABELS as Di, WrappedTextView as Oi } from "./components/editor/node-views/wrapped-text-view.js";
|
|
103
|
+
import { WrappedTextNode as ki } from "./components/editor/extensions/wrapped-text-node.js";
|
|
104
|
+
import { ColorPickerContent as Ai, DEFAULT_COLOR_PICKER_LABELS as ji } from "./components/editor/color-picker-content.js";
|
|
105
|
+
import { DRAW_CHARS as Mi, brushToCell as Ni, cellsToLine as Pi, isPositionalLine as Fi, lineToCells as Ii, paintLine as Li, renderPositionalLine as Ri } from "./components/editor/utils/draw-mode.js";
|
|
106
|
+
import { DEFAULT_DRAW_CHAR_PICKER_LABELS as zi, DrawCharPickerContent as Bi } from "./components/editor/draw-char-picker-content.js";
|
|
107
|
+
import { DEFAULT_FORMATTING_PICKER_LABELS as Vi, FormattingPickerContent as Hi } from "./components/editor/formatting-picker-content.js";
|
|
108
|
+
import { DEFAULT_TOOLBAR_DROPDOWN_LABELS as Ui, ToolbarDropdown as Wi } from "./components/editor/toolbar-dropdown.js";
|
|
109
|
+
import { parseLineContent as Gi, parseTemplateSimple as Ki, serializeTemplateSimple as qi } from "./components/editor/utils/serialization.js";
|
|
110
|
+
import { insertTemplateContent as Ji } from "./components/editor/utils/insertion.js";
|
|
111
|
+
import { DEFAULT_TEMPLATE_EDITOR_TOOLBAR_LABELS as Yi, TemplateEditorToolbar as Xi } from "./components/editor/template-editor-toolbar.js";
|
|
112
|
+
import { buildStrokeTransaction as Zi, lineRanges as Qi } from "./components/editor/utils/stroke-transaction.js";
|
|
113
|
+
import { DEFAULT_TEMPLATE_EDITOR_LABELS as $i, TemplateEditor as ea } from "./components/editor/template-editor.js";
|
|
114
|
+
import { DEFAULT_FILTER_PICKER_LABELS as ta, FilterPickerContent as na } from "./components/editor/filter-picker-content.js";
|
|
115
|
+
import { DEFAULT_VARIABLE_PICKER_LABELS as ra, VariablePickerContent as ia, createLucideIconResolver as aa, getPluginsWithNestedArrays as oa } from "./components/editor/variable-picker-content.js";
|
|
116
|
+
import { calculateLineLength as sa, getOverflowAmount as ca, willOverflow as la } from "./components/editor/utils/length-calculator.js";
|
|
117
|
+
export { cr as ALL_COLOR_CODES, lr as AVAILABLE_COLORS, t as Accordion, n as AccordionContent, r as AccordionItem, i as AccordionTrigger, _ as ActionCard, E as Alert, D as AlertDescription, $ as AlertDialog, ee as AlertDialogAction, te as AlertDialogCancel, ne as AlertDialogContent, re as AlertDialogDescription, ie as AlertDialogFooter, ae as AlertDialogHeader, oe as AlertDialogOverlay, se as AlertDialogPortal, ce as AlertDialogTitle, le as AlertDialogTrigger, O as AlertTitle, _r as BOARD_CHARS, ri as BOARD_CODE_TO_COLOR, ur as BOARD_COLORS, ii as BOARD_COLOR_CODES, M as Badge, Jr as BarList, kr as BoardBackdrop, Rr as BoardDisplay, vn as BoardIcon, yn as BoardSelector, Zr as BoardShowcase, Or as BoardTeaser, J as Box, bn as Breadcrumb, xn as BreadcrumbEllipsis, Sn as BreadcrumbItem, Cn as BreadcrumbLink, wn as BreadcrumbList, Tn as BreadcrumbPage, En as BreadcrumbSeparator, A as Button, dr as COLOR_CODE_MAP, fr as COLOR_DISPLAY, ai as CURSOR_ANCHOR, s as Card, c as CardAction, l as CardContent, u as CardDescription, d as CardFooter, f as CardHeader, p as CardTitle, L as Checkbox, P as Chip, Ye as Code, y as Collapsible, b as CollapsibleContent, x as CollapsibleTrigger, Ai as ColorPickerContent, mi as ColorTileNode, fi as ColorTileNodeView, R as Combobox, V as CopyButton, oi as DEFAULT_BOARD_LINES, si as DEFAULT_BOARD_WIDTH, ji as DEFAULT_COLOR_PICKER_LABELS, pi as DEFAULT_COLOR_TILE_NODE_VIEW_LABELS, z as DEFAULT_COMBOBOX_LABELS, zi as DEFAULT_DRAW_CHAR_PICKER_LABELS, hi as DEFAULT_FILL_SPACE_NODE_VIEW_LABELS, ta as DEFAULT_FILTER_PICKER_LABELS, Vi as DEFAULT_FORMATTING_PICKER_LABELS, vi as DEFAULT_FORMULA_NODE_VIEW_LABELS, Wr as DEFAULT_SHAPE_LABELS, Qr as DEFAULT_SHOWCASE_LABELS, $i as DEFAULT_TEMPLATE_EDITOR_LABELS, Yi as DEFAULT_TEMPLATE_EDITOR_TOOLBAR_LABELS, Ui as DEFAULT_TOOLBAR_DROPDOWN_LABELS, wi as DEFAULT_VARIABLE_NODE_VIEW_LABELS, ra as DEFAULT_VARIABLE_PICKER_LABELS, Di as DEFAULT_WRAPPED_TEXT_VIEW_LABELS, jr as DEVICE_DIMENSIONS, Mi as DRAW_CHARS, ue as Dialog, de as DialogClose, fe as DialogContent, pe as DialogDescription, me as DialogFooter, he as DialogHeader, ge as DialogOverlay, _e as DialogPortal, ve as DialogTitle, ye as DialogTrigger, Bi as DrawCharPickerContent, be as DropdownMenu, xe as DropdownMenuCheckboxItem, Se as DropdownMenuContent, Ce as DropdownMenuGroup, we as DropdownMenuItem, Te as DropdownMenuLabel, Ee as DropdownMenuPortal, De as DropdownMenuRadioGroup, Oe as DropdownMenuRadioItem, ke as DropdownMenuSeparator, Ae as DropdownMenuShortcut, je as DropdownMenuSub, Me as DropdownMenuSubContent, Ne as DropdownMenuSubTrigger, Pe as DropdownMenuTrigger, vr as EXTRA_CHARS, I as EmptyState, pr as FIESTABOARD_COLORS, Dn as FIESTA_ICON_DATA_URI, On as FIESTA_ICON_PALETTE, kn as FIESTA_ICON_SVG, ci as FILL_SPACE_REPEAT_VAR, li as FILL_SPACE_VAR, zr as FLAP_SPEED_PRESETS, ht as FadeContent, G as Field, An as FiestaIcon, jn as FiestaLogo, _i as FillSpaceNode, gi as FillSpaceNodeView, na as FilterPickerContent, Y as Flex, Hi as FormattingPickerContent, bi as FormulaNode, yi as FormulaNodeView, Z as Grid, Xe as Heading, h as IconTile, K as Input, S as JsonTree, Qe as Kbd, W as Label, Mn as LanguageSelector, Fe as Lightbox, Ie as LightboxClose, Le as LightboxContent, Re as LightboxFooter, ze as LightboxOverlay, Be as LightboxPortal, Ve as LightboxTrigger, xi as LineNavigation, et as List, tt as ListItem, Mr as MAX_NOTES_PER_AXIS, Nn as MainContent, C as MediaFrame, w as MediaFrameBar, T as MediaFrameMedia, Nr as NOTE_COLS, Pr as NOTE_ROWS, Pn as NavList, Fn as NavListItem, In as NavListLink, Ln as NavListSection, Rn as NavListSectionContent, zn as NavListSectionTrigger, ui as NodeViewInjectionProvider, Hn as PAGE_HUES, $r as PLUGIN_CATEGORIES, Bn as PageCard, Un as PageHeader, Wn as PageIconGradientDefs, Kn as PageInset, qn as PageLayout, Vn as PageSection, Jn as PageToolbar, Yn as Pagination, ni as PluginCard, ei as PluginCategoryBadge, He as Popover, Ue as PopoverClose, We as PopoverContent, Ge as PopoverDescription, Ke as PopoverTitle, qe as PopoverTrigger, Hr as ScaledBoardDisplay, ti as ScaledBoardTeaser, rt as ScrollArea, it as ScrollBar, q as SecretInput, Kt as SegmentedControl, qt as SegmentedControlItem, yt as Select, bt as SelectContent, xt as SelectGroup, St as SelectItem, Ct as SelectLabel, wt as SelectScrollDownButton, Tt as SelectScrollUpButton, Et as SelectSeparator, Dt as SelectTrigger, Ot as SelectValue, nn as Sheet, rn as SheetClose, an as SheetContent, on as SheetDescription, sn as SheetFooter, cn as SheetHeader, ln as SheetOverlay, un as SheetPortal, dn as SheetTitle, fn as SheetTrigger, Zn as Sidebar, Si as SingleParagraphDoc, gt as Skeleton, Qn as SkipToContent, kt as Slider, a as Spinner, en as Stack, Yr as StatStrip, Xr as StatStripItem, Ur as StaticBoardDisplay, _t as StatusDot, At as Swatch, jt as SwatchGroup, Lt as Switch, at as Table, ot as TableBody, st as TableCell, ct as TableHead, lt as TableHeader, ut as TableRow, dt as Tabs, ft as TabsContent, pt as TabsList, mt as TabsTrigger, ea as TemplateEditor, Xi as TemplateEditorToolbar, H as Text, _n as TextLink, Rt as Textarea, $n as ThemeToggle, zt as TimePicker, Bt as TimezonePicker, Ht as Toggle, Jt as ToggleCard, Yt as ToggleCardGroup, Ut as ToggleGroup, Wi as ToolbarDropdown, pn as Tooltip, mn as TooltipContent, hn as TooltipProvider, gn as TooltipTrigger, er as TopNav, tr as TopNavActions, nr as TopNavBrand, rr as TopNavItem, ir as TopNavLink, ar as TopNavList, or as TopNavMenuTrigger, Ci as TrailingNewline, Ei as VariableNode, Ti as VariableNodeView, ia as VariablePickerContent, sr as WizardProgress, Ar as WizardShell, ki as WrappedTextNode, Oi as WrappedTextView, v as actionCardMedallionVariants, k as alertVariants, yr as applyCode62Glyph, N as badgeVariants, Ni as brushToCell, Zi as buildStrokeTransaction, j as buttonVariants, sa as calculateLineLength, m as cardSurfaceClassName, Pi as cellsToLine, F as chipVariants, e as cn, aa as createLucideIconResolver, B as defaultComboboxFilter, Br as deriveFlapTiming, X as flexVariants, mr as getBoardColor, br as getCharFromToken, xr as getCharIndex, ca as getOverflowAmount, oa as getPluginsWithNestedArrays, Q as gridVariants, Ze as headingVariants, g as iconTileVariants, Ji as insertTemplateContent, Sr as isColorTile, Fr as isNoteArray, Fi as isPositionalLine, hr as isValidBoardColor, Qi as lineRanges, Ii as lineToCells, Vt as listTimezones, nt as listVariants, Cr as messageToGrid, wr as messageToText, Ir as noteArrayDimensions, Gn as pageHue, Xn as paginationRange, Li as paintLine, Tr as parseLine, Gi as parseLineContent, Ki as parseTemplateSimple, Gr as previewLabel, Kr as previewLabels, qr as previewMessage, Ri as renderPositionalLine, Er as resolveCode62Glyph, gr as resolveColorCode, Lr as resolveDimensions, Vr as resolveFlapSpeed, Xt as segmentedControlItemVariants, Zt as segmentedControlVariants, qi as serializeTemplateSimple, o as spinnerVariants, tn as stackVariants, vt as statusDotVariants, Mt as swatchFillVariants, Nt as swatchGlyphVariants, Pt as swatchGroupVariants, Ft as swatchIndicatorVariants, It as swatchVariants, U as textVariants, Qt as toggleCardGroupVariants, $t as toggleCardVariants, Wt as toggleGroupVariants, Gt as toggleVariants, Dr as tokensEqual, $e as useKbdPlatform, di as useNodeViewInjection, Je as usePopoverClose, la as willOverflow };
|