@knpkv/rly 0.14.0 → 0.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/README.md +90 -3
  2. package/dist/{Dialog-B9Ub_gMT.js → Dialog-CU66FqWD.js} +325 -257
  3. package/dist/Dialog-CU66FqWD.js.map +1 -0
  4. package/dist/{PortalProvider-CN_81Fy3.js → PortalProvider-op07u8na.js} +20 -18
  5. package/dist/PortalProvider-op07u8na.js.map +1 -0
  6. package/dist/components.css +2 -2
  7. package/dist/diff/bounded/index.js.map +1 -1
  8. package/dist/diff/index.js.map +1 -1
  9. package/dist/diff/patch/index.js.map +1 -1
  10. package/dist/dts/foundations/Icon.d.ts +1 -1
  11. package/dist/dts/foundations/Icon.d.ts.map +1 -1
  12. package/dist/dts/internal/composedFocus.d.ts +11 -0
  13. package/dist/dts/internal/composedFocus.d.ts.map +1 -0
  14. package/dist/dts/internal/relaySummon.d.ts +50 -0
  15. package/dist/dts/internal/relaySummon.d.ts.map +1 -0
  16. package/dist/dts/patterns/RelayComposer.d.ts +65 -0
  17. package/dist/dts/patterns/RelayComposer.d.ts.map +1 -0
  18. package/dist/dts/patterns/RelayDecision.d.ts +75 -0
  19. package/dist/dts/patterns/RelayDecision.d.ts.map +1 -0
  20. package/dist/dts/patterns/RelayDock.d.ts.map +1 -1
  21. package/dist/dts/patterns/RelayFindings.d.ts +83 -0
  22. package/dist/dts/patterns/RelayFindings.d.ts.map +1 -0
  23. package/dist/dts/patterns/RelayLauncher.d.ts +32 -1
  24. package/dist/dts/patterns/RelayLauncher.d.ts.map +1 -1
  25. package/dist/dts/patterns/RelayPanel.d.ts +91 -0
  26. package/dist/dts/patterns/RelayPanel.d.ts.map +1 -0
  27. package/dist/dts/patterns/RelaySetup.d.ts +58 -0
  28. package/dist/dts/patterns/RelaySetup.d.ts.map +1 -0
  29. package/dist/dts/patterns/RelayTranscript.d.ts +68 -0
  30. package/dist/dts/patterns/RelayTranscript.d.ts.map +1 -0
  31. package/dist/dts/patterns/index.d.ts +14 -2
  32. package/dist/dts/patterns/index.d.ts.map +1 -1
  33. package/dist/dts/tokens/fonts.d.ts +13 -0
  34. package/dist/dts/tokens/fonts.d.ts.map +1 -0
  35. package/dist/dts/tokens/index.d.ts +2 -0
  36. package/dist/dts/tokens/index.d.ts.map +1 -1
  37. package/dist/fonts.css +7 -2
  38. package/dist/foundations/index.js +1 -1
  39. package/dist/index.js +6 -6
  40. package/dist/patterns/index.js +2 -2
  41. package/dist/patterns-B3WbiVEp.js +4981 -0
  42. package/dist/patterns-B3WbiVEp.js.map +1 -0
  43. package/dist/primitives/index.js +3 -3
  44. package/dist/{primitives-Bd6WhE78.js → primitives-DgQybTyq.js} +254 -322
  45. package/dist/primitives-DgQybTyq.js.map +1 -0
  46. package/dist/tokens/index.js +2 -2
  47. package/dist/{tokens-B075JP3Z.js → tokens-Cf0jXIRg.js} +14 -8
  48. package/dist/tokens-Cf0jXIRg.js.map +1 -0
  49. package/dist/workbench-CHCnYW3G.js.map +1 -1
  50. package/package.json +1 -1
  51. package/registry/components.json +558 -1
  52. package/registry/search.json +162 -0
  53. package/dist/Dialog-B9Ub_gMT.js.map +0 -1
  54. package/dist/PortalProvider-CN_81Fy3.js.map +0 -1
  55. package/dist/patterns-ChmGSFqO.js +0 -3768
  56. package/dist/patterns-ChmGSFqO.js.map +0 -1
  57. package/dist/primitives-Bd6WhE78.js.map +0 -1
  58. package/dist/tokens-B075JP3Z.js.map +0 -1
