@belonguniverseai/react-sdk 0.6.22 → 0.6.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/account-connectors.d.ts +2 -2
- package/dist/api/api-keys.d.ts +22 -0
- package/dist/api/client-identity.d.ts +12 -0
- package/dist/api/client.d.ts +1983 -49
- package/dist/api/mutations.d.ts +9 -1
- package/dist/api/query-keys.d.ts +9 -0
- package/dist/api/session-end.d.ts +2 -0
- package/dist/api/skill-library.d.ts +81 -0
- package/dist/api/skills.d.ts +1 -1
- package/dist/api/task-schedule-sharing.d.ts +166 -0
- package/dist/api/task-schedules.d.ts +23 -1
- package/dist/app/BelongDock.d.ts +0 -28
- package/dist/app/dock-demo-features.d.ts +13 -0
- package/dist/app/dock-demo-transport.d.ts +37 -0
- package/dist/app/dock-story-data.d.ts +116 -0
- package/dist/component/THIRD_PARTY_NOTICES.txt +24 -0
- package/dist/component/{abnfDiagram-N423BO3Z-D4mVRMw9.js → abnfDiagram-N423BO3Z-BZFjrvGh.js} +4 -4
- package/dist/component/{arc-GBp6w3tF.js → arc-R371iLQK.js} +2 -2
- package/dist/component/{architectureDiagram-T3A2C74G-Cxm-USYQ.js → architectureDiagram-T3A2C74G-CcH5CU8G.js} +3 -3
- package/dist/component/{blockDiagram-VBNYF7ZC-BAiLpxJf.js → blockDiagram-VBNYF7ZC-CO21oaME.js} +4 -4
- package/dist/component/{c4Diagram-5PPSVZJV-Sy6sLJOj.js → c4Diagram-5PPSVZJV-DFdczxGA.js} +3 -3
- package/dist/component/{channel-DPbaAkCI.js → channel-CTk2u27P.js} +2 -2
- package/dist/component/{chunk-2GRJ4B5K-8r8YJzCc.js → chunk-2GRJ4B5K-DLJBmRlE.js} +2 -2
- package/dist/component/{chunk-2Q5K7J3B-RZqny7-R.js → chunk-2Q5K7J3B-Dn9FHNcv.js} +2 -2
- package/dist/component/{chunk-5RXB4S5H-QFCY9Dtl.js → chunk-5RXB4S5H-C0lJsrjg.js} +5 -5
- package/dist/component/{chunk-5VM5RSS4-BG8q5ODa.js → chunk-5VM5RSS4-DphP3gZj.js} +2 -2
- package/dist/component/{chunk-6Q2QTUOP-D6ec2nI7.js → chunk-6Q2QTUOP-oYZ6WlsT.js} +2 -2
- package/dist/component/{chunk-GF5L2VYU-D7yROYf0.js → chunk-GF5L2VYU-CX1jApqq.js} +6 -6
- package/dist/component/{chunk-JWPE2WC7-CmGlHqne.js → chunk-JWPE2WC7-BsHiqT8c.js} +2 -2
- package/dist/component/{chunk-KBJHAD2P-W03s7swc.js → chunk-KBJHAD2P-JEN3NVHE.js} +2 -2
- package/dist/component/{chunk-RYQCIY6F-D0oyMUJ7.js → chunk-RYQCIY6F-BJlZTS0d.js} +2 -2
- package/dist/component/{chunk-XXDRQBXY-D4s0eyp4.js → chunk-XXDRQBXY-CftGkCaP.js} +2 -2
- package/dist/component/{classDiagram-JCYQIIEL-DwNAC2XG.js → classDiagram-JCYQIIEL-BEAw2s9m.js} +3 -3
- package/dist/component/{classDiagram-v2-OCEON4UE-DwNAC2XG.js → classDiagram-v2-OCEON4UE-BEAw2s9m.js} +3 -3
- package/dist/component/{cose-bilkent-JH36ORCC-DhGvXDdi.js → cose-bilkent-JH36ORCC-5g5ZQ1kH.js} +2 -2
- package/dist/component/{cynefinDiagram-MW4NZA55-BCUeX7pB.js → cynefinDiagram-MW4NZA55-C0wLlDn3.js} +3 -3
- package/dist/component/{dagre-VZM6K2ZE-DWofHoga.js → dagre-VZM6K2ZE-V9qiC6Cs.js} +3 -3
- package/dist/component/{diagram-7IWD3JNH-DjCFF_Dr.js → diagram-7IWD3JNH-D-KPwOWp.js} +4 -4
- package/dist/component/{diagram-B4RE2ZJO-CSovrpFW.js → diagram-B4RE2ZJO-CMiB6Lwu.js} +3 -3
- package/dist/component/{diagram-LBJQPF4R-Cgpae-sR.js → diagram-LBJQPF4R-ve7EbpGW.js} +3 -3
- package/dist/component/{diagram-Q27KOJAE-DikMPfLU.js → diagram-Q27KOJAE-DRINzJd4.js} +4 -4
- package/dist/component/{diagram-UB23O5K3-sQU6rZbO.js → diagram-UB23O5K3-CL0SSPI6.js} +3 -3
- package/dist/component/{ebnfDiagram-BXEA7PRR-B9t8-G8R.js → ebnfDiagram-BXEA7PRR-BgU6lPC0.js} +4 -4
- package/dist/component/{erDiagram-JOGREHBK-DKg1HhSl.js → erDiagram-JOGREHBK-BDuqW50a.js} +5 -5
- package/dist/component/{flowDiagram-UKHOOZJN-BO8jpT1D.js → flowDiagram-UKHOOZJN-KisN8EgK.js} +7 -7
- package/dist/component/{ganttDiagram-PKOTCBZU-BPXYyB9Q.js → ganttDiagram-PKOTCBZU-kZrnta4w.js} +3 -3
- package/dist/component/{gitGraphDiagram-DS77QQ5N-BjVLFBUS.js → gitGraphDiagram-DS77QQ5N-Dy1S71_C.js} +4 -4
- package/dist/component/{highlighted-body-OFNGDK62-BKot66c3.js → highlighted-body-OFNGDK62-ChNAP6R7.js} +2 -2
- package/dist/component/index.js +2 -2
- package/dist/component/{infoDiagram-6WML65LV-BkAC5Bwv.js → infoDiagram-6WML65LV-C3CmzQkI.js} +2 -2
- package/dist/component/{ishikawaDiagram-WSZJBQD7-oplkIs_t.js → ishikawaDiagram-WSZJBQD7-DBHVF-fV.js} +2 -2
- package/dist/component/{journeyDiagram-NVQOT4AX-CuliMCSv.js → journeyDiagram-NVQOT4AX-Cg3e2eDS.js} +5 -5
- package/dist/component/{kanban-definition-27J2QSJJ-DdzOdEiL.js → kanban-definition-27J2QSJJ-tIaMkhvn.js} +3 -3
- package/dist/component/{linear-zZDwdGmK.js → linear-DQ23phHp.js} +2 -2
- package/dist/component/{mermaid-GHXKKRXX-aX5umm-y.js → mermaid-GHXKKRXX-CssTT3y2.js} +115414 -109032
- package/dist/component/{mindmap-definition-FAOFIHXS-DD2HF9oE.js → mindmap-definition-FAOFIHXS-oSuksV41.js} +4 -4
- package/dist/component/{pegDiagram-VL7TDLO6-DyiDl9bF.js → pegDiagram-VL7TDLO6-GLxZEQlj.js} +4 -4
- package/dist/component/{pieDiagram-7S7Q4E2Y-DflxKS_B.js → pieDiagram-7S7Q4E2Y-4ghKg2jt.js} +4 -4
- package/dist/component/{quadrantDiagram-CIZ2JOQS-nwwayVOP.js → quadrantDiagram-CIZ2JOQS-DOnM2yX5.js} +3 -3
- package/dist/component/{railroadDiagram-AXF67PYL-BTtD2eN9.js → railroadDiagram-AXF67PYL-DCf1AdeI.js} +4 -4
- package/dist/component/{requirementDiagram-LRYGKXZP-B37q1LKL.js → requirementDiagram-LRYGKXZP-BgUTRz25.js} +4 -4
- package/dist/component/{sankeyDiagram-W5VNT64P-zY0W9eje.js → sankeyDiagram-W5VNT64P-93-3TiEZ.js} +2 -2
- package/dist/component/{sequenceDiagram-SI44F4Z6-CmQiqB8F.js → sequenceDiagram-SI44F4Z6-CjdXsQGo.js} +4 -4
- package/dist/component/{sizeCapture-X5ZJPWSS-dF3FvIT8.js → sizeCapture-X5ZJPWSS-BZcfJFgu.js} +2 -2
- package/dist/component/{stateDiagram-OKZ733FA-CX61F3L0.js → stateDiagram-OKZ733FA-DqZxP_LE.js} +3 -3
- package/dist/component/{stateDiagram-v2-UEYNNEHI-DnFZhhu3.js → stateDiagram-v2-UEYNNEHI-bW3Xpzm_.js} +3 -3
- package/dist/component/{swimlanes-SLNWSIFB-CX9XGBvw.js → swimlanes-SLNWSIFB-BCid9HHX.js} +4 -4
- package/dist/component/{swimlanesDiagram-ULZ7WXOC-Bqkgx7qk.js → swimlanesDiagram-ULZ7WXOC-CUXpjQTA.js} +3 -3
- package/dist/component/{timeline-definition-Z64GVDOM-BUX4OSm1.js → timeline-definition-Z64GVDOM-Cl9JeVlC.js} +3 -3
- package/dist/component/{vennDiagram-T6HMQDX7-BpVOq4Rh.js → vennDiagram-T6HMQDX7-A8wa9sfS.js} +2 -2
- package/dist/component/{wardleyDiagram-T6FBY63Y-BUDGa8Mv.js → wardleyDiagram-T6FBY63Y-CYjNVqXL.js} +3 -3
- package/dist/component/{xychartDiagram-ELKLHX3M-FIA_LnIu.js → xychartDiagram-ELKLHX3M-CWTWyqQ8.js} +3 -3
- package/dist/components/ai-elements/markdown-repair-samples.d.ts +27 -0
- package/dist/components/ai-elements/message.d.ts +2 -2
- package/dist/components/ai-elements/prompt-input.d.ts +3 -1
- package/dist/components/ai-elements/task.d.ts +2 -1
- package/dist/components/ai-elements/terminal-task.d.ts +2 -1
- package/dist/components/connectors/portal-theme.d.ts +2 -8
- package/dist/components/embed/AgentChatIcon.d.ts +1 -1
- package/dist/components/embed/AgentPhaseIcon.d.ts +16 -14
- package/dist/components/embed/ApiKeysSettings.d.ts +1 -0
- package/dist/components/embed/BetaBadge.d.ts +8 -10
- package/dist/components/embed/ChatTitleEditor.d.ts +17 -0
- package/dist/components/embed/ComposerContext.d.ts +9 -0
- package/dist/components/embed/EmbedAvatar.d.ts +17 -18
- package/dist/components/embed/EmbedComposer.d.ts +3 -1
- package/dist/components/embed/EmbedHeader.d.ts +20 -31
- package/dist/components/embed/EmbedRail.d.ts +12 -9
- package/dist/components/embed/EmbedSessions.d.ts +10 -12
- package/dist/components/embed/GoalComposeSheet.d.ts +2 -1
- package/dist/components/embed/LegalShortDisclaimer.d.ts +6 -8
- package/dist/components/embed/MentionInput.d.ts +9 -3
- package/dist/components/embed/MobileNavBar.d.ts +12 -10
- package/dist/components/embed/OnboardingOverlay.d.ts +3 -1
- package/dist/components/embed/OnboardingTour.d.ts +1 -10
- package/dist/components/embed/OnboardingWelcome.d.ts +1 -11
- package/dist/components/embed/PlanPanel.d.ts +3 -1
- package/dist/components/embed/PreviewPanel.d.ts +3 -1
- package/dist/components/embed/SessionSwitcher.d.ts +12 -0
- package/dist/components/embed/SubagentAvatar.d.ts +8 -0
- package/dist/components/embed/WorkspacePane.d.ts +3 -1
- package/dist/components/embed/context-occupancy.d.ts +15 -0
- package/dist/components/embed/navigation-layout.d.ts +7 -0
- package/dist/components/embed/rail-flags.d.ts +4 -11
- package/dist/components/embed/use-agent-identity.d.ts +1 -0
- package/dist/components/embed/use-prompt-invocations.d.ts +6 -1
- package/dist/components/prompts/PromptPreviewDialog.d.ts +10 -0
- package/dist/components/prompts/PromptsListSurface.d.ts +4 -4
- package/dist/components/scheduled/ConfirmDeleteScheduleDialog.d.ts +1 -0
- package/dist/components/scheduled/ScheduleDialog.d.ts +4 -0
- package/dist/components/scheduled/ScheduledDetailSurface.d.ts +1 -0
- package/dist/components/scheduled/ScheduledHeader.d.ts +3 -0
- package/dist/components/scheduled/ScheduledListSurface.d.ts +1 -1
- package/dist/components/scheduled/ShareScheduleDialog.d.ts +10 -0
- package/dist/components/scheduled/SharedSchedulesSurface.d.ts +1 -0
- package/dist/components/scheduled/schedule-dialog-model.d.ts +5 -2
- package/dist/components/skills/EditSkillDialog.d.ts +8 -0
- package/dist/components/skills/SkillDiscover.d.ts +1 -0
- package/dist/components/skills/SkillsListSurface.d.ts +8 -4
- package/dist/components/skills/skill-refusal-copy.d.ts +8 -0
- package/dist/components/ui/card.d.ts +1 -1
- package/dist/components/ui/dialog.d.ts +1 -1
- package/dist/components/ui/dropdown-menu.d.ts +2 -2
- package/dist/components/ui/hover-card.d.ts +1 -1
- package/dist/components/ui/popover.d.ts +1 -1
- package/dist/components/ui/select.d.ts +1 -1
- package/dist/components/ui/shadow-dialog-focus.d.ts +5 -0
- package/dist/components/ui/tooltip.d.ts +1 -1
- package/dist/embed/brand-marks.d.ts +3 -3
- package/dist/embed/conversation-scroll.d.ts +18 -0
- package/dist/embed/copy.d.ts +8 -3
- package/dist/embed/legal-disclaimer.d.ts +5 -1
- package/dist/embed/library-composer.d.ts +24 -0
- package/dist/embed/library-navigation.d.ts +6 -0
- package/dist/embed/portal-container.d.ts +17 -16
- package/dist/embed/presets.d.ts +2 -2
- package/dist/embed/schedule-invitation.d.ts +5 -0
- package/dist/embed/use-session-draft.d.ts +11 -0
- package/dist/embed/voice-call-lines.d.ts +14 -5
- package/dist/i18n/messages/en.d.ts +248 -9
- package/dist/i18n/messages/surfaces/files.d.ts +4 -0
- package/dist/i18n/messages/surfaces/header.d.ts +4 -0
- package/dist/i18n/messages/surfaces/navigation.d.ts +149 -0
- package/dist/i18n/messages/surfaces/prompts.d.ts +56 -5
- package/dist/i18n/messages/surfaces/scheduled.d.ts +233 -1
- package/dist/i18n/messages/surfaces/sessions.d.ts +16 -0
- package/dist/i18n/messages/surfaces/settings.d.ts +229 -0
- package/dist/i18n/messages/surfaces/skills.d.ts +157 -6
- package/dist/i18n/messages/surfaces/stream.d.ts +109 -0
- package/dist/i18n/messages/surfaces/usage.d.ts +40 -16
- package/dist/i18n/messages/surfaces/workspace.d.ts +7 -5
- package/dist/routes/chat/draft-updaters.d.ts +16 -0
- package/dist/routes/chat/use-session-goal.d.ts +1 -0
- package/dist/routes/chat.d.ts +2 -1
- package/dist/routes/library.d.ts +4 -0
- package/dist/stream/agent-deliverable-path.d.ts +1 -0
- package/dist/stream/ai-sdk-part-renderers.d.ts +4 -8
- package/dist/stream/belong-chat-transport.d.ts +16 -1
- package/dist/stream/belong-data-parts.d.ts +9 -3
- package/dist/stream/subagent-lanes.d.ts +3 -2
- package/dist/types/public.d.ts +11 -0
- package/package.json +1 -1
- package/dist/components/ai-elements/reasoning.d.ts +0 -26
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { TFunction } from 'i18next';
|
|
2
|
+
import { SkillNameReservedBy } from '../../api/skill-library.ts';
|
|
3
|
+
export declare const isNameRuleReason: (reason: string) => boolean;
|
|
4
|
+
/** Why a name is not the user's to take, by what already owns it. */
|
|
5
|
+
export declare const reservedNameCopy: (t: TFunction, reserved: {
|
|
6
|
+
readonly name: string;
|
|
7
|
+
readonly reservedBy: SkillNameReservedBy;
|
|
8
|
+
}) => string;
|
|
@@ -6,4 +6,4 @@ declare function CardDescription({ className, ...props }: React.ComponentProps<"
|
|
|
6
6
|
declare function CardAction({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
|
|
7
7
|
declare function CardContent({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
|
|
8
8
|
declare function CardFooter({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
|
|
9
|
-
export { Card, CardHeader, CardFooter, CardTitle, CardAction, CardDescription, CardContent
|
|
9
|
+
export { Card, CardHeader, CardFooter, CardTitle, CardAction, CardDescription, CardContent };
|
|
@@ -5,7 +5,7 @@ declare function DialogTrigger({ ...props }: React.ComponentProps<typeof DialogP
|
|
|
5
5
|
declare function DialogPortal({ container, ...props }: React.ComponentProps<typeof DialogPrimitive.Portal>): React.JSX.Element;
|
|
6
6
|
declare function DialogClose({ ...props }: React.ComponentProps<typeof DialogPrimitive.Close>): React.JSX.Element;
|
|
7
7
|
declare function DialogOverlay({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Overlay>): React.JSX.Element;
|
|
8
|
-
declare function DialogContent({ className, children, showCloseButton, ...props }: React.ComponentProps<typeof DialogPrimitive.Content> & {
|
|
8
|
+
declare function DialogContent({ className, style, children, showCloseButton, ...props }: React.ComponentProps<typeof DialogPrimitive.Content> & {
|
|
9
9
|
showCloseButton?: boolean;
|
|
10
10
|
}): React.JSX.Element;
|
|
11
11
|
declare function DialogHeader({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
|
|
@@ -3,7 +3,7 @@ import * as React from "react";
|
|
|
3
3
|
declare function DropdownMenu({ modal, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Root>): React.JSX.Element;
|
|
4
4
|
declare function DropdownMenuPortal({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>): React.JSX.Element;
|
|
5
5
|
declare function DropdownMenuTrigger({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Trigger>): React.JSX.Element;
|
|
6
|
-
declare function DropdownMenuContent({ className, sideOffset, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Content>): React.JSX.Element;
|
|
6
|
+
declare function DropdownMenuContent({ className, style, sideOffset, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Content>): React.JSX.Element;
|
|
7
7
|
declare function DropdownMenuGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Group>): React.JSX.Element;
|
|
8
8
|
declare function DropdownMenuItem({ className, inset, variant, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Item> & {
|
|
9
9
|
inset?: boolean;
|
|
@@ -21,5 +21,5 @@ declare function DropdownMenuSub({ ...props }: React.ComponentProps<typeof Dropd
|
|
|
21
21
|
declare function DropdownMenuSubTrigger({ className, inset, children, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {
|
|
22
22
|
inset?: boolean;
|
|
23
23
|
}): React.JSX.Element;
|
|
24
|
-
declare function DropdownMenuSubContent({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubContent>): React.JSX.Element;
|
|
24
|
+
declare function DropdownMenuSubContent({ className, style, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubContent>): React.JSX.Element;
|
|
25
25
|
export { DropdownMenu, DropdownMenuPortal, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuGroup, DropdownMenuLabel, DropdownMenuItem, DropdownMenuCheckboxItem, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubTrigger, DropdownMenuSubContent, };
|
|
@@ -2,5 +2,5 @@ import { HoverCard as HoverCardPrimitive } from 'radix-ui';
|
|
|
2
2
|
import * as React from "react";
|
|
3
3
|
declare function HoverCard({ ...props }: React.ComponentProps<typeof HoverCardPrimitive.Root>): React.JSX.Element;
|
|
4
4
|
declare function HoverCardTrigger({ ...props }: React.ComponentProps<typeof HoverCardPrimitive.Trigger>): React.JSX.Element;
|
|
5
|
-
declare function HoverCardContent({ className, align, sideOffset, ...props }: React.ComponentProps<typeof HoverCardPrimitive.Content>): React.JSX.Element;
|
|
5
|
+
declare function HoverCardContent({ className, style, align, sideOffset, ...props }: React.ComponentProps<typeof HoverCardPrimitive.Content>): React.JSX.Element;
|
|
6
6
|
export { HoverCard, HoverCardTrigger, HoverCardContent };
|
|
@@ -2,7 +2,7 @@ import { Popover as PopoverPrimitive } from 'radix-ui';
|
|
|
2
2
|
import * as React from "react";
|
|
3
3
|
declare function Popover({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Root>): React.JSX.Element;
|
|
4
4
|
declare function PopoverTrigger({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Trigger>): React.JSX.Element;
|
|
5
|
-
declare function PopoverContent({ className, align, sideOffset, ...props }: React.ComponentProps<typeof PopoverPrimitive.Content>): React.JSX.Element;
|
|
5
|
+
declare function PopoverContent({ className, style, align, sideOffset, ...props }: React.ComponentProps<typeof PopoverPrimitive.Content>): React.JSX.Element;
|
|
6
6
|
declare function PopoverAnchor({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Anchor>): React.JSX.Element;
|
|
7
7
|
declare function PopoverHeader({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
|
|
8
8
|
declare function PopoverTitle({ className, ...props }: React.ComponentProps<"h2">): React.JSX.Element;
|
|
@@ -6,7 +6,7 @@ declare function SelectValue({ ...props }: React.ComponentProps<typeof SelectPri
|
|
|
6
6
|
declare function SelectTrigger({ className, size, children, ...props }: React.ComponentProps<typeof SelectPrimitive.Trigger> & {
|
|
7
7
|
size?: "sm" | "default";
|
|
8
8
|
}): React.JSX.Element;
|
|
9
|
-
declare function SelectContent({ className, children, position, align, ...props }: React.ComponentProps<typeof SelectPrimitive.Content>): React.JSX.Element;
|
|
9
|
+
declare function SelectContent({ className, style, children, position, align, ...props }: React.ComponentProps<typeof SelectPrimitive.Content>): React.JSX.Element;
|
|
10
10
|
declare function SelectLabel({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.Label>): React.JSX.Element;
|
|
11
11
|
declare function SelectItem({ className, children, ...props }: React.ComponentProps<typeof SelectPrimitive.Item>): React.JSX.Element;
|
|
12
12
|
declare function SelectSeparator({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.Separator>): React.JSX.Element;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { KeyboardEvent } from 'react';
|
|
2
|
+
/** Radix's focus loop reads document.activeElement, which is the embed host
|
|
3
|
+
* inside Shadow DOM. Use the actual focused control at the modal's Tab edges.
|
|
4
|
+
*/
|
|
5
|
+
export declare const loopShadowDialogFocus: (event: KeyboardEvent<HTMLDivElement>) => void;
|
|
@@ -3,5 +3,5 @@ import * as React from "react";
|
|
|
3
3
|
declare function TooltipProvider({ delayDuration, ...props }: React.ComponentProps<typeof TooltipPrimitive.Provider>): React.JSX.Element;
|
|
4
4
|
declare function Tooltip({ ...props }: React.ComponentProps<typeof TooltipPrimitive.Root>): React.JSX.Element;
|
|
5
5
|
declare function TooltipTrigger({ ...props }: React.ComponentProps<typeof TooltipPrimitive.Trigger>): React.JSX.Element;
|
|
6
|
-
declare function TooltipContent({ className, sideOffset, children, ...props }: React.ComponentProps<typeof TooltipPrimitive.Content>): React.JSX.Element;
|
|
6
|
+
declare function TooltipContent({ className, style, sideOffset, children, ...props }: React.ComponentProps<typeof TooltipPrimitive.Content>): React.JSX.Element;
|
|
7
7
|
export { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
* Brand marks as inline data-URLs. The Belong mark is the existing
|
|
3
3
|
* multicolour organic glyph (moved here from BelongMark.tsx so the component
|
|
4
4
|
* and the Belong preset's logo build from one source), an inline SVG. The
|
|
5
|
-
* Simetrik mark is the agent
|
|
6
|
-
*
|
|
5
|
+
* Simetrik mark is the distinct agent glyph from the approved design proposal,
|
|
6
|
+
* embedded unchanged as WebP rather than the company pinwheel.
|
|
7
7
|
* Both are static strings: nothing host-controlled reaches the DOM.
|
|
8
8
|
*/
|
|
9
9
|
export declare const BELONG_INNER = "<defs><linearGradient id=\"g0\" gradientUnits=\"userSpaceOnUse\" x1=\"103\" y1=\"17\" x2=\"30\" y2=\"41\"><stop offset=\"0\" stop-color=\"#0F1B2E\"></stop><stop offset=\"1\" stop-color=\"#0F1B2E\"></stop></linearGradient><linearGradient id=\"g1\" gradientUnits=\"userSpaceOnUse\" x1=\"103\" y1=\"17\" x2=\"154\" y2=\"81\"><stop offset=\"0\" stop-color=\"#0F1B2E\"></stop><stop offset=\"1\" stop-color=\"#2D6F66\"></stop></linearGradient><linearGradient id=\"g2\" gradientUnits=\"userSpaceOnUse\" x1=\"154\" y1=\"81\" x2=\"112\" y2=\"142\"><stop offset=\"0\" stop-color=\"#2D6F66\"></stop><stop offset=\"1\" stop-color=\"#D9A441\"></stop></linearGradient><linearGradient id=\"g3\" gradientUnits=\"userSpaceOnUse\" x1=\"112\" y1=\"142\" x2=\"34\" y2=\"124\"><stop offset=\"0\" stop-color=\"#D9A441\"></stop><stop offset=\"1\" stop-color=\"#E06A4F\"></stop></linearGradient><linearGradient id=\"g4\" gradientUnits=\"userSpaceOnUse\" x1=\"34\" y1=\"124\" x2=\"30\" y2=\"41\"><stop offset=\"0\" stop-color=\"#E06A4F\"></stop><stop offset=\"1\" stop-color=\"#0F1B2E\"></stop></linearGradient></defs>\n <g>\n <path d=\"M 102.3,6.5 L 100.4,7.3 L 98.5,8.1 L 96.6,8.9 L 94.7,9.7 L 92.9,10.5 L 91.0,11.3 L 89.2,12.1 L 87.4,12.9 L 85.6,13.7 L 83.9,14.5 L 82.1,15.3 L 80.4,16.1 L 78.6,16.9 L 76.9,17.6 L 75.2,18.4 L 73.5,19.1 L 71.8,19.8 L 70.1,20.5 L 68.4,21.2 L 66.8,21.9 L 65.1,22.5 L 63.3,23.1 L 61.6,23.6 L 59.8,24.1 L 58.1,24.5 L 56.3,24.9 L 54.5,25.3 L 52.7,25.7 L 50.9,26.1 L 49.0,26.4 L 47.2,26.8 L 45.3,27.1 L 43.4,27.5 L 41.5,27.8 L 39.6,28.1 L 37.6,28.4 L 35.6,28.8 L 33.6,29.1 L 31.6,29.4 L 29.6,29.7 L 27.5,30.0 L 25.4,30.3 L 23.3,30.7 L 36.7,51.3 L 37.6,49.7 L 38.6,48.1 L 39.7,46.5 L 40.7,45.0 L 41.8,43.5 L 43.0,42.1 L 44.2,40.7 L 45.4,39.3 L 46.7,38.0 L 48.0,36.7 L 49.3,35.5 L 50.7,34.3 L 52.1,33.2 L 53.5,32.1 L 55.0,31.1 L 56.5,30.1 L 58.0,29.2 L 59.5,28.3 L 61.1,27.5 L 62.7,26.8 L 64.4,26.2 L 66.0,25.6 L 67.8,25.2 L 69.5,24.8 L 71.2,24.5 L 73.0,24.2 L 74.8,24.0 L 76.6,23.9 L 78.4,23.8 L 80.2,23.8 L 82.0,23.8 L 83.8,23.9 L 85.6,24.0 L 87.4,24.2 L 89.2,24.4 L 91.1,24.6 L 92.9,24.9 L 94.7,25.2 L 96.5,25.6 L 98.3,26.0 L 100.1,26.5 L 101.9,27.0 L 103.7,27.5 Z\" fill=\"url(#g0)\"></path>\n <path d=\"M 96.7,25.4 L 98.6,26.0 L 100.4,26.6 L 102.3,27.3 L 104.1,28.0 L 105.9,28.7 L 107.7,29.5 L 109.5,30.3 L 111.2,31.2 L 112.9,32.1 L 114.6,33.0 L 116.3,34.0 L 117.9,35.0 L 119.5,36.1 L 121.0,37.2 L 122.6,38.3 L 124.1,39.5 L 125.5,40.7 L 126.9,42.0 L 128.3,43.3 L 129.6,44.6 L 130.9,46.0 L 132.0,47.5 L 133.1,49.1 L 134.2,50.6 L 135.1,52.3 L 136.0,53.9 L 136.9,55.6 L 137.7,57.3 L 138.4,59.1 L 139.1,60.9 L 139.8,62.7 L 140.3,64.5 L 140.9,66.3 L 141.4,68.2 L 141.8,70.1 L 142.2,72.0 L 142.5,73.9 L 142.8,75.8 L 143.0,77.8 L 143.2,79.8 L 143.3,81.7 L 143.4,83.7 L 143.4,85.7 L 164.6,76.3 L 163.0,74.7 L 161.4,73.2 L 159.9,71.6 L 158.4,70.1 L 156.8,68.6 L 155.3,67.1 L 153.8,65.7 L 152.3,64.2 L 150.9,62.7 L 149.4,61.3 L 148.0,59.8 L 146.6,58.4 L 145.2,57.0 L 143.8,55.6 L 142.4,54.1 L 141.1,52.7 L 139.7,51.3 L 138.4,49.9 L 137.1,48.4 L 135.8,47.0 L 134.6,45.5 L 133.4,44.0 L 132.2,42.5 L 131.1,40.9 L 130.0,39.3 L 128.9,37.7 L 127.8,36.1 L 126.7,34.5 L 125.6,32.8 L 124.5,31.2 L 123.4,29.5 L 122.3,27.8 L 121.2,26.1 L 120.0,24.4 L 118.9,22.7 L 117.8,21.0 L 116.6,19.2 L 115.4,17.5 L 114.2,15.7 L 113.0,14.0 L 111.8,12.2 L 110.6,10.4 L 109.3,8.6 Z\" fill=\"url(#g1)\"></path>\n <path d=\"M 143.1,77.1 L 143.3,78.9 L 143.4,80.7 L 143.5,82.5 L 143.5,84.3 L 143.5,86.1 L 143.4,87.8 L 143.3,89.6 L 143.1,91.4 L 142.9,93.1 L 142.6,94.8 L 142.3,96.6 L 141.9,98.3 L 141.5,99.9 L 141.0,101.6 L 140.5,103.2 L 139.9,104.9 L 139.3,106.5 L 138.6,108.0 L 137.9,109.6 L 137.0,111.1 L 136.2,112.5 L 135.2,113.9 L 134.2,115.3 L 133.0,116.6 L 131.9,117.8 L 130.7,119.0 L 129.4,120.2 L 128.1,121.3 L 126.8,122.4 L 125.4,123.5 L 124.0,124.5 L 122.5,125.5 L 121.1,126.4 L 119.5,127.3 L 118.0,128.2 L 116.5,129.0 L 114.9,129.8 L 113.3,130.6 L 111.6,131.3 L 110.0,132.0 L 108.3,132.6 L 106.6,133.2 L 104.9,133.8 L 119.1,150.2 L 120.1,148.4 L 121.0,146.7 L 122.0,144.9 L 122.9,143.1 L 123.8,141.4 L 124.7,139.7 L 125.6,138.0 L 126.5,136.3 L 127.4,134.6 L 128.2,133.0 L 129.1,131.3 L 129.9,129.7 L 130.8,128.1 L 131.7,126.5 L 132.5,124.9 L 133.4,123.3 L 134.2,121.8 L 135.1,120.3 L 136.0,118.7 L 136.9,117.3 L 137.9,115.8 L 138.8,114.3 L 139.9,112.9 L 141.0,111.6 L 142.1,110.2 L 143.2,108.8 L 144.3,107.5 L 145.5,106.1 L 146.7,104.8 L 147.9,103.4 L 149.1,102.0 L 150.3,100.7 L 151.6,99.3 L 152.8,97.9 L 154.1,96.5 L 155.4,95.1 L 156.7,93.7 L 158.1,92.3 L 159.4,90.9 L 160.7,89.4 L 162.1,87.9 L 163.5,86.5 L 164.9,84.9 Z\" fill=\"url(#g2)\"></path>\n <path d=\"M 111.7,131.1 L 109.9,131.9 L 108.1,132.5 L 106.3,133.2 L 104.5,133.8 L 102.6,134.4 L 100.8,134.9 L 98.9,135.4 L 97.1,135.8 L 95.2,136.2 L 93.4,136.5 L 91.5,136.8 L 89.6,137.0 L 87.8,137.2 L 85.9,137.4 L 84.0,137.4 L 82.2,137.5 L 80.3,137.4 L 78.4,137.3 L 76.6,137.2 L 74.8,137.0 L 72.9,136.7 L 71.2,136.2 L 69.4,135.7 L 67.6,135.1 L 65.9,134.4 L 64.2,133.7 L 62.5,132.9 L 60.9,132.1 L 59.3,131.1 L 57.7,130.2 L 56.1,129.1 L 54.6,128.1 L 53.1,126.9 L 51.6,125.8 L 50.1,124.5 L 48.7,123.3 L 47.3,121.9 L 46.0,120.6 L 44.6,119.2 L 43.4,117.7 L 42.1,116.2 L 40.9,114.7 L 39.7,113.1 L 28.3,134.9 L 30.5,135.1 L 32.7,135.3 L 34.8,135.4 L 37.0,135.6 L 39.1,135.8 L 41.2,135.9 L 43.3,136.1 L 45.3,136.3 L 47.3,136.4 L 49.3,136.6 L 51.3,136.8 L 53.3,137.0 L 55.3,137.2 L 57.2,137.4 L 59.1,137.7 L 61.0,137.9 L 62.9,138.1 L 64.8,138.4 L 66.7,138.7 L 68.6,139.0 L 70.4,139.4 L 72.2,139.8 L 74.1,140.3 L 75.9,140.8 L 77.7,141.4 L 79.5,142.0 L 81.3,142.5 L 83.2,143.1 L 85.0,143.8 L 86.9,144.4 L 88.7,145.0 L 90.6,145.7 L 92.5,146.3 L 94.4,147.0 L 96.3,147.6 L 98.2,148.3 L 100.2,148.9 L 102.2,149.6 L 104.1,150.3 L 106.1,150.9 L 108.2,151.6 L 110.2,152.2 L 112.3,152.9 Z\" fill=\"url(#g3)\"></path>\n <path d=\"M 45.8,120.3 L 44.4,118.8 L 43.1,117.2 L 41.9,115.6 L 40.7,114.0 L 39.5,112.4 L 38.4,110.7 L 37.3,109.0 L 36.3,107.3 L 35.3,105.6 L 34.4,103.8 L 33.6,102.1 L 32.8,100.3 L 32.0,98.5 L 31.3,96.6 L 30.7,94.8 L 30.1,93.0 L 29.6,91.1 L 29.2,89.2 L 28.8,87.3 L 28.5,85.4 L 28.3,83.5 L 28.2,81.6 L 28.2,79.7 L 28.3,77.8 L 28.5,75.9 L 28.8,74.0 L 29.1,72.1 L 29.5,70.2 L 29.9,68.3 L 30.5,66.4 L 31.0,64.6 L 31.7,62.7 L 32.4,60.9 L 33.1,59.1 L 33.9,57.3 L 34.7,55.5 L 35.6,53.7 L 36.6,52.0 L 37.6,50.2 L 38.6,48.5 L 39.7,46.8 L 40.9,45.2 L 42.1,43.5 L 17.9,38.5 L 18.3,40.7 L 18.7,42.9 L 19.1,45.1 L 19.5,47.3 L 19.9,49.5 L 20.3,51.6 L 20.7,53.7 L 21.1,55.8 L 21.4,57.9 L 21.8,59.9 L 22.2,62.0 L 22.5,64.0 L 22.8,66.0 L 23.2,68.0 L 23.5,70.0 L 23.8,72.0 L 24.1,73.9 L 24.3,75.9 L 24.6,77.9 L 24.8,79.8 L 24.9,81.8 L 25.0,83.7 L 25.1,85.7 L 25.0,87.6 L 25.0,89.6 L 24.9,91.6 L 24.8,93.6 L 24.7,95.6 L 24.6,97.6 L 24.5,99.6 L 24.3,101.6 L 24.2,103.7 L 24.0,105.8 L 23.8,107.9 L 23.7,110.0 L 23.5,112.1 L 23.3,114.3 L 23.1,116.5 L 22.9,118.6 L 22.8,120.9 L 22.6,123.1 L 22.4,125.4 L 22.2,127.7 Z\" fill=\"url(#g4)\"></path>\n <circle cx=\"30\" cy=\"41\" r=\"17\" fill=\"#0F1B2E\"></circle>\n <circle cx=\"103\" cy=\"17\" r=\"14.5\" fill=\"#0F1B2E\"></circle>\n <circle cx=\"154\" cy=\"81\" r=\"16\" fill=\"#2D6F66\"></circle>\n <circle cx=\"112\" cy=\"142\" r=\"15\" fill=\"#D9A441\"></circle>\n <circle cx=\"34\" cy=\"124\" r=\"17\" fill=\"#E06A4F\"></circle>\n </g>";
|
|
10
10
|
export declare const BELONG_MARK_DATA_URL: string;
|
|
11
|
-
export declare const SIMETRIK_MARK_DATA_URL = "data:image/png;base64,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";
|
|
11
|
+
export declare const SIMETRIK_MARK_DATA_URL = "data:image/webp;base64,UklGRhgBAABXRUJQVlA4WAoAAAAQAAAADwAADwAAQUxQSFgAAAABV0AQQJo7gjMa6YiIeEqZwmlt2050yEgsDonE4rC0MiWMSg3kFtJp84caIvo/AeQ+9sikVXDSERg+egAeqjOb0eoW61NLrOEarMBXjwVw1x5g0SrgvZILVlA4IJoAAAAwAwCdASoQABAAAgA0JbACdD3gNKY/aP4APIzBSFjhxZrAAP7uofENbNCU14kn7Y9fiMx5hQC6tBG8hCxAsScHwJbICDxmUpCHQnDif7BjJucv/85jnx+f3/ulPRtln+pGzcAk03x/u1nW2V7Pkq/tXvKU3X+Ars96FjUnypyP37/VIut/GTG69Xhlu4TKR3xP4dwefdEF+uAA";
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A 1-shot "bring the conversation to the bottom" signal, fired by the user's
|
|
3
|
+
* OWN send.
|
|
4
|
+
*
|
|
5
|
+
* The conversation frame (`EmbedConversation`) subscribes from inside its
|
|
6
|
+
* stick-to-bottom provider and answers with `scrollToBottom()`, which also
|
|
7
|
+
* re-engages the stick so the streamed reply stays in view. The senders (the
|
|
8
|
+
* composer submit, a plan decision) live outside that provider, hence the
|
|
9
|
+
* emitter instead of prop-drilling a ref through the dock. Same idiom as
|
|
10
|
+
* `composer-focus.ts`.
|
|
11
|
+
*
|
|
12
|
+
* Only user sends fire it. Incoming tokens never do: a reader who scrolled up
|
|
13
|
+
* on purpose stays where they are until they send something themselves.
|
|
14
|
+
*/
|
|
15
|
+
/** Subscribe to scroll-to-bottom requests; returns an unsubscribe. */
|
|
16
|
+
export declare const subscribeConversationScrollToBottom: (listener: () => void) => (() => void);
|
|
17
|
+
/** Ask the mounted conversation to jump to its bottom (no-op when none is mounted). */
|
|
18
|
+
export declare const requestConversationScrollToBottom: () => void;
|
package/dist/embed/copy.d.ts
CHANGED
|
@@ -47,6 +47,7 @@ export type TourLabels = {
|
|
|
47
47
|
type TourStepContent = {
|
|
48
48
|
readonly title: string;
|
|
49
49
|
readonly body: (voiceKeyLabel: string) => string;
|
|
50
|
+
readonly bodyTouch?: string;
|
|
50
51
|
};
|
|
51
52
|
export type TourCopy = TourLabels & {
|
|
52
53
|
readonly steps: {
|
|
@@ -59,7 +60,6 @@ export type TourCopy = TourLabels & {
|
|
|
59
60
|
};
|
|
60
61
|
export type MenuCopy = {
|
|
61
62
|
readonly signedInAs: (user: string) => string;
|
|
62
|
-
readonly notSignedIn: string;
|
|
63
63
|
readonly darkMode: string;
|
|
64
64
|
readonly lightMode: string;
|
|
65
65
|
readonly moveLeft: string;
|
|
@@ -177,7 +177,10 @@ export declare const voiceKeyLabel: (code: string, locale: Locale) => string;
|
|
|
177
177
|
* tenant supplies one — Simetrik's preset, or a published theme.json. A
|
|
178
178
|
* neutral host with no override gets the variant copy as-is.
|
|
179
179
|
*/
|
|
180
|
-
export declare const resolveWelcomeCardCopy: (locale: Locale, variant: DockCopyVariant, keyLabel: string, override?: DockCopyOverride
|
|
180
|
+
export declare const resolveWelcomeCardCopy: (locale: Locale, variant: DockCopyVariant, keyLabel: string, override?: DockCopyOverride, options?: {
|
|
181
|
+
readonly mobile?: boolean;
|
|
182
|
+
readonly voiceAvailable?: boolean;
|
|
183
|
+
}) => WelcomeCardCopy;
|
|
181
184
|
/**
|
|
182
185
|
* The empty-state intro body + suggestion chips for a locale + variant,
|
|
183
186
|
* overridden by the active theme's per-locale `copy` when a tenant supplies
|
|
@@ -190,5 +193,7 @@ export type ResolvedWelcomeCopy = {
|
|
|
190
193
|
export declare const resolveWelcomeCopy: (locale: Locale, variant: DockCopyVariant, override: DockCopyOverride | undefined) => ResolvedWelcomeCopy;
|
|
191
194
|
/** Merge the locale-independent step defs with this locale's titles/bodies,
|
|
192
195
|
* injecting the LIVE voice key label and picking the variant's `/` step. */
|
|
193
|
-
export declare const buildTourSteps: (locale: Locale, keyLabel: string, variant: DockCopyVariant
|
|
196
|
+
export declare const buildTourSteps: (locale: Locale, keyLabel: string, variant: DockCopyVariant, options?: {
|
|
197
|
+
readonly mobile?: boolean;
|
|
198
|
+
}) => readonly TourStep[];
|
|
194
199
|
export {};
|
|
@@ -23,7 +23,11 @@ export type DisclaimerCopy = {
|
|
|
23
23
|
* the product and the user's next move — never the transport. */
|
|
24
24
|
readonly acceptError: string;
|
|
25
25
|
readonly languageHint: string;
|
|
26
|
-
/**
|
|
26
|
+
/** Accuracy reminder beside the tenant's beta status in the footer. */
|
|
27
|
+
readonly shortReminder: string;
|
|
28
|
+
/** Simetrik legal's caveat, first in the footer's info popover: the AI may
|
|
29
|
+
* err, and the beta may carry a later cost. It names no trial length —
|
|
30
|
+
* Simetrik runs the beta and sets its duration per client. */
|
|
27
31
|
readonly shortLine: string;
|
|
28
32
|
};
|
|
29
33
|
export declare const DISCLAIMER_COPY: Record<Locale, DisclaimerCopy>;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export type LibraryComposerRequest = {
|
|
3
|
+
readonly kind: "prompt";
|
|
4
|
+
readonly prePromptId: string;
|
|
5
|
+
} | {
|
|
6
|
+
readonly kind: "skill";
|
|
7
|
+
readonly name: string;
|
|
8
|
+
};
|
|
9
|
+
type Composer = {
|
|
10
|
+
readonly insert: (request: LibraryComposerRequest) => boolean;
|
|
11
|
+
readonly focus: () => void;
|
|
12
|
+
};
|
|
13
|
+
/** Each dock owns its handoff. Requests are synchronous and never queued. */
|
|
14
|
+
export declare function LibraryComposerProvider({ children, scopeKey, chatVisible, onAccepted, }: {
|
|
15
|
+
readonly children: ReactNode;
|
|
16
|
+
readonly scopeKey: string;
|
|
17
|
+
readonly chatVisible: boolean;
|
|
18
|
+
readonly onAccepted: () => void;
|
|
19
|
+
}): import("react").JSX.Element;
|
|
20
|
+
/** False means no current, enabled composer accepted this library item. */
|
|
21
|
+
export declare const useLibraryComposer: () => Composer["insert"];
|
|
22
|
+
/** Register the current keep-alive composer without adding API/query dependencies. */
|
|
23
|
+
export declare function useRegisterLibraryComposer(composer: Composer): void;
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { DockView } from './dock-state.ts';
|
|
2
|
+
export declare const isLibraryView: (view: DockView) => view is "skills" | "prompts";
|
|
3
|
+
/** Preserve the selected library section; otherwise prefer available skills. */
|
|
4
|
+
export declare const libraryEntryView: (view: DockView, skillsUnavailable: boolean) => "skills" | "prompts";
|
|
5
|
+
/** Company Discover does not depend on the personal-upload capability. */
|
|
6
|
+
export declare const useLibrarySkillsUnavailable: () => boolean;
|
|
@@ -1,19 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Portal container context.
|
|
3
|
-
*
|
|
4
|
-
* Radix overlays (DropdownMenu, Tooltip, Popover, …) portal to
|
|
5
|
-
* `document.body` by default. When the dock is mounted inside a Shadow DOM for
|
|
6
|
-
* style isolation (the production embed — see `embed/bootstrap.ts`), that
|
|
7
|
-
* default would drop the overlay into the host's light DOM, OUTSIDE the shadow
|
|
8
|
-
* root, where none of our injected CSS reaches — so it would render unstyled.
|
|
9
|
-
*
|
|
10
|
-
* This context carries the element those portals should mount into instead: a
|
|
11
|
-
* node that lives INSIDE the shadow root, so overlays inherit the dock's
|
|
12
|
-
* isolated styles. The default is `null`, which means "no override" — Radix
|
|
13
|
-
* falls back to `document.body`. That's exactly right for the dev SPA and
|
|
14
|
-
* Storybook, where there is no shadow root and the styles live in the document
|
|
15
|
-
* head.
|
|
16
|
-
*/
|
|
1
|
+
import { CSSProperties } from 'react';
|
|
17
2
|
export declare const PortalContainerContext: import('react').Context<HTMLElement | null>;
|
|
18
3
|
/**
|
|
19
4
|
* The element Radix portals should mount into, or `null` to use Radix's
|
|
@@ -21,3 +6,19 @@ export declare const PortalContainerContext: import('react').Context<HTMLElement
|
|
|
21
6
|
* `container` prop — Radix treats `null`/`undefined` as "use the default".
|
|
22
7
|
*/
|
|
23
8
|
export declare const usePortalContainer: () => HTMLElement | null;
|
|
9
|
+
/** Settings follows the agent's footprint even though it portals outside the dock. */
|
|
10
|
+
export type DockSurface = {
|
|
11
|
+
readonly layout: "docked" | "fullscreen" | "mobile";
|
|
12
|
+
readonly widthPx: number;
|
|
13
|
+
readonly side: "left" | "right";
|
|
14
|
+
readonly settingsOpen: boolean;
|
|
15
|
+
readonly onSettingsOpenChange: (open: boolean) => void;
|
|
16
|
+
};
|
|
17
|
+
export declare const DockSurfaceContext: import('react').Context<DockSurface | null>;
|
|
18
|
+
export declare const useDockSurface: () => DockSurface | null;
|
|
19
|
+
/** Portal roots are siblings of the dock, so they need the same tenant tokens. */
|
|
20
|
+
export type PortalTheme = {
|
|
21
|
+
readonly style: CSSProperties;
|
|
22
|
+
readonly className: string | undefined;
|
|
23
|
+
};
|
|
24
|
+
export declare const usePortalTheme: () => PortalTheme;
|
package/dist/embed/presets.d.ts
CHANGED
|
@@ -9,8 +9,8 @@ export declare const PRESET_NAME_SCHEMA: z.ZodEnum<{
|
|
|
9
9
|
}>;
|
|
10
10
|
export declare const BELONG_LIGHT_PALETTE: BelongThemePalette;
|
|
11
11
|
export declare const BELONG_DARK_PALETTE: BelongThemePalette;
|
|
12
|
-
export declare const BELONG_FONT_FAMILY = "
|
|
13
|
-
export declare const BELONG_RADIUS = "
|
|
12
|
+
export declare const BELONG_FONT_FAMILY = "-apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif";
|
|
13
|
+
export declare const BELONG_RADIUS = "16px";
|
|
14
14
|
export declare const BELONG_BRAND: BelongThemeBrand;
|
|
15
15
|
export declare const SIMETRIK_BRAND: BelongThemeBrand;
|
|
16
16
|
export declare const SIMETRIK_LIGHT_PALETTE: BelongThemePalette;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/** Fragments stay out of HTTP request logs and referrers. */
|
|
2
|
+
export declare const scheduleInvitationLink: (pageUrl: string, token: string) => string;
|
|
3
|
+
export declare const scheduleInvitationToken: (input: string) => string | null;
|
|
4
|
+
export declare const consumeScheduleInvitation: () => string | null;
|
|
5
|
+
export declare const clearScheduleInvitation: () => void;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { SetStateAction } from 'react';
|
|
2
|
+
import { WorkspaceScope } from './workspace-scope.ts';
|
|
3
|
+
type DraftScope = {
|
|
4
|
+
readonly apiBaseUrl: string;
|
|
5
|
+
readonly workspace: WorkspaceScope;
|
|
6
|
+
};
|
|
7
|
+
/** Explicit New chat discards the unbound main draft; switching sessions does not. */
|
|
8
|
+
export declare function discardSessionDraft(sessionId: string, scope: DraftScope): void;
|
|
9
|
+
/** Text drafts survive session remounts/reloads in this tab; nothing is sent to the server. */
|
|
10
|
+
export declare function useSessionDraft(initialSessionId: string, transportSessionId: string | null, scope: DraftScope): readonly [string, (next: SetStateAction<string>) => void];
|
|
11
|
+
export {};
|
|
@@ -119,13 +119,17 @@ export declare const lineBoundToSession: (sessionId: string) => AgentLine | unde
|
|
|
119
119
|
* already holds must SWITCH to Agent 1, not adopt (duplicate) it onto whatever
|
|
120
120
|
* background line the user happens to be viewing. */
|
|
121
121
|
export declare const lineOwningSession: (sessionId: string) => AgentLine | undefined;
|
|
122
|
+
/** One selected owner for every surface, including defensive legacy snapshots.
|
|
123
|
+
* Match durable repair: background slots precede main; Agent 2 precedes 3.
|
|
124
|
+
* A pending background mint (null session) is never the selected blank chat. */
|
|
125
|
+
export declare const selectedAgentLineNumber: (sessionId: string | null, candidates: readonly AgentLine[]) => number | null;
|
|
122
126
|
/**
|
|
123
127
|
* EVERY line bound to `sessionId` — the plural form `markSessionSeen` and
|
|
124
128
|
* `releaseLinesForSession` below already work in, for the same reason they do:
|
|
125
|
-
*
|
|
126
|
-
*
|
|
127
|
-
*
|
|
128
|
-
*
|
|
129
|
+
* older releases allowed several lines to alias one session. Restoration now
|
|
130
|
+
* repairs durable duplicates and adoption rejects new ones, but bulk cleanup
|
|
131
|
+
* and progress updates remain defensive when a legacy/test snapshot contains
|
|
132
|
+
* multiple holders.
|
|
129
133
|
*
|
|
130
134
|
* `lineOwningSession` answers a different question — "which ONE agent should a
|
|
131
135
|
* History reopen switch to" — and stays singular. Anything that WRITES per-line
|
|
@@ -208,7 +212,12 @@ export declare const __bindLineSessionForTest: (line: number, sessionId: string)
|
|
|
208
212
|
* while the in-memory line kept the old label, so the rail's chip and the
|
|
209
213
|
* label that survives a reload disagreed until the next rehydration.
|
|
210
214
|
*/
|
|
211
|
-
export declare const persistSlotBinding: (line: number, sessionId: string, label: string) =>
|
|
215
|
+
export declare const persistSlotBinding: (line: number, sessionId: string, label: string) => {
|
|
216
|
+
readonly status: "bound" | "already_owned";
|
|
217
|
+
readonly line: number;
|
|
218
|
+
} | {
|
|
219
|
+
readonly status: "line_released";
|
|
220
|
+
};
|
|
212
221
|
/** `stop_agent`'s target: bound by the line-run reader once a background
|
|
213
222
|
* dispatch's POST returns a runId, and cleared to `null` when that run
|
|
214
223
|
* reaches a confirmed terminal state — a stopped or finished run must not look
|