@athenaintel/react 0.42.2 → 0.48.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +225 -3
- package/dist/agent-runtime/src/answer-label.cjs +137 -0
- package/dist/agent-runtime/src/answer-label.cjs.map +1 -0
- package/dist/agent-runtime/src/answer-label.d.ts +104 -0
- package/dist/agent-runtime/src/answer-label.js +137 -0
- package/dist/agent-runtime/src/answer-label.js.map +1 -0
- package/dist/agent-runtime/src/answer-rows.cjs +180 -0
- package/dist/agent-runtime/src/answer-rows.cjs.map +1 -0
- package/dist/agent-runtime/src/answer-rows.d.ts +86 -0
- package/dist/agent-runtime/src/answer-rows.js +180 -0
- package/dist/agent-runtime/src/answer-rows.js.map +1 -0
- package/dist/agent-runtime/src/client-tool-bridge.cjs +15 -15
- package/dist/agent-runtime/src/client-tool-bridge.cjs.map +1 -1
- package/dist/agent-runtime/src/conversation-index.cjs +8 -8
- package/dist/agent-runtime/src/conversation-index.cjs.map +1 -1
- package/dist/agent-runtime/src/conversation-list-groups.d.ts +74 -0
- package/dist/agent-runtime/src/decision-checks.cjs +207 -0
- package/dist/agent-runtime/src/decision-checks.cjs.map +1 -0
- package/dist/agent-runtime/src/decision-checks.d.ts +142 -0
- package/dist/agent-runtime/src/decision-checks.js +207 -0
- package/dist/agent-runtime/src/decision-checks.js.map +1 -0
- package/dist/agent-runtime/src/desktop-handoff.d.ts +12 -0
- package/dist/agent-runtime/src/errors.cjs +18 -0
- package/dist/agent-runtime/src/errors.cjs.map +1 -1
- package/dist/agent-runtime/src/errors.d.ts +7 -0
- package/dist/agent-runtime/src/errors.js +18 -0
- package/dist/agent-runtime/src/errors.js.map +1 -1
- package/dist/agent-runtime/src/generated/runconfig-contract.cjs +12 -0
- package/dist/agent-runtime/src/generated/runconfig-contract.cjs.map +1 -1
- package/dist/agent-runtime/src/generated/runconfig-contract.d.ts +6 -6
- package/dist/agent-runtime/src/generated/runconfig-contract.js +12 -0
- package/dist/agent-runtime/src/generated/runconfig-contract.js.map +1 -1
- package/dist/agent-runtime/src/handoff-arrival.cjs +60 -0
- package/dist/agent-runtime/src/handoff-arrival.cjs.map +1 -0
- package/dist/agent-runtime/src/handoff-arrival.d.ts +46 -0
- package/dist/agent-runtime/src/handoff-arrival.js +60 -0
- package/dist/agent-runtime/src/handoff-arrival.js.map +1 -0
- package/dist/agent-runtime/src/index.d.ts +15 -8
- package/dist/agent-runtime/src/interrupts.cjs +43 -18
- package/dist/agent-runtime/src/interrupts.cjs.map +1 -1
- package/dist/agent-runtime/src/interrupts.d.ts +19 -2
- package/dist/agent-runtime/src/interrupts.js +28 -3
- package/dist/agent-runtime/src/interrupts.js.map +1 -1
- package/dist/agent-runtime/src/lane-history.cjs +8 -8
- package/dist/agent-runtime/src/lane-history.cjs.map +1 -1
- package/dist/agent-runtime/src/messages.cjs +43 -8
- package/dist/agent-runtime/src/messages.cjs.map +1 -1
- package/dist/agent-runtime/src/messages.d.ts +25 -3
- package/dist/agent-runtime/src/messages.js +43 -8
- package/dist/agent-runtime/src/messages.js.map +1 -1
- package/dist/agent-runtime/src/offline-status.cjs +36 -0
- package/dist/agent-runtime/src/offline-status.cjs.map +1 -0
- package/dist/agent-runtime/src/offline-status.d.ts +118 -3
- package/dist/agent-runtime/src/offline-status.js +36 -0
- package/dist/agent-runtime/src/offline-status.js.map +1 -0
- package/dist/agent-runtime/src/queue.cjs +0 -9
- package/dist/agent-runtime/src/queue.cjs.map +1 -1
- package/dist/agent-runtime/src/queue.js +0 -9
- package/dist/agent-runtime/src/queue.js.map +1 -1
- package/dist/agent-runtime/src/quota-safe-local-storage-session.cjs +9 -9
- package/dist/agent-runtime/src/quota-safe-local-storage-session.cjs.map +1 -1
- package/dist/agent-runtime/src/runtime-catalog.cjs +42 -0
- package/dist/agent-runtime/src/runtime-catalog.cjs.map +1 -0
- package/dist/agent-runtime/src/runtime-catalog.d.ts +35 -0
- package/dist/agent-runtime/src/runtime-catalog.js +42 -0
- package/dist/agent-runtime/src/runtime-catalog.js.map +1 -0
- package/dist/agent-runtime/src/runtime-messages.cjs.map +1 -1
- package/dist/agent-runtime/src/runtime-messages.d.ts +1 -1
- package/dist/agent-runtime/src/runtime-messages.js.map +1 -1
- package/dist/agent-runtime/src/runtime.d.ts +40 -0
- package/dist/agent-runtime/src/statewire-suspended.cjs +3 -3
- package/dist/agent-runtime/src/statewire-suspended.cjs.map +1 -1
- package/dist/agent-runtime/src/subagents.cjs +32 -2
- package/dist/agent-runtime/src/subagents.cjs.map +1 -1
- package/dist/agent-runtime/src/subagents.d.ts +9 -0
- package/dist/agent-runtime/src/subagents.js +30 -0
- package/dist/agent-runtime/src/subagents.js.map +1 -1
- package/dist/agent-runtime/src/thread-driver.cjs +67 -0
- package/dist/agent-runtime/src/thread-driver.cjs.map +1 -0
- package/dist/agent-runtime/src/thread-driver.d.ts +49 -0
- package/dist/agent-runtime/src/thread-driver.js +67 -0
- package/dist/agent-runtime/src/thread-driver.js.map +1 -0
- package/dist/agent-runtime/src/thread-handoff-flow-machine.d.ts +172 -0
- package/dist/agent-runtime/src/thread-handoff-protocol.d.ts +756 -0
- package/dist/agent-runtime/src/thread-handoff-qr.d.ts +11 -0
- package/dist/agent-runtime/src/thread-handoff.d.ts +3 -364
- package/dist/agent-runtime/src/thread-status.cjs +3 -3
- package/dist/agent-runtime/src/thread-status.cjs.map +1 -1
- package/dist/agent-runtime/src/tool-metadata.cjs +210 -33
- package/dist/agent-runtime/src/tool-metadata.cjs.map +1 -1
- package/dist/agent-runtime/src/tool-metadata.d.ts +12 -0
- package/dist/agent-runtime/src/tool-metadata.js +210 -33
- package/dist/agent-runtime/src/tool-metadata.js.map +1 -1
- package/dist/agent-runtime/src/tool-names.cjs +2 -0
- package/dist/agent-runtime/src/tool-names.cjs.map +1 -1
- package/dist/agent-runtime/src/tool-names.d.ts +2 -0
- package/dist/agent-runtime/src/tool-names.js +2 -0
- package/dist/agent-runtime/src/tool-names.js.map +1 -1
- package/dist/agent-runtime/src/types.d.ts +10 -2
- package/dist/agent-runtime/src/use-conversation-list.cjs +11 -11
- package/dist/agent-runtime/src/use-conversation-list.cjs.map +1 -1
- package/dist/agent-runtime/src/use-deep-agent-chat-outbox.cjs +24 -19
- package/dist/agent-runtime/src/use-deep-agent-chat-outbox.cjs.map +1 -1
- package/dist/agent-runtime/src/use-deep-agent-chat-outbox.d.ts +2 -1
- package/dist/agent-runtime/src/use-deep-agent-chat-outbox.js +6 -1
- package/dist/agent-runtime/src/use-deep-agent-chat-outbox.js.map +1 -1
- package/dist/agent-runtime/src/use-deep-agent-config.cjs +14 -14
- package/dist/agent-runtime/src/use-deep-agent-config.cjs.map +1 -1
- package/dist/agent-runtime/src/use-deep-agent-edit-submit.cjs +6 -6
- package/dist/agent-runtime/src/use-deep-agent-edit-submit.cjs.map +1 -1
- package/dist/agent-runtime/src/use-deep-agent-runtime.cjs +16 -16
- package/dist/agent-runtime/src/use-deep-agent-runtime.cjs.map +1 -1
- package/dist/agent-runtime/src/use-deep-agent-thread.cjs +45 -45
- package/dist/agent-runtime/src/use-deep-agent-thread.cjs.map +1 -1
- package/dist/agent-runtime/src/use-deep-agent-voice.cjs +572 -134
- package/dist/agent-runtime/src/use-deep-agent-voice.cjs.map +1 -1
- package/dist/agent-runtime/src/use-deep-agent-voice.d.ts +137 -10
- package/dist/agent-runtime/src/use-deep-agent-voice.js +514 -76
- package/dist/agent-runtime/src/use-deep-agent-voice.js.map +1 -1
- package/dist/agent-runtime/src/use-deep-agent-window-sync.cjs +26 -26
- package/dist/agent-runtime/src/use-deep-agent-window-sync.cjs.map +1 -1
- package/dist/agent-runtime/src/use-historical-edit-attachments.cjs +4 -4
- package/dist/agent-runtime/src/use-historical-edit-attachments.cjs.map +1 -1
- package/dist/agent-runtime/src/use-thread-handoff-flow.d.ts +28 -26
- package/dist/agent-runtime/src/voice-media.cjs +117 -0
- package/dist/agent-runtime/src/voice-media.cjs.map +1 -0
- package/dist/agent-runtime/src/voice-media.d.ts +49 -0
- package/dist/agent-runtime/src/voice-media.js +117 -0
- package/dist/agent-runtime/src/voice-media.js.map +1 -0
- package/dist/agent-runtime/src/voice-wire-types.d.ts +32 -0
- package/dist/assets/AssetPanel.cjs +11 -11
- package/dist/assets/AssetPanel.cjs.map +1 -1
- package/dist/assets/AthenaAssetEmbed.cjs +11 -9
- package/dist/assets/AthenaAssetEmbed.cjs.map +1 -1
- package/dist/assets/AthenaAssetEmbed.d.ts +7 -0
- package/dist/assets/AthenaAssetEmbed.js +4 -2
- package/dist/assets/AthenaAssetEmbed.js.map +1 -1
- package/dist/assets/AthenaLayout.cjs +16 -16
- package/dist/assets/AthenaLayout.cjs.map +1 -1
- package/dist/assets/use-asset-content.cjs +4 -4
- package/dist/assets/use-asset-content.cjs.map +1 -1
- package/dist/assets/use-asset-embed.cjs +14 -7
- package/dist/assets/use-asset-embed.cjs.map +1 -1
- package/dist/assets/use-asset-embed.d.ts +11 -1
- package/dist/assets/use-asset-embed.js +10 -3
- package/dist/assets/use-asset-embed.js.map +1 -1
- package/dist/auth/AthenaAuthContext.cjs +3 -3
- package/dist/auth/AthenaAuthContext.cjs.map +1 -1
- package/dist/auth/AthenaAuthProvider.cjs +8 -8
- package/dist/auth/AthenaAuthProvider.cjs.map +1 -1
- package/dist/auth/AthenaCredentialSourceContext.cjs +5 -5
- package/dist/auth/AthenaCredentialSourceContext.cjs.map +1 -1
- package/dist/auth/AthenaSSOProvider.cjs +14 -14
- package/dist/auth/AthenaSSOProvider.cjs.map +1 -1
- package/dist/auth/credential-source.cjs +26 -13
- package/dist/auth/credential-source.cjs.map +1 -1
- package/dist/auth/credential-source.d.ts +8 -0
- package/dist/auth/credential-source.js +26 -13
- package/dist/auth/credential-source.js.map +1 -1
- package/dist/catalog/agent-model-options.cjs +25 -17
- package/dist/catalog/agent-model-options.cjs.map +1 -1
- package/dist/catalog/agent-model-options.d.ts +38 -5
- package/dist/catalog/agent-model-options.js +25 -17
- package/dist/catalog/agent-model-options.js.map +1 -1
- package/dist/catalog/channel-refusal.cjs +36 -0
- package/dist/catalog/channel-refusal.cjs.map +1 -0
- package/dist/catalog/channel-refusal.d.ts +29 -0
- package/dist/catalog/channel-refusal.js +36 -0
- package/dist/catalog/channel-refusal.js.map +1 -0
- package/dist/catalog/chat-pickers.cjs +60 -24
- package/dist/catalog/chat-pickers.cjs.map +1 -1
- package/dist/catalog/chat-pickers.d.ts +12 -2
- package/dist/catalog/chat-pickers.js +56 -20
- package/dist/catalog/chat-pickers.js.map +1 -1
- package/dist/catalog/runtime-catalog.cjs +89 -23
- package/dist/catalog/runtime-catalog.cjs.map +1 -1
- package/dist/catalog/runtime-catalog.d.ts +8 -2
- package/dist/catalog/runtime-catalog.js +83 -17
- package/dist/catalog/runtime-catalog.js.map +1 -1
- package/dist/catalog/use-athena-chat-mode.cjs +12 -12
- package/dist/catalog/use-athena-chat-mode.cjs.map +1 -1
- package/dist/chat/AthenaChat.cjs +155 -67
- package/dist/chat/AthenaChat.cjs.map +1 -1
- package/dist/chat/AthenaChat.d.ts +42 -2
- package/dist/chat/AthenaChat.js +106 -18
- package/dist/chat/AthenaChat.js.map +1 -1
- package/dist/chat/AthenaChatErrorBoundary.cjs +3 -3
- package/dist/chat/AthenaChatErrorBoundary.cjs.map +1 -1
- package/dist/chat/DrivingOnChip.cjs +23 -0
- package/dist/chat/DrivingOnChip.cjs.map +1 -0
- package/dist/chat/DrivingOnChip.d.ts +17 -0
- package/dist/chat/DrivingOnChip.js +23 -0
- package/dist/chat/DrivingOnChip.js.map +1 -0
- package/dist/chat/StatewireApprovalCard.cjs +125 -31
- package/dist/chat/StatewireApprovalCard.cjs.map +1 -1
- package/dist/chat/StatewireApprovalCard.d.ts +73 -1
- package/dist/chat/StatewireApprovalCard.js +115 -21
- package/dist/chat/StatewireApprovalCard.js.map +1 -1
- package/dist/chat/StatewireClientToolBridge.cjs +2 -2
- package/dist/chat/StatewireClientToolBridge.cjs.map +1 -1
- package/dist/chat/StatewireQueuedMessages.cjs +25 -63
- package/dist/chat/StatewireQueuedMessages.cjs.map +1 -1
- package/dist/chat/StatewireQueuedMessages.d.ts +11 -13
- package/dist/chat/StatewireQueuedMessages.js +16 -54
- package/dist/chat/StatewireQueuedMessages.js.map +1 -1
- package/dist/chat/WaitingOnYouBanner.cjs +3 -3
- package/dist/chat/WaitingOnYouBanner.cjs.map +1 -1
- package/dist/chat/athena-chat-welcome.cjs +2 -2
- package/dist/chat/athena-chat-welcome.cjs.map +1 -1
- package/dist/chat/athena-citation-links.cjs +5 -5
- package/dist/chat/athena-citation-links.cjs.map +1 -1
- package/dist/chat/athena-composer-controls.cjs +26 -16
- package/dist/chat/athena-composer-controls.cjs.map +1 -1
- package/dist/chat/athena-composer-controls.d.ts +6 -0
- package/dist/chat/athena-composer-controls.js +26 -16
- package/dist/chat/athena-composer-controls.js.map +1 -1
- package/dist/chat/athena-turn-end-status.cjs +42 -0
- package/dist/chat/athena-turn-end-status.cjs.map +1 -0
- package/dist/chat/athena-turn-end-status.d.ts +24 -0
- package/dist/chat/athena-turn-end-status.js +42 -0
- package/dist/chat/athena-turn-end-status.js.map +1 -0
- package/dist/chat/browser-decision-check.cjs +131 -0
- package/dist/chat/browser-decision-check.cjs.map +1 -0
- package/dist/chat/browser-decision-check.d.ts +61 -0
- package/dist/chat/browser-decision-check.js +131 -0
- package/dist/chat/browser-decision-check.js.map +1 -0
- package/dist/chat/chat-outbox-rows.cjs +3 -3
- package/dist/chat/chat-outbox-rows.cjs.map +1 -1
- package/dist/chat/chat-voice-controls.cjs +93 -28
- package/dist/chat/chat-voice-controls.cjs.map +1 -1
- package/dist/chat/chat-voice-controls.d.ts +36 -2
- package/dist/chat/chat-voice-controls.js +89 -24
- package/dist/chat/chat-voice-controls.js.map +1 -1
- package/dist/chat/composer-keyboard-hint.cjs +5 -5
- package/dist/chat/composer-keyboard-hint.cjs.map +1 -1
- package/dist/chat/device-operation.cjs +29 -0
- package/dist/chat/device-operation.cjs.map +1 -0
- package/dist/chat/device-operation.d.ts +34 -0
- package/dist/chat/device-operation.js +29 -0
- package/dist/chat/device-operation.js.map +1 -0
- package/dist/chat/super-grouping/CollapsibleGroup.cjs +14 -14
- package/dist/chat/super-grouping/CollapsibleGroup.cjs.map +1 -1
- package/dist/chat/super-grouping/GroupedMessageParts.cjs +4 -4
- package/dist/chat/super-grouping/GroupedMessageParts.cjs.map +1 -1
- package/dist/chat/super-grouping/SuperGroupingCard.cjs +60 -38
- package/dist/chat/super-grouping/SuperGroupingCard.cjs.map +1 -1
- package/dist/chat/super-grouping/SuperGroupingCard.d.ts +24 -4
- package/dist/chat/super-grouping/SuperGroupingCard.js +37 -15
- package/dist/chat/super-grouping/SuperGroupingCard.js.map +1 -1
- package/dist/chat/super-grouping/SuperGroupingTranscript.cjs +32 -32
- package/dist/chat/super-grouping/SuperGroupingTranscript.cjs.map +1 -1
- package/dist/chat/super-grouping/SuperGroupingTranscript.js +3 -3
- package/dist/chat/super-grouping/SuperGroupingTranscript.js.map +1 -1
- package/dist/chat/super-grouping/ToolTimeline.cjs +97 -37
- package/dist/chat/super-grouping/ToolTimeline.cjs.map +1 -1
- package/dist/chat/super-grouping/ToolTimeline.d.ts +14 -2
- package/dist/chat/super-grouping/ToolTimeline.js +94 -34
- package/dist/chat/super-grouping/ToolTimeline.js.map +1 -1
- package/dist/chat/super-grouping/activity-timeline.cjs +47 -12
- package/dist/chat/super-grouping/activity-timeline.cjs.map +1 -1
- package/dist/chat/super-grouping/activity-timeline.d.ts +21 -0
- package/dist/chat/super-grouping/activity-timeline.js +47 -12
- package/dist/chat/super-grouping/activity-timeline.js.map +1 -1
- package/dist/chat/super-grouping/grouping-function.cjs +4 -0
- package/dist/chat/super-grouping/grouping-function.cjs.map +1 -1
- package/dist/chat/super-grouping/grouping-function.d.ts +7 -0
- package/dist/chat/super-grouping/grouping-function.js +5 -1
- package/dist/chat/super-grouping/grouping-function.js.map +1 -1
- package/dist/chat/super-grouping/index.cjs +6 -0
- package/dist/chat/super-grouping/index.cjs.map +1 -1
- package/dist/chat/super-grouping/index.d.ts +6 -2
- package/dist/chat/super-grouping/index.js +7 -1
- package/dist/chat/super-grouping/index.js.map +1 -1
- package/dist/chat/super-grouping/timeline-step.cjs +61 -2
- package/dist/chat/super-grouping/timeline-step.cjs.map +1 -1
- package/dist/chat/super-grouping/timeline-step.d.ts +13 -1
- package/dist/chat/super-grouping/timeline-step.js +61 -2
- package/dist/chat/super-grouping/timeline-step.js.map +1 -1
- package/dist/chat/super-grouping/tool-part-placement.cjs +17 -0
- package/dist/chat/super-grouping/tool-part-placement.cjs.map +1 -0
- package/dist/chat/super-grouping/tool-part-placement.d.ts +22 -0
- package/dist/chat/super-grouping/tool-part-placement.js +17 -0
- package/dist/chat/super-grouping/tool-part-placement.js.map +1 -0
- package/dist/chat/thread-scroll-to-bottom.cjs +2 -2
- package/dist/chat/thread-scroll-to-bottom.cjs.map +1 -1
- package/dist/chat/thread-scroll-to-bottom.d.ts +10 -7
- package/dist/chat/thread-scroll-to-bottom.js +2 -2
- package/dist/chat/thread-scroll-to-bottom.js.map +1 -1
- package/dist/chat/tooltip-icon-button.cjs +2 -2
- package/dist/chat/tooltip-icon-button.cjs.map +1 -1
- package/dist/chat/use-athena-voice-live.cjs +11 -0
- package/dist/chat/use-athena-voice-live.cjs.map +1 -0
- package/dist/chat/use-athena-voice-live.d.ts +11 -0
- package/dist/chat/use-athena-voice-live.js +11 -0
- package/dist/chat/use-athena-voice-live.js.map +1 -0
- package/dist/chat/use-statewire-approval-request.cjs +56 -24
- package/dist/chat/use-statewire-approval-request.cjs.map +1 -1
- package/dist/chat/use-statewire-approval-request.d.ts +33 -4
- package/dist/chat/use-statewire-approval-request.js +41 -9
- package/dist/chat/use-statewire-approval-request.js.map +1 -1
- package/dist/chat-ui/auth/sign-in-card.cjs +2 -2
- package/dist/chat-ui/auth/sign-in-card.cjs.map +1 -1
- package/dist/chat-ui/composer/tiptap-composer.cjs +138 -107
- package/dist/chat-ui/composer/tiptap-composer.cjs.map +1 -1
- package/dist/chat-ui/composer/tiptap-composer.d.ts +20 -4
- package/dist/chat-ui/composer/tiptap-composer.js +85 -54
- package/dist/chat-ui/composer/tiptap-composer.js.map +1 -1
- package/dist/chat-ui/header/conversation-history-panel.cjs +49 -23
- package/dist/chat-ui/header/conversation-history-panel.cjs.map +1 -1
- package/dist/chat-ui/header/conversation-history-panel.d.ts +12 -1
- package/dist/chat-ui/header/conversation-history-panel.js +38 -12
- package/dist/chat-ui/header/conversation-history-panel.js.map +1 -1
- package/dist/chat-ui/index.cjs +18 -0
- package/dist/chat-ui/index.cjs.map +1 -1
- package/dist/chat-ui/index.d.ts +7 -1
- package/dist/chat-ui/index.js +18 -0
- package/dist/chat-ui/index.js.map +1 -1
- package/dist/chat-ui/mentions/mention-chip.cjs +147 -38
- package/dist/chat-ui/mentions/mention-chip.cjs.map +1 -1
- package/dist/chat-ui/mentions/mention-chip.d.ts +17 -1
- package/dist/chat-ui/mentions/mention-chip.js +146 -37
- package/dist/chat-ui/mentions/mention-chip.js.map +1 -1
- package/dist/chat-ui/mentions/suggestions/components/mention-suggestion-list.cjs +10 -9
- package/dist/chat-ui/mentions/suggestions/components/mention-suggestion-list.cjs.map +1 -1
- package/dist/chat-ui/mentions/suggestions/components/mention-suggestion-list.js +3 -2
- package/dist/chat-ui/mentions/suggestions/components/mention-suggestion-list.js.map +1 -1
- package/dist/chat-ui/mentions/suggestions/components/mention-suggestion-popup.cjs +2 -2
- package/dist/chat-ui/mentions/suggestions/components/mention-suggestion-popup.cjs.map +1 -1
- package/dist/chat-ui/mentions/suggestions/components/menu-list.cjs +29 -6
- package/dist/chat-ui/mentions/suggestions/components/menu-list.cjs.map +1 -1
- package/dist/chat-ui/mentions/suggestions/components/menu-list.d.ts +7 -1
- package/dist/chat-ui/mentions/suggestions/components/menu-list.js +25 -2
- package/dist/chat-ui/mentions/suggestions/components/menu-list.js.map +1 -1
- package/dist/chat-ui/mentions/suggestions/components/use-keyboard-navigation.cjs +2 -2
- package/dist/chat-ui/mentions/suggestions/components/use-keyboard-navigation.cjs.map +1 -1
- package/dist/chat-ui/mentions/suggestions/components/use-menu-navigation.cjs +2 -2
- package/dist/chat-ui/mentions/suggestions/components/use-menu-navigation.cjs.map +1 -1
- package/dist/chat-ui/mentions/suggestions/data/api-client.cjs +3 -3
- package/dist/chat-ui/mentions/suggestions/data/api-client.cjs.map +1 -1
- package/dist/chat-ui/mentions/suggestions/data/orchestrator.cjs +56 -2
- package/dist/chat-ui/mentions/suggestions/data/orchestrator.cjs.map +1 -1
- package/dist/chat-ui/mentions/suggestions/data/orchestrator.d.ts +12 -0
- package/dist/chat-ui/mentions/suggestions/data/orchestrator.js +56 -2
- package/dist/chat-ui/mentions/suggestions/data/orchestrator.js.map +1 -1
- package/dist/chat-ui/mentions/suggestions/data/sources/index.cjs +24 -3
- package/dist/chat-ui/mentions/suggestions/data/sources/index.cjs.map +1 -1
- package/dist/chat-ui/mentions/suggestions/data/sources/index.d.ts +7 -0
- package/dist/chat-ui/mentions/suggestions/data/sources/index.js +24 -3
- package/dist/chat-ui/mentions/suggestions/data/sources/index.js.map +1 -1
- package/dist/chat-ui/mentions/suggestions/data/use-mention-suggestions.cjs +35 -13
- package/dist/chat-ui/mentions/suggestions/data/use-mention-suggestions.cjs.map +1 -1
- package/dist/chat-ui/mentions/suggestions/data/use-mention-suggestions.d.ts +15 -1
- package/dist/chat-ui/mentions/suggestions/data/use-mention-suggestions.js +28 -6
- package/dist/chat-ui/mentions/suggestions/data/use-mention-suggestions.js.map +1 -1
- package/dist/chat-ui/mentions/suggestions/data/use-menu-items.cjs +9 -6
- package/dist/chat-ui/mentions/suggestions/data/use-menu-items.cjs.map +1 -1
- package/dist/chat-ui/mentions/suggestions/data/use-menu-items.d.ts +3 -0
- package/dist/chat-ui/mentions/suggestions/data/use-menu-items.js +5 -2
- package/dist/chat-ui/mentions/suggestions/data/use-menu-items.js.map +1 -1
- package/dist/chat-ui/mentions/use-account-workspace-id.cjs +45 -10
- package/dist/chat-ui/mentions/use-account-workspace-id.cjs.map +1 -1
- package/dist/chat-ui/mentions/use-account-workspace-id.d.ts +24 -1
- package/dist/chat-ui/mentions/use-account-workspace-id.js +46 -11
- package/dist/chat-ui/mentions/use-account-workspace-id.js.map +1 -1
- package/dist/chat-ui/mentions/use-member-avatar.cjs +4 -4
- package/dist/chat-ui/mentions/use-member-avatar.cjs.map +1 -1
- package/dist/chat-ui/mentions/use-mention-asset.cjs +140 -0
- package/dist/chat-ui/mentions/use-mention-asset.cjs.map +1 -0
- package/dist/chat-ui/mentions/use-mention-asset.d.ts +16 -0
- package/dist/chat-ui/mentions/use-mention-asset.js +140 -0
- package/dist/chat-ui/mentions/use-mention-asset.js.map +1 -0
- package/dist/chat-ui/messages/answer-label.cjs +42 -0
- package/dist/chat-ui/messages/answer-label.cjs.map +1 -0
- package/dist/chat-ui/messages/answer-label.d.ts +33 -0
- package/dist/chat-ui/messages/answer-label.js +42 -0
- package/dist/chat-ui/messages/answer-label.js.map +1 -0
- package/dist/chat-ui/messages/arrival-animation.cjs +13 -0
- package/dist/chat-ui/messages/arrival-animation.cjs.map +1 -0
- package/dist/chat-ui/messages/arrival-animation.d.ts +14 -0
- package/dist/chat-ui/messages/arrival-animation.js +13 -0
- package/dist/chat-ui/messages/arrival-animation.js.map +1 -0
- package/dist/chat-ui/messages/continue-pill.cjs +5 -5
- package/dist/chat-ui/messages/continue-pill.cjs.map +1 -1
- package/dist/chat-ui/messages/handoff-arrival-divider.cjs +44 -0
- package/dist/chat-ui/messages/handoff-arrival-divider.cjs.map +1 -0
- package/dist/chat-ui/messages/handoff-arrival-divider.d.ts +17 -0
- package/dist/chat-ui/messages/handoff-arrival-divider.js +44 -0
- package/dist/chat-ui/messages/handoff-arrival-divider.js.map +1 -0
- package/dist/chat-ui/messages/message-actions-config.cjs +3 -3
- package/dist/chat-ui/messages/message-actions-config.cjs.map +1 -1
- package/dist/chat-ui/messages/message-components.cjs +8 -4
- package/dist/chat-ui/messages/message-components.cjs.map +1 -1
- package/dist/chat-ui/messages/message-components.js +5 -1
- package/dist/chat-ui/messages/message-components.js.map +1 -1
- package/dist/chat-ui/messages/message-images.cjs +66 -0
- package/dist/chat-ui/messages/message-images.cjs.map +1 -0
- package/dist/chat-ui/messages/message-images.d.ts +16 -0
- package/dist/chat-ui/messages/message-images.js +66 -0
- package/dist/chat-ui/messages/message-images.js.map +1 -0
- package/dist/chat-ui/messages/user-edit-composer.cjs +2 -2
- package/dist/chat-ui/messages/user-edit-composer.cjs.map +1 -1
- package/dist/chat-ui/messages/wake-marker.cjs +3 -3
- package/dist/chat-ui/messages/wake-marker.cjs.map +1 -1
- package/dist/chat-ui/rich-text/chat-link.cjs +7 -6
- package/dist/chat-ui/rich-text/chat-link.cjs.map +1 -1
- package/dist/chat-ui/rich-text/chat-link.d.ts +2 -3
- package/dist/chat-ui/rich-text/chat-link.js +6 -5
- package/dist/chat-ui/rich-text/chat-link.js.map +1 -1
- package/dist/chat-ui/rich-text/chat-message-body.cjs +8 -8
- package/dist/chat-ui/rich-text/chat-message-body.cjs.map +1 -1
- package/dist/chat-ui/rich-text/chat-node-views.cjs +7 -6
- package/dist/chat-ui/rich-text/chat-node-views.cjs.map +1 -1
- package/dist/chat-ui/rich-text/chat-node-views.js +1 -0
- package/dist/chat-ui/rich-text/chat-node-views.js.map +1 -1
- package/dist/chat-ui/rich-text/dom-output-spec.cjs +2 -2
- package/dist/chat-ui/rich-text/dom-output-spec.cjs.map +1 -1
- package/dist/chat-ui/statewire.cjs +3 -0
- package/dist/chat-ui/statewire.cjs.map +1 -1
- package/dist/chat-ui/statewire.d.ts +2 -1
- package/dist/chat-ui/statewire.js +3 -0
- package/dist/chat-ui/statewire.js.map +1 -1
- package/dist/chat-ui/thread/chat-thread-shell.cjs +43 -14
- package/dist/chat-ui/thread/chat-thread-shell.cjs.map +1 -1
- package/dist/chat-ui/thread/chat-thread-shell.d.ts +16 -2
- package/dist/chat-ui/thread/chat-thread-shell.js +35 -6
- package/dist/chat-ui/thread/chat-thread-shell.js.map +1 -1
- package/dist/chat-ui/thread/composer-send-or-stop.cjs +30 -20
- package/dist/chat-ui/thread/composer-send-or-stop.cjs.map +1 -1
- package/dist/chat-ui/thread/composer-send-or-stop.d.ts +8 -0
- package/dist/chat-ui/thread/composer-send-or-stop.js +29 -19
- package/dist/chat-ui/thread/composer-send-or-stop.js.map +1 -1
- package/dist/chat-ui/thread/statewire-history-edge.cjs +20 -21
- package/dist/chat-ui/thread/statewire-history-edge.cjs.map +1 -1
- package/dist/chat-ui/thread/statewire-history-edge.js +3 -4
- package/dist/chat-ui/thread/statewire-history-edge.js.map +1 -1
- package/dist/chat-ui/thread/thread-loading-overlay.cjs +5 -5
- package/dist/chat-ui/thread/thread-loading-overlay.cjs.map +1 -1
- package/dist/collab/client.cjs +40 -3
- package/dist/collab/client.cjs.map +1 -1
- package/dist/collab/client.d.ts +25 -0
- package/dist/collab/client.js +40 -3
- package/dist/collab/client.js.map +1 -1
- package/dist/collab/document-status.cjs +150 -0
- package/dist/collab/document-status.cjs.map +1 -0
- package/dist/collab/document-status.d.ts +68 -0
- package/dist/collab/document-status.js +150 -0
- package/dist/collab/document-status.js.map +1 -0
- package/dist/collab/index.cjs +7 -0
- package/dist/collab/index.cjs.map +1 -1
- package/dist/collab/index.d.ts +6 -1
- package/dist/collab/index.js +7 -0
- package/dist/collab/index.js.map +1 -1
- package/dist/collab/presence-react.cjs +11 -11
- package/dist/collab/presence-react.cjs.map +1 -1
- package/dist/collab/react.cjs +6 -6
- package/dist/collab/react.cjs.map +1 -1
- package/dist/composer/AttachmentContext.cjs +24 -11
- package/dist/composer/AttachmentContext.cjs.map +1 -1
- package/dist/composer/AttachmentContext.js +18 -5
- package/dist/composer/AttachmentContext.js.map +1 -1
- package/dist/composer/ComposerAttachmentPreview.cjs +78 -23
- package/dist/composer/ComposerAttachmentPreview.cjs.map +1 -1
- package/dist/composer/ComposerAttachmentPreview.d.ts +5 -3
- package/dist/composer/ComposerAttachmentPreview.js +79 -24
- package/dist/composer/ComposerAttachmentPreview.js.map +1 -1
- package/dist/composer/ComposerDropZone.cjs +7 -7
- package/dist/composer/ComposerDropZone.cjs.map +1 -1
- package/dist/composer/FileUploadButton.cjs +37 -22
- package/dist/composer/FileUploadButton.cjs.map +1 -1
- package/dist/composer/FileUploadButton.d.ts +6 -0
- package/dist/composer/FileUploadButton.js +34 -19
- package/dist/composer/FileUploadButton.js.map +1 -1
- package/dist/composer/QuoteContext.cjs +8 -8
- package/dist/composer/QuoteContext.cjs.map +1 -1
- package/dist/composer/composer-handoff.cjs +4 -4
- package/dist/composer/composer-handoff.cjs.map +1 -1
- package/dist/composer/useAppendToComposer.cjs +4 -4
- package/dist/composer/useAppendToComposer.cjs.map +1 -1
- package/dist/composer/useAttachFiles.cjs +23 -6
- package/dist/composer/useAttachFiles.cjs.map +1 -1
- package/dist/composer/useAttachFiles.d.ts +15 -7
- package/dist/composer/useAttachFiles.js +22 -5
- package/dist/composer/useAttachFiles.js.map +1 -1
- package/dist/composer/useComposerAttachment.cjs +4 -4
- package/dist/composer/useComposerAttachment.cjs.map +1 -1
- package/dist/composer/useFileUpload.cjs +21 -16
- package/dist/composer/useFileUpload.cjs.map +1 -1
- package/dist/composer/useFileUpload.d.ts +12 -0
- package/dist/composer/useFileUpload.js +12 -7
- package/dist/composer/useFileUpload.js.map +1 -1
- package/dist/composer/useReadComposerDraft.cjs +2 -2
- package/dist/composer/useReadComposerDraft.cjs.map +1 -1
- package/dist/composer/useSendMessage.cjs +4 -4
- package/dist/composer/useSendMessage.cjs.map +1 -1
- package/dist/diagnostics/useAthenaDiagnostics.cjs +4 -4
- package/dist/diagnostics/useAthenaDiagnostics.cjs.map +1 -1
- package/dist/dictation/audio-level-history.cjs +3 -3
- package/dist/dictation/audio-level-history.cjs.map +1 -1
- package/dist/dictation/dictation-controls.cjs +24 -20
- package/dist/dictation/dictation-controls.cjs.map +1 -1
- package/dist/dictation/dictation-controls.d.ts +6 -1
- package/dist/dictation/dictation-controls.js +24 -20
- package/dist/dictation/dictation-controls.js.map +1 -1
- package/dist/dictation/use-athena-dictation-engine.cjs +3 -3
- package/dist/dictation/use-athena-dictation-engine.cjs.map +1 -1
- package/dist/dictation/use-dictation.cjs +22 -22
- package/dist/dictation/use-dictation.cjs.map +1 -1
- package/dist/index.cjs +26 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +15 -3
- package/dist/index.js +26 -2
- package/dist/index.js.map +1 -1
- package/dist/keryx-http/src/receive-only-socket.cjs +40 -0
- package/dist/keryx-http/src/receive-only-socket.cjs.map +1 -0
- package/dist/keryx-http/src/receive-only-socket.d.ts +27 -0
- package/dist/keryx-http/src/receive-only-socket.js +40 -0
- package/dist/keryx-http/src/receive-only-socket.js.map +1 -0
- package/dist/keryx-http/src/update-attributions.cjs +111 -0
- package/dist/keryx-http/src/update-attributions.cjs.map +1 -0
- package/dist/keryx-http/src/update-attributions.d.ts +75 -0
- package/dist/keryx-http/src/update-attributions.js +111 -0
- package/dist/keryx-http/src/update-attributions.js.map +1 -0
- package/dist/lib/owner-document.cjs +6 -6
- package/dist/lib/owner-document.cjs.map +1 -1
- package/dist/lib/use-athena-rest-query.cjs +4 -4
- package/dist/lib/use-athena-rest-query.cjs.map +1 -1
- package/dist/lib/use-document-active.cjs +4 -4
- package/dist/lib/use-document-active.cjs.map +1 -1
- package/dist/lib/use-prefers-reduced-motion.cjs +2 -2
- package/dist/lib/use-prefers-reduced-motion.cjs.map +1 -1
- package/dist/offline/offline-history.cjs +7 -7
- package/dist/offline/offline-history.cjs.map +1 -1
- package/dist/provider/AthenaContext.cjs +3 -3
- package/dist/provider/AthenaContext.cjs.map +1 -1
- package/dist/provider/AthenaProvider.cjs +116 -79
- package/dist/provider/AthenaProvider.cjs.map +1 -1
- package/dist/provider/AthenaProvider.js +40 -3
- package/dist/provider/AthenaProvider.js.map +1 -1
- package/dist/provider/PostHogProvider.cjs +2 -2
- package/dist/provider/PostHogProvider.cjs.map +1 -1
- package/dist/provider/agent-selection-context.cjs +2 -2
- package/dist/provider/agent-selection-context.cjs.map +1 -1
- package/dist/provider/chat-mode-context.cjs +2 -2
- package/dist/provider/chat-mode-context.cjs.map +1 -1
- package/dist/provider/session-persistence-context.cjs +10 -0
- package/dist/provider/session-persistence-context.cjs.map +1 -0
- package/dist/provider/session-persistence-context.d.ts +15 -0
- package/dist/provider/session-persistence-context.js +10 -0
- package/dist/provider/session-persistence-context.js.map +1 -0
- package/dist/provider/statewire-history-context.cjs +4 -4
- package/dist/provider/statewire-history-context.cjs.map +1 -1
- package/dist/provider/statewire-lifecycle-context.cjs +3 -3
- package/dist/provider/statewire-lifecycle-context.cjs.map +1 -1
- package/dist/provider/statewire-window-context.cjs +3 -3
- package/dist/provider/statewire-window-context.cjs.map +1 -1
- package/dist/provider/theme-style-context.cjs +3 -3
- package/dist/provider/theme-style-context.cjs.map +1 -1
- package/dist/react/package.json.cjs +1 -1
- package/dist/react/package.json.js +1 -1
- package/dist/references/src/tool-option-schemas.d.ts +0 -34
- package/dist/runtime/StatewireThreadConfigLaneSync.cjs +10 -10
- package/dist/runtime/StatewireThreadConfigLaneSync.cjs.map +1 -1
- package/dist/runtime/auth-refusal-restart.cjs +7 -7
- package/dist/runtime/auth-refusal-restart.cjs.map +1 -1
- package/dist/runtime/auth.cjs +13 -13
- package/dist/runtime/auth.cjs.map +1 -1
- package/dist/runtime/statewire-lifecycle.cjs +1 -0
- package/dist/runtime/statewire-lifecycle.cjs.map +1 -1
- package/dist/runtime/statewire-lifecycle.d.ts +3 -1
- package/dist/runtime/statewire-lifecycle.js +2 -1
- package/dist/runtime/statewire-lifecycle.js.map +1 -1
- package/dist/runtime/statewire-server-lane-context.cjs +2 -2
- package/dist/runtime/statewire-server-lane-context.cjs.map +1 -1
- package/dist/runtime/statewire-session-lane.cjs +4 -4
- package/dist/runtime/statewire-session-lane.cjs.map +1 -1
- package/dist/runtime/useAthenaStatewireRuntime.cjs +10 -8
- package/dist/runtime/useAthenaStatewireRuntime.cjs.map +1 -1
- package/dist/runtime/useAthenaStatewireRuntime.d.ts +2 -0
- package/dist/runtime/useAthenaStatewireRuntime.js +2 -0
- package/dist/runtime/useAthenaStatewireRuntime.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/threads/Inbox.cjs +8 -8
- package/dist/threads/Inbox.cjs.map +1 -1
- package/dist/threads/SessionList.cjs +9 -9
- package/dist/threads/SessionList.cjs.map +1 -1
- package/dist/threads/SessionsPage.cjs +11 -11
- package/dist/threads/SessionsPage.cjs.map +1 -1
- package/dist/threads/index-triggered-refresh.cjs +10 -10
- package/dist/threads/index-triggered-refresh.cjs.map +1 -1
- package/dist/threads/mark-viewed-thread-read.cjs +12 -12
- package/dist/threads/mark-viewed-thread-read.cjs.map +1 -1
- package/dist/threads/offline-session-list.cjs +3 -3
- package/dist/threads/offline-session-list.cjs.map +1 -1
- package/dist/threads/session-list-tab-share.cjs +5 -5
- package/dist/threads/session-list-tab-share.cjs.map +1 -1
- package/dist/threads/statewire-thread-list.cjs +55 -51
- package/dist/threads/statewire-thread-list.cjs.map +1 -1
- package/dist/threads/statewire-thread-list.js +6 -2
- package/dist/threads/statewire-thread-list.js.map +1 -1
- package/dist/threads/thread-id-context.cjs +5 -5
- package/dist/threads/thread-id-context.cjs.map +1 -1
- package/dist/threads/use-athena-session-attention.cjs +2 -2
- package/dist/threads/use-athena-session-attention.cjs.map +1 -1
- package/dist/threads/use-athena-sessions.cjs +10 -10
- package/dist/threads/use-athena-sessions.cjs.map +1 -1
- package/dist/threads/use-athena-thread-model.cjs +3 -3
- package/dist/threads/use-athena-thread-model.cjs.map +1 -1
- package/dist/threads/use-rest-conversation-history.cjs +3 -3
- package/dist/threads/use-rest-conversation-history.cjs.map +1 -1
- package/dist/threads/use-statewire-conversation-history.cjs +8 -8
- package/dist/threads/use-statewire-conversation-history.cjs.map +1 -1
- package/dist/threads/use-thread-archive.cjs +9 -9
- package/dist/threads/use-thread-archive.cjs.map +1 -1
- package/dist/threads/use-thread-favorite.cjs +2 -2
- package/dist/threads/use-thread-favorite.cjs.map +1 -1
- package/dist/threads/use-thread-field-override.cjs +20 -20
- package/dist/threads/use-thread-field-override.cjs.map +1 -1
- package/dist/threads/use-thread-read-state.cjs +4 -4
- package/dist/threads/use-thread-read-state.cjs.map +1 -1
- package/dist/threads/use-thread-rename.cjs +2 -2
- package/dist/threads/use-thread-rename.cjs.map +1 -1
- package/dist/threads/useAthenaThreadManager.cjs +2 -2
- package/dist/threads/useAthenaThreadManager.cjs.map +1 -1
- package/dist/tools/NestedPtcMessages.cjs +6 -6
- package/dist/tools/NestedPtcMessages.cjs.map +1 -1
- package/dist/tools/append-document-tool-ui.cjs +7 -7
- package/dist/tools/append-document-tool-ui.cjs.map +1 -1
- package/dist/tools/file-tool-uis.cjs +2 -2
- package/dist/tools/file-tool-uis.cjs.map +1 -1
- package/dist/tools/misc-tool-uis.cjs +2 -2
- package/dist/tools/misc-tool-uis.cjs.map +1 -1
- package/dist/tools/primitives.cjs +6 -6
- package/dist/tools/primitives.cjs.map +1 -1
- package/dist/tools/read-asset-tool-ui.cjs +6 -6
- package/dist/tools/read-asset-tool-ui.cjs.map +1 -1
- package/dist/tools/subagent-task-tool-ui.cjs +21 -21
- package/dist/tools/subagent-task-tool-ui.cjs.map +1 -1
- package/dist/tools/test-recording-tool-uis.cjs +16 -16
- package/dist/tools/test-recording-tool-uis.cjs.map +1 -1
- package/dist/tools/todo-plan-store.cjs +4 -4
- package/dist/tools/todo-plan-store.cjs.map +1 -1
- package/dist/tools/tool-appearance.cjs +3 -3
- package/dist/tools/tool-appearance.cjs.map +1 -1
- package/dist/tools/tool-fallback.cjs +14 -14
- package/dist/tools/tool-fallback.cjs.map +1 -1
- package/dist/tools/tool-summary.cjs +0 -2
- package/dist/tools/tool-summary.cjs.map +1 -1
- package/dist/tools/tool-summary.js +0 -2
- package/dist/tools/tool-summary.js.map +1 -1
- package/dist/tools/tool-uis.cjs +74 -74
- package/dist/tools/tool-uis.cjs.map +1 -1
- package/dist/tools/use-elapsed-seconds.cjs +3 -3
- package/dist/tools/use-elapsed-seconds.cjs.map +1 -1
- package/dist/tools/write-todos-tool-ui.cjs +9 -9
- package/dist/tools/write-todos-tool-ui.cjs.map +1 -1
- package/dist/ui/image-viewer.cjs +382 -0
- package/dist/ui/image-viewer.cjs.map +1 -0
- package/dist/ui/image-viewer.d.ts +50 -0
- package/dist/ui/image-viewer.js +382 -0
- package/dist/ui/image-viewer.js.map +1 -0
- package/dist/voice/chat.cjs +6 -0
- package/dist/voice/chat.cjs.map +1 -1
- package/dist/voice/chat.d.ts +1 -1
- package/dist/voice/chat.js +8 -2
- package/dist/voice/livekit-join.cjs +52 -101
- package/dist/voice/livekit-join.cjs.map +1 -1
- package/dist/voice/livekit-join.d.ts +1 -6
- package/dist/voice/livekit-join.js +52 -101
- package/dist/voice/livekit-join.js.map +1 -1
- package/dist/voice/livekit.cjs.map +1 -1
- package/dist/voice/livekit.d.ts +11 -1
- package/dist/voice/livekit.js.map +1 -1
- package/dist/voice/use-athena-voice-session.cjs +34 -34
- package/dist/voice/use-athena-voice-session.cjs.map +1 -1
- package/dist/workbench/ComputerLiveDesktop.cjs +13 -13
- package/dist/workbench/ComputerLiveDesktop.cjs.map +1 -1
- package/dist/workbench/SessionWorkbench.cjs +22 -22
- package/dist/workbench/SessionWorkbench.cjs.map +1 -1
- package/dist/workbench/session-workbench-context.cjs +3 -3
- package/dist/workbench/session-workbench-context.cjs.map +1 -1
- package/dist/workbench/session-workbench-panes.cjs +8 -8
- package/dist/workbench/session-workbench-panes.cjs.map +1 -1
- package/dist/workbench/workbench-layout-context.cjs +3 -3
- package/dist/workbench/workbench-layout-context.cjs.map +1 -1
- package/package.json +2 -1
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const store = require("@assistant-ui/store");
|
|
4
|
+
const require$$0 = require("react");
|
|
5
|
+
const statewireState = require("./statewire-state.cjs");
|
|
6
|
+
const threadExtras = require("./thread-extras.cjs");
|
|
7
|
+
const WIRE_SURFACES = {
|
|
8
|
+
web: "spaces",
|
|
9
|
+
mobile: "mobile",
|
|
10
|
+
chrome: "chrome",
|
|
11
|
+
desktop: "desktop",
|
|
12
|
+
office: "office"
|
|
13
|
+
};
|
|
14
|
+
const SURFACE_LABELS = {
|
|
15
|
+
spaces: "Spaces",
|
|
16
|
+
mobile: "your phone",
|
|
17
|
+
chrome: "Chrome",
|
|
18
|
+
desktop: "Athena Desktop",
|
|
19
|
+
office: "Office"
|
|
20
|
+
};
|
|
21
|
+
const THREAD_DRIVER_FRESH_MS = 15 * 6e4;
|
|
22
|
+
const parseThreadDriver = (value) => {
|
|
23
|
+
if (value === null || typeof value !== "object") return null;
|
|
24
|
+
const record = value;
|
|
25
|
+
const surface = typeof record.surface === "string" ? WIRE_SURFACES[record.surface] : void 0;
|
|
26
|
+
const mode = record.mode === "voice" ? "voice" : record.mode === "text" ? "text" : null;
|
|
27
|
+
const since = typeof record.since === "number" && Number.isFinite(record.since) ? record.since : null;
|
|
28
|
+
if (!surface || !mode || since === null) return null;
|
|
29
|
+
return { surface, mode, since };
|
|
30
|
+
};
|
|
31
|
+
const drivingOnFromDriver = ({
|
|
32
|
+
driver,
|
|
33
|
+
here,
|
|
34
|
+
now = Date.now(),
|
|
35
|
+
freshMs = THREAD_DRIVER_FRESH_MS
|
|
36
|
+
}) => {
|
|
37
|
+
if (!driver || driver.surface === here || driver.mode === "voice") return null;
|
|
38
|
+
if (now - driver.since > freshMs) return null;
|
|
39
|
+
return { surface: driver.surface, label: `Driving on ${SURFACE_LABELS[driver.surface]}` };
|
|
40
|
+
};
|
|
41
|
+
const useThreadDriver = () => {
|
|
42
|
+
const raw = store.useAuiState((s) => {
|
|
43
|
+
const extras = s.thread.extras;
|
|
44
|
+
if (!threadExtras.hasStatewireThreadExtras(extras)) return null;
|
|
45
|
+
const state = extras.state;
|
|
46
|
+
return statewireState.isDeepAgentStateHydrated(state) ? state.driver ?? null : null;
|
|
47
|
+
});
|
|
48
|
+
return require$$0.useMemo(() => parseThreadDriver(raw), [raw]);
|
|
49
|
+
};
|
|
50
|
+
const useDrivingOn = (here) => {
|
|
51
|
+
const driver = useThreadDriver();
|
|
52
|
+
const [, rerenderAtExpiry] = require$$0.useReducer((renders) => renders + 1, 0);
|
|
53
|
+
const drivingOn = drivingOnFromDriver({ driver, here, now: Date.now() });
|
|
54
|
+
const expiresAt = drivingOn && driver ? driver.since + THREAD_DRIVER_FRESH_MS : null;
|
|
55
|
+
require$$0.useEffect(() => {
|
|
56
|
+
if (expiresAt === null) return;
|
|
57
|
+
const timer = setTimeout(rerenderAtExpiry, Math.max(0, expiresAt - Date.now()) + 1);
|
|
58
|
+
return () => clearTimeout(timer);
|
|
59
|
+
}, [expiresAt]);
|
|
60
|
+
return drivingOn;
|
|
61
|
+
};
|
|
62
|
+
exports.THREAD_DRIVER_FRESH_MS = THREAD_DRIVER_FRESH_MS;
|
|
63
|
+
exports.drivingOnFromDriver = drivingOnFromDriver;
|
|
64
|
+
exports.parseThreadDriver = parseThreadDriver;
|
|
65
|
+
exports.useDrivingOn = useDrivingOn;
|
|
66
|
+
exports.useThreadDriver = useThreadDriver;
|
|
67
|
+
//# sourceMappingURL=thread-driver.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thread-driver.cjs","sources":["../../../../agent-runtime/src/thread-driver.ts"],"sourcesContent":["import { useAuiState } from '@assistant-ui/store';\nimport { useEffect, useMemo, useReducer } from 'react';\nimport { isDeepAgentStateHydrated } from './statewire-state';\nimport { hasStatewireThreadExtras } from './thread-extras';\nimport type { PickupSurface } from './thread-handoff-protocol';\n\n/**\n * The app a person is driving a conversation from: the surface of their newest\n * send, or the device holding the live call. The host projects it as\n * `state.driver` (agora `client_surface.py`); every attached surface shows it\n * (\"Driving on your phone\") so the person always knows where the conversation\n * is moving. A display hint for the person's own devices, never a permission.\n */\nexport type ThreadDriverSurface = PickupSurface | 'office';\n\nexport interface ThreadDriver {\n surface: ThreadDriverSurface;\n mode: 'text' | 'voice';\n /** Epoch ms of the person's newest action there (server clock). */\n since: number;\n}\n\n// The host names Spaces `web`; every other surface by its own name.\nconst WIRE_SURFACES: Record<string, ThreadDriverSurface> = {\n web: 'spaces',\n mobile: 'mobile',\n chrome: 'chrome',\n desktop: 'desktop',\n office: 'office',\n};\n\nconst SURFACE_LABELS: Record<ThreadDriverSurface, string> = {\n spaces: 'Spaces',\n mobile: 'your phone',\n chrome: 'Chrome',\n desktop: 'Athena Desktop',\n office: 'Office',\n};\n\n/** How long after the newest action the chip still says \"Driving on …\". */\nexport const THREAD_DRIVER_FRESH_MS = 15 * 60_000;\n\n/** The wire `driver` as a {@link ThreadDriver}; `null` for absent or malformed. */\nexport const parseThreadDriver = (value: unknown): ThreadDriver | null => {\n if (value === null || typeof value !== 'object') return null;\n const record = value as Record<string, unknown>;\n const surface = typeof record.surface === 'string' ? WIRE_SURFACES[record.surface] : undefined;\n const mode = record.mode === 'voice' ? 'voice' : record.mode === 'text' ? 'text' : null;\n const since = typeof record.since === 'number' && Number.isFinite(record.since) ? record.since : null;\n if (!surface || !mode || since === null) return null;\n return { surface, mode, since };\n};\n\nexport interface DrivingOn {\n surface: ThreadDriverSurface;\n /** \"Driving on your phone\". */\n label: string;\n}\n\n/**\n * What a surface shows about the driver: \"Driving on your phone\" while another\n * surface is the driver and acted recently; `null` when this surface drives,\n * the driver is stale or unknown, or the driver holds a live call (the call\n * banner — \"Live call on your phone · Move here\" — already says where it is).\n */\nexport const drivingOnFromDriver = ({\n driver,\n here,\n now = Date.now(),\n freshMs = THREAD_DRIVER_FRESH_MS,\n}: {\n driver: ThreadDriver | null;\n here: ThreadDriverSurface;\n now?: number;\n freshMs?: number;\n}): DrivingOn | null => {\n if (!driver || driver.surface === here || driver.mode === 'voice') return null;\n if (now - driver.since > freshMs) return null;\n return { surface: driver.surface, label: `Driving on ${SURFACE_LABELS[driver.surface]}` };\n};\n\n/**\n * The thread's driver as the host projects it; `null` until hydrated, when\n * absent, and outside a statewire thread (a read-only transcript, a legacy\n * thread), so a chip can mount anywhere.\n */\nexport const useThreadDriver = (): ThreadDriver | null => {\n // The raw wire object is referentially stable between updates of that key.\n const raw = useAuiState((s) => {\n const extras = s.thread.extras;\n if (!hasStatewireThreadExtras(extras)) return null;\n const state = (extras as { state?: unknown }).state;\n return isDeepAgentStateHydrated(state)\n ? ((state as Record<string, unknown>).driver ?? null)\n : null;\n });\n return useMemo(() => parseThreadDriver(raw), [raw]);\n};\n\n/**\n * \"Driving on …\" for the surface `here`. It goes away by itself once the\n * other surface has been quiet for {@link THREAD_DRIVER_FRESH_MS}: one timer\n * set for that moment, and only while the chip shows, so nothing ticks during\n * a call, on the driving surface, or on a backgrounded phone with no chip.\n */\nexport const useDrivingOn = (here: ThreadDriverSurface): DrivingOn | null => {\n const driver = useThreadDriver();\n const [, rerenderAtExpiry] = useReducer((renders: number) => renders + 1, 0);\n const drivingOn = drivingOnFromDriver({ driver, here, now: Date.now() });\n const expiresAt = drivingOn && driver ? driver.since + THREAD_DRIVER_FRESH_MS : null;\n useEffect(() => {\n if (expiresAt === null) return;\n const timer = setTimeout(rerenderAtExpiry, Math.max(0, expiresAt - Date.now()) + 1);\n return () => clearTimeout(timer);\n }, [expiresAt]);\n return drivingOn;\n};\n"],"names":["useAuiState","hasStatewireThreadExtras","isDeepAgentStateHydrated","useMemo","useReducer","useEffect"],"mappings":";;;;;;AAuBA,MAAM,gBAAqD;AAAA,EACzD,KAAK;AAAA,EACL,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,QAAQ;AACV;AAEA,MAAM,iBAAsD;AAAA,EAC1D,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,QAAQ;AACV;AAGO,MAAM,yBAAyB,KAAK;AAGpC,MAAM,oBAAoB,CAAC,UAAwC;AACxE,MAAI,UAAU,QAAQ,OAAO,UAAU,SAAU,QAAO;AACxD,QAAM,SAAS;AACf,QAAM,UAAU,OAAO,OAAO,YAAY,WAAW,cAAc,OAAO,OAAO,IAAI;AACrF,QAAM,OAAO,OAAO,SAAS,UAAU,UAAU,OAAO,SAAS,SAAS,SAAS;AACnF,QAAM,QAAQ,OAAO,OAAO,UAAU,YAAY,OAAO,SAAS,OAAO,KAAK,IAAI,OAAO,QAAQ;AACjG,MAAI,CAAC,WAAW,CAAC,QAAQ,UAAU,KAAM,QAAO;AAChD,SAAO,EAAE,SAAS,MAAM,MAAA;AAC1B;AAcO,MAAM,sBAAsB,CAAC;AAAA,EAClC;AAAA,EACA;AAAA,EACA,MAAM,KAAK,IAAA;AAAA,EACX,UAAU;AACZ,MAKwB;AACtB,MAAI,CAAC,UAAU,OAAO,YAAY,QAAQ,OAAO,SAAS,QAAS,QAAO;AAC1E,MAAI,MAAM,OAAO,QAAQ,QAAS,QAAO;AACzC,SAAO,EAAE,SAAS,OAAO,SAAS,OAAO,cAAc,eAAe,OAAO,OAAO,CAAC,GAAA;AACvF;AAOO,MAAM,kBAAkB,MAA2B;AAExD,QAAM,MAAMA,kBAAY,CAAC,MAAM;AAC7B,UAAM,SAAS,EAAE,OAAO;AACxB,QAAI,CAACC,aAAAA,yBAAyB,MAAM,EAAG,QAAO;AAC9C,UAAM,QAAS,OAA+B;AAC9C,WAAOC,eAAAA,yBAAyB,KAAK,IAC/B,MAAkC,UAAU,OAC9C;AAAA,EACN,CAAC;AACD,SAAOC,WAAAA,QAAQ,MAAM,kBAAkB,GAAG,GAAG,CAAC,GAAG,CAAC;AACpD;AAQO,MAAM,eAAe,CAAC,SAAgD;AAC3E,QAAM,SAAS,gBAAA;AACf,QAAM,CAAA,EAAG,gBAAgB,IAAIC,WAAAA,WAAW,CAAC,YAAoB,UAAU,GAAG,CAAC;AAC3E,QAAM,YAAY,oBAAoB,EAAE,QAAQ,MAAM,KAAK,KAAK,IAAA,GAAO;AACvE,QAAM,YAAY,aAAa,SAAS,OAAO,QAAQ,yBAAyB;AAChFC,aAAAA,UAAU,MAAM;AACd,QAAI,cAAc,KAAM;AACxB,UAAM,QAAQ,WAAW,kBAAkB,KAAK,IAAI,GAAG,YAAY,KAAK,IAAA,CAAK,IAAI,CAAC;AAClF,WAAO,MAAM,aAAa,KAAK;AAAA,EACjC,GAAG,CAAC,SAAS,CAAC;AACd,SAAO;AACT;;;;;;"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { PickupSurface } from './thread-handoff-protocol';
|
|
2
|
+
/**
|
|
3
|
+
* The app a person is driving a conversation from: the surface of their newest
|
|
4
|
+
* send, or the device holding the live call. The host projects it as
|
|
5
|
+
* `state.driver` (agora `client_surface.py`); every attached surface shows it
|
|
6
|
+
* ("Driving on your phone") so the person always knows where the conversation
|
|
7
|
+
* is moving. A display hint for the person's own devices, never a permission.
|
|
8
|
+
*/
|
|
9
|
+
export type ThreadDriverSurface = PickupSurface | 'office';
|
|
10
|
+
export interface ThreadDriver {
|
|
11
|
+
surface: ThreadDriverSurface;
|
|
12
|
+
mode: 'text' | 'voice';
|
|
13
|
+
/** Epoch ms of the person's newest action there (server clock). */
|
|
14
|
+
since: number;
|
|
15
|
+
}
|
|
16
|
+
/** How long after the newest action the chip still says "Driving on …". */
|
|
17
|
+
export declare const THREAD_DRIVER_FRESH_MS: number;
|
|
18
|
+
/** The wire `driver` as a {@link ThreadDriver}; `null` for absent or malformed. */
|
|
19
|
+
export declare const parseThreadDriver: (value: unknown) => ThreadDriver | null;
|
|
20
|
+
export interface DrivingOn {
|
|
21
|
+
surface: ThreadDriverSurface;
|
|
22
|
+
/** "Driving on your phone". */
|
|
23
|
+
label: string;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* What a surface shows about the driver: "Driving on your phone" while another
|
|
27
|
+
* surface is the driver and acted recently; `null` when this surface drives,
|
|
28
|
+
* the driver is stale or unknown, or the driver holds a live call (the call
|
|
29
|
+
* banner — "Live call on your phone · Move here" — already says where it is).
|
|
30
|
+
*/
|
|
31
|
+
export declare const drivingOnFromDriver: ({ driver, here, now, freshMs, }: {
|
|
32
|
+
driver: ThreadDriver | null;
|
|
33
|
+
here: ThreadDriverSurface;
|
|
34
|
+
now?: number;
|
|
35
|
+
freshMs?: number;
|
|
36
|
+
}) => DrivingOn | null;
|
|
37
|
+
/**
|
|
38
|
+
* The thread's driver as the host projects it; `null` until hydrated, when
|
|
39
|
+
* absent, and outside a statewire thread (a read-only transcript, a legacy
|
|
40
|
+
* thread), so a chip can mount anywhere.
|
|
41
|
+
*/
|
|
42
|
+
export declare const useThreadDriver: () => ThreadDriver | null;
|
|
43
|
+
/**
|
|
44
|
+
* "Driving on …" for the surface `here`. It goes away by itself once the
|
|
45
|
+
* other surface has been quiet for {@link THREAD_DRIVER_FRESH_MS}: one timer
|
|
46
|
+
* set for that moment, and only while the chip shows, so nothing ticks during
|
|
47
|
+
* a call, on the driving surface, or on a backgrounded phone with no chip.
|
|
48
|
+
*/
|
|
49
|
+
export declare const useDrivingOn: (here: ThreadDriverSurface) => DrivingOn | null;
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { useAuiState } from "@assistant-ui/store";
|
|
2
|
+
import { useReducer, useEffect, useMemo } from "react";
|
|
3
|
+
import { isDeepAgentStateHydrated } from "./statewire-state.js";
|
|
4
|
+
import { hasStatewireThreadExtras } from "./thread-extras.js";
|
|
5
|
+
const WIRE_SURFACES = {
|
|
6
|
+
web: "spaces",
|
|
7
|
+
mobile: "mobile",
|
|
8
|
+
chrome: "chrome",
|
|
9
|
+
desktop: "desktop",
|
|
10
|
+
office: "office"
|
|
11
|
+
};
|
|
12
|
+
const SURFACE_LABELS = {
|
|
13
|
+
spaces: "Spaces",
|
|
14
|
+
mobile: "your phone",
|
|
15
|
+
chrome: "Chrome",
|
|
16
|
+
desktop: "Athena Desktop",
|
|
17
|
+
office: "Office"
|
|
18
|
+
};
|
|
19
|
+
const THREAD_DRIVER_FRESH_MS = 15 * 6e4;
|
|
20
|
+
const parseThreadDriver = (value) => {
|
|
21
|
+
if (value === null || typeof value !== "object") return null;
|
|
22
|
+
const record = value;
|
|
23
|
+
const surface = typeof record.surface === "string" ? WIRE_SURFACES[record.surface] : void 0;
|
|
24
|
+
const mode = record.mode === "voice" ? "voice" : record.mode === "text" ? "text" : null;
|
|
25
|
+
const since = typeof record.since === "number" && Number.isFinite(record.since) ? record.since : null;
|
|
26
|
+
if (!surface || !mode || since === null) return null;
|
|
27
|
+
return { surface, mode, since };
|
|
28
|
+
};
|
|
29
|
+
const drivingOnFromDriver = ({
|
|
30
|
+
driver,
|
|
31
|
+
here,
|
|
32
|
+
now = Date.now(),
|
|
33
|
+
freshMs = THREAD_DRIVER_FRESH_MS
|
|
34
|
+
}) => {
|
|
35
|
+
if (!driver || driver.surface === here || driver.mode === "voice") return null;
|
|
36
|
+
if (now - driver.since > freshMs) return null;
|
|
37
|
+
return { surface: driver.surface, label: `Driving on ${SURFACE_LABELS[driver.surface]}` };
|
|
38
|
+
};
|
|
39
|
+
const useThreadDriver = () => {
|
|
40
|
+
const raw = useAuiState((s) => {
|
|
41
|
+
const extras = s.thread.extras;
|
|
42
|
+
if (!hasStatewireThreadExtras(extras)) return null;
|
|
43
|
+
const state = extras.state;
|
|
44
|
+
return isDeepAgentStateHydrated(state) ? state.driver ?? null : null;
|
|
45
|
+
});
|
|
46
|
+
return useMemo(() => parseThreadDriver(raw), [raw]);
|
|
47
|
+
};
|
|
48
|
+
const useDrivingOn = (here) => {
|
|
49
|
+
const driver = useThreadDriver();
|
|
50
|
+
const [, rerenderAtExpiry] = useReducer((renders) => renders + 1, 0);
|
|
51
|
+
const drivingOn = drivingOnFromDriver({ driver, here, now: Date.now() });
|
|
52
|
+
const expiresAt = drivingOn && driver ? driver.since + THREAD_DRIVER_FRESH_MS : null;
|
|
53
|
+
useEffect(() => {
|
|
54
|
+
if (expiresAt === null) return;
|
|
55
|
+
const timer = setTimeout(rerenderAtExpiry, Math.max(0, expiresAt - Date.now()) + 1);
|
|
56
|
+
return () => clearTimeout(timer);
|
|
57
|
+
}, [expiresAt]);
|
|
58
|
+
return drivingOn;
|
|
59
|
+
};
|
|
60
|
+
export {
|
|
61
|
+
THREAD_DRIVER_FRESH_MS,
|
|
62
|
+
drivingOnFromDriver,
|
|
63
|
+
parseThreadDriver,
|
|
64
|
+
useDrivingOn,
|
|
65
|
+
useThreadDriver
|
|
66
|
+
};
|
|
67
|
+
//# sourceMappingURL=thread-driver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thread-driver.js","sources":["../../../../agent-runtime/src/thread-driver.ts"],"sourcesContent":["import { useAuiState } from '@assistant-ui/store';\nimport { useEffect, useMemo, useReducer } from 'react';\nimport { isDeepAgentStateHydrated } from './statewire-state';\nimport { hasStatewireThreadExtras } from './thread-extras';\nimport type { PickupSurface } from './thread-handoff-protocol';\n\n/**\n * The app a person is driving a conversation from: the surface of their newest\n * send, or the device holding the live call. The host projects it as\n * `state.driver` (agora `client_surface.py`); every attached surface shows it\n * (\"Driving on your phone\") so the person always knows where the conversation\n * is moving. A display hint for the person's own devices, never a permission.\n */\nexport type ThreadDriverSurface = PickupSurface | 'office';\n\nexport interface ThreadDriver {\n surface: ThreadDriverSurface;\n mode: 'text' | 'voice';\n /** Epoch ms of the person's newest action there (server clock). */\n since: number;\n}\n\n// The host names Spaces `web`; every other surface by its own name.\nconst WIRE_SURFACES: Record<string, ThreadDriverSurface> = {\n web: 'spaces',\n mobile: 'mobile',\n chrome: 'chrome',\n desktop: 'desktop',\n office: 'office',\n};\n\nconst SURFACE_LABELS: Record<ThreadDriverSurface, string> = {\n spaces: 'Spaces',\n mobile: 'your phone',\n chrome: 'Chrome',\n desktop: 'Athena Desktop',\n office: 'Office',\n};\n\n/** How long after the newest action the chip still says \"Driving on …\". */\nexport const THREAD_DRIVER_FRESH_MS = 15 * 60_000;\n\n/** The wire `driver` as a {@link ThreadDriver}; `null` for absent or malformed. */\nexport const parseThreadDriver = (value: unknown): ThreadDriver | null => {\n if (value === null || typeof value !== 'object') return null;\n const record = value as Record<string, unknown>;\n const surface = typeof record.surface === 'string' ? WIRE_SURFACES[record.surface] : undefined;\n const mode = record.mode === 'voice' ? 'voice' : record.mode === 'text' ? 'text' : null;\n const since = typeof record.since === 'number' && Number.isFinite(record.since) ? record.since : null;\n if (!surface || !mode || since === null) return null;\n return { surface, mode, since };\n};\n\nexport interface DrivingOn {\n surface: ThreadDriverSurface;\n /** \"Driving on your phone\". */\n label: string;\n}\n\n/**\n * What a surface shows about the driver: \"Driving on your phone\" while another\n * surface is the driver and acted recently; `null` when this surface drives,\n * the driver is stale or unknown, or the driver holds a live call (the call\n * banner — \"Live call on your phone · Move here\" — already says where it is).\n */\nexport const drivingOnFromDriver = ({\n driver,\n here,\n now = Date.now(),\n freshMs = THREAD_DRIVER_FRESH_MS,\n}: {\n driver: ThreadDriver | null;\n here: ThreadDriverSurface;\n now?: number;\n freshMs?: number;\n}): DrivingOn | null => {\n if (!driver || driver.surface === here || driver.mode === 'voice') return null;\n if (now - driver.since > freshMs) return null;\n return { surface: driver.surface, label: `Driving on ${SURFACE_LABELS[driver.surface]}` };\n};\n\n/**\n * The thread's driver as the host projects it; `null` until hydrated, when\n * absent, and outside a statewire thread (a read-only transcript, a legacy\n * thread), so a chip can mount anywhere.\n */\nexport const useThreadDriver = (): ThreadDriver | null => {\n // The raw wire object is referentially stable between updates of that key.\n const raw = useAuiState((s) => {\n const extras = s.thread.extras;\n if (!hasStatewireThreadExtras(extras)) return null;\n const state = (extras as { state?: unknown }).state;\n return isDeepAgentStateHydrated(state)\n ? ((state as Record<string, unknown>).driver ?? null)\n : null;\n });\n return useMemo(() => parseThreadDriver(raw), [raw]);\n};\n\n/**\n * \"Driving on …\" for the surface `here`. It goes away by itself once the\n * other surface has been quiet for {@link THREAD_DRIVER_FRESH_MS}: one timer\n * set for that moment, and only while the chip shows, so nothing ticks during\n * a call, on the driving surface, or on a backgrounded phone with no chip.\n */\nexport const useDrivingOn = (here: ThreadDriverSurface): DrivingOn | null => {\n const driver = useThreadDriver();\n const [, rerenderAtExpiry] = useReducer((renders: number) => renders + 1, 0);\n const drivingOn = drivingOnFromDriver({ driver, here, now: Date.now() });\n const expiresAt = drivingOn && driver ? driver.since + THREAD_DRIVER_FRESH_MS : null;\n useEffect(() => {\n if (expiresAt === null) return;\n const timer = setTimeout(rerenderAtExpiry, Math.max(0, expiresAt - Date.now()) + 1);\n return () => clearTimeout(timer);\n }, [expiresAt]);\n return drivingOn;\n};\n"],"names":[],"mappings":";;;;AAuBA,MAAM,gBAAqD;AAAA,EACzD,KAAK;AAAA,EACL,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,QAAQ;AACV;AAEA,MAAM,iBAAsD;AAAA,EAC1D,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,QAAQ;AACV;AAGO,MAAM,yBAAyB,KAAK;AAGpC,MAAM,oBAAoB,CAAC,UAAwC;AACxE,MAAI,UAAU,QAAQ,OAAO,UAAU,SAAU,QAAO;AACxD,QAAM,SAAS;AACf,QAAM,UAAU,OAAO,OAAO,YAAY,WAAW,cAAc,OAAO,OAAO,IAAI;AACrF,QAAM,OAAO,OAAO,SAAS,UAAU,UAAU,OAAO,SAAS,SAAS,SAAS;AACnF,QAAM,QAAQ,OAAO,OAAO,UAAU,YAAY,OAAO,SAAS,OAAO,KAAK,IAAI,OAAO,QAAQ;AACjG,MAAI,CAAC,WAAW,CAAC,QAAQ,UAAU,KAAM,QAAO;AAChD,SAAO,EAAE,SAAS,MAAM,MAAA;AAC1B;AAcO,MAAM,sBAAsB,CAAC;AAAA,EAClC;AAAA,EACA;AAAA,EACA,MAAM,KAAK,IAAA;AAAA,EACX,UAAU;AACZ,MAKwB;AACtB,MAAI,CAAC,UAAU,OAAO,YAAY,QAAQ,OAAO,SAAS,QAAS,QAAO;AAC1E,MAAI,MAAM,OAAO,QAAQ,QAAS,QAAO;AACzC,SAAO,EAAE,SAAS,OAAO,SAAS,OAAO,cAAc,eAAe,OAAO,OAAO,CAAC,GAAA;AACvF;AAOO,MAAM,kBAAkB,MAA2B;AAExD,QAAM,MAAM,YAAY,CAAC,MAAM;AAC7B,UAAM,SAAS,EAAE,OAAO;AACxB,QAAI,CAAC,yBAAyB,MAAM,EAAG,QAAO;AAC9C,UAAM,QAAS,OAA+B;AAC9C,WAAO,yBAAyB,KAAK,IAC/B,MAAkC,UAAU,OAC9C;AAAA,EACN,CAAC;AACD,SAAO,QAAQ,MAAM,kBAAkB,GAAG,GAAG,CAAC,GAAG,CAAC;AACpD;AAQO,MAAM,eAAe,CAAC,SAAgD;AAC3E,QAAM,SAAS,gBAAA;AACf,QAAM,CAAA,EAAG,gBAAgB,IAAI,WAAW,CAAC,YAAoB,UAAU,GAAG,CAAC;AAC3E,QAAM,YAAY,oBAAoB,EAAE,QAAQ,MAAM,KAAK,KAAK,IAAA,GAAO;AACvE,QAAM,YAAY,aAAa,SAAS,OAAO,QAAQ,yBAAyB;AAChF,YAAU,MAAM;AACd,QAAI,cAAc,KAAM;AACxB,UAAM,QAAQ,WAAW,kBAAkB,KAAK,IAAI,GAAG,YAAY,KAAK,IAAA,CAAK,IAAI,CAAC;AAClF,WAAO,MAAM,aAAa,KAAK;AAAA,EACjC,GAAG,CAAC,SAAS,CAAC;AACd,SAAO;AACT;"}
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
import type { CreateThreadHandoffResponse, HandoffOutcome, ThreadHandoffDestination, ThreadHandoffView } from './thread-handoff-protocol';
|
|
2
|
+
type SettledOutcome = Exclude<HandoffOutcome, {
|
|
3
|
+
status: 'cancelled';
|
|
4
|
+
}>;
|
|
5
|
+
export interface ThreadHandoffRun {
|
|
6
|
+
id: number;
|
|
7
|
+
threadId: string;
|
|
8
|
+
destination: ThreadHandoffDestination;
|
|
9
|
+
create: (signal: AbortSignal) => Promise<CreateThreadHandoffResponse>;
|
|
10
|
+
wait: (options: {
|
|
11
|
+
created: CreateThreadHandoffResponse;
|
|
12
|
+
signal: AbortSignal;
|
|
13
|
+
onUpdate: (view: ThreadHandoffView) => void;
|
|
14
|
+
}) => Promise<HandoffOutcome>;
|
|
15
|
+
complete: () => void;
|
|
16
|
+
settle: (outcome: SettledOutcome) => void;
|
|
17
|
+
}
|
|
18
|
+
interface HandoffContext {
|
|
19
|
+
run: ThreadHandoffRun | null;
|
|
20
|
+
created: CreateThreadHandoffResponse | null;
|
|
21
|
+
view: ThreadHandoffView | null;
|
|
22
|
+
startedAt: number;
|
|
23
|
+
outcome: SettledOutcome | null;
|
|
24
|
+
reason: string;
|
|
25
|
+
}
|
|
26
|
+
export declare const threadHandoffFlowMachine: import("xstate").StateMachine<HandoffContext, {
|
|
27
|
+
type: 'START';
|
|
28
|
+
run: ThreadHandoffRun;
|
|
29
|
+
} | {
|
|
30
|
+
type: 'POLL';
|
|
31
|
+
runId: number;
|
|
32
|
+
view: ThreadHandoffView;
|
|
33
|
+
} | {
|
|
34
|
+
type: 'CANCEL';
|
|
35
|
+
} | {
|
|
36
|
+
type: 'RESET';
|
|
37
|
+
}, {
|
|
38
|
+
[x: string]: import("xstate").ActorRefFromLogic<import("xstate").PromiseActorLogic<{
|
|
39
|
+
handoff: {
|
|
40
|
+
handoff_id: string;
|
|
41
|
+
thread_id: string;
|
|
42
|
+
session_asset_id: string | null;
|
|
43
|
+
source: string;
|
|
44
|
+
destination: "chrome" | "desktop" | "excel" | "mobile" | "next" | "powerpoint" | "spaces" | "word";
|
|
45
|
+
office_launch_mode?: "invitation" | "new_document" | null | undefined;
|
|
46
|
+
environment: "localhost" | "production" | "staging";
|
|
47
|
+
state: "acknowledged" | "claimed" | "failed" | "issued" | "launched";
|
|
48
|
+
issued_at: string;
|
|
49
|
+
expires_at: string;
|
|
50
|
+
claimed_at: string | null;
|
|
51
|
+
acknowledged_at: string | null;
|
|
52
|
+
failure_reason: string | null;
|
|
53
|
+
push_delivered: boolean | null;
|
|
54
|
+
claimed_surface?: "chrome" | "desktop" | "mobile" | "spaces" | null | undefined;
|
|
55
|
+
mode?: "text" | "voice" | undefined;
|
|
56
|
+
draft?: string | null | undefined;
|
|
57
|
+
};
|
|
58
|
+
launch: {
|
|
59
|
+
kind: "mobile";
|
|
60
|
+
push_attempted: boolean;
|
|
61
|
+
push_delivered: boolean;
|
|
62
|
+
device_count: number;
|
|
63
|
+
link_url: string;
|
|
64
|
+
scheme_url: string;
|
|
65
|
+
} | {
|
|
66
|
+
kind: "office";
|
|
67
|
+
host: "excel" | "powerpoint" | "word";
|
|
68
|
+
desktop_url: string;
|
|
69
|
+
template_url: string;
|
|
70
|
+
web_url: string;
|
|
71
|
+
marketplace_url: string | null;
|
|
72
|
+
} | {
|
|
73
|
+
kind: "office_invitation";
|
|
74
|
+
host: "excel" | "powerpoint" | "word";
|
|
75
|
+
} | {
|
|
76
|
+
kind: "spaces";
|
|
77
|
+
url: string;
|
|
78
|
+
} | {
|
|
79
|
+
kind: "desktop";
|
|
80
|
+
scheme_url: string;
|
|
81
|
+
download_url: string;
|
|
82
|
+
deployment_url: string;
|
|
83
|
+
protocol_version: 1;
|
|
84
|
+
} | {
|
|
85
|
+
kind: "chrome";
|
|
86
|
+
} | {
|
|
87
|
+
kind: "next";
|
|
88
|
+
};
|
|
89
|
+
}, {
|
|
90
|
+
run: ThreadHandoffRun;
|
|
91
|
+
}, import("xstate").EventObject>> | import("xstate").ActorRefFromLogic<import("xstate").PromiseActorLogic<HandoffOutcome, {
|
|
92
|
+
run: ThreadHandoffRun;
|
|
93
|
+
created: CreateThreadHandoffResponse;
|
|
94
|
+
onUpdate: (view: ThreadHandoffView) => void;
|
|
95
|
+
}, import("xstate").EventObject>> | undefined;
|
|
96
|
+
}, {
|
|
97
|
+
src: "create";
|
|
98
|
+
logic: import("xstate").PromiseActorLogic<{
|
|
99
|
+
handoff: {
|
|
100
|
+
handoff_id: string;
|
|
101
|
+
thread_id: string;
|
|
102
|
+
session_asset_id: string | null;
|
|
103
|
+
source: string;
|
|
104
|
+
destination: "chrome" | "desktop" | "excel" | "mobile" | "next" | "powerpoint" | "spaces" | "word";
|
|
105
|
+
office_launch_mode?: "invitation" | "new_document" | null | undefined;
|
|
106
|
+
environment: "localhost" | "production" | "staging";
|
|
107
|
+
state: "acknowledged" | "claimed" | "failed" | "issued" | "launched";
|
|
108
|
+
issued_at: string;
|
|
109
|
+
expires_at: string;
|
|
110
|
+
claimed_at: string | null;
|
|
111
|
+
acknowledged_at: string | null;
|
|
112
|
+
failure_reason: string | null;
|
|
113
|
+
push_delivered: boolean | null;
|
|
114
|
+
claimed_surface?: "chrome" | "desktop" | "mobile" | "spaces" | null | undefined;
|
|
115
|
+
mode?: "text" | "voice" | undefined;
|
|
116
|
+
draft?: string | null | undefined;
|
|
117
|
+
};
|
|
118
|
+
launch: {
|
|
119
|
+
kind: "mobile";
|
|
120
|
+
push_attempted: boolean;
|
|
121
|
+
push_delivered: boolean;
|
|
122
|
+
device_count: number;
|
|
123
|
+
link_url: string;
|
|
124
|
+
scheme_url: string;
|
|
125
|
+
} | {
|
|
126
|
+
kind: "office";
|
|
127
|
+
host: "excel" | "powerpoint" | "word";
|
|
128
|
+
desktop_url: string;
|
|
129
|
+
template_url: string;
|
|
130
|
+
web_url: string;
|
|
131
|
+
marketplace_url: string | null;
|
|
132
|
+
} | {
|
|
133
|
+
kind: "office_invitation";
|
|
134
|
+
host: "excel" | "powerpoint" | "word";
|
|
135
|
+
} | {
|
|
136
|
+
kind: "spaces";
|
|
137
|
+
url: string;
|
|
138
|
+
} | {
|
|
139
|
+
kind: "desktop";
|
|
140
|
+
scheme_url: string;
|
|
141
|
+
download_url: string;
|
|
142
|
+
deployment_url: string;
|
|
143
|
+
protocol_version: 1;
|
|
144
|
+
} | {
|
|
145
|
+
kind: "chrome";
|
|
146
|
+
} | {
|
|
147
|
+
kind: "next";
|
|
148
|
+
};
|
|
149
|
+
}, {
|
|
150
|
+
run: ThreadHandoffRun;
|
|
151
|
+
}, import("xstate").EventObject>;
|
|
152
|
+
id: string | undefined;
|
|
153
|
+
} | {
|
|
154
|
+
src: "wait";
|
|
155
|
+
logic: import("xstate").PromiseActorLogic<HandoffOutcome, {
|
|
156
|
+
run: ThreadHandoffRun;
|
|
157
|
+
created: CreateThreadHandoffResponse;
|
|
158
|
+
onUpdate: (view: ThreadHandoffView) => void;
|
|
159
|
+
}, import("xstate").EventObject>;
|
|
160
|
+
id: string | undefined;
|
|
161
|
+
}, never, never, never, "acknowledged" | "creating" | "failed" | "idle" | "timeout" | "waiting", string, import("xstate").NonReducibleUnknown, import("xstate").NonReducibleUnknown, import("xstate").EventObject, import("xstate").MetaObject, {
|
|
162
|
+
id: "thread-handoff";
|
|
163
|
+
states: {
|
|
164
|
+
readonly idle: {};
|
|
165
|
+
readonly creating: {};
|
|
166
|
+
readonly waiting: {};
|
|
167
|
+
readonly acknowledged: {};
|
|
168
|
+
readonly failed: {};
|
|
169
|
+
readonly timeout: {};
|
|
170
|
+
};
|
|
171
|
+
}>;
|
|
172
|
+
export {};
|