@knpkv/rly 0.12.1 → 0.14.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.
@@ -0,0 +1,74 @@
1
+ import type { RlySeries } from "../primitives/ChartLegend.js";
2
+ /** One series' value in one column. */
3
+ export interface RlyChartSegment {
4
+ readonly id: string;
5
+ readonly series: RlySeries;
6
+ /** A non-negative finite amount; zero, negative and non-finite values (`NaN`, ±Infinity) draw nothing. */
7
+ readonly value: number;
8
+ }
9
+ /** One period on the time axis, in epoch milliseconds, with its stacked values. */
10
+ export interface RlyChartColumn {
11
+ readonly start: number;
12
+ readonly end: number;
13
+ readonly segments: ReadonlyArray<RlyChartSegment>;
14
+ }
15
+ /** Consecutive columns drawn as one bar: `first`..`last` are column indices. */
16
+ export interface RlyChartBin {
17
+ readonly first: number;
18
+ readonly last: number;
19
+ readonly start: number;
20
+ readonly end: number;
21
+ readonly total: number;
22
+ readonly segments: ReadonlyArray<RlyChartSegment & {
23
+ readonly offset: number;
24
+ }>;
25
+ }
26
+ /** An inclusive range of column indices. */
27
+ export interface RlyChartSelection {
28
+ readonly from: number;
29
+ readonly to: number;
30
+ }
31
+ /** An axis label: at a bin's start, or the one end-anchored label at the axis end. */
32
+ export type RlyChartTick = {
33
+ readonly anchor: "start";
34
+ readonly index: number;
35
+ } | {
36
+ readonly anchor: "end";
37
+ };
38
+ /** Fail loudly on columns that cannot share one time axis: each must start at or after the previous end. */
39
+ export declare const validateColumns: (columns: ReadonlyArray<RlyChartColumn>) => void;
40
+ /**
41
+ * One stack order for the whole chart: each series id in the order it first appears across all
42
+ * columns. Every bin stacks in this order, so a series keeps its place from bar to bar.
43
+ */
44
+ export declare const stackOrder: (columns: ReadonlyArray<RlyChartColumn>) => ReadonlyMap<string, number>;
45
+ /**
46
+ * The smallest bin size whose every bar, measured on the shared time axis, is at least `minBar`
47
+ * pixels wide, so uneven or sparse periods are measured as drawn. Past a day per bar it grows in
48
+ * whole days (24 columns at a time); failing all, one bin holds everything.
49
+ */
50
+ export declare const chooseBinSize: (width: number, columns: ReadonlyArray<RlyChartColumn>, minBar?: number) => number;
51
+ /**
52
+ * Per bin, the factor that turns its total into a rate per nominal bin (`size` columns of average
53
+ * length), so a folded or longer bin stands as tall as its spending rate, not its raw sum. Bar areas
54
+ * then match totals on the time-proportional axis.
55
+ */
56
+ export declare const binRates: (bins: ReadonlyArray<RlyChartBin>, columns: ReadonlyArray<RlyChartColumn>, size: number) => ReadonlyArray<number>;
57
+ /**
58
+ * Group columns into bins of `size`, merging segments by id and stacking every bin in the chart's
59
+ * one `stackOrder`. A short trailing remainder joins the bin before it, so the last bar is never
60
+ * narrower than the rest.
61
+ */
62
+ export declare const binColumns: (columns: ReadonlyArray<RlyChartColumn>, size: number) => ReadonlyArray<RlyChartBin>;
63
+ /** Select one bin, or with `extend` grow an existing selection to cover it. Unknown bins change nothing. */
64
+ export declare const selectBin: (selection: RlyChartSelection | null, bins: ReadonlyArray<RlyChartBin>, index: number, extend: boolean) => RlyChartSelection | null;
65
+ /** The bin a navigation key moves focus to, or `null` for any other key. */
66
+ export declare const moveFocus: (key: string, current: number, last: number) => number | null;
67
+ /**
68
+ * Ticks at least `labelWidth` apart, from each bin's start in pixels on the shared time axis, so
69
+ * uneven bins never crowd their labels. The last bin always gets an end-anchored tick, so the axis
70
+ * says where it ends without a label clipping at the edge; ticks crowding it are dropped. One bin
71
+ * gets its start and end when both fit, else its start alone.
72
+ */
73
+ export declare const chartTicks: (starts: ReadonlyArray<number>, width: number, labelWidth: number) => ReadonlyArray<RlyChartTick>;
74
+ //# sourceMappingURL=chart.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chart.d.ts","sourceRoot":"","sources":["../../../src/internal/chart.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAE7D,uCAAuC;AACvC,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAA;IAC1B,0GAA0G;IAC1G,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CACvB;AAED,mFAAmF;AACnF,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,eAAe,CAAC,CAAA;CAClD;AAED,gFAAgF;AAChF,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,eAAe,GAAG;QAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAChF;AAED,4CAA4C;AAC5C,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CACpB;AAED,sFAAsF;AACtF,MAAM,MAAM,YAAY,GAAG;IAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAA;CAAE,CAAA;AAkB5G,4GAA4G;AAC5G,eAAO,MAAM,eAAe,YAAa,aAAa,CAAC,cAAc,CAAC,KAAG,IAOxE,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,UAAU,YAAa,aAAa,CAAC,cAAc,CAAC,KAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAM7F,CAAA;AAgBD;;;;GAIG;AACH,eAAO,MAAM,aAAa,UAAW,MAAM,WAAW,aAAa,CAAC,cAAc,CAAC,sBAAe,MASjG,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,QAAQ,SACb,aAAa,CAAC,WAAW,CAAC,WACvB,aAAa,CAAC,cAAc,CAAC,QAChC,MAAM,KACX,aAAa,CAAC,MAAM,CAKtB,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,UAAU,YAAa,aAAa,CAAC,cAAc,CAAC,QAAQ,MAAM,KAAG,aAAa,CAAC,WAAW,CA+B1G,CAAA;AAED,4GAA4G;AAC5G,eAAO,MAAM,SAAS,cACT,iBAAiB,GAAG,IAAI,QAC7B,aAAa,CAAC,WAAW,CAAC,SACzB,MAAM,UACL,OAAO,KACd,iBAAiB,GAAG,IAKtB,CAAA;AAED,4EAA4E;AAC5E,eAAO,MAAM,SAAS,QAAS,MAAM,WAAW,MAAM,QAAQ,MAAM,KAAG,MAAM,GAAG,IAc/E,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,UAAU,WACb,aAAa,CAAC,MAAM,CAAC,SACtB,MAAM,cACD,MAAM,KACjB,aAAa,CAAC,YAAY,CAmB5B,CAAA"}
@@ -9,8 +9,8 @@ export declare const RLY_REGION_VARIANTS: {
9
9
  };