@@ -0,0 +1,83 @@
1
+ import type { ReactElement } from "react";
2
+ /** A finding's priority, P1 most severe. */
3
+ export type RlyRelayFindingPriority = "P1" | "P2" | "P3" | "P4";
4
+ /** Where a finding points: the whole pull request, one file, or one line on the old or new side. */
5
+ export type RlyRelayFindingLocation = {
6
+ readonly scope: "general";
7
+ } | {
8
+ readonly scope: "file";
9
+ readonly filePath: string;
10
+ } | {
11
+ readonly line: number;
12
+ readonly filePath: string;
13
+ readonly scope: "line";
14
+ readonly side: "before" | "after";
15
+ };
16
+ /** One review finding, the shape of codecommit's RelayReviewFinding (rly takes no dependency on it). */
17
+ export interface RlyRelayFinding {
18
+ readonly details: string;
19
+ readonly id: string;
20
+ readonly location: RlyRelayFindingLocation;
21
+ readonly priority: RlyRelayFindingPriority;
22
+ readonly recommendation: string;
23
+ readonly summary: string;
24
+ readonly title: string;
25
+ readonly verification: string;
26
+ }
27
+ /** What the reader and the host have done with a finding; the host owns it. */
28
+ export type RlyRelayFindingDisposition = {
29
+ readonly _tag: "Pending";
30
+ } | {
31
+ readonly _tag: "Accepted";
32
+ } | {
33
+ readonly _tag: "Dismissed";
34
+ } | {
35
+ readonly _tag: "Posting";
36
+ } | {
37
+ readonly _tag: "Posted";
38
+ readonly receipt: {
39
+ readonly href?: string;
40
+ readonly summary: string;
41
+ };
42
+ } | {
43
+ readonly _tag: "Failed";
44
+ readonly cause: string;
45
+ };
46
+ /** Inputs for the findings view. */
47
+ export interface RelayFindingsProps {
48
+ /** The old side's revision, when known, so a before-side line says which code it means. */
49
+ readonly baseRevision?: string;
50
+ /** The pull request's head now; differing from `reviewedHead` makes the set stale. */
51
+ readonly currentHead: string;
52
+ readonly dispositions: Readonly<Record<string, RlyRelayFindingDisposition>>;
53
+ readonly findings: ReadonlyArray<RlyRelayFinding>;
54
+ /** The level of each location group's heading, chosen by the host's outline. */
55
+ readonly headingLevel: 2 | 3 | 4 | 5 | 6;
56
+ /** Toggle Accept or Dismiss; pressing the pressed one again returns the finding to pending. */
57
+ readonly onDispositionChange: (id: string, next: "Accepted" | "Dismissed" | "Pending") => void;
58
+ /** Attach the finding set to the conversation as context and ask about this finding. */
59
+ readonly onDiscuss: (id: string) => void;
60
+ /** Open a finding where it points; never offered for a before-side line (the head has no such line). */
61
+ readonly onOpen?: (finding: RlyRelayFinding) => void;
62
+ /** Start posting the given accepted findings, each as its own confirmed call. */
63
+ readonly onPostAccepted: (ids: ReadonlyArray<string>) => void;
64
+ /** Review the current head again. */
65
+ readonly onRerun: () => void;
66
+ /** Run one failed finding's confirmed post again. */
67
+ readonly onRetry: (id: string) => void;
68
+ /** The revision the findings were made against; they are never relabelled with a newer head. */
69
+ readonly reviewedHead: string;
70
+ /** What was reviewed, for the empty result: "correctness with Codex". */
71
+ readonly reviewedFor: string;
72
+ }
73
+ /**
74
+ * Relay's review findings (Relay UX decision): grouped by where they point, the whole pull request
75
+ * first, then each file in the order the review raised it, most severe first within a group. Severity
76
+ * is an icon, a word and the P-number, never colour alone. Accept and Dismiss are toggles; Discuss
77
+ * attaches the set to the conversation. "Post accepted" starts one confirmed call per finding, never a
78
+ * bulk write. When the head has moved since the review, a banner says so, and line findings wait for a
79
+ * re-run rather than land on the wrong line (posting, retrying and opening them alike). A before-side
80
+ * line is shown as text and never opens a head line. Posting outcomes, which the reader did not just do, are announced once per finding.
81
+ */
82
+ export declare const RelayFindings: (props: RelayFindingsProps) => ReactElement;
83
+ //# sourceMappingURL=RelayFindings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RelayFindings.d.ts","sourceRoot":"","sources":["../../../src/patterns/RelayFindings.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { ComponentPropsWithRef, ReactElement } from "react";
1
+ import type { ComponentPropsWithRef, ReactElement, RefCallback, RefObject } from "react";
2
2
  /** The keyboard shortcut a launcher advertises: the visible hint and its `aria-keyshortcuts` value. */
