@assistant-ui/react 0.14.27 → 0.14.28
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/client/ExternalThread.d.ts.map +1 -1
- package/dist/client/ExternalThread.js +2 -2
- package/dist/client/ExternalThread.js.map +1 -1
- package/dist/context/react/utils/createContextStoreHook.d.ts.map +1 -1
- package/dist/context/react/utils/createStateHookForRuntime.d.ts.map +1 -1
- package/dist/legacy-runtime/AssistantRuntimeProvider.js.map +1 -1
- package/dist/legacy-runtime/runtime-cores/assistant-transport/commandQueue.d.ts.map +1 -1
- package/dist/mcp-apps/McpAppRenderer.d.ts.map +1 -1
- package/dist/model-context/makeAssistantVisible.d.ts.map +1 -1
- package/dist/model-context/makeAssistantVisible.js +7 -1
- package/dist/model-context/makeAssistantVisible.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarCopy.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarEdit.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarExportMarkdown.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackPositive.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarReload.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarRoot.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarRoot.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarSpeak.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreContent.d.ts.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreContent.js.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreItem.d.ts.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreSeparator.d.ts.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreTrigger.d.ts.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalAnchor.d.ts.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalContent.d.ts.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalContent.js.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalTrigger.d.ts.map +1 -1
- package/dist/primitives/assistantModal/popoverRenderPrimitives.d.ts.map +1 -1
- package/dist/primitives/attachment/AttachmentRemove.d.ts.map +1 -1
- package/dist/primitives/attachment/AttachmentRoot.d.ts.map +1 -1
- package/dist/primitives/attachment/AttachmentThumb.d.ts.map +1 -1
- package/dist/primitives/attachment/AttachmentThumb.js.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerNext.d.ts.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerRoot.d.ts.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerRoot.js.map +1 -1
- package/dist/primitives/chainOfThought/ChainOfThoughtAccordionTrigger.d.ts.map +1 -1
- package/dist/primitives/chainOfThought/ChainOfThoughtRoot.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerAddAttachment.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerAttachmentDropzone.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerAttachmentDropzone.js.map +1 -1
- package/dist/primitives/composer/ComposerCancel.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerDictate.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerDictationTranscript.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerDictationTranscript.js.map +1 -1
- package/dist/primitives/composer/ComposerInput.js.map +1 -1
- package/dist/primitives/composer/ComposerQuote.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerQuote.js.map +1 -1
- package/dist/primitives/composer/ComposerRoot.d.ts +5 -0
- package/dist/primitives/composer/ComposerRoot.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerRoot.js +86 -40
- package/dist/primitives/composer/ComposerRoot.js.map +1 -1
- package/dist/primitives/composer/ComposerSend.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerStopDictation.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopover.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopover.js.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopoverBack.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopoverCategories.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopoverCategories.js.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopoverItems.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopoverItems.js.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopoverResource.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopoverRootContext.js.map +1 -1
- package/dist/primitives/composer/trigger/detectTrigger.d.ts +1 -1
- package/dist/primitives/composer/trigger/triggerDetectionResource.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/triggerKeyboardResource.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/triggerNavigationResource.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/triggerSelectionResource.d.ts.map +1 -1
- package/dist/primitives/dropdownMenuRenderPrimitives.d.ts.map +1 -1
- package/dist/primitives/error/ErrorMessage.d.ts.map +1 -1
- package/dist/primitives/error/ErrorMessage.js.map +1 -1
- package/dist/primitives/error/ErrorRoot.d.ts.map +1 -1
- package/dist/primitives/message/MessageParts.js.map +1 -1
- package/dist/primitives/message/MessagePartsGrouped.js.map +1 -1
- package/dist/primitives/message/MessageRoot.d.ts.map +1 -1
- package/dist/primitives/messagePart/MessagePartImage.d.ts.map +1 -1
- package/dist/primitives/messagePart/MessagePartText.d.ts.map +1 -1
- package/dist/primitives/messagePart/MessagePartText.js.map +1 -1
- package/dist/primitives/messagePart/useMessagePartData.d.ts +3 -2
- package/dist/primitives/messagePart/useMessagePartData.d.ts.map +1 -1
- package/dist/primitives/messagePart/useMessagePartData.js +3 -2
- package/dist/primitives/messagePart/useMessagePartData.js.map +1 -1
- package/dist/primitives/messagePart/useMessagePartFile.d.ts +5 -4
- package/dist/primitives/messagePart/useMessagePartFile.d.ts.map +1 -1
- package/dist/primitives/messagePart/useMessagePartFile.js +11 -3
- package/dist/primitives/messagePart/useMessagePartFile.js.map +1 -1
- package/dist/primitives/messagePart/useMessagePartImage.d.ts +5 -4
- package/dist/primitives/messagePart/useMessagePartImage.d.ts.map +1 -1
- package/dist/primitives/messagePart/useMessagePartImage.js +10 -3
- package/dist/primitives/messagePart/useMessagePartImage.js.map +1 -1
- package/dist/primitives/messagePart/useMessagePartReasoning.d.ts +5 -4
- package/dist/primitives/messagePart/useMessagePartReasoning.d.ts.map +1 -1
- package/dist/primitives/messagePart/useMessagePartReasoning.js +10 -3
- package/dist/primitives/messagePart/useMessagePartReasoning.js.map +1 -1
- package/dist/primitives/messagePart/useMessagePartSource.d.ts +6 -4
- package/dist/primitives/messagePart/useMessagePartSource.d.ts.map +1 -1
- package/dist/primitives/messagePart/useMessagePartSource.js +12 -3
- package/dist/primitives/messagePart/useMessagePartSource.js.map +1 -1
- package/dist/primitives/messagePart/useMessagePartText.d.ts +6 -5
- package/dist/primitives/messagePart/useMessagePartText.d.ts.map +1 -1
- package/dist/primitives/messagePart/useMessagePartText.js +10 -3
- package/dist/primitives/messagePart/useMessagePartText.js.map +1 -1
- package/dist/primitives/queueItem/QueueItemRemove.d.ts.map +1 -1
- package/dist/primitives/queueItem/QueueItemSteer.d.ts.map +1 -1
- package/dist/primitives/queueItem/QueueItemText.d.ts.map +1 -1
- package/dist/primitives/queueItem/QueueItemText.js.map +1 -1
- package/dist/primitives/selectionToolbar/SelectionToolbarQuote.d.ts.map +1 -1
- package/dist/primitives/selectionToolbar/SelectionToolbarRoot.d.ts.map +1 -1
- package/dist/primitives/selectionToolbar/SelectionToolbarRoot.js.map +1 -1
- package/dist/primitives/suggestion/SuggestionDescription.d.ts.map +1 -1
- package/dist/primitives/suggestion/SuggestionDescription.js.map +1 -1
- package/dist/primitives/suggestion/SuggestionTitle.d.ts.map +1 -1
- package/dist/primitives/suggestion/SuggestionTitle.js.map +1 -1
- package/dist/primitives/suggestion/SuggestionTrigger.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadRoot.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadScrollToBottom.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadSuggestion.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadViewport.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadViewport.js +53 -19
- package/dist/primitives/thread/ThreadViewport.js.map +1 -1
- package/dist/primitives/thread/ThreadViewportFooter.d.ts.map +1 -1
- package/dist/primitives/thread/topAnchor/createReserveObservers.d.ts.map +1 -1
- package/dist/primitives/thread/topAnchor/mountTopAnchorReserve.d.ts +4 -0
- package/dist/primitives/thread/topAnchor/mountTopAnchorReserve.d.ts.map +1 -1
- package/dist/primitives/thread/topAnchor/mountTopAnchorReserve.js +14 -1
- package/dist/primitives/thread/topAnchor/mountTopAnchorReserve.js.map +1 -1
- package/dist/primitives/thread/topAnchor/topAnchorTurn.d.ts +13 -1
- package/dist/primitives/thread/topAnchor/topAnchorTurn.d.ts.map +1 -1
- package/dist/primitives/thread/topAnchor/topAnchorTurn.js +14 -1
- package/dist/primitives/thread/topAnchor/topAnchorTurn.js.map +1 -1
- package/dist/primitives/thread/useThreadViewportAutoScroll.js +2 -1
- package/dist/primitives/thread/useThreadViewportAutoScroll.js.map +1 -1
- package/dist/primitives/threadList/ThreadListLoadMore.d.ts.map +1 -1
- package/dist/primitives/threadList/ThreadListNew.d.ts.map +1 -1
- package/dist/primitives/threadList/ThreadListRoot.d.ts.map +1 -1
- package/dist/primitives/threadList/ThreadListRoot.js.map +1 -1
- package/dist/primitives/threadListFocusGroup.d.ts.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemArchive.d.ts.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemDelete.d.ts.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemRoot.d.ts.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemRoot.js.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemTrigger.d.ts.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemTrigger.js.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemUnarchive.d.ts.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreContent.d.ts.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreContent.js.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreItem.d.ts.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreRoot.js.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreSeparator.d.ts.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreTrigger.d.ts.map +1 -1
- package/dist/tests/setup.d.ts +1 -1
- package/dist/utils/Primitive.d.ts.map +1 -1
- package/dist/utils/Primitive.js.map +1 -1
- package/dist/utils/createActionButton.d.ts.map +1 -1
- package/package.json +20 -20
- package/src/client/ExternalThread.ts +2 -1
- package/src/model-context/makeAssistantVisible.test.tsx +146 -0
- package/src/model-context/makeAssistantVisible.tsx +18 -1
- package/src/primitives/composer/ComposerRoot.test.tsx +226 -5
- package/src/primitives/composer/ComposerRoot.tsx +50 -1
- package/src/primitives/messagePart/useMessagePartData.ts +3 -2
- package/src/primitives/messagePart/useMessagePartFile.ts +19 -7
- package/src/primitives/messagePart/useMessagePartImage.ts +18 -7
- package/src/primitives/messagePart/useMessagePartReasoning.ts +15 -6
- package/src/primitives/messagePart/useMessagePartSource.ts +20 -7
- package/src/primitives/messagePart/useMessagePartText.ts +15 -5
- package/src/primitives/thread/ThreadViewport.tsx +15 -0
- package/src/primitives/thread/topAnchor/mountTopAnchorReserve.test.ts +243 -0
- package/src/primitives/thread/topAnchor/mountTopAnchorReserve.ts +28 -7
- package/src/primitives/thread/topAnchor/topAnchorTurn.test.ts +69 -0
- package/src/primitives/thread/topAnchor/topAnchorTurn.ts +29 -0
- package/src/primitives/thread/useThreadViewportAutoScroll.test.tsx +86 -1
- package/src/primitives/thread/useThreadViewportAutoScroll.ts +6 -1
- package/src/tests/BaseComposerRuntimeCore.test.ts +12 -3
- package/src/tests/external-thread-attachments.test.tsx +81 -0
- package/src/tests/messagePartSwitchRace.test.tsx +158 -0
- package/src/tests/messagePartTypeMismatch.test.tsx +146 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExternalThread.d.ts","names":[],"sources":["../../src/client/ExternalThread.ts"],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"ExternalThread.d.ts","names":[],"sources":["../../src/client/ExternalThread.ts"],"mappings":";;;KAoCY,wBAAwB;EAClC;;KAGU;EACV,mBAAmB;EACnB;;;;;;;EAOA;;;;;EAKA,SAAS,SAAS;EAClB,UAAU,SAAS;EACnB,YAAY;EACZ;EACA;;EAEA,QAAQ;;EAER,WAAW;;EAEX,2BAA2B,SAAS;;cA4lBzB,4CAAc,SAAA,yBAAA"}
|
|
@@ -5,7 +5,7 @@ import { DataRenderers, Tools } from "@assistant-ui/core/react";
|
|
|
5
5
|
import { useEffect, useEffectEvent, useState } from "@assistant-ui/tap/react-shim";
|
|
6
6
|
import { ModelContext, Suggestions } from "@assistant-ui/core/store";
|
|
7
7
|
import { resource, withKey } from "@assistant-ui/tap";
|
|
8
|
-
import { getThreadMessageText, resolveToolApprovalResponse } from "@assistant-ui/core/internal";
|
|
8
|
+
import { getThreadMessageText, isCreateAttachment, resolveToolApprovalResponse } from "@assistant-ui/core/internal";
|
|
9
9
|
//#region src/client/ExternalThread.ts
|
|
10
10
|
const EMPTY_QUEUE_ITEMS = [];
|
|
11
11
|
const EMPTY_BRANCH_IDS = [];
|
|
@@ -433,7 +433,7 @@ const useComposerClientResource = (t0) => {
|
|
|
433
433
|
let t13;
|
|
434
434
|
if ($[33] !== attachments) {
|
|
435
435
|
t13 = async (fileOrAttachment) => {
|
|
436
|
-
if (fileOrAttachment
|
|
436
|
+
if (!isCreateAttachment(fileOrAttachment)) {
|
|
437
437
|
const newAttachment = {
|
|
438
438
|
id: Math.random().toString(36).substring(7),
|
|
439
439
|
type: "file",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExternalThread.js","names":["useState","useMemo","useEffect","useEffectEvent","resource","withKey","ClientElement","ClientOutput","useClientLookup","attachTransformScopes","useClientResource","Derived","AppendMessage","Attachment","CreateAttachment","RespondToToolApprovalOptions","ThreadAssistantMessagePart","ThreadUserMessagePart","ThreadMessage","ExternalThreadQueueAdapter","ExternalThreadBranchAdapter","QueueItemState","ComposerSendOptions","getThreadMessageText","resolveToolApprovalResponse","ModelContext","Suggestions","Tools","DataRenderers","SingleThreadList","EMPTY_QUEUE_ITEMS","EMPTY_BRANCH_IDS","ExternalThreadMessage","id","ExternalThreadProps","messages","isRunning","isSendDisabled","onNew","message","onEdit","onReload","parentId","onStartRun","onCancel","queue","branches","onRespondToToolApproval","options","MessageClientProps","index","useMessageClient","t0","$","_c","isCopied","setIsCopied","isHovering","setIsHovering","isEditing","setIsEditing","t1","content","t2","part","idx","PartResource","map","partClients","attachments","t3","_temp2","attachmentClients","t4","Symbol","for","handleBeginEdit","t5","handleCancelEdit","t6","msg","clear","sourceId","handleSendEdit","t7","ComposerClientResource","type","canCancel","onBeginEdit","onSend","composerClient","branchIds","t8","getBranches","indexOf","branchIndex","branchNumber","branchCount","length","t9","t10","state","isLast","speech","undefined","parts","composer","t11","t12","methods","t13","t14","t15","position","branchId","target","switchToBranch","t16","selector","get","partIndex","findIndex","p","toolCallId","t17","selector_0","key","t18","getState","delete","_temp3","reload","speak","_temp4","stopSpeaking","_temp5","submitFeedback","_temp6","getCopyText","attachment","MessageClient","PartResourceProps","usePartResource","const","status","response","Error","approval","approved","resolution","addToolResult","_temp7","resumeToolCall","_temp8","respondToToolApproval","AttachmentResourceProps","onRemove","useAttachmentResource","remove","AttachmentResource","ComposerClientResourceProps","useQueueItemClient","item","onSteer","steer","QueueItemClient","useComposerClientResource","text","setText","role","setRole","runConfig","setRunConfig","setAttachments","quote","setQuote","textParts","filter","_temp9","messageText","_temp0","join","updateFromMessage","_","i","queueItems","items","queueItemClients","trim","isEmpty","canSend","attachmentAccept","dictation","fileOrAttachment","File","newAttachment","Math","random","toString","substring","name","contentType","file","newAttachment_0","opts","currentQuote","composedMessage","createdAt","Date","startRun","metadata","custom","enqueue","t19","t20","addAttachment","clearAttachments","reset","send","cancel","beginEdit","startDictation","_temp1","stopDictation","_temp10","queueItem","useExternalThread","messageId","messageIndex","m","handleReload","props","messageClients","handleCancelRun","handleSendNew","hasQueue","hasBranches","_temp11","messageStates","edit","feedback","voice","switchBranchDuringRun","unstable_copy","isDisabled","isLoading","capabilities","suggestions","extras","message_0","appendMessage","at","append","deleteMessage","_temp12","resumeRun","_temp13","cancelRun","getModelContext","_temp14","export","_temp15","import","_temp16","_temp17","_temp18","connectVoice","_temp19","disconnectVoice","_temp20","getVoiceVolume","_temp21","subscribeVoiceVolume","_temp23","muteVoice","_temp24","unmuteVoice","_temp25","ExternalThread","scopes","parent","threads","source","threadElement","thread","query","aui","threadListItem","modelContext","tools","dataRenderers","_temp","part_0","s","arr","config","_temp22"],"sources":["../../src/client/ExternalThread.ts"],"sourcesContent":["import { useState, useMemo, useEffect, useEffectEvent } from \"react\";\nimport { resource, withKey } from \"@assistant-ui/tap\";\nimport {\n type ClientElement,\n type ClientOutput,\n useClientLookup,\n attachTransformScopes,\n useClientResource,\n Derived,\n} from \"@assistant-ui/store\";\n\nimport type {\n AppendMessage,\n Attachment,\n CreateAttachment,\n RespondToToolApprovalOptions,\n ThreadAssistantMessagePart,\n ThreadUserMessagePart,\n ThreadMessage,\n ExternalThreadQueueAdapter,\n ExternalThreadBranchAdapter,\n} from \"@assistant-ui/core\";\nimport type { QueueItemState } from \"@assistant-ui/core/store\";\nimport type { ComposerSendOptions } from \"@assistant-ui/core/store\";\nimport {\n getThreadMessageText,\n resolveToolApprovalResponse,\n} from \"@assistant-ui/core/internal\";\nimport { ModelContext, Suggestions } from \"@assistant-ui/core/store\";\nimport { Tools, DataRenderers } from \"@assistant-ui/core/react\";\nimport { SingleThreadList } from \"./SingleThreadList\";\n\nconst EMPTY_QUEUE_ITEMS: readonly QueueItemState[] = [];\nconst EMPTY_BRANCH_IDS: readonly string[] = [];\n\nexport type ExternalThreadMessage = ThreadMessage & {\n id: string;\n};\n\nexport type ExternalThreadProps = {\n messages: readonly ExternalThreadMessage[];\n isRunning?: boolean;\n /**\n * Whether sending new messages is currently disabled. When `true`, the\n * thread composer's input remains usable but `send()` is a no-op and\n * `composer.canSend` is `false`. Edit composers (saving message edits)\n * intentionally ignore this flag.\n */\n isSendDisabled?: boolean;\n /**\n * Callback for new messages (non-queue runtimes).\n * @note Unused when `queue` is provided — new messages are routed through `queue.enqueue` instead.\n */\n onNew?: (message: AppendMessage) => void;\n onEdit?: (message: AppendMessage) => void;\n onReload?: (parentId: string | null) => void;\n onStartRun?: () => void;\n onCancel?: () => void;\n /** Queue adapter for runtimes that support message queuing and steering. */\n queue?: ExternalThreadQueueAdapter;\n /** Branch adapter for runtimes that track sibling variants of messages. */\n branches?: ExternalThreadBranchAdapter;\n /** Callback for tool approval decisions. Absent: responding to an approval throws a capability error. */\n onRespondToToolApproval?: (options: RespondToToolApprovalOptions) => void;\n};\n\ntype MessageClientProps = {\n message: ExternalThreadMessage;\n index: number;\n onEdit?: (message: AppendMessage) => void;\n onReload?: () => void;\n queue?: ExternalThreadQueueAdapter | undefined;\n branches?: ExternalThreadBranchAdapter | undefined;\n onRespondToToolApproval?:\n | ((options: RespondToToolApprovalOptions) => void)\n | undefined;\n};\n\n// Message Client - minimal implementation\nconst useMessageClient = ({\n message,\n index,\n onEdit,\n onReload,\n queue,\n branches,\n onRespondToToolApproval,\n}: MessageClientProps): ClientOutput<\"message\"> => {\n const [isCopied, setIsCopied] = useState(false);\n const [isHovering, setIsHovering] = useState(false);\n const [isEditing, setIsEditing] = useState(false);\n\n const partClients = useClientLookup(\n message.content.map((part, idx) =>\n withKey(idx, PartResource({ part, onRespondToToolApproval })),\n ),\n );\n\n const attachmentClients = useClientLookup(\n (message.attachments ?? []).map((attachment) =>\n withKey(\n attachment.id,\n AttachmentResource({\n attachment,\n onRemove: () => {},\n }),\n ),\n ),\n );\n\n const handleBeginEdit = () => {\n setIsEditing(true);\n };\n\n const handleCancelEdit = () => {\n setIsEditing(false);\n };\n\n const handleSendEdit = (msg: AppendMessage) => {\n queue?.clear(\"edit\");\n onEdit?.({\n ...msg,\n parentId: message.id,\n sourceId: message.id,\n });\n setIsEditing(false);\n };\n\n const composerClient = useClientResource(\n ComposerClientResource({\n type: \"edit\",\n isEditing,\n canCancel: true,\n onCancel: handleCancelEdit,\n onBeginEdit: handleBeginEdit,\n onSend: handleSendEdit,\n message,\n queue,\n }),\n );\n\n const branchIds = branches?.getBranches(message.id) ?? EMPTY_BRANCH_IDS;\n const branchIndex = branchIds.indexOf(message.id);\n const branchNumber = branchIndex === -1 ? 1 : branchIndex + 1;\n const branchCount = branchIndex === -1 ? 1 : branchIds.length;\n\n const state = useMemo(() => {\n return {\n ...message,\n attachments: message.attachments ?? [],\n parentId: null,\n isLast: false, // Will be set by thread\n branchNumber,\n branchCount,\n speech: undefined,\n parts: partClients.state,\n isCopied,\n isHovering,\n index,\n composer: composerClient.state,\n };\n }, [\n message,\n isCopied,\n isHovering,\n index,\n composerClient.state,\n partClients.state,\n branchNumber,\n branchCount,\n ]);\n\n return {\n getState: () => state,\n composer: () => composerClient.methods,\n delete: () => {},\n reload: () => {\n onReload?.();\n },\n speak: () => {},\n stopSpeaking: () => {},\n submitFeedback: () => {},\n switchToBranch: ({ position, branchId }) => {\n if (!branches) return;\n const target =\n branchId ??\n (branchIndex === -1\n ? undefined\n : position === \"previous\"\n ? branchIds[branchIndex - 1]\n : position === \"next\"\n ? branchIds[branchIndex + 1]\n : undefined);\n if (target !== undefined && target !== message.id)\n branches.switchToBranch(target);\n },\n getCopyText: () => getThreadMessageText(message),\n part: (selector) => {\n if (\"index\" in selector) {\n return partClients.get(selector);\n }\n const partIndex = state.parts.findIndex(\n (p) => p.type === \"tool-call\" && p.toolCallId === selector.toolCallId,\n );\n return partClients.get({ index: partIndex });\n },\n attachment: (selector) => {\n if (\"id\" in selector) {\n return attachmentClients.get({ key: selector.id });\n }\n return attachmentClients.get(selector);\n },\n setIsCopied,\n setIsHovering,\n };\n};\n\nconst MessageClient = resource(useMessageClient);\n\ntype PartResourceProps = {\n part: ThreadAssistantMessagePart | ThreadUserMessagePart;\n onRespondToToolApproval?:\n | ((options: RespondToToolApprovalOptions) => void)\n | undefined;\n};\n\n// Part Client - minimal implementation\nconst usePartResource = ({\n part,\n onRespondToToolApproval,\n}: PartResourceProps): ClientOutput<\"part\"> => {\n const state = useMemo(\n () => ({\n ...part,\n status: { type: \"complete\" as const },\n }),\n [part],\n );\n\n return {\n getState: () => state,\n addToolResult: () => {},\n resumeToolCall: () => {},\n respondToToolApproval: (response) => {\n if (!onRespondToToolApproval)\n throw new Error(\"Runtime does not support tool approvals.\");\n\n if (part.type !== \"tool-call\")\n throw new Error(\n \"Tried to respond to tool approval on non-tool message part\",\n );\n\n if (\n !part.approval ||\n part.approval.approved !== undefined ||\n part.approval.resolution !== undefined\n )\n throw new Error(\"Tool call has no pending approval\");\n\n onRespondToToolApproval(\n resolveToolApprovalResponse(part.approval, response),\n );\n },\n };\n};\n\nconst PartResource = resource(usePartResource);\n\ntype AttachmentResourceProps = {\n attachment: Attachment;\n onRemove?: () => void;\n};\n\n// Attachment Client - minimal implementation\nconst useAttachmentResource = ({\n attachment,\n onRemove,\n}: AttachmentResourceProps): ClientOutput<\"attachment\"> => {\n return {\n getState: () => attachment,\n remove: async () => {\n onRemove?.();\n },\n };\n};\n\nconst AttachmentResource = resource(useAttachmentResource);\n\ntype ComposerClientResourceProps = {\n type: \"thread\" | \"edit\";\n isEditing: boolean;\n canCancel: boolean;\n isSendDisabled?: boolean;\n onCancel: () => void;\n onBeginEdit?: () => void;\n onSend?: (message: AppendMessage) => void;\n message?: ExternalThreadMessage;\n queue?: ExternalThreadQueueAdapter | undefined;\n};\n\nconst useQueueItemClient = ({\n item,\n onSteer,\n onRemove,\n}: {\n item: QueueItemState;\n onSteer: () => void;\n onRemove: () => void;\n}): ClientOutput<\"queueItem\"> => {\n return {\n getState: () => item,\n steer: onSteer,\n remove: onRemove,\n };\n};\n\nconst QueueItemClient = resource(useQueueItemClient);\n\n// Composer Client - minimal implementation\nconst useComposerClientResource = ({\n type,\n isEditing,\n canCancel,\n isSendDisabled = false,\n onCancel,\n onBeginEdit,\n onSend,\n message,\n queue,\n}: ComposerClientResourceProps): ClientOutput<\"composer\"> => {\n const [text, setText] = useState(\"\");\n const [role, setRole] = useState<\"user\" | \"assistant\" | \"system\">(\"user\");\n const [runConfig, setRunConfig] = useState<Record<string, unknown>>({});\n const [attachments, setAttachments] = useState<readonly Attachment[]>([]);\n const [quote, setQuote] = useState<\n { readonly text: string; readonly messageId: string } | undefined\n >(undefined);\n\n // Update composer values when editing begins\n const updateFromMessage = useEffectEvent(() => {\n if (message) {\n // Extract text from message content (text parts only)\n const textParts = message.content.filter((part) => part.type === \"text\");\n const messageText = textParts\n .map((part) => (\"text\" in part ? part.text : \"\"))\n .join(\"\\n\\n\");\n\n setText(messageText);\n setRole(message.role);\n setAttachments(message.attachments ?? []);\n }\n });\n\n useEffect(() => {\n if (isEditing) {\n updateFromMessage();\n }\n }, [isEditing]);\n\n const attachmentClients = useClientLookup(\n attachments.map((attachment, idx) =>\n withKey(\n attachment.id,\n AttachmentResource({\n attachment,\n onRemove: () => {\n setAttachments(attachments.filter((_, i) => i !== idx));\n },\n }),\n ),\n ),\n );\n\n const queueItems = queue?.items ?? EMPTY_QUEUE_ITEMS;\n const queueItemClients = useClientLookup(\n queueItems.map((item) =>\n withKey(\n item.id,\n QueueItemClient({\n item,\n onSteer: () => queue?.steer(item.id),\n onRemove: () => queue?.remove(item.id),\n }),\n ),\n ),\n );\n\n const state = useMemo(() => {\n const isEmpty = !text.trim() && !attachments.length;\n return {\n text,\n role,\n attachments: attachmentClients.state,\n runConfig,\n isEditing,\n canCancel,\n canSend: isEditing && !isEmpty && !isSendDisabled,\n attachmentAccept: \"*\",\n isEmpty,\n type,\n dictation: undefined,\n quote,\n queue: queueItems,\n };\n }, [\n text,\n role,\n attachmentClients.state,\n runConfig,\n isEditing,\n canCancel,\n isSendDisabled,\n type,\n attachments.length,\n quote,\n queueItems,\n ]);\n\n return {\n getState: () => state,\n setText,\n setRole,\n setRunConfig,\n addAttachment: async (fileOrAttachment: File | CreateAttachment) => {\n if (fileOrAttachment instanceof File) {\n const newAttachment: Attachment = {\n id: Math.random().toString(36).substring(7),\n type: \"file\",\n name: fileOrAttachment.name,\n contentType: fileOrAttachment.type,\n file: fileOrAttachment,\n status: { type: \"complete\" },\n content: [],\n };\n setAttachments([...attachments, newAttachment]);\n } else {\n const newAttachment: Attachment = {\n id: fileOrAttachment.id ?? Math.random().toString(36).substring(7),\n type: fileOrAttachment.type ?? \"document\",\n name: fileOrAttachment.name,\n contentType: fileOrAttachment.contentType,\n content: fileOrAttachment.content,\n status: { type: \"complete\" },\n };\n setAttachments([...attachments, newAttachment]);\n }\n },\n clearAttachments: async () => {\n setAttachments([]);\n },\n attachment: (selector) => {\n if (\"id\" in selector) {\n return attachmentClients.get({ key: selector.id });\n }\n return attachmentClients.get(selector);\n },\n reset: async () => {\n setText(\"\");\n setRole(\"user\");\n setRunConfig({});\n setAttachments([]);\n setQuote(undefined);\n },\n send: (opts?: ComposerSendOptions) => {\n if (!state.canSend) return;\n\n const currentQuote = quote;\n const composedMessage: AppendMessage = {\n role,\n content: text ? [{ type: \"text\" as const, text }] : [],\n attachments: attachments as any,\n createdAt: new Date(),\n parentId: null,\n sourceId: null,\n runConfig,\n startRun: opts?.startRun,\n metadata: {\n custom: { ...(currentQuote ? { quote: currentQuote } : {}) },\n },\n };\n if (queue) {\n queue.enqueue(composedMessage, { steer: opts?.steer ?? false });\n } else {\n onSend?.(composedMessage);\n }\n setText(\"\");\n setAttachments([]);\n setQuote(undefined);\n },\n cancel: onCancel,\n beginEdit: () => {\n onBeginEdit?.();\n },\n startDictation: () => {},\n stopDictation: () => {},\n setQuote,\n queueItem: (selector: { index: number }) => {\n return queueItemClients.get(selector);\n },\n };\n};\n\nconst ComposerClientResource = resource(useComposerClientResource);\n\n// External Thread Client\nconst useExternalThread = ({\n messages,\n isRunning = false,\n isSendDisabled = false,\n onNew,\n onEdit,\n onReload,\n onStartRun,\n onCancel,\n queue,\n branches,\n onRespondToToolApproval,\n}: ExternalThreadProps): ClientOutput<\"thread\"> => {\n const handleReload = (messageId: string) => {\n const messageIndex = messages.findIndex((m) => m.id === messageId);\n if (messageIndex === -1) return;\n\n const parentId = messageIndex > 0 ? messages[messageIndex - 1]!.id : null;\n queue?.clear(\"reload\");\n onReload?.(parentId);\n };\n\n const messageClients = useClientLookup(\n messages.map((msg, index) => {\n const props: MessageClientProps = {\n message: msg,\n index,\n onReload: () => handleReload(msg.id),\n queue,\n branches,\n onRespondToToolApproval,\n };\n if (onEdit) props.onEdit = onEdit;\n return withKey(msg.id, MessageClient(props));\n }),\n );\n\n const handleCancelRun = () => {\n queue?.clear(\"cancel-run\");\n onCancel?.();\n };\n\n const handleSendNew = (message: AppendMessage) => {\n onNew?.(message);\n };\n\n const composerClient = useClientResource(\n ComposerClientResource({\n type: \"thread\",\n isEditing: true,\n canCancel: isRunning,\n isSendDisabled,\n onCancel: handleCancelRun,\n onSend: handleSendNew,\n queue,\n }),\n );\n\n const hasQueue = !!queue;\n const hasBranches = !!branches;\n const state = useMemo(() => {\n const messageStates = messageClients.state.map((s, idx, arr) => ({\n ...s,\n isLast: idx === arr.length - 1,\n }));\n\n return {\n isEmpty: messages.length === 0,\n isDisabled: false,\n isLoading: false,\n isRunning,\n capabilities: {\n edit: false,\n delete: false,\n reload: false,\n cancel: isRunning,\n speech: false,\n attachments: false,\n feedback: false,\n voice: false,\n switchToBranch: hasBranches,\n switchBranchDuringRun: false,\n unstable_copy: false,\n dictation: false,\n queue: hasQueue,\n },\n messages: messageStates,\n state: {},\n suggestions: [],\n extras: undefined,\n speech: undefined,\n voice: undefined,\n composer: composerClient.state,\n };\n }, [\n messages,\n isRunning,\n hasQueue,\n hasBranches,\n messageClients.state,\n composerClient.state,\n ]);\n\n return {\n getState: () => state,\n composer: () => composerClient.methods,\n append: (message) => {\n const appendMessage: AppendMessage =\n typeof message === \"string\"\n ? {\n createdAt: new Date(),\n parentId: messages.at(-1)?.id ?? null,\n sourceId: null,\n runConfig: {},\n role: \"user\",\n content: [{ type: \"text\", text: message }],\n attachments: [],\n metadata: { custom: {} },\n }\n : {\n createdAt: message.createdAt ?? new Date(),\n parentId: message.parentId ?? messages.at(-1)?.id ?? null,\n sourceId: message.sourceId ?? null,\n role: message.role ?? \"user\",\n content: message.content,\n attachments: message.attachments ?? [],\n metadata: message.metadata ?? { custom: {} },\n runConfig: message.runConfig ?? {},\n startRun: message.startRun,\n };\n if (queue) {\n queue.enqueue(appendMessage, { steer: false });\n } else {\n onNew?.(appendMessage);\n }\n },\n deleteMessage: () => {},\n startRun: () => {\n onStartRun?.();\n },\n resumeRun: () => {},\n cancelRun: handleCancelRun,\n getModelContext: () => ({ tools: {}, config: {} }),\n export: () => ({ messages: [] }),\n import: () => {},\n reset: () => {},\n message: (selector) => {\n if (\"id\" in selector) {\n return messageClients.get({ key: selector.id });\n }\n return messageClients.get(selector);\n },\n stopSpeaking: () => {},\n connectVoice: () => {},\n disconnectVoice: () => {},\n getVoiceVolume: () => 0,\n subscribeVoiceVolume: () => () => {},\n muteVoice: () => {},\n unmuteVoice: () => {},\n };\n};\n\nexport const ExternalThread = resource(useExternalThread);\n\nattachTransformScopes(useExternalThread, (scopes, parent) => {\n if (!scopes.threads && parent.threads.source === null) {\n const threadElement = scopes.thread as ClientElement<\"thread\">;\n scopes.threads = SingleThreadList({ thread: threadElement });\n scopes.thread = Derived({\n source: \"threads\",\n query: { type: \"main\" },\n get: (aui) => aui.threads().thread(\"main\"),\n });\n }\n\n if (!scopes.threadListItem && parent.threadListItem.source === null) {\n scopes.threadListItem = Derived({\n source: \"threads\",\n query: { type: \"main\" },\n get: (aui) => aui.threads().item(\"main\"),\n });\n }\n\n scopes.composer ??= Derived({\n source: \"thread\",\n query: {},\n get: (aui) => aui.thread().composer(),\n });\n\n if (!scopes.modelContext && parent.modelContext.source === null) {\n scopes.modelContext = ModelContext();\n }\n if (!scopes.tools && parent.tools.source === null) {\n scopes.tools = Tools({});\n }\n if (!scopes.dataRenderers && parent.dataRenderers.source === null) {\n scopes.dataRenderers = DataRenderers();\n }\n if (!scopes.suggestions && parent.suggestions.source === null) {\n scopes.suggestions = Suggestions();\n }\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ExternalThread.js","names":["useState","useMemo","useEffect","useEffectEvent","resource","withKey","ClientElement","ClientOutput","useClientLookup","attachTransformScopes","useClientResource","Derived","AppendMessage","Attachment","CreateAttachment","RespondToToolApprovalOptions","ThreadAssistantMessagePart","ThreadUserMessagePart","ThreadMessage","ExternalThreadQueueAdapter","ExternalThreadBranchAdapter","QueueItemState","ComposerSendOptions","getThreadMessageText","isCreateAttachment","resolveToolApprovalResponse","ModelContext","Suggestions","Tools","DataRenderers","SingleThreadList","EMPTY_QUEUE_ITEMS","EMPTY_BRANCH_IDS","ExternalThreadMessage","id","ExternalThreadProps","messages","isRunning","isSendDisabled","onNew","message","onEdit","onReload","parentId","onStartRun","onCancel","queue","branches","onRespondToToolApproval","options","MessageClientProps","index","useMessageClient","t0","$","_c","isCopied","setIsCopied","isHovering","setIsHovering","isEditing","setIsEditing","t1","content","t2","part","idx","PartResource","map","partClients","attachments","t3","_temp2","attachmentClients","t4","Symbol","for","handleBeginEdit","t5","handleCancelEdit","t6","msg","clear","sourceId","handleSendEdit","t7","ComposerClientResource","type","canCancel","onBeginEdit","onSend","composerClient","branchIds","t8","getBranches","indexOf","branchIndex","branchNumber","branchCount","length","t9","t10","state","isLast","speech","undefined","parts","composer","t11","t12","methods","t13","t14","t15","position","branchId","target","switchToBranch","t16","selector","get","partIndex","findIndex","p","toolCallId","t17","selector_0","key","t18","getState","delete","_temp3","reload","speak","_temp4","stopSpeaking","_temp5","submitFeedback","_temp6","getCopyText","attachment","MessageClient","PartResourceProps","usePartResource","const","status","response","Error","approval","approved","resolution","addToolResult","_temp7","resumeToolCall","_temp8","respondToToolApproval","AttachmentResourceProps","onRemove","useAttachmentResource","remove","AttachmentResource","ComposerClientResourceProps","useQueueItemClient","item","onSteer","steer","QueueItemClient","useComposerClientResource","text","setText","role","setRole","runConfig","setRunConfig","setAttachments","quote","setQuote","textParts","filter","_temp9","messageText","_temp0","join","updateFromMessage","_","i","queueItems","items","queueItemClients","trim","isEmpty","canSend","attachmentAccept","dictation","fileOrAttachment","newAttachment","Math","random","toString","substring","name","contentType","file","newAttachment_0","opts","currentQuote","composedMessage","createdAt","Date","startRun","metadata","custom","enqueue","t19","t20","addAttachment","clearAttachments","reset","send","cancel","beginEdit","startDictation","_temp1","stopDictation","_temp10","queueItem","useExternalThread","messageId","messageIndex","m","handleReload","props","messageClients","handleCancelRun","handleSendNew","hasQueue","hasBranches","_temp11","messageStates","edit","feedback","voice","switchBranchDuringRun","unstable_copy","isDisabled","isLoading","capabilities","suggestions","extras","message_0","appendMessage","at","append","deleteMessage","_temp12","resumeRun","_temp13","cancelRun","getModelContext","_temp14","export","_temp15","import","_temp16","_temp17","_temp18","connectVoice","_temp19","disconnectVoice","_temp20","getVoiceVolume","_temp21","subscribeVoiceVolume","_temp23","muteVoice","_temp24","unmuteVoice","_temp25","ExternalThread","scopes","parent","threads","source","threadElement","thread","query","aui","threadListItem","modelContext","tools","dataRenderers","_temp","part_0","s","arr","config","_temp22"],"sources":["../../src/client/ExternalThread.ts"],"sourcesContent":["import { useState, useMemo, useEffect, useEffectEvent } from \"react\";\nimport { resource, withKey } from \"@assistant-ui/tap\";\nimport {\n type ClientElement,\n type ClientOutput,\n useClientLookup,\n attachTransformScopes,\n useClientResource,\n Derived,\n} from \"@assistant-ui/store\";\n\nimport type {\n AppendMessage,\n Attachment,\n CreateAttachment,\n RespondToToolApprovalOptions,\n ThreadAssistantMessagePart,\n ThreadUserMessagePart,\n ThreadMessage,\n ExternalThreadQueueAdapter,\n ExternalThreadBranchAdapter,\n} from \"@assistant-ui/core\";\nimport type { QueueItemState } from \"@assistant-ui/core/store\";\nimport type { ComposerSendOptions } from \"@assistant-ui/core/store\";\nimport {\n getThreadMessageText,\n isCreateAttachment,\n resolveToolApprovalResponse,\n} from \"@assistant-ui/core/internal\";\nimport { ModelContext, Suggestions } from \"@assistant-ui/core/store\";\nimport { Tools, DataRenderers } from \"@assistant-ui/core/react\";\nimport { SingleThreadList } from \"./SingleThreadList\";\n\nconst EMPTY_QUEUE_ITEMS: readonly QueueItemState[] = [];\nconst EMPTY_BRANCH_IDS: readonly string[] = [];\n\nexport type ExternalThreadMessage = ThreadMessage & {\n id: string;\n};\n\nexport type ExternalThreadProps = {\n messages: readonly ExternalThreadMessage[];\n isRunning?: boolean;\n /**\n * Whether sending new messages is currently disabled. When `true`, the\n * thread composer's input remains usable but `send()` is a no-op and\n * `composer.canSend` is `false`. Edit composers (saving message edits)\n * intentionally ignore this flag.\n */\n isSendDisabled?: boolean;\n /**\n * Callback for new messages (non-queue runtimes).\n * @note Unused when `queue` is provided — new messages are routed through `queue.enqueue` instead.\n */\n onNew?: (message: AppendMessage) => void;\n onEdit?: (message: AppendMessage) => void;\n onReload?: (parentId: string | null) => void;\n onStartRun?: () => void;\n onCancel?: () => void;\n /** Queue adapter for runtimes that support message queuing and steering. */\n queue?: ExternalThreadQueueAdapter;\n /** Branch adapter for runtimes that track sibling variants of messages. */\n branches?: ExternalThreadBranchAdapter;\n /** Callback for tool approval decisions. Absent: responding to an approval throws a capability error. */\n onRespondToToolApproval?: (options: RespondToToolApprovalOptions) => void;\n};\n\ntype MessageClientProps = {\n message: ExternalThreadMessage;\n index: number;\n onEdit?: (message: AppendMessage) => void;\n onReload?: () => void;\n queue?: ExternalThreadQueueAdapter | undefined;\n branches?: ExternalThreadBranchAdapter | undefined;\n onRespondToToolApproval?:\n | ((options: RespondToToolApprovalOptions) => void)\n | undefined;\n};\n\n// Message Client - minimal implementation\nconst useMessageClient = ({\n message,\n index,\n onEdit,\n onReload,\n queue,\n branches,\n onRespondToToolApproval,\n}: MessageClientProps): ClientOutput<\"message\"> => {\n const [isCopied, setIsCopied] = useState(false);\n const [isHovering, setIsHovering] = useState(false);\n const [isEditing, setIsEditing] = useState(false);\n\n const partClients = useClientLookup(\n message.content.map((part, idx) =>\n withKey(idx, PartResource({ part, onRespondToToolApproval })),\n ),\n );\n\n const attachmentClients = useClientLookup(\n (message.attachments ?? []).map((attachment) =>\n withKey(\n attachment.id,\n AttachmentResource({\n attachment,\n onRemove: () => {},\n }),\n ),\n ),\n );\n\n const handleBeginEdit = () => {\n setIsEditing(true);\n };\n\n const handleCancelEdit = () => {\n setIsEditing(false);\n };\n\n const handleSendEdit = (msg: AppendMessage) => {\n queue?.clear(\"edit\");\n onEdit?.({\n ...msg,\n parentId: message.id,\n sourceId: message.id,\n });\n setIsEditing(false);\n };\n\n const composerClient = useClientResource(\n ComposerClientResource({\n type: \"edit\",\n isEditing,\n canCancel: true,\n onCancel: handleCancelEdit,\n onBeginEdit: handleBeginEdit,\n onSend: handleSendEdit,\n message,\n queue,\n }),\n );\n\n const branchIds = branches?.getBranches(message.id) ?? EMPTY_BRANCH_IDS;\n const branchIndex = branchIds.indexOf(message.id);\n const branchNumber = branchIndex === -1 ? 1 : branchIndex + 1;\n const branchCount = branchIndex === -1 ? 1 : branchIds.length;\n\n const state = useMemo(() => {\n return {\n ...message,\n attachments: message.attachments ?? [],\n parentId: null,\n isLast: false, // Will be set by thread\n branchNumber,\n branchCount,\n speech: undefined,\n parts: partClients.state,\n isCopied,\n isHovering,\n index,\n composer: composerClient.state,\n };\n }, [\n message,\n isCopied,\n isHovering,\n index,\n composerClient.state,\n partClients.state,\n branchNumber,\n branchCount,\n ]);\n\n return {\n getState: () => state,\n composer: () => composerClient.methods,\n delete: () => {},\n reload: () => {\n onReload?.();\n },\n speak: () => {},\n stopSpeaking: () => {},\n submitFeedback: () => {},\n switchToBranch: ({ position, branchId }) => {\n if (!branches) return;\n const target =\n branchId ??\n (branchIndex === -1\n ? undefined\n : position === \"previous\"\n ? branchIds[branchIndex - 1]\n : position === \"next\"\n ? branchIds[branchIndex + 1]\n : undefined);\n if (target !== undefined && target !== message.id)\n branches.switchToBranch(target);\n },\n getCopyText: () => getThreadMessageText(message),\n part: (selector) => {\n if (\"index\" in selector) {\n return partClients.get(selector);\n }\n const partIndex = state.parts.findIndex(\n (p) => p.type === \"tool-call\" && p.toolCallId === selector.toolCallId,\n );\n return partClients.get({ index: partIndex });\n },\n attachment: (selector) => {\n if (\"id\" in selector) {\n return attachmentClients.get({ key: selector.id });\n }\n return attachmentClients.get(selector);\n },\n setIsCopied,\n setIsHovering,\n };\n};\n\nconst MessageClient = resource(useMessageClient);\n\ntype PartResourceProps = {\n part: ThreadAssistantMessagePart | ThreadUserMessagePart;\n onRespondToToolApproval?:\n | ((options: RespondToToolApprovalOptions) => void)\n | undefined;\n};\n\n// Part Client - minimal implementation\nconst usePartResource = ({\n part,\n onRespondToToolApproval,\n}: PartResourceProps): ClientOutput<\"part\"> => {\n const state = useMemo(\n () => ({\n ...part,\n status: { type: \"complete\" as const },\n }),\n [part],\n );\n\n return {\n getState: () => state,\n addToolResult: () => {},\n resumeToolCall: () => {},\n respondToToolApproval: (response) => {\n if (!onRespondToToolApproval)\n throw new Error(\"Runtime does not support tool approvals.\");\n\n if (part.type !== \"tool-call\")\n throw new Error(\n \"Tried to respond to tool approval on non-tool message part\",\n );\n\n if (\n !part.approval ||\n part.approval.approved !== undefined ||\n part.approval.resolution !== undefined\n )\n throw new Error(\"Tool call has no pending approval\");\n\n onRespondToToolApproval(\n resolveToolApprovalResponse(part.approval, response),\n );\n },\n };\n};\n\nconst PartResource = resource(usePartResource);\n\ntype AttachmentResourceProps = {\n attachment: Attachment;\n onRemove?: () => void;\n};\n\n// Attachment Client - minimal implementation\nconst useAttachmentResource = ({\n attachment,\n onRemove,\n}: AttachmentResourceProps): ClientOutput<\"attachment\"> => {\n return {\n getState: () => attachment,\n remove: async () => {\n onRemove?.();\n },\n };\n};\n\nconst AttachmentResource = resource(useAttachmentResource);\n\ntype ComposerClientResourceProps = {\n type: \"thread\" | \"edit\";\n isEditing: boolean;\n canCancel: boolean;\n isSendDisabled?: boolean;\n onCancel: () => void;\n onBeginEdit?: () => void;\n onSend?: (message: AppendMessage) => void;\n message?: ExternalThreadMessage;\n queue?: ExternalThreadQueueAdapter | undefined;\n};\n\nconst useQueueItemClient = ({\n item,\n onSteer,\n onRemove,\n}: {\n item: QueueItemState;\n onSteer: () => void;\n onRemove: () => void;\n}): ClientOutput<\"queueItem\"> => {\n return {\n getState: () => item,\n steer: onSteer,\n remove: onRemove,\n };\n};\n\nconst QueueItemClient = resource(useQueueItemClient);\n\n// Composer Client - minimal implementation\nconst useComposerClientResource = ({\n type,\n isEditing,\n canCancel,\n isSendDisabled = false,\n onCancel,\n onBeginEdit,\n onSend,\n message,\n queue,\n}: ComposerClientResourceProps): ClientOutput<\"composer\"> => {\n const [text, setText] = useState(\"\");\n const [role, setRole] = useState<\"user\" | \"assistant\" | \"system\">(\"user\");\n const [runConfig, setRunConfig] = useState<Record<string, unknown>>({});\n const [attachments, setAttachments] = useState<readonly Attachment[]>([]);\n const [quote, setQuote] = useState<\n { readonly text: string; readonly messageId: string } | undefined\n >(undefined);\n\n // Update composer values when editing begins\n const updateFromMessage = useEffectEvent(() => {\n if (message) {\n // Extract text from message content (text parts only)\n const textParts = message.content.filter((part) => part.type === \"text\");\n const messageText = textParts\n .map((part) => (\"text\" in part ? part.text : \"\"))\n .join(\"\\n\\n\");\n\n setText(messageText);\n setRole(message.role);\n setAttachments(message.attachments ?? []);\n }\n });\n\n useEffect(() => {\n if (isEditing) {\n updateFromMessage();\n }\n }, [isEditing]);\n\n const attachmentClients = useClientLookup(\n attachments.map((attachment, idx) =>\n withKey(\n attachment.id,\n AttachmentResource({\n attachment,\n onRemove: () => {\n setAttachments(attachments.filter((_, i) => i !== idx));\n },\n }),\n ),\n ),\n );\n\n const queueItems = queue?.items ?? EMPTY_QUEUE_ITEMS;\n const queueItemClients = useClientLookup(\n queueItems.map((item) =>\n withKey(\n item.id,\n QueueItemClient({\n item,\n onSteer: () => queue?.steer(item.id),\n onRemove: () => queue?.remove(item.id),\n }),\n ),\n ),\n );\n\n const state = useMemo(() => {\n const isEmpty = !text.trim() && !attachments.length;\n return {\n text,\n role,\n attachments: attachmentClients.state,\n runConfig,\n isEditing,\n canCancel,\n canSend: isEditing && !isEmpty && !isSendDisabled,\n attachmentAccept: \"*\",\n isEmpty,\n type,\n dictation: undefined,\n quote,\n queue: queueItems,\n };\n }, [\n text,\n role,\n attachmentClients.state,\n runConfig,\n isEditing,\n canCancel,\n isSendDisabled,\n type,\n attachments.length,\n quote,\n queueItems,\n ]);\n\n return {\n getState: () => state,\n setText,\n setRole,\n setRunConfig,\n addAttachment: async (fileOrAttachment: File | CreateAttachment) => {\n if (!isCreateAttachment(fileOrAttachment)) {\n const newAttachment: Attachment = {\n id: Math.random().toString(36).substring(7),\n type: \"file\",\n name: fileOrAttachment.name,\n contentType: fileOrAttachment.type,\n file: fileOrAttachment,\n status: { type: \"complete\" },\n content: [],\n };\n setAttachments([...attachments, newAttachment]);\n } else {\n const newAttachment: Attachment = {\n id: fileOrAttachment.id ?? Math.random().toString(36).substring(7),\n type: fileOrAttachment.type ?? \"document\",\n name: fileOrAttachment.name,\n contentType: fileOrAttachment.contentType,\n content: fileOrAttachment.content,\n status: { type: \"complete\" },\n };\n setAttachments([...attachments, newAttachment]);\n }\n },\n clearAttachments: async () => {\n setAttachments([]);\n },\n attachment: (selector) => {\n if (\"id\" in selector) {\n return attachmentClients.get({ key: selector.id });\n }\n return attachmentClients.get(selector);\n },\n reset: async () => {\n setText(\"\");\n setRole(\"user\");\n setRunConfig({});\n setAttachments([]);\n setQuote(undefined);\n },\n send: (opts?: ComposerSendOptions) => {\n if (!state.canSend) return;\n\n const currentQuote = quote;\n const composedMessage: AppendMessage = {\n role,\n content: text ? [{ type: \"text\" as const, text }] : [],\n attachments: attachments as any,\n createdAt: new Date(),\n parentId: null,\n sourceId: null,\n runConfig,\n startRun: opts?.startRun,\n metadata: {\n custom: { ...(currentQuote ? { quote: currentQuote } : {}) },\n },\n };\n if (queue) {\n queue.enqueue(composedMessage, { steer: opts?.steer ?? false });\n } else {\n onSend?.(composedMessage);\n }\n setText(\"\");\n setAttachments([]);\n setQuote(undefined);\n },\n cancel: onCancel,\n beginEdit: () => {\n onBeginEdit?.();\n },\n startDictation: () => {},\n stopDictation: () => {},\n setQuote,\n queueItem: (selector: { index: number }) => {\n return queueItemClients.get(selector);\n },\n };\n};\n\nconst ComposerClientResource = resource(useComposerClientResource);\n\n// External Thread Client\nconst useExternalThread = ({\n messages,\n isRunning = false,\n isSendDisabled = false,\n onNew,\n onEdit,\n onReload,\n onStartRun,\n onCancel,\n queue,\n branches,\n onRespondToToolApproval,\n}: ExternalThreadProps): ClientOutput<\"thread\"> => {\n const handleReload = (messageId: string) => {\n const messageIndex = messages.findIndex((m) => m.id === messageId);\n if (messageIndex === -1) return;\n\n const parentId = messageIndex > 0 ? messages[messageIndex - 1]!.id : null;\n queue?.clear(\"reload\");\n onReload?.(parentId);\n };\n\n const messageClients = useClientLookup(\n messages.map((msg, index) => {\n const props: MessageClientProps = {\n message: msg,\n index,\n onReload: () => handleReload(msg.id),\n queue,\n branches,\n onRespondToToolApproval,\n };\n if (onEdit) props.onEdit = onEdit;\n return withKey(msg.id, MessageClient(props));\n }),\n );\n\n const handleCancelRun = () => {\n queue?.clear(\"cancel-run\");\n onCancel?.();\n };\n\n const handleSendNew = (message: AppendMessage) => {\n onNew?.(message);\n };\n\n const composerClient = useClientResource(\n ComposerClientResource({\n type: \"thread\",\n isEditing: true,\n canCancel: isRunning,\n isSendDisabled,\n onCancel: handleCancelRun,\n onSend: handleSendNew,\n queue,\n }),\n );\n\n const hasQueue = !!queue;\n const hasBranches = !!branches;\n const state = useMemo(() => {\n const messageStates = messageClients.state.map((s, idx, arr) => ({\n ...s,\n isLast: idx === arr.length - 1,\n }));\n\n return {\n isEmpty: messages.length === 0,\n isDisabled: false,\n isLoading: false,\n isRunning,\n capabilities: {\n edit: false,\n delete: false,\n reload: false,\n cancel: isRunning,\n speech: false,\n attachments: false,\n feedback: false,\n voice: false,\n switchToBranch: hasBranches,\n switchBranchDuringRun: false,\n unstable_copy: false,\n dictation: false,\n queue: hasQueue,\n },\n messages: messageStates,\n state: {},\n suggestions: [],\n extras: undefined,\n speech: undefined,\n voice: undefined,\n composer: composerClient.state,\n };\n }, [\n messages,\n isRunning,\n hasQueue,\n hasBranches,\n messageClients.state,\n composerClient.state,\n ]);\n\n return {\n getState: () => state,\n composer: () => composerClient.methods,\n append: (message) => {\n const appendMessage: AppendMessage =\n typeof message === \"string\"\n ? {\n createdAt: new Date(),\n parentId: messages.at(-1)?.id ?? null,\n sourceId: null,\n runConfig: {},\n role: \"user\",\n content: [{ type: \"text\", text: message }],\n attachments: [],\n metadata: { custom: {} },\n }\n : {\n createdAt: message.createdAt ?? new Date(),\n parentId: message.parentId ?? messages.at(-1)?.id ?? null,\n sourceId: message.sourceId ?? null,\n role: message.role ?? \"user\",\n content: message.content,\n attachments: message.attachments ?? [],\n metadata: message.metadata ?? { custom: {} },\n runConfig: message.runConfig ?? {},\n startRun: message.startRun,\n };\n if (queue) {\n queue.enqueue(appendMessage, { steer: false });\n } else {\n onNew?.(appendMessage);\n }\n },\n deleteMessage: () => {},\n startRun: () => {\n onStartRun?.();\n },\n resumeRun: () => {},\n cancelRun: handleCancelRun,\n getModelContext: () => ({ tools: {}, config: {} }),\n export: () => ({ messages: [] }),\n import: () => {},\n reset: () => {},\n message: (selector) => {\n if (\"id\" in selector) {\n return messageClients.get({ key: selector.id });\n }\n return messageClients.get(selector);\n },\n stopSpeaking: () => {},\n connectVoice: () => {},\n disconnectVoice: () => {},\n getVoiceVolume: () => 0,\n subscribeVoiceVolume: () => () => {},\n muteVoice: () => {},\n unmuteVoice: () => {},\n };\n};\n\nexport const ExternalThread = resource(useExternalThread);\n\nattachTransformScopes(useExternalThread, (scopes, parent) => {\n if (!scopes.threads && parent.threads.source === null) {\n const threadElement = scopes.thread as ClientElement<\"thread\">;\n scopes.threads = SingleThreadList({ thread: threadElement });\n scopes.thread = Derived({\n source: \"threads\",\n query: { type: \"main\" },\n get: (aui) => aui.threads().thread(\"main\"),\n });\n }\n\n if (!scopes.threadListItem && parent.threadListItem.source === null) {\n scopes.threadListItem = Derived({\n source: \"threads\",\n query: { type: \"main\" },\n get: (aui) => aui.threads().item(\"main\"),\n });\n }\n\n scopes.composer ??= Derived({\n source: \"thread\",\n query: {},\n get: (aui) => aui.thread().composer(),\n });\n\n if (!scopes.modelContext && parent.modelContext.source === null) {\n scopes.modelContext = ModelContext();\n }\n if (!scopes.tools && parent.tools.source === null) {\n scopes.tools = Tools({});\n }\n if (!scopes.dataRenderers && parent.dataRenderers.source === null) {\n scopes.dataRenderers = DataRenderers();\n }\n if (!scopes.suggestions && parent.suggestions.source === null) {\n scopes.suggestions = Suggestions();\n }\n});\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createContextStoreHook.d.ts","names":[],"sources":["../../../../src/context/react/utils/createContextStoreHook.ts"],"mappings":";;;;;;;;iBASgB,uBAAuB,GAAG,gBAAgB,YACxD,cAAc;EAAY;MAAyB,UACnD,YAAY,OA2DT,KAAK;
|
|
1
|
+
{"version":3,"file":"createContextStoreHook.d.ts","names":[],"sources":["../../../../src/context/react/utils/createContextStoreHook.ts"],"mappings":";;;;;;;;iBASgB,uBAAuB,GAAG,gBAAgB,YACxD,cAAc;EAAY;MAAyB,UACnD,YAAY,OA2DT,KAAK;MAxD+C,EAAA,WAAA,oBAAA,KAAC;GAiBlC,WAAS,WAClB,OAAK,EAAA,WAAA,oBAlBqC,KAAC,cAkBtB,YAC/B;GAC4B;IAAE;OAAmB,EAAA,WAAA,oBApBG,KAAC;GAqBlC,WAAS;IAC7B;IACA,YAAY,OAAK,EAAA,WAAA,oBAvBoC,KAAC,cAuBrB;MAC/B;UAkCD,QAAQ;MAvDmB,cAAa,EAAA,WAAA,oBAHY,KAAC;GAIpB;IAClC;MACE,cAAa,EAAA,WAAA,oBANsC,KAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createStateHookForRuntime.d.ts","names":[],"sources":["../../../../src/context/react/utils/createStateHookForRuntime.ts"],"mappings":";;iBAKgB,0BAA0B,QACxC,aAAa;EACX;MACI,oBAAoB;MAGD;GAGH,WAAS,WAClB,OAAO,WAAW,YAC5B;GAGmB,WAAS,YACjB,OAAO,WAAW,yBAC7B,YAAY
|
|
1
|
+
{"version":3,"file":"createStateHookForRuntime.d.ts","names":[],"sources":["../../../../src/context/react/utils/createStateHookForRuntime.ts"],"mappings":";;iBAKgB,0BAA0B,QACxC,aAAa;EACX;MACI,oBAAoB;MAGD;GAGH,WAAS,WAClB,OAAO,WAAW,YAC5B;GAGmB,WAAS,YACjB,OAAO,WAAW,yBAC7B,YAAY;GAGgB;IAAE;MAAiC;GAGnC;IAC7B;MACE;GAGkB,WAAS;IAC7B;IACA,WAAW,OAAO,WAAW;MAC3B;GAGkB,WAAS;IAC7B;IACA,YAAY,OAAO,WAAW;MAC5B,YAAY;GAGM,WAAS;IAC7B;IACA,WAAW,OAAO,WAAW;MAC3B;GAGkB,WAAS;IAC7B;IACA,YAAY,OAAO,WAAW;MAC5B,YAAY"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssistantRuntimeProvider.js","names":["c","_c","FC","memo","PropsWithChildren","useEffect","AssistantClient","useAui","AssistantRuntime","AssistantProviderBase","ThreadPrimitiveViewportProvider","DevToolsProviderApi","AssistantRuntimeProvider","Props","runtime","aui","DevToolsRegistration","$","t0","t1","process","env","NODE_ENV","register","AssistantRuntimeProviderImpl","children","t2","Symbol","for","t3","t4"],"sources":["../../src/legacy-runtime/AssistantRuntimeProvider.tsx"],"sourcesContent":["\"use client\";\n\nimport { type FC, memo, type PropsWithChildren, useEffect } from \"react\";\nimport { type AssistantClient, useAui } from \"@assistant-ui/store\";\nimport type { AssistantRuntime } from \"./runtime/AssistantRuntime\";\nimport { AssistantProviderBase } from \"@assistant-ui/core/react\";\nimport { ThreadPrimitiveViewportProvider } from \"../context/providers/ThreadViewportProvider\";\nimport { DevToolsProviderApi } from \"../devtools/DevToolsHooks\";\n\nexport namespace AssistantRuntimeProvider {\n export type Props = PropsWithChildren<{\n /**\n * The assistant runtime to expose to descendants. Build one with\n * `useLocalRuntime`, `useExternalStoreRuntime`, or\n * `useAssistantTransportRuntime`.\n */\n runtime: AssistantRuntime;\n\n /**\n * Optional parent `AssistantClient` whose scopes are inherited by the\n * client created for this runtime. Use this when nesting an\n * `AssistantRuntimeProvider` inside another assistant context. Omit this\n * prop when there is no parent client.\n * @defaultValue undefined\n */\n aui?: AssistantClient;\n }>;\n}\n\nconst DevToolsRegistration: FC = () => {\n const aui = useAui();\n useEffect(() => {\n if (typeof process === \"undefined\" || process.env.NODE_ENV === \"production\")\n return;\n return DevToolsProviderApi.register(aui);\n }, [aui]);\n return null;\n};\n\nexport const AssistantRuntimeProviderImpl: FC<\n AssistantRuntimeProvider.Props\n> = ({ children, aui, runtime }) => {\n return (\n <AssistantProviderBase runtime={runtime} aui={aui ?? null}>\n <DevToolsRegistration />\n {/* TODO temporarily allow accessing viewport state from outside the viewport */}\n {/* TODO figure out if this behavior should be deprecated, since it is quite hacky */}\n <ThreadPrimitiveViewportProvider>\n {children}\n </ThreadPrimitiveViewportProvider>\n </AssistantProviderBase>\n );\n};\n\nexport const AssistantRuntimeProvider = memo(AssistantRuntimeProviderImpl);\n"],"mappings":";;;;;;;;;AA6BA,MAAMgB,6BAA2B;CAAA,MAAAC,IAAAhB,EAAA,CAAA;CAC/B,MAAAc,MAAYR,OAAO;CAAE,IAAAW;CAAA,IAAAC;CAAA,IAAAF,EAAA,OAAAF,KAAA;EACXG,WAAA;GACR,IAAI,OAAOE,YAAY,eAAeA,QAAOC,IAAIC,aAAc,cAAY;GAClE,OACFX,oBAAmBY,SAAUR,GAAG;EAAC;EACvCI,KAAA,CAACJ,GAAG;EAACE,EAAA,KAAAF;EAAAE,EAAA,KAAAC;EAAAD,EAAA,KAAAE;CAAA,OAAA;EAAAD,KAAAD,EAAA;EAAAE,KAAAF,EAAA;CAAA;CAJRZ,UAAUa,IAIPC,EAAK;CAAC,OACF;AAAI;AAGb,MAAaK,gCAETN,OAAA;CAAA,MAAAD,IAAAhB,EAAA,CAAA;CAAC,MAAA,EAAAwB,UAAAV,KAAAD,YAAAI;CAE6C,MAAAC,KAAAJ,OAAA;CAAW,IAAAW;CAAA,IAAAT,EAAA,OAAAU,OAAAC,IAAA,2BAAA,GAAA;EACvDF,KAAA,oBAAC,sBAAD,CAAqB,CAAA;EAAGT,EAAA,KAAAS;CAAA,OAAAA,KAAAT,EAAA;CAAA,IAAAY;CAAA,IAAAZ,EAAA,OAAAQ,UAAA;EAGxBI,KAAA,oBAAC,iCAAD,EACGJ,SAD6B,CAAA;EAEER,EAAA,KAAAQ;EAAAR,EAAA,KAAAY;CAAA,OAAAA,KAAAZ,EAAA;CAAA,IAAAa;CAAA,IAAAb,EAAA,OAAAH,WAAAG,EAAA,OAAAE,MAAAF,EAAA,OAAAY,IAAA;EANpCC,KAAA,qBAAC,uBAAD;GAAgChB;GAAc,KAAAK;
|
|
1
|
+
{"version":3,"file":"AssistantRuntimeProvider.js","names":["c","_c","FC","memo","PropsWithChildren","useEffect","AssistantClient","useAui","AssistantRuntime","AssistantProviderBase","ThreadPrimitiveViewportProvider","DevToolsProviderApi","AssistantRuntimeProvider","Props","runtime","aui","DevToolsRegistration","$","t0","t1","process","env","NODE_ENV","register","AssistantRuntimeProviderImpl","children","t2","Symbol","for","t3","t4"],"sources":["../../src/legacy-runtime/AssistantRuntimeProvider.tsx"],"sourcesContent":["\"use client\";\n\nimport { type FC, memo, type PropsWithChildren, useEffect } from \"react\";\nimport { type AssistantClient, useAui } from \"@assistant-ui/store\";\nimport type { AssistantRuntime } from \"./runtime/AssistantRuntime\";\nimport { AssistantProviderBase } from \"@assistant-ui/core/react\";\nimport { ThreadPrimitiveViewportProvider } from \"../context/providers/ThreadViewportProvider\";\nimport { DevToolsProviderApi } from \"../devtools/DevToolsHooks\";\n\nexport namespace AssistantRuntimeProvider {\n export type Props = PropsWithChildren<{\n /**\n * The assistant runtime to expose to descendants. Build one with\n * `useLocalRuntime`, `useExternalStoreRuntime`, or\n * `useAssistantTransportRuntime`.\n */\n runtime: AssistantRuntime;\n\n /**\n * Optional parent `AssistantClient` whose scopes are inherited by the\n * client created for this runtime. Use this when nesting an\n * `AssistantRuntimeProvider` inside another assistant context. Omit this\n * prop when there is no parent client.\n * @defaultValue undefined\n */\n aui?: AssistantClient;\n }>;\n}\n\nconst DevToolsRegistration: FC = () => {\n const aui = useAui();\n useEffect(() => {\n if (typeof process === \"undefined\" || process.env.NODE_ENV === \"production\")\n return;\n return DevToolsProviderApi.register(aui);\n }, [aui]);\n return null;\n};\n\nexport const AssistantRuntimeProviderImpl: FC<\n AssistantRuntimeProvider.Props\n> = ({ children, aui, runtime }) => {\n return (\n <AssistantProviderBase runtime={runtime} aui={aui ?? null}>\n <DevToolsRegistration />\n {/* TODO temporarily allow accessing viewport state from outside the viewport */}\n {/* TODO figure out if this behavior should be deprecated, since it is quite hacky */}\n <ThreadPrimitiveViewportProvider>\n {children}\n </ThreadPrimitiveViewportProvider>\n </AssistantProviderBase>\n );\n};\n\nexport const AssistantRuntimeProvider = memo(AssistantRuntimeProviderImpl);\n"],"mappings":";;;;;;;;;AA6BA,MAAMgB,6BAA2B;CAAA,MAAAC,IAAAhB,EAAA,CAAA;CAC/B,MAAAc,MAAYR,OAAO;CAAE,IAAAW;CAAA,IAAAC;CAAA,IAAAF,EAAA,OAAAF,KAAA;EACXG,WAAA;GACR,IAAI,OAAOE,YAAY,eAAeA,QAAOC,IAAIC,aAAc,cAAY;GAClE,OACFX,oBAAmBY,SAAUR,GAAG;EAAC;EACvCI,KAAA,CAACJ,GAAG;EAACE,EAAA,KAAAF;EAAAE,EAAA,KAAAC;EAAAD,EAAA,KAAAE;CAAA,OAAA;EAAAD,KAAAD,EAAA;EAAAE,KAAAF,EAAA;CAAA;CAJRZ,UAAUa,IAIPC,EAAK;CAAC,OACF;AAAI;AAGb,MAAaK,gCAETN,OAAA;CAAA,MAAAD,IAAAhB,EAAA,CAAA;CAAC,MAAA,EAAAwB,UAAAV,KAAAD,YAAAI;CAE6C,MAAAC,KAAAJ,OAAA;CAAW,IAAAW;CAAA,IAAAT,EAAA,OAAAU,OAAAC,IAAA,2BAAA,GAAA;EACvDF,KAAA,oBAAC,sBAAD,CAAqB,CAAA;EAAGT,EAAA,KAAAS;CAAA,OAAAA,KAAAT,EAAA;CAAA,IAAAY;CAAA,IAAAZ,EAAA,OAAAQ,UAAA;EAGxBI,KAAA,oBAAC,iCAAD,EACGJ,SAD6B,CAAA;EAEER,EAAA,KAAAQ;EAAAR,EAAA,KAAAY;CAAA,OAAAA,KAAAZ,EAAA;CAAA,IAAAa;CAAA,IAAAb,EAAA,OAAAH,WAAAG,EAAA,OAAAE,MAAAF,EAAA,OAAAY,IAAA;EANpCC,KAAA,qBAAC,uBAAD;GAAgChB;GAAc,KAAAK;GAA9C,UAAA,CACEO,IAGAG,EAJoB;;EAOEZ,EAAA,KAAAH;EAAAG,EAAA,KAAAE;EAAAF,EAAA,KAAAY;EAAAZ,EAAA,KAAAa;CAAA,OAAAA,KAAAb,EAAA;CAAA,OAPxBa;AAOwB;AAI5B,MAAalB,2BAA2BT,KAAKqB,4BAA4B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commandQueue.d.ts","names":[],"sources":["../../../../src/legacy-runtime/runtime-cores/assistant-transport/commandQueue.ts"],"mappings":";;cAOa,+BAA8B;cAK9B,kBAAmB;EAAQ;;;
|
|
1
|
+
{"version":3,"file":"commandQueue.d.ts","names":[],"sources":["../../../../src/legacy-runtime/runtime-cores/assistant-transport/commandQueue.ts"],"mappings":";;cAOa,+BAA8B;cAK9B,kBAAmB;EAAQ;;;EAU3B,UAAA,SAAA,2BAAyB;IACtB;;EAWI,aAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"McpAppRenderer.d.ts","names":[],"sources":["../../src/mcp-apps/McpAppRenderer.tsx"],"mappings":";;;;;KA8BY;;;;;;EAMV,MAAM,gBAAgB;;EAEtB,UAAU;;;;;EAKV;;EAEA,WAAW;;EAEX,cAAc;;EAEd,WAAW;;EAEX,kBAAkB;;EAElB,gBAAgB,cAAc,OAAO,UAAU;;cAgNpC,4CAAc;
|
|
1
|
+
{"version":3,"file":"McpAppRenderer.d.ts","names":[],"sources":["../../src/mcp-apps/McpAppRenderer.tsx"],"mappings":";;;;;KA8BY;;;;;;EAMV,MAAM,gBAAgB;;EAEtB,UAAU;;;;;EAKV;;EAEA,WAAW;;EAEX,cAAc;;EAEd,WAAW;;EAEX,kBAAkB;;EAElB,gBAAgB,cAAc,OAAO,UAAU;;cAgNpC,4CAAc;WAxBL,QAAA;IAwBmC,SAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"makeAssistantVisible.d.ts","names":[],"sources":["../../src/model-context/makeAssistantVisible.tsx"],"mappings":";;
|
|
1
|
+
{"version":3,"file":"makeAssistantVisible.d.ts","names":[],"sources":["../../src/model-context/makeAssistantVisible.tsx"],"mappings":";;cA2Fa,uBAAwB,UAAU,oBAC7C,WAAW,GACX;EAAW;EAAiC;MA6CL"}
|
|
@@ -22,6 +22,12 @@ const click = tool({
|
|
|
22
22
|
} else return "Element not found";
|
|
23
23
|
}
|
|
24
24
|
});
|
|
25
|
+
const setNativeValue = (element, value) => {
|
|
26
|
+
const prototype = element instanceof HTMLInputElement ? HTMLInputElement.prototype : HTMLTextAreaElement.prototype;
|
|
27
|
+
const setter = Object.getOwnPropertyDescriptor(prototype, "value")?.set;
|
|
28
|
+
if (setter) setter.call(element, value);
|
|
29
|
+
else element.value = value;
|
|
30
|
+
};
|
|
25
31
|
const edit = tool({
|
|
26
32
|
parameters: {
|
|
27
33
|
type: "object",
|
|
@@ -35,7 +41,7 @@ const edit = tool({
|
|
|
35
41
|
const escapedEditId = CSS.escape(editId);
|
|
36
42
|
const el = document.querySelector(`[data-edit-id='${escapedEditId}']`);
|
|
37
43
|
if (el instanceof HTMLInputElement || el instanceof HTMLTextAreaElement) {
|
|
38
|
-
el
|
|
44
|
+
setNativeValue(el, value);
|
|
39
45
|
el.dispatchEvent(new Event("input", { bubbles: true }));
|
|
40
46
|
el.dispatchEvent(new Event("change", { bubbles: true }));
|
|
41
47
|
await new Promise((resolve) => setTimeout(resolve, 2e3));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"makeAssistantVisible.js","names":["c","_c","useEffect","useRef","forwardRef","ComponentType","ForwardedRef","PropsWithoutRef","useId","createContext","useContext","useAui","useComposedRefs","tool","click","parameters","type","properties","clickId","required","execute","escapedClickId","CSS","escape","el","document","querySelector","HTMLElement","Promise","resolve","setTimeout","
|
|
1
|
+
{"version":3,"file":"makeAssistantVisible.js","names":["c","_c","useEffect","useRef","forwardRef","ComponentType","ForwardedRef","PropsWithoutRef","useId","createContext","useContext","useAui","useComposedRefs","tool","click","parameters","type","properties","clickId","required","execute","escapedClickId","CSS","escape","el","document","querySelector","HTMLElement","Promise","resolve","setTimeout","setNativeValue","element","HTMLInputElement","HTMLTextAreaElement","value","prototype","setter","Object","getOwnPropertyDescriptor","set","call","edit","editId","escapedEditId","dispatchEvent","Event","bubbles","ReadableContext","makeAssistantVisible","Component","T","config","clickable","editable","ReadableComponent","props","outerRef","$","isNestedReadable","componentRef","aui","t0","Symbol","for","t1","t2","modelContext","register","getModelContext","tools","system","current","outerHTML","undefined","ref","t3","t4","t5","t6","displayName"],"sources":["../../src/model-context/makeAssistantVisible.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n useEffect,\n useRef,\n forwardRef,\n type ComponentType,\n type ForwardedRef,\n type PropsWithoutRef,\n useId,\n createContext,\n useContext,\n} from \"react\";\nimport { useAui } from \"@assistant-ui/store\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { tool } from \"@assistant-ui/core\";\n\nconst click = tool({\n parameters: {\n type: \"object\",\n properties: {\n clickId: {\n type: \"string\",\n },\n },\n required: [\"clickId\"],\n },\n execute: async ({ clickId }: { clickId: string }) => {\n const escapedClickId = CSS.escape(clickId);\n const el = document.querySelector(`[data-click-id='${escapedClickId}']`);\n if (el instanceof HTMLElement) {\n el.click();\n\n // todo make adjustable\n await new Promise((resolve) => setTimeout(resolve, 2000));\n return {};\n } else {\n return \"Element not found\";\n }\n },\n});\n\nconst setNativeValue = (\n element: HTMLInputElement | HTMLTextAreaElement,\n value: string,\n) => {\n const prototype =\n element instanceof HTMLInputElement\n ? HTMLInputElement.prototype\n : HTMLTextAreaElement.prototype;\n const setter = Object.getOwnPropertyDescriptor(prototype, \"value\")?.set;\n\n if (setter) {\n setter.call(element, value);\n } else {\n element.value = value;\n }\n};\n\nconst edit = tool({\n parameters: {\n type: \"object\",\n properties: {\n editId: {\n type: \"string\",\n },\n value: {\n type: \"string\",\n },\n },\n required: [\"editId\", \"value\"],\n },\n execute: async ({ editId, value }: { editId: string; value: string }) => {\n const escapedEditId = CSS.escape(editId);\n const el = document.querySelector(`[data-edit-id='${escapedEditId}']`);\n if (el instanceof HTMLInputElement || el instanceof HTMLTextAreaElement) {\n setNativeValue(el, value);\n el.dispatchEvent(new Event(\"input\", { bubbles: true }));\n el.dispatchEvent(new Event(\"change\", { bubbles: true }));\n\n // todo make adjustable\n await new Promise((resolve) => setTimeout(resolve, 2000));\n return {};\n } else {\n return \"Element not found\";\n }\n },\n});\n\nconst ReadableContext = createContext<boolean>(false);\n\nexport const makeAssistantVisible = <T extends ComponentType<any>>(\n Component: T,\n config?: { clickable?: boolean | undefined; editable?: boolean | undefined },\n) => {\n const ReadableComponent = forwardRef(\n (props: PropsWithoutRef<T>, outerRef: ForwardedRef<any>) => {\n const isNestedReadable = useContext(ReadableContext);\n\n const clickId = useId();\n const componentRef = useRef<HTMLElement>(null);\n\n const aui = useAui();\n\n const { clickable, editable } = config ?? {};\n useEffect(() => {\n return aui.modelContext().register({\n getModelContext: () => {\n return {\n tools: {\n ...(clickable ? { click } : {}),\n ...(editable ? { edit } : {}),\n },\n system: !isNestedReadable // only pass content if this readable isn't nested in another readable\n ? componentRef.current?.outerHTML\n : undefined,\n };\n },\n });\n }, [isNestedReadable, aui, clickable, editable]);\n\n const ref = useComposedRefs(componentRef, outerRef);\n\n return (\n <ReadableContext.Provider value={true}>\n <Component\n {...(props as any)}\n {...(config?.clickable ? { \"data-click-id\": clickId } : {})}\n {...(config?.editable ? { \"data-edit-id\": clickId } : {})}\n ref={ref}\n />\n </ReadableContext.Provider>\n );\n },\n );\n\n ReadableComponent.displayName = Component.displayName;\n\n return ReadableComponent as unknown as T;\n};\n\nexport default makeAssistantVisible;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarCopy.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarCopy.tsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;cAiCM,8BAA6B;EAGjC;;kBAee;OACH,UAAU;;;;;OAKV,QAAQ,yBAAyB;;;;;;;;;;;;;;;;cAiBlC,wCAAsB,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA"}
|
|
1
|
+
{"version":3,"file":"ActionBarCopy.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarCopy.tsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;cAiCM,8BAA6B;EAGjC;;kBAee;OACH,UAAU;;;;;OAKV,QAAQ,yBAAyB;;;;;;;;;;;;;;;;cAiBlC,wCAAsB,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA;;;;;EAtChB;oBAwDjB,cAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarEdit.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarEdit.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;cA8BM;kBAMW;OACH,UAAU;;;;;OAKV,QAAQ,yBAAyB;;;;;;;;;;;;;;;cAgBlC,wCAAsB,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA"}
|
|
1
|
+
{"version":3,"file":"ActionBarEdit.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarEdit.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;cA8BM;kBAMW;OACH,UAAU;;;;;OAKV,QAAQ,yBAAyB;;;;;;;;;;;;;;;cAgBlC,wCAAsB,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA;;;;oBAGlC,cAAA,6CAAA,cAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarExportMarkdown.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarExportMarkdown.tsx"],"mappings":";;cAQM,+BAA8B,UAAA;EAIlC;EACA,aAAa,2BAA2B;aACpC;kBAgCW;OACH,UAAU;OACV,QAAQ,yBAAyB;;cAGlC,kDAAgC,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA
|
|
1
|
+
{"version":3,"file":"ActionBarExportMarkdown.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarExportMarkdown.tsx"],"mappings":";;cAQM,+BAA8B,UAAA;EAIlC;EACA,aAAa,2BAA2B;aACpC;kBAgCW;OACH,UAAU;OACV,QAAQ,yBAAyB;;cAGlC,kDAAgC,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA;;;;;EAvChC;EACA,aAAE,2BAA2B;oBAsDxC,cAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarFeedbackNegative.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarFeedbackNegative.tsx"],"mappings":";;cASM;kBAKW;OACH,UAAU;OACV,QAAQ,yBAAyB;;cAGlC,oDAAkC,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA"}
|
|
1
|
+
{"version":3,"file":"ActionBarFeedbackNegative.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarFeedbackNegative.tsx"],"mappings":";;cASM;kBAKW;OACH,UAAU;OACV,QAAQ,yBAAyB;;cAGlC,oDAAkC,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA;;;;oBAoB7C,cAAA,6CAAA,cAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarFeedbackPositive.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarFeedbackPositive.tsx"],"mappings":";;cASM;kBAKW;OACH,UAAU;OACV,QAAQ,yBAAyB;;cAGlC,oDAAkC,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA"}
|
|
1
|
+
{"version":3,"file":"ActionBarFeedbackPositive.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarFeedbackPositive.tsx"],"mappings":";;cASM;kBAKW;OACH,UAAU;OACV,QAAQ,yBAAyB;;cAGlC,oDAAkC,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA;;;;oBAoB7C,cAAA,6CAAA,cAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarReload.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarReload.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;cA8BM;kBAMW;OACH,UAAU;;;;;OAKV,QAAQ,yBAAyB;;;;;;;;;;;;;;;;cAiBlC,0CAAwB,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA"}
|
|
1
|
+
{"version":3,"file":"ActionBarReload.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarReload.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;cA8BM;kBAMW;OACH,UAAU;;;;;OAKV,QAAQ,yBAAyB;;;;;;;;;;;;;;;;cAiBlC,0CAAwB,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA;;;;oBAGpC,cAAA,6CAAA,cAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarRoot.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarRoot.tsx"],"mappings":";;;KAiBK,oBAAoB,gCAAgC,UAAU;kBAElD;OACH,UAAU,oBAAoB,UAAU;OACxC,QAAQ;;;;;IAKlB;;;;;;;;IAQA;;;;;;;;IAQA;;;;;;;;;;;;;;;;;;;;;;;cAwBS,wCAAsB,0BAAA,KAAA,qBAAA,gBAAA,kCAAA,eAAA"}
|
|
1
|
+
{"version":3,"file":"ActionBarRoot.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarRoot.tsx"],"mappings":";;;KAiBK,oBAAoB,gCAAgC,UAAU;kBAElD;OACH,UAAU,oBAAoB,UAAU;OACxC,QAAQ;;;;;IAKlB;;;;;;;;IAQA;;;;;;;;IAQA;;;;;;;;;;;;;;;;;;;;;;;cAwBS,wCAAsB,0BAAA,KAAA,qBAAA,gBAAA,kCAAA,eAAA;;;;;;;;;EAxCb;;;;;;;;EAQP;;;;;;;;EAQK;oBAmElB,cAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarRoot.js","names":["c","_c","Primitive","ComponentRef","forwardRef","ComponentPropsWithoutRef","useCallback","useMemo","useState","useActionBarFloatStatus","HideAndFloatStatus","ActionBarInteractionContext","PrimitiveDivProps","div","ActionBarPrimitiveRoot","Element","Props","hideWhenRunning","autohide","autohideFloat","t0","ref","$","rest","interactionCount","setInteractionCount","t1","Symbol","for","released","_temp","_temp2","acquireInteractionLock","t2","interactionContext","t3","t4","forceVisible","hideAndfloatStatus","Hidden","t5","Floating","t6","displayName","count","count_0","Math","max"],"sources":["../../../src/primitives/actionBar/ActionBarRoot.tsx"],"sourcesContent":["\"use client\";\n\nimport { Primitive } from \"../../utils/Primitive\";\nimport {\n type ComponentRef,\n forwardRef,\n type ComponentPropsWithoutRef,\n useCallback,\n useMemo,\n useState,\n} from \"react\";\nimport {\n useActionBarFloatStatus,\n HideAndFloatStatus,\n} from \"./useActionBarFloatStatus\";\nimport { ActionBarInteractionContext } from \"./ActionBarInteractionContext\";\n\ntype PrimitiveDivProps = ComponentPropsWithoutRef<typeof Primitive.div>;\n\nexport namespace ActionBarPrimitiveRoot {\n export type Element = ComponentRef<typeof Primitive.div>;\n export type Props = PrimitiveDivProps & {\n /**\n * Whether to hide the action bar when the thread is running.\n * @default false\n */\n hideWhenRunning?: boolean | undefined;\n /**\n * Controls when the action bar should automatically hide.\n * - \"always\": Always hide unless hovered\n * - \"not-last\": Hide unless this is the last message\n * - \"never\": Never auto-hide\n * @default \"never\"\n */\n autohide?: \"always\" | \"not-last\" | \"never\" | undefined;\n /**\n * Controls floating behavior when auto-hidden.\n * - \"always\": Always float when hidden\n * - \"single-branch\": Float only for single-branch messages\n * - \"never\": Never float\n * @default \"never\"\n */\n autohideFloat?: \"always\" | \"single-branch\" | \"never\" | undefined;\n };\n}\n\n/**\n * The root container for action bar components.\n *\n * This component provides intelligent visibility and floating behavior for action bars,\n * automatically hiding and showing based on message state, hover status, and configuration.\n * It supports floating mode for better UX when space is limited.\n *\n * @example\n * ```tsx\n * <ActionBarPrimitive.Root\n * hideWhenRunning={true}\n * autohide=\"not-last\"\n * autohideFloat=\"single-branch\"\n * >\n * <ActionBarPrimitive.Copy />\n * <ActionBarPrimitive.Edit />\n * <ActionBarPrimitive.Reload />\n * </ActionBarPrimitive.Root>\n * ```\n */\nexport const ActionBarPrimitiveRoot = forwardRef<\n ActionBarPrimitiveRoot.Element,\n ActionBarPrimitiveRoot.Props\n>(({ hideWhenRunning, autohide, autohideFloat, ...rest }, ref) => {\n const [interactionCount, setInteractionCount] = useState(0);\n\n const acquireInteractionLock = useCallback(() => {\n let released = false;\n\n setInteractionCount((count) => count + 1);\n\n return () => {\n if (released) return;\n released = true;\n setInteractionCount((count) => Math.max(0, count - 1));\n };\n }, []);\n\n const interactionContext = useMemo(\n () => ({ acquireInteractionLock }),\n [acquireInteractionLock],\n );\n\n const hideAndfloatStatus = useActionBarFloatStatus({\n hideWhenRunning,\n autohide,\n autohideFloat,\n forceVisible: interactionCount > 0,\n });\n\n if (hideAndfloatStatus === HideAndFloatStatus.Hidden) return null;\n\n return (\n <ActionBarInteractionContext.Provider value={interactionContext}>\n <Primitive.div\n {...(hideAndfloatStatus === HideAndFloatStatus.Floating\n ? { \"data-floating\": \"true\" }\n : null)}\n {...rest}\n ref={ref}\n />\n </ActionBarInteractionContext.Provider>\n );\n});\n\nActionBarPrimitiveRoot.displayName = \"ActionBarPrimitive.Root\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkEA,MAAac,yBAAyBV,YAGpCgB,IAAAC,QAAA;CAAA,MAAAC,IAAArB,EAAA,EAAA;CAAA,IAAAiB;CAAA,IAAAC;CAAA,IAAAF;CAAA,IAAAM;CAAA,IAAAD,EAAA,OAAAF,IAAA;EAAC,CAAA,CAAAH,iBAAAC,UAAAC,kBAAAI,QAAAH;EAAqDE,EAAA,KAAAF;EAAAE,EAAA,KAAAJ;EAAAI,EAAA,KAAAH;EAAAG,EAAA,KAAAL;EAAAK,EAAA,KAAAC;CAAA,OAAA;EAAAL,WAAAI,EAAA;EAAAH,gBAAAG,EAAA;EAAAL,kBAAAK,EAAA;EAAAC,OAAAD,EAAA;CAAA;CACtD,MAAA,CAAAE,kBAAAC,uBAAgDjB,SAAS,CAAC;CAAE,IAAAkB;CAAA,IAAAJ,EAAA,OAAAK,OAAAC,IAAA,2BAAA,GAAA;EAEjBF,WAAA;GACzC,IAAAG,WAAe;GAEfJ,oBAAoBK,KAAoB;GAAC,aAElC;IACL,IAAID,UAAQ;IACZA,WAAWA;IACXJ,oBAAoBM,MAAiC;GAAC;EACvD;EACFT,EAAA,KAAAI;CAAA,OAAAA,KAAAJ,EAAA;CAVD,MAAAU,yBAA+BN;CAUxB,IAAAO;CAAA,IAAAX,EAAA,OAAAK,OAAAC,IAAA,2BAAA,GAAA;EAGEK,KAAA,EAAAD,uBAAyB;EAACV,EAAA,KAAAW;CAAA,OAAAA,KAAAX,EAAA;CADnC,MAAAY,qBACSD;CAQO,MAAAE,KAAAX,mBAAmB;CAAC,IAAAY;CAAA,IAAAd,EAAA,OAAAJ,YAAAI,EAAA,OAAAH,iBAAAG,EAAA,OAAAL,mBAAAK,EAAA,QAAAa,IAAA;EAJeC,KAAA;GAAAnB;GAAAC;GAAAC;GAAAkB,cAInCF;EAChB;EAACb,EAAA,KAAAJ;EAAAI,EAAA,KAAAH;EAAAG,EAAA,KAAAL;EAAAK,EAAA,MAAAa;EAAAb,EAAA,MAAAc;CAAA,OAAAA,KAAAd,EAAA;CALD,MAAAgB,qBAA2B7B,wBAAwB2B,EAKlD;CAED,IAAIE,uBAAAA,UAAgD,OAAS;CAAK,IAAAE;CAAA,IAAAlB,EAAA,QAAAgB,oBAAA;EAKvDE,KAAAF,uBAAAA,aAAA,EAAA,iBACkB,OAChB,IAFF;EAEGhB,EAAA,MAAAgB;EAAAhB,EAAA,MAAAkB;CAAA,OAAAA,KAAAlB,EAAA;CAAA,IAAAoB;CAAA,IAAApB,EAAA,QAAAD,OAAAC,EAAA,QAAAC,QAAAD,EAAA,QAAAkB,IAAA;EAJZE,KAAA,oBAAA,4BAAA,UAAA;GAA6CR,OAAAA;
|
|
1
|
+
{"version":3,"file":"ActionBarRoot.js","names":["c","_c","Primitive","ComponentRef","forwardRef","ComponentPropsWithoutRef","useCallback","useMemo","useState","useActionBarFloatStatus","HideAndFloatStatus","ActionBarInteractionContext","PrimitiveDivProps","div","ActionBarPrimitiveRoot","Element","Props","hideWhenRunning","autohide","autohideFloat","t0","ref","$","rest","interactionCount","setInteractionCount","t1","Symbol","for","released","_temp","_temp2","acquireInteractionLock","t2","interactionContext","t3","t4","forceVisible","hideAndfloatStatus","Hidden","t5","Floating","t6","displayName","count","count_0","Math","max"],"sources":["../../../src/primitives/actionBar/ActionBarRoot.tsx"],"sourcesContent":["\"use client\";\n\nimport { Primitive } from \"../../utils/Primitive\";\nimport {\n type ComponentRef,\n forwardRef,\n type ComponentPropsWithoutRef,\n useCallback,\n useMemo,\n useState,\n} from \"react\";\nimport {\n useActionBarFloatStatus,\n HideAndFloatStatus,\n} from \"./useActionBarFloatStatus\";\nimport { ActionBarInteractionContext } from \"./ActionBarInteractionContext\";\n\ntype PrimitiveDivProps = ComponentPropsWithoutRef<typeof Primitive.div>;\n\nexport namespace ActionBarPrimitiveRoot {\n export type Element = ComponentRef<typeof Primitive.div>;\n export type Props = PrimitiveDivProps & {\n /**\n * Whether to hide the action bar when the thread is running.\n * @default false\n */\n hideWhenRunning?: boolean | undefined;\n /**\n * Controls when the action bar should automatically hide.\n * - \"always\": Always hide unless hovered\n * - \"not-last\": Hide unless this is the last message\n * - \"never\": Never auto-hide\n * @default \"never\"\n */\n autohide?: \"always\" | \"not-last\" | \"never\" | undefined;\n /**\n * Controls floating behavior when auto-hidden.\n * - \"always\": Always float when hidden\n * - \"single-branch\": Float only for single-branch messages\n * - \"never\": Never float\n * @default \"never\"\n */\n autohideFloat?: \"always\" | \"single-branch\" | \"never\" | undefined;\n };\n}\n\n/**\n * The root container for action bar components.\n *\n * This component provides intelligent visibility and floating behavior for action bars,\n * automatically hiding and showing based on message state, hover status, and configuration.\n * It supports floating mode for better UX when space is limited.\n *\n * @example\n * ```tsx\n * <ActionBarPrimitive.Root\n * hideWhenRunning={true}\n * autohide=\"not-last\"\n * autohideFloat=\"single-branch\"\n * >\n * <ActionBarPrimitive.Copy />\n * <ActionBarPrimitive.Edit />\n * <ActionBarPrimitive.Reload />\n * </ActionBarPrimitive.Root>\n * ```\n */\nexport const ActionBarPrimitiveRoot = forwardRef<\n ActionBarPrimitiveRoot.Element,\n ActionBarPrimitiveRoot.Props\n>(({ hideWhenRunning, autohide, autohideFloat, ...rest }, ref) => {\n const [interactionCount, setInteractionCount] = useState(0);\n\n const acquireInteractionLock = useCallback(() => {\n let released = false;\n\n setInteractionCount((count) => count + 1);\n\n return () => {\n if (released) return;\n released = true;\n setInteractionCount((count) => Math.max(0, count - 1));\n };\n }, []);\n\n const interactionContext = useMemo(\n () => ({ acquireInteractionLock }),\n [acquireInteractionLock],\n );\n\n const hideAndfloatStatus = useActionBarFloatStatus({\n hideWhenRunning,\n autohide,\n autohideFloat,\n forceVisible: interactionCount > 0,\n });\n\n if (hideAndfloatStatus === HideAndFloatStatus.Hidden) return null;\n\n return (\n <ActionBarInteractionContext.Provider value={interactionContext}>\n <Primitive.div\n {...(hideAndfloatStatus === HideAndFloatStatus.Floating\n ? { \"data-floating\": \"true\" }\n : null)}\n {...rest}\n ref={ref}\n />\n </ActionBarInteractionContext.Provider>\n );\n});\n\nActionBarPrimitiveRoot.displayName = \"ActionBarPrimitive.Root\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkEA,MAAac,yBAAyBV,YAGpCgB,IAAAC,QAAA;CAAA,MAAAC,IAAArB,EAAA,EAAA;CAAA,IAAAiB;CAAA,IAAAC;CAAA,IAAAF;CAAA,IAAAM;CAAA,IAAAD,EAAA,OAAAF,IAAA;EAAC,CAAA,CAAAH,iBAAAC,UAAAC,kBAAAI,QAAAH;EAAqDE,EAAA,KAAAF;EAAAE,EAAA,KAAAJ;EAAAI,EAAA,KAAAH;EAAAG,EAAA,KAAAL;EAAAK,EAAA,KAAAC;CAAA,OAAA;EAAAL,WAAAI,EAAA;EAAAH,gBAAAG,EAAA;EAAAL,kBAAAK,EAAA;EAAAC,OAAAD,EAAA;CAAA;CACtD,MAAA,CAAAE,kBAAAC,uBAAgDjB,SAAS,CAAC;CAAE,IAAAkB;CAAA,IAAAJ,EAAA,OAAAK,OAAAC,IAAA,2BAAA,GAAA;EAEjBF,WAAA;GACzC,IAAAG,WAAe;GAEfJ,oBAAoBK,KAAoB;GAAC,aAElC;IACL,IAAID,UAAQ;IACZA,WAAWA;IACXJ,oBAAoBM,MAAiC;GAAC;EACvD;EACFT,EAAA,KAAAI;CAAA,OAAAA,KAAAJ,EAAA;CAVD,MAAAU,yBAA+BN;CAUxB,IAAAO;CAAA,IAAAX,EAAA,OAAAK,OAAAC,IAAA,2BAAA,GAAA;EAGEK,KAAA,EAAAD,uBAAyB;EAACV,EAAA,KAAAW;CAAA,OAAAA,KAAAX,EAAA;CADnC,MAAAY,qBACSD;CAQO,MAAAE,KAAAX,mBAAmB;CAAC,IAAAY;CAAA,IAAAd,EAAA,OAAAJ,YAAAI,EAAA,OAAAH,iBAAAG,EAAA,OAAAL,mBAAAK,EAAA,QAAAa,IAAA;EAJeC,KAAA;GAAAnB;GAAAC;GAAAC;GAAAkB,cAInCF;EAChB;EAACb,EAAA,KAAAJ;EAAAI,EAAA,KAAAH;EAAAG,EAAA,KAAAL;EAAAK,EAAA,MAAAa;EAAAb,EAAA,MAAAc;CAAA,OAAAA,KAAAd,EAAA;CALD,MAAAgB,qBAA2B7B,wBAAwB2B,EAKlD;CAED,IAAIE,uBAAAA,UAAgD,OAAS;CAAK,IAAAE;CAAA,IAAAlB,EAAA,QAAAgB,oBAAA;EAKvDE,KAAAF,uBAAAA,aAAA,EAAA,iBACkB,OAChB,IAFF;EAEGhB,EAAA,MAAAgB;EAAAhB,EAAA,MAAAkB;CAAA,OAAAA,KAAAlB,EAAA;CAAA,IAAAoB;CAAA,IAAApB,EAAA,QAAAD,OAAAC,EAAA,QAAAC,QAAAD,EAAA,QAAAkB,IAAA;EAJZE,KAAA,oBAAA,4BAAA,UAAA;GAA6CR,OAAAA;GAC3C,UAAA,oBAAA,UAAA,KAAA;IAAA,GACOM;IAEG,GACJjB;IACCF;GAAG,CAAA;EAEZ,CAAA;EAAuCC,EAAA,MAAAD;EAAAC,EAAA,MAAAC;EAAAD,EAAA,MAAAkB;EAAAlB,EAAA,MAAAoB;CAAA,OAAAA,KAAApB,EAAA;CAAA,OARvCoB;AAQuC,CAE1C;AAED5B,uBAAuB6B,cAAc;AA1CnC,SAAAb,MAAAc,OAAA;CAAA,OAMiCA,QAAQ;AAAC;AAN1C,SAAAb,OAAAc,SAAA;CAAA,OAWmCC,KAAIC,IAAK,GAAGH,UAAQ,CAAC;AAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarSpeak.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarSpeak.ts"],"mappings":";;cASM,gCAAiB;kBAMN;OACH,UAAU;OACV,QAAQ,yBAAyB;;cAGlC,yCAAuB,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA"}
|
|
1
|
+
{"version":3,"file":"ActionBarSpeak.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarSpeak.ts"],"mappings":";;cASM,gCAAiB;kBAMN;OACH,UAAU;OACV,QAAQ,yBAAyB;;cAGlC,yCAAuB,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA;;;;oBAGnC,cAAA,6CAAA,cAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarStopSpeaking.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarStopSpeaking.tsx"],"mappings":";;cASM;kBAMW;OACH,UAAU;OACV,QAAQ,yBAAyB;;cAGlC,gDAA8B,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA"}
|
|
1
|
+
{"version":3,"file":"ActionBarStopSpeaking.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarStopSpeaking.tsx"],"mappings":";;cASM;kBAMW;OACH,UAAU;OACV,QAAQ,yBAAyB;;cAGlC,gDAA8B,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA;;;;oBAyBzC,cAAA,6CAAA,cAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarMoreContent.d.ts","names":[],"sources":["../../../src/primitives/actionBarMore/ActionBarMoreContent.tsx"],"mappings":";;;;kBAYiB;OACH,UAAU,oBAAoB,aAAsB;OACpD,QAAQ,2BACX,aAAsB;IAE7B,cACI,gCAAgC,aAAsB;;;cAKjD,+CAA6B,0BAAA,KAAA,aAAA,2CAAA,cAAA;;;
|
|
1
|
+
{"version":3,"file":"ActionBarMoreContent.d.ts","names":[],"sources":["../../../src/primitives/actionBarMore/ActionBarMoreContent.tsx"],"mappings":";;;;kBAYiB;OACH,UAAU,oBAAoB,aAAsB;OACpD,QAAQ,2BACX,aAAsB;IAE7B,cACI,gCAAgC,aAAsB;;;cAKjD,+CAA6B,0BAAA,KAAA,aAAA,2CAAA,cAAA;;;EALlC,cAAA,gCAAgC,aAAsB;oBA+B7D,cAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarMoreContent.js","names":["c","_c","ComponentPropsWithoutRef","ComponentRef","forwardRef","DropdownMenu","DropdownMenuPrimitive","WithRenderPropProps","DropdownMenuRenderContent","ScopedProps","useDropdownMenuScope","ActionBarMorePrimitiveContent","Element","Content","Props","portalProps","Portal","t0","forwardedRef","$","__scopeActionBarMore","props","t1","sideOffset","undefined","scope","t2","t3","displayName"],"sources":["../../../src/primitives/actionBarMore/ActionBarMoreContent.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n type ComponentPropsWithoutRef,\n type ComponentRef,\n forwardRef,\n} from \"react\";\nimport { DropdownMenu as DropdownMenuPrimitive } from \"radix-ui\";\nimport type { WithRenderPropProps } from \"../../utils/Primitive\";\nimport { DropdownMenuRenderContent } from \"../dropdownMenuRenderPrimitives\";\nimport { type ScopedProps, useDropdownMenuScope } from \"./scope\";\n\nexport namespace ActionBarMorePrimitiveContent {\n export type Element = ComponentRef<typeof DropdownMenuPrimitive.Content>;\n export type Props = WithRenderPropProps<\n typeof DropdownMenuPrimitive.Content\n > & {\n portalProps?:\n | ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Portal>\n | undefined;\n };\n}\n\nexport const ActionBarMorePrimitiveContent = forwardRef<\n ActionBarMorePrimitiveContent.Element,\n ActionBarMorePrimitiveContent.Props\n>(\n (\n {\n __scopeActionBarMore,\n portalProps,\n sideOffset = 4,\n ...props\n }: ScopedProps<ActionBarMorePrimitiveContent.Props>,\n forwardedRef,\n ) => {\n const scope = useDropdownMenuScope(__scopeActionBarMore);\n\n return (\n <DropdownMenuPrimitive.Portal {...scope} {...portalProps}>\n <DropdownMenuRenderContent\n {...scope}\n {...props}\n ref={forwardedRef}\n sideOffset={sideOffset}\n />\n </DropdownMenuPrimitive.Portal>\n );\n },\n);\n\nActionBarMorePrimitiveContent.displayName = \"ActionBarMorePrimitive.Content\";\n"],"mappings":";;;;;;;;AAuBA,MAAaW,gCAAgCP,YAI3Ca,IAAAC,iBAAA;CAAA,MAAAC,IAAAlB,EAAA,EAAA;CAAA,IAAAmB;CAAA,IAAAL;CAAA,IAAAM;CAAA,IAAAC;CAAA,IAAAH,EAAA,OAAAF,IAAA;EACE,CAAA,CAAAG,sBAAAL,aAAAQ,YAAAD,OAAAD,SAAAJ;EAKmDE,EAAA,KAAAF;EAAAE,EAAA,KAAAC;EAAAD,EAAA,KAAAJ;EAAAI,EAAA,KAAAE;EAAAF,EAAA,KAAAG;CAAA,OAAA;EAAAF,uBAAAD,EAAA;EAAAJ,cAAAI,EAAA;EAAAE,QAAAF,EAAA;EAAAG,KAAAH,EAAA;CAAA;CAFjD,MAAAI,aAAAD,OAAAE,KAAAA,IAAA,IAAAF;CAKF,MAAAG,QAAcf,qBAAqBU,oBAAoB;CAAE,IAAAM;CAAA,IAAAP,EAAA,OAAAD,gBAAAC,EAAA,OAAAE,SAAAF,EAAA,OAAAM,SAAAN,EAAA,OAAAI,YAAA;EAIrDG,KAAA,oBAAC,2BAAD;GAA0B,GACpBD;GAAK,GACLJ;GACCH,KAAAA;GACOK;EAAU,CAAA;EACtBJ,EAAA,KAAAD;EAAAC,EAAA,KAAAE;EAAAF,EAAA,KAAAM;EAAAN,EAAA,KAAAI;EAAAJ,EAAA,KAAAO;CAAA,OAAAA,KAAAP,EAAA;CAAA,IAAAQ;CAAA,IAAAR,EAAA,QAAAJ,eAAAI,EAAA,QAAAM,SAAAN,EAAA,QAAAO,IAAA;EANJC,KAAA,oBAAA,aAAA,QAAA;GAAA,GAAkCF;GAAK,GAAMV;
|
|
1
|
+
{"version":3,"file":"ActionBarMoreContent.js","names":["c","_c","ComponentPropsWithoutRef","ComponentRef","forwardRef","DropdownMenu","DropdownMenuPrimitive","WithRenderPropProps","DropdownMenuRenderContent","ScopedProps","useDropdownMenuScope","ActionBarMorePrimitiveContent","Element","Content","Props","portalProps","Portal","t0","forwardedRef","$","__scopeActionBarMore","props","t1","sideOffset","undefined","scope","t2","t3","displayName"],"sources":["../../../src/primitives/actionBarMore/ActionBarMoreContent.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n type ComponentPropsWithoutRef,\n type ComponentRef,\n forwardRef,\n} from \"react\";\nimport { DropdownMenu as DropdownMenuPrimitive } from \"radix-ui\";\nimport type { WithRenderPropProps } from \"../../utils/Primitive\";\nimport { DropdownMenuRenderContent } from \"../dropdownMenuRenderPrimitives\";\nimport { type ScopedProps, useDropdownMenuScope } from \"./scope\";\n\nexport namespace ActionBarMorePrimitiveContent {\n export type Element = ComponentRef<typeof DropdownMenuPrimitive.Content>;\n export type Props = WithRenderPropProps<\n typeof DropdownMenuPrimitive.Content\n > & {\n portalProps?:\n | ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Portal>\n | undefined;\n };\n}\n\nexport const ActionBarMorePrimitiveContent = forwardRef<\n ActionBarMorePrimitiveContent.Element,\n ActionBarMorePrimitiveContent.Props\n>(\n (\n {\n __scopeActionBarMore,\n portalProps,\n sideOffset = 4,\n ...props\n }: ScopedProps<ActionBarMorePrimitiveContent.Props>,\n forwardedRef,\n ) => {\n const scope = useDropdownMenuScope(__scopeActionBarMore);\n\n return (\n <DropdownMenuPrimitive.Portal {...scope} {...portalProps}>\n <DropdownMenuRenderContent\n {...scope}\n {...props}\n ref={forwardedRef}\n sideOffset={sideOffset}\n />\n </DropdownMenuPrimitive.Portal>\n );\n },\n);\n\nActionBarMorePrimitiveContent.displayName = \"ActionBarMorePrimitive.Content\";\n"],"mappings":";;;;;;;;AAuBA,MAAaW,gCAAgCP,YAI3Ca,IAAAC,iBAAA;CAAA,MAAAC,IAAAlB,EAAA,EAAA;CAAA,IAAAmB;CAAA,IAAAL;CAAA,IAAAM;CAAA,IAAAC;CAAA,IAAAH,EAAA,OAAAF,IAAA;EACE,CAAA,CAAAG,sBAAAL,aAAAQ,YAAAD,OAAAD,SAAAJ;EAKmDE,EAAA,KAAAF;EAAAE,EAAA,KAAAC;EAAAD,EAAA,KAAAJ;EAAAI,EAAA,KAAAE;EAAAF,EAAA,KAAAG;CAAA,OAAA;EAAAF,uBAAAD,EAAA;EAAAJ,cAAAI,EAAA;EAAAE,QAAAF,EAAA;EAAAG,KAAAH,EAAA;CAAA;CAFjD,MAAAI,aAAAD,OAAAE,KAAAA,IAAA,IAAAF;CAKF,MAAAG,QAAcf,qBAAqBU,oBAAoB;CAAE,IAAAM;CAAA,IAAAP,EAAA,OAAAD,gBAAAC,EAAA,OAAAE,SAAAF,EAAA,OAAAM,SAAAN,EAAA,OAAAI,YAAA;EAIrDG,KAAA,oBAAC,2BAAD;GAA0B,GACpBD;GAAK,GACLJ;GACCH,KAAAA;GACOK;EAAU,CAAA;EACtBJ,EAAA,KAAAD;EAAAC,EAAA,KAAAE;EAAAF,EAAA,KAAAM;EAAAN,EAAA,KAAAI;EAAAJ,EAAA,KAAAO;CAAA,OAAAA,KAAAP,EAAA;CAAA,IAAAQ;CAAA,IAAAR,EAAA,QAAAJ,eAAAI,EAAA,QAAAM,SAAAN,EAAA,QAAAO,IAAA;EANJC,KAAA,oBAAA,aAAA,QAAA;GAAA,GAAkCF;GAAK,GAAMV;GAC3CW,UAAAA;EAMF,CAAA;EAA+BP,EAAA,MAAAJ;EAAAI,EAAA,MAAAM;EAAAN,EAAA,MAAAO;EAAAP,EAAA,MAAAQ;CAAA,OAAAA,KAAAR,EAAA;CAAA,OAP/BQ;AAO+B,CAGrC;AAEAhB,8BAA8BiB,cAAc"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarMoreItem.d.ts","names":[],"sources":["../../../src/primitives/actionBarMore/ActionBarMoreItem.tsx"],"mappings":";;;;kBAQiB;OACH,UAAU,oBAAoB,aAAsB;OACpD,QAAQ,2BAA2B,aAAsB;;cAG1D,4CAA0B,0BAAA,KAAA,aAAA,wCAAA,cAAA"}
|
|
1
|
+
{"version":3,"file":"ActionBarMoreItem.d.ts","names":[],"sources":["../../../src/primitives/actionBarMore/ActionBarMoreItem.tsx"],"mappings":";;;;kBAQiB;OACH,UAAU,oBAAoB,aAAsB;OACpD,QAAQ,2BAA2B,aAAsB;;cAG1D,4CAA0B,0BAAA,KAAA,aAAA,wCAAA,cAAA;;oBAetC,cAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarMoreSeparator.d.ts","names":[],"sources":["../../../src/primitives/actionBarMore/ActionBarMoreSeparator.tsx"],"mappings":";;;;kBAQiB;OACH,UAAU,oBAAoB,aAAsB;OACpD,QAAQ,2BACX,aAAsB;;cAIpB,iDAA+B,0BAAA,KAAA,aAAA,6CAAA,cAAA"}
|
|
1
|
+
{"version":3,"file":"ActionBarMoreSeparator.d.ts","names":[],"sources":["../../../src/primitives/actionBarMore/ActionBarMoreSeparator.tsx"],"mappings":";;;;kBAQiB;OACH,UAAU,oBAAoB,aAAsB;OACpD,QAAQ,2BACX,aAAsB;;cAIpB,iDAA+B,0BAAA,KAAA,aAAA,6CAAA,cAAA;;oBAe3C,cAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarMoreTrigger.d.ts","names":[],"sources":["../../../src/primitives/actionBarMore/ActionBarMoreTrigger.tsx"],"mappings":";;;;kBAQiB;OACH,UAAU,oBAAoB,aAAsB;OACpD,QAAQ,2BAA2B,aAAsB;;cAG1D,+CAA6B,0BAAA,KAAA,aAAA,2CAAA,cAAA"}
|
|
1
|
+
{"version":3,"file":"ActionBarMoreTrigger.d.ts","names":[],"sources":["../../../src/primitives/actionBarMore/ActionBarMoreTrigger.tsx"],"mappings":";;;;kBAQiB;OACH,UAAU,oBAAoB,aAAsB;OACpD,QAAQ,2BAA2B,aAAsB;;cAG1D,+CAA6B,0BAAA,KAAA,aAAA,2CAAA,cAAA;;oBAezC,cAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssistantModalAnchor.d.ts","names":[],"sources":["../../../src/primitives/assistantModal/AssistantModalAnchor.tsx"],"mappings":";;;;kBAQiB;OACH,UAAU,oBAAoB,QAAiB;OAC/C,QAAQ,2BAA2B,QAAiB;;cAGrD,+CAA6B,0BAAA,KAAA,QAAA,qCAAA,cAAA"}
|
|
1
|
+
{"version":3,"file":"AssistantModalAnchor.d.ts","names":[],"sources":["../../../src/primitives/assistantModal/AssistantModalAnchor.tsx"],"mappings":";;;;kBAQiB;OACH,UAAU,oBAAoB,QAAiB;OAC/C,QAAQ,2BAA2B,QAAiB;;cAGrD,+CAA6B,0BAAA,KAAA,QAAA,qCAAA,cAAA;;oBAezC,cAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssistantModalContent.d.ts","names":[],"sources":["../../../src/primitives/assistantModal/AssistantModalContent.tsx"],"mappings":";;;;kBAaiB;OACH,UAAU,oBAAoB,QAAiB;OAC/C,QAAQ,2BAA2B,QAAiB;IAC9D,cACI,gCAAgC,QAAiB;IAErD;;;cAIS,gDAA8B,0BAAA,KAAA,QAAA,sCAAA,cAAA;;;
|
|
1
|
+
{"version":3,"file":"AssistantModalContent.d.ts","names":[],"sources":["../../../src/primitives/assistantModal/AssistantModalContent.tsx"],"mappings":";;;;kBAaiB;OACH,UAAU,oBAAoB,QAAiB;OAC/C,QAAQ,2BAA2B,QAAiB;IAC9D,cACI,gCAAgC,QAAiB;IAErD;;;cAIS,gDAA8B,0BAAA,KAAA,QAAA,sCAAA,cAAA;;;EANnC,cAAA,gCAAgC,QAAiB;EAEzB;oBAsC/B,cAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssistantModalContent.js","names":["c","_c","ComponentPropsWithoutRef","ComponentRef","forwardRef","Popover","PopoverPrimitive","composeEventHandlers","WithRenderPropProps","PopoverRenderContent","ScopedProps","usePopoverScope","AssistantModalPrimitiveContent","Element","Content","Props","portalProps","Portal","dissmissOnInteractOutside","t0","forwardedRef","$","__scopeAssistantModal","align","onInteractOutside","props","side","t1","undefined","scope","t2","t3","t4","_temp","t5","t6","t7","displayName","e","preventDefault"],"sources":["../../../src/primitives/assistantModal/AssistantModalContent.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n type ComponentPropsWithoutRef,\n type ComponentRef,\n forwardRef,\n} from \"react\";\nimport { Popover as PopoverPrimitive } from \"radix-ui\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport type { WithRenderPropProps } from \"../../utils/Primitive\";\nimport { PopoverRenderContent } from \"./popoverRenderPrimitives\";\nimport { type ScopedProps, usePopoverScope } from \"./scope\";\n\nexport namespace AssistantModalPrimitiveContent {\n export type Element = ComponentRef<typeof PopoverPrimitive.Content>;\n export type Props = WithRenderPropProps<typeof PopoverPrimitive.Content> & {\n portalProps?:\n | ComponentPropsWithoutRef<typeof PopoverPrimitive.Portal>\n | undefined;\n dissmissOnInteractOutside?: boolean | undefined;\n };\n}\n\nexport const AssistantModalPrimitiveContent = forwardRef<\n AssistantModalPrimitiveContent.Element,\n AssistantModalPrimitiveContent.Props\n>(\n (\n {\n __scopeAssistantModal,\n side,\n align,\n onInteractOutside,\n dissmissOnInteractOutside = false,\n portalProps,\n ...props\n }: ScopedProps<AssistantModalPrimitiveContent.Props>,\n forwardedRef,\n ) => {\n const scope = usePopoverScope(__scopeAssistantModal);\n\n return (\n <PopoverPrimitive.Portal {...scope} {...portalProps}>\n <PopoverRenderContent\n {...scope}\n {...props}\n ref={forwardedRef}\n side={side ?? \"top\"}\n align={align ?? \"end\"}\n onInteractOutside={composeEventHandlers(\n onInteractOutside,\n dissmissOnInteractOutside ? undefined : (e) => e.preventDefault(),\n )}\n />\n </PopoverPrimitive.Portal>\n );\n },\n);\n\nAssistantModalPrimitiveContent.displayName = \"AssistantModalPrimitive.Content\";\n"],"mappings":";;;;;;;;;AAuBA,MAAaY,iCAAiCR,YAI5Ce,IAAAC,iBAAA;CAAA,MAAAC,IAAApB,EAAA,EAAA;CAAA,IAAAqB;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAR;CAAA,IAAAS;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAN,EAAA,OAAAF,IAAA;EACE,CAAA,CAAAG,uBAAAI,MAAAH,OAAAC,mBAAAN,2BAAAS,IAAAX,gBAAAS,SAAAN;EAQoDE,EAAA,KAAAF;EAAAE,EAAA,KAAAC;EAAAD,EAAA,KAAAE;EAAAF,EAAA,KAAAG;EAAAH,EAAA,KAAAL;EAAAK,EAAA,KAAAI;EAAAJ,EAAA,KAAAK;EAAAL,EAAA,KAAAM;CAAA,OAAA;EAAAL,wBAAAD,EAAA;EAAAE,QAAAF,EAAA;EAAAG,oBAAAH,EAAA;EAAAL,cAAAK,EAAA;EAAAI,QAAAJ,EAAA;EAAAK,OAAAL,EAAA;EAAAM,KAAAN,EAAA;CAAA;CAHlD,MAAAH,4BAAAS,OAAAC,KAAAA,IAAA,QAAAD;CAMF,MAAAE,QAAclB,gBAAgBW,qBAAqB;CAQvC,MAAAQ,KAAAJ,QAAA;CACC,MAAAK,KAAAR,SAAA;CAGL,MAAAS,KAAAd,4BAAAU,KAAAA,IAAAK;CAAiE,IAAAC;CAAA,IAAAb,EAAA,OAAAG,qBAAAH,EAAA,OAAAW,IAAA;EAFhDE,KAAA3B,qBACjBiB,mBACAQ,EACF;EAACX,EAAA,KAAAG;EAAAH,EAAA,KAAAW;EAAAX,EAAA,MAAAa;CAAA,OAAAA,KAAAb,EAAA;CAAA,IAAAc;CAAA,IAAAd,EAAA,QAAAD,gBAAAC,EAAA,QAAAI,SAAAJ,EAAA,QAAAQ,SAAAR,EAAA,QAAAS,MAAAT,EAAA,QAAAU,MAAAV,EAAA,QAAAa,IAAA;EATHC,KAAA,oBAAC,sBAAD;GAAqB,GACfN;GAAK,GACLJ;GACCL,KAAAA;GACC,MAAAU;GACC,OAAAC;GACY,mBAAAG;EAGlB,CAAA;EACDb,EAAA,MAAAD;EAAAC,EAAA,MAAAI;EAAAJ,EAAA,MAAAQ;EAAAR,EAAA,MAAAS;EAAAT,EAAA,MAAAU;EAAAV,EAAA,MAAAa;EAAAb,EAAA,MAAAc;CAAA,OAAAA,KAAAd,EAAA;CAAA,IAAAe;CAAA,IAAAf,EAAA,QAAAL,eAAAK,EAAA,QAAAQ,SAAAR,EAAA,QAAAc,IAAA;EAXJC,KAAA,oBAAA,QAAA,QAAA;GAAA,GAA6BP;GAAK,GAAMb;
|
|
1
|
+
{"version":3,"file":"AssistantModalContent.js","names":["c","_c","ComponentPropsWithoutRef","ComponentRef","forwardRef","Popover","PopoverPrimitive","composeEventHandlers","WithRenderPropProps","PopoverRenderContent","ScopedProps","usePopoverScope","AssistantModalPrimitiveContent","Element","Content","Props","portalProps","Portal","dissmissOnInteractOutside","t0","forwardedRef","$","__scopeAssistantModal","align","onInteractOutside","props","side","t1","undefined","scope","t2","t3","t4","_temp","t5","t6","t7","displayName","e","preventDefault"],"sources":["../../../src/primitives/assistantModal/AssistantModalContent.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n type ComponentPropsWithoutRef,\n type ComponentRef,\n forwardRef,\n} from \"react\";\nimport { Popover as PopoverPrimitive } from \"radix-ui\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport type { WithRenderPropProps } from \"../../utils/Primitive\";\nimport { PopoverRenderContent } from \"./popoverRenderPrimitives\";\nimport { type ScopedProps, usePopoverScope } from \"./scope\";\n\nexport namespace AssistantModalPrimitiveContent {\n export type Element = ComponentRef<typeof PopoverPrimitive.Content>;\n export type Props = WithRenderPropProps<typeof PopoverPrimitive.Content> & {\n portalProps?:\n | ComponentPropsWithoutRef<typeof PopoverPrimitive.Portal>\n | undefined;\n dissmissOnInteractOutside?: boolean | undefined;\n };\n}\n\nexport const AssistantModalPrimitiveContent = forwardRef<\n AssistantModalPrimitiveContent.Element,\n AssistantModalPrimitiveContent.Props\n>(\n (\n {\n __scopeAssistantModal,\n side,\n align,\n onInteractOutside,\n dissmissOnInteractOutside = false,\n portalProps,\n ...props\n }: ScopedProps<AssistantModalPrimitiveContent.Props>,\n forwardedRef,\n ) => {\n const scope = usePopoverScope(__scopeAssistantModal);\n\n return (\n <PopoverPrimitive.Portal {...scope} {...portalProps}>\n <PopoverRenderContent\n {...scope}\n {...props}\n ref={forwardedRef}\n side={side ?? \"top\"}\n align={align ?? \"end\"}\n onInteractOutside={composeEventHandlers(\n onInteractOutside,\n dissmissOnInteractOutside ? undefined : (e) => e.preventDefault(),\n )}\n />\n </PopoverPrimitive.Portal>\n );\n },\n);\n\nAssistantModalPrimitiveContent.displayName = \"AssistantModalPrimitive.Content\";\n"],"mappings":";;;;;;;;;AAuBA,MAAaY,iCAAiCR,YAI5Ce,IAAAC,iBAAA;CAAA,MAAAC,IAAApB,EAAA,EAAA;CAAA,IAAAqB;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAR;CAAA,IAAAS;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAN,EAAA,OAAAF,IAAA;EACE,CAAA,CAAAG,uBAAAI,MAAAH,OAAAC,mBAAAN,2BAAAS,IAAAX,gBAAAS,SAAAN;EAQoDE,EAAA,KAAAF;EAAAE,EAAA,KAAAC;EAAAD,EAAA,KAAAE;EAAAF,EAAA,KAAAG;EAAAH,EAAA,KAAAL;EAAAK,EAAA,KAAAI;EAAAJ,EAAA,KAAAK;EAAAL,EAAA,KAAAM;CAAA,OAAA;EAAAL,wBAAAD,EAAA;EAAAE,QAAAF,EAAA;EAAAG,oBAAAH,EAAA;EAAAL,cAAAK,EAAA;EAAAI,QAAAJ,EAAA;EAAAK,OAAAL,EAAA;EAAAM,KAAAN,EAAA;CAAA;CAHlD,MAAAH,4BAAAS,OAAAC,KAAAA,IAAA,QAAAD;CAMF,MAAAE,QAAclB,gBAAgBW,qBAAqB;CAQvC,MAAAQ,KAAAJ,QAAA;CACC,MAAAK,KAAAR,SAAA;CAGL,MAAAS,KAAAd,4BAAAU,KAAAA,IAAAK;CAAiE,IAAAC;CAAA,IAAAb,EAAA,OAAAG,qBAAAH,EAAA,OAAAW,IAAA;EAFhDE,KAAA3B,qBACjBiB,mBACAQ,EACF;EAACX,EAAA,KAAAG;EAAAH,EAAA,KAAAW;EAAAX,EAAA,MAAAa;CAAA,OAAAA,KAAAb,EAAA;CAAA,IAAAc;CAAA,IAAAd,EAAA,QAAAD,gBAAAC,EAAA,QAAAI,SAAAJ,EAAA,QAAAQ,SAAAR,EAAA,QAAAS,MAAAT,EAAA,QAAAU,MAAAV,EAAA,QAAAa,IAAA;EATHC,KAAA,oBAAC,sBAAD;GAAqB,GACfN;GAAK,GACLJ;GACCL,KAAAA;GACC,MAAAU;GACC,OAAAC;GACY,mBAAAG;EAGlB,CAAA;EACDb,EAAA,MAAAD;EAAAC,EAAA,MAAAI;EAAAJ,EAAA,MAAAQ;EAAAR,EAAA,MAAAS;EAAAT,EAAA,MAAAU;EAAAV,EAAA,MAAAa;EAAAb,EAAA,MAAAc;CAAA,OAAAA,KAAAd,EAAA;CAAA,IAAAe;CAAA,IAAAf,EAAA,QAAAL,eAAAK,EAAA,QAAAQ,SAAAR,EAAA,QAAAc,IAAA;EAXJC,KAAA,oBAAA,QAAA,QAAA;GAAA,GAA6BP;GAAK,GAAMb;GACtCmB,UAAAA;EAWF,CAAA;EAA0Bd,EAAA,MAAAL;EAAAK,EAAA,MAAAQ;EAAAR,EAAA,MAAAc;EAAAd,EAAA,MAAAe;CAAA,OAAAA,KAAAf,EAAA;CAAA,OAZ1Be;AAY0B,CAGhC;AAEAxB,+BAA+ByB,cAAc;AAhC3C,SAAAJ,MAAAK,GAAA;CAAA,OAwByDA,EAACC,eAAgB;AAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssistantModalTrigger.d.ts","names":[],"sources":["../../../src/primitives/assistantModal/AssistantModalTrigger.tsx"],"mappings":";;;;kBAMiB;OACH,UAAU,oBAAoB,QAAiB;OAC/C,QAAQ,2BAA2B,QAAiB;;cAGrD,gDAA8B,0BAAA,KAAA,QAAA,sCAAA,cAAA"}
|
|
1
|
+
{"version":3,"file":"AssistantModalTrigger.d.ts","names":[],"sources":["../../../src/primitives/assistantModal/AssistantModalTrigger.tsx"],"mappings":";;;;kBAMiB;OACH,UAAU,oBAAoB,QAAiB;OAC/C,QAAQ,2BAA2B,QAAiB;;cAGrD,gDAA8B,0BAAA,KAAA,QAAA,sCAAA,cAAA;;oBAe1C,cAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"popoverRenderPrimitives.d.ts","names":[],"sources":["../../../src/primitives/assistantModal/popoverRenderPrimitives.ts"],"mappings":";;cAGa,sCAAoB,0BAAA,KAAA,QAAA,sCAAA,cAAA
|
|
1
|
+
{"version":3,"file":"popoverRenderPrimitives.d.ts","names":[],"sources":["../../../src/primitives/assistantModal/popoverRenderPrimitives.ts"],"mappings":";;cAGa,sCAAoB,0BAAA,KAAA,QAAA,sCAAA,cAAA;;oBAA2C,cAAA;cAC/D,qCAAmB,0BAAA,KAAA,QAAA,qCAAA,cAAA;;oBAA0C,cAAA;cAC7D,sCAAoB,0BAAA,KAAA,QAAA,sCAAA,cAAA;;oBAA2C,cAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AttachmentRemove.d.ts","names":[],"sources":["../../../src/primitives/attachment/AttachmentRemove.ts"],"mappings":";;cAUM;kBAUW;OACH,UAAU;OACV,QAAQ,yBAAyB;;cAGlC,2CAAyB,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA"}
|
|
1
|
+
{"version":3,"file":"AttachmentRemove.d.ts","names":[],"sources":["../../../src/primitives/attachment/AttachmentRemove.ts"],"mappings":";;cAUM;kBAUW;OACH,UAAU;OACV,QAAQ,yBAAyB;;cAGlC,2CAAyB,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA;;;;oBAGrC,cAAA,6CAAA,cAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AttachmentRoot.d.ts","names":[],"sources":["../../../src/primitives/attachment/AttachmentRoot.tsx"],"mappings":";;;KASK,oBAAoB,gCAAgC,UAAU;kBAElD;OACH,UAAU,oBAAoB,UAAU;;;;;OAKxC,QAAQ;;;;;;;;;;;;;;;;cAiBT,yCAAuB,0BAAA,KAAA,qBAAA,gBAAA,kCAAA,eAAA"}
|
|
1
|
+
{"version":3,"file":"AttachmentRoot.d.ts","names":[],"sources":["../../../src/primitives/attachment/AttachmentRoot.tsx"],"mappings":";;;KASK,oBAAoB,gCAAgC,UAAU;kBAElD;OACH,UAAU,oBAAoB,UAAU;;;;;OAKxC,QAAQ;;;;;;;;;;;;;;;;cAiBT,yCAAuB,0BAAA,KAAA,qBAAA,gBAAA,kCAAA,eAAA;;;;oBAKlC,cAAA,0CAAA,cAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AttachmentThumb.d.ts","names":[],"sources":["../../../src/primitives/attachment/AttachmentThumb.tsx"],"mappings":";;;KAUK,oBAAoB,gCAAgC,UAAU;kBAElD;OACH,UAAU,oBAAoB,UAAU;OACxC,QAAQ;;cAGT,0CAAwB,0BAAA,KAAA,qBAAA,gBAAA,kCAAA,eAAA"}
|
|
1
|
+
{"version":3,"file":"AttachmentThumb.d.ts","names":[],"sources":["../../../src/primitives/attachment/AttachmentThumb.tsx"],"mappings":";;;KAUK,oBAAoB,gCAAgC,UAAU;kBAElD;OACH,UAAU,oBAAoB,UAAU;OACxC,QAAQ;;cAGT,0CAAwB,0BAAA,KAAA,qBAAA,gBAAA,kCAAA,eAAA;;;;oBAanC,cAAA,0CAAA,cAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AttachmentThumb.js","names":["c","_c","ComponentPropsWithoutRef","forwardRef","ComponentRef","useAuiState","Primitive","PrimitiveDivProps","div","AttachmentPrimitiveThumb","Element","Props","props","ref","$","ext","_temp","t0","displayName","s","parts","attachment","name","split","length","pop"],"sources":["../../../src/primitives/attachment/AttachmentThumb.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n type ComponentPropsWithoutRef,\n forwardRef,\n type ComponentRef,\n} from \"react\";\nimport { useAuiState } from \"@assistant-ui/store\";\nimport { Primitive } from \"../../utils/Primitive\";\n\ntype PrimitiveDivProps = ComponentPropsWithoutRef<typeof Primitive.div>;\n\nexport namespace AttachmentPrimitiveThumb {\n export type Element = ComponentRef<typeof Primitive.div>;\n export type Props = PrimitiveDivProps;\n}\n\nexport const AttachmentPrimitiveThumb = forwardRef<\n AttachmentPrimitiveThumb.Element,\n AttachmentPrimitiveThumb.Props\n>((props, ref) => {\n const ext = useAuiState((s) => {\n const parts = s.attachment.name.split(\".\");\n return parts.length > 1 ? parts.pop()! : \"\";\n });\n return (\n <Primitive.div {...props} ref={ref}>\n .{ext}\n </Primitive.div>\n );\n});\n\nAttachmentPrimitiveThumb.displayName = \"AttachmentPrimitive.unstable_Thumb\";\n"],"mappings":";;;;;;;AAiBA,MAAaS,2BAA2BN,YAGtCS,OAAAC,QAAA;CAAA,MAAAC,IAAAb,EAAA,CAAA;CACA,MAAAc,MAAYV,YAAYW,KAGvB;CAAE,IAAAC;CAAA,IAAAH,EAAA,OAAAC,OAAAD,EAAA,OAAAF,SAAAE,EAAA,OAAAD,KAAA;EAEDI,KAAA,qBAAA,UAAA,KAAA;GAAA,GAAmBL;GAAYC;
|
|
1
|
+
{"version":3,"file":"AttachmentThumb.js","names":["c","_c","ComponentPropsWithoutRef","forwardRef","ComponentRef","useAuiState","Primitive","PrimitiveDivProps","div","AttachmentPrimitiveThumb","Element","Props","props","ref","$","ext","_temp","t0","displayName","s","parts","attachment","name","split","length","pop"],"sources":["../../../src/primitives/attachment/AttachmentThumb.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n type ComponentPropsWithoutRef,\n forwardRef,\n type ComponentRef,\n} from \"react\";\nimport { useAuiState } from \"@assistant-ui/store\";\nimport { Primitive } from \"../../utils/Primitive\";\n\ntype PrimitiveDivProps = ComponentPropsWithoutRef<typeof Primitive.div>;\n\nexport namespace AttachmentPrimitiveThumb {\n export type Element = ComponentRef<typeof Primitive.div>;\n export type Props = PrimitiveDivProps;\n}\n\nexport const AttachmentPrimitiveThumb = forwardRef<\n AttachmentPrimitiveThumb.Element,\n AttachmentPrimitiveThumb.Props\n>((props, ref) => {\n const ext = useAuiState((s) => {\n const parts = s.attachment.name.split(\".\");\n return parts.length > 1 ? parts.pop()! : \"\";\n });\n return (\n <Primitive.div {...props} ref={ref}>\n .{ext}\n </Primitive.div>\n );\n});\n\nAttachmentPrimitiveThumb.displayName = \"AttachmentPrimitive.unstable_Thumb\";\n"],"mappings":";;;;;;;AAiBA,MAAaS,2BAA2BN,YAGtCS,OAAAC,QAAA;CAAA,MAAAC,IAAAb,EAAA,CAAA;CACA,MAAAc,MAAYV,YAAYW,KAGvB;CAAE,IAAAC;CAAA,IAAAH,EAAA,OAAAC,OAAAD,EAAA,OAAAF,SAAAE,EAAA,OAAAD,KAAA;EAEDI,KAAA,qBAAA,UAAA,KAAA;GAAA,GAAmBL;GAAYC;GAA/B,UAAA,CAAoC,KAChCE,GACJ;;EAAgBD,EAAA,KAAAC;EAAAD,EAAA,KAAAF;EAAAE,EAAA,KAAAD;EAAAC,EAAA,KAAAG;CAAA,OAAAA,KAAAH,EAAA;CAAA,OAFhBG;AAEgB,CAEnB;AAEDR,yBAAyBS,cAAc;AAZrC,SAAAF,MAAAG,GAAA;CAEE,MAAAC,QAAcD,EAACE,WAAWC,KAAKC,MAAO,GAAG;CAAE,OACpCH,MAAKI,SAAU,IAAIJ,MAAKK,IAAW,IAAnC;AAAoC"}
|