10
10
  readonly tray: {
11
11
  readonly className: string;
12
- readonly purpose: "A region holding individually actionable cards, one surface step down so the cards stand out";
13
- readonly tokens: readonly ["color-surface-2", "color-border-1"];
12
+ readonly purpose: "A region holding individually actionable cards; its body sits one surface step down so the cards stand out, under the same header as every region";
13
+ readonly tokens: readonly ["color-surface-1", "color-surface-2", "color-border-1"];
14
14
  };
15
15
  };
16
16
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Region.d.ts","sourceRoot":"","sources":["../../../src/patterns/Region.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,qBAAqB,EAAE,KAAK,YAAY,EAAE,KAAK,SAAS,EAAS,MAAM,OAAO,CAAA;AAM5F,qDAAqD;AACrD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;CAa9B,CAAA;AAEF,8BAA8B;AAC9B,eAAO,MAAM,2BAA2B;;CAAsC,CAAA;AAE9E,8DAA8D;AAC9D,MAAM,MAAM,aAAa,GAAG,MAAM,OAAO,mBAAmB,CAAC,IAAI,CAAA;AAEjE,oEAAoE;AACpE,MAAM,MAAM,qBAAqB,GAAG,CAAC,GAAG,CAAC,CAAA;AAEzC,sCAAsC;AACtC,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,GAAG;IACvF,kFAAkF;IAClF,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,CAAA;IAC5B,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAChC,4DAA4D;IAC5D,QAAQ,CAAC,YAAY,CAAC,EAAE,qBAAqB,CAAA;IAC7C;;;OAGG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,+CAA+C;IAC/C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,2CAA2C;IAC3C,QAAQ,CAAC,IAAI,CAAC,EAAE,aAAa,CAAA;CAC9B,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,MAAM,4FAUhB,WAAW,KAAG,YA2BhB,CAAA"}
1
+ {"version":3,"file":"Region.d.ts","sourceRoot":"","sources":["../../../src/patterns/Region.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,qBAAqB,EAAE,KAAK,YAAY,EAAE,KAAK,SAAS,EAAS,MAAM,OAAO,CAAA;AAM5F,qDAAqD;AACrD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;CAc9B,CAAA;AAEF,8BAA8B;AAC9B,eAAO,MAAM,2BAA2B;;CAAsC,CAAA;AAE9E,8DAA8D;AAC9D,MAAM,MAAM,aAAa,GAAG,MAAM,OAAO,mBAAmB,CAAC,IAAI,CAAA;AAEjE,oEAAoE;AACpE,MAAM,MAAM,qBAAqB,GAAG,CAAC,GAAG,CAAC,CAAA;AAEzC,sCAAsC;AACtC,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,GAAG;IACvF,kFAAkF;IAClF,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,CAAA;IAC5B,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAChC,4DAA4D;IAC5D,QAAQ,CAAC,YAAY,CAAC,EAAE,qBAAqB,CAAA;IAC7C;;;OAGG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,+CAA+C;IAC/C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,2CAA2C;IAC3C,QAAQ,CAAC,IAAI,CAAC,EAAE,aAAa,CAAA;CAC9B,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,MAAM,4FAUhB,WAAW,KAAG,YA2BhB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"RelayDock.d.ts","sourceRoot":"","sources":["../../../src/patterns/RelayDock.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RelayDock.d.ts","sourceRoot":"","sources":["../../../src/patterns/RelayDock.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import type { ComponentPropsWithRef, ReactElement } from "react";
2
+ /** The keyboard shortcut a launcher advertises: the visible hint and its `aria-keyshortcuts` value. */
3
+ export interface RlyRelayShortcut {
4
+ /** Shown beside the label on wider screens, for example "⌘J" or "Ctrl J". */
5
+ readonly hint: string;
6
+ /** The ARIA form, for example "Meta+J" or "Control+J". */
7
+ readonly keys: string;
8
+ }
9
+ /** Relay's summon shortcut (Ctrl/⌘+J) as a platform shows it. */
10
+ export declare const relayShortcut: (apple: boolean) => RlyRelayShortcut;
11
+ /**
12
+ * Ctrl/⌘+J for the browser's platform, for a host that binds it. The server renders the non-Apple
13
+ * form and an Apple browser switches to ⌘ after hydration without a mismatch. A host that binds the
14
+ * key must also prevent the browser's own Ctrl+J (Downloads in Chrome on Windows and Linux).
15
+ */
16
+ export declare const useRelayShortcut: () => RlyRelayShortcut;
17
+ /** Inputs for the launcher. */
18
+ export type RelayLauncherProps = Omit<ComponentPropsWithRef<"button">, "children" | "type"> & {
19
+ /** Whether Relay is open; announced as the button's expanded state. */
20
+ readonly expanded: boolean;
21
+ /** The visible name, "Relay" unless the host names its Relay more specifically. */
22
+ readonly label?: string;
23
+ /**
24
+ * The shortcut the host actually binds, usually `useRelayShortcut()`, or `null` when it binds none
25
+ * (a live terminal that keeps its own chords). Required, so a launcher never advertises a key that
26
+ * does nothing.
27
+ */
28
+ readonly shortcut: RlyRelayShortcut | null;
29
+ };
30
+ /**
31
+ * The header button that opens and closes Relay: its mark, a label and the shortcut hint. It sits in
32
+ * the host's header like any other control, never fixed over the page. The hint hides on narrow
33
+ * screens, and the button stays 32px tall (44px for a coarse pointer).
34
+ */
35
+ export declare const RelayLauncher: ({ className, expanded, label, shortcut, ...props }: RelayLauncherProps) => ReactElement;
36
+ //# sourceMappingURL=RelayLauncher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RelayLauncher.d.ts","sourceRoot":"","sources":["../../../src/patterns/RelayLauncher.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AAQhE,uGAAuG;AACvG,MAAM,WAAW,gBAAgB;IAC/B,6EAA6E;IAC7E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,0DAA0D;IAC1D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB;AAED,iEAAiE;AACjE,eAAO,MAAM,aAAa,UAAW,OAAO,KAAG,gBACiC,CAAA;AAShF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,QAAO,gBAC+C,CAAA;AAEnF,+BAA+B;AAC/B,MAAM,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC,GAAG;IAC5F,uEAAuE;IACvE,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B,mFAAmF;IACnF,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CAAA;CAC3C,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,aAAa,uDAMvB,kBAAkB,KAAG,YAoBvB,CAAA"}
@@ -0,0 +1,35 @@
1
+ import type { ComponentPropsWithRef, ReactElement } from "react";
2
+ /** Sizes the bare mark is drawn and checked at, in CSS pixels; 16 stays legible in one colour. */
3
+ export declare const RLY_RELAY_MARK_SIZES: readonly [16, 20, 24, 32];
4
+ /** One supported bare mark size. */
5
+ export type RlyRelayMarkSize = (typeof RLY_RELAY_MARK_SIZES)[number];
6
+ /** Sizes the tile is drawn at; its glyph is half the tile. */
7
+ export declare const RLY_RELAY_MARK_TILE_SIZES: readonly [20, 24, 32];
8
+ /** One supported tile size. */
9
+ export type RlyRelayMarkTileSize = (typeof RLY_RELAY_MARK_TILE_SIZES)[number];
10
+ type MarkBaseProps = Omit<ComponentPropsWithRef<"svg">, "children" | "height" | "viewBox" | "width">;
11
+ /** Inputs for the bare mark. */
12
+ export type RelayMarkProps = MarkBaseProps & {
13
+ /** 20px unless given. */
14
+ readonly size?: RlyRelayMarkSize;
15
+ /** Names the mark for assistive technology; without it the mark is decorative and hidden. */
16
+ readonly label?: string;
17
+ };
18
+ /** Inputs for the mark on an agent-coloured tile. */
19
+ export type RelayMarkTileProps = Omit<ComponentPropsWithRef<"span">, "children"> & {
20
+ /** 24px unless given. */
21
+ readonly size?: RlyRelayMarkTileSize;
22
+ /** Names the tile for assistive technology; without it the tile is decorative and hidden. */
23
+ readonly label?: string;
24
+ };
25
+ /** The mark on an agent-coloured tile; in forced colours the tile becomes an outline in its context's colour. */
26
+ declare const RelayMarkTile: ({ className, label, size, ...props }: RelayMarkTileProps) => ReactElement;
27
+ /**
28
+ * Relay's mark, drawn in the current colour, so it follows its host's text in every theme and in
29
+ * forced colours. `RelayMark.Tile` sets it on the agent colour for headers and avatars.
30
+ */
31
+ export declare const RelayMark: (({ className, label, size, ...props }: RelayMarkProps) => ReactElement) & {
32
+ Tile: typeof RelayMarkTile;
33
+ };
34
+ export {};
35
+ //# sourceMappingURL=RelayMark.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RelayMark.d.ts","sourceRoot":"","sources":["../../../src/patterns/RelayMark.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AAMhE,kGAAkG;AAClG,eAAO,MAAM,oBAAoB,EAAE,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAoB,CAAA;AAC/E,oCAAoC;AACpC,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAA;AAEpE,8DAA8D;AAC9D,eAAO,MAAM,yBAAyB,EAAE,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAgB,CAAA;AAC5E,+BAA+B;AAC/B,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,yBAAyB,CAAC,CAAC,MAAM,CAAC,CAAA;AAE7E,KAAK,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAAE,UAAU,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,CAAC,CAAA;AA6BpG,gCAAgC;AAChC,MAAM,MAAM,cAAc,GAAG,aAAa,GAAG;IAC3C,yBAAyB;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,gBAAgB,CAAA;IAChC,6FAA6F;IAC7F,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,qDAAqD;AACrD,MAAM,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,GAAG;IACjF,yBAAyB;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,oBAAoB,CAAA;IACpC,6FAA6F;IAC7F,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACxB,CAAA;AAyBD,iHAAiH;AACjH,QAAA,MAAM,aAAa,yCAA0C,kBAAkB,KAAG,YAYjF,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,SAAS,0CACmB,cAAc,KAAG,YAAY;;CASrE,CAAA"}
@@ -36,6 +36,10 @@ export { RelationshipTable } from "./RelationshipTable.js";
36
36
  export type { RelationshipTableProps } from "./RelationshipTable.js";
37
37
  export { RelayDock } from "./RelayDock.js";
38
38
  export type { RelayDockProps, RlyRelayDockContextChip, RlyRelayDockDesktopPresentation, RlyRelayDockSelection, RlyRelayDockSelectionControl, RlyRelayDockState } from "./RelayDock.js";
39
+ export { RelayLauncher, relayShortcut, useRelayShortcut } from "./RelayLauncher.js";
40
+ export type { RelayLauncherProps, RlyRelayShortcut } from "./RelayLauncher.js";
41
+ export { RelayMark, RLY_RELAY_MARK_SIZES, RLY_RELAY_MARK_TILE_SIZES } from "./RelayMark.js";
42
+ export type { RelayMarkProps, RelayMarkTileProps, RlyRelayMarkSize, RlyRelayMarkTileSize } from "./RelayMark.js";
39
43
  export { ReleasePreview } from "./ReleasePreview.js";
40
44
  export type { ReleasePreviewProps, RlyReleasePreviewPresentation } from "./ReleasePreview.js";
41
45
  export { ReleaseRelay, RLY_RELEASE_RELAY_DEFAULT_VARIANTS, RLY_RELEASE_RELAY_SYMBOLS, RLY_RELEASE_RELAY_VARIANTS } from "./ReleaseRelay.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/patterns/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/patterns/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,72 @@
1
+ import type { ComponentPropsWithRef, ReactElement } from "react";
2
+ import { type RlyChartColumn, type RlyChartSelection } from "../internal/chart.js";
3
+ export type { RlyChartBin, RlyChartColumn, RlyChartSegment, RlyChartSelection } from "../internal/chart.js";
4
+ /** A level over time above the bars, on the same axis; `level: null` is a stretch with no reading. */
5
+ export interface RlyStepBand {
6
+ readonly id: string;
7
+ readonly label: string;
8
+ readonly segments: ReadonlyArray<{
9
+ readonly from: number;
10
+ readonly to: number;
11
+ readonly level: number | null;
12
+ }>;
13
+ /** A dashed mark at `level` percent, named in the key under the axis by `label` ("Near the limit, 80%"). */
14
+ readonly near?: RlyBandMark;
15
+ }
16
+ /** A level worth marking on a band, with the key text that names it. */
17
+ export interface RlyBandMark {
18
+ readonly level: number;
19
+ readonly label: string;
20
+ }
21
+ /** A stretch of the time axis to shade behind the bars and bands, named in a key under the axis. */
22
+ export interface RlyChartWindow {
23
+ readonly from: number;
24
+ readonly to: number;
25
+ /** What the stretch is, for example "Current 5-hour window, resets 14:57". */
26
+ readonly label: string;
27
+ }
28
+ type StackedBarsBaseProps = Omit<ComponentPropsWithRef<"div">, "aria-label" | "children" | "onChange">;
29
+ export type StackedBarsProps = StackedBarsBaseProps & {
30
+ /** Names the chart, for example "Spend by booking". */
31
+ readonly label: string;
32
+ /** How to read and operate the chart, in the caller's words; read after the label. */
33
+ readonly instructions: string;
34
+ /**
35
+ * Periods in time order, none overlapping (gaps are fine); anything else throws
36
+ * an error naming the column. Bins group every N columns, so hourly columns starting on the hour bin
37
+ * on clock hours.
38
+ */
39
+ readonly columns: ReadonlyArray<RlyChartColumn>;
40
+ /** Bands of limit levels drawn above the bars, sharing their time axis. */
41
+ readonly bands?: ReadonlyArray<RlyStepBand>;
42
+ /** A stretch of time to shade across the bands and bars, such as the current limit window. */
43
+ readonly window?: RlyChartWindow;
44
+ /** Key text for band stretches with no reading ("No reading"); required when any band has one. */
45
+ readonly noReadingLabel?: string;
46
+ /**
47
+ * The caption for the scale: the tallest bar's rate per `binSize` columns. Bars plot rates, so a
48
+ * folded or longer bin reads true against "per N hours".
49
+ */
50
+ readonly formatScale: (max: number, binSize: number) => string;
51
+ /** The axis label for an instant: a bin's start, or the axis end for the right-hand label. */
52
+ readonly formatTick: (at: number, binSize: number) => string;
53
+ readonly selection: RlyChartSelection | null;
54
+ readonly onSelectionChange: (selection: RlyChartSelection | null) => void;
55
+ /** What the selection means, announced politely once a selection the user made settles. */
56
+ readonly describeSelection: (selection: RlyChartSelection | null) => string;
57
+ /** Plot height in pixels, without bands and axis; never under 24, since every bar is a pointer target. */
58
+ readonly height?: number;
59
+ };
60
+ /**
61
+ * Stacked values per period on a time axis, with optional limit bands above. Bars, bands, the window
62
+ * and the selection share one time scale, so a short final bin is drawn narrower. Narrow containers
63
+ * bin periods so every bar's hit area stays at least 24px wide, a full pointer target (the drawn
64
+ * fill is 2px narrower, for the gap); the selection keeps its columns across rebinning.
65
+ * One tab stop: ←/→ move and select, Shift extends, Home/End jump, Escape clears. Click selects;
66
+ * Shift+click, or a second touch tap elsewhere, extends. The SVG is hidden from assistive technology,
67
+ * so callers render the same data beside it: a table at a readable resolution (a row per day for a
68
+ * week of hours), a table of each band's intervals, and a `describeSelection` that names every
69
+ * series' value in the span, so arrowing through the plot reaches each period's numbers.
70
+ */
71
+ export declare const StackedBars: ({ bands, className, columns, describeSelection, formatScale, formatTick, height, instructions, label, noReadingLabel, onSelectionChange, ref: callerRef, selection, window, ...props }: StackedBarsProps) => ReactElement;
72
+ //# sourceMappingURL=StackedBars.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StackedBars.d.ts","sourceRoot":"","sources":["../../../src/primitives/StackedBars.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAiB,YAAY,EAAoB,MAAM,OAAO,CAAA;AAIjG,OAAO,EAML,KAAK,cAAc,EACnB,KAAK,iBAAiB,EAGvB,MAAM,sBAAsB,CAAA;AAK7B,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAE3G,sGAAsG;AACtG,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,CAAA;IAC/G,4GAA4G;IAC5G,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,CAAA;CAC5B;AAED,wEAAwE;AACxE,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CACvB;AAED,oGAAoG;AACpG,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,8EAA8E;IAC9E,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CACvB;AAED,KAAK,oBAAoB,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAAE,YAAY,GAAG,UAAU,GAAG,UAAU,CAAC,CAAA;AACtG,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,GAAG;IACpD,uDAAuD;IACvD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,sFAAsF;IACtF,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,cAAc,CAAC,CAAA;IAC/C,2EAA2E;IAC3E,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC,WAAW,CAAC,CAAA;IAC3C,8FAA8F;IAC9F,QAAQ,CAAC,MAAM,CAAC,EAAE,cAAc,CAAA;IAChC,kGAAkG;IAClG,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAA;IAChC;;;OAGG;IACH,QAAQ,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,MAAM,CAAA;IAC9D,8FAA8F;IAC9F,QAAQ,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,MAAM,CAAA;IAC5D,QAAQ,CAAC,SAAS,EAAE,iBAAiB,GAAG,IAAI,CAAA;IAC5C,QAAQ,CAAC,iBAAiB,EAAE,CAAC,SAAS,EAAE,iBAAiB,GAAG,IAAI,KAAK,IAAI,CAAA;IACzE,2FAA2F;IAC3F,QAAQ,CAAC,iBAAiB,EAAE,CAAC,SAAS,EAAE,iBAAiB,GAAG,IAAI,KAAK,MAAM,CAAA;IAC3E,0GAA0G;IAC1G,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CACzB,CAAA;AAsID;;;;;;;;;;GAUG;AACH,eAAO,MAAM,WAAW,2LAgBrB,gBAAgB,KAAG,YA2TrB,CAAA"}
@@ -22,6 +22,8 @@ export { RLY_SHEET_DEFAULT_VARIANTS, RLY_SHEET_VARIANTS, Sheet } from "./Sheet.j
22
22
  export type { RlySheetSide, SheetBodyProps, SheetCloseProps, SheetContentProps, SheetFooterProps, SheetRootProps, SheetTriggerProps } from "./Sheet.js";
23
23
  export { RLY_SKELETON_DEFAULT_VARIANTS, RLY_SKELETON_VARIANTS, Skeleton } from "./Skeleton.js";
24
24
  export type { RlySkeletonVariant, SkeletonProps } from "./Skeleton.js";
25
+ export { StackedBars } from "./StackedBars.js";
26
+ export type { RlyBandMark, RlyChartBin, RlyChartColumn, RlyChartSegment, RlyChartSelection, RlyChartWindow, RlyStepBand, StackedBarsProps } from "./StackedBars.js";
25
27
  export { RLY_STATE_LABEL_DEFAULT_VARIANTS, RLY_STATE_LABEL_VARIANTS, StateLabel } from "./StateLabel.js";
26
28
  export type { RlyStateLabelSize, RlyStateTone, StateLabelProps } from "./StateLabel.js";
27
29
  export { RLY_STATE_PANEL_DEFAULT_VARIANTS, RLY_STATE_PANEL_VARIANTS, StatePanel } from "./StatePanel.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/primitives/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/primitives/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACtF,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC5E,OAAO,EAAE,MAAM,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACtF,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAC/E,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAC1E,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACvF,OAAO,EAAE,MAAM,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACtF,YAAY,EACV,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,aAAa,EACd,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,OAAO,EAAE,4BAA4B,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAC1F,YAAY,EAAE,YAAY,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAC3F,OAAO,EAAE,KAAK,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAClF,YAAY,EAAE,iBAAiB,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAC7E,OAAO,EAAE,UAAU,EAAE,gCAAgC,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAA;AACxG,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAC/F,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,gCAAgC,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAA;AACxH,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAC5F,OAAO,EAAE,MAAM,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACtF,YAAY,EAAE,WAAW,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AACpF,OAAO,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACtF,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAC9E,OAAO,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClF,YAAY,EACV,YAAY,EACZ,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EAClB,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,6BAA6B,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAC9F,YAAY,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,YAAY,EACV,WAAW,EACX,WAAW,EACX,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,WAAW,EACX,gBAAgB,EACjB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,gCAAgC,EAAE,wBAAwB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACxG,YAAY,EAAE,iBAAiB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACvF,OAAO,EAAE,gCAAgC,EAAE,wBAAwB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACxG,YAAY,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACpG,OAAO,EAAE,4BAA4B,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAC1F,YAAY,EAAE,iBAAiB,EAAE,cAAc,EAAE,iBAAiB,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AACtH,OAAO,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAC9E,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AACrF,OAAO,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAC9E,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AACvF,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,YAAY,EAAE,6BAA6B,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACvF,OAAO,EAAE,iCAAiC,EAAE,yBAAyB,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC5G,YAAY,EAAE,kBAAkB,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAC3F,OAAO,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAC7D,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA"}
package/dist/fonts.css CHANGED
@@ -13,3 +13,79 @@
13
13
  font-weight: 100 900;
14
14
  src: url("./fonts/geist-mono-latin-wght-normal.woff2") format("woff2-variations");
15
15
  }