3
3
  export interface RlyRelayShortcut {
4
4
  /** Shown beside the label on wider screens, for example "⌘J" or "Ctrl J". */
@@ -14,6 +14,37 @@ export declare const relayShortcut: (apple: boolean) => RlyRelayShortcut;
14
14
  * key must also prevent the browser's own Ctrl+J (Downloads in Chrome on Windows and Linux).
15
15
  */
16
16
  export declare const useRelayShortcut: () => RlyRelayShortcut;
17
+ /** Inputs for {@link useRelaySummon}. */
18
+ export interface UseRelaySummonOptions {
19
+ readonly open: boolean;
20
+ readonly onOpenChange: (open: boolean) => void;
21
+ /** Relay is the full-screen dialog (phone): the shortcut closes it. */
22
+ readonly fullscreen: boolean;
23
+ /** The launcher: where focus returns when the element Relay was summoned from is gone. */
24
+ readonly launcher: RefObject<HTMLElement | null>;
25
+ /**
26
+ * The shortcut to listen for, the same value the launcher advertises; `null` while the host's own
27
+ * surface owns the key (a live terminal). Escape inside Relay keeps working either way.
28
+ */
29
+ readonly shortcut: RlyRelayShortcut | null;
30
+ }
31
+ /** Refs a host attaches so the summon knows Relay's region and composer. */
32
+ export interface RlyRelaySummon {
33
+ /** Attach to the composer; a pending summon focuses it as soon as it mounts, however late. */
34
+ readonly composerRef: RefCallback<HTMLElement>;
35
+ /** Attach to Relay's region (RelayPanel's `ref`); focus inside it counts as being in Relay. */
36
+ readonly regionRef: RefCallback<HTMLElement>;
37
+ }
38
+ /**
39
+ * Relay's keyboard summon (Relay UX decision). The shortcut opens Relay and focuses the composer; open
40
+ * with focus on the page, it moves focus to the composer; open with focus in Relay, it returns focus to
41
+ * where it came from and Relay stays open; full screen, it closes. Escape closes when focus is in Relay
42
+ * or Relay is full screen, and focus returns once Relay has actually closed (after a modal has released
43
+ * the page). Only the exact chord is handled and prevented, so Ctrl+K, `?`, g-sequences and the browser's
44
+ * other keys pass through. It listens on the launcher's document and on Relay's, if Relay is portaled
45
+ * into another (an iframe).
46
+ */
47
+ export declare const useRelaySummon: (options: UseRelaySummonOptions) => RlyRelaySummon;
17
48
  /** Inputs for the launcher. */
18
49
  export type RelayLauncherProps = Omit<ComponentPropsWithRef<"button">, "children" | "type"> & {
19
50
  /** Whether Relay is open; announced as the button's expanded state. */
@@ -1 +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"}
1
+ {"version":3,"file":"RelayLauncher.d.ts","sourceRoot":"","sources":["../../../src/patterns/RelayLauncher.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAUxF,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,yCAAyC;AACzC,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;IACtB,QAAQ,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IAC9C,uEAAuE;IACvE,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;IAC5B,0FAA0F;IAC1F,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAA;IAChD;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CAAA;CAC3C;AAED,4EAA4E;AAC5E,MAAM,WAAW,cAAc;IAC7B,8FAA8F;IAC9F,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC,WAAW,CAAC,CAAA;IAC9C,+FAA+F;IAC/F,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC,WAAW,CAAC,CAAA;CAC7C;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc,YAAa,qBAAqB,KAAG,cAmH/D,CAAA;AAWD,+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,91 @@
1
+ import type { ReactElement, ReactNode, Ref, RefObject } from "react";
2
+ /** How Relay is laid out: over the page, pinned beside it, or full screen. */
3
+ export declare const RLY_RELAY_PANEL_PRESENTATIONS: readonly ["overlay", "pinned", "fullscreen"];
4
+ /** One Relay presentation. */
5
+ export type RlyRelayPanelPresentation = (typeof RLY_RELAY_PANEL_PRESENTATIONS)[number];
6
+ /** The overlay's width, and the column a pinned Relay takes, in CSS pixels. */
7
+ export declare const RLY_RELAY_PANEL_WIDTH = 440;
8
+ /** What Relay is looking at: a label and, when it has one, the exact revision (shown in mono). */
9
+ export interface RlyRelayScope {
10
+ readonly label: string;
11
+ readonly revision?: string;
12
+ }
13
+ /** One of Relay's views; a count is part of its name ("Findings 3"), never announced on change. */
14
+ export interface RlyRelayPanelTab {
15
+ readonly content: ReactNode;
16
+ readonly count?: number;
17
+ readonly label: string;
18
+ readonly value: string;
19
+ }
20
+ /** The pin toggle, passed only when the host can pin Relay beside its page at this width. */
21
+ export interface RlyRelayPanelPin {
22
+ readonly onPinnedChange: (pinned: boolean) => void;
23
+ readonly pinned: boolean;
24
+ }
25
+ interface RelayPanelBaseProps {
26
+ /** Status line under the header (freshness of what Relay read); not a live region. */
27
+ readonly freshness?: ReactNode;
28
+ /** Kept on screen under the body: the composer. */
29
+ readonly footer?: ReactNode;
30
+ /** Where focus returns when the panel closes itself (close button, Escape, full-screen dismissal). */
31
+ readonly launcher: RefObject<HTMLElement | null>;
32
+ /**
33
+ * Called by the close button and Escape. Closing hides Relay in every presentation; whether it was
34
+ * pinned is the host's remembered preference, restored when Relay opens again.
35
+ */
36
+ readonly onClose: () => void;
37
+ /** Thread options, usually one menu trigger. */
38
+ readonly options?: ReactNode;
39
+ readonly pin?: RlyRelayPanelPin | undefined;
40
+ readonly presentation: RlyRelayPanelPresentation;
41
+ /** The panel's region, for useRelaySummon. */
42
+ readonly ref?: Ref<HTMLElement>;
43
+ readonly scope: RlyRelayScope;
44
+ /** The panel's name, "Relay" unless the host names it more specifically. */
45
+ readonly title?: string;
46
+ }
47
+ interface RelayPanelTabsProps extends RelayPanelBaseProps {
48
+ readonly children?: never;
49
+ readonly onTabChange: (value: string) => void;
50
+ readonly selectedTab: string;
51
+ readonly tabs: ReadonlyArray<RlyRelayPanelTab>;
52
+ }
53
+ interface RelayPanelBodyProps extends RelayPanelBaseProps {
54
+ /** A single view (setup, for example), shown without tabs. */
55
+ readonly children: ReactNode;
56
+ readonly onTabChange?: never;
57
+ readonly selectedTab?: never;
58
+ readonly tabs?: never;
59
+ }
60
+ /** Inputs for the panel: tabbed views, or one body. */
61
+ export type RelayPanelProps = RelayPanelTabsProps | RelayPanelBodyProps;
62
+ /**
63
+ * Relay's frame (Relay UX decision). `overlay` floats over the right of the page with no backdrop and no
64
+ * focus trap; render it right after the launcher so Tab order follows. `pinned` is a sticky column for
65
+ * the host's grid. `fullscreen` is a modal dialog with the page inert. Only the body scrolls, so the
66
+ * header and the footer's composer stay on screen. Escape and the close button call `onClose` and return
67
+ * focus to the launcher; Escape is left to an IME composition and to dialogs or open popups inside.
68
+ * Changing presentation remounts the views and footer, so state that must survive (a composer draft)
69
+ * lives with the host or the composer, keyed by the object Relay is about.
70
+ */
71
+ export declare const RelayPanel: (props: RelayPanelProps) => ReactElement;
72
+ /** Inputs for {@link useRelayPresentation}. */
73
+ export interface UseRelayPresentationOptions {
74
+ /** The user's pin preference, remembered by the host per product and viewport class. */
75
+ readonly pinned: boolean;
76
+ /** The narrowest width the host's own page stays usable at, beside a pinned Relay. */
77
+ readonly minHostWidth: number;
78
+ }
79
+ /** The presentation to render, and whether to offer the pin toggle. */
80
+ export interface RlyRelayPresentation {
81
+ readonly canPin: boolean;
82
+ readonly presentation: RlyRelayPanelPresentation;
83
+ }
84
+ /**
85
+ * The presentation for the viewport (Relay UX decision): full screen at phone width; pinned when the user
86
+ * pinned it and the viewport is wide enough (≥1440 and the host's minimum beside the column); otherwise
87
+ * the overlay. The server renders the overlay. A host may still choose its own presentation.
88
+ */
89
+ export declare const useRelayPresentation: ({ minHostWidth, pinned }: UseRelayPresentationOptions) => RlyRelayPresentation;
90
+ export {};
91
+ //# sourceMappingURL=RelayPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RelayPanel.d.ts","sourceRoot":"","sources":["../../../src/patterns/RelayPanel.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ import type { ReactElement } from "react";
2
+ /** Why a backend cannot run Relay; each has one repair, the host's `fix` text plus Check again. */
3
+ export type RlyRelayBackendCause = "NotInstalled" | "SignedOut" | "Misconfigured" | "NoCapability";
4
+ /**
5
+ * A backend's status as the server reports it, plus the client's own Checking while it asks. Installed
6
+ * (a version on PATH) is Unverified, never Ready: Ready follows a successful answer.
7
+ */
8
+ export type RlyRelayBackendStatus = {
9
+ readonly _tag: "Checking";
10
+ } | {
11
+ readonly _tag: "Unverified";
12
+ readonly version?: string;
13
+ } | {
14
+ readonly _tag: "Ready";
15
+ readonly detail?: string;
16
+ readonly version?: string;
17
+ } | {
18
+ readonly _tag: "Unavailable";
19
+ readonly cause: RlyRelayBackendCause;
20
+ readonly fix: string;
21
+ readonly version?: string;
22
+ };
23
+ /** One agent backend Relay can run on (Codex, Claude), with its current status. */
24
+ export interface RlyRelayBackend {
25
+ readonly id: string;
26
+ readonly label: string;
27
+ readonly status: RlyRelayBackendStatus;
28
+ }
29
+ /** One thing to focus the review on ("Correctness", "Security"). */
30
+ export interface RlyRelaySetupFocus {
31
+ readonly description?: string;
32
+ readonly label: string;
33
+ readonly value: string;
34
+ }
35
+ /** Inputs for setup. */
36
+ export interface RelaySetupProps {
37
+ readonly backends: ReadonlyArray<RlyRelayBackend>;
38
+ readonly focuses: ReadonlyArray<RlyRelaySetupFocus>;
39
+ /** Ask the server for this backend's status (Check now, Check again). */
40
+ readonly onCheck: (backendId: string) => void;
41
+ readonly onSelectBackend: (backendId: string) => void;
42
+ readonly onSelectFocus: (value: string) => void;
43
+ readonly onStart: () => void;
44
+ readonly selectedBackend: string | undefined;
45
+ readonly selectedFocus: string | undefined;
46
+ /** The start button, "Review this pull request" unless the host names its first task. */
47
+ readonly startLabel?: string;
48
+ }
49
+ /**
50
+ * Relay's in-panel setup (Relay UX decision): two steps, an agent then a focus, then start. Each backend
51
+ * shows the server's status; only a Ready backend can be chosen, so an installed CLI is never taken
52
+ * for a working one. A backend not checked yet offers Check now; an unavailable one names its cause,
53
+ * the host's fix (run a login on this machine; rly never collects provider credentials) and Check
54
+ * again. Status changes after a check are announced politely. Start stays reachable while unavailable
55
+ * and says what is missing.
56
+ */
57
+ export declare const RelaySetup: ({ backends, focuses, onCheck, onSelectBackend, onSelectFocus, onStart, selectedBackend, selectedFocus, startLabel }: RelaySetupProps) => ReactElement;
58
+ //# sourceMappingURL=RelaySetup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RelaySetup.d.ts","sourceRoot":"","sources":["../../../src/patterns/RelaySetup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AASzC,mGAAmG;AACnG,MAAM,MAAM,oBAAoB,GAAG,cAAc,GAAG,WAAW,GAAG,eAAe,GAAG,cAAc,CAAA;AAElG;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAC7B;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;CAAE,GAC7B;IAAE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAC1D;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAC/E;IACE,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAA;IAC5B,QAAQ,CAAC,KAAK,EAAE,oBAAoB,CAAA;IACpC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAC1B,CAAA;AAEL,mFAAmF;AACnF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAA;CACvC;AAED,oEAAoE;AACpE,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CACvB;AAED,wBAAwB;AACxB,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,eAAe,CAAC,CAAA;IACjD,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,kBAAkB,CAAC,CAAA;IACnD,yEAAyE;IACzE,QAAQ,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7C,QAAQ,CAAC,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAA;IACrD,QAAQ,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/C,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,CAAA;IAC5B,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5C,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1C,yFAAyF;IACzF,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAC7B;AAsBD;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,wHAUpB,eAAe,KAAG,YAgKpB,CAAA"}
@@ -0,0 +1,68 @@
1
+ import type { ReactElement } from "react";
2
+ /** A cited object: the link text is the location itself ("src/patch-reader.ts:14"). */
3
+ export interface RlyRelayCite {
4
+ readonly href: string;
5
+ readonly label: string;
6
+ }
7
+ /** One tool call in an activity burst, from ToolStarted and ToolFinished (server-built summaries). */
8
+ export interface RlyRelayTool {
9
+ readonly call: string;
10
+ readonly cites?: ReadonlyArray<RlyRelayCite>;
11
+ readonly status: "running" | "ok" | "failed";
12
+ readonly summary: string;
13
+ }
14
+ /** One entry in a Relay conversation, in the order it happened. */
15
+ export type RlyRelayTranscriptItem = {
16
+ readonly _tag: "You";
17
+ readonly id: string;
18
+ readonly text: string;
19
+ } | {
20
+ readonly _tag: "Relay";
21
+ readonly id: string;
22
+ readonly text: string;
23
+ }
24
+ /** A system note (why a send was refused, a changed registration): neither turn, not announced. */
25
+ | {
26
+ readonly _tag: "Note";
27
+ readonly id: string;
28
+ readonly text: string;
29
+ }
30
+ /** A contiguous burst of tool work between prose, with its summary ("Read 4 files and ran 1 check"). */
31
+ | {
32
+ readonly _tag: "Activity";
33
+ readonly id: string;
34
+ readonly summary: string;
35
+ readonly tools: ReadonlyArray<RlyRelayTool>;
36
+ }
37
+ /** How a run ended; Finished may carry its duration, Failed its cause and the next action. */
38
+ | {
39
+ readonly _tag: "RunFinished";
40
+ readonly id: string;
41
+ readonly seconds?: number;
42
+ } | {
43
+ readonly _tag: "RunCancelled";
44
+ readonly id: string;
45
+ } | {
46
+ readonly _tag: "RunFailed";
47
+ readonly cause: string;
48
+ readonly fix: string;
49
+ readonly id: string;
50
+ };
51
+ /** Inputs for the transcript. */
52
+ export interface RelayTranscriptProps {
53
+ readonly items: ReadonlyArray<RlyRelayTranscriptItem>;
54
+ /** A run is in flight; shows "Relay is writing…" (not announced; the announcer covers start and end). */
55
+ readonly streaming: boolean;
56
+ }
57
+ /**
58
+ * A Relay conversation (Relay UX decision). Your turns sit at the inline end as bubbles; Relay's turns
59
+ * are plain prose, its code blocks scrolling in place. Each burst of tool work is one collapsed row in
60
+ * reading order, expanding to each call's summary, status and citations (link text is the location).
61
+ * One polite announcer, outside the scrolling content, says when a run starts, finishes, stops or
62
+ * fails, never per token. Each turn names its speaker for assistive technology ("You", "Relay").
63
+ * Inside RelayPanel the transcript follows new content only while you are at the end, or when the new
64
+ * turn is yours; reading earlier turns, a "New messages" button appears instead, so scroll is never
65
+ * taken. Citations route through LinkProvider, so a host keeps its own navigation.
66
+ */
67
+ export declare const RelayTranscript: ({ items, streaming }: RelayTranscriptProps) => ReactElement;
68
+ //# sourceMappingURL=RelayTranscript.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RelayTranscript.d.ts","sourceRoot":"","sources":["../../../src/patterns/RelayTranscript.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAa,MAAM,OAAO,CAAA;AASpD,uFAAuF;AACvF,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CACvB;AAED,sGAAsG;AACtG,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC,YAAY,CAAC,CAAA;IAC5C,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,GAAG,QAAQ,CAAA;IAC5C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB;AAED,mEAAmE;AACnE,MAAM,MAAM,sBAAsB,GAC9B;IAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACpE;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE;AACxE,mGAAmG;GACjG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE;AACvE,wGAAwG;GACtG;IACE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;IACzB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,YAAY,CAAC,CAAA;CAC5C;AACH,8FAA8F;GAC5F;IAAE,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAChF;IAAE,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GACtD;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAAA;AAErG,iCAAiC;AACjC,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,sBAAsB,CAAC,CAAA;IACrD,yGAAyG;IACzG,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;CAC5B;AA0FD;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe,yBAA0B,oBAAoB,KAAG,YAyI5E,CAAA"}
@@ -34,12 +34,24 @@ export { RelationshipChain, RLY_RELATIONSHIP_DIRECTION_PRESENTATION, RLY_RELATIO
34
34
  export type { RelationshipChainProps, RlyMissingRelationshipEndpoint, RlyPresentRelationshipEndpoint, RlyRelationship, RlyRelationshipDirection, RlyRelationshipEndpoint, RlyRelationshipLifecycle } from "./RelationshipChain.js";
35
35
  export { RelationshipTable } from "./RelationshipTable.js";
36
36
  export type { RelationshipTableProps } from "./RelationshipTable.js";
37
+ export { RelayComposer, useRelayDraft } from "./RelayComposer.js";
38
+ export type { RelayComposerProps, RlyRelayContextRef, RlyRelayDraft, RlyRelayDraftStorage, RlyRelaySubmission, UseRelayDraftOptions } from "./RelayComposer.js";
39
+ export { RelayDecision } from "./RelayDecision.js";
40
+ export type { RelayDecisionProps, RlyRelayDecisionCopy, RlyRelayDecisionReceipt, RlyRelayDecisionState, RlyRelayDecisionTarget } from "./RelayDecision.js";
37
41
  export { RelayDock } from "./RelayDock.js";
38
42
  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";
43
+ export { RelayFindings } from "./RelayFindings.js";
44
+ export type { RelayFindingsProps, RlyRelayFinding, RlyRelayFindingDisposition, RlyRelayFindingLocation, RlyRelayFindingPriority } from "./RelayFindings.js";
45
+ export { RelayLauncher, relayShortcut, useRelayShortcut, useRelaySummon } from "./RelayLauncher.js";
46
+ export type { RelayLauncherProps, RlyRelayShortcut, RlyRelaySummon, UseRelaySummonOptions } from "./RelayLauncher.js";
41
47
  export { RelayMark, RLY_RELAY_MARK_SIZES, RLY_RELAY_MARK_TILE_SIZES } from "./RelayMark.js";
42
48
  export type { RelayMarkProps, RelayMarkTileProps, RlyRelayMarkSize, RlyRelayMarkTileSize } from "./RelayMark.js";
49
+ export { RelayPanel, RLY_RELAY_PANEL_PRESENTATIONS, RLY_RELAY_PANEL_WIDTH, useRelayPresentation } from "./RelayPanel.js";
50
+ export type { RelayPanelProps, RlyRelayPanelPin, RlyRelayPanelPresentation, RlyRelayPanelTab, RlyRelayPresentation, RlyRelayScope, UseRelayPresentationOptions } from "./RelayPanel.js";
51
+ export { RelaySetup } from "./RelaySetup.js";
52
+ export type { RelaySetupProps, RlyRelayBackend, RlyRelayBackendCause, RlyRelayBackendStatus, RlyRelaySetupFocus } from "./RelaySetup.js";
53
+ export { RelayTranscript } from "./RelayTranscript.js";
54
+ export type { RelayTranscriptProps, RlyRelayCite, RlyRelayTool, RlyRelayTranscriptItem } from "./RelayTranscript.js";
43
55
  export { ReleasePreview } from "./ReleasePreview.js";
44
56
  export type { ReleasePreviewProps, RlyReleasePreviewPresentation } from "./ReleasePreview.js";
45
57
  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,13 @@
1
+ /** One web font rly's styles.css loads: its CSS family and the woff2 file a shell preloads. */
2
+ export interface RlyFontFace {
3
+ readonly family: string;
4
+ readonly file: string;
5
+ }
6
+ /**
7
+ * Every web font rly's styles.css loads, as Fontsource names the files. The faces use
8
+ * `font-display: optional`, so a shell must preload each of these files (from its own origin, with
9
+ * `crossorigin`) for Geist to render on first load; otherwise the metric-matched fallback stays for
10
+ * that page view and nothing swaps. Shells read this list instead of hardcoding file names.
11
+ */
12
+ export declare const RLY_FONT_FACES: readonly [RlyFontFace, RlyFontFace];
13
+ //# sourceMappingURL=fonts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fonts.d.ts","sourceRoot":"","sources":["../../../src/tokens/fonts.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAC/F,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB;AAED;;;;;GAKG;AACH,eAAO,MAAM,cAAc,EAAE,SAAS,CAAC,WAAW,EAAE,WAAW,CAG9D,CAAA"}
@@ -1,3 +1,5 @@
1
+ export { RLY_FONT_FACES } from "./fonts.js";
2
+ export type { RlyFontFace } from "./fonts.js";
1
3
  export { RLY_COLOR_TOKEN_NAMES, RLY_CONTROL_HEIGHT_TOKEN_NAMES, RLY_MOTION_TOKEN_NAMES, RLY_RADIUS_TOKEN_NAMES, RLY_SPACE_TOKEN_NAMES, RLY_TYPE_TOKEN_NAMES } from "./semantic-tokens.js";
2
4
  export type { RlyColorToken, RlyControlHeightToken, RlyMotionToken, RlyRadiusToken, RlySpaceToken, RlyTypeToken } from "./semantic-tokens.js";
3
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tokens/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,qBAAqB,EACrB,8BAA8B,EAC9B,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,sBAAsB,CAAA;AAC7B,YAAY,EACV,aAAa,EACb,qBAAqB,EACrB,cAAc,EACd,cAAc,EACd,aAAa,EACb,YAAY,EACb,MAAM,sBAAsB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tokens/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC3C,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,EACL,qBAAqB,EACrB,8BAA8B,EAC9B,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,sBAAsB,CAAA;AAC7B,YAAY,EACV,aAAa,EACb,qBAAqB,EACrB,cAAc,EACd,cAAc,EACd,aAAa,EACb,YAAY,EACb,MAAM,sBAAsB,CAAA"}
package/dist/fonts.css CHANGED
@@ -1,5 +1,10 @@
1
+ /*
2
+ * optional: a preloaded face (served from the shell's origin) is ready within the short block period and
3
+ * renders from first paint; a face that is late stays on the metric-matched fallback for this page
4
+ * view, so text never swaps and never shifts. Shells preload every face in RLY_FONT_FACES.
5
+ */
1
6
  @font-face {
2
- font-display: swap;
7
+ font-display: optional;
3
8
  font-family: "Geist Variable";
4
9
  font-style: normal;
5
10
  font-weight: 100 900;
@@ -7,7 +12,7 @@
7
12
  }
8
13
 
9
14
  @font-face {
10
- font-display: swap;
15
+ font-display: optional;
11
16
  font-family: "Geist Mono Variable";
12
17
  font-style: normal;
13
18
  font-weight: 100 900;
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
  import { a as e, i as t, n, o as r, r as i, t as a } from "../ThemeProvider-BFeldMeE.js";
3
- import { a as o, i as s, n as c, o as l, s as u } from "../PortalProvider-CN_81Fy3.js";
3
+ import { a as o, i as s, n as c, o as l, s as u } from "../PortalProvider-op07u8na.js";
4
4
  import { t as d } from "../LinkProvider-DMkhwZ3P.js";
5
5
  export { r as GlobalStyles, s as Icon, d as LinkProvider, c as PortalProvider, o as RLY_ICON_DEFAULT_VARIANTS, l as RLY_ICON_NAMES, u as RLY_ICON_VARIANTS, a as RLY_THEME_NAMES, n as ThemeProvider, i as decodeRlyTheme, t as useDocumentTheme, e as useStoredTheme };
6
6
 
package/dist/index.js CHANGED
@@ -1,12 +1,12 @@
1
1
  "use client";
2
2
  import { a as e, i as t, n, o as r, r as i, t as a } from "./ThemeProvider-BFeldMeE.js";
3
- import { a as o, i as s, n as c, o as l, s as u } from "./PortalProvider-CN_81Fy3.js";
3
+ import { a as o, i as s, n as c, o as l, s as u } from "./PortalProvider-op07u8na.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, 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 };
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, _t as B, a as V, at as H, b as U, c as W, ct as G, d as K, dt as q, et as J, f as Y, ft as X, g as Z, gt as Q, h as $, ht as ee, i as te, it as ne, j as re, k as ie, l as ae, lt as oe, m as se, mt as ce, n as le, nt as ue, o as de, ot as fe, p as pe, pt as me, q as he, r as ge, rt as _e, s as ve, st as ye, t as be, tt as xe, u as Se, ut as Ce, v as we, vt as Te, w as Ee, x as De, y as Oe, yt as ke, z as Ae } from "./patterns-B3WbiVEp.js";
7
+ import { A as je, C as Me, D as Ne, E as Pe, M as Fe, N as Ie, O as Le, S as Re, T as ze, _ as Be, a as Ve, b as He, c as Ue, d as We, f as Ge, g as Ke, h as qe, i as Je, j as Ye, k as Xe, l as Ze, m as Qe, n as $e, o as et, p as tt, r as nt, s as rt, t as it, u as at, v as ot, w as st, x as ct, y as lt } from "./Dialog-CU66FqWD.js";
8
+ import { C as ut, E as dt, S as ft, T as pt, _ as mt, a as ht, b as gt, c as _t, d as vt, f as yt, g as bt, h as xt, i as St, l as Ct, m as wt, n as Tt, o as Et, p as Dt, r as Ot, s as kt, t as At, u as jt, v as Mt, w as Nt, x as Pt, y as Ft } from "./primitives-DgQybTyq.js";
9
+ import { a as It, i as Lt, n as Rt, o as zt, r as Bt, s as Vt, t as Ht } from "./tokens-Cf0jXIRg.js";
10
+ export { ke as AgentContextButton, Te as AgentDrawer, B as AgentJob, Q as AgentProposal, ee as AgentThread, Re as Avatar, Le as Button, Nt as ChartLegend, fe as CollaboratorGroup, _e as DecisionBar, it as Dialog, Pt as Divider, S as EntityShell, y as EntityTable, F as EvidenceStamp, rt as Field, J as FreshnessStamp, r as GlobalStyles, N as GovernedActionReview, A as Hero, Ae as HeroWord, s as Icon, lt as IconButton, mt as LimitTrack, d as LinkProvider, wt as Notice, oe as PeopleStrip, X as Person, c as PortalProvider, Me as RLY_AVATAR_DEFAULT_VARIANTS, st as RLY_AVATAR_VARIANTS, Xe as RLY_BUTTON_DEFAULT_VARIANTS, je as RLY_BUTTON_VARIANTS, ye as RLY_COLLABORATOR_GROUP_DEFAULT_VARIANTS, G as RLY_COLLABORATOR_GROUP_VARIANTS, Ht as RLY_COLOR_TOKEN_NAMES, Rt as RLY_CONTROL_HEIGHT_TOKEN_NAMES, ne as RLY_DECISION_BAR_DEFAULT_VARIANTS, H as RLY_DECISION_BAR_VARIANTS, $e as RLY_DIALOG_DEFAULT_VARIANTS, nt as RLY_DIALOG_VARIANTS, ft as RLY_DIVIDER_DEFAULT_VARIANTS, ut as RLY_DIVIDER_VARIANTS, C as RLY_ENTITY_TABLE_DEFAULT_VARIANTS, he as RLY_ENTITY_TABLE_VARIANTS, Ue as RLY_FIELD_DEFAULT_VARIANTS, Ze as RLY_FIELD_VARIANTS, Vt as RLY_FONT_FACES, xe as RLY_FRESHNESS_STAMP_DEFAULT_VARIANTS, ue as RLY_FRESHNESS_STAMP_VARIANTS, m as RLY_HERO_DEFAULT_VARIANTS, P as RLY_HERO_VARIANTS, b as RLY_HERO_WORD_VARIANTS, He as RLY_ICON_BUTTON_DEFAULT_VARIANTS, ct as RLY_ICON_BUTTON_VARIANTS, o as RLY_ICON_DEFAULT_VARIANTS, l as RLY_ICON_NAMES, u as RLY_ICON_VARIANTS, Mt as RLY_LIMIT_TRACK_DEFAULT_VARIANTS, Ft as RLY_LIMIT_TRACK_VARIANTS, Bt as RLY_MOTION_TOKEN_NAMES, xt as RLY_NOTICE_DEFAULT_VARIANTS, bt as RLY_NOTICE_VARIANTS, Ce as RLY_PEOPLE_STRIP_DEFAULT_VARIANTS, q as RLY_PEOPLE_STRIP_VARIANTS, me as RLY_PERSON_DEFAULT_VARIANTS, ce as RLY_PERSON_VARIANTS, Lt as RLY_RADIUS_TOKEN_NAMES, v as RLY_REGION_DEFAULT_VARIANTS, x as RLY_REGION_VARIANTS, E as RLY_RELATIONSHIP_DIRECTION_PRESENTATION, O as RLY_RELATIONSHIP_LIFECYCLE_PRESENTATION, D as RLY_RELAY_MARK_SIZES, ie as RLY_RELAY_MARK_TILE_SIZES, $ as RLY_RELAY_PANEL_PRESENTATIONS, Z as RLY_RELAY_PANEL_WIDTH, ae as RLY_RELEASE_RELAY_DEFAULT_VARIANTS, Se as RLY_RELEASE_RELAY_SYMBOLS, K as RLY_RELEASE_RELAY_VARIANTS, Ke as RLY_SELECT_DEFAULT_VARIANTS, Be as RLY_SELECT_VARIANTS, pt as RLY_SERIES, R as RLY_SERVICE_MARK_DEFAULT_VARIANTS, k as RLY_SERVICE_MARK_VARIANTS, Ye as RLY_SHEET_DEFAULT_VARIANTS, Fe as RLY_SHEET_VARIANTS, tt as RLY_SKELETON_DEFAULT_VARIANTS, Qe as RLY_SKELETON_VARIANTS, It as RLY_SPACE_TOKEN_NAMES, te as RLY_STAGE_RAIL_DEFAULT_VARIANTS, V as RLY_STAGE_RAIL_VARIANTS, ze as RLY_STATE_LABEL_DEFAULT_VARIANTS, Pe as RLY_STATE_LABEL_VARIANTS, at as RLY_STATE_PANEL_DEFAULT_VARIANTS, We as RLY_STATE_PANEL_VARIANTS, jt as RLY_SURFACE_DEFAULT_VARIANTS, vt as RLY_SURFACE_VARIANTS, Je as RLY_TABS_DEFAULT_VARIANTS, Ve as RLY_TABS_VARIANTS, kt as RLY_TEXT_DEFAULT_VARIANTS, _t as RLY_TEXT_VARIANTS, a as RLY_THEME_NAMES, Ot as RLY_TOGGLE_GROUP_DEFAULT_VARIANTS, St as RLY_TOGGLE_GROUP_VARIANTS, At as RLY_TRACK_KEY_MARKS, zt as RLY_TYPE_TOKEN_NAMES, L as RLY_VERDICT_VARIANTS, w as Region, T as RelationshipChain, re as RelationshipTable, j as RelayComposer, De as RelayDecision, U as RelayDock, Oe as RelayFindings, Ee as RelayLauncher, p as RelayMark, z as RelayPanel, se as RelaySetup, pe as RelayTranscript, W as ReleasePreview, Y as ReleaseRelay, ve as ReleaseRow, ot as Select, f as ServiceMark, Ie as Sheet, qe as Skeleton, Dt as StackedBars, de as StageRail, Ne as StateLabel, Ge as StatePanel, yt as Surface, et as Tabs, Ct as Text, n as ThemeProvider, Et as ThemeSelect, le as TimelineProvenanceKey, ge as TimelineRow, ht as ToggleGroup, Tt as TrackKey, I as Verdict, be as WorksetCard, i as decodeRlyTheme, gt as limitTrackTone, M as relayShortcut, dt as rlySeriesColor, t as useDocumentTheme, h as useRelayDraft, we as useRelayPresentation, _ as useRelayShortcut, g as useRelaySummon, 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, 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 };
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, _t as O, a as k, at as A, b as j, c as M, ct as N, d as P, dt as F, et as I, f as L, ft as R, g as z, gt as B, h as V, ht as H, i as U, it as W, j as G, k as K, l as q, lt as J, m as Y, mt as X, n as Z, nt as Q, o as $, ot as ee, p as te, pt as ne, q as re, r as ie, rt as ae, s as oe, st as se, t as ce, tt as le, u as ue, ut as de, v as fe, vt as pe, w as me, x as he, y as ge, yt as _e, z as ve } from "../patterns-B3WbiVEp.js";
3
+ export { _e as AgentContextButton, pe as AgentDrawer, O as AgentJob, B as AgentProposal, H as AgentThread, ee as CollaboratorGroup, ae as DecisionBar, u as EntityShell, s as EntityTable, C as EvidenceStamp, I as FreshnessStamp, x as GovernedActionReview, v as Hero, ve as HeroWord, J as PeopleStrip, R as Person, se as RLY_COLLABORATOR_GROUP_DEFAULT_VARIANTS, N as RLY_COLLABORATOR_GROUP_VARIANTS, W as RLY_DECISION_BAR_DEFAULT_VARIANTS, A as RLY_DECISION_BAR_VARIANTS, d as RLY_ENTITY_TABLE_DEFAULT_VARIANTS, re as RLY_ENTITY_TABLE_VARIANTS, le as RLY_FRESHNESS_STAMP_DEFAULT_VARIANTS, Q as RLY_FRESHNESS_STAMP_VARIANTS, n as RLY_HERO_DEFAULT_VARIANTS, S as RLY_HERO_VARIANTS, c as RLY_HERO_WORD_VARIANTS, de as RLY_PEOPLE_STRIP_DEFAULT_VARIANTS, F as RLY_PEOPLE_STRIP_VARIANTS, ne as RLY_PERSON_DEFAULT_VARIANTS, X as RLY_PERSON_VARIANTS, o as RLY_REGION_DEFAULT_VARIANTS, l as RLY_REGION_VARIANTS, m as RLY_RELATIONSHIP_DIRECTION_PRESENTATION, g as RLY_RELATIONSHIP_LIFECYCLE_PRESENTATION, h as RLY_RELAY_MARK_SIZES, K as RLY_RELAY_MARK_TILE_SIZES, V as RLY_RELAY_PANEL_PRESENTATIONS, z as RLY_RELAY_PANEL_WIDTH, q as RLY_RELEASE_RELAY_DEFAULT_VARIANTS, ue as RLY_RELEASE_RELAY_SYMBOLS, P as RLY_RELEASE_RELAY_VARIANTS, E as RLY_SERVICE_MARK_DEFAULT_VARIANTS, _ as RLY_SERVICE_MARK_VARIANTS, U as RLY_STAGE_RAIL_DEFAULT_VARIANTS, k as RLY_STAGE_RAIL_VARIANTS, T as RLY_VERDICT_VARIANTS, f as Region, p as RelationshipChain, G as RelationshipTable, y as RelayComposer, he as RelayDecision, j as RelayDock, ge as RelayFindings, me as RelayLauncher, t as RelayMark, D as RelayPanel, Y as RelaySetup, te as RelayTranscript, M as ReleasePreview, L as ReleaseRelay, oe as ReleaseRow, e as ServiceMark, $ as StageRail, Z as TimelineProvenanceKey, ie as TimelineRow, w as Verdict, ce as WorksetCard, b as relayShortcut, r as useRelayDraft, fe as useRelayPresentation, a as useRelayShortcut, i as useRelaySummon };
4
4
 
5
5
  //# sourceMappingURL=index.js.map