@assistant-ui/react 0.7.53 → 0.7.55
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/api/AssistantRuntime.d.ts +12 -7
- package/dist/api/AssistantRuntime.d.ts.map +1 -1
- package/dist/api/AssistantRuntime.js +5 -1
- package/dist/api/AssistantRuntime.js.map +1 -1
- package/dist/api/AssistantRuntime.mjs +5 -1
- package/dist/api/AssistantRuntime.mjs.map +1 -1
- package/dist/api/ThreadRuntime.d.ts +10 -4
- package/dist/api/ThreadRuntime.d.ts.map +1 -1
- package/dist/api/ThreadRuntime.js +5 -1
- package/dist/api/ThreadRuntime.js.map +1 -1
- package/dist/api/ThreadRuntime.mjs +5 -1
- package/dist/api/ThreadRuntime.mjs.map +1 -1
- package/dist/context/react/ThreadContext.d.ts +5 -5
- package/dist/context/react/ThreadContext.d.ts.map +1 -1
- package/dist/context/react/ThreadContext.js +5 -5
- package/dist/context/react/ThreadContext.js.map +1 -1
- package/dist/context/react/ThreadContext.mjs +4 -4
- package/dist/context/react/ThreadContext.mjs.map +1 -1
- package/dist/context/react/index.d.ts +5 -1
- package/dist/context/react/index.d.ts.map +1 -1
- package/dist/context/react/index.js +3 -1
- package/dist/context/react/index.js.map +1 -1
- package/dist/context/react/index.mjs +4 -2
- package/dist/context/react/index.mjs.map +1 -1
- package/dist/index.d.ts +1 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -4
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -2
- package/dist/index.mjs.map +1 -1
- package/dist/internal.d.ts +1 -1
- package/dist/internal.d.ts.map +1 -1
- package/dist/internal.js +3 -3
- package/dist/internal.js.map +1 -1
- package/dist/internal.mjs +2 -2
- package/dist/internal.mjs.map +1 -1
- package/dist/{types/ModelConfigTypes.d.ts → model-context/ModelContextTypes.d.ts} +6 -6
- package/dist/model-context/ModelContextTypes.d.ts.map +1 -0
- package/dist/{types/ModelConfigTypes.js → model-context/ModelContextTypes.js} +9 -9
- package/dist/model-context/ModelContextTypes.js.map +1 -0
- package/dist/{types/ModelConfigTypes.mjs → model-context/ModelContextTypes.mjs} +5 -5
- package/dist/model-context/ModelContextTypes.mjs.map +1 -0
- package/dist/{model-config → model-context}/index.d.ts +9 -0
- package/dist/model-context/index.d.ts.map +1 -0
- package/dist/{model-config → model-context}/index.js +4 -4
- package/dist/model-context/index.js.map +1 -0
- package/dist/{model-config → model-context}/index.mjs +1 -1
- package/dist/model-context/index.mjs.map +1 -0
- package/dist/model-context/makeAssistantTool.d.ts.map +1 -0
- package/dist/{model-config → model-context}/makeAssistantTool.js +1 -1
- package/dist/model-context/makeAssistantTool.js.map +1 -0
- package/dist/{model-config → model-context}/makeAssistantTool.mjs +1 -1
- package/dist/model-context/makeAssistantTool.mjs.map +1 -0
- package/dist/model-context/makeAssistantToolUI.d.ts.map +1 -0
- package/dist/{model-config → model-context}/makeAssistantToolUI.js +1 -1
- package/dist/model-context/makeAssistantToolUI.js.map +1 -0
- package/dist/{model-config → model-context}/makeAssistantToolUI.mjs +1 -1
- package/dist/model-context/makeAssistantToolUI.mjs.map +1 -0
- package/dist/model-context/useAssistantInstructions.d.ts.map +1 -0
- package/dist/{model-config → model-context}/useAssistantInstructions.js +3 -3
- package/dist/model-context/useAssistantInstructions.js.map +1 -0
- package/dist/{model-config → model-context}/useAssistantInstructions.mjs +3 -3
- package/dist/model-context/useAssistantInstructions.mjs.map +1 -0
- package/dist/{model-config → model-context}/useAssistantTool.d.ts +1 -1
- package/dist/model-context/useAssistantTool.d.ts.map +1 -0
- package/dist/{model-config → model-context}/useAssistantTool.js +4 -4
- package/dist/model-context/useAssistantTool.js.map +1 -0
- package/dist/{model-config → model-context}/useAssistantTool.mjs +4 -4
- package/dist/model-context/useAssistantTool.mjs.map +1 -0
- package/dist/model-context/useAssistantToolUI.d.ts.map +1 -0
- package/dist/{model-config → model-context}/useAssistantToolUI.js +1 -1
- package/dist/model-context/useAssistantToolUI.js.map +1 -0
- package/dist/{model-config → model-context}/useAssistantToolUI.mjs +1 -1
- package/dist/model-context/useAssistantToolUI.mjs.map +1 -0
- package/dist/model-context/useInlineRender.d.ts.map +1 -0
- package/dist/{model-config → model-context}/useInlineRender.js +1 -1
- package/dist/model-context/useInlineRender.js.map +1 -0
- package/dist/{model-config → model-context}/useInlineRender.mjs +1 -1
- package/dist/model-context/useInlineRender.mjs.map +1 -0
- package/dist/primitives/actionBar/ActionBarCopy.d.ts +8 -3
- package/dist/primitives/actionBar/ActionBarCopy.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarCopy.js +24 -2
- package/dist/primitives/actionBar/ActionBarCopy.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarCopy.mjs +27 -2
- package/dist/primitives/actionBar/ActionBarCopy.mjs.map +1 -1
- package/dist/primitives/actionBar/ActionBarEdit.d.ts +2 -1
- package/dist/primitives/actionBar/ActionBarEdit.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarEdit.js +12 -2
- package/dist/primitives/actionBar/ActionBarEdit.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarEdit.mjs +11 -1
- package/dist/primitives/actionBar/ActionBarEdit.mjs.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts +2 -1
- package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackNegative.js +10 -2
- package/dist/primitives/actionBar/ActionBarFeedbackNegative.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackNegative.mjs +9 -1
- package/dist/primitives/actionBar/ActionBarFeedbackNegative.mjs.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackPositive.d.ts +2 -1
- package/dist/primitives/actionBar/ActionBarFeedbackPositive.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackPositive.js +8 -2
- package/dist/primitives/actionBar/ActionBarFeedbackPositive.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackPositive.mjs +9 -3
- package/dist/primitives/actionBar/ActionBarFeedbackPositive.mjs.map +1 -1
- package/dist/primitives/actionBar/ActionBarReload.d.ts +2 -1
- package/dist/primitives/actionBar/ActionBarReload.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarReload.js +18 -2
- package/dist/primitives/actionBar/ActionBarReload.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarReload.mjs +17 -1
- package/dist/primitives/actionBar/ActionBarReload.mjs.map +1 -1
- package/dist/primitives/actionBar/ActionBarSpeak.d.ts +2 -1
- package/dist/primitives/actionBar/ActionBarSpeak.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarSpeak.js +14 -2
- package/dist/primitives/actionBar/ActionBarSpeak.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarSpeak.mjs +13 -1
- package/dist/primitives/actionBar/ActionBarSpeak.mjs.map +1 -1
- package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts +2 -1
- package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarStopSpeaking.js +12 -2
- package/dist/primitives/actionBar/ActionBarStopSpeaking.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarStopSpeaking.mjs +14 -1
- package/dist/primitives/actionBar/ActionBarStopSpeaking.mjs.map +1 -1
- package/dist/primitives/attachment/AttachmentRemove.d.ts +2 -1
- package/dist/primitives/attachment/AttachmentRemove.d.ts.map +1 -1
- package/dist/primitives/attachment/AttachmentRemove.js +10 -2
- package/dist/primitives/attachment/AttachmentRemove.js.map +1 -1
- package/dist/primitives/attachment/AttachmentRemove.mjs +9 -1
- package/dist/primitives/attachment/AttachmentRemove.mjs.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerCount.d.ts.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerCount.js +6 -2
- package/dist/primitives/branchPicker/BranchPickerCount.js.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerCount.mjs +5 -1
- package/dist/primitives/branchPicker/BranchPickerCount.mjs.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerNext.d.ts +2 -1
- package/dist/primitives/branchPicker/BranchPickerNext.d.ts.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerNext.js +12 -2
- package/dist/primitives/branchPicker/BranchPickerNext.js.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerNext.mjs +14 -1
- package/dist/primitives/branchPicker/BranchPickerNext.mjs.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerNumber.d.ts.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerNumber.js +6 -2
- package/dist/primitives/branchPicker/BranchPickerNumber.js.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerNumber.mjs +5 -1
- package/dist/primitives/branchPicker/BranchPickerNumber.mjs.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts +2 -1
- package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerPrevious.js +12 -2
- package/dist/primitives/branchPicker/BranchPickerPrevious.js.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerPrevious.mjs +14 -1
- package/dist/primitives/branchPicker/BranchPickerPrevious.mjs.map +1 -1
- package/dist/primitives/composer/ComposerAddAttachment.d.ts +9 -2
- package/dist/primitives/composer/ComposerAddAttachment.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerAddAttachment.js +28 -2
- package/dist/primitives/composer/ComposerAddAttachment.js.map +1 -1
- package/dist/primitives/composer/ComposerAddAttachment.mjs +27 -1
- package/dist/primitives/composer/ComposerAddAttachment.mjs.map +1 -1
- package/dist/primitives/composer/ComposerCancel.d.ts +2 -1
- package/dist/primitives/composer/ComposerCancel.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerCancel.js +12 -2
- package/dist/primitives/composer/ComposerCancel.js.map +1 -1
- package/dist/primitives/composer/ComposerCancel.mjs +11 -1
- package/dist/primitives/composer/ComposerCancel.mjs.map +1 -1
- package/dist/primitives/composer/ComposerIf.d.ts +6 -1
- package/dist/primitives/composer/ComposerIf.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerIf.js +9 -2
- package/dist/primitives/composer/ComposerIf.js.map +1 -1
- package/dist/primitives/composer/ComposerIf.mjs +8 -3
- package/dist/primitives/composer/ComposerIf.mjs.map +1 -1
- package/dist/primitives/composer/ComposerRoot.js +2 -2
- package/dist/primitives/composer/ComposerRoot.js.map +1 -1
- package/dist/primitives/composer/ComposerRoot.mjs +1 -1
- package/dist/primitives/composer/ComposerRoot.mjs.map +1 -1
- package/dist/primitives/composer/ComposerSend.d.ts +1 -1
- package/dist/primitives/composer/ComposerSend.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerSend.js +22 -4
- package/dist/primitives/composer/ComposerSend.js.map +1 -1
- package/dist/primitives/composer/ComposerSend.mjs +19 -2
- package/dist/primitives/composer/ComposerSend.mjs.map +1 -1
- package/dist/primitives/contentPart/ContentPartDisplay.d.ts +3 -0
- package/dist/primitives/contentPart/ContentPartDisplay.d.ts.map +1 -1
- package/dist/primitives/contentPart/ContentPartDisplay.js +1 -1
- package/dist/primitives/contentPart/ContentPartDisplay.js.map +1 -1
- package/dist/primitives/contentPart/ContentPartDisplay.mjs +1 -1
- package/dist/primitives/contentPart/ContentPartDisplay.mjs.map +1 -1
- package/dist/primitives/contentPart/ContentPartImage.js +1 -1
- package/dist/primitives/contentPart/ContentPartImage.js.map +1 -1
- package/dist/primitives/contentPart/ContentPartImage.mjs +1 -1
- package/dist/primitives/contentPart/ContentPartImage.mjs.map +1 -1
- package/dist/primitives/contentPart/ContentPartText.js +1 -1
- package/dist/primitives/contentPart/ContentPartText.js.map +1 -1
- package/dist/primitives/contentPart/ContentPartText.mjs +1 -1
- package/dist/primitives/contentPart/ContentPartText.mjs.map +1 -1
- package/dist/primitives/contentPart/useContentPartDisplay.d.ts.map +1 -0
- package/dist/{primitive-hooks → primitives}/contentPart/useContentPartDisplay.js +1 -1
- package/dist/primitives/contentPart/useContentPartDisplay.js.map +1 -0
- package/dist/{primitive-hooks → primitives}/contentPart/useContentPartDisplay.mjs +1 -1
- package/dist/primitives/contentPart/useContentPartDisplay.mjs.map +1 -0
- package/dist/primitives/contentPart/useContentPartImage.d.ts.map +1 -0
- package/dist/{primitive-hooks → primitives}/contentPart/useContentPartImage.js +1 -1
- package/dist/primitives/contentPart/useContentPartImage.js.map +1 -0
- package/dist/{primitive-hooks → primitives}/contentPart/useContentPartImage.mjs +1 -1
- package/dist/primitives/contentPart/useContentPartImage.mjs.map +1 -0
- package/dist/primitives/contentPart/useContentPartText.d.ts.map +1 -0
- package/dist/{primitive-hooks → primitives}/contentPart/useContentPartText.js +1 -1
- package/dist/primitives/contentPart/useContentPartText.js.map +1 -0
- package/dist/{primitive-hooks → primitives}/contentPart/useContentPartText.mjs +1 -1
- package/dist/primitives/contentPart/useContentPartText.mjs.map +1 -0
- package/dist/primitives/index.d.ts +3 -0
- package/dist/primitives/index.d.ts.map +1 -1
- package/dist/primitives/index.js +11 -2
- package/dist/primitives/index.js.map +1 -1
- package/dist/primitives/index.mjs +7 -1
- package/dist/primitives/index.mjs.map +1 -1
- package/dist/primitives/message/MessageIf.d.ts +15 -1
- package/dist/primitives/message/MessageIf.d.ts.map +1 -1
- package/dist/primitives/message/MessageIf.js +38 -2
- package/dist/primitives/message/MessageIf.js.map +1 -1
- package/dist/primitives/message/MessageIf.mjs +39 -2
- package/dist/primitives/message/MessageIf.mjs.map +1 -1
- package/dist/primitives/thread/ThreadEmpty.js +2 -2
- package/dist/primitives/thread/ThreadEmpty.js.map +1 -1
- package/dist/primitives/thread/ThreadEmpty.mjs +2 -2
- package/dist/primitives/thread/ThreadEmpty.mjs.map +1 -1
- package/dist/primitives/thread/ThreadIf.d.ts +8 -1
- package/dist/primitives/thread/ThreadIf.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadIf.js +13 -2
- package/dist/primitives/thread/ThreadIf.js.map +1 -1
- package/dist/primitives/thread/ThreadIf.mjs +12 -3
- package/dist/primitives/thread/ThreadIf.mjs.map +1 -1
- package/dist/primitives/thread/ThreadScrollToBottom.d.ts +2 -1
- package/dist/primitives/thread/ThreadScrollToBottom.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadScrollToBottom.js +13 -2
- package/dist/primitives/thread/ThreadScrollToBottom.js.map +1 -1
- package/dist/primitives/thread/ThreadScrollToBottom.mjs +12 -1
- package/dist/primitives/thread/ThreadScrollToBottom.mjs.map +1 -1
- package/dist/primitives/thread/ThreadSuggestion.d.ts +11 -2
- package/dist/primitives/thread/ThreadSuggestion.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadSuggestion.js +21 -2
- package/dist/primitives/thread/ThreadSuggestion.js.map +1 -1
- package/dist/primitives/thread/ThreadSuggestion.mjs +20 -1
- package/dist/primitives/thread/ThreadSuggestion.mjs.map +1 -1
- package/dist/primitives/thread/ThreadViewport.d.ts +1 -1
- package/dist/primitives/thread/ThreadViewport.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadViewport.js +1 -1
- package/dist/primitives/thread/ThreadViewport.js.map +1 -1
- package/dist/primitives/thread/ThreadViewport.mjs +1 -1
- package/dist/primitives/thread/ThreadViewport.mjs.map +1 -1
- package/dist/primitives/thread/useThreadViewportAutoScroll.d.ts.map +1 -0
- package/dist/{primitive-hooks → primitives}/thread/useThreadViewportAutoScroll.js +1 -1
- package/dist/primitives/thread/useThreadViewportAutoScroll.js.map +1 -0
- package/dist/{primitive-hooks → primitives}/thread/useThreadViewportAutoScroll.mjs +1 -1
- package/dist/primitives/thread/useThreadViewportAutoScroll.mjs.map +1 -0
- package/dist/runtimes/adapters/thread-history/ThreadHistoryAdapter.d.ts.map +1 -1
- package/dist/runtimes/adapters/thread-history/ThreadHistoryAdapter.js.map +1 -1
- package/dist/runtimes/core/AssistantRuntimeCore.d.ts +2 -2
- package/dist/runtimes/core/AssistantRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/core/AssistantRuntimeCore.js.map +1 -1
- package/dist/runtimes/core/BaseAssistantRuntimeCore.d.ts +4 -5
- package/dist/runtimes/core/BaseAssistantRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/core/BaseAssistantRuntimeCore.js +4 -6
- package/dist/runtimes/core/BaseAssistantRuntimeCore.js.map +1 -1
- package/dist/runtimes/core/BaseAssistantRuntimeCore.mjs +4 -6
- package/dist/runtimes/core/BaseAssistantRuntimeCore.mjs.map +1 -1
- package/dist/runtimes/core/BaseThreadRuntimeCore.d.ts +5 -4
- package/dist/runtimes/core/BaseThreadRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/core/BaseThreadRuntimeCore.js +6 -6
- package/dist/runtimes/core/BaseThreadRuntimeCore.js.map +1 -1
- package/dist/runtimes/core/BaseThreadRuntimeCore.mjs +6 -6
- package/dist/runtimes/core/BaseThreadRuntimeCore.mjs.map +1 -1
- package/dist/runtimes/core/ThreadRuntimeCore.d.ts +4 -3
- package/dist/runtimes/core/ThreadRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/core/ThreadRuntimeCore.js.map +1 -1
- package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.d.ts +1 -1
- package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.d.ts.map +1 -1
- package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.js +6 -6
- package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.js.map +1 -1
- package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.mjs +6 -6
- package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.mjs.map +1 -1
- package/dist/runtimes/edge/EdgeChatAdapter.d.ts +1 -1
- package/dist/runtimes/edge/EdgeChatAdapter.d.ts.map +1 -1
- package/dist/runtimes/edge/EdgeChatAdapter.js +6 -6
- package/dist/runtimes/edge/EdgeChatAdapter.js.map +1 -1
- package/dist/runtimes/edge/EdgeChatAdapter.mjs +6 -6
- package/dist/runtimes/edge/EdgeChatAdapter.mjs.map +1 -1
- package/dist/runtimes/edge/EdgeRuntimeRequestOptions.js +2 -2
- package/dist/runtimes/edge/EdgeRuntimeRequestOptions.js.map +1 -1
- package/dist/runtimes/edge/EdgeRuntimeRequestOptions.mjs +1 -1
- package/dist/runtimes/edge/EdgeRuntimeRequestOptions.mjs.map +1 -1
- package/dist/runtimes/edge/converters/fromLanguageModelTools.d.ts +1 -1
- package/dist/runtimes/edge/converters/fromLanguageModelTools.d.ts.map +1 -1
- package/dist/runtimes/edge/converters/fromLanguageModelTools.js.map +1 -1
- package/dist/runtimes/edge/converters/fromLanguageModelTools.mjs.map +1 -1
- package/dist/runtimes/edge/converters/toLanguageModelTools.d.ts +1 -1
- package/dist/runtimes/edge/converters/toLanguageModelTools.d.ts.map +1 -1
- package/dist/runtimes/edge/converters/toLanguageModelTools.js.map +1 -1
- package/dist/runtimes/edge/converters/toLanguageModelTools.mjs.map +1 -1
- package/dist/runtimes/edge/createEdgeRuntimeAPI.d.ts +1 -2
- package/dist/runtimes/edge/createEdgeRuntimeAPI.d.ts.map +1 -1
- package/dist/runtimes/edge/createEdgeRuntimeAPI.js +2 -2
- package/dist/runtimes/edge/createEdgeRuntimeAPI.js.map +1 -1
- package/dist/runtimes/edge/createEdgeRuntimeAPI.mjs +1 -1
- package/dist/runtimes/edge/createEdgeRuntimeAPI.mjs.map +1 -1
- package/dist/runtimes/edge/streams/toolResultStream.d.ts +1 -1
- package/dist/runtimes/edge/streams/toolResultStream.d.ts.map +1 -1
- package/dist/runtimes/edge/streams/toolResultStream.js.map +1 -1
- package/dist/runtimes/edge/streams/toolResultStream.mjs.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreRuntimeCore.js +1 -1
- package/dist/runtimes/external-store/ExternalStoreRuntimeCore.js.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreRuntimeCore.mjs +1 -1
- package/dist/runtimes/external-store/ExternalStoreRuntimeCore.mjs.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.d.ts +3 -2
- package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js +2 -2
- package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.mjs +2 -2
- package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.mjs.map +1 -1
- package/dist/runtimes/external-store/external-message-converter.d.ts +1 -0
- package/dist/runtimes/external-store/external-message-converter.d.ts.map +1 -1
- package/dist/runtimes/external-store/external-message-converter.js +23 -0
- package/dist/runtimes/external-store/external-message-converter.js.map +1 -1
- package/dist/runtimes/external-store/external-message-converter.mjs +22 -0
- package/dist/runtimes/external-store/external-message-converter.mjs.map +1 -1
- package/dist/runtimes/external-store/index.d.ts +1 -1
- package/dist/runtimes/external-store/index.d.ts.map +1 -1
- package/dist/runtimes/external-store/index.js +2 -0
- package/dist/runtimes/external-store/index.js.map +1 -1
- package/dist/runtimes/external-store/index.mjs +5 -1
- package/dist/runtimes/external-store/index.mjs.map +1 -1
- package/dist/runtimes/local/ChatModelAdapter.d.ts +6 -2
- package/dist/runtimes/local/ChatModelAdapter.d.ts.map +1 -1
- package/dist/runtimes/local/ChatModelAdapter.js.map +1 -1
- package/dist/runtimes/local/LocalRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/local/LocalRuntimeCore.js +1 -4
- package/dist/runtimes/local/LocalRuntimeCore.js.map +1 -1
- package/dist/runtimes/local/LocalRuntimeCore.mjs +1 -4
- package/dist/runtimes/local/LocalRuntimeCore.mjs.map +1 -1
- package/dist/runtimes/local/LocalThreadRuntimeCore.d.ts +3 -2
- package/dist/runtimes/local/LocalThreadRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/local/LocalThreadRuntimeCore.js +5 -3
- package/dist/runtimes/local/LocalThreadRuntimeCore.js.map +1 -1
- package/dist/runtimes/local/LocalThreadRuntimeCore.mjs +5 -3
- package/dist/runtimes/local/LocalThreadRuntimeCore.mjs.map +1 -1
- package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.js +1 -1
- package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.js.map +1 -1
- package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.mjs +1 -1
- package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.mjs.map +1 -1
- package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.d.ts +2 -2
- package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.d.ts +2 -2
- package/dist/tailwindcss/index.d.ts.map +1 -1
- package/dist/tailwindcss/index.js +6 -2
- package/dist/tailwindcss/index.js.map +1 -1
- package/dist/tailwindcss/index.mjs +6 -2
- package/dist/tailwindcss/index.mjs.map +1 -1
- package/dist/types/index.d.ts +0 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/ui/thread-config.d.ts +1 -1
- package/dist/ui/thread-config.d.ts.map +1 -1
- package/dist/ui/thread-config.js.map +1 -1
- package/dist/ui/thread-config.mjs.map +1 -1
- package/dist/ui/thread.d.ts +1 -1
- package/dist/utils/CompositeContextProvider.d.ts +10 -0
- package/dist/utils/CompositeContextProvider.d.ts.map +1 -0
- package/dist/utils/{ProxyConfigProvider.js → CompositeContextProvider.js} +12 -12
- package/dist/utils/CompositeContextProvider.js.map +1 -0
- package/dist/utils/{ProxyConfigProvider.mjs → CompositeContextProvider.mjs} +9 -9
- package/dist/utils/CompositeContextProvider.mjs.map +1 -0
- package/package.json +3 -3
- package/src/api/AssistantRuntime.ts +19 -8
- package/src/api/ThreadRuntime.ts +15 -8
- package/src/context/react/ThreadContext.ts +9 -9
- package/src/context/react/index.ts +5 -1
- package/src/index.ts +1 -2
- package/src/internal.ts +1 -1
- package/src/{types/ModelConfigTypes.ts → model-context/ModelContextTypes.ts} +9 -9
- package/src/{model-config → model-context}/index.ts +14 -0
- package/src/{model-config → model-context}/useAssistantInstructions.tsx +2 -2
- package/src/{model-config → model-context}/useAssistantTool.tsx +4 -4
- package/src/primitives/actionBar/ActionBarCopy.tsx +38 -3
- package/src/primitives/actionBar/ActionBarEdit.tsx +14 -1
- package/src/primitives/actionBar/ActionBarFeedbackNegative.tsx +12 -1
- package/src/primitives/actionBar/ActionBarFeedbackPositive.tsx +12 -3
- package/src/primitives/actionBar/ActionBarReload.tsx +21 -1
- package/src/primitives/actionBar/ActionBarSpeak.tsx +19 -1
- package/src/primitives/actionBar/ActionBarStopSpeaking.tsx +18 -1
- package/src/primitives/attachment/AttachmentRemove.tsx +12 -1
- package/src/primitives/branchPicker/BranchPickerCount.tsx +6 -1
- package/src/primitives/branchPicker/BranchPickerNext.tsx +17 -1
- package/src/primitives/branchPicker/BranchPickerNumber.tsx +6 -1
- package/src/primitives/branchPicker/BranchPickerPrevious.tsx +17 -1
- package/src/primitives/composer/ComposerAddAttachment.tsx +36 -1
- package/src/primitives/composer/ComposerCancel.tsx +14 -1
- package/src/primitives/composer/ComposerIf.tsx +17 -4
- package/src/primitives/composer/ComposerRoot.tsx +1 -1
- package/src/primitives/composer/ComposerSend.tsx +21 -1
- package/src/primitives/contentPart/ContentPartDisplay.tsx +4 -1
- package/src/primitives/contentPart/ContentPartImage.tsx +1 -1
- package/src/primitives/contentPart/ContentPartText.tsx +1 -1
- package/src/primitives/index.ts +4 -0
- package/src/primitives/message/MessageIf.tsx +77 -3
- package/src/primitives/thread/ThreadEmpty.tsx +2 -2
- package/src/primitives/thread/ThreadIf.tsx +23 -4
- package/src/primitives/thread/ThreadScrollToBottom.tsx +16 -1
- package/src/primitives/thread/ThreadSuggestion.tsx +27 -1
- package/src/primitives/thread/ThreadViewport.tsx +1 -1
- package/src/runtimes/adapters/thread-history/ThreadHistoryAdapter.ts +0 -1
- package/src/runtimes/core/AssistantRuntimeCore.tsx +2 -2
- package/src/runtimes/core/BaseAssistantRuntimeCore.tsx +6 -8
- package/src/runtimes/core/BaseThreadRuntimeCore.tsx +7 -10
- package/src/runtimes/core/ThreadRuntimeCore.tsx +4 -3
- package/src/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.ts +6 -6
- package/src/runtimes/edge/EdgeChatAdapter.ts +6 -6
- package/src/runtimes/edge/EdgeRuntimeRequestOptions.ts +1 -1
- package/src/runtimes/edge/converters/fromLanguageModelTools.ts +1 -1
- package/src/runtimes/edge/converters/toLanguageModelTools.ts +1 -1
- package/src/runtimes/edge/createEdgeRuntimeAPI.ts +2 -2
- package/src/runtimes/edge/streams/toolResultStream.ts +1 -1
- package/src/runtimes/external-store/ExternalStoreRuntimeCore.tsx +1 -2
- package/src/runtimes/external-store/ExternalStoreThreadRuntimeCore.tsx +4 -3
- package/src/runtimes/external-store/external-message-converter.tsx +28 -0
- package/src/runtimes/external-store/index.ts +4 -1
- package/src/runtimes/local/ChatModelAdapter.tsx +7 -2
- package/src/runtimes/local/LocalRuntimeCore.tsx +1 -4
- package/src/runtimes/local/LocalThreadRuntimeCore.tsx +7 -8
- package/src/runtimes/remote-thread-list/EMPTY_THREAD_CORE.tsx +1 -1
- package/src/tailwindcss/index.ts +8 -2
- package/src/types/index.ts +0 -6
- package/src/ui/thread-config.tsx +1 -1
- package/src/utils/{ProxyConfigProvider.ts → CompositeContextProvider.ts} +8 -8
- package/dist/model-config/index.d.ts.map +0 -1
- package/dist/model-config/index.js.map +0 -1
- package/dist/model-config/index.mjs.map +0 -1
- package/dist/model-config/makeAssistantTool.d.ts.map +0 -1
- package/dist/model-config/makeAssistantTool.js.map +0 -1
- package/dist/model-config/makeAssistantTool.mjs.map +0 -1
- package/dist/model-config/makeAssistantToolUI.d.ts.map +0 -1
- package/dist/model-config/makeAssistantToolUI.js.map +0 -1
- package/dist/model-config/makeAssistantToolUI.mjs.map +0 -1
- package/dist/model-config/useAssistantInstructions.d.ts.map +0 -1
- package/dist/model-config/useAssistantInstructions.js.map +0 -1
- package/dist/model-config/useAssistantInstructions.mjs.map +0 -1
- package/dist/model-config/useAssistantTool.d.ts.map +0 -1
- package/dist/model-config/useAssistantTool.js.map +0 -1
- package/dist/model-config/useAssistantTool.mjs.map +0 -1
- package/dist/model-config/useAssistantToolUI.d.ts.map +0 -1
- package/dist/model-config/useAssistantToolUI.js.map +0 -1
- package/dist/model-config/useAssistantToolUI.mjs.map +0 -1
- package/dist/model-config/useInlineRender.d.ts.map +0 -1
- package/dist/model-config/useInlineRender.js.map +0 -1
- package/dist/model-config/useInlineRender.mjs.map +0 -1
- package/dist/primitive-hooks/actionBar/useActionBarCopy.d.ts +0 -7
- package/dist/primitive-hooks/actionBar/useActionBarCopy.d.ts.map +0 -1
- package/dist/primitive-hooks/actionBar/useActionBarCopy.js +0 -54
- package/dist/primitive-hooks/actionBar/useActionBarCopy.js.map +0 -1
- package/dist/primitive-hooks/actionBar/useActionBarCopy.mjs +0 -34
- package/dist/primitive-hooks/actionBar/useActionBarCopy.mjs.map +0 -1
- package/dist/primitive-hooks/actionBar/useActionBarEdit.d.ts +0 -2
- package/dist/primitive-hooks/actionBar/useActionBarEdit.d.ts.map +0 -1
- package/dist/primitive-hooks/actionBar/useActionBarEdit.js +0 -42
- package/dist/primitive-hooks/actionBar/useActionBarEdit.js.map +0 -1
- package/dist/primitive-hooks/actionBar/useActionBarEdit.mjs +0 -18
- package/dist/primitive-hooks/actionBar/useActionBarEdit.mjs.map +0 -1
- package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.d.ts +0 -2
- package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.d.ts.map +0 -1
- package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.js +0 -40
- package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.js.map +0 -1
- package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.mjs +0 -16
- package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.mjs.map +0 -1
- package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.d.ts +0 -2
- package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.d.ts.map +0 -1
- package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.js +0 -40
- package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.js.map +0 -1
- package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.mjs +0 -16
- package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.mjs.map +0 -1
- package/dist/primitive-hooks/actionBar/useActionBarReload.d.ts +0 -2
- package/dist/primitive-hooks/actionBar/useActionBarReload.d.ts.map +0 -1
- package/dist/primitive-hooks/actionBar/useActionBarReload.js +0 -48
- package/dist/primitive-hooks/actionBar/useActionBarReload.js.map +0 -1
- package/dist/primitive-hooks/actionBar/useActionBarReload.mjs +0 -24
- package/dist/primitive-hooks/actionBar/useActionBarReload.mjs.map +0 -1
- package/dist/primitive-hooks/actionBar/useActionBarSpeak.d.ts +0 -2
- package/dist/primitive-hooks/actionBar/useActionBarSpeak.d.ts.map +0 -1
- package/dist/primitive-hooks/actionBar/useActionBarSpeak.js +0 -44
- package/dist/primitive-hooks/actionBar/useActionBarSpeak.js.map +0 -1
- package/dist/primitive-hooks/actionBar/useActionBarSpeak.mjs +0 -20
- package/dist/primitive-hooks/actionBar/useActionBarSpeak.mjs.map +0 -1
- package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.d.ts +0 -2
- package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.d.ts.map +0 -1
- package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.js +0 -42
- package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.js.map +0 -1
- package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.mjs +0 -21
- package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.mjs.map +0 -1
- package/dist/primitive-hooks/attachment/useAttachmentRemove.d.ts +0 -2
- package/dist/primitive-hooks/attachment/useAttachmentRemove.d.ts.map +0 -1
- package/dist/primitive-hooks/attachment/useAttachmentRemove.js +0 -40
- package/dist/primitive-hooks/attachment/useAttachmentRemove.js.map +0 -1
- package/dist/primitive-hooks/attachment/useAttachmentRemove.mjs +0 -16
- package/dist/primitive-hooks/attachment/useAttachmentRemove.mjs.map +0 -1
- package/dist/primitive-hooks/branchPicker/useBranchPickerCount.d.ts +0 -2
- package/dist/primitive-hooks/branchPicker/useBranchPickerCount.d.ts.map +0 -1
- package/dist/primitive-hooks/branchPicker/useBranchPickerCount.js +0 -36
- package/dist/primitive-hooks/branchPicker/useBranchPickerCount.js.map +0 -1
- package/dist/primitive-hooks/branchPicker/useBranchPickerCount.mjs +0 -12
- package/dist/primitive-hooks/branchPicker/useBranchPickerCount.mjs.map +0 -1
- package/dist/primitive-hooks/branchPicker/useBranchPickerNext.d.ts +0 -2
- package/dist/primitive-hooks/branchPicker/useBranchPickerNext.d.ts.map +0 -1
- package/dist/primitive-hooks/branchPicker/useBranchPickerNext.js +0 -42
- package/dist/primitive-hooks/branchPicker/useBranchPickerNext.js.map +0 -1
- package/dist/primitive-hooks/branchPicker/useBranchPickerNext.mjs +0 -21
- package/dist/primitive-hooks/branchPicker/useBranchPickerNext.mjs.map +0 -1
- package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.d.ts +0 -2
- package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.d.ts.map +0 -1
- package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.js +0 -36
- package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.js.map +0 -1
- package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.mjs +0 -12
- package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.mjs.map +0 -1
- package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.d.ts +0 -2
- package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.d.ts.map +0 -1
- package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.js +0 -42
- package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.js.map +0 -1
- package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.mjs +0 -21
- package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.mjs.map +0 -1
- package/dist/primitive-hooks/composer/useComposerAddAttachment.d.ts +0 -8
- package/dist/primitive-hooks/composer/useComposerAddAttachment.d.ts.map +0 -1
- package/dist/primitive-hooks/composer/useComposerAddAttachment.js +0 -58
- package/dist/primitive-hooks/composer/useComposerAddAttachment.js.map +0 -1
- package/dist/primitive-hooks/composer/useComposerAddAttachment.mjs +0 -34
- package/dist/primitive-hooks/composer/useComposerAddAttachment.mjs.map +0 -1
- package/dist/primitive-hooks/composer/useComposerCancel.d.ts +0 -2
- package/dist/primitive-hooks/composer/useComposerCancel.d.ts.map +0 -1
- package/dist/primitive-hooks/composer/useComposerCancel.js +0 -42
- package/dist/primitive-hooks/composer/useComposerCancel.js.map +0 -1
- package/dist/primitive-hooks/composer/useComposerCancel.mjs +0 -18
- package/dist/primitive-hooks/composer/useComposerCancel.mjs.map +0 -1
- package/dist/primitive-hooks/composer/useComposerIf.d.ts +0 -8
- package/dist/primitive-hooks/composer/useComposerIf.d.ts.map +0 -1
- package/dist/primitive-hooks/composer/useComposerIf.js +0 -39
- package/dist/primitive-hooks/composer/useComposerIf.js.map +0 -1
- package/dist/primitive-hooks/composer/useComposerIf.mjs +0 -15
- package/dist/primitive-hooks/composer/useComposerIf.mjs.map +0 -1
- package/dist/primitive-hooks/composer/useComposerSend.d.ts +0 -2
- package/dist/primitive-hooks/composer/useComposerSend.d.ts.map +0 -1
- package/dist/primitive-hooks/composer/useComposerSend.js +0 -49
- package/dist/primitive-hooks/composer/useComposerSend.js.map +0 -1
- package/dist/primitive-hooks/composer/useComposerSend.mjs +0 -25
- package/dist/primitive-hooks/composer/useComposerSend.mjs.map +0 -1
- package/dist/primitive-hooks/contentPart/index.d.ts +0 -4
- package/dist/primitive-hooks/contentPart/index.d.ts.map +0 -1
- package/dist/primitive-hooks/contentPart/index.js +0 -37
- package/dist/primitive-hooks/contentPart/index.js.map +0 -1
- package/dist/primitive-hooks/contentPart/index.mjs +0 -10
- package/dist/primitive-hooks/contentPart/index.mjs.map +0 -1
- package/dist/primitive-hooks/contentPart/useContentPartDisplay.d.ts.map +0 -1
- package/dist/primitive-hooks/contentPart/useContentPartDisplay.js.map +0 -1
- package/dist/primitive-hooks/contentPart/useContentPartDisplay.mjs.map +0 -1
- package/dist/primitive-hooks/contentPart/useContentPartImage.d.ts.map +0 -1
- package/dist/primitive-hooks/contentPart/useContentPartImage.js.map +0 -1
- package/dist/primitive-hooks/contentPart/useContentPartImage.mjs.map +0 -1
- package/dist/primitive-hooks/contentPart/useContentPartText.d.ts.map +0 -1
- package/dist/primitive-hooks/contentPart/useContentPartText.js.map +0 -1
- package/dist/primitive-hooks/contentPart/useContentPartText.mjs.map +0 -1
- package/dist/primitive-hooks/index.d.ts +0 -2
- package/dist/primitive-hooks/index.d.ts.map +0 -1
- package/dist/primitive-hooks/index.js +0 -25
- package/dist/primitive-hooks/index.js.map +0 -1
- package/dist/primitive-hooks/index.mjs +0 -3
- package/dist/primitive-hooks/index.mjs.map +0 -1
- package/dist/primitive-hooks/message/useMessageIf.d.ts +0 -17
- package/dist/primitive-hooks/message/useMessageIf.d.ts.map +0 -1
- package/dist/primitive-hooks/message/useMessageIf.js +0 -68
- package/dist/primitive-hooks/message/useMessageIf.js.map +0 -1
- package/dist/primitive-hooks/message/useMessageIf.mjs +0 -47
- package/dist/primitive-hooks/message/useMessageIf.mjs.map +0 -1
- package/dist/primitive-hooks/thread/useThreadEmpty.d.ts +0 -2
- package/dist/primitive-hooks/thread/useThreadEmpty.d.ts.map +0 -1
- package/dist/primitive-hooks/thread/useThreadEmpty.js +0 -35
- package/dist/primitive-hooks/thread/useThreadEmpty.js.map +0 -1
- package/dist/primitive-hooks/thread/useThreadEmpty.mjs +0 -11
- package/dist/primitive-hooks/thread/useThreadEmpty.mjs.map +0 -1
- package/dist/primitive-hooks/thread/useThreadIf.d.ts +0 -10
- package/dist/primitive-hooks/thread/useThreadIf.d.ts.map +0 -1
- package/dist/primitive-hooks/thread/useThreadIf.js +0 -43
- package/dist/primitive-hooks/thread/useThreadIf.js.map +0 -1
- package/dist/primitive-hooks/thread/useThreadIf.mjs +0 -19
- package/dist/primitive-hooks/thread/useThreadIf.mjs.map +0 -1
- package/dist/primitive-hooks/thread/useThreadScrollToBottom.d.ts +0 -2
- package/dist/primitive-hooks/thread/useThreadScrollToBottom.d.ts.map +0 -1
- package/dist/primitive-hooks/thread/useThreadScrollToBottom.js +0 -43
- package/dist/primitive-hooks/thread/useThreadScrollToBottom.js.map +0 -1
- package/dist/primitive-hooks/thread/useThreadScrollToBottom.mjs +0 -19
- package/dist/primitive-hooks/thread/useThreadScrollToBottom.mjs.map +0 -1
- package/dist/primitive-hooks/thread/useThreadSuggestion.d.ts +0 -9
- package/dist/primitive-hooks/thread/useThreadSuggestion.d.ts.map +0 -1
- package/dist/primitive-hooks/thread/useThreadSuggestion.js +0 -51
- package/dist/primitive-hooks/thread/useThreadSuggestion.js.map +0 -1
- package/dist/primitive-hooks/thread/useThreadSuggestion.mjs +0 -27
- package/dist/primitive-hooks/thread/useThreadSuggestion.mjs.map +0 -1
- package/dist/primitive-hooks/thread/useThreadViewportAutoScroll.d.ts.map +0 -1
- package/dist/primitive-hooks/thread/useThreadViewportAutoScroll.js.map +0 -1
- package/dist/primitive-hooks/thread/useThreadViewportAutoScroll.mjs.map +0 -1
- package/dist/types/ModelConfigTypes.d.ts.map +0 -1
- package/dist/types/ModelConfigTypes.js.map +0 -1
- package/dist/types/ModelConfigTypes.mjs.map +0 -1
- package/dist/utils/ProxyConfigProvider.d.ts +0 -10
- package/dist/utils/ProxyConfigProvider.d.ts.map +0 -1
- package/dist/utils/ProxyConfigProvider.js.map +0 -1
- package/dist/utils/ProxyConfigProvider.mjs.map +0 -1
- package/src/primitive-hooks/actionBar/useActionBarCopy.tsx +0 -45
- package/src/primitive-hooks/actionBar/useActionBarEdit.tsx +0 -16
- package/src/primitive-hooks/actionBar/useActionBarFeedbackNegative.tsx +0 -14
- package/src/primitive-hooks/actionBar/useActionBarFeedbackPositive.tsx +0 -14
- package/src/primitive-hooks/actionBar/useActionBarReload.tsx +0 -23
- package/src/primitive-hooks/actionBar/useActionBarSpeak.tsx +0 -22
- package/src/primitive-hooks/actionBar/useActionBarStopSpeaking.tsx +0 -20
- package/src/primitive-hooks/attachment/useAttachmentRemove.ts +0 -14
- package/src/primitive-hooks/branchPicker/useBranchPickerCount.tsx +0 -8
- package/src/primitive-hooks/branchPicker/useBranchPickerNext.tsx +0 -19
- package/src/primitive-hooks/branchPicker/useBranchPickerNumber.tsx +0 -8
- package/src/primitive-hooks/branchPicker/useBranchPickerPrevious.tsx +0 -19
- package/src/primitive-hooks/composer/useComposerAddAttachment.tsx +0 -42
- package/src/primitive-hooks/composer/useComposerCancel.tsx +0 -16
- package/src/primitive-hooks/composer/useComposerIf.tsx +0 -19
- package/src/primitive-hooks/composer/useComposerSend.tsx +0 -25
- package/src/primitive-hooks/contentPart/index.ts +0 -3
- package/src/primitive-hooks/index.ts +0 -1
- package/src/primitive-hooks/message/useMessageIf.tsx +0 -80
- package/src/primitive-hooks/thread/useThreadEmpty.tsx +0 -7
- package/src/primitive-hooks/thread/useThreadIf.tsx +0 -25
- package/src/primitive-hooks/thread/useThreadScrollToBottom.tsx +0 -18
- package/src/primitive-hooks/thread/useThreadSuggestion.tsx +0 -33
- /package/dist/{model-config → model-context}/makeAssistantTool.d.ts +0 -0
- /package/dist/{model-config → model-context}/makeAssistantToolUI.d.ts +0 -0
- /package/dist/{model-config → model-context}/useAssistantInstructions.d.ts +0 -0
- /package/dist/{model-config → model-context}/useAssistantToolUI.d.ts +0 -0
- /package/dist/{model-config → model-context}/useInlineRender.d.ts +0 -0
- /package/dist/{primitive-hooks → primitives}/contentPart/useContentPartDisplay.d.ts +0 -0
- /package/dist/{primitive-hooks → primitives}/contentPart/useContentPartImage.d.ts +0 -0
- /package/dist/{primitive-hooks → primitives}/contentPart/useContentPartText.d.ts +0 -0
- /package/dist/{primitive-hooks → primitives}/thread/useThreadViewportAutoScroll.d.ts +0 -0
- /package/src/{model-config → model-context}/makeAssistantTool.tsx +0 -0
- /package/src/{model-config → model-context}/makeAssistantToolUI.tsx +0 -0
- /package/src/{model-config → model-context}/useAssistantToolUI.tsx +0 -0
- /package/src/{model-config → model-context}/useInlineRender.tsx +0 -0
- /package/src/{primitive-hooks → primitives}/contentPart/useContentPartDisplay.tsx +0 -0
- /package/src/{primitive-hooks → primitives}/contentPart/useContentPartImage.tsx +0 -0
- /package/src/{primitive-hooks → primitives}/contentPart/useContentPartText.tsx +0 -0
- /package/src/{primitive-hooks → primitives}/thread/useThreadViewportAutoScroll.tsx +0 -0
@@ -4,6 +4,6 @@ export type DangerousInBrowserAdapterOptions = CreateEdgeRuntimeAPIOptions;
|
|
4
4
|
export declare class DangerousInBrowserAdapter implements ChatModelAdapter {
|
5
5
|
private options;
|
6
6
|
constructor(options: DangerousInBrowserAdapterOptions);
|
7
|
-
run({ messages, abortSignal,
|
7
|
+
run({ messages, abortSignal, context }: ChatModelRunOptions): AsyncGenerator<import("../local/ChatModelAdapter").CoreChatModelRunResult, void, unknown>;
|
8
8
|
}
|
9
9
|
//# sourceMappingURL=DangerousInBrowserAdapter.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"DangerousInBrowserAdapter.d.ts","sourceRoot":"","sources":["../../../src/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,2BAA2B,CAAC;AAOnC,OAAO,EACL,2BAA2B,EAE5B,MAAM,8BAA8B,CAAC;AAEtC,MAAM,MAAM,gCAAgC,GAAG,2BAA2B,CAAC;AAE3E,qBAAa,yBAA0B,YAAW,gBAAgB;IACpD,OAAO,CAAC,OAAO;gBAAP,OAAO,EAAE,gCAAgC;IAEtD,GAAG,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,
|
1
|
+
{"version":3,"file":"DangerousInBrowserAdapter.d.ts","sourceRoot":"","sources":["../../../src/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,2BAA2B,CAAC;AAOnC,OAAO,EACL,2BAA2B,EAE5B,MAAM,8BAA8B,CAAC;AAEtC,MAAM,MAAM,gCAAgC,GAAG,2BAA2B,CAAC;AAE3E,qBAAa,yBAA0B,YAAW,gBAAgB;IACpD,OAAO,CAAC,OAAO;gBAAP,OAAO,EAAE,gCAAgC;IAEtD,GAAG,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,mBAAmB;CAqBnE"}
|
@@ -33,19 +33,19 @@ var DangerousInBrowserAdapter = class {
|
|
33
33
|
constructor(options) {
|
34
34
|
this.options = options;
|
35
35
|
}
|
36
|
-
async *run({ messages, abortSignal,
|
36
|
+
async *run({ messages, abortSignal, context }) {
|
37
37
|
const res = await (0, import_createEdgeRuntimeAPI.getEdgeRuntimeStream)({
|
38
38
|
options: this.options,
|
39
39
|
abortSignal,
|
40
40
|
requestData: {
|
41
|
-
system:
|
41
|
+
system: context.system,
|
42
42
|
messages: (0, import_toCoreMessages.toCoreMessages)(messages),
|
43
|
-
tools:
|
44
|
-
...
|
45
|
-
...
|
43
|
+
tools: context.tools ? (0, import_toLanguageModelTools.toLanguageModelTools)(context.tools) : [],
|
44
|
+
...context.callSettings,
|
45
|
+
...context.config
|
46
46
|
}
|
47
47
|
});
|
48
|
-
const stream = res.pipeThrough((0, import_toolResultStream.toolResultStream)(
|
48
|
+
const stream = res.pipeThrough((0, import_toolResultStream.toolResultStream)(context.tools, abortSignal)).pipeThrough((0, import_runResultStream.runResultStream)());
|
49
49
|
for await (const update of (0, import_EdgeChatAdapter.asAsyncIterable)(stream)) {
|
50
50
|
yield update;
|
51
51
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.ts"],"sourcesContent":["import {\n ChatModelAdapter,\n ChatModelRunOptions,\n} from \"../local/ChatModelAdapter\";\nimport { toCoreMessages } from \"../edge/converters/toCoreMessages\";\nimport { toLanguageModelTools } from \"../edge/converters/toLanguageModelTools\";\nimport { EdgeRuntimeRequestOptions } from \"../edge/EdgeRuntimeRequestOptions\";\nimport { runResultStream } from \"../edge/streams/runResultStream\";\nimport { toolResultStream } from \"../edge/streams/toolResultStream\";\nimport { asAsyncIterable } from \"../edge/EdgeChatAdapter\";\nimport {\n CreateEdgeRuntimeAPIOptions,\n getEdgeRuntimeStream,\n} from \"../edge/createEdgeRuntimeAPI\";\n\nexport type DangerousInBrowserAdapterOptions = CreateEdgeRuntimeAPIOptions;\n\nexport class DangerousInBrowserAdapter implements ChatModelAdapter {\n constructor(private options: DangerousInBrowserAdapterOptions) {}\n\n async *run({ messages, abortSignal,
|
1
|
+
{"version":3,"sources":["../../../src/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.ts"],"sourcesContent":["import {\n ChatModelAdapter,\n ChatModelRunOptions,\n} from \"../local/ChatModelAdapter\";\nimport { toCoreMessages } from \"../edge/converters/toCoreMessages\";\nimport { toLanguageModelTools } from \"../edge/converters/toLanguageModelTools\";\nimport { EdgeRuntimeRequestOptions } from \"../edge/EdgeRuntimeRequestOptions\";\nimport { runResultStream } from \"../edge/streams/runResultStream\";\nimport { toolResultStream } from \"../edge/streams/toolResultStream\";\nimport { asAsyncIterable } from \"../edge/EdgeChatAdapter\";\nimport {\n CreateEdgeRuntimeAPIOptions,\n getEdgeRuntimeStream,\n} from \"../edge/createEdgeRuntimeAPI\";\n\nexport type DangerousInBrowserAdapterOptions = CreateEdgeRuntimeAPIOptions;\n\nexport class DangerousInBrowserAdapter implements ChatModelAdapter {\n constructor(private options: DangerousInBrowserAdapterOptions) {}\n\n async *run({ messages, abortSignal, context }: ChatModelRunOptions) {\n const res = await getEdgeRuntimeStream({\n options: this.options,\n abortSignal,\n requestData: {\n system: context.system,\n messages: toCoreMessages(messages),\n tools: context.tools ? toLanguageModelTools(context.tools) : [],\n ...context.callSettings,\n ...context.config,\n } satisfies EdgeRuntimeRequestOptions,\n });\n\n const stream = res\n .pipeThrough(toolResultStream(context.tools, abortSignal))\n .pipeThrough(runResultStream());\n\n for await (const update of asAsyncIterable(stream)) {\n yield update;\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA,4BAA+B;AAC/B,kCAAqC;AAErC,6BAAgC;AAChC,8BAAiC;AACjC,6BAAgC;AAChC,kCAGO;AAIA,IAAM,4BAAN,MAA4D;AAAA,EACjE,YAAoB,SAA2C;AAA3C;AAAA,EAA4C;AAAA,EAEhE,OAAO,IAAI,EAAE,UAAU,aAAa,QAAQ,GAAwB;AAClE,UAAM,MAAM,UAAM,kDAAqB;AAAA,MACrC,SAAS,KAAK;AAAA,MACd;AAAA,MACA,aAAa;AAAA,QACX,QAAQ,QAAQ;AAAA,QAChB,cAAU,sCAAe,QAAQ;AAAA,QACjC,OAAO,QAAQ,YAAQ,kDAAqB,QAAQ,KAAK,IAAI,CAAC;AAAA,QAC9D,GAAG,QAAQ;AAAA,QACX,GAAG,QAAQ;AAAA,MACb;AAAA,IACF,CAAC;AAED,UAAM,SAAS,IACZ,gBAAY,0CAAiB,QAAQ,OAAO,WAAW,CAAC,EACxD,gBAAY,wCAAgB,CAAC;AAEhC,qBAAiB,cAAU,wCAAgB,MAAM,GAAG;AAClD,YAAM;AAAA,IACR;AAAA,EACF;AACF;","names":[]}
|
@@ -11,19 +11,19 @@ var DangerousInBrowserAdapter = class {
|
|
11
11
|
constructor(options) {
|
12
12
|
this.options = options;
|
13
13
|
}
|
14
|
-
async *run({ messages, abortSignal,
|
14
|
+
async *run({ messages, abortSignal, context }) {
|
15
15
|
const res = await getEdgeRuntimeStream({
|
16
16
|
options: this.options,
|
17
17
|
abortSignal,
|
18
18
|
requestData: {
|
19
|
-
system:
|
19
|
+
system: context.system,
|
20
20
|
messages: toCoreMessages(messages),
|
21
|
-
tools:
|
22
|
-
...
|
23
|
-
...
|
21
|
+
tools: context.tools ? toLanguageModelTools(context.tools) : [],
|
22
|
+
...context.callSettings,
|
23
|
+
...context.config
|
24
24
|
}
|
25
25
|
});
|
26
|
-
const stream = res.pipeThrough(toolResultStream(
|
26
|
+
const stream = res.pipeThrough(toolResultStream(context.tools, abortSignal)).pipeThrough(runResultStream());
|
27
27
|
for await (const update of asAsyncIterable(stream)) {
|
28
28
|
yield update;
|
29
29
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.ts"],"sourcesContent":["import {\n ChatModelAdapter,\n ChatModelRunOptions,\n} from \"../local/ChatModelAdapter\";\nimport { toCoreMessages } from \"../edge/converters/toCoreMessages\";\nimport { toLanguageModelTools } from \"../edge/converters/toLanguageModelTools\";\nimport { EdgeRuntimeRequestOptions } from \"../edge/EdgeRuntimeRequestOptions\";\nimport { runResultStream } from \"../edge/streams/runResultStream\";\nimport { toolResultStream } from \"../edge/streams/toolResultStream\";\nimport { asAsyncIterable } from \"../edge/EdgeChatAdapter\";\nimport {\n CreateEdgeRuntimeAPIOptions,\n getEdgeRuntimeStream,\n} from \"../edge/createEdgeRuntimeAPI\";\n\nexport type DangerousInBrowserAdapterOptions = CreateEdgeRuntimeAPIOptions;\n\nexport class DangerousInBrowserAdapter implements ChatModelAdapter {\n constructor(private options: DangerousInBrowserAdapterOptions) {}\n\n async *run({ messages, abortSignal,
|
1
|
+
{"version":3,"sources":["../../../src/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.ts"],"sourcesContent":["import {\n ChatModelAdapter,\n ChatModelRunOptions,\n} from \"../local/ChatModelAdapter\";\nimport { toCoreMessages } from \"../edge/converters/toCoreMessages\";\nimport { toLanguageModelTools } from \"../edge/converters/toLanguageModelTools\";\nimport { EdgeRuntimeRequestOptions } from \"../edge/EdgeRuntimeRequestOptions\";\nimport { runResultStream } from \"../edge/streams/runResultStream\";\nimport { toolResultStream } from \"../edge/streams/toolResultStream\";\nimport { asAsyncIterable } from \"../edge/EdgeChatAdapter\";\nimport {\n CreateEdgeRuntimeAPIOptions,\n getEdgeRuntimeStream,\n} from \"../edge/createEdgeRuntimeAPI\";\n\nexport type DangerousInBrowserAdapterOptions = CreateEdgeRuntimeAPIOptions;\n\nexport class DangerousInBrowserAdapter implements ChatModelAdapter {\n constructor(private options: DangerousInBrowserAdapterOptions) {}\n\n async *run({ messages, abortSignal, context }: ChatModelRunOptions) {\n const res = await getEdgeRuntimeStream({\n options: this.options,\n abortSignal,\n requestData: {\n system: context.system,\n messages: toCoreMessages(messages),\n tools: context.tools ? toLanguageModelTools(context.tools) : [],\n ...context.callSettings,\n ...context.config,\n } satisfies EdgeRuntimeRequestOptions,\n });\n\n const stream = res\n .pipeThrough(toolResultStream(context.tools, abortSignal))\n .pipeThrough(runResultStream());\n\n for await (const update of asAsyncIterable(stream)) {\n yield update;\n }\n }\n}\n"],"mappings":";AAIA,SAAS,sBAAsB;AAC/B,SAAS,4BAA4B;AAErC,SAAS,uBAAuB;AAChC,SAAS,wBAAwB;AACjC,SAAS,uBAAuB;AAChC;AAAA,EAEE;AAAA,OACK;AAIA,IAAM,4BAAN,MAA4D;AAAA,EACjE,YAAoB,SAA2C;AAA3C;AAAA,EAA4C;AAAA,EAEhE,OAAO,IAAI,EAAE,UAAU,aAAa,QAAQ,GAAwB;AAClE,UAAM,MAAM,MAAM,qBAAqB;AAAA,MACrC,SAAS,KAAK;AAAA,MACd;AAAA,MACA,aAAa;AAAA,QACX,QAAQ,QAAQ;AAAA,QAChB,UAAU,eAAe,QAAQ;AAAA,QACjC,OAAO,QAAQ,QAAQ,qBAAqB,QAAQ,KAAK,IAAI,CAAC;AAAA,QAC9D,GAAG,QAAQ;AAAA,QACX,GAAG,QAAQ;AAAA,MACb;AAAA,IACF,CAAC;AAED,UAAM,SAAS,IACZ,YAAY,iBAAiB,QAAQ,OAAO,WAAW,CAAC,EACxD,YAAY,gBAAgB,CAAC;AAEhC,qBAAiB,UAAU,gBAAgB,MAAM,GAAG;AAClD,YAAM;AAAA,IACR;AAAA,EACF;AACF;","names":[]}
|
@@ -19,6 +19,6 @@ export type EdgeChatAdapterOptions = {
|
|
19
19
|
export declare class EdgeChatAdapter implements ChatModelAdapter {
|
20
20
|
private options;
|
21
21
|
constructor(options: EdgeChatAdapterOptions);
|
22
|
-
run({ messages, runConfig, abortSignal,
|
22
|
+
run({ messages, runConfig, abortSignal, context, unstable_assistantMessageId, }: ChatModelRunOptions): AsyncGenerator<ChatModelRunResult, void, unknown>;
|
23
23
|
}
|
24
24
|
//# sourceMappingURL=EdgeChatAdapter.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"EdgeChatAdapter.d.ts","sourceRoot":"","sources":["../../../src/runtimes/edge/EdgeChatAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAU/D,wBAAgB,eAAe,CAAC,CAAC,EAC/B,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,GACxB,aAAa,CAAC,CAAC,CAAC,CAclB;AACD,MAAM,MAAM,sBAAsB,GAAG;IACnC,GAAG,EAAE,MAAM,CAAC;IAEZ,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAElC;;;OAGG;IACH,qBAAqB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC7C,CAAC;AAEF,qBAAa,eAAgB,YAAW,gBAAgB;IAC1C,OAAO,CAAC,OAAO;gBAAP,OAAO,EAAE,sBAAsB;IAE5C,GAAG,CAAC,EACT,QAAQ,EACR,SAAS,EACT,WAAW,EACX,
|
1
|
+
{"version":3,"file":"EdgeChatAdapter.d.ts","sourceRoot":"","sources":["../../../src/runtimes/edge/EdgeChatAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAU/D,wBAAgB,eAAe,CAAC,CAAC,EAC/B,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,GACxB,aAAa,CAAC,CAAC,CAAC,CAclB;AACD,MAAM,MAAM,sBAAsB,GAAG;IACnC,GAAG,EAAE,MAAM,CAAC;IAEZ,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAElC;;;OAGG;IACH,qBAAqB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC7C,CAAC;AAEF,qBAAa,eAAgB,YAAW,gBAAgB;IAC1C,OAAO,CAAC,OAAO;gBAAP,OAAO,EAAE,sBAAsB;IAE5C,GAAG,CAAC,EACT,QAAQ,EACR,SAAS,EACT,WAAW,EACX,OAAO,EACP,2BAA2B,GAC5B,EAAE,mBAAmB;CA8CvB"}
|
@@ -52,7 +52,7 @@ var EdgeChatAdapter = class {
|
|
52
52
|
messages,
|
53
53
|
runConfig,
|
54
54
|
abortSignal,
|
55
|
-
|
55
|
+
context,
|
56
56
|
unstable_assistantMessageId
|
57
57
|
}) {
|
58
58
|
const headers = new Headers(this.options.headers);
|
@@ -62,17 +62,17 @@ var EdgeChatAdapter = class {
|
|
62
62
|
headers,
|
63
63
|
credentials: this.options.credentials ?? "same-origin",
|
64
64
|
body: JSON.stringify({
|
65
|
-
system:
|
65
|
+
system: context.system,
|
66
66
|
messages: this.options.unstable_AISDKInterop ? (0, import_converters.toLanguageModelMessages)(
|
67
67
|
messages
|
68
68
|
) : (0, import_toCoreMessages.toCoreMessages)(messages, {
|
69
69
|
unstable_includeId: this.options.unstable_sendMessageIds
|
70
70
|
}),
|
71
|
-
tools:
|
71
|
+
tools: context.tools ? (0, import_toLanguageModelTools.toLanguageModelTools)(context.tools) : [],
|
72
72
|
unstable_assistantMessageId,
|
73
73
|
runConfig,
|
74
|
-
...
|
75
|
-
...
|
74
|
+
...context.callSettings,
|
75
|
+
...context.config,
|
76
76
|
...this.options.body
|
77
77
|
}),
|
78
78
|
signal: abortSignal
|
@@ -80,7 +80,7 @@ var EdgeChatAdapter = class {
|
|
80
80
|
if (!result.ok) {
|
81
81
|
throw new Error(`Status ${result.status}: ${await result.text()}`);
|
82
82
|
}
|
83
|
-
const stream = result.body.pipeThrough((0, import_streamPartDecoderStream.streamPartDecoderStream)()).pipeThrough((0, import_assistantDecoderStream.assistantDecoderStream)()).pipeThrough((0, import_toolResultStream.toolResultStream)(
|
83
|
+
const stream = result.body.pipeThrough((0, import_streamPartDecoderStream.streamPartDecoderStream)()).pipeThrough((0, import_assistantDecoderStream.assistantDecoderStream)()).pipeThrough((0, import_toolResultStream.toolResultStream)(context.tools, abortSignal)).pipeThrough((0, import_runResultStream.runResultStream)());
|
84
84
|
let update;
|
85
85
|
for await (update of asAsyncIterable(stream)) {
|
86
86
|
yield update;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/runtimes/edge/EdgeChatAdapter.ts"],"sourcesContent":["import {\n ChatModelAdapter,\n ChatModelRunOptions,\n} from \"../local/ChatModelAdapter\";\nimport { ChatModelRunResult } from \"../local/ChatModelAdapter\";\nimport { toCoreMessages } from \"./converters/toCoreMessages\";\nimport { toLanguageModelTools } from \"./converters/toLanguageModelTools\";\nimport { EdgeRuntimeRequestOptions } from \"./EdgeRuntimeRequestOptions\";\nimport { assistantDecoderStream } from \"./streams/assistantDecoderStream\";\nimport { streamPartDecoderStream } from \"./streams/utils/streamPartDecoderStream\";\nimport { runResultStream } from \"./streams/runResultStream\";\nimport { toolResultStream } from \"./streams/toolResultStream\";\nimport { toLanguageModelMessages } from \"./converters\";\n\nexport function asAsyncIterable<T>(\n source: ReadableStream<T>,\n): AsyncIterable<T> {\n return {\n [Symbol.asyncIterator]: () => {\n const reader = source.getReader();\n return {\n async next(): Promise<IteratorResult<T, undefined>> {\n const { done, value } = await reader.read();\n return done\n ? { done: true, value: undefined }\n : { done: false, value };\n },\n };\n },\n };\n}\nexport type EdgeChatAdapterOptions = {\n api: string;\n\n credentials?: RequestCredentials;\n headers?: Record<string, string> | Headers;\n body?: object;\n\n /**\n * When enabled, the adapter will not strip `id` from messages in the messages array.\n */\n unstable_sendMessageIds?: boolean;\n\n /**\n * When enabled, the adapter will send messages in the format expected by the Vercel AI SDK Core.\n * This feature will be removed in the future in favor of a better solution.\n */\n unstable_AISDKInterop?: boolean | undefined;\n};\n\nexport class EdgeChatAdapter implements ChatModelAdapter {\n constructor(private options: EdgeChatAdapterOptions) {}\n\n async *run({\n messages,\n runConfig,\n abortSignal,\n
|
1
|
+
{"version":3,"sources":["../../../src/runtimes/edge/EdgeChatAdapter.ts"],"sourcesContent":["import {\n ChatModelAdapter,\n ChatModelRunOptions,\n} from \"../local/ChatModelAdapter\";\nimport { ChatModelRunResult } from \"../local/ChatModelAdapter\";\nimport { toCoreMessages } from \"./converters/toCoreMessages\";\nimport { toLanguageModelTools } from \"./converters/toLanguageModelTools\";\nimport { EdgeRuntimeRequestOptions } from \"./EdgeRuntimeRequestOptions\";\nimport { assistantDecoderStream } from \"./streams/assistantDecoderStream\";\nimport { streamPartDecoderStream } from \"./streams/utils/streamPartDecoderStream\";\nimport { runResultStream } from \"./streams/runResultStream\";\nimport { toolResultStream } from \"./streams/toolResultStream\";\nimport { toLanguageModelMessages } from \"./converters\";\n\nexport function asAsyncIterable<T>(\n source: ReadableStream<T>,\n): AsyncIterable<T> {\n return {\n [Symbol.asyncIterator]: () => {\n const reader = source.getReader();\n return {\n async next(): Promise<IteratorResult<T, undefined>> {\n const { done, value } = await reader.read();\n return done\n ? { done: true, value: undefined }\n : { done: false, value };\n },\n };\n },\n };\n}\nexport type EdgeChatAdapterOptions = {\n api: string;\n\n credentials?: RequestCredentials;\n headers?: Record<string, string> | Headers;\n body?: object;\n\n /**\n * When enabled, the adapter will not strip `id` from messages in the messages array.\n */\n unstable_sendMessageIds?: boolean;\n\n /**\n * When enabled, the adapter will send messages in the format expected by the Vercel AI SDK Core.\n * This feature will be removed in the future in favor of a better solution.\n */\n unstable_AISDKInterop?: boolean | undefined;\n};\n\nexport class EdgeChatAdapter implements ChatModelAdapter {\n constructor(private options: EdgeChatAdapterOptions) {}\n\n async *run({\n messages,\n runConfig,\n abortSignal,\n context,\n unstable_assistantMessageId,\n }: ChatModelRunOptions) {\n const headers = new Headers(this.options.headers);\n headers.set(\"Content-Type\", \"application/json\");\n\n const result = await fetch(this.options.api, {\n method: \"POST\",\n headers,\n credentials: this.options.credentials ?? \"same-origin\",\n body: JSON.stringify({\n system: context.system,\n messages: this.options.unstable_AISDKInterop\n ? (toLanguageModelMessages(\n messages,\n ) as EdgeRuntimeRequestOptions[\"messages\"]) // TODO figure out a better way to do this\n : toCoreMessages(messages, {\n unstable_includeId: this.options.unstable_sendMessageIds,\n }),\n tools: context.tools ? toLanguageModelTools(context.tools) : [],\n unstable_assistantMessageId,\n runConfig,\n ...context.callSettings,\n ...context.config,\n\n ...this.options.body,\n } satisfies EdgeRuntimeRequestOptions),\n signal: abortSignal,\n });\n\n if (!result.ok) {\n throw new Error(`Status ${result.status}: ${await result.text()}`);\n }\n\n const stream = result\n .body!.pipeThrough(streamPartDecoderStream())\n .pipeThrough(assistantDecoderStream())\n .pipeThrough(toolResultStream(context.tools, abortSignal))\n .pipeThrough(runResultStream());\n\n let update: ChatModelRunResult | undefined;\n for await (update of asAsyncIterable(stream)) {\n yield update;\n }\n\n if (update === undefined)\n throw new Error(\"No data received from Edge Runtime\");\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,4BAA+B;AAC/B,kCAAqC;AAErC,oCAAuC;AACvC,qCAAwC;AACxC,6BAAgC;AAChC,8BAAiC;AACjC,wBAAwC;AAEjC,SAAS,gBACd,QACkB;AAClB,SAAO;AAAA,IACL,CAAC,OAAO,aAAa,GAAG,MAAM;AAC5B,YAAM,SAAS,OAAO,UAAU;AAChC,aAAO;AAAA,QACL,MAAM,OAA8C;AAClD,gBAAM,EAAE,MAAM,MAAM,IAAI,MAAM,OAAO,KAAK;AAC1C,iBAAO,OACH,EAAE,MAAM,MAAM,OAAO,OAAU,IAC/B,EAAE,MAAM,OAAO,MAAM;AAAA,QAC3B;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;AAoBO,IAAM,kBAAN,MAAkD;AAAA,EACvD,YAAoB,SAAiC;AAAjC;AAAA,EAAkC;AAAA,EAEtD,OAAO,IAAI;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAAwB;AACtB,UAAM,UAAU,IAAI,QAAQ,KAAK,QAAQ,OAAO;AAChD,YAAQ,IAAI,gBAAgB,kBAAkB;AAE9C,UAAM,SAAS,MAAM,MAAM,KAAK,QAAQ,KAAK;AAAA,MAC3C,QAAQ;AAAA,MACR;AAAA,MACA,aAAa,KAAK,QAAQ,eAAe;AAAA,MACzC,MAAM,KAAK,UAAU;AAAA,QACnB,QAAQ,QAAQ;AAAA,QAChB,UAAU,KAAK,QAAQ,4BAClB;AAAA,UACC;AAAA,QACF,QACA,sCAAe,UAAU;AAAA,UACvB,oBAAoB,KAAK,QAAQ;AAAA,QACnC,CAAC;AAAA,QACL,OAAO,QAAQ,YAAQ,kDAAqB,QAAQ,KAAK,IAAI,CAAC;AAAA,QAC9D;AAAA,QACA;AAAA,QACA,GAAG,QAAQ;AAAA,QACX,GAAG,QAAQ;AAAA,QAEX,GAAG,KAAK,QAAQ;AAAA,MAClB,CAAqC;AAAA,MACrC,QAAQ;AAAA,IACV,CAAC;AAED,QAAI,CAAC,OAAO,IAAI;AACd,YAAM,IAAI,MAAM,UAAU,OAAO,MAAM,KAAK,MAAM,OAAO,KAAK,CAAC,EAAE;AAAA,IACnE;AAEA,UAAM,SAAS,OACZ,KAAM,gBAAY,wDAAwB,CAAC,EAC3C,gBAAY,sDAAuB,CAAC,EACpC,gBAAY,0CAAiB,QAAQ,OAAO,WAAW,CAAC,EACxD,gBAAY,wCAAgB,CAAC;AAEhC,QAAI;AACJ,eAAW,UAAU,gBAAgB,MAAM,GAAG;AAC5C,YAAM;AAAA,IACR;AAEA,QAAI,WAAW;AACb,YAAM,IAAI,MAAM,oCAAoC;AAAA,EACxD;AACF;","names":[]}
|
@@ -27,7 +27,7 @@ var EdgeChatAdapter = class {
|
|
27
27
|
messages,
|
28
28
|
runConfig,
|
29
29
|
abortSignal,
|
30
|
-
|
30
|
+
context,
|
31
31
|
unstable_assistantMessageId
|
32
32
|
}) {
|
33
33
|
const headers = new Headers(this.options.headers);
|
@@ -37,17 +37,17 @@ var EdgeChatAdapter = class {
|
|
37
37
|
headers,
|
38
38
|
credentials: this.options.credentials ?? "same-origin",
|
39
39
|
body: JSON.stringify({
|
40
|
-
system:
|
40
|
+
system: context.system,
|
41
41
|
messages: this.options.unstable_AISDKInterop ? toLanguageModelMessages(
|
42
42
|
messages
|
43
43
|
) : toCoreMessages(messages, {
|
44
44
|
unstable_includeId: this.options.unstable_sendMessageIds
|
45
45
|
}),
|
46
|
-
tools:
|
46
|
+
tools: context.tools ? toLanguageModelTools(context.tools) : [],
|
47
47
|
unstable_assistantMessageId,
|
48
48
|
runConfig,
|
49
|
-
...
|
50
|
-
...
|
49
|
+
...context.callSettings,
|
50
|
+
...context.config,
|
51
51
|
...this.options.body
|
52
52
|
}),
|
53
53
|
signal: abortSignal
|
@@ -55,7 +55,7 @@ var EdgeChatAdapter = class {
|
|
55
55
|
if (!result.ok) {
|
56
56
|
throw new Error(`Status ${result.status}: ${await result.text()}`);
|
57
57
|
}
|
58
|
-
const stream = result.body.pipeThrough(streamPartDecoderStream()).pipeThrough(assistantDecoderStream()).pipeThrough(toolResultStream(
|
58
|
+
const stream = result.body.pipeThrough(streamPartDecoderStream()).pipeThrough(assistantDecoderStream()).pipeThrough(toolResultStream(context.tools, abortSignal)).pipeThrough(runResultStream());
|
59
59
|
let update;
|
60
60
|
for await (update of asAsyncIterable(stream)) {
|
61
61
|
yield update;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/runtimes/edge/EdgeChatAdapter.ts"],"sourcesContent":["import {\n ChatModelAdapter,\n ChatModelRunOptions,\n} from \"../local/ChatModelAdapter\";\nimport { ChatModelRunResult } from \"../local/ChatModelAdapter\";\nimport { toCoreMessages } from \"./converters/toCoreMessages\";\nimport { toLanguageModelTools } from \"./converters/toLanguageModelTools\";\nimport { EdgeRuntimeRequestOptions } from \"./EdgeRuntimeRequestOptions\";\nimport { assistantDecoderStream } from \"./streams/assistantDecoderStream\";\nimport { streamPartDecoderStream } from \"./streams/utils/streamPartDecoderStream\";\nimport { runResultStream } from \"./streams/runResultStream\";\nimport { toolResultStream } from \"./streams/toolResultStream\";\nimport { toLanguageModelMessages } from \"./converters\";\n\nexport function asAsyncIterable<T>(\n source: ReadableStream<T>,\n): AsyncIterable<T> {\n return {\n [Symbol.asyncIterator]: () => {\n const reader = source.getReader();\n return {\n async next(): Promise<IteratorResult<T, undefined>> {\n const { done, value } = await reader.read();\n return done\n ? { done: true, value: undefined }\n : { done: false, value };\n },\n };\n },\n };\n}\nexport type EdgeChatAdapterOptions = {\n api: string;\n\n credentials?: RequestCredentials;\n headers?: Record<string, string> | Headers;\n body?: object;\n\n /**\n * When enabled, the adapter will not strip `id` from messages in the messages array.\n */\n unstable_sendMessageIds?: boolean;\n\n /**\n * When enabled, the adapter will send messages in the format expected by the Vercel AI SDK Core.\n * This feature will be removed in the future in favor of a better solution.\n */\n unstable_AISDKInterop?: boolean | undefined;\n};\n\nexport class EdgeChatAdapter implements ChatModelAdapter {\n constructor(private options: EdgeChatAdapterOptions) {}\n\n async *run({\n messages,\n runConfig,\n abortSignal,\n
|
1
|
+
{"version":3,"sources":["../../../src/runtimes/edge/EdgeChatAdapter.ts"],"sourcesContent":["import {\n ChatModelAdapter,\n ChatModelRunOptions,\n} from \"../local/ChatModelAdapter\";\nimport { ChatModelRunResult } from \"../local/ChatModelAdapter\";\nimport { toCoreMessages } from \"./converters/toCoreMessages\";\nimport { toLanguageModelTools } from \"./converters/toLanguageModelTools\";\nimport { EdgeRuntimeRequestOptions } from \"./EdgeRuntimeRequestOptions\";\nimport { assistantDecoderStream } from \"./streams/assistantDecoderStream\";\nimport { streamPartDecoderStream } from \"./streams/utils/streamPartDecoderStream\";\nimport { runResultStream } from \"./streams/runResultStream\";\nimport { toolResultStream } from \"./streams/toolResultStream\";\nimport { toLanguageModelMessages } from \"./converters\";\n\nexport function asAsyncIterable<T>(\n source: ReadableStream<T>,\n): AsyncIterable<T> {\n return {\n [Symbol.asyncIterator]: () => {\n const reader = source.getReader();\n return {\n async next(): Promise<IteratorResult<T, undefined>> {\n const { done, value } = await reader.read();\n return done\n ? { done: true, value: undefined }\n : { done: false, value };\n },\n };\n },\n };\n}\nexport type EdgeChatAdapterOptions = {\n api: string;\n\n credentials?: RequestCredentials;\n headers?: Record<string, string> | Headers;\n body?: object;\n\n /**\n * When enabled, the adapter will not strip `id` from messages in the messages array.\n */\n unstable_sendMessageIds?: boolean;\n\n /**\n * When enabled, the adapter will send messages in the format expected by the Vercel AI SDK Core.\n * This feature will be removed in the future in favor of a better solution.\n */\n unstable_AISDKInterop?: boolean | undefined;\n};\n\nexport class EdgeChatAdapter implements ChatModelAdapter {\n constructor(private options: EdgeChatAdapterOptions) {}\n\n async *run({\n messages,\n runConfig,\n abortSignal,\n context,\n unstable_assistantMessageId,\n }: ChatModelRunOptions) {\n const headers = new Headers(this.options.headers);\n headers.set(\"Content-Type\", \"application/json\");\n\n const result = await fetch(this.options.api, {\n method: \"POST\",\n headers,\n credentials: this.options.credentials ?? \"same-origin\",\n body: JSON.stringify({\n system: context.system,\n messages: this.options.unstable_AISDKInterop\n ? (toLanguageModelMessages(\n messages,\n ) as EdgeRuntimeRequestOptions[\"messages\"]) // TODO figure out a better way to do this\n : toCoreMessages(messages, {\n unstable_includeId: this.options.unstable_sendMessageIds,\n }),\n tools: context.tools ? toLanguageModelTools(context.tools) : [],\n unstable_assistantMessageId,\n runConfig,\n ...context.callSettings,\n ...context.config,\n\n ...this.options.body,\n } satisfies EdgeRuntimeRequestOptions),\n signal: abortSignal,\n });\n\n if (!result.ok) {\n throw new Error(`Status ${result.status}: ${await result.text()}`);\n }\n\n const stream = result\n .body!.pipeThrough(streamPartDecoderStream())\n .pipeThrough(assistantDecoderStream())\n .pipeThrough(toolResultStream(context.tools, abortSignal))\n .pipeThrough(runResultStream());\n\n let update: ChatModelRunResult | undefined;\n for await (update of asAsyncIterable(stream)) {\n yield update;\n }\n\n if (update === undefined)\n throw new Error(\"No data received from Edge Runtime\");\n }\n}\n"],"mappings":";AAKA,SAAS,sBAAsB;AAC/B,SAAS,4BAA4B;AAErC,SAAS,8BAA8B;AACvC,SAAS,+BAA+B;AACxC,SAAS,uBAAuB;AAChC,SAAS,wBAAwB;AACjC,SAAS,+BAA+B;AAEjC,SAAS,gBACd,QACkB;AAClB,SAAO;AAAA,IACL,CAAC,OAAO,aAAa,GAAG,MAAM;AAC5B,YAAM,SAAS,OAAO,UAAU;AAChC,aAAO;AAAA,QACL,MAAM,OAA8C;AAClD,gBAAM,EAAE,MAAM,MAAM,IAAI,MAAM,OAAO,KAAK;AAC1C,iBAAO,OACH,EAAE,MAAM,MAAM,OAAO,OAAU,IAC/B,EAAE,MAAM,OAAO,MAAM;AAAA,QAC3B;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;AAoBO,IAAM,kBAAN,MAAkD;AAAA,EACvD,YAAoB,SAAiC;AAAjC;AAAA,EAAkC;AAAA,EAEtD,OAAO,IAAI;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAAwB;AACtB,UAAM,UAAU,IAAI,QAAQ,KAAK,QAAQ,OAAO;AAChD,YAAQ,IAAI,gBAAgB,kBAAkB;AAE9C,UAAM,SAAS,MAAM,MAAM,KAAK,QAAQ,KAAK;AAAA,MAC3C,QAAQ;AAAA,MACR;AAAA,MACA,aAAa,KAAK,QAAQ,eAAe;AAAA,MACzC,MAAM,KAAK,UAAU;AAAA,QACnB,QAAQ,QAAQ;AAAA,QAChB,UAAU,KAAK,QAAQ,wBAClB;AAAA,UACC;AAAA,QACF,IACA,eAAe,UAAU;AAAA,UACvB,oBAAoB,KAAK,QAAQ;AAAA,QACnC,CAAC;AAAA,QACL,OAAO,QAAQ,QAAQ,qBAAqB,QAAQ,KAAK,IAAI,CAAC;AAAA,QAC9D;AAAA,QACA;AAAA,QACA,GAAG,QAAQ;AAAA,QACX,GAAG,QAAQ;AAAA,QAEX,GAAG,KAAK,QAAQ;AAAA,MAClB,CAAqC;AAAA,MACrC,QAAQ;AAAA,IACV,CAAC;AAED,QAAI,CAAC,OAAO,IAAI;AACd,YAAM,IAAI,MAAM,UAAU,OAAO,MAAM,KAAK,MAAM,OAAO,KAAK,CAAC,EAAE;AAAA,IACnE;AAEA,UAAM,SAAS,OACZ,KAAM,YAAY,wBAAwB,CAAC,EAC3C,YAAY,uBAAuB,CAAC,EACpC,YAAY,iBAAiB,QAAQ,OAAO,WAAW,CAAC,EACxD,YAAY,gBAAgB,CAAC;AAEhC,QAAI;AACJ,eAAW,UAAU,gBAAgB,MAAM,GAAG;AAC5C,YAAM;AAAA,IACR;AAEA,QAAI,WAAW;AACb,YAAM,IAAI,MAAM,oCAAoC;AAAA,EACxD;AACF;","names":[]}
|
@@ -23,7 +23,7 @@ __export(EdgeRuntimeRequestOptions_exports, {
|
|
23
23
|
EdgeRuntimeRequestOptionsSchema: () => EdgeRuntimeRequestOptionsSchema
|
24
24
|
});
|
25
25
|
module.exports = __toCommonJS(EdgeRuntimeRequestOptions_exports);
|
26
|
-
var
|
26
|
+
var import_ModelContextTypes = require("../../model-context/ModelContextTypes.js");
|
27
27
|
var import_zod = require("zod");
|
28
28
|
var LanguageModelV1FunctionToolSchema = import_zod.z.object({
|
29
29
|
type: import_zod.z.literal("function"),
|
@@ -98,7 +98,7 @@ var EdgeRuntimeRequestOptionsSchema = import_zod.z.object({
|
|
98
98
|
}).optional(),
|
99
99
|
tools: import_zod.z.array(LanguageModelV1FunctionToolSchema).readonly().optional(),
|
100
100
|
unstable_assistantMessageId: import_zod.z.string().optional()
|
101
|
-
}).merge(
|
101
|
+
}).merge(import_ModelContextTypes.LanguageModelV1CallSettingsSchema).merge(import_ModelContextTypes.LanguageModelConfigSchema);
|
102
102
|
// Annotate the CommonJS export names for ESM import in node:
|
103
103
|
0 && (module.exports = {
|
104
104
|
EdgeRuntimeRequestOptionsSchema
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/runtimes/edge/EdgeRuntimeRequestOptions.ts"],"sourcesContent":["import { JSONSchema7 } from \"json-schema\";\nimport {\n LanguageModelConfigSchema,\n LanguageModelV1CallSettingsSchema,\n} from \"../../
|
1
|
+
{"version":3,"sources":["../../../src/runtimes/edge/EdgeRuntimeRequestOptions.ts"],"sourcesContent":["import { JSONSchema7 } from \"json-schema\";\nimport {\n LanguageModelConfigSchema,\n LanguageModelV1CallSettingsSchema,\n} from \"../../model-context/ModelContextTypes\";\nimport { z } from \"zod\";\n\nconst LanguageModelV1FunctionToolSchema = z.object({\n type: z.literal(\"function\"),\n name: z.string(),\n description: z.string().optional(),\n parameters: z.custom<JSONSchema7>(\n (val) => typeof val === \"object\" && val !== null,\n ),\n});\n\nconst TextContentPartSchema = z.object({\n type: z.literal(\"text\"),\n text: z.string(),\n});\n\nconst ImageContentPartSchema = z.object({\n type: z.literal(\"image\"),\n image: z.string(),\n});\n\nconst FileContentPartSchema = z.object({\n type: z.literal(\"file\"),\n data: z.string(),\n mimeType: z.string(),\n});\n\nconst Unstable_AudioContentPart = z.object({\n type: z.literal(\"audio\"),\n audio: z.object({\n data: z.string(),\n format: z.union([z.literal(\"mp3\"), z.literal(\"wav\")]),\n }),\n});\n\nconst CoreToolCallContentPartSchema = z.object({\n type: z.literal(\"tool-call\"),\n toolCallId: z.string(),\n toolName: z.string(),\n args: z.record(z.unknown()),\n result: z.unknown().optional(),\n isError: z.boolean().optional(),\n});\n// args is required but unknown;\n\nconst CoreUserMessageSchema = z.object({\n role: z.literal(\"user\"),\n content: z\n .array(\n z.discriminatedUnion(\"type\", [\n TextContentPartSchema,\n ImageContentPartSchema,\n FileContentPartSchema,\n Unstable_AudioContentPart,\n ]),\n )\n .min(1)\n .readonly(),\n});\n\nconst CoreAssistantMessageSchema = z.object({\n role: z.literal(\"assistant\"),\n content: z\n .array(\n z.discriminatedUnion(\"type\", [\n TextContentPartSchema,\n CoreToolCallContentPartSchema,\n ]),\n )\n .min(1)\n .readonly(),\n});\n\nconst CoreSystemMessageSchema = z.object({\n role: z.literal(\"system\"),\n content: z.tuple([TextContentPartSchema]).readonly(),\n});\n\nconst CoreMessageSchema = z.discriminatedUnion(\"role\", [\n CoreSystemMessageSchema,\n CoreUserMessageSchema,\n CoreAssistantMessageSchema,\n]);\n\nexport const EdgeRuntimeRequestOptionsSchema = z\n .object({\n system: z.string().optional(),\n messages: z.array(CoreMessageSchema).min(1).readonly(),\n runConfig: z\n .object({\n custom: z.record(z.unknown()).optional(),\n })\n .optional(),\n tools: z.array(LanguageModelV1FunctionToolSchema).readonly().optional(),\n unstable_assistantMessageId: z.string().optional(),\n })\n .merge(LanguageModelV1CallSettingsSchema)\n .merge(LanguageModelConfigSchema);\n\nexport type EdgeRuntimeRequestOptions = z.infer<\n typeof EdgeRuntimeRequestOptionsSchema\n>;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,+BAGO;AACP,iBAAkB;AAElB,IAAM,oCAAoC,aAAE,OAAO;AAAA,EACjD,MAAM,aAAE,QAAQ,UAAU;AAAA,EAC1B,MAAM,aAAE,OAAO;AAAA,EACf,aAAa,aAAE,OAAO,EAAE,SAAS;AAAA,EACjC,YAAY,aAAE;AAAA,IACZ,CAAC,QAAQ,OAAO,QAAQ,YAAY,QAAQ;AAAA,EAC9C;AACF,CAAC;AAED,IAAM,wBAAwB,aAAE,OAAO;AAAA,EACrC,MAAM,aAAE,QAAQ,MAAM;AAAA,EACtB,MAAM,aAAE,OAAO;AACjB,CAAC;AAED,IAAM,yBAAyB,aAAE,OAAO;AAAA,EACtC,MAAM,aAAE,QAAQ,OAAO;AAAA,EACvB,OAAO,aAAE,OAAO;AAClB,CAAC;AAED,IAAM,wBAAwB,aAAE,OAAO;AAAA,EACrC,MAAM,aAAE,QAAQ,MAAM;AAAA,EACtB,MAAM,aAAE,OAAO;AAAA,EACf,UAAU,aAAE,OAAO;AACrB,CAAC;AAED,IAAM,4BAA4B,aAAE,OAAO;AAAA,EACzC,MAAM,aAAE,QAAQ,OAAO;AAAA,EACvB,OAAO,aAAE,OAAO;AAAA,IACd,MAAM,aAAE,OAAO;AAAA,IACf,QAAQ,aAAE,MAAM,CAAC,aAAE,QAAQ,KAAK,GAAG,aAAE,QAAQ,KAAK,CAAC,CAAC;AAAA,EACtD,CAAC;AACH,CAAC;AAED,IAAM,gCAAgC,aAAE,OAAO;AAAA,EAC7C,MAAM,aAAE,QAAQ,WAAW;AAAA,EAC3B,YAAY,aAAE,OAAO;AAAA,EACrB,UAAU,aAAE,OAAO;AAAA,EACnB,MAAM,aAAE,OAAO,aAAE,QAAQ,CAAC;AAAA,EAC1B,QAAQ,aAAE,QAAQ,EAAE,SAAS;AAAA,EAC7B,SAAS,aAAE,QAAQ,EAAE,SAAS;AAChC,CAAC;AAGD,IAAM,wBAAwB,aAAE,OAAO;AAAA,EACrC,MAAM,aAAE,QAAQ,MAAM;AAAA,EACtB,SAAS,aACN;AAAA,IACC,aAAE,mBAAmB,QAAQ;AAAA,MAC3B;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH,EACC,IAAI,CAAC,EACL,SAAS;AACd,CAAC;AAED,IAAM,6BAA6B,aAAE,OAAO;AAAA,EAC1C,MAAM,aAAE,QAAQ,WAAW;AAAA,EAC3B,SAAS,aACN;AAAA,IACC,aAAE,mBAAmB,QAAQ;AAAA,MAC3B;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH,EACC,IAAI,CAAC,EACL,SAAS;AACd,CAAC;AAED,IAAM,0BAA0B,aAAE,OAAO;AAAA,EACvC,MAAM,aAAE,QAAQ,QAAQ;AAAA,EACxB,SAAS,aAAE,MAAM,CAAC,qBAAqB,CAAC,EAAE,SAAS;AACrD,CAAC;AAED,IAAM,oBAAoB,aAAE,mBAAmB,QAAQ;AAAA,EACrD;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAEM,IAAM,kCAAkC,aAC5C,OAAO;AAAA,EACN,QAAQ,aAAE,OAAO,EAAE,SAAS;AAAA,EAC5B,UAAU,aAAE,MAAM,iBAAiB,EAAE,IAAI,CAAC,EAAE,SAAS;AAAA,EACrD,WAAW,aACR,OAAO;AAAA,IACN,QAAQ,aAAE,OAAO,aAAE,QAAQ,CAAC,EAAE,SAAS;AAAA,EACzC,CAAC,EACA,SAAS;AAAA,EACZ,OAAO,aAAE,MAAM,iCAAiC,EAAE,SAAS,EAAE,SAAS;AAAA,EACtE,6BAA6B,aAAE,OAAO,EAAE,SAAS;AACnD,CAAC,EACA,MAAM,0DAAiC,EACvC,MAAM,kDAAyB;","names":[]}
|
@@ -2,7 +2,7 @@
|
|
2
2
|
import {
|
3
3
|
LanguageModelConfigSchema,
|
4
4
|
LanguageModelV1CallSettingsSchema
|
5
|
-
} from "../../
|
5
|
+
} from "../../model-context/ModelContextTypes.mjs";
|
6
6
|
import { z } from "zod";
|
7
7
|
var LanguageModelV1FunctionToolSchema = z.object({
|
8
8
|
type: z.literal("function"),
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/runtimes/edge/EdgeRuntimeRequestOptions.ts"],"sourcesContent":["import { JSONSchema7 } from \"json-schema\";\nimport {\n LanguageModelConfigSchema,\n LanguageModelV1CallSettingsSchema,\n} from \"../../
|
1
|
+
{"version":3,"sources":["../../../src/runtimes/edge/EdgeRuntimeRequestOptions.ts"],"sourcesContent":["import { JSONSchema7 } from \"json-schema\";\nimport {\n LanguageModelConfigSchema,\n LanguageModelV1CallSettingsSchema,\n} from \"../../model-context/ModelContextTypes\";\nimport { z } from \"zod\";\n\nconst LanguageModelV1FunctionToolSchema = z.object({\n type: z.literal(\"function\"),\n name: z.string(),\n description: z.string().optional(),\n parameters: z.custom<JSONSchema7>(\n (val) => typeof val === \"object\" && val !== null,\n ),\n});\n\nconst TextContentPartSchema = z.object({\n type: z.literal(\"text\"),\n text: z.string(),\n});\n\nconst ImageContentPartSchema = z.object({\n type: z.literal(\"image\"),\n image: z.string(),\n});\n\nconst FileContentPartSchema = z.object({\n type: z.literal(\"file\"),\n data: z.string(),\n mimeType: z.string(),\n});\n\nconst Unstable_AudioContentPart = z.object({\n type: z.literal(\"audio\"),\n audio: z.object({\n data: z.string(),\n format: z.union([z.literal(\"mp3\"), z.literal(\"wav\")]),\n }),\n});\n\nconst CoreToolCallContentPartSchema = z.object({\n type: z.literal(\"tool-call\"),\n toolCallId: z.string(),\n toolName: z.string(),\n args: z.record(z.unknown()),\n result: z.unknown().optional(),\n isError: z.boolean().optional(),\n});\n// args is required but unknown;\n\nconst CoreUserMessageSchema = z.object({\n role: z.literal(\"user\"),\n content: z\n .array(\n z.discriminatedUnion(\"type\", [\n TextContentPartSchema,\n ImageContentPartSchema,\n FileContentPartSchema,\n Unstable_AudioContentPart,\n ]),\n )\n .min(1)\n .readonly(),\n});\n\nconst CoreAssistantMessageSchema = z.object({\n role: z.literal(\"assistant\"),\n content: z\n .array(\n z.discriminatedUnion(\"type\", [\n TextContentPartSchema,\n CoreToolCallContentPartSchema,\n ]),\n )\n .min(1)\n .readonly(),\n});\n\nconst CoreSystemMessageSchema = z.object({\n role: z.literal(\"system\"),\n content: z.tuple([TextContentPartSchema]).readonly(),\n});\n\nconst CoreMessageSchema = z.discriminatedUnion(\"role\", [\n CoreSystemMessageSchema,\n CoreUserMessageSchema,\n CoreAssistantMessageSchema,\n]);\n\nexport const EdgeRuntimeRequestOptionsSchema = z\n .object({\n system: z.string().optional(),\n messages: z.array(CoreMessageSchema).min(1).readonly(),\n runConfig: z\n .object({\n custom: z.record(z.unknown()).optional(),\n })\n .optional(),\n tools: z.array(LanguageModelV1FunctionToolSchema).readonly().optional(),\n unstable_assistantMessageId: z.string().optional(),\n })\n .merge(LanguageModelV1CallSettingsSchema)\n .merge(LanguageModelConfigSchema);\n\nexport type EdgeRuntimeRequestOptions = z.infer<\n typeof EdgeRuntimeRequestOptionsSchema\n>;\n"],"mappings":";AACA;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,SAAS;AAElB,IAAM,oCAAoC,EAAE,OAAO;AAAA,EACjD,MAAM,EAAE,QAAQ,UAAU;AAAA,EAC1B,MAAM,EAAE,OAAO;AAAA,EACf,aAAa,EAAE,OAAO,EAAE,SAAS;AAAA,EACjC,YAAY,EAAE;AAAA,IACZ,CAAC,QAAQ,OAAO,QAAQ,YAAY,QAAQ;AAAA,EAC9C;AACF,CAAC;AAED,IAAM,wBAAwB,EAAE,OAAO;AAAA,EACrC,MAAM,EAAE,QAAQ,MAAM;AAAA,EACtB,MAAM,EAAE,OAAO;AACjB,CAAC;AAED,IAAM,yBAAyB,EAAE,OAAO;AAAA,EACtC,MAAM,EAAE,QAAQ,OAAO;AAAA,EACvB,OAAO,EAAE,OAAO;AAClB,CAAC;AAED,IAAM,wBAAwB,EAAE,OAAO;AAAA,EACrC,MAAM,EAAE,QAAQ,MAAM;AAAA,EACtB,MAAM,EAAE,OAAO;AAAA,EACf,UAAU,EAAE,OAAO;AACrB,CAAC;AAED,IAAM,4BAA4B,EAAE,OAAO;AAAA,EACzC,MAAM,EAAE,QAAQ,OAAO;AAAA,EACvB,OAAO,EAAE,OAAO;AAAA,IACd,MAAM,EAAE,OAAO;AAAA,IACf,QAAQ,EAAE,MAAM,CAAC,EAAE,QAAQ,KAAK,GAAG,EAAE,QAAQ,KAAK,CAAC,CAAC;AAAA,EACtD,CAAC;AACH,CAAC;AAED,IAAM,gCAAgC,EAAE,OAAO;AAAA,EAC7C,MAAM,EAAE,QAAQ,WAAW;AAAA,EAC3B,YAAY,EAAE,OAAO;AAAA,EACrB,UAAU,EAAE,OAAO;AAAA,EACnB,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC;AAAA,EAC1B,QAAQ,EAAE,QAAQ,EAAE,SAAS;AAAA,EAC7B,SAAS,EAAE,QAAQ,EAAE,SAAS;AAChC,CAAC;AAGD,IAAM,wBAAwB,EAAE,OAAO;AAAA,EACrC,MAAM,EAAE,QAAQ,MAAM;AAAA,EACtB,SAAS,EACN;AAAA,IACC,EAAE,mBAAmB,QAAQ;AAAA,MAC3B;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH,EACC,IAAI,CAAC,EACL,SAAS;AACd,CAAC;AAED,IAAM,6BAA6B,EAAE,OAAO;AAAA,EAC1C,MAAM,EAAE,QAAQ,WAAW;AAAA,EAC3B,SAAS,EACN;AAAA,IACC,EAAE,mBAAmB,QAAQ;AAAA,MAC3B;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH,EACC,IAAI,CAAC,EACL,SAAS;AACd,CAAC;AAED,IAAM,0BAA0B,EAAE,OAAO;AAAA,EACvC,MAAM,EAAE,QAAQ,QAAQ;AAAA,EACxB,SAAS,EAAE,MAAM,CAAC,qBAAqB,CAAC,EAAE,SAAS;AACrD,CAAC;AAED,IAAM,oBAAoB,EAAE,mBAAmB,QAAQ;AAAA,EACrD;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAEM,IAAM,kCAAkC,EAC5C,OAAO;AAAA,EACN,QAAQ,EAAE,OAAO,EAAE,SAAS;AAAA,EAC5B,UAAU,EAAE,MAAM,iBAAiB,EAAE,IAAI,CAAC,EAAE,SAAS;AAAA,EACrD,WAAW,EACR,OAAO;AAAA,IACN,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,SAAS;AAAA,EACzC,CAAC,EACA,SAAS;AAAA,EACZ,OAAO,EAAE,MAAM,iCAAiC,EAAE,SAAS,EAAE,SAAS;AAAA,EACtE,6BAA6B,EAAE,OAAO,EAAE,SAAS;AACnD,CAAC,EACA,MAAM,iCAAiC,EACvC,MAAM,yBAAyB;","names":[]}
|
@@ -1,4 +1,4 @@
|
|
1
1
|
import { LanguageModelV1FunctionTool } from "@ai-sdk/provider";
|
2
|
-
import { Tool } from "../../../
|
2
|
+
import { Tool } from "../../../model-context/ModelContextTypes";
|
3
3
|
export declare const fromLanguageModelTools: (tools: LanguageModelV1FunctionTool[]) => Record<string, Tool<any, any>>;
|
4
4
|
//# sourceMappingURL=fromLanguageModelTools.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"fromLanguageModelTools.d.ts","sourceRoot":"","sources":["../../../../src/runtimes/edge/converters/fromLanguageModelTools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,
|
1
|
+
{"version":3,"file":"fromLanguageModelTools.d.ts","sourceRoot":"","sources":["../../../../src/runtimes/edge/converters/fromLanguageModelTools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,0CAA0C,CAAC;AAEhE,eAAO,MAAM,sBAAsB,UAC1B,2BAA2B,EAAE,KACnC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAU/B,CAAC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../../src/runtimes/edge/converters/fromLanguageModelTools.ts"],"sourcesContent":["import { LanguageModelV1FunctionTool } from \"@ai-sdk/provider\";\nimport { Tool } from \"../../../
|
1
|
+
{"version":3,"sources":["../../../../src/runtimes/edge/converters/fromLanguageModelTools.ts"],"sourcesContent":["import { LanguageModelV1FunctionTool } from \"@ai-sdk/provider\";\nimport { Tool } from \"../../../model-context/ModelContextTypes\";\n\nexport const fromLanguageModelTools = (\n tools: LanguageModelV1FunctionTool[],\n): Record<string, Tool<any, any>> => {\n return Object.fromEntries(\n tools.map((tool) => [\n tool.name,\n {\n description: tool.description,\n parameters: tool.parameters,\n },\n ]),\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGO,IAAM,yBAAyB,CACpC,UACmC;AACnC,SAAO,OAAO;AAAA,IACZ,MAAM,IAAI,CAAC,SAAS;AAAA,MAClB,KAAK;AAAA,MACL;AAAA,QACE,aAAa,KAAK;AAAA,QAClB,YAAY,KAAK;AAAA,MACnB;AAAA,IACF,CAAC;AAAA,EACH;AACF;","names":[]}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../../src/runtimes/edge/converters/fromLanguageModelTools.ts"],"sourcesContent":["import { LanguageModelV1FunctionTool } from \"@ai-sdk/provider\";\nimport { Tool } from \"../../../
|
1
|
+
{"version":3,"sources":["../../../../src/runtimes/edge/converters/fromLanguageModelTools.ts"],"sourcesContent":["import { LanguageModelV1FunctionTool } from \"@ai-sdk/provider\";\nimport { Tool } from \"../../../model-context/ModelContextTypes\";\n\nexport const fromLanguageModelTools = (\n tools: LanguageModelV1FunctionTool[],\n): Record<string, Tool<any, any>> => {\n return Object.fromEntries(\n tools.map((tool) => [\n tool.name,\n {\n description: tool.description,\n parameters: tool.parameters,\n },\n ]),\n );\n};\n"],"mappings":";AAGO,IAAM,yBAAyB,CACpC,UACmC;AACnC,SAAO,OAAO;AAAA,IACZ,MAAM,IAAI,CAAC,SAAS;AAAA,MAClB,KAAK;AAAA,MACL;AAAA,QACE,aAAa,KAAK;AAAA,QAClB,YAAY,KAAK;AAAA,MACnB;AAAA,IACF,CAAC;AAAA,EACH;AACF;","names":[]}
|
@@ -1,4 +1,4 @@
|
|
1
1
|
import { LanguageModelV1FunctionTool } from "@ai-sdk/provider";
|
2
|
-
import { Tool } from "../../../
|
2
|
+
import { Tool } from "../../../model-context/ModelContextTypes";
|
3
3
|
export declare const toLanguageModelTools: (tools: Record<string, Tool<any, any>>) => LanguageModelV1FunctionTool[];
|
4
4
|
//# sourceMappingURL=toLanguageModelTools.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"toLanguageModelTools.d.ts","sourceRoot":"","sources":["../../../../src/runtimes/edge/converters/toLanguageModelTools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAI/D,OAAO,EAAE,IAAI,EAAE,MAAM,
|
1
|
+
{"version":3,"file":"toLanguageModelTools.d.ts","sourceRoot":"","sources":["../../../../src/runtimes/edge/converters/toLanguageModelTools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAI/D,OAAO,EAAE,IAAI,EAAE,MAAM,0CAA0C,CAAC;AAEhE,eAAO,MAAM,oBAAoB,UACxB,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,KACpC,2BAA2B,EAS7B,CAAC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../../src/runtimes/edge/converters/toLanguageModelTools.ts"],"sourcesContent":["import { LanguageModelV1FunctionTool } from \"@ai-sdk/provider\";\nimport { JSONSchema7 } from \"json-schema\";\nimport { z } from \"zod\";\nimport zodToJsonSchema from \"zod-to-json-schema\";\nimport { Tool } from \"../../../
|
1
|
+
{"version":3,"sources":["../../../../src/runtimes/edge/converters/toLanguageModelTools.ts"],"sourcesContent":["import { LanguageModelV1FunctionTool } from \"@ai-sdk/provider\";\nimport { JSONSchema7 } from \"json-schema\";\nimport { z } from \"zod\";\nimport zodToJsonSchema from \"zod-to-json-schema\";\nimport { Tool } from \"../../../model-context/ModelContextTypes\";\n\nexport const toLanguageModelTools = (\n tools: Record<string, Tool<any, any>>,\n): LanguageModelV1FunctionTool[] => {\n return Object.entries(tools).map(([name, tool]) => ({\n type: \"function\",\n name,\n ...(tool.description ? { description: tool.description } : undefined),\n parameters: (tool.parameters instanceof z.ZodType\n ? zodToJsonSchema(tool.parameters)\n : tool.parameters) as JSONSchema7,\n }));\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,iBAAkB;AAClB,gCAA4B;AAGrB,IAAM,uBAAuB,CAClC,UACkC;AAClC,SAAO,OAAO,QAAQ,KAAK,EAAE,IAAI,CAAC,CAAC,MAAM,IAAI,OAAO;AAAA,IAClD,MAAM;AAAA,IACN;AAAA,IACA,GAAI,KAAK,cAAc,EAAE,aAAa,KAAK,YAAY,IAAI;AAAA,IAC3D,YAAa,KAAK,sBAAsB,aAAE,cACtC,0BAAAA,SAAgB,KAAK,UAAU,IAC/B,KAAK;AAAA,EACX,EAAE;AACJ;","names":["zodToJsonSchema"]}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../../src/runtimes/edge/converters/toLanguageModelTools.ts"],"sourcesContent":["import { LanguageModelV1FunctionTool } from \"@ai-sdk/provider\";\nimport { JSONSchema7 } from \"json-schema\";\nimport { z } from \"zod\";\nimport zodToJsonSchema from \"zod-to-json-schema\";\nimport { Tool } from \"../../../
|
1
|
+
{"version":3,"sources":["../../../../src/runtimes/edge/converters/toLanguageModelTools.ts"],"sourcesContent":["import { LanguageModelV1FunctionTool } from \"@ai-sdk/provider\";\nimport { JSONSchema7 } from \"json-schema\";\nimport { z } from \"zod\";\nimport zodToJsonSchema from \"zod-to-json-schema\";\nimport { Tool } from \"../../../model-context/ModelContextTypes\";\n\nexport const toLanguageModelTools = (\n tools: Record<string, Tool<any, any>>,\n): LanguageModelV1FunctionTool[] => {\n return Object.entries(tools).map(([name, tool]) => ({\n type: \"function\",\n name,\n ...(tool.description ? { description: tool.description } : undefined),\n parameters: (tool.parameters instanceof z.ZodType\n ? zodToJsonSchema(tool.parameters)\n : tool.parameters) as JSONSchema7,\n }));\n};\n"],"mappings":";AAEA,SAAS,SAAS;AAClB,OAAO,qBAAqB;AAGrB,IAAM,uBAAuB,CAClC,UACkC;AAClC,SAAO,OAAO,QAAQ,KAAK,EAAE,IAAI,CAAC,CAAC,MAAM,IAAI,OAAO;AAAA,IAClD,MAAM;AAAA,IACN;AAAA,IACA,GAAI,KAAK,cAAc,EAAE,aAAa,KAAK,YAAY,IAAI;AAAA,IAC3D,YAAa,KAAK,sBAAsB,EAAE,UACtC,gBAAgB,KAAK,UAAU,IAC/B,KAAK;AAAA,EACX,EAAE;AACJ;","names":[]}
|
@@ -1,9 +1,8 @@
|
|
1
1
|
import { LanguageModelV1, LanguageModelV1ToolChoice, LanguageModelV1Prompt } from "@ai-sdk/provider";
|
2
2
|
import { CoreMessage, ThreadStep } from "../../types/AssistantTypes";
|
3
3
|
import { EdgeRuntimeRequestOptionsSchema } from "./EdgeRuntimeRequestOptions";
|
4
|
-
import { Tool } from "../../types";
|
5
4
|
import { ToolResultStreamPart } from "./streams/toolResultStream";
|
6
|
-
import { LanguageModelConfig, LanguageModelV1CallSettings } from "../../
|
5
|
+
import { LanguageModelConfig, LanguageModelV1CallSettings, Tool } from "../../model-context/ModelContextTypes";
|
7
6
|
import { z } from "zod";
|
8
7
|
type FinishResult = {
|
9
8
|
messages: CoreMessage[];
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"createEdgeRuntimeAPI.d.ts","sourceRoot":"","sources":["../../../src/runtimes/edge/createEdgeRuntimeAPI.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,yBAAyB,EAEzB,qBAAqB,EAEtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAErE,OAAO,EAAE,+BAA+B,EAAE,MAAM,6BAA6B,CAAC;
|
1
|
+
{"version":3,"file":"createEdgeRuntimeAPI.d.ts","sourceRoot":"","sources":["../../../src/runtimes/edge/createEdgeRuntimeAPI.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,yBAAyB,EAEzB,qBAAqB,EAEtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAErE,OAAO,EAAE,+BAA+B,EAAE,MAAM,6BAA6B,CAAC;AAG9E,OAAO,EAEL,oBAAoB,EACrB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAE3B,IAAI,EACL,MAAM,uCAAuC,CAAC;AAG/C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,KAAK,YAAY,GAAG;IAClB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,QAAQ,EAAE;QACR,KAAK,EAAE,UAAU,EAAE,CAAC;KACrB,CAAC;CACH,CAAC;AAEF,KAAK,oBAAoB,GAAG,CAC1B,MAAM,EAAE,mBAAmB,KACxB,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAAC;AAEhD,MAAM,MAAM,2BAA2B,GAAG,2BAA2B,GAAG;IACtE,KAAK,EAAE,eAAe,GAAG,oBAAoB,CAAC;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IACvC,UAAU,CAAC,EAAE,yBAAyB,CAAC;IACvC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,CAAC;CAC3C,CAAC;AAUF,KAAK,2BAA2B,GAAG;IACjC,WAAW,EAAE,WAAW,CAAC;IACzB,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;IAC7D,OAAO,EAAE,2BAA2B,CAAC;CACtC,CAAC;AAEF,eAAO,MAAM,oBAAoB,wKAW9B,2BAA2B,kDAkG7B,CAAC;AAEF,MAAM,CAAC,OAAO,WAAW,sBAAsB,CAAC;IAC9C,YAAY,EAAE,2BAA2B,IAAI,OAAO,EAAE,CAAC;CACxD;AAED,eAAO,MAAM,sBAAsB,YACxB,sBAAsB,CAAC,OAAO,sBAaxC,CAAC;AAEF,eAAO,MAAM,oBAAoB,YAAa,2BAA2B;oBACjD,OAAO;CAM7B,CAAC;AA+BH,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,QAAQ,EAAE,WAAW,EAAE,GACtB,qBAAqB,CASvB"}
|
@@ -32,7 +32,7 @@ var import_toLanguageModelMessages = require("./converters/toLanguageModelMessag
|
|
32
32
|
var import_toLanguageModelTools = require("./converters/toLanguageModelTools.js");
|
33
33
|
var import_toolResultStream = require("./streams/toolResultStream.js");
|
34
34
|
var import_runResultStream = require("./streams/runResultStream.js");
|
35
|
-
var
|
35
|
+
var import_ModelContextTypes = require("../../model-context/ModelContextTypes.js");
|
36
36
|
var import_streamPartEncoderStream = require("./streams/utils/streamPartEncoderStream.js");
|
37
37
|
var voidStream = () => {
|
38
38
|
return new WritableStream({
|
@@ -53,7 +53,7 @@ var getEdgeRuntimeStream = async ({
|
|
53
53
|
...unsafeSettings
|
54
54
|
}
|
55
55
|
}) => {
|
56
|
-
const settings =
|
56
|
+
const settings = import_ModelContextTypes.LanguageModelV1CallSettingsSchema.parse(unsafeSettings);
|
57
57
|
const lmServerTools = (0, import_toLanguageModelTools.toLanguageModelTools)(serverTools);
|
58
58
|
const hasServerTools = Object.values(serverTools).some((v) => !!v.execute);
|
59
59
|
const {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/runtimes/edge/createEdgeRuntimeAPI.ts"],"sourcesContent":["import {\n LanguageModelV1,\n LanguageModelV1ToolChoice,\n LanguageModelV1FunctionTool,\n LanguageModelV1Prompt,\n LanguageModelV1CallOptions,\n} from \"@ai-sdk/provider\";\nimport { CoreMessage, ThreadStep } from \"../../types/AssistantTypes\";\nimport { assistantEncoderStream } from \"./streams/assistantEncoderStream\";\nimport { EdgeRuntimeRequestOptionsSchema } from \"./EdgeRuntimeRequestOptions\";\nimport { toLanguageModelMessages } from \"./converters/toLanguageModelMessages\";\nimport { Tool } from \"../../types\";\nimport { toLanguageModelTools } from \"./converters/toLanguageModelTools\";\nimport {\n toolResultStream,\n ToolResultStreamPart,\n} from \"./streams/toolResultStream\";\nimport { runResultStream } from \"./streams/runResultStream\";\nimport {\n LanguageModelConfig,\n LanguageModelV1CallSettings,\n LanguageModelV1CallSettingsSchema,\n} from \"../../types/ModelConfigTypes\";\nimport { CoreChatModelRunResult } from \"../local/ChatModelAdapter\";\nimport { streamPartEncoderStream } from \"./streams/utils/streamPartEncoderStream\";\nimport { z } from \"zod\";\n\ntype FinishResult = {\n messages: CoreMessage[];\n metadata: {\n steps: ThreadStep[];\n };\n};\n\ntype LanguageModelCreator = (\n config: LanguageModelConfig,\n) => Promise<LanguageModelV1> | LanguageModelV1;\n\nexport type CreateEdgeRuntimeAPIOptions = LanguageModelV1CallSettings & {\n model: LanguageModelV1 | LanguageModelCreator;\n system?: string;\n tools?: Record<string, Tool<any, any>>;\n toolChoice?: LanguageModelV1ToolChoice;\n onFinish?: (result: FinishResult) => void;\n};\n\nconst voidStream = () => {\n return new WritableStream({\n abort(reason) {\n console.error(\"Server stream processing aborted:\", reason);\n },\n });\n};\n\ntype GetEdgeRuntimeStreamOptions = {\n abortSignal: AbortSignal;\n requestData: z.infer<typeof EdgeRuntimeRequestOptionsSchema>;\n options: CreateEdgeRuntimeAPIOptions;\n};\n\nexport const getEdgeRuntimeStream = async ({\n abortSignal,\n requestData: unsafeRequest,\n options: {\n model: modelOrCreator,\n system: serverSystem,\n tools: serverTools = {},\n toolChoice,\n onFinish,\n ...unsafeSettings\n },\n}: GetEdgeRuntimeStreamOptions) => {\n const settings = LanguageModelV1CallSettingsSchema.parse(unsafeSettings);\n const lmServerTools = toLanguageModelTools(serverTools);\n const hasServerTools = Object.values(serverTools).some((v) => !!v.execute);\n\n const {\n system: clientSystem,\n tools: clientTools = [],\n messages,\n apiKey,\n baseUrl,\n modelName,\n ...callSettings\n } = EdgeRuntimeRequestOptionsSchema.parse(unsafeRequest);\n\n const systemMessages = [];\n if (serverSystem) systemMessages.push(serverSystem);\n if (clientSystem) systemMessages.push(clientSystem);\n const system = systemMessages.join(\"\\n\\n\");\n\n for (const clientTool of clientTools) {\n if (serverTools?.[clientTool.name]) {\n throw new Error(\n `Tool ${clientTool.name} was defined in both the client and server tools. This is not allowed.`,\n );\n }\n }\n\n const model =\n typeof modelOrCreator === \"function\"\n ? await modelOrCreator({ apiKey, baseUrl, modelName })\n : modelOrCreator;\n\n let stream: ReadableStream<ToolResultStreamPart>;\n const streamResult = await streamMessage({\n ...(settings as Partial<StreamMessageOptions>),\n ...callSettings,\n\n model,\n abortSignal,\n\n ...(!!system ? { system } : undefined),\n messages: [...messages],\n tools: lmServerTools.concat(clientTools as LanguageModelV1FunctionTool[]),\n ...(toolChoice ? { toolChoice } : undefined),\n });\n stream = streamResult.stream;\n\n // add tool results if we have server tools\n const canExecuteTools = hasServerTools && toolChoice?.type !== \"none\";\n if (canExecuteTools) {\n stream = stream.pipeThrough(toolResultStream(serverTools, abortSignal));\n }\n\n if (canExecuteTools || onFinish) {\n // tee the stream to process server tools and onFinish asap\n const tees = stream.tee();\n stream = tees[0];\n let serverStream = tees[1];\n\n if (onFinish) {\n let lastChunk: CoreChatModelRunResult | undefined;\n serverStream = serverStream.pipeThrough(runResultStream()).pipeThrough(\n new TransformStream({\n transform(chunk) {\n lastChunk = chunk;\n },\n flush() {\n if (!lastChunk?.status || lastChunk.status.type === \"running\")\n return;\n\n const resultingMessages = [\n ...messages,\n {\n role: \"assistant\",\n content: lastChunk.content,\n } satisfies CoreMessage,\n ];\n onFinish({\n messages: resultingMessages,\n metadata: {\n // TODO\n // eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain\n steps: lastChunk.metadata?.steps!,\n },\n });\n },\n }),\n );\n }\n\n // drain the server stream\n serverStream.pipeTo(voidStream()).catch((e) => {\n console.error(\"Server stream processing error:\", e);\n });\n }\n\n return stream;\n};\n\nexport declare namespace getEdgeRuntimeResponse {\n export type { GetEdgeRuntimeStreamOptions as Options };\n}\n\nexport const getEdgeRuntimeResponse = async (\n options: getEdgeRuntimeResponse.Options,\n) => {\n const stream = await getEdgeRuntimeStream(options);\n return new Response(\n stream\n .pipeThrough(assistantEncoderStream())\n .pipeThrough(streamPartEncoderStream()),\n {\n headers: {\n \"Content-Type\": \"text/plain; charset=utf-8\",\n },\n },\n );\n};\n\nexport const createEdgeRuntimeAPI = (options: CreateEdgeRuntimeAPIOptions) => ({\n POST: async (request: Request) =>\n getEdgeRuntimeResponse({\n abortSignal: request.signal,\n requestData: await request.json(),\n options,\n }),\n});\n\ntype StreamMessageOptions = LanguageModelV1CallSettings & {\n model: LanguageModelV1;\n system?: string;\n messages: CoreMessage[];\n tools?: LanguageModelV1FunctionTool[];\n toolChoice?: LanguageModelV1ToolChoice;\n abortSignal: AbortSignal;\n};\n\nasync function streamMessage({\n model,\n system,\n messages,\n tools,\n toolChoice,\n ...options\n}: StreamMessageOptions) {\n return model.doStream({\n inputFormat: \"messages\",\n mode: {\n type: \"regular\",\n ...(tools ? { tools } : undefined),\n ...(toolChoice ? { toolChoice } : undefined),\n },\n prompt: convertToLanguageModelPrompt(system, messages),\n ...(options as Partial<LanguageModelV1CallOptions>),\n });\n}\n\nexport function convertToLanguageModelPrompt(\n system: string | undefined,\n messages: CoreMessage[],\n): LanguageModelV1Prompt {\n const languageModelMessages: LanguageModelV1Prompt = [];\n\n if (system != null) {\n languageModelMessages.push({ role: \"system\", content: system });\n }\n languageModelMessages.push(...toLanguageModelMessages(messages));\n\n return languageModelMessages;\n}\n"],"mappings":"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","names":[]}
|
1
|
+
{"version":3,"sources":["../../../src/runtimes/edge/createEdgeRuntimeAPI.ts"],"sourcesContent":["import {\n LanguageModelV1,\n LanguageModelV1ToolChoice,\n LanguageModelV1FunctionTool,\n LanguageModelV1Prompt,\n LanguageModelV1CallOptions,\n} from \"@ai-sdk/provider\";\nimport { CoreMessage, ThreadStep } from \"../../types/AssistantTypes\";\nimport { assistantEncoderStream } from \"./streams/assistantEncoderStream\";\nimport { EdgeRuntimeRequestOptionsSchema } from \"./EdgeRuntimeRequestOptions\";\nimport { toLanguageModelMessages } from \"./converters/toLanguageModelMessages\";\nimport { toLanguageModelTools } from \"./converters/toLanguageModelTools\";\nimport {\n toolResultStream,\n ToolResultStreamPart,\n} from \"./streams/toolResultStream\";\nimport { runResultStream } from \"./streams/runResultStream\";\nimport {\n LanguageModelConfig,\n LanguageModelV1CallSettings,\n LanguageModelV1CallSettingsSchema,\n Tool,\n} from \"../../model-context/ModelContextTypes\";\nimport { CoreChatModelRunResult } from \"../local/ChatModelAdapter\";\nimport { streamPartEncoderStream } from \"./streams/utils/streamPartEncoderStream\";\nimport { z } from \"zod\";\n\ntype FinishResult = {\n messages: CoreMessage[];\n metadata: {\n steps: ThreadStep[];\n };\n};\n\ntype LanguageModelCreator = (\n config: LanguageModelConfig,\n) => Promise<LanguageModelV1> | LanguageModelV1;\n\nexport type CreateEdgeRuntimeAPIOptions = LanguageModelV1CallSettings & {\n model: LanguageModelV1 | LanguageModelCreator;\n system?: string;\n tools?: Record<string, Tool<any, any>>;\n toolChoice?: LanguageModelV1ToolChoice;\n onFinish?: (result: FinishResult) => void;\n};\n\nconst voidStream = () => {\n return new WritableStream({\n abort(reason) {\n console.error(\"Server stream processing aborted:\", reason);\n },\n });\n};\n\ntype GetEdgeRuntimeStreamOptions = {\n abortSignal: AbortSignal;\n requestData: z.infer<typeof EdgeRuntimeRequestOptionsSchema>;\n options: CreateEdgeRuntimeAPIOptions;\n};\n\nexport const getEdgeRuntimeStream = async ({\n abortSignal,\n requestData: unsafeRequest,\n options: {\n model: modelOrCreator,\n system: serverSystem,\n tools: serverTools = {},\n toolChoice,\n onFinish,\n ...unsafeSettings\n },\n}: GetEdgeRuntimeStreamOptions) => {\n const settings = LanguageModelV1CallSettingsSchema.parse(unsafeSettings);\n const lmServerTools = toLanguageModelTools(serverTools);\n const hasServerTools = Object.values(serverTools).some((v) => !!v.execute);\n\n const {\n system: clientSystem,\n tools: clientTools = [],\n messages,\n apiKey,\n baseUrl,\n modelName,\n ...callSettings\n } = EdgeRuntimeRequestOptionsSchema.parse(unsafeRequest);\n\n const systemMessages = [];\n if (serverSystem) systemMessages.push(serverSystem);\n if (clientSystem) systemMessages.push(clientSystem);\n const system = systemMessages.join(\"\\n\\n\");\n\n for (const clientTool of clientTools) {\n if (serverTools?.[clientTool.name]) {\n throw new Error(\n `Tool ${clientTool.name} was defined in both the client and server tools. This is not allowed.`,\n );\n }\n }\n\n const model =\n typeof modelOrCreator === \"function\"\n ? await modelOrCreator({ apiKey, baseUrl, modelName })\n : modelOrCreator;\n\n let stream: ReadableStream<ToolResultStreamPart>;\n const streamResult = await streamMessage({\n ...(settings as Partial<StreamMessageOptions>),\n ...callSettings,\n\n model,\n abortSignal,\n\n ...(!!system ? { system } : undefined),\n messages: [...messages],\n tools: lmServerTools.concat(clientTools as LanguageModelV1FunctionTool[]),\n ...(toolChoice ? { toolChoice } : undefined),\n });\n stream = streamResult.stream;\n\n // add tool results if we have server tools\n const canExecuteTools = hasServerTools && toolChoice?.type !== \"none\";\n if (canExecuteTools) {\n stream = stream.pipeThrough(toolResultStream(serverTools, abortSignal));\n }\n\n if (canExecuteTools || onFinish) {\n // tee the stream to process server tools and onFinish asap\n const tees = stream.tee();\n stream = tees[0];\n let serverStream = tees[1];\n\n if (onFinish) {\n let lastChunk: CoreChatModelRunResult | undefined;\n serverStream = serverStream.pipeThrough(runResultStream()).pipeThrough(\n new TransformStream({\n transform(chunk) {\n lastChunk = chunk;\n },\n flush() {\n if (!lastChunk?.status || lastChunk.status.type === \"running\")\n return;\n\n const resultingMessages = [\n ...messages,\n {\n role: \"assistant\",\n content: lastChunk.content,\n } satisfies CoreMessage,\n ];\n onFinish({\n messages: resultingMessages,\n metadata: {\n // TODO\n // eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain\n steps: lastChunk.metadata?.steps!,\n },\n });\n },\n }),\n );\n }\n\n // drain the server stream\n serverStream.pipeTo(voidStream()).catch((e) => {\n console.error(\"Server stream processing error:\", e);\n });\n }\n\n return stream;\n};\n\nexport declare namespace getEdgeRuntimeResponse {\n export type { GetEdgeRuntimeStreamOptions as Options };\n}\n\nexport const getEdgeRuntimeResponse = async (\n options: getEdgeRuntimeResponse.Options,\n) => {\n const stream = await getEdgeRuntimeStream(options);\n return new Response(\n stream\n .pipeThrough(assistantEncoderStream())\n .pipeThrough(streamPartEncoderStream()),\n {\n headers: {\n \"Content-Type\": \"text/plain; charset=utf-8\",\n },\n },\n );\n};\n\nexport const createEdgeRuntimeAPI = (options: CreateEdgeRuntimeAPIOptions) => ({\n POST: async (request: Request) =>\n getEdgeRuntimeResponse({\n abortSignal: request.signal,\n requestData: await request.json(),\n options,\n }),\n});\n\ntype StreamMessageOptions = LanguageModelV1CallSettings & {\n model: LanguageModelV1;\n system?: string;\n messages: CoreMessage[];\n tools?: LanguageModelV1FunctionTool[];\n toolChoice?: LanguageModelV1ToolChoice;\n abortSignal: AbortSignal;\n};\n\nasync function streamMessage({\n model,\n system,\n messages,\n tools,\n toolChoice,\n ...options\n}: StreamMessageOptions) {\n return model.doStream({\n inputFormat: \"messages\",\n mode: {\n type: \"regular\",\n ...(tools ? { tools } : undefined),\n ...(toolChoice ? { toolChoice } : undefined),\n },\n prompt: convertToLanguageModelPrompt(system, messages),\n ...(options as Partial<LanguageModelV1CallOptions>),\n });\n}\n\nexport function convertToLanguageModelPrompt(\n system: string | undefined,\n messages: CoreMessage[],\n): LanguageModelV1Prompt {\n const languageModelMessages: LanguageModelV1Prompt = [];\n\n if (system != null) {\n languageModelMessages.push({ role: \"system\", content: system });\n }\n languageModelMessages.push(...toLanguageModelMessages(messages));\n\n return languageModelMessages;\n}\n"],"mappings":"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","names":[]}
|
@@ -9,7 +9,7 @@ import {
|
|
9
9
|
import { runResultStream } from "./streams/runResultStream.mjs";
|
10
10
|
import {
|
11
11
|
LanguageModelV1CallSettingsSchema
|
12
|
-
} from "../../
|
12
|
+
} from "../../model-context/ModelContextTypes.mjs";
|
13
13
|
import { streamPartEncoderStream } from "./streams/utils/streamPartEncoderStream.mjs";
|
14
14
|
var voidStream = () => {
|
15
15
|
return new WritableStream({
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/runtimes/edge/createEdgeRuntimeAPI.ts"],"sourcesContent":["import {\n LanguageModelV1,\n LanguageModelV1ToolChoice,\n LanguageModelV1FunctionTool,\n LanguageModelV1Prompt,\n LanguageModelV1CallOptions,\n} from \"@ai-sdk/provider\";\nimport { CoreMessage, ThreadStep } from \"../../types/AssistantTypes\";\nimport { assistantEncoderStream } from \"./streams/assistantEncoderStream\";\nimport { EdgeRuntimeRequestOptionsSchema } from \"./EdgeRuntimeRequestOptions\";\nimport { toLanguageModelMessages } from \"./converters/toLanguageModelMessages\";\nimport { Tool } from \"../../types\";\nimport { toLanguageModelTools } from \"./converters/toLanguageModelTools\";\nimport {\n toolResultStream,\n ToolResultStreamPart,\n} from \"./streams/toolResultStream\";\nimport { runResultStream } from \"./streams/runResultStream\";\nimport {\n LanguageModelConfig,\n LanguageModelV1CallSettings,\n LanguageModelV1CallSettingsSchema,\n} from \"../../types/ModelConfigTypes\";\nimport { CoreChatModelRunResult } from \"../local/ChatModelAdapter\";\nimport { streamPartEncoderStream } from \"./streams/utils/streamPartEncoderStream\";\nimport { z } from \"zod\";\n\ntype FinishResult = {\n messages: CoreMessage[];\n metadata: {\n steps: ThreadStep[];\n };\n};\n\ntype LanguageModelCreator = (\n config: LanguageModelConfig,\n) => Promise<LanguageModelV1> | LanguageModelV1;\n\nexport type CreateEdgeRuntimeAPIOptions = LanguageModelV1CallSettings & {\n model: LanguageModelV1 | LanguageModelCreator;\n system?: string;\n tools?: Record<string, Tool<any, any>>;\n toolChoice?: LanguageModelV1ToolChoice;\n onFinish?: (result: FinishResult) => void;\n};\n\nconst voidStream = () => {\n return new WritableStream({\n abort(reason) {\n console.error(\"Server stream processing aborted:\", reason);\n },\n });\n};\n\ntype GetEdgeRuntimeStreamOptions = {\n abortSignal: AbortSignal;\n requestData: z.infer<typeof EdgeRuntimeRequestOptionsSchema>;\n options: CreateEdgeRuntimeAPIOptions;\n};\n\nexport const getEdgeRuntimeStream = async ({\n abortSignal,\n requestData: unsafeRequest,\n options: {\n model: modelOrCreator,\n system: serverSystem,\n tools: serverTools = {},\n toolChoice,\n onFinish,\n ...unsafeSettings\n },\n}: GetEdgeRuntimeStreamOptions) => {\n const settings = LanguageModelV1CallSettingsSchema.parse(unsafeSettings);\n const lmServerTools = toLanguageModelTools(serverTools);\n const hasServerTools = Object.values(serverTools).some((v) => !!v.execute);\n\n const {\n system: clientSystem,\n tools: clientTools = [],\n messages,\n apiKey,\n baseUrl,\n modelName,\n ...callSettings\n } = EdgeRuntimeRequestOptionsSchema.parse(unsafeRequest);\n\n const systemMessages = [];\n if (serverSystem) systemMessages.push(serverSystem);\n if (clientSystem) systemMessages.push(clientSystem);\n const system = systemMessages.join(\"\\n\\n\");\n\n for (const clientTool of clientTools) {\n if (serverTools?.[clientTool.name]) {\n throw new Error(\n `Tool ${clientTool.name} was defined in both the client and server tools. This is not allowed.`,\n );\n }\n }\n\n const model =\n typeof modelOrCreator === \"function\"\n ? await modelOrCreator({ apiKey, baseUrl, modelName })\n : modelOrCreator;\n\n let stream: ReadableStream<ToolResultStreamPart>;\n const streamResult = await streamMessage({\n ...(settings as Partial<StreamMessageOptions>),\n ...callSettings,\n\n model,\n abortSignal,\n\n ...(!!system ? { system } : undefined),\n messages: [...messages],\n tools: lmServerTools.concat(clientTools as LanguageModelV1FunctionTool[]),\n ...(toolChoice ? { toolChoice } : undefined),\n });\n stream = streamResult.stream;\n\n // add tool results if we have server tools\n const canExecuteTools = hasServerTools && toolChoice?.type !== \"none\";\n if (canExecuteTools) {\n stream = stream.pipeThrough(toolResultStream(serverTools, abortSignal));\n }\n\n if (canExecuteTools || onFinish) {\n // tee the stream to process server tools and onFinish asap\n const tees = stream.tee();\n stream = tees[0];\n let serverStream = tees[1];\n\n if (onFinish) {\n let lastChunk: CoreChatModelRunResult | undefined;\n serverStream = serverStream.pipeThrough(runResultStream()).pipeThrough(\n new TransformStream({\n transform(chunk) {\n lastChunk = chunk;\n },\n flush() {\n if (!lastChunk?.status || lastChunk.status.type === \"running\")\n return;\n\n const resultingMessages = [\n ...messages,\n {\n role: \"assistant\",\n content: lastChunk.content,\n } satisfies CoreMessage,\n ];\n onFinish({\n messages: resultingMessages,\n metadata: {\n // TODO\n // eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain\n steps: lastChunk.metadata?.steps!,\n },\n });\n },\n }),\n );\n }\n\n // drain the server stream\n serverStream.pipeTo(voidStream()).catch((e) => {\n console.error(\"Server stream processing error:\", e);\n });\n }\n\n return stream;\n};\n\nexport declare namespace getEdgeRuntimeResponse {\n export type { GetEdgeRuntimeStreamOptions as Options };\n}\n\nexport const getEdgeRuntimeResponse = async (\n options: getEdgeRuntimeResponse.Options,\n) => {\n const stream = await getEdgeRuntimeStream(options);\n return new Response(\n stream\n .pipeThrough(assistantEncoderStream())\n .pipeThrough(streamPartEncoderStream()),\n {\n headers: {\n \"Content-Type\": \"text/plain; charset=utf-8\",\n },\n },\n );\n};\n\nexport const createEdgeRuntimeAPI = (options: CreateEdgeRuntimeAPIOptions) => ({\n POST: async (request: Request) =>\n getEdgeRuntimeResponse({\n abortSignal: request.signal,\n requestData: await request.json(),\n options,\n }),\n});\n\ntype StreamMessageOptions = LanguageModelV1CallSettings & {\n model: LanguageModelV1;\n system?: string;\n messages: CoreMessage[];\n tools?: LanguageModelV1FunctionTool[];\n toolChoice?: LanguageModelV1ToolChoice;\n abortSignal: AbortSignal;\n};\n\nasync function streamMessage({\n model,\n system,\n messages,\n tools,\n toolChoice,\n ...options\n}: StreamMessageOptions) {\n return model.doStream({\n inputFormat: \"messages\",\n mode: {\n type: \"regular\",\n ...(tools ? { tools } : undefined),\n ...(toolChoice ? { toolChoice } : undefined),\n },\n prompt: convertToLanguageModelPrompt(system, messages),\n ...(options as Partial<LanguageModelV1CallOptions>),\n });\n}\n\nexport function convertToLanguageModelPrompt(\n system: string | undefined,\n messages: CoreMessage[],\n): LanguageModelV1Prompt {\n const languageModelMessages: LanguageModelV1Prompt = [];\n\n if (system != null) {\n languageModelMessages.push({ role: \"system\", content: system });\n }\n languageModelMessages.push(...toLanguageModelMessages(messages));\n\n return languageModelMessages;\n}\n"],"mappings":"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","names":[]}
|
1
|
+
{"version":3,"sources":["../../../src/runtimes/edge/createEdgeRuntimeAPI.ts"],"sourcesContent":["import {\n LanguageModelV1,\n LanguageModelV1ToolChoice,\n LanguageModelV1FunctionTool,\n LanguageModelV1Prompt,\n LanguageModelV1CallOptions,\n} from \"@ai-sdk/provider\";\nimport { CoreMessage, ThreadStep } from \"../../types/AssistantTypes\";\nimport { assistantEncoderStream } from \"./streams/assistantEncoderStream\";\nimport { EdgeRuntimeRequestOptionsSchema } from \"./EdgeRuntimeRequestOptions\";\nimport { toLanguageModelMessages } from \"./converters/toLanguageModelMessages\";\nimport { toLanguageModelTools } from \"./converters/toLanguageModelTools\";\nimport {\n toolResultStream,\n ToolResultStreamPart,\n} from \"./streams/toolResultStream\";\nimport { runResultStream } from \"./streams/runResultStream\";\nimport {\n LanguageModelConfig,\n LanguageModelV1CallSettings,\n LanguageModelV1CallSettingsSchema,\n Tool,\n} from \"../../model-context/ModelContextTypes\";\nimport { CoreChatModelRunResult } from \"../local/ChatModelAdapter\";\nimport { streamPartEncoderStream } from \"./streams/utils/streamPartEncoderStream\";\nimport { z } from \"zod\";\n\ntype FinishResult = {\n messages: CoreMessage[];\n metadata: {\n steps: ThreadStep[];\n };\n};\n\ntype LanguageModelCreator = (\n config: LanguageModelConfig,\n) => Promise<LanguageModelV1> | LanguageModelV1;\n\nexport type CreateEdgeRuntimeAPIOptions = LanguageModelV1CallSettings & {\n model: LanguageModelV1 | LanguageModelCreator;\n system?: string;\n tools?: Record<string, Tool<any, any>>;\n toolChoice?: LanguageModelV1ToolChoice;\n onFinish?: (result: FinishResult) => void;\n};\n\nconst voidStream = () => {\n return new WritableStream({\n abort(reason) {\n console.error(\"Server stream processing aborted:\", reason);\n },\n });\n};\n\ntype GetEdgeRuntimeStreamOptions = {\n abortSignal: AbortSignal;\n requestData: z.infer<typeof EdgeRuntimeRequestOptionsSchema>;\n options: CreateEdgeRuntimeAPIOptions;\n};\n\nexport const getEdgeRuntimeStream = async ({\n abortSignal,\n requestData: unsafeRequest,\n options: {\n model: modelOrCreator,\n system: serverSystem,\n tools: serverTools = {},\n toolChoice,\n onFinish,\n ...unsafeSettings\n },\n}: GetEdgeRuntimeStreamOptions) => {\n const settings = LanguageModelV1CallSettingsSchema.parse(unsafeSettings);\n const lmServerTools = toLanguageModelTools(serverTools);\n const hasServerTools = Object.values(serverTools).some((v) => !!v.execute);\n\n const {\n system: clientSystem,\n tools: clientTools = [],\n messages,\n apiKey,\n baseUrl,\n modelName,\n ...callSettings\n } = EdgeRuntimeRequestOptionsSchema.parse(unsafeRequest);\n\n const systemMessages = [];\n if (serverSystem) systemMessages.push(serverSystem);\n if (clientSystem) systemMessages.push(clientSystem);\n const system = systemMessages.join(\"\\n\\n\");\n\n for (const clientTool of clientTools) {\n if (serverTools?.[clientTool.name]) {\n throw new Error(\n `Tool ${clientTool.name} was defined in both the client and server tools. This is not allowed.`,\n );\n }\n }\n\n const model =\n typeof modelOrCreator === \"function\"\n ? await modelOrCreator({ apiKey, baseUrl, modelName })\n : modelOrCreator;\n\n let stream: ReadableStream<ToolResultStreamPart>;\n const streamResult = await streamMessage({\n ...(settings as Partial<StreamMessageOptions>),\n ...callSettings,\n\n model,\n abortSignal,\n\n ...(!!system ? { system } : undefined),\n messages: [...messages],\n tools: lmServerTools.concat(clientTools as LanguageModelV1FunctionTool[]),\n ...(toolChoice ? { toolChoice } : undefined),\n });\n stream = streamResult.stream;\n\n // add tool results if we have server tools\n const canExecuteTools = hasServerTools && toolChoice?.type !== \"none\";\n if (canExecuteTools) {\n stream = stream.pipeThrough(toolResultStream(serverTools, abortSignal));\n }\n\n if (canExecuteTools || onFinish) {\n // tee the stream to process server tools and onFinish asap\n const tees = stream.tee();\n stream = tees[0];\n let serverStream = tees[1];\n\n if (onFinish) {\n let lastChunk: CoreChatModelRunResult | undefined;\n serverStream = serverStream.pipeThrough(runResultStream()).pipeThrough(\n new TransformStream({\n transform(chunk) {\n lastChunk = chunk;\n },\n flush() {\n if (!lastChunk?.status || lastChunk.status.type === \"running\")\n return;\n\n const resultingMessages = [\n ...messages,\n {\n role: \"assistant\",\n content: lastChunk.content,\n } satisfies CoreMessage,\n ];\n onFinish({\n messages: resultingMessages,\n metadata: {\n // TODO\n // eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain\n steps: lastChunk.metadata?.steps!,\n },\n });\n },\n }),\n );\n }\n\n // drain the server stream\n serverStream.pipeTo(voidStream()).catch((e) => {\n console.error(\"Server stream processing error:\", e);\n });\n }\n\n return stream;\n};\n\nexport declare namespace getEdgeRuntimeResponse {\n export type { GetEdgeRuntimeStreamOptions as Options };\n}\n\nexport const getEdgeRuntimeResponse = async (\n options: getEdgeRuntimeResponse.Options,\n) => {\n const stream = await getEdgeRuntimeStream(options);\n return new Response(\n stream\n .pipeThrough(assistantEncoderStream())\n .pipeThrough(streamPartEncoderStream()),\n {\n headers: {\n \"Content-Type\": \"text/plain; charset=utf-8\",\n },\n },\n );\n};\n\nexport const createEdgeRuntimeAPI = (options: CreateEdgeRuntimeAPIOptions) => ({\n POST: async (request: Request) =>\n getEdgeRuntimeResponse({\n abortSignal: request.signal,\n requestData: await request.json(),\n options,\n }),\n});\n\ntype StreamMessageOptions = LanguageModelV1CallSettings & {\n model: LanguageModelV1;\n system?: string;\n messages: CoreMessage[];\n tools?: LanguageModelV1FunctionTool[];\n toolChoice?: LanguageModelV1ToolChoice;\n abortSignal: AbortSignal;\n};\n\nasync function streamMessage({\n model,\n system,\n messages,\n tools,\n toolChoice,\n ...options\n}: StreamMessageOptions) {\n return model.doStream({\n inputFormat: \"messages\",\n mode: {\n type: \"regular\",\n ...(tools ? { tools } : undefined),\n ...(toolChoice ? { toolChoice } : undefined),\n },\n prompt: convertToLanguageModelPrompt(system, messages),\n ...(options as Partial<LanguageModelV1CallOptions>),\n });\n}\n\nexport function convertToLanguageModelPrompt(\n system: string | undefined,\n messages: CoreMessage[],\n): LanguageModelV1Prompt {\n const languageModelMessages: LanguageModelV1Prompt = [];\n\n if (system != null) {\n languageModelMessages.push({ role: \"system\", content: system });\n }\n languageModelMessages.push(...toLanguageModelMessages(messages));\n\n return languageModelMessages;\n}\n"],"mappings":"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","names":[]}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { Tool } from "../../../
|
1
|
+
import { Tool } from "../../../model-context/ModelContextTypes";
|
2
2
|
import { JSONValue, LanguageModelV1StreamPart } from "@ai-sdk/provider";
|
3
3
|
export type ToolResultStreamPart = LanguageModelV1StreamPart | {
|
4
4
|
type: "data";
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"toolResultStream.d.ts","sourceRoot":"","sources":["../../../../src/runtimes/edge/streams/toolResultStream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,
|
1
|
+
{"version":3,"file":"toolResultStream.d.ts","sourceRoot":"","sources":["../../../../src/runtimes/edge/streams/toolResultStream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,0CAA0C,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAIxE,MAAM,MAAM,oBAAoB,GAC5B,yBAAyB,GACzB;IACE,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,SAAS,EAAE,CAAC;CACnB,GACD;IACE,IAAI,EAAE,aAAa,CAAC;IACpB,YAAY,EAAE,UAAU,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GACD;IACE,IAAI,EAAE,aAAa,CAAC;IACpB,YAAY,EACR,MAAM,GACN,QAAQ,GACR,gBAAgB,GAChB,YAAY,GACZ,OAAO,GACP,OAAO,GACP,SAAS,CAAC;IACd,KAAK,EAAE;QACL,YAAY,EAAE,MAAM,CAAC;QACrB,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AAEN,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,SAAS,EACvC,WAAW,EAAE,WAAW,+DAyGzB"}
|