@athenaintel/react 0.28.1 → 0.32.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 +479 -10
- package/dist/agent-runtime/src/asset-attachment.cjs.map +1 -0
- package/dist/agent-runtime/src/asset-attachment.js.map +1 -0
- package/dist/agent-runtime/src/athena-asset-drag.cjs +44 -0
- package/dist/agent-runtime/src/athena-asset-drag.cjs.map +1 -0
- package/dist/agent-runtime/src/athena-asset-drag.js +44 -0
- package/dist/agent-runtime/src/athena-asset-drag.js.map +1 -0
- package/dist/agent-runtime/src/auth-denial.cjs.map +1 -0
- package/dist/agent-runtime/src/auth-denial.js.map +1 -0
- package/dist/agent-runtime/src/client-tool-bridge.cjs.map +1 -0
- package/dist/agent-runtime/src/client-tool-bridge.js.map +1 -0
- package/dist/agent-runtime/src/client-tools.cjs.map +1 -0
- package/dist/agent-runtime/src/client-tools.js.map +1 -0
- package/dist/agent-runtime/src/composer-markdown.cjs +124 -0
- package/dist/agent-runtime/src/composer-markdown.cjs.map +1 -0
- package/dist/agent-runtime/src/composer-markdown.js +124 -0
- package/dist/agent-runtime/src/composer-markdown.js.map +1 -0
- package/dist/agent-runtime/src/config-mutations.cjs +59 -0
- package/dist/agent-runtime/src/config-mutations.cjs.map +1 -0
- package/dist/agent-runtime/src/config-mutations.js +59 -0
- package/dist/agent-runtime/src/config-mutations.js.map +1 -0
- package/dist/agent-runtime/src/conversation-index.cjs.map +1 -0
- package/dist/agent-runtime/src/conversation-index.js.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/conversation-list.cjs +36 -0
- package/dist/agent-runtime/src/conversation-list.cjs.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/conversation-list.js +36 -0
- package/dist/agent-runtime/src/conversation-list.js.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/deep-agent-transport-recipe.cjs +5 -3
- package/dist/agent-runtime/src/deep-agent-transport-recipe.cjs.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/deep-agent-transport-recipe.js +6 -4
- package/dist/agent-runtime/src/deep-agent-transport-recipe.js.map +1 -0
- package/dist/agent-runtime/src/edit-command.cjs.map +1 -0
- package/dist/agent-runtime/src/edit-command.js.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/errors.cjs +23 -0
- package/dist/agent-runtime/src/errors.cjs.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/errors.js +23 -0
- package/dist/agent-runtime/src/errors.js.map +1 -0
- package/dist/agent-runtime/src/execute-output.cjs +41 -0
- package/dist/agent-runtime/src/execute-output.cjs.map +1 -0
- package/dist/agent-runtime/src/execute-output.js +41 -0
- package/dist/agent-runtime/src/execute-output.js.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/generated/runconfig-contract.cjs +16 -2
- package/dist/agent-runtime/src/generated/runconfig-contract.cjs.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/generated/runconfig-contract.js +16 -2
- package/dist/agent-runtime/src/generated/runconfig-contract.js.map +1 -0
- package/dist/agent-runtime/src/github-wake-event.cjs.map +1 -0
- package/dist/agent-runtime/src/github-wake-event.js.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/interrupts.cjs +24 -1
- package/dist/agent-runtime/src/interrupts.cjs.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/interrupts.js +24 -1
- package/dist/agent-runtime/src/interrupts.js.map +1 -0
- package/dist/agent-runtime/src/message-author.cjs.map +1 -0
- package/dist/agent-runtime/src/message-author.js.map +1 -0
- package/dist/agent-runtime/src/message-window.cjs.map +1 -0
- package/dist/agent-runtime/src/message-window.js.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/messages.cjs +8 -4
- package/dist/agent-runtime/src/messages.cjs.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/messages.js +6 -2
- package/dist/agent-runtime/src/messages.js.map +1 -0
- package/dist/agent-runtime/src/model-context.cjs.map +1 -0
- package/dist/agent-runtime/src/model-context.js.map +1 -0
- package/dist/agent-runtime/src/optimistic-content.cjs.map +1 -0
- package/dist/agent-runtime/src/optimistic-content.js.map +1 -0
- package/dist/agent-runtime/src/protocol.cjs.map +1 -0
- package/dist/agent-runtime/src/protocol.js.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/queue.cjs +23 -2
- package/dist/agent-runtime/src/queue.cjs.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/queue.js +23 -2
- package/dist/agent-runtime/src/queue.js.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/quota-safe-local-storage-session.cjs +71 -13
- package/dist/agent-runtime/src/quota-safe-local-storage-session.cjs.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/quota-safe-local-storage-session.js +73 -15
- package/dist/agent-runtime/src/quota-safe-local-storage-session.js.map +1 -0
- package/dist/agent-runtime/src/runtime-messages.cjs.map +1 -0
- package/dist/agent-runtime/src/runtime-messages.js.map +1 -0
- package/dist/agent-runtime/src/screen-point.cjs.map +1 -0
- package/dist/agent-runtime/src/screen-point.js.map +1 -0
- package/dist/agent-runtime/src/send-recovery.cjs.map +1 -0
- package/dist/agent-runtime/src/send-recovery.js.map +1 -0
- package/dist/agent-runtime/src/statewire-attach-observer.cjs.map +1 -0
- package/dist/agent-runtime/src/statewire-attach-observer.js.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/statewire-state.cjs +8 -0
- package/dist/agent-runtime/src/statewire-state.cjs.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/statewire-state.js +8 -0
- package/dist/agent-runtime/src/statewire-state.js.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/statewire-suspended.cjs +4 -0
- package/dist/agent-runtime/src/statewire-suspended.cjs.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/statewire-suspended.js +4 -0
- package/dist/agent-runtime/src/statewire-suspended.js.map +1 -0
- package/dist/agent-runtime/src/statewire-transport.cjs +43 -0
- package/dist/agent-runtime/src/statewire-transport.cjs.map +1 -0
- package/dist/agent-runtime/src/statewire-transport.js +43 -0
- package/dist/agent-runtime/src/statewire-transport.js.map +1 -0
- package/dist/agent-runtime/src/streaming-markdown.cjs.map +1 -0
- package/dist/agent-runtime/src/streaming-markdown.js.map +1 -0
- package/dist/agent-runtime/src/subscription-wake-event.cjs +252 -0
- package/dist/agent-runtime/src/subscription-wake-event.cjs.map +1 -0
- package/dist/agent-runtime/src/subscription-wake-event.js +252 -0
- package/dist/agent-runtime/src/subscription-wake-event.js.map +1 -0
- package/dist/agent-runtime/src/thread-extras.cjs.map +1 -0
- package/dist/agent-runtime/src/thread-extras.js.map +1 -0
- package/dist/agent-runtime/src/thread-snapshot-cache.cjs.map +1 -0
- package/dist/agent-runtime/src/thread-snapshot-cache.js.map +1 -0
- package/dist/agent-runtime/src/thread-status.cjs.map +1 -0
- package/dist/agent-runtime/src/thread-status.js.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/tool-metadata.cjs +304 -9
- package/dist/agent-runtime/src/tool-metadata.cjs.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/tool-metadata.js +304 -9
- package/dist/agent-runtime/src/tool-metadata.js.map +1 -0
- package/dist/agent-runtime/src/tool-names.cjs +5 -0
- package/dist/agent-runtime/src/tool-names.cjs.map +1 -0
- package/dist/agent-runtime/src/tool-names.js +5 -0
- package/dist/agent-runtime/src/tool-names.js.map +1 -0
- package/dist/agent-runtime/src/tool-outputs.cjs.map +1 -0
- package/dist/agent-runtime/src/tool-outputs.js.map +1 -0
- package/dist/agent-runtime/src/tool-result.cjs.map +1 -0
- package/dist/agent-runtime/src/tool-result.js.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/use-conversation-list.cjs +33 -22
- package/dist/agent-runtime/src/use-conversation-list.cjs.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/use-conversation-list.js +34 -23
- package/dist/agent-runtime/src/use-conversation-list.js.map +1 -0
- package/dist/agent-runtime/src/use-deep-agent-config.cjs +129 -0
- package/dist/agent-runtime/src/use-deep-agent-config.cjs.map +1 -0
- package/dist/agent-runtime/src/use-deep-agent-config.js +129 -0
- package/dist/agent-runtime/src/use-deep-agent-config.js.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/use-deep-agent-edit-submit.cjs +2 -0
- package/dist/agent-runtime/src/use-deep-agent-edit-submit.cjs.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/use-deep-agent-edit-submit.js +2 -0
- package/dist/agent-runtime/src/use-deep-agent-edit-submit.js.map +1 -0
- package/dist/agent-runtime/src/use-deep-agent-runtime.cjs.map +1 -0
- package/dist/agent-runtime/src/use-deep-agent-runtime.js.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/use-deep-agent-thread.cjs +1 -0
- package/dist/agent-runtime/src/use-deep-agent-thread.cjs.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/use-deep-agent-thread.js +2 -1
- package/dist/agent-runtime/src/use-deep-agent-thread.js.map +1 -0
- package/dist/agent-runtime/src/use-deep-agent-window-sync.cjs.map +1 -0
- package/dist/agent-runtime/src/use-deep-agent-window-sync.js.map +1 -0
- package/dist/agent-runtime/src/use-historical-edit-attachments.cjs +52 -0
- package/dist/agent-runtime/src/use-historical-edit-attachments.cjs.map +1 -0
- package/dist/agent-runtime/src/use-historical-edit-attachments.js +52 -0
- package/dist/agent-runtime/src/use-historical-edit-attachments.js.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/voice-presentation.cjs +14 -0
- package/dist/agent-runtime/src/voice-presentation.cjs.map +1 -0
- package/dist/{packages/agent-runtime → agent-runtime}/src/voice-presentation.js +14 -0
- package/dist/agent-runtime/src/voice-presentation.js.map +1 -0
- package/dist/agent-runtime/src/voice-turn-grouping.cjs.map +1 -0
- package/dist/agent-runtime/src/voice-turn-grouping.js.map +1 -0
- package/dist/assets/AthenaAssetEmbed.cjs +13 -2
- package/dist/assets/AthenaAssetEmbed.cjs.map +1 -1
- package/dist/assets/AthenaAssetEmbed.d.ts +10 -0
- package/dist/assets/AthenaAssetEmbed.js +14 -3
- package/dist/assets/AthenaAssetEmbed.js.map +1 -1
- package/dist/assets/AthenaLayout.cjs +97 -31
- package/dist/assets/AthenaLayout.cjs.map +1 -1
- package/dist/assets/AthenaLayout.d.ts +13 -0
- package/dist/assets/AthenaLayout.js +98 -32
- package/dist/assets/AthenaLayout.js.map +1 -1
- package/dist/assets/asset-embed-messages.cjs +6 -0
- package/dist/assets/asset-embed-messages.cjs.map +1 -1
- package/dist/assets/asset-embed-messages.d.ts +13 -0
- package/dist/assets/asset-embed-messages.js +6 -0
- package/dist/assets/asset-embed-messages.js.map +1 -1
- package/dist/assets/asset-panel-store.cjs +68 -32
- package/dist/assets/asset-panel-store.cjs.map +1 -1
- package/dist/assets/asset-panel-store.d.ts +47 -1
- package/dist/assets/asset-panel-store.js +68 -32
- package/dist/assets/asset-panel-store.js.map +1 -1
- package/dist/assets/use-asset-embed.cjs +29 -8
- package/dist/assets/use-asset-embed.cjs.map +1 -1
- package/dist/assets/use-asset-embed.d.ts +7 -0
- package/dist/assets/use-asset-embed.js +29 -8
- package/dist/assets/use-asset-embed.js.map +1 -1
- package/dist/catalog/chat-pickers.cjs +152 -0
- package/dist/catalog/chat-pickers.cjs.map +1 -0
- package/dist/catalog/chat-pickers.d.ts +22 -0
- package/dist/catalog/chat-pickers.js +152 -0
- package/dist/catalog/chat-pickers.js.map +1 -0
- package/dist/catalog/runtime-catalog.cjs +181 -0
- package/dist/catalog/runtime-catalog.cjs.map +1 -0
- package/dist/catalog/runtime-catalog.d.ts +100 -0
- package/dist/catalog/runtime-catalog.js +181 -0
- package/dist/catalog/runtime-catalog.js.map +1 -0
- package/dist/chat/AthenaChat.cjs +122 -67
- package/dist/chat/AthenaChat.cjs.map +1 -1
- package/dist/chat/AthenaChat.d.ts +21 -4
- package/dist/chat/AthenaChat.js +124 -69
- package/dist/chat/AthenaChat.js.map +1 -1
- package/dist/chat/StatewireApprovalCard.cjs +38 -37
- package/dist/chat/StatewireApprovalCard.cjs.map +1 -1
- package/dist/chat/StatewireApprovalCard.d.ts +2 -0
- package/dist/chat/StatewireApprovalCard.js +39 -38
- package/dist/chat/StatewireApprovalCard.js.map +1 -1
- package/dist/chat/StatewireClientToolBridge.cjs +2 -2
- package/dist/chat/StatewireClientToolBridge.js +2 -2
- package/dist/chat/StatewireQueuedMessages.cjs +15 -12
- package/dist/chat/StatewireQueuedMessages.cjs.map +1 -1
- package/dist/chat/StatewireQueuedMessages.d.ts +22 -2
- package/dist/chat/StatewireQueuedMessages.js +15 -12
- package/dist/chat/StatewireQueuedMessages.js.map +1 -1
- package/dist/chat/StatewireRunRefusalNotice.cjs +48 -0
- package/dist/chat/StatewireRunRefusalNotice.cjs.map +1 -0
- package/dist/chat/StatewireRunRefusalNotice.d.ts +25 -0
- package/dist/chat/StatewireRunRefusalNotice.js +48 -0
- package/dist/chat/StatewireRunRefusalNotice.js.map +1 -0
- package/dist/chat/WaitingOnYouBanner.cjs +2 -2
- package/dist/chat/WaitingOnYouBanner.js +2 -2
- package/dist/chat/athena-citation-links.cjs +19 -15
- package/dist/chat/athena-citation-links.cjs.map +1 -1
- package/dist/chat/athena-citation-links.js +19 -15
- package/dist/chat/athena-citation-links.js.map +1 -1
- package/dist/chat/run-activity.cjs +9 -1
- package/dist/chat/run-activity.cjs.map +1 -1
- package/dist/chat/run-activity.d.ts +6 -0
- package/dist/chat/run-activity.js +10 -2
- package/dist/chat/run-activity.js.map +1 -1
- package/dist/chat/statewire-banners.cjs +30 -1
- package/dist/chat/statewire-banners.cjs.map +1 -1
- package/dist/chat/statewire-banners.d.ts +20 -1
- package/dist/chat/statewire-banners.js +32 -3
- package/dist/chat/statewire-banners.js.map +1 -1
- package/dist/chat/statewire-client-tools.cjs +1 -1
- package/dist/chat/statewire-client-tools.js +1 -1
- package/dist/chat/super-grouping/CollapsibleGroup.cjs +1 -1
- package/dist/chat/super-grouping/CollapsibleGroup.cjs.map +1 -1
- package/dist/chat/super-grouping/CollapsibleGroup.js +1 -1
- package/dist/chat/super-grouping/CollapsibleGroup.js.map +1 -1
- package/dist/chat/super-grouping/SuperGroupingCard.cjs +38 -16
- package/dist/chat/super-grouping/SuperGroupingCard.cjs.map +1 -1
- package/dist/chat/super-grouping/SuperGroupingCard.d.ts +21 -4
- package/dist/chat/super-grouping/SuperGroupingCard.js +39 -17
- package/dist/chat/super-grouping/SuperGroupingCard.js.map +1 -1
- package/dist/chat/super-grouping/SuperGroupingTranscript.cjs +377 -0
- package/dist/chat/super-grouping/SuperGroupingTranscript.cjs.map +1 -0
- package/dist/chat/super-grouping/SuperGroupingTranscript.d.ts +31 -0
- package/dist/chat/super-grouping/SuperGroupingTranscript.js +377 -0
- package/dist/chat/super-grouping/SuperGroupingTranscript.js.map +1 -0
- package/dist/chat/super-grouping/ToolTimeline.cjs +13 -2
- package/dist/chat/super-grouping/ToolTimeline.cjs.map +1 -1
- package/dist/chat/super-grouping/ToolTimeline.d.ts +10 -3
- package/dist/chat/super-grouping/ToolTimeline.js +13 -2
- package/dist/chat/super-grouping/ToolTimeline.js.map +1 -1
- package/dist/chat/super-grouping/activity-timeline.cjs +69 -29
- package/dist/chat/super-grouping/activity-timeline.cjs.map +1 -1
- package/dist/chat/super-grouping/activity-timeline.d.ts +60 -9
- package/dist/chat/super-grouping/activity-timeline.js +70 -30
- package/dist/chat/super-grouping/activity-timeline.js.map +1 -1
- package/dist/chat/super-grouping/index.cjs +14 -0
- package/dist/chat/super-grouping/index.cjs.map +1 -1
- package/dist/chat/super-grouping/index.d.ts +7 -2
- package/dist/chat/super-grouping/index.js +16 -2
- package/dist/chat/super-grouping/index.js.map +1 -1
- package/dist/chat/super-grouping/timeline-step.cjs +14 -5
- package/dist/chat/super-grouping/timeline-step.cjs.map +1 -1
- package/dist/chat/super-grouping/timeline-step.d.ts +10 -1
- package/dist/chat/super-grouping/timeline-step.js +15 -6
- package/dist/chat/super-grouping/timeline-step.js.map +1 -1
- package/dist/chat/super-grouping/toolkit-map.cjs +1 -0
- package/dist/chat/super-grouping/toolkit-map.cjs.map +1 -1
- package/dist/chat/super-grouping/toolkit-map.js +1 -0
- package/dist/chat/super-grouping/toolkit-map.js.map +1 -1
- package/dist/chat/super-grouping/turn-segments.cjs +82 -0
- package/dist/chat/super-grouping/turn-segments.cjs.map +1 -0
- package/dist/chat/super-grouping/turn-segments.d.ts +69 -0
- package/dist/chat/super-grouping/turn-segments.js +82 -0
- package/dist/chat/super-grouping/turn-segments.js.map +1 -0
- package/dist/chat/super-grouping/turn-timing.cjs +110 -0
- package/dist/chat/super-grouping/turn-timing.cjs.map +1 -0
- package/dist/chat/super-grouping/turn-timing.d.ts +52 -0
- package/dist/chat/super-grouping/turn-timing.js +110 -0
- package/dist/chat/super-grouping/turn-timing.js.map +1 -0
- package/dist/chat/tiptap-text.cjs +1 -1
- package/dist/chat/tiptap-text.js +1 -1
- package/dist/chat/use-athena-run-live.cjs +1 -1
- package/dist/chat/use-athena-run-live.js +1 -1
- package/dist/chat/use-statewire-approval-request.cjs +73 -4
- package/dist/chat/use-statewire-approval-request.cjs.map +1 -1
- package/dist/chat/use-statewire-approval-request.js +74 -5
- package/dist/chat/use-statewire-approval-request.js.map +1 -1
- package/dist/chat-ui/composer/composer-message.cjs +284 -0
- package/dist/chat-ui/composer/composer-message.cjs.map +1 -0
- package/dist/chat-ui/composer/composer-message.d.ts +152 -0
- package/dist/chat-ui/composer/composer-message.js +284 -0
- package/dist/chat-ui/composer/composer-message.js.map +1 -0
- package/dist/chat-ui/composer/tiptap-composer.cjs +97 -15
- package/dist/chat-ui/composer/tiptap-composer.cjs.map +1 -1
- package/dist/chat-ui/composer/tiptap-composer.d.ts +34 -6
- package/dist/chat-ui/composer/tiptap-composer.js +97 -15
- package/dist/chat-ui/composer/tiptap-composer.js.map +1 -1
- package/dist/chat-ui/index.cjs +4 -1
- package/dist/chat-ui/index.cjs.map +1 -1
- package/dist/chat-ui/index.d.ts +3 -2
- package/dist/chat-ui/index.js +5 -2
- package/dist/chat-ui/index.js.map +1 -1
- package/dist/chat-ui/mentions/mention-chip.cjs +31 -3
- package/dist/chat-ui/mentions/mention-chip.cjs.map +1 -1
- package/dist/chat-ui/mentions/mention-chip.d.ts +2 -5
- package/dist/chat-ui/mentions/mention-chip.js +33 -5
- package/dist/chat-ui/mentions/mention-chip.js.map +1 -1
- package/dist/chat-ui/mentions/mention-extension.cjs +9 -3
- package/dist/chat-ui/mentions/mention-extension.cjs.map +1 -1
- package/dist/chat-ui/mentions/mention-extension.js +9 -3
- package/dist/chat-ui/mentions/mention-extension.js.map +1 -1
- package/dist/chat-ui/mentions/suggestions/components/mention-suggestion-popup.cjs +3 -1
- package/dist/chat-ui/mentions/suggestions/components/mention-suggestion-popup.cjs.map +1 -1
- package/dist/chat-ui/mentions/suggestions/components/mention-suggestion-popup.js +3 -1
- package/dist/chat-ui/mentions/suggestions/components/mention-suggestion-popup.js.map +1 -1
- package/dist/chat-ui/mentions/suggestions/data/sources/index.cjs +65 -19
- package/dist/chat-ui/mentions/suggestions/data/sources/index.cjs.map +1 -1
- package/dist/chat-ui/mentions/suggestions/data/sources/index.d.ts +15 -0
- package/dist/chat-ui/mentions/suggestions/data/sources/index.js +67 -21
- package/dist/chat-ui/mentions/suggestions/data/sources/index.js.map +1 -1
- package/dist/chat-ui/mentions/suggestions/data/use-mention-suggestions.cjs +4 -2
- 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 +2 -1
- package/dist/chat-ui/mentions/suggestions/data/use-mention-suggestions.js +5 -3
- package/dist/chat-ui/mentions/suggestions/data/use-mention-suggestions.js.map +1 -1
- package/dist/chat-ui/mentions/use-account-workspace-id.cjs +61 -0
- package/dist/chat-ui/mentions/use-account-workspace-id.cjs.map +1 -0
- package/dist/chat-ui/mentions/use-account-workspace-id.d.ts +3 -0
- package/dist/chat-ui/mentions/use-account-workspace-id.js +61 -0
- package/dist/chat-ui/mentions/use-account-workspace-id.js.map +1 -0
- package/dist/chat-ui/mentions/use-member-avatar.cjs +75 -0
- package/dist/chat-ui/mentions/use-member-avatar.cjs.map +1 -0
- package/dist/chat-ui/mentions/use-member-avatar.d.ts +2 -0
- package/dist/chat-ui/mentions/use-member-avatar.js +75 -0
- package/dist/chat-ui/mentions/use-member-avatar.js.map +1 -0
- package/dist/chat-ui/messages/message-components.cjs +30 -10
- package/dist/chat-ui/messages/message-components.cjs.map +1 -1
- package/dist/chat-ui/messages/message-components.d.ts +21 -1
- package/dist/chat-ui/messages/message-components.js +30 -10
- package/dist/chat-ui/messages/message-components.js.map +1 -1
- package/dist/chat-ui/messages/runtime-message.cjs +1 -1
- package/dist/chat-ui/messages/runtime-message.js +1 -1
- package/dist/chat-ui/messages/statewire-continue-run.cjs +5 -5
- package/dist/chat-ui/messages/statewire-continue-run.js +5 -5
- package/dist/chat-ui/messages/user-edit-composer.cjs +1 -1
- package/dist/chat-ui/messages/user-edit-composer.js +1 -1
- package/dist/chat-ui/messages/wake-marker.cjs +39 -4
- package/dist/chat-ui/messages/wake-marker.cjs.map +1 -1
- package/dist/chat-ui/messages/wake-marker.d.ts +16 -5
- package/dist/chat-ui/messages/wake-marker.js +40 -5
- package/dist/chat-ui/messages/wake-marker.js.map +1 -1
- package/dist/chat-ui/rich-text/chat-message-body.cjs +12 -8
- package/dist/chat-ui/rich-text/chat-message-body.cjs.map +1 -1
- package/dist/chat-ui/rich-text/chat-message-body.d.ts +6 -1
- package/dist/chat-ui/rich-text/chat-message-body.js +13 -9
- package/dist/chat-ui/rich-text/chat-message-body.js.map +1 -1
- package/dist/chat-ui/rich-text/chat-text-schema.cjs +64 -6
- package/dist/chat-ui/rich-text/chat-text-schema.cjs.map +1 -1
- package/dist/chat-ui/rich-text/chat-text-schema.d.ts +5 -0
- package/dist/chat-ui/rich-text/chat-text-schema.js +66 -8
- package/dist/chat-ui/rich-text/chat-text-schema.js.map +1 -1
- package/dist/chat-ui/statewire.cjs +1 -1
- package/dist/chat-ui/statewire.d.ts +1 -1
- package/dist/chat-ui/statewire.js +1 -1
- package/dist/chat-ui/thread/statewire-history-edge.cjs +2 -2
- package/dist/chat-ui/thread/statewire-history-edge.js +2 -2
- package/dist/collab/client.cjs +282 -16
- package/dist/collab/client.cjs.map +1 -1
- package/dist/collab/client.d.ts +127 -2
- package/dist/collab/client.js +285 -20
- package/dist/collab/client.js.map +1 -1
- package/dist/collab/index.cjs +2 -0
- package/dist/collab/index.cjs.map +1 -1
- package/dist/collab/index.d.ts +1 -1
- package/dist/collab/index.js +3 -1
- package/dist/composer/AttachmentContext.cjs +38 -12
- package/dist/composer/AttachmentContext.cjs.map +1 -1
- package/dist/composer/AttachmentContext.d.ts +22 -1
- package/dist/composer/AttachmentContext.js +40 -14
- package/dist/composer/AttachmentContext.js.map +1 -1
- package/dist/composer/QuoteContext.cjs +80 -28
- package/dist/composer/QuoteContext.cjs.map +1 -1
- package/dist/composer/QuoteContext.d.ts +35 -6
- package/dist/composer/QuoteContext.js +82 -30
- package/dist/composer/QuoteContext.js.map +1 -1
- package/dist/composer/build-composed-message.cjs +27 -0
- package/dist/composer/build-composed-message.cjs.map +1 -1
- package/dist/composer/build-composed-message.d.ts +21 -0
- package/dist/composer/build-composed-message.js +28 -1
- package/dist/composer/build-composed-message.js.map +1 -1
- package/dist/composer/composer-handoff.cjs +13 -1
- package/dist/composer/composer-handoff.cjs.map +1 -1
- package/dist/composer/composer-handoff.d.ts +12 -0
- package/dist/composer/composer-handoff.js +15 -3
- package/dist/composer/composer-handoff.js.map +1 -1
- package/dist/composer/index.d.ts +6 -3
- package/dist/composer/useReadComposerDraft.cjs +16 -0
- package/dist/composer/useReadComposerDraft.cjs.map +1 -0
- package/dist/composer/useReadComposerDraft.d.ts +6 -0
- package/dist/composer/useReadComposerDraft.js +16 -0
- package/dist/composer/useReadComposerDraft.js.map +1 -0
- package/dist/diagnostics/athena-diagnostics.cjs.map +1 -1
- package/dist/diagnostics/athena-diagnostics.d.ts +3 -1
- package/dist/diagnostics/athena-diagnostics.js.map +1 -1
- package/dist/diagnostics/errors.cjs +6 -0
- package/dist/diagnostics/errors.cjs.map +1 -1
- package/dist/diagnostics/errors.d.ts +6 -0
- package/dist/diagnostics/errors.js +6 -0
- package/dist/diagnostics/errors.js.map +1 -1
- package/dist/index.cjs +163 -7
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +55 -12
- package/dist/index.js +170 -14
- package/dist/index.js.map +1 -1
- package/dist/lib/owner-document.cjs +32 -0
- package/dist/lib/owner-document.cjs.map +1 -0
- package/dist/lib/owner-document.d.ts +17 -0
- package/dist/lib/owner-document.js +32 -0
- package/dist/lib/owner-document.js.map +1 -0
- package/dist/lib/portal-surface.cjs +55 -0
- package/dist/lib/portal-surface.cjs.map +1 -0
- package/dist/lib/portal-surface.d.ts +37 -0
- package/dist/lib/portal-surface.js +55 -0
- package/dist/lib/portal-surface.js.map +1 -0
- package/dist/lib/use-athena-rest-query.cjs +34 -0
- package/dist/lib/use-athena-rest-query.cjs.map +1 -0
- package/dist/lib/use-athena-rest-query.d.ts +31 -0
- package/dist/lib/use-athena-rest-query.js +34 -0
- package/dist/lib/use-athena-rest-query.js.map +1 -0
- package/dist/provider/AthenaProvider.cjs +70 -10
- package/dist/provider/AthenaProvider.cjs.map +1 -1
- package/dist/provider/AthenaProvider.d.ts +27 -2
- package/dist/provider/AthenaProvider.js +74 -14
- package/dist/provider/AthenaProvider.js.map +1 -1
- package/dist/provider/citation-links.d.ts +10 -2
- package/dist/{packages/react → react}/package.json.cjs +1 -1
- package/dist/{packages/react → react}/package.json.js +1 -1
- package/dist/runtime/StatewireModelLaneSync.cjs +96 -0
- package/dist/runtime/StatewireModelLaneSync.cjs.map +1 -0
- package/dist/runtime/StatewireModelLaneSync.d.ts +45 -0
- package/dist/runtime/StatewireModelLaneSync.js +96 -0
- package/dist/runtime/StatewireModelLaneSync.js.map +1 -0
- package/dist/runtime/statewire-lifecycle.cjs +20 -5
- package/dist/runtime/statewire-lifecycle.cjs.map +1 -1
- package/dist/runtime/statewire-lifecycle.d.ts +11 -0
- package/dist/runtime/statewire-lifecycle.js +20 -5
- package/dist/runtime/statewire-lifecycle.js.map +1 -1
- package/dist/runtime/statewire-model-lane.cjs +28 -0
- package/dist/runtime/statewire-model-lane.cjs.map +1 -0
- package/dist/runtime/statewire-model-lane.d.ts +64 -0
- package/dist/runtime/statewire-model-lane.js +28 -0
- package/dist/runtime/statewire-model-lane.js.map +1 -0
- package/dist/runtime/statewire-run-config.cjs +16 -2
- package/dist/runtime/statewire-run-config.cjs.map +1 -1
- package/dist/runtime/statewire-run-config.d.ts +10 -0
- package/dist/runtime/statewire-run-config.js +16 -2
- package/dist/runtime/statewire-run-config.js.map +1 -1
- package/dist/runtime/statewire-server-lane-context.cjs +24 -0
- package/dist/runtime/statewire-server-lane-context.cjs.map +1 -0
- package/dist/runtime/statewire-server-lane-context.d.ts +30 -0
- package/dist/runtime/statewire-server-lane-context.js +24 -0
- package/dist/runtime/statewire-server-lane-context.js.map +1 -0
- package/dist/runtime/useAthenaStatewireRuntime.cjs +47 -23
- package/dist/runtime/useAthenaStatewireRuntime.cjs.map +1 -1
- package/dist/runtime/useAthenaStatewireRuntime.d.ts +8 -1
- package/dist/runtime/useAthenaStatewireRuntime.js +48 -24
- package/dist/runtime/useAthenaStatewireRuntime.js.map +1 -1
- package/dist/search/useAthenaRepoSearch.cjs +5 -13
- package/dist/search/useAthenaRepoSearch.cjs.map +1 -1
- package/dist/search/useAthenaRepoSearch.d.ts +3 -3
- package/dist/search/useAthenaRepoSearch.js +6 -14
- package/dist/search/useAthenaRepoSearch.js.map +1 -1
- package/dist/sheet-range/a1.cjs +162 -0
- package/dist/sheet-range/a1.cjs.map +1 -0
- package/dist/sheet-range/a1.d.ts +91 -0
- package/dist/sheet-range/a1.js +162 -0
- package/dist/sheet-range/a1.js.map +1 -0
- package/dist/sheet-range/index.cjs +22 -0
- package/dist/sheet-range/index.cjs.map +1 -0
- package/dist/sheet-range/index.d.ts +12 -0
- package/dist/sheet-range/index.js +22 -0
- package/dist/sheet-range/index.js.map +1 -0
- package/dist/sheet-range/range-preview-table.cjs +75 -0
- package/dist/sheet-range/range-preview-table.cjs.map +1 -0
- package/dist/sheet-range/range-preview-table.d.ts +20 -0
- package/dist/sheet-range/range-preview-table.js +75 -0
- package/dist/sheet-range/range-preview-table.js.map +1 -0
- package/dist/sheet-range/range-preview.cjs +116 -0
- package/dist/sheet-range/range-preview.cjs.map +1 -0
- package/dist/sheet-range/range-preview.d.ts +67 -0
- package/dist/sheet-range/range-preview.js +116 -0
- package/dist/sheet-range/range-preview.js.map +1 -0
- package/dist/styles.css +1 -1
- package/dist/threads/Inbox.cjs +289 -0
- package/dist/threads/Inbox.cjs.map +1 -0
- package/dist/threads/Inbox.d.ts +46 -0
- package/dist/threads/Inbox.js +289 -0
- package/dist/threads/Inbox.js.map +1 -0
- package/dist/threads/SessionList.cjs +51 -126
- package/dist/threads/SessionList.cjs.map +1 -1
- package/dist/threads/SessionList.d.ts +26 -1
- package/dist/threads/SessionList.js +45 -120
- package/dist/threads/SessionList.js.map +1 -1
- package/dist/threads/SessionsPage.cjs +753 -0
- package/dist/threads/SessionsPage.cjs.map +1 -0
- package/dist/threads/SessionsPage.d.ts +35 -0
- package/dist/threads/SessionsPage.js +753 -0
- package/dist/threads/SessionsPage.js.map +1 -0
- package/dist/threads/api.cjs +23 -2
- package/dist/threads/api.cjs.map +1 -1
- package/dist/threads/api.d.ts +60 -0
- package/dist/threads/api.js +23 -2
- package/dist/threads/api.js.map +1 -1
- package/dist/threads/conversation-list-fetcher.cjs +9 -2
- package/dist/threads/conversation-list-fetcher.cjs.map +1 -1
- package/dist/threads/conversation-list-fetcher.d.ts +14 -1
- package/dist/threads/conversation-list-fetcher.js +9 -2
- package/dist/threads/conversation-list-fetcher.js.map +1 -1
- package/dist/threads/index.d.ts +2 -1
- package/dist/threads/pull-request-display.cjs +25 -0
- package/dist/threads/pull-request-display.cjs.map +1 -0
- package/dist/threads/pull-request-display.d.ts +15 -0
- package/dist/threads/pull-request-display.js +25 -0
- package/dist/threads/pull-request-display.js.map +1 -0
- package/dist/threads/session-list-model.cjs +16 -2
- package/dist/threads/session-list-model.cjs.map +1 -1
- package/dist/threads/session-list-model.d.ts +10 -0
- package/dist/threads/session-list-model.js +16 -2
- package/dist/threads/session-list-model.js.map +1 -1
- package/dist/threads/session-row-parts.cjs +152 -0
- package/dist/threads/session-row-parts.cjs.map +1 -0
- package/dist/threads/session-row-parts.d.ts +50 -0
- package/dist/threads/session-row-parts.js +152 -0
- package/dist/threads/session-row-parts.js.map +1 -0
- package/dist/threads/sessions-page-model.cjs +305 -0
- package/dist/threads/sessions-page-model.cjs.map +1 -0
- package/dist/threads/sessions-page-model.d.ts +86 -0
- package/dist/threads/sessions-page-model.js +305 -0
- package/dist/threads/sessions-page-model.js.map +1 -0
- package/dist/threads/sessions-page-storage.cjs +93 -0
- package/dist/threads/sessions-page-storage.cjs.map +1 -0
- package/dist/threads/sessions-page-storage.d.ts +23 -0
- package/dist/threads/sessions-page-storage.js +93 -0
- package/dist/threads/sessions-page-storage.js.map +1 -0
- package/dist/threads/sessions-query.cjs +235 -0
- package/dist/threads/sessions-query.cjs.map +1 -0
- package/dist/threads/sessions-query.d.ts +119 -0
- package/dist/threads/sessions-query.js +235 -0
- package/dist/threads/sessions-query.js.map +1 -0
- package/dist/threads/statewire-thread-list.cjs +133 -40
- package/dist/threads/statewire-thread-list.cjs.map +1 -1
- package/dist/threads/statewire-thread-list.d.ts +83 -2
- package/dist/threads/statewire-thread-list.js +134 -41
- package/dist/threads/statewire-thread-list.js.map +1 -1
- package/dist/threads/use-athena-sessions.cjs +198 -0
- package/dist/threads/use-athena-sessions.cjs.map +1 -0
- package/dist/threads/use-athena-sessions.d.ts +81 -0
- package/dist/threads/use-athena-sessions.js +198 -0
- package/dist/threads/use-athena-sessions.js.map +1 -0
- package/dist/threads/use-athena-thread-model.cjs +14 -0
- package/dist/threads/use-athena-thread-model.cjs.map +1 -0
- package/dist/threads/use-athena-thread-model.d.ts +22 -0
- package/dist/threads/use-athena-thread-model.js +14 -0
- package/dist/threads/use-athena-thread-model.js.map +1 -0
- package/dist/threads/use-rest-conversation-history.cjs +1 -1
- package/dist/threads/use-rest-conversation-history.js +1 -1
- package/dist/threads/use-statewire-conversation-history.cjs +1 -1
- package/dist/threads/use-statewire-conversation-history.d.ts +3 -0
- package/dist/threads/use-statewire-conversation-history.js +1 -1
- package/dist/threads/use-thread-read-state.cjs +73 -0
- package/dist/threads/use-thread-read-state.cjs.map +1 -0
- package/dist/threads/use-thread-read-state.d.ts +51 -0
- package/dist/threads/use-thread-read-state.js +73 -0
- package/dist/threads/use-thread-read-state.js.map +1 -0
- package/dist/tiptap-markdown-table/src/markdown-table-serializer.cjs.map +1 -0
- package/dist/tiptap-markdown-table/src/markdown-table-serializer.js.map +1 -0
- package/dist/tools/auto-open-tools.cjs +2 -0
- package/dist/tools/auto-open-tools.cjs.map +1 -1
- package/dist/tools/auto-open-tools.js +2 -0
- package/dist/tools/auto-open-tools.js.map +1 -1
- package/dist/tools/file-tool-uis.cjs +18 -43
- package/dist/tools/file-tool-uis.cjs.map +1 -1
- package/dist/tools/file-tool-uis.d.ts +1 -2
- package/dist/tools/file-tool-uis.js +18 -42
- package/dist/tools/file-tool-uis.js.map +1 -1
- package/dist/tools/index.cjs +6 -2
- package/dist/tools/index.cjs.map +1 -1
- package/dist/tools/index.d.ts +1 -0
- package/dist/tools/index.js +6 -2
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/misc-tool-uis.cjs +2 -2
- package/dist/tools/misc-tool-uis.js +2 -2
- package/dist/tools/primitives.cjs +1 -1
- package/dist/tools/primitives.js +1 -1
- package/dist/tools/read-asset-tool-ui.cjs +21 -70
- package/dist/tools/read-asset-tool-ui.cjs.map +1 -1
- package/dist/tools/read-asset-tool-ui.js +21 -70
- package/dist/tools/read-asset-tool-ui.js.map +1 -1
- package/dist/tools/step-text.cjs +21 -0
- package/dist/tools/step-text.cjs.map +1 -0
- package/dist/tools/step-text.d.ts +10 -0
- package/dist/tools/step-text.js +21 -0
- package/dist/tools/step-text.js.map +1 -0
- package/dist/tools/tool-fallback.cjs +24 -5
- package/dist/tools/tool-fallback.cjs.map +1 -1
- package/dist/tools/tool-fallback.d.ts +3 -1
- package/dist/tools/tool-fallback.js +24 -5
- package/dist/tools/tool-fallback.js.map +1 -1
- package/dist/tools/tool-summary.cjs +661 -0
- package/dist/tools/tool-summary.cjs.map +1 -0
- package/dist/tools/tool-summary.d.ts +99 -0
- package/dist/tools/tool-summary.js +661 -0
- package/dist/tools/tool-summary.js.map +1 -0
- package/dist/tools/tool-uis.cjs +37 -95
- package/dist/tools/tool-uis.cjs.map +1 -1
- package/dist/tools/tool-uis.js +37 -95
- package/dist/tools/tool-uis.js.map +1 -1
- package/dist/tools/voice-update-tool-ui.cjs +1 -1
- package/dist/tools/voice-update-tool-ui.js +1 -1
- package/dist/tools/write-todos-tool-ui.cjs +3 -2
- package/dist/tools/write-todos-tool-ui.cjs.map +1 -1
- package/dist/tools/write-todos-tool-ui.d.ts +5 -0
- package/dist/tools/write-todos-tool-ui.js +5 -4
- package/dist/tools/write-todos-tool-ui.js.map +1 -1
- package/dist/ui/popover.cjs +6 -6
- package/dist/ui/popover.cjs.map +1 -1
- package/dist/ui/popover.js +6 -6
- package/dist/ui/popover.js.map +1 -1
- package/dist/ui/tooltip.cjs +16 -2
- package/dist/ui/tooltip.cjs.map +1 -1
- package/dist/ui/tooltip.d.ts +1 -1
- package/dist/ui/tooltip.js +16 -2
- package/dist/ui/tooltip.js.map +1 -1
- package/dist/version.cjs +1 -1
- package/dist/version.js +1 -1
- package/dist/voice/use-athena-voice-session.cjs.map +1 -1
- package/dist/voice/use-athena-voice-session.d.ts +3 -3
- package/dist/voice/use-athena-voice-session.js.map +1 -1
- package/dist/workbench/SessionWorkbench.cjs +378 -0
- package/dist/workbench/SessionWorkbench.cjs.map +1 -0
- package/dist/workbench/SessionWorkbench.d.ts +30 -0
- package/dist/workbench/SessionWorkbench.js +378 -0
- package/dist/workbench/SessionWorkbench.js.map +1 -0
- package/dist/workbench/session-workbench-context.cjs +26 -0
- package/dist/workbench/session-workbench-context.cjs.map +1 -0
- package/dist/workbench/session-workbench-context.d.ts +55 -0
- package/dist/workbench/session-workbench-context.js +26 -0
- package/dist/workbench/session-workbench-context.js.map +1 -0
- package/dist/workbench/session-workbench-model.cjs +288 -0
- package/dist/workbench/session-workbench-model.cjs.map +1 -0
- package/dist/workbench/session-workbench-model.d.ts +168 -0
- package/dist/workbench/session-workbench-model.js +288 -0
- package/dist/workbench/session-workbench-model.js.map +1 -0
- package/dist/workbench/session-workbench-panes.cjs +580 -0
- package/dist/workbench/session-workbench-panes.cjs.map +1 -0
- package/dist/workbench/session-workbench-panes.d.ts +16 -0
- package/dist/workbench/session-workbench-panes.js +580 -0
- package/dist/workbench/session-workbench-panes.js.map +1 -0
- package/dist/workbench/session-workspace-api.cjs +157 -0
- package/dist/workbench/session-workspace-api.cjs.map +1 -0
- package/dist/workbench/session-workspace-api.d.ts +70 -0
- package/dist/workbench/session-workspace-api.js +157 -0
- package/dist/workbench/session-workspace-api.js.map +1 -0
- package/dist/workbench/use-session-workspace.cjs +100 -0
- package/dist/workbench/use-session-workspace.cjs.map +1 -0
- package/dist/workbench/use-session-workspace.d.ts +45 -0
- package/dist/workbench/use-session-workspace.js +100 -0
- package/dist/workbench/use-session-workspace.js.map +1 -0
- package/dist/workbench/workbench-layout-context.cjs +10 -0
- package/dist/workbench/workbench-layout-context.cjs.map +1 -0
- package/dist/workbench/workbench-layout-context.d.ts +17 -0
- package/dist/workbench/workbench-layout-context.js +10 -0
- package/dist/workbench/workbench-layout-context.js.map +1 -0
- package/package.json +21 -10
- package/dist/node_modules/@assistant-ui/react-langchain/dist/converter.cjs +0 -77
- package/dist/node_modules/@assistant-ui/react-langchain/dist/converter.cjs.map +0 -1
- package/dist/node_modules/@assistant-ui/react-langchain/dist/converter.js +0 -77
- package/dist/node_modules/@assistant-ui/react-langchain/dist/converter.js.map +0 -1
- package/dist/node_modules/@assistant-ui/react-langgraph/dist/convertLangChainMessages.cjs +0 -181
- package/dist/node_modules/@assistant-ui/react-langgraph/dist/convertLangChainMessages.cjs.map +0 -1
- package/dist/node_modules/@assistant-ui/react-langgraph/dist/convertLangChainMessages.js +0 -181
- package/dist/node_modules/@assistant-ui/react-langgraph/dist/convertLangChainMessages.js.map +0 -1
- package/dist/packages/agent-runtime/src/asset-attachment.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/asset-attachment.js.map +0 -1
- package/dist/packages/agent-runtime/src/auth-denial.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/auth-denial.js.map +0 -1
- package/dist/packages/agent-runtime/src/client-tool-bridge.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/client-tool-bridge.js.map +0 -1
- package/dist/packages/agent-runtime/src/client-tools.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/client-tools.js.map +0 -1
- package/dist/packages/agent-runtime/src/conversation-index.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/conversation-index.js.map +0 -1
- package/dist/packages/agent-runtime/src/conversation-list.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/conversation-list.js.map +0 -1
- package/dist/packages/agent-runtime/src/deep-agent-transport-recipe.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/deep-agent-transport-recipe.js.map +0 -1
- package/dist/packages/agent-runtime/src/edit-command.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/edit-command.js.map +0 -1
- package/dist/packages/agent-runtime/src/errors.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/errors.js.map +0 -1
- package/dist/packages/agent-runtime/src/generated/runconfig-contract.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/generated/runconfig-contract.js.map +0 -1
- package/dist/packages/agent-runtime/src/github-wake-event.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/github-wake-event.js.map +0 -1
- package/dist/packages/agent-runtime/src/interrupts.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/interrupts.js.map +0 -1
- package/dist/packages/agent-runtime/src/message-author.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/message-author.js.map +0 -1
- package/dist/packages/agent-runtime/src/message-window.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/message-window.js.map +0 -1
- package/dist/packages/agent-runtime/src/messages.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/messages.js.map +0 -1
- package/dist/packages/agent-runtime/src/model-context.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/model-context.js.map +0 -1
- package/dist/packages/agent-runtime/src/optimistic-content.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/optimistic-content.js.map +0 -1
- package/dist/packages/agent-runtime/src/protocol.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/protocol.js.map +0 -1
- package/dist/packages/agent-runtime/src/queue.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/queue.js.map +0 -1
- package/dist/packages/agent-runtime/src/quota-safe-local-storage-session.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/quota-safe-local-storage-session.js.map +0 -1
- package/dist/packages/agent-runtime/src/runtime-messages.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/runtime-messages.js.map +0 -1
- package/dist/packages/agent-runtime/src/screen-point.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/screen-point.js.map +0 -1
- package/dist/packages/agent-runtime/src/send-recovery.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/send-recovery.js.map +0 -1
- package/dist/packages/agent-runtime/src/statewire-attach-observer.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/statewire-attach-observer.js.map +0 -1
- package/dist/packages/agent-runtime/src/statewire-state.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/statewire-state.js.map +0 -1
- package/dist/packages/agent-runtime/src/statewire-suspended.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/statewire-suspended.js.map +0 -1
- package/dist/packages/agent-runtime/src/statewire-transport.cjs +0 -11
- package/dist/packages/agent-runtime/src/statewire-transport.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/statewire-transport.js +0 -11
- package/dist/packages/agent-runtime/src/statewire-transport.js.map +0 -1
- package/dist/packages/agent-runtime/src/streaming-markdown.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/streaming-markdown.js.map +0 -1
- package/dist/packages/agent-runtime/src/thread-extras.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/thread-extras.js.map +0 -1
- package/dist/packages/agent-runtime/src/thread-snapshot-cache.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/thread-snapshot-cache.js.map +0 -1
- package/dist/packages/agent-runtime/src/thread-status.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/thread-status.js.map +0 -1
- package/dist/packages/agent-runtime/src/tool-metadata.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/tool-metadata.js.map +0 -1
- package/dist/packages/agent-runtime/src/tool-outputs.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/tool-outputs.js.map +0 -1
- package/dist/packages/agent-runtime/src/tool-result.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/tool-result.js.map +0 -1
- package/dist/packages/agent-runtime/src/use-conversation-list.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/use-conversation-list.js.map +0 -1
- package/dist/packages/agent-runtime/src/use-deep-agent-config.cjs +0 -13
- package/dist/packages/agent-runtime/src/use-deep-agent-config.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/use-deep-agent-config.js +0 -13
- package/dist/packages/agent-runtime/src/use-deep-agent-config.js.map +0 -1
- package/dist/packages/agent-runtime/src/use-deep-agent-edit-submit.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/use-deep-agent-edit-submit.js.map +0 -1
- package/dist/packages/agent-runtime/src/use-deep-agent-runtime.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/use-deep-agent-runtime.js.map +0 -1
- package/dist/packages/agent-runtime/src/use-deep-agent-thread.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/use-deep-agent-thread.js.map +0 -1
- package/dist/packages/agent-runtime/src/use-deep-agent-window-sync.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/use-deep-agent-window-sync.js.map +0 -1
- package/dist/packages/agent-runtime/src/voice-presentation.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/voice-presentation.js.map +0 -1
- package/dist/packages/agent-runtime/src/voice-turn-grouping.cjs.map +0 -1
- package/dist/packages/agent-runtime/src/voice-turn-grouping.js.map +0 -1
- package/dist/packages/tiptap-markdown-table/src/markdown-table-serializer.cjs.map +0 -1
- package/dist/packages/tiptap-markdown-table/src/markdown-table-serializer.js.map +0 -1
- /package/dist/{packages/agent-runtime → agent-runtime}/src/asset-attachment.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/asset-attachment.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/auth-denial.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/auth-denial.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/client-tool-bridge.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/client-tool-bridge.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/client-tools.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/client-tools.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/conversation-index.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/conversation-index.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/edit-command.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/edit-command.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/github-wake-event.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/github-wake-event.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/message-author.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/message-author.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/message-window.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/message-window.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/model-context.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/model-context.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/optimistic-content.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/optimistic-content.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/protocol.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/protocol.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/runtime-messages.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/runtime-messages.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/screen-point.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/screen-point.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/send-recovery.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/send-recovery.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/statewire-attach-observer.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/statewire-attach-observer.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/streaming-markdown.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/streaming-markdown.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/thread-extras.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/thread-extras.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/thread-snapshot-cache.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/thread-snapshot-cache.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/thread-status.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/thread-status.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/tool-outputs.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/tool-outputs.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/tool-result.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/tool-result.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/use-deep-agent-runtime.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/use-deep-agent-runtime.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/use-deep-agent-window-sync.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/use-deep-agent-window-sync.js +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/voice-turn-grouping.cjs +0 -0
- /package/dist/{packages/agent-runtime → agent-runtime}/src/voice-turn-grouping.js +0 -0
- /package/dist/{packages/react → react}/package.json.cjs.map +0 -0
- /package/dist/{packages/react → react}/package.json.js.map +0 -0
- /package/dist/{packages/tiptap-markdown-table → tiptap-markdown-table}/src/markdown-table-serializer.cjs +0 -0
- /package/dist/{packages/tiptap-markdown-table → tiptap-markdown-table}/src/markdown-table-serializer.js +0 -0
package/dist/collab/client.d.ts
CHANGED
|
@@ -8,6 +8,15 @@
|
|
|
8
8
|
* else → provider backoff), and expose presence from awareness. React apps
|
|
9
9
|
* use `useGenericDoc` from `@athenaintel/react/collab` instead of calling
|
|
10
10
|
* this directly.
|
|
11
|
+
*
|
|
12
|
+
* A host that keeps a local copy of the document (`localCopy`) gets it applied
|
|
13
|
+
* before the first connection, keeps its unacknowledged edits waiting across
|
|
14
|
+
* sessions, and can hold a connection that would send edits made without one
|
|
15
|
+
* until it has checked them against the server (`beforeConnect`). Offline, a
|
|
16
|
+
* mint that fails for want of the network is retried (`retryMintError`)
|
|
17
|
+
* instead of ending the handle, and past `offlineGateAfterMs` without a socket
|
|
18
|
+
* the handle reconnects itself, re-minting each time, so every reconnect after
|
|
19
|
+
* a real outage re-checks access and passes the host's gate.
|
|
11
20
|
*/
|
|
12
21
|
import * as Y from '@y/y';
|
|
13
22
|
import { type CollabAuth, type CollabTokenResponse, CollabTokenError } from './mint';
|
|
@@ -27,10 +36,30 @@ export interface GenericDocHandle {
|
|
|
27
36
|
* this (or `waitForSync`).
|
|
28
37
|
*/
|
|
29
38
|
readonly synced: boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Whether every change made to this document has reached the server: `false` from a local edit
|
|
41
|
+
* until the server sends it back (`@y/websocket`'s `syncStatus.localUpdatesSynced`; yhub echoes
|
|
42
|
+
* every update to its sender). Kept across reconnects and re-mints: a replaced provider hands its
|
|
43
|
+
* unconfirmed edits to the next, and an edit made between providers waits for one. A host that
|
|
44
|
+
* closes the document while this is `false` loses those edits, unless a local copy keeps them.
|
|
45
|
+
*/
|
|
46
|
+
readonly localChangesSynced: boolean;
|
|
30
47
|
/** Granted access from the last successful mint. */
|
|
31
48
|
readonly accessType: 'r' | 'rw' | null;
|
|
32
49
|
/** Terminal error, when status is 'error' or 'closed'. */
|
|
33
50
|
readonly error: Error | null;
|
|
51
|
+
/**
|
|
52
|
+
* Whether the document holds what the host's local copy stored (always `true` without one).
|
|
53
|
+
* Mount readers after it: until then the document is still empty.
|
|
54
|
+
*/
|
|
55
|
+
readonly prepared: boolean;
|
|
56
|
+
/** Whether this host allows a live connection. Disabled documents remain editable locally. */
|
|
57
|
+
readonly connectionEnabled: boolean;
|
|
58
|
+
/**
|
|
59
|
+
* A connection the host's `beforeConnect` held: the handle waits, sending nothing, until the
|
|
60
|
+
* host calls `resume()` (or destroys the handle).
|
|
61
|
+
*/
|
|
62
|
+
readonly held: boolean;
|
|
34
63
|
/** Monotonic change counter — bumps on every status/presence notification. */
|
|
35
64
|
readonly version: number;
|
|
36
65
|
/**
|
|
@@ -38,22 +67,118 @@ export interface GenericDocHandle {
|
|
|
38
67
|
* terminal connection state, or if the handle is destroyed first.
|
|
39
68
|
*/
|
|
40
69
|
waitForSync: (timeoutMs?: number) => Promise<void>;
|
|
70
|
+
/**
|
|
71
|
+
* Resolve once connected, initially synced, and every local change has been acknowledged,
|
|
72
|
+
* including any edits the local-copy hook restores after sync. The host must prevent further
|
|
73
|
+
* editing while saving a checkpoint. Reject on timeout, a disabled connection, or a terminal state.
|
|
74
|
+
*/
|
|
75
|
+
waitForAcknowledged: (timeoutMs?: number) => Promise<void>;
|
|
41
76
|
getPresence: () => PresenceEntry[];
|
|
42
77
|
/** Broadcast this client's presence state (requires a live connection). */
|
|
43
78
|
setPresence: (state: Record<string, unknown> | null) => void;
|
|
44
79
|
/**
|
|
45
80
|
* Force an early token refresh. Session-preserving: the live connection
|
|
46
81
|
* stays up until the fresh token is minted; a failed mint retries on a
|
|
47
|
-
* short timer instead of dropping the session.
|
|
82
|
+
* short timer instead of dropping the session. Without a connection it
|
|
83
|
+
* reconnects now.
|
|
48
84
|
*/
|
|
49
85
|
refreshNow: () => Promise<void>;
|
|
86
|
+
/**
|
|
87
|
+
* Disable all connections without losing the document or its pending edits. Enabling mints a
|
|
88
|
+
* fresh grant and runs the host's beforeConnect gate; it never bypasses a permission or review.
|
|
89
|
+
*/
|
|
90
|
+
setConnectionEnabled: (enabled: boolean) => void;
|
|
91
|
+
/** Connect past a hold, without asking `beforeConnect` again. */
|
|
92
|
+
resume: () => void;
|
|
93
|
+
/** Local edits the server has not echoed yet (handed between providers too), or `null`. */
|
|
94
|
+
unconfirmedEdits: () => Y.ContentIds | null;
|
|
50
95
|
onChange: (listener: () => void) => () => void;
|
|
51
96
|
destroy: () => void;
|
|
52
97
|
}
|
|
98
|
+
/**
|
|
99
|
+
* Issues a room-bound Keryx token for one asset. The default calls the public
|
|
100
|
+
* `/collab-token` route with the handle's `auth`; a host with its own trusted
|
|
101
|
+
* mint (a desktop app's main process holding the user's key) passes one
|
|
102
|
+
* instead, and the handle uses it for the first mint and every re-mint.
|
|
103
|
+
*/
|
|
104
|
+
export type CollabMint = (params: {
|
|
105
|
+
assetId: string;
|
|
106
|
+
access: 'view' | 'edit';
|
|
107
|
+
}) => Promise<CollabTokenResponse>;
|
|
108
|
+
/** What a host's local copy reads of the handle's transport. */
|
|
109
|
+
export interface GenericDocTransportView {
|
|
110
|
+
/** True for a transaction the transport applied (the server's state, a peer's edit). */
|
|
111
|
+
isRemoteOrigin: (origin: unknown) => boolean;
|
|
112
|
+
/** Local edits the server has not echoed yet, or `null`. */
|
|
113
|
+
getUnconfirmed: () => Y.ContentIds | null;
|
|
114
|
+
/** Connected, past the initial sync, and nothing unconfirmed. */
|
|
115
|
+
isFullySynced: () => boolean;
|
|
116
|
+
}
|
|
117
|
+
/** What `beforeConnect` is asked about. */
|
|
118
|
+
export interface GenericDocConnectGate {
|
|
119
|
+
/** The grant the connection would use (its access is the server's current verdict). */
|
|
120
|
+
grant: CollabTokenResponse;
|
|
121
|
+
/** The handle has not connected yet. */
|
|
122
|
+
firstConnection: boolean;
|
|
123
|
+
/** How long the handle had been without a connection, when it had one before. */
|
|
124
|
+
offlineForMs: number | null;
|
|
125
|
+
/** Local edits made without a connection (or inherited from an earlier session) wait to be sent. */
|
|
126
|
+
hasUnsyncedEdits: boolean;
|
|
127
|
+
}
|
|
128
|
+
/** A host's local copy of the document (`@athenaintel/local-copy` behind a host's glue). */
|
|
129
|
+
export interface GenericDocLocalCopy {
|
|
130
|
+
/**
|
|
131
|
+
* Called once, before the first mint: apply the stored copy to `doc` and return the local edits
|
|
132
|
+
* it holds that the server never acknowledged. The handle sends them and waits for their echo
|
|
133
|
+
* like its own. A failure here must resolve `{ unsyncedEdits: null }`: the handle then runs
|
|
134
|
+
* without a copy.
|
|
135
|
+
*/
|
|
136
|
+
prepare: (params: {
|
|
137
|
+
doc: Y.Doc;
|
|
138
|
+
transport: GenericDocTransportView;
|
|
139
|
+
}) => Promise<{
|
|
140
|
+
unsyncedEdits: Y.ContentIds | null;
|
|
141
|
+
}>;
|
|
142
|
+
/** The handle's unconfirmed edits or sync state changed. */
|
|
143
|
+
transportChanged: () => void;
|
|
144
|
+
/**
|
|
145
|
+
* An explicit host pause/resume policy changed. Invalidate decisions that must be checked afresh
|
|
146
|
+
* before a later manual save. A pause runs after its provider is destroyed and its status is
|
|
147
|
+
* disconnected, so edits restored by the hook stay local. A resume runs before minting.
|
|
148
|
+
* Network retries and an immediate conflict `resume()` do not call it.
|
|
149
|
+
*/
|
|
150
|
+
connectionPolicyChanged?: (enabled: boolean) => void;
|
|
151
|
+
/**
|
|
152
|
+
* Asked after each mint and before the connection it would open: the first connection, a
|
|
153
|
+
* reconnect after an outage longer than `offlineGateAfterMs`, and a re-mint after a revocation
|
|
154
|
+
* (never a scheduled token refresh of a live connection, never past `resume()`). The host
|
|
155
|
+
* checks what it must before anything is sent (the document still opens here; access; edits
|
|
156
|
+
* made without a connection against the server's). `'hold'` keeps the handle from connecting
|
|
157
|
+
* until `resume()`; a throw counts as "not yet" and is asked again on the next attempt.
|
|
158
|
+
*/
|
|
159
|
+
beforeConnect?: (gate: GenericDocConnectGate) => Promise<'connect' | 'hold'>;
|
|
160
|
+
}
|
|
161
|
+
/** After this long without a socket, the handle reconnects itself (re-mint, gate) instead of the provider. */
|
|
162
|
+
export declare const DEFAULT_OFFLINE_GATE_AFTER_MS = 15000;
|
|
163
|
+
/**
|
|
164
|
+
* The default `retryMintError`: a network failure, a timeout, a rate limit or a server error is
|
|
165
|
+
* worth retrying; a refusal (401/403/404) is the server's verdict and ends the handle.
|
|
166
|
+
*/
|
|
167
|
+
export declare function isRetryableMintError(error: unknown): boolean;
|
|
53
168
|
export declare function connectGenericDoc(args: {
|
|
54
169
|
assetId: string;
|
|
55
|
-
|
|
170
|
+
/** Credentials for the default mint; not used when `mint` is given. */
|
|
171
|
+
auth?: CollabAuth;
|
|
56
172
|
access?: 'view' | 'edit';
|
|
173
|
+
mint?: CollabMint;
|
|
174
|
+
/** A local copy of the document the host keeps (see {@link GenericDocLocalCopy}). */
|
|
175
|
+
localCopy?: GenericDocLocalCopy;
|
|
176
|
+
/** Whether a failed mint is worth retrying; defaults to {@link isRetryableMintError}. */
|
|
177
|
+
retryMintError?: (error: unknown) => boolean;
|
|
178
|
+
/** See {@link DEFAULT_OFFLINE_GATE_AFTER_MS}. */
|
|
179
|
+
offlineGateAfterMs?: number;
|
|
180
|
+
/** Start without connecting or minting (for a host's manual-save mode). Defaults to true. */
|
|
181
|
+
connectionEnabled?: boolean;
|
|
57
182
|
}): GenericDocHandle;
|
|
58
183
|
export { CollabTokenError };
|
|
59
184
|
export type { CollabAuth, CollabTokenResponse };
|
package/dist/collab/client.js
CHANGED
|
@@ -1,31 +1,99 @@
|
|
|
1
1
|
import { WebsocketProvider } from "@y/websocket";
|
|
2
2
|
import * as Y from "@y/y";
|
|
3
3
|
import { classifyClose } from "./close-policy.js";
|
|
4
|
-
import { mintCollabToken } from "./mint.js";
|
|
5
|
-
import {
|
|
6
|
-
|
|
4
|
+
import { CollabTokenError, mintCollabToken } from "./mint.js";
|
|
5
|
+
import { MAX_CONSECUTIVE_REMINTS, refreshDelayMs, MIN_REFRESH_DELAY_MS } from "./token-refresh.js";
|
|
6
|
+
const DEFAULT_OFFLINE_GATE_AFTER_MS = 15e3;
|
|
7
|
+
const MINT_RETRY_DELAYS_MS = [1e3, 2e3, 4e3, 8e3, 15e3, 3e4, 6e4];
|
|
8
|
+
function isRetryableMintError(error) {
|
|
9
|
+
if (error instanceof CollabTokenError) {
|
|
10
|
+
return error.status >= 500 || error.status === 408 || error.status === 429;
|
|
11
|
+
}
|
|
12
|
+
return error instanceof TypeError || error instanceof DOMException && error.name === "TimeoutError";
|
|
13
|
+
}
|
|
14
|
+
function resolveMint({ auth, mint }) {
|
|
15
|
+
if (mint) return mint;
|
|
16
|
+
if (!auth) throw new Error("connectGenericDoc needs `auth` or `mint`");
|
|
17
|
+
return ({ assetId, access }) => mintCollabToken({ auth, assetId, access });
|
|
18
|
+
}
|
|
7
19
|
function connectGenericDoc(args) {
|
|
8
20
|
const access = args.access ?? "view";
|
|
21
|
+
const mint = resolveMint({ auth: args.auth, mint: args.mint });
|
|
22
|
+
const localCopy = args.localCopy;
|
|
23
|
+
const retryMintError = args.retryMintError ?? isRetryableMintError;
|
|
24
|
+
const offlineGateAfterMs = args.offlineGateAfterMs ?? DEFAULT_OFFLINE_GATE_AFTER_MS;
|
|
9
25
|
const doc = new Y.Doc();
|
|
10
26
|
const listeners = /* @__PURE__ */ new Set();
|
|
11
27
|
let provider = null;
|
|
12
28
|
let refreshTimer = null;
|
|
29
|
+
let retryTimer = null;
|
|
30
|
+
let offlineTimer = null;
|
|
31
|
+
let openingPastThreshold = null;
|
|
32
|
+
let mintRetries = 0;
|
|
13
33
|
let destroyed = false;
|
|
14
|
-
let
|
|
34
|
+
let connectionEnabled = args.connectionEnabled ?? true;
|
|
35
|
+
let status = connectionEnabled ? "connecting" : "disconnected";
|
|
15
36
|
let synced = false;
|
|
16
37
|
let accessType = null;
|
|
17
38
|
let error = null;
|
|
18
39
|
let lastPresence = null;
|
|
19
40
|
let version = 0;
|
|
20
41
|
let consecutiveRemints = 0;
|
|
42
|
+
let prepared = localCopy === void 0;
|
|
43
|
+
let held = false;
|
|
44
|
+
let heldGrant = null;
|
|
45
|
+
let everConnected = false;
|
|
46
|
+
let disconnectedSince = null;
|
|
47
|
+
let connectSeq = 0;
|
|
48
|
+
let carriedUpdates = [];
|
|
49
|
+
let localChangesSynced = true;
|
|
21
50
|
const notify = () => {
|
|
22
51
|
version += 1;
|
|
23
52
|
for (const listener of listeners) listener();
|
|
24
53
|
};
|
|
54
|
+
const unconfirmedEdits = () => {
|
|
55
|
+
const all = [...carriedUpdates, ...(provider == null ? void 0 : provider.unconfirmedUpdates) ?? []].map(
|
|
56
|
+
(entry) => entry.ids
|
|
57
|
+
);
|
|
58
|
+
if (all.length === 0) return null;
|
|
59
|
+
return all.length === 1 ? all[0] : Y.mergeContentIds(all);
|
|
60
|
+
};
|
|
61
|
+
const transport = {
|
|
62
|
+
isRemoteOrigin: (origin) => origin instanceof WebsocketProvider,
|
|
63
|
+
getUnconfirmed: unconfirmedEdits,
|
|
64
|
+
isFullySynced: () => status === "connected" && synced && localChangesSynced
|
|
65
|
+
};
|
|
66
|
+
const transportChanged = () => {
|
|
67
|
+
localCopy == null ? void 0 : localCopy.transportChanged();
|
|
68
|
+
};
|
|
69
|
+
const refreshLocalChangesSynced = () => {
|
|
70
|
+
const next = carriedUpdates.length === 0 && ((provider == null ? void 0 : provider.unconfirmedUpdates.length) ?? 0) === 0;
|
|
71
|
+
const changed = next !== localChangesSynced;
|
|
72
|
+
localChangesSynced = next;
|
|
73
|
+
transportChanged();
|
|
74
|
+
if (changed) notify();
|
|
75
|
+
};
|
|
76
|
+
doc.on("update", (update, origin) => {
|
|
77
|
+
if (!prepared || provider !== null || destroyed || origin instanceof WebsocketProvider) return;
|
|
78
|
+
carriedUpdates = [
|
|
79
|
+
...carriedUpdates,
|
|
80
|
+
{ created: Date.now(), ids: Y.createContentIdsFromUpdate(update) }
|
|
81
|
+
];
|
|
82
|
+
refreshLocalChangesSynced();
|
|
83
|
+
});
|
|
25
84
|
const setStatus = (next, err = null) => {
|
|
26
85
|
if (destroyed && next !== "closed") return;
|
|
86
|
+
const wasConnected = status === "connected";
|
|
27
87
|
status = next;
|
|
28
88
|
error = err;
|
|
89
|
+
if (next === "connected") {
|
|
90
|
+
everConnected = true;
|
|
91
|
+
disconnectedSince = null;
|
|
92
|
+
clearOfflineTimer();
|
|
93
|
+
} else if (wasConnected || everConnected && disconnectedSince === null) {
|
|
94
|
+
disconnectedSince = Date.now();
|
|
95
|
+
}
|
|
96
|
+
transportChanged();
|
|
29
97
|
notify();
|
|
30
98
|
};
|
|
31
99
|
const clearRefreshTimer = () => {
|
|
@@ -34,6 +102,18 @@ function connectGenericDoc(args) {
|
|
|
34
102
|
refreshTimer = null;
|
|
35
103
|
}
|
|
36
104
|
};
|
|
105
|
+
const clearRetryTimer = () => {
|
|
106
|
+
if (retryTimer !== null) {
|
|
107
|
+
clearTimeout(retryTimer);
|
|
108
|
+
retryTimer = null;
|
|
109
|
+
}
|
|
110
|
+
};
|
|
111
|
+
function clearOfflineTimer() {
|
|
112
|
+
if (offlineTimer !== null) {
|
|
113
|
+
clearTimeout(offlineTimer);
|
|
114
|
+
offlineTimer = null;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
37
117
|
const teardownProvider = () => {
|
|
38
118
|
clearRefreshTimer();
|
|
39
119
|
if (synced) {
|
|
@@ -41,8 +121,10 @@ function connectGenericDoc(args) {
|
|
|
41
121
|
notify();
|
|
42
122
|
}
|
|
43
123
|
if (provider) {
|
|
44
|
-
provider
|
|
124
|
+
const previous = provider;
|
|
45
125
|
provider = null;
|
|
126
|
+
carriedUpdates = [...carriedUpdates, ...previous.unconfirmedUpdates];
|
|
127
|
+
previous.destroy();
|
|
46
128
|
}
|
|
47
129
|
};
|
|
48
130
|
const scheduleRefresh = (grant) => {
|
|
@@ -52,32 +134,107 @@ function connectGenericDoc(args) {
|
|
|
52
134
|
void connect({ scheduledRefresh: true });
|
|
53
135
|
}, delay);
|
|
54
136
|
};
|
|
137
|
+
const scheduleRetry = () => {
|
|
138
|
+
clearRetryTimer();
|
|
139
|
+
const delay = MINT_RETRY_DELAYS_MS[Math.min(mintRetries, MINT_RETRY_DELAYS_MS.length - 1)];
|
|
140
|
+
mintRetries += 1;
|
|
141
|
+
retryTimer = setTimeout(() => {
|
|
142
|
+
retryTimer = null;
|
|
143
|
+
void connect();
|
|
144
|
+
}, delay);
|
|
145
|
+
};
|
|
146
|
+
const onBrowserOnline = () => {
|
|
147
|
+
if (destroyed || !connectionEnabled || status === "closed" || status === "error" || provider !== null || held) return;
|
|
148
|
+
mintRetries = 0;
|
|
149
|
+
clearRetryTimer();
|
|
150
|
+
void connect();
|
|
151
|
+
};
|
|
152
|
+
if (typeof window !== "undefined") window.addEventListener("online", onBrowserOnline);
|
|
153
|
+
const armOfflineTakeover = () => {
|
|
154
|
+
if (!connectionEnabled || offlineTimer !== null || !(localCopy == null ? void 0 : localCopy.beforeConnect)) return;
|
|
155
|
+
offlineTimer = setTimeout(() => {
|
|
156
|
+
offlineTimer = null;
|
|
157
|
+
if (destroyed || !connectionEnabled || status === "connected" || provider === null) return;
|
|
158
|
+
if (provider.wsconnecting && !hasUnsyncedLocalEdits()) {
|
|
159
|
+
openingPastThreshold = provider;
|
|
160
|
+
armOfflineTakeover();
|
|
161
|
+
return;
|
|
162
|
+
}
|
|
163
|
+
teardownProvider();
|
|
164
|
+
void connect();
|
|
165
|
+
}, offlineGateAfterMs);
|
|
166
|
+
};
|
|
167
|
+
const hasUnsyncedLocalEdits = () => carriedUpdates.length > 0 || ((provider == null ? void 0 : provider.unconfirmedUpdates.length) ?? 0) > 0;
|
|
55
168
|
const connect = async (opts) => {
|
|
56
|
-
if (destroyed) return;
|
|
57
|
-
const
|
|
169
|
+
if (destroyed || !connectionEnabled) return;
|
|
170
|
+
const seq = ++connectSeq;
|
|
171
|
+
await preparing;
|
|
172
|
+
if (destroyed || !connectionEnabled || seq !== connectSeq) return;
|
|
173
|
+
const scheduledRefresh = (opts == null ? void 0 : opts.scheduledRefresh) === true && status === "connected";
|
|
58
174
|
if (!scheduledRefresh) {
|
|
59
175
|
teardownProvider();
|
|
60
176
|
} else {
|
|
61
177
|
clearRefreshTimer();
|
|
62
178
|
}
|
|
179
|
+
clearRetryTimer();
|
|
180
|
+
if (destroyed || !connectionEnabled || seq !== connectSeq) return;
|
|
63
181
|
let grant;
|
|
64
|
-
|
|
65
|
-
grant =
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
182
|
+
if ((opts == null ? void 0 : opts.grant) && opts.grant.expires_at_ms - Date.now() > MIN_REFRESH_DELAY_MS) {
|
|
183
|
+
grant = opts.grant;
|
|
184
|
+
} else {
|
|
185
|
+
try {
|
|
186
|
+
grant = await mint({ assetId: args.assetId, access });
|
|
187
|
+
} catch (err) {
|
|
188
|
+
if (destroyed || !connectionEnabled || seq !== connectSeq) return;
|
|
189
|
+
if (scheduledRefresh) {
|
|
190
|
+
refreshTimer = setTimeout(() => {
|
|
191
|
+
void connect({ scheduledRefresh: true });
|
|
192
|
+
}, MIN_REFRESH_DELAY_MS);
|
|
193
|
+
return;
|
|
194
|
+
}
|
|
195
|
+
if (retryMintError(err)) {
|
|
196
|
+
if (status !== "disconnected") setStatus("disconnected");
|
|
197
|
+
scheduleRetry();
|
|
198
|
+
return;
|
|
199
|
+
}
|
|
200
|
+
setStatus("error", err instanceof Error ? err : new Error(String(err)));
|
|
201
|
+
return;
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
if (destroyed || !connectionEnabled || seq !== connectSeq) return;
|
|
205
|
+
mintRetries = 0;
|
|
206
|
+
accessType = grant.access_type;
|
|
207
|
+
const beforeConnect = localCopy == null ? void 0 : localCopy.beforeConnect;
|
|
208
|
+
if (beforeConnect && !scheduledRefresh && !(opts == null ? void 0 : opts.skipGate)) {
|
|
209
|
+
const firstConnection = !everConnected;
|
|
210
|
+
const offlineForMs = disconnectedSince === null ? null : Date.now() - disconnectedSince;
|
|
211
|
+
let decision;
|
|
212
|
+
try {
|
|
213
|
+
decision = await beforeConnect({
|
|
214
|
+
grant,
|
|
215
|
+
firstConnection,
|
|
216
|
+
offlineForMs,
|
|
217
|
+
hasUnsyncedEdits: hasUnsyncedLocalEdits()
|
|
218
|
+
});
|
|
219
|
+
} catch {
|
|
220
|
+
if (destroyed || !connectionEnabled || seq !== connectSeq) return;
|
|
221
|
+
if (status !== "disconnected") setStatus("disconnected");
|
|
222
|
+
scheduleRetry();
|
|
223
|
+
return;
|
|
224
|
+
}
|
|
225
|
+
if (destroyed || !connectionEnabled || seq !== connectSeq) return;
|
|
226
|
+
if (decision === "hold") {
|
|
227
|
+
held = true;
|
|
228
|
+
heldGrant = grant;
|
|
229
|
+
if (status !== "disconnected") setStatus("disconnected");
|
|
230
|
+
else notify();
|
|
71
231
|
return;
|
|
72
232
|
}
|
|
73
|
-
setStatus("error", err instanceof Error ? err : new Error(String(err)));
|
|
74
|
-
return;
|
|
75
233
|
}
|
|
76
|
-
if (destroyed) return;
|
|
77
234
|
if (scheduledRefresh) {
|
|
78
235
|
teardownProvider();
|
|
79
236
|
}
|
|
80
|
-
|
|
237
|
+
if (destroyed || !connectionEnabled || seq !== connectSeq) return;
|
|
81
238
|
const nextProvider = new WebsocketProvider(grant.ws_url, `${grant.org}/${grant.doc_id}`, doc, {
|
|
82
239
|
params: {
|
|
83
240
|
yauth: grant.token,
|
|
@@ -90,8 +247,20 @@ function connectGenericDoc(args) {
|
|
|
90
247
|
disableBc: true
|
|
91
248
|
});
|
|
92
249
|
provider = nextProvider;
|
|
250
|
+
nextProvider.unconfirmedUpdates = [...carriedUpdates, ...nextProvider.unconfirmedUpdates];
|
|
251
|
+
carriedUpdates = [];
|
|
252
|
+
refreshLocalChangesSynced();
|
|
253
|
+
nextProvider.on("sync-status", () => {
|
|
254
|
+
if (provider !== nextProvider) return;
|
|
255
|
+
refreshLocalChangesSynced();
|
|
256
|
+
});
|
|
93
257
|
nextProvider.on("status", (event) => {
|
|
94
258
|
if (provider !== nextProvider) return;
|
|
259
|
+
if (event.status === "connected" && openingPastThreshold === nextProvider && hasUnsyncedLocalEdits()) {
|
|
260
|
+
teardownProvider();
|
|
261
|
+
void connect();
|
|
262
|
+
return;
|
|
263
|
+
}
|
|
95
264
|
if (event.status === "connected") {
|
|
96
265
|
consecutiveRemints = 0;
|
|
97
266
|
}
|
|
@@ -99,11 +268,14 @@ function connectGenericDoc(args) {
|
|
|
99
268
|
if (event.status === "connected" && lastPresence !== null) {
|
|
100
269
|
nextProvider.awareness.setLocalState(lastPresence);
|
|
101
270
|
}
|
|
271
|
+
if (event.status !== "connected") armOfflineTakeover();
|
|
102
272
|
});
|
|
273
|
+
if (!nextProvider.wsconnected) armOfflineTakeover();
|
|
103
274
|
nextProvider.on("sync", (state) => {
|
|
104
275
|
if (provider !== nextProvider) return;
|
|
105
276
|
if (synced !== state) {
|
|
106
277
|
synced = state;
|
|
278
|
+
transportChanged();
|
|
107
279
|
notify();
|
|
108
280
|
}
|
|
109
281
|
});
|
|
@@ -135,6 +307,15 @@ function connectGenericDoc(args) {
|
|
|
135
307
|
});
|
|
136
308
|
scheduleRefresh(grant);
|
|
137
309
|
};
|
|
310
|
+
const preparing = localCopy ? localCopy.prepare({ doc, transport }).catch(() => ({ unsyncedEdits: null })).then(({ unsyncedEdits }) => {
|
|
311
|
+
if (destroyed) return;
|
|
312
|
+
if (unsyncedEdits && !(unsyncedEdits.inserts.isEmpty() && unsyncedEdits.deletes.isEmpty())) {
|
|
313
|
+
carriedUpdates = [...carriedUpdates, { created: Date.now(), ids: unsyncedEdits }];
|
|
314
|
+
}
|
|
315
|
+
prepared = true;
|
|
316
|
+
refreshLocalChangesSynced();
|
|
317
|
+
notify();
|
|
318
|
+
}) : Promise.resolve();
|
|
138
319
|
void connect();
|
|
139
320
|
const waitForSync = (timeoutMs = 15e3) => new Promise((resolve, reject) => {
|
|
140
321
|
const terminal = () => {
|
|
@@ -175,6 +356,41 @@ function connectGenericDoc(args) {
|
|
|
175
356
|
};
|
|
176
357
|
listeners.add(listener);
|
|
177
358
|
});
|
|
359
|
+
const waitForAcknowledged = (timeoutMs = 15e3) => new Promise((resolve, reject) => {
|
|
360
|
+
let finished = false;
|
|
361
|
+
let checkQueued = false;
|
|
362
|
+
let timer = null;
|
|
363
|
+
const finish = (failure) => {
|
|
364
|
+
if (finished) return;
|
|
365
|
+
finished = true;
|
|
366
|
+
if (timer !== null) clearTimeout(timer);
|
|
367
|
+
listeners.delete(check);
|
|
368
|
+
if (failure) reject(failure);
|
|
369
|
+
else resolve();
|
|
370
|
+
};
|
|
371
|
+
const check = () => {
|
|
372
|
+
if (finished || checkQueued) return;
|
|
373
|
+
checkQueued = true;
|
|
374
|
+
queueMicrotask(() => {
|
|
375
|
+
checkQueued = false;
|
|
376
|
+
if (finished) return;
|
|
377
|
+
if (destroyed) {
|
|
378
|
+
finish(new Error("Handle destroyed before local changes were acknowledged"));
|
|
379
|
+
} else if (!connectionEnabled) {
|
|
380
|
+
finish(new Error("Connection disabled before local changes were acknowledged"));
|
|
381
|
+
} else if (status === "closed" || status === "error") {
|
|
382
|
+
finish(error ?? new Error(`Connection ${status} before local changes were acknowledged`));
|
|
383
|
+
} else if (prepared && status === "connected" && synced && localChangesSynced) {
|
|
384
|
+
finish();
|
|
385
|
+
}
|
|
386
|
+
});
|
|
387
|
+
};
|
|
388
|
+
timer = setTimeout(() => {
|
|
389
|
+
finish(new Error(`Timed out after ${timeoutMs}ms waiting for local changes to be acknowledged`));
|
|
390
|
+
}, timeoutMs);
|
|
391
|
+
listeners.add(check);
|
|
392
|
+
check();
|
|
393
|
+
});
|
|
178
394
|
return {
|
|
179
395
|
doc,
|
|
180
396
|
get status() {
|
|
@@ -183,16 +399,29 @@ function connectGenericDoc(args) {
|
|
|
183
399
|
get synced() {
|
|
184
400
|
return synced;
|
|
185
401
|
},
|
|
402
|
+
get localChangesSynced() {
|
|
403
|
+
return localChangesSynced;
|
|
404
|
+
},
|
|
186
405
|
get accessType() {
|
|
187
406
|
return accessType;
|
|
188
407
|
},
|
|
189
408
|
get error() {
|
|
190
409
|
return error;
|
|
191
410
|
},
|
|
411
|
+
get prepared() {
|
|
412
|
+
return prepared;
|
|
413
|
+
},
|
|
414
|
+
get connectionEnabled() {
|
|
415
|
+
return connectionEnabled;
|
|
416
|
+
},
|
|
417
|
+
get held() {
|
|
418
|
+
return held;
|
|
419
|
+
},
|
|
192
420
|
get version() {
|
|
193
421
|
return version;
|
|
194
422
|
},
|
|
195
423
|
waitForSync,
|
|
424
|
+
waitForAcknowledged,
|
|
196
425
|
getPresence: () => {
|
|
197
426
|
if (!provider) return [];
|
|
198
427
|
const entries = [];
|
|
@@ -205,7 +434,38 @@ function connectGenericDoc(args) {
|
|
|
205
434
|
lastPresence = state;
|
|
206
435
|
provider == null ? void 0 : provider.awareness.setLocalState(state);
|
|
207
436
|
},
|
|
208
|
-
refreshNow: () =>
|
|
437
|
+
refreshNow: () => {
|
|
438
|
+
if (!connectionEnabled || held) return Promise.resolve();
|
|
439
|
+
return provider ? connect({ scheduledRefresh: true }) : connect();
|
|
440
|
+
},
|
|
441
|
+
setConnectionEnabled: (enabled) => {
|
|
442
|
+
var _a, _b;
|
|
443
|
+
if (destroyed || enabled === connectionEnabled) return;
|
|
444
|
+
connectionEnabled = enabled;
|
|
445
|
+
if (!enabled) {
|
|
446
|
+
connectSeq += 1;
|
|
447
|
+
clearRetryTimer();
|
|
448
|
+
clearOfflineTimer();
|
|
449
|
+
teardownProvider();
|
|
450
|
+
setStatus("disconnected");
|
|
451
|
+
(_a = localCopy == null ? void 0 : localCopy.connectionPolicyChanged) == null ? void 0 : _a.call(localCopy, false);
|
|
452
|
+
return;
|
|
453
|
+
}
|
|
454
|
+
(_b = localCopy == null ? void 0 : localCopy.connectionPolicyChanged) == null ? void 0 : _b.call(localCopy, true);
|
|
455
|
+
held = false;
|
|
456
|
+
heldGrant = null;
|
|
457
|
+
setStatus("connecting");
|
|
458
|
+
void connect();
|
|
459
|
+
},
|
|
460
|
+
resume: () => {
|
|
461
|
+
if (!held || destroyed || !connectionEnabled) return;
|
|
462
|
+
held = false;
|
|
463
|
+
const grant = heldGrant;
|
|
464
|
+
heldGrant = null;
|
|
465
|
+
notify();
|
|
466
|
+
void connect({ skipGate: true, grant: grant ?? void 0 });
|
|
467
|
+
},
|
|
468
|
+
unconfirmedEdits,
|
|
209
469
|
onChange: (listener) => {
|
|
210
470
|
listeners.add(listener);
|
|
211
471
|
return () => {
|
|
@@ -216,6 +476,9 @@ function connectGenericDoc(args) {
|
|
|
216
476
|
if (destroyed) return;
|
|
217
477
|
destroyed = true;
|
|
218
478
|
teardownProvider();
|
|
479
|
+
clearRetryTimer();
|
|
480
|
+
clearOfflineTimer();
|
|
481
|
+
if (typeof window !== "undefined") window.removeEventListener("online", onBrowserOnline);
|
|
219
482
|
status = "closed";
|
|
220
483
|
for (const listener of [...listeners]) listener();
|
|
221
484
|
listeners.clear();
|
|
@@ -225,6 +488,8 @@ function connectGenericDoc(args) {
|
|
|
225
488
|
}
|
|
226
489
|
export {
|
|
227
490
|
CollabTokenError,
|
|
228
|
-
|
|
491
|
+
DEFAULT_OFFLINE_GATE_AFTER_MS,
|
|
492
|
+
connectGenericDoc,
|
|
493
|
+
isRetryableMintError
|
|
229
494
|
};
|
|
230
495
|
//# sourceMappingURL=client.js.map
|