16
+
17
+ /*
18
+ * Metric-matched fallbacks, so text keeps its line breaks and row heights when Geist swaps in.
19
+ * Arial, Liberation Sans and Arimo share advance widths, so one override set covers macOS, Windows
20
+ * and Linux; Courier New, Liberation Mono and Cousine likewise. Geist's ascent 1005 and descent 295
21
+ * (per 1000; hhea and typo agree, USE_TYPO_METRICS is set) are divided by each face's size-adjust.
22
+ * Widths were measured in Chromium on product copy: Geist at 430 (body) runs 103.3% of Liberation
23
+ * Sans and at 520 (meta) 105.2%, so each gets its own face. At 600 to 650 it runs 99.8% to 101.1%
24
+ * of Liberation Sans Bold; a real bold face covers 550 and up, because a synthetic bold of the
25
+ * regular face matches neither.
26
+ */
27
+ @font-face {
28
+ font-family: "Geist Fallback";
29
+ font-style: normal;
30
+ font-weight: 100 479;
31
+ src:
32
+ local("Arial"), local("ArialMT"), local("Liberation Sans"), local("LiberationSans"), local("Arimo"),
33
+ local("Arimo-Regular");
34
+ size-adjust: 103.3%;
35
+ ascent-override: 97.3%;
36
+ descent-override: 28.6%;
37
+ line-gap-override: 0%;
38
+ }
39
+
40
+ /* Meta text (520) runs wider against the same regular face. */
41
+ @font-face {
42
+ font-family: "Geist Fallback";
43
+ font-style: normal;
44
+ font-weight: 480 549;
45
+ src:
46
+ local("Arial"), local("ArialMT"), local("Liberation Sans"), local("LiberationSans"), local("Arimo"),
47
+ local("Arimo-Regular");
48
+ size-adjust: 105.2%;
49
+ ascent-override: 95.5%;
50
+ descent-override: 28%;
51
+ line-gap-override: 0%;
52
+ }
53
+
54
+ @font-face {
55
+ font-family: "Geist Fallback";
56
+ font-style: normal;
57
+ font-weight: 550 900;
58
+ src:
59
+ local("Arial Bold"), local("Arial-BoldMT"), local("Liberation Sans Bold"), local("LiberationSans-Bold"),
60
+ local("Arimo Bold"), local("Arimo-Bold");
61
+ size-adjust: 100.3%;
62
+ ascent-override: 100.2%;
63
+ descent-override: 29.4%;
64
+ line-gap-override: 0%;
65
+ }
66
+
67
+ @font-face {
68
+ font-family: "Geist Mono Fallback";
69
+ font-style: normal;
70
+ font-weight: 100 549;
71
+ src:
72
+ local("Courier New"), local("CourierNewPSMT"), local("Liberation Mono"), local("LiberationMono"), local("Cousine"),
73
+ local("Cousine-Regular");
74
+ size-adjust: 100%;
75
+ ascent-override: 100.5%;
76
+ descent-override: 29.5%;
77
+ line-gap-override: 0%;
78
+ }
79
+
80
+ @font-face {
81
+ font-family: "Geist Mono Fallback";
82
+ font-style: normal;
83
+ font-weight: 550 900;
84
+ src:
85
+ local("Courier New Bold"), local("CourierNewPS-BoldMT"), local("Liberation Mono Bold"),
86
+ local("LiberationMono-Bold"), local("Cousine Bold"), local("Cousine-Bold");
87
+ size-adjust: 100%;
88
+ ascent-override: 100.5%;
89
+ descent-override: 29.5%;
90
+ line-gap-override: 0%;
91
+ }
@@ -2,8 +2,8 @@
2
2
  @layer rly.tokens {
3
3
  :root {
4
4
  color-scheme: light dark;
5
- --rly-font-ui: "Geist Variable", "Geist", system-ui, sans-serif;
6
- --rly-font-mono: "Geist Mono Variable", "Geist Mono", ui-monospace, monospace;
5
+ --rly-font-ui: "Geist Variable", "Geist", "Geist Fallback", system-ui, sans-serif;
6
+ --rly-font-mono: "Geist Mono Variable", "Geist Mono", "Geist Mono Fallback", ui-monospace, monospace;
7
7
  --rly-focus-ring-width: 2px;
8
8
  --rly-focus-ring-offset: 2px;
9
9
  --rly-color-canvas: light-dark(#F6F6F8, #101114);
package/dist/index.js CHANGED
@@ -3,10 +3,10 @@ import { a as e, i as t, n, o as r, r as i, t as a } from "./ThemeProvider-BFeld
3
3
  import { a as o, i as s, n as c, o as l, s as u } from "./PortalProvider-CN_81Fy3.js";
4
4
  import { t as d } from "./LinkProvider-DMkhwZ3P.js";
5
5
  import "./foundations/index.js";
6
- import { $ as f, A as p, B as m, C as h, D as g, E as _, F as v, G as y, H as b, I as x, J as S, K as C, L as w, M as T, N as E, O as D, P as O, Q as k, R as A, S as j, T as M, U as N, V as P, W as F, X as I, Y as L, Z as R, _ as z, a as B, b as V, c as H, d as U, et as W, f as G, g as K, h as q, i as J, j as Y, k as X, l as Z, m as Q, n as $, nt as ee, o as te, p as ne, q as re, r as ie, s as ae, t as oe, tt as se, u as ce, v as le, w as ue, x as de, y as fe, z as pe } from "./patterns-DPd5YlSW.js";
7
- import { A as me, C as he, D as ge, E as _e, O as ve, S as ye, T as be, _ as xe, a as Se, b as Ce, c as we, d as Te, f as Ee, g as De, h as Oe, i as ke, k as Ae, l as je, m as Me, n as Ne, o as Pe, p as Fe, r as Ie, s as Le, t as Re, u as ze, v as Be, w as Ve, x as He, y as Ue } from "./Dialog-B9Ub_gMT.js";
8
- import { C as We, D as Ge, E as Ke, O as qe, S as Je, T as Ye, _ as Xe, a as Ze, b as Qe, c as $e, d as et, f as tt, g as nt, h as rt, i as it, l as at, m as ot, n as st, o as ct, p as lt, r as ut, s as dt, t as ft, u as pt, v as mt, w as ht, x as gt, y as _t } from "./primitives-CgvvYKjR.js";
9
- import { a as vt, i as yt, n as bt, o as xt, r as St, t as Ct } from "./tokens-B075JP3Z.js";
10
- export { ee as AgentContextButton, se as AgentDrawer, W as AgentJob, f as AgentProposal, k as AgentThread, Ue as Avatar, be as Button, Ke as ChartLegend, N as CollaboratorGroup, m as DecisionBar, Re as Dialog, We as Divider, Y as EntityShell, D as EntityTable, g as EvidenceStamp, ke as Field, w as FreshnessStamp, r as GlobalStyles, _ as GovernedActionReview, de as Hero, j as HeroWord, s as Icon, De as IconButton, _t as LimitTrack, d as LinkProvider, nt as Notice, C as PeopleStrip, L as Person, c as PortalProvider, Ce as RLY_AVATAR_DEFAULT_VARIANTS, He as RLY_AVATAR_VARIANTS, _e as RLY_BUTTON_DEFAULT_VARIANTS, ge as RLY_BUTTON_VARIANTS, F as RLY_COLLABORATOR_GROUP_DEFAULT_VARIANTS, y as RLY_COLLABORATOR_GROUP_VARIANTS, Ct as RLY_COLOR_TOKEN_NAMES, bt as RLY_CONTROL_HEIGHT_TOKEN_NAMES, P as RLY_DECISION_BAR_DEFAULT_VARIANTS, b as RLY_DECISION_BAR_VARIANTS, Ne as RLY_DIALOG_DEFAULT_VARIANTS, Ie as RLY_DIALOG_VARIANTS, ht as RLY_DIVIDER_DEFAULT_VARIANTS, Ye as RLY_DIVIDER_VARIANTS, X as RLY_ENTITY_TABLE_DEFAULT_VARIANTS, p as RLY_ENTITY_TABLE_VARIANTS, Se as RLY_FIELD_DEFAULT_VARIANTS, Pe as RLY_FIELD_VARIANTS, A as RLY_FRESHNESS_STAMP_DEFAULT_VARIANTS, pe as RLY_FRESHNESS_STAMP_VARIANTS, h as RLY_HERO_DEFAULT_VARIANTS, ue as RLY_HERO_VARIANTS, M as RLY_HERO_WORD_VARIANTS, xe as RLY_ICON_BUTTON_DEFAULT_VARIANTS, Be as RLY_ICON_BUTTON_VARIANTS, o as RLY_ICON_DEFAULT_VARIANTS, l as RLY_ICON_NAMES, u as RLY_ICON_VARIANTS, Qe as RLY_LIMIT_TRACK_DEFAULT_VARIANTS, gt as RLY_LIMIT_TRACK_VARIANTS, St as RLY_MOTION_TOKEN_NAMES, Xe as RLY_NOTICE_DEFAULT_VARIANTS, mt as RLY_NOTICE_VARIANTS, re as RLY_PEOPLE_STRIP_DEFAULT_VARIANTS, S as RLY_PEOPLE_STRIP_VARIANTS, I as RLY_PERSON_DEFAULT_VARIANTS, R as RLY_PERSON_VARIANTS, yt as RLY_RADIUS_TOKEN_NAMES, le as RLY_REGION_DEFAULT_VARIANTS, fe as RLY_REGION_VARIANTS, K as RLY_RELATIONSHIP_DIRECTION_PRESENTATION, z as RLY_RELATIONSHIP_LIFECYCLE_PRESENTATION, Z as RLY_RELEASE_RELAY_DEFAULT_VARIANTS, ce as RLY_RELEASE_RELAY_SYMBOLS, U as RLY_RELEASE_RELAY_VARIANTS, Fe as RLY_SELECT_DEFAULT_VARIANTS, Me as RLY_SELECT_VARIANTS, Ge as RLY_SERIES, O as RLY_SERVICE_MARK_DEFAULT_VARIANTS, v as RLY_SERVICE_MARK_VARIANTS, ve as RLY_SHEET_DEFAULT_VARIANTS, Ae as RLY_SHEET_VARIANTS, ze as RLY_SKELETON_DEFAULT_VARIANTS, Te as RLY_SKELETON_VARIANTS, vt as RLY_SPACE_TOKEN_NAMES, J as RLY_STAGE_RAIL_DEFAULT_VARIANTS, B as RLY_STAGE_RAIL_VARIANTS, ye as RLY_STATE_LABEL_DEFAULT_VARIANTS, he as RLY_STATE_LABEL_VARIANTS, Le as RLY_STATE_PANEL_DEFAULT_VARIANTS, we as RLY_STATE_PANEL_VARIANTS, lt as RLY_SURFACE_DEFAULT_VARIANTS, ot as RLY_SURFACE_VARIANTS, pt as RLY_TABS_DEFAULT_VARIANTS, et as RLY_TABS_VARIANTS, dt as RLY_TEXT_DEFAULT_VARIANTS, $e as RLY_TEXT_VARIANTS, a as RLY_THEME_NAMES, ut as RLY_TOGGLE_GROUP_DEFAULT_VARIANTS, it as RLY_TOGGLE_GROUP_VARIANTS, ft as RLY_TRACK_KEY_MARKS, xt as RLY_TYPE_TOKEN_NAMES, T as RLY_VERDICT_VARIANTS, V as Region, q as RelationshipChain, Q as RelationshipTable, ne as RelayDock, H as ReleasePreview, G as ReleaseRelay, ae as ReleaseRow, Oe as Select, x as ServiceMark, me as Sheet, Ee as Skeleton, te as StageRail, Ve as StateLabel, je as StatePanel, rt as Surface, tt as Tabs, at as Text, n as ThemeProvider, ct as ThemeSelect, $ as TimelineProvenanceKey, ie as TimelineRow, Ze as ToggleGroup, st as TrackKey, E as Verdict, oe as WorksetCard, i as decodeRlyTheme, Je as limitTrackTone, qe as rlySeriesColor, t as useDocumentTheme, e as useStoredTheme };
6
+ import { $ as f, A as p, B as m, C as h, D as g, E as _, F as v, G as y, H as b, I as x, J as S, K as C, L as w, M as T, N as E, O as D, P as O, Q as k, R as A, S as j, T as M, U as N, V as P, W as F, X as I, Y as L, Z as R, _ as z, a as B, at as V, b as H, c as U, ct as W, d as G, et as K, f as q, g as J, h as Y, i as X, it as Z, j as Q, k as $, l as ee, m as te, n as ne, nt as re, o as ie, ot as ae, p as oe, q as se, r as ce, rt as le, s as ue, st as de, t as fe, tt as pe, u as me, v as he, w as ge, x as _e, y as ve, z as ye } from "./patterns-ChmGSFqO.js";
7
+ import { A as be, C as xe, D as Se, E as Ce, O as we, S as Te, T as Ee, _ as De, a as Oe, b as ke, c as Ae, d as je, f as Me, g as Ne, h as Pe, i as Fe, k as Ie, l as Le, m as Re, n as ze, o as Be, p as Ve, r as He, s as Ue, t as We, u as Ge, v as Ke, w as qe, x as Je, y as Ye } from "./Dialog-B9Ub_gMT.js";
8
+ import { C as Xe, D as Ze, E as Qe, O as $e, S as et, T as tt, _ as nt, a as rt, b as it, c as at, d as ot, f as st, g as ct, h as lt, i as ut, k as dt, l as ft, m as pt, n as mt, o as ht, p as gt, r as _t, s as vt, t as yt, u as bt, v as xt, w as St, x as Ct, y as wt } from "./primitives-Bd6WhE78.js";
9
+ import { a as Tt, i as Et, n as Dt, o as Ot, r as kt, t as At } from "./tokens-B075JP3Z.js";
10
+ export { W as AgentContextButton, de as AgentDrawer, ae as AgentJob, V as AgentProposal, Z as AgentThread, Ye as Avatar, Ee as Button, Ze as ChartLegend, L as CollaboratorGroup, C as DecisionBar, We as Dialog, St as Divider, w as EntityShell, O as EntityTable, E as EvidenceStamp, Fe as Field, N as FreshnessStamp, r as GlobalStyles, T as GovernedActionReview, g as Hero, D as HeroWord, s as Icon, Ne as IconButton, it as LimitTrack, d as LinkProvider, nt as Notice, k as PeopleStrip, pe as Person, c as PortalProvider, ke as RLY_AVATAR_DEFAULT_VARIANTS, Je as RLY_AVATAR_VARIANTS, Ce as RLY_BUTTON_DEFAULT_VARIANTS, Se as RLY_BUTTON_VARIANTS, I as RLY_COLLABORATOR_GROUP_DEFAULT_VARIANTS, R as RLY_COLLABORATOR_GROUP_VARIANTS, At as RLY_COLOR_TOKEN_NAMES, Dt as RLY_CONTROL_HEIGHT_TOKEN_NAMES, se as RLY_DECISION_BAR_DEFAULT_VARIANTS, S as RLY_DECISION_BAR_VARIANTS, ze as RLY_DIALOG_DEFAULT_VARIANTS, He as RLY_DIALOG_VARIANTS, tt as RLY_DIVIDER_DEFAULT_VARIANTS, Qe as RLY_DIVIDER_VARIANTS, v as RLY_ENTITY_TABLE_DEFAULT_VARIANTS, x as RLY_ENTITY_TABLE_VARIANTS, Oe as RLY_FIELD_DEFAULT_VARIANTS, Be as RLY_FIELD_VARIANTS, F as RLY_FRESHNESS_STAMP_DEFAULT_VARIANTS, y as RLY_FRESHNESS_STAMP_VARIANTS, $ as RLY_HERO_DEFAULT_VARIANTS, p as RLY_HERO_VARIANTS, Q as RLY_HERO_WORD_VARIANTS, De as RLY_ICON_BUTTON_DEFAULT_VARIANTS, Ke as RLY_ICON_BUTTON_VARIANTS, o as RLY_ICON_DEFAULT_VARIANTS, l as RLY_ICON_NAMES, u as RLY_ICON_VARIANTS, Ct as RLY_LIMIT_TRACK_DEFAULT_VARIANTS, et as RLY_LIMIT_TRACK_VARIANTS, kt as RLY_MOTION_TOKEN_NAMES, xt as RLY_NOTICE_DEFAULT_VARIANTS, wt as RLY_NOTICE_VARIANTS, f as RLY_PEOPLE_STRIP_DEFAULT_VARIANTS, K as RLY_PEOPLE_STRIP_VARIANTS, re as RLY_PERSON_DEFAULT_VARIANTS, le as RLY_PERSON_VARIANTS, Et as RLY_RADIUS_TOKEN_NAMES, ge as RLY_REGION_DEFAULT_VARIANTS, M as RLY_REGION_VARIANTS, j as RLY_RELATIONSHIP_DIRECTION_PRESENTATION, h as RLY_RELATIONSHIP_LIFECYCLE_PRESENTATION, z as RLY_RELAY_MARK_SIZES, he as RLY_RELAY_MARK_TILE_SIZES, ee as RLY_RELEASE_RELAY_DEFAULT_VARIANTS, me as RLY_RELEASE_RELAY_SYMBOLS, G as RLY_RELEASE_RELAY_VARIANTS, Ve as RLY_SELECT_DEFAULT_VARIANTS, Re as RLY_SELECT_VARIANTS, $e as RLY_SERIES, m as RLY_SERVICE_MARK_DEFAULT_VARIANTS, P as RLY_SERVICE_MARK_VARIANTS, we as RLY_SHEET_DEFAULT_VARIANTS, Ie as RLY_SHEET_VARIANTS, Ge as RLY_SKELETON_DEFAULT_VARIANTS, je as RLY_SKELETON_VARIANTS, Tt as RLY_SPACE_TOKEN_NAMES, X as RLY_STAGE_RAIL_DEFAULT_VARIANTS, B as RLY_STAGE_RAIL_VARIANTS, Te as RLY_STATE_LABEL_DEFAULT_VARIANTS, xe as RLY_STATE_LABEL_VARIANTS, Ue as RLY_STATE_PANEL_DEFAULT_VARIANTS, Ae as RLY_STATE_PANEL_VARIANTS, gt as RLY_SURFACE_DEFAULT_VARIANTS, pt as RLY_SURFACE_VARIANTS, bt as RLY_TABS_DEFAULT_VARIANTS, ot as RLY_TABS_VARIANTS, vt as RLY_TEXT_DEFAULT_VARIANTS, at as RLY_TEXT_VARIANTS, a as RLY_THEME_NAMES, _t as RLY_TOGGLE_GROUP_DEFAULT_VARIANTS, ut as RLY_TOGGLE_GROUP_VARIANTS, yt as RLY_TRACK_KEY_MARKS, Ot as RLY_TYPE_TOKEN_NAMES, A as RLY_VERDICT_VARIANTS, _ as Region, _e as RelationshipChain, H as RelationshipTable, J as RelayDock, oe as RelayLauncher, ve as RelayMark, U as ReleasePreview, q as ReleaseRelay, ue as ReleaseRow, Pe as Select, b as ServiceMark, be as Sheet, Me as Skeleton, ct as StackedBars, ie as StageRail, qe as StateLabel, Le as StatePanel, lt as Surface, st as Tabs, ft as Text, n as ThemeProvider, ht as ThemeSelect, ne as TimelineProvenanceKey, ce as TimelineRow, rt as ToggleGroup, mt as TrackKey, ye as Verdict, fe as WorksetCard, i as decodeRlyTheme, Xe as limitTrackTone, te as relayShortcut, dt as rlySeriesColor, t as useDocumentTheme, Y as useRelayShortcut, e as useStoredTheme };
11
11
 
12
12
  //# sourceMappingURL=index.js.map
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import { $ as e, A as t, B as n, C as r, D as i, E as a, F as o, G as s, H as c, I as l, J as u, K as d, L as f, M as p, N as m, O as h, P as g, Q as _, R as v, S as y, T as b, U as x, V as S, W as C, X as w, Y as T, Z as E, _ as D, a as O, b as k, c as A, d as j, et as M, f as N, g as P, h as F, i as I, j as L, k as R, l as z, m as B, n as V, nt as H, o as U, p as W, q as G, r as K, s as q, t as J, tt as Y, u as X, v as Z, w as Q, x as $, y as ee, z as te } from "../patterns-DPd5YlSW.js";
3
- export { H as AgentContextButton, Y as AgentDrawer, M as AgentJob, e as AgentProposal, _ as AgentThread, x as CollaboratorGroup, n as DecisionBar, L as EntityShell, h as EntityTable, i as EvidenceStamp, f as FreshnessStamp, a as GovernedActionReview, $ as Hero, y as HeroWord, d as PeopleStrip, T as Person, C as RLY_COLLABORATOR_GROUP_DEFAULT_VARIANTS, s as RLY_COLLABORATOR_GROUP_VARIANTS, S as RLY_DECISION_BAR_DEFAULT_VARIANTS, c as RLY_DECISION_BAR_VARIANTS, R as RLY_ENTITY_TABLE_DEFAULT_VARIANTS, t as RLY_ENTITY_TABLE_VARIANTS, v as RLY_FRESHNESS_STAMP_DEFAULT_VARIANTS, te as RLY_FRESHNESS_STAMP_VARIANTS, r as RLY_HERO_DEFAULT_VARIANTS, Q as RLY_HERO_VARIANTS, b as RLY_HERO_WORD_VARIANTS, G as RLY_PEOPLE_STRIP_DEFAULT_VARIANTS, u as RLY_PEOPLE_STRIP_VARIANTS, w as RLY_PERSON_DEFAULT_VARIANTS, E as RLY_PERSON_VARIANTS, Z as RLY_REGION_DEFAULT_VARIANTS, ee as RLY_REGION_VARIANTS, P as RLY_RELATIONSHIP_DIRECTION_PRESENTATION, D as RLY_RELATIONSHIP_LIFECYCLE_PRESENTATION, z as RLY_RELEASE_RELAY_DEFAULT_VARIANTS, X as RLY_RELEASE_RELAY_SYMBOLS, j as RLY_RELEASE_RELAY_VARIANTS, g as RLY_SERVICE_MARK_DEFAULT_VARIANTS, o as RLY_SERVICE_MARK_VARIANTS, I as RLY_STAGE_RAIL_DEFAULT_VARIANTS, O as RLY_STAGE_RAIL_VARIANTS, p as RLY_VERDICT_VARIANTS, k as Region, F as RelationshipChain, B as RelationshipTable, W as RelayDock, A as ReleasePreview, N as ReleaseRelay, q as ReleaseRow, l as ServiceMark, U as StageRail, V as TimelineProvenanceKey, K as TimelineRow, m as Verdict, J as WorksetCard };
2
+ import { $ as e, A as t, B as n, C as r, D as i, E as a, F as o, G as s, H as c, I as l, J as u, K as d, L as f, M as p, N as m, O as h, P as g, Q as _, R as v, S as y, T as b, U as x, V as S, W as C, X as w, Y as T, Z as E, _ as D, a as O, at as k, b as A, c as j, ct as M, d as N, et as P, f as F, g as I, h as L, i as R, it as z, j as B, k as V, l as H, m as U, n as W, nt as G, o as K, ot as q, p as J, q as Y, r as X, rt as Z, s as Q, st as $, t as ee, tt as te, u as ne, v as re, w as ie, x as ae, y as oe, z as se } from "../patterns-ChmGSFqO.js";
3
+ export { M as AgentContextButton, $ as AgentDrawer, q as AgentJob, k as AgentProposal, z as AgentThread, T as CollaboratorGroup, d as DecisionBar, f as EntityShell, g as EntityTable, m as EvidenceStamp, x as FreshnessStamp, p as GovernedActionReview, i as Hero, h as HeroWord, _ as PeopleStrip, te as Person, w as RLY_COLLABORATOR_GROUP_DEFAULT_VARIANTS, E as RLY_COLLABORATOR_GROUP_VARIANTS, Y as RLY_DECISION_BAR_DEFAULT_VARIANTS, u as RLY_DECISION_BAR_VARIANTS, o as RLY_ENTITY_TABLE_DEFAULT_VARIANTS, l as RLY_ENTITY_TABLE_VARIANTS, C as RLY_FRESHNESS_STAMP_DEFAULT_VARIANTS, s as RLY_FRESHNESS_STAMP_VARIANTS, V as RLY_HERO_DEFAULT_VARIANTS, t as RLY_HERO_VARIANTS, B as RLY_HERO_WORD_VARIANTS, e as RLY_PEOPLE_STRIP_DEFAULT_VARIANTS, P as RLY_PEOPLE_STRIP_VARIANTS, G as RLY_PERSON_DEFAULT_VARIANTS, Z as RLY_PERSON_VARIANTS, ie as RLY_REGION_DEFAULT_VARIANTS, b as RLY_REGION_VARIANTS, y as RLY_RELATIONSHIP_DIRECTION_PRESENTATION, r as RLY_RELATIONSHIP_LIFECYCLE_PRESENTATION, D as RLY_RELAY_MARK_SIZES, re as RLY_RELAY_MARK_TILE_SIZES, H as RLY_RELEASE_RELAY_DEFAULT_VARIANTS, ne as RLY_RELEASE_RELAY_SYMBOLS, N as RLY_RELEASE_RELAY_VARIANTS, n as RLY_SERVICE_MARK_DEFAULT_VARIANTS, S as RLY_SERVICE_MARK_VARIANTS, R as RLY_STAGE_RAIL_DEFAULT_VARIANTS, O as RLY_STAGE_RAIL_VARIANTS, v as RLY_VERDICT_VARIANTS, a as Region, ae as RelationshipChain, A as RelationshipTable, I as RelayDock, J as RelayLauncher, oe as RelayMark, j as ReleasePreview, F as ReleaseRelay, Q as ReleaseRow, c as ServiceMark, K as StageRail, W as TimelineProvenanceKey, X as TimelineRow, se as Verdict, ee as WorksetCard, U as relayShortcut, L as useRelayShortcut };
4
4
 
5
5
  //# sourceMappingURL=index.js.map