@base44/superagent-native 0.0.2 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/AgentSettingsPanel.js +123 -47
- package/lib/commonjs/AgentSettingsPanel.js.map +1 -1
- package/lib/commonjs/AgentSphereIcon.js +14 -118
- package/lib/commonjs/AgentSphereIcon.js.map +1 -1
- package/lib/commonjs/AttachmentPickerStatusModal.js +3 -2
- package/lib/commonjs/AttachmentPickerStatusModal.js.map +1 -1
- package/lib/commonjs/ChannelsPanel.js +66 -44
- package/lib/commonjs/ChannelsPanel.js.map +1 -1
- package/lib/commonjs/ConversationChat.js +11 -2
- package/lib/commonjs/ConversationChat.js.map +1 -1
- package/lib/commonjs/ConversationComposer.js +8 -7
- package/lib/commonjs/ConversationComposer.js.map +1 -1
- package/lib/commonjs/ConversationScreen.js +2 -0
- package/lib/commonjs/ConversationScreen.js.map +1 -1
- package/lib/commonjs/EditorDrawer.js +54 -24
- package/lib/commonjs/EditorDrawer.js.map +1 -1
- package/lib/commonjs/FilesPanel.js +56 -20
- package/lib/commonjs/FilesPanel.js.map +1 -1
- package/lib/commonjs/RenameAgentModal.js +2 -1
- package/lib/commonjs/RenameAgentModal.js.map +1 -1
- package/lib/commonjs/ShareAgentModal.js +11 -10
- package/lib/commonjs/ShareAgentModal.js.map +1 -1
- package/lib/commonjs/ShareAgentModal.styles.js +2 -2
- package/lib/commonjs/ShareAgentModal.styles.js.map +1 -1
- package/lib/commonjs/SuperagentHomeScreen.js +27 -9
- package/lib/commonjs/SuperagentHomeScreen.js.map +1 -1
- package/lib/commonjs/ToolApprovalCard.js +72 -14
- package/lib/commonjs/ToolApprovalCard.js.map +1 -1
- package/lib/commonjs/ToolCallSummary.js +14 -9
- package/lib/commonjs/ToolCallSummary.js.map +1 -1
- package/lib/commonjs/agentSphereAssets.js +327 -0
- package/lib/commonjs/agentSphereAssets.js.map +1 -0
- package/lib/commonjs/agentSphereStyles.js +3 -3
- package/lib/commonjs/agentSphereStyles.js.map +1 -1
- package/lib/commonjs/apiClient.js +7 -0
- package/lib/commonjs/apiClient.js.map +1 -1
- package/lib/commonjs/composerStyles.js +2 -2
- package/lib/commonjs/composerStyles.js.map +1 -1
- package/lib/commonjs/connectorBrandIcons.generated.js +625 -0
- package/lib/commonjs/connectorBrandIcons.generated.js.map +1 -0
- package/lib/commonjs/connectorBrandIcons.js +3 -55
- package/lib/commonjs/connectorBrandIcons.js.map +1 -1
- package/lib/commonjs/connectorCatalog.js +19 -1
- package/lib/commonjs/connectorCatalog.js.map +1 -1
- package/lib/commonjs/conversationParts.js +5 -4
- package/lib/commonjs/conversationParts.js.map +1 -1
- package/lib/commonjs/conversationRuntime.js +120 -12
- package/lib/commonjs/conversationRuntime.js.map +1 -1
- package/lib/commonjs/conversationStyles.js +2 -1
- package/lib/commonjs/conversationStyles.js.map +1 -1
- package/lib/commonjs/editorShellStyles.js +6 -2
- package/lib/commonjs/editorShellStyles.js.map +1 -1
- package/lib/commonjs/index.js +7 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/markdownStyles.js +2 -2
- package/lib/commonjs/markdownStyles.js.map +1 -1
- package/lib/commonjs/messageActionStyles.js +2 -2
- package/lib/commonjs/messageActionStyles.js.map +1 -1
- package/lib/commonjs/realtimeClient.js +4 -1
- package/lib/commonjs/realtimeClient.js.map +1 -1
- package/lib/commonjs/renameAgentModalStyles.js +2 -2
- package/lib/commonjs/renameAgentModalStyles.js.map +1 -1
- package/lib/commonjs/screenParts.js +24 -41
- package/lib/commonjs/screenParts.js.map +1 -1
- package/lib/commonjs/styles.js +71 -60
- package/lib/commonjs/styles.js.map +1 -1
- package/lib/commonjs/superagentApiClient.js +63 -18
- package/lib/commonjs/superagentApiClient.js.map +1 -1
- package/lib/commonjs/theme.js +249 -0
- package/lib/commonjs/theme.js.map +1 -0
- package/lib/commonjs/useSuperagentConversation.js +133 -20
- package/lib/commonjs/useSuperagentConversation.js.map +1 -1
- package/lib/commonjs/useSuperagentRuntime.js +167 -82
- package/lib/commonjs/useSuperagentRuntime.js.map +1 -1
- package/lib/module/AgentSettingsPanel.js +125 -49
- package/lib/module/AgentSettingsPanel.js.map +1 -1
- package/lib/module/AgentSphereIcon.js +15 -118
- package/lib/module/AgentSphereIcon.js.map +1 -1
- package/lib/module/AttachmentPickerStatusModal.js +4 -3
- package/lib/module/AttachmentPickerStatusModal.js.map +1 -1
- package/lib/module/ChannelsPanel.js +67 -45
- package/lib/module/ChannelsPanel.js.map +1 -1
- package/lib/module/ConversationChat.js +11 -2
- package/lib/module/ConversationChat.js.map +1 -1
- package/lib/module/ConversationComposer.js +8 -7
- package/lib/module/ConversationComposer.js.map +1 -1
- package/lib/module/ConversationScreen.js +2 -0
- package/lib/module/ConversationScreen.js.map +1 -1
- package/lib/module/EditorDrawer.js +55 -25
- package/lib/module/EditorDrawer.js.map +1 -1
- package/lib/module/FilesPanel.js +56 -20
- package/lib/module/FilesPanel.js.map +1 -1
- package/lib/module/RenameAgentModal.js +2 -1
- package/lib/module/RenameAgentModal.js.map +1 -1
- package/lib/module/ShareAgentModal.js +11 -10
- package/lib/module/ShareAgentModal.js.map +1 -1
- package/lib/module/ShareAgentModal.styles.js +2 -2
- package/lib/module/ShareAgentModal.styles.js.map +1 -1
- package/lib/module/SuperagentHomeScreen.js +27 -9
- package/lib/module/SuperagentHomeScreen.js.map +1 -1
- package/lib/module/ToolApprovalCard.js +72 -14
- package/lib/module/ToolApprovalCard.js.map +1 -1
- package/lib/module/ToolCallSummary.js +14 -9
- package/lib/module/ToolCallSummary.js.map +1 -1
- package/lib/module/agentSphereAssets.js +323 -0
- package/lib/module/agentSphereAssets.js.map +1 -0
- package/lib/module/agentSphereStyles.js +3 -3
- package/lib/module/agentSphereStyles.js.map +1 -1
- package/lib/module/apiClient.js +7 -0
- package/lib/module/apiClient.js.map +1 -1
- package/lib/module/composerStyles.js +2 -2
- package/lib/module/composerStyles.js.map +1 -1
- package/lib/module/connectorBrandIcons.generated.js +621 -0
- package/lib/module/connectorBrandIcons.generated.js.map +1 -0
- package/lib/module/connectorBrandIcons.js +1 -53
- package/lib/module/connectorBrandIcons.js.map +1 -1
- package/lib/module/connectorCatalog.js +17 -0
- package/lib/module/connectorCatalog.js.map +1 -1
- package/lib/module/conversationParts.js +5 -4
- package/lib/module/conversationParts.js.map +1 -1
- package/lib/module/conversationRuntime.js +118 -12
- package/lib/module/conversationRuntime.js.map +1 -1
- package/lib/module/conversationStyles.js +3 -2
- package/lib/module/conversationStyles.js.map +1 -1
- package/lib/module/editorShellStyles.js +6 -2
- package/lib/module/editorShellStyles.js.map +1 -1
- package/lib/module/index.js +1 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/markdownStyles.js +2 -2
- package/lib/module/markdownStyles.js.map +1 -1
- package/lib/module/messageActionStyles.js +2 -2
- package/lib/module/messageActionStyles.js.map +1 -1
- package/lib/module/realtimeClient.js +4 -1
- package/lib/module/realtimeClient.js.map +1 -1
- package/lib/module/renameAgentModalStyles.js +2 -2
- package/lib/module/renameAgentModalStyles.js.map +1 -1
- package/lib/module/screenParts.js +25 -42
- package/lib/module/screenParts.js.map +1 -1
- package/lib/module/styles.js +71 -60
- package/lib/module/styles.js.map +1 -1
- package/lib/module/superagentApiClient.js +63 -18
- package/lib/module/superagentApiClient.js.map +1 -1
- package/lib/module/theme.js +239 -0
- package/lib/module/theme.js.map +1 -0
- package/lib/module/useSuperagentConversation.js +135 -22
- package/lib/module/useSuperagentConversation.js.map +1 -1
- package/lib/module/useSuperagentRuntime.js +167 -82
- package/lib/module/useSuperagentRuntime.js.map +1 -1
- package/lib/typescript/commonjs/AgentSettingsPanel.d.ts.map +1 -1
- package/lib/typescript/commonjs/AgentSphereIcon.d.ts.map +1 -1
- package/lib/typescript/commonjs/AttachmentPickerStatusModal.d.ts.map +1 -1
- package/lib/typescript/commonjs/ChannelsPanel.d.ts.map +1 -1
- package/lib/typescript/commonjs/ConversationChat.d.ts +1 -1
- package/lib/typescript/commonjs/ConversationChat.d.ts.map +1 -1
- package/lib/typescript/commonjs/ConversationComposer.d.ts.map +1 -1
- package/lib/typescript/commonjs/ConversationMessageList.d.ts +1 -1
- package/lib/typescript/commonjs/ConversationMessageList.d.ts.map +1 -1
- package/lib/typescript/commonjs/ConversationScreen.d.ts +2 -1
- package/lib/typescript/commonjs/ConversationScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/EditorDrawer.d.ts +1 -1
- package/lib/typescript/commonjs/EditorDrawer.d.ts.map +1 -1
- package/lib/typescript/commonjs/FilesPanel.d.ts.map +1 -1
- package/lib/typescript/commonjs/RenameAgentModal.d.ts.map +1 -1
- package/lib/typescript/commonjs/ShareAgentModal.d.ts.map +1 -1
- package/lib/typescript/commonjs/ShareAgentModal.styles.d.ts.map +1 -1
- package/lib/typescript/commonjs/SuperagentHomeScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ToolApprovalCard.d.ts +3 -3
- package/lib/typescript/commonjs/ToolApprovalCard.d.ts.map +1 -1
- package/lib/typescript/commonjs/ToolCallSummary.d.ts +1 -1
- package/lib/typescript/commonjs/ToolCallSummary.d.ts.map +1 -1
- package/lib/typescript/commonjs/agentSphereAssets.d.ts +2 -0
- package/lib/typescript/commonjs/agentSphereAssets.d.ts.map +1 -0
- package/lib/typescript/commonjs/agentSphereStyles.d.ts.map +1 -1
- package/lib/typescript/commonjs/apiClient.d.ts.map +1 -1
- package/lib/typescript/commonjs/composerStyles.d.ts.map +1 -1
- package/lib/typescript/commonjs/connectorBrandIcons.d.ts.map +1 -1
- package/lib/typescript/commonjs/connectorBrandIcons.generated.d.ts +2 -0
- package/lib/typescript/commonjs/connectorBrandIcons.generated.d.ts.map +1 -0
- package/lib/typescript/commonjs/connectorCatalog.d.ts +2 -0
- package/lib/typescript/commonjs/connectorCatalog.d.ts.map +1 -1
- package/lib/typescript/commonjs/conversationParts.d.ts +1 -1
- package/lib/typescript/commonjs/conversationParts.d.ts.map +1 -1
- package/lib/typescript/commonjs/conversationRuntime.d.ts +6 -1
- package/lib/typescript/commonjs/conversationRuntime.d.ts.map +1 -1
- package/lib/typescript/commonjs/conversationStyles.d.ts.map +1 -1
- package/lib/typescript/commonjs/editorShellStyles.d.ts +4 -0
- package/lib/typescript/commonjs/editorShellStyles.d.ts.map +1 -1
- package/lib/typescript/commonjs/index.d.ts +2 -0
- package/lib/typescript/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/markdownStyles.d.ts.map +1 -1
- package/lib/typescript/commonjs/messageActionStyles.d.ts.map +1 -1
- package/lib/typescript/commonjs/realtimeClient.d.ts.map +1 -1
- package/lib/typescript/commonjs/renameAgentModalStyles.d.ts.map +1 -1
- package/lib/typescript/commonjs/screenParts.d.ts +1 -1
- package/lib/typescript/commonjs/screenParts.d.ts.map +1 -1
- package/lib/typescript/commonjs/styles.d.ts +20 -11
- package/lib/typescript/commonjs/styles.d.ts.map +1 -1
- package/lib/typescript/commonjs/superagentApiClient.d.ts +2 -1
- package/lib/typescript/commonjs/superagentApiClient.d.ts.map +1 -1
- package/lib/typescript/commonjs/theme.d.ts +36 -0
- package/lib/typescript/commonjs/theme.d.ts.map +1 -0
- package/lib/typescript/commonjs/types.d.ts +16 -2
- package/lib/typescript/commonjs/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/useSuperagentConversation.d.ts +3 -2
- package/lib/typescript/commonjs/useSuperagentConversation.d.ts.map +1 -1
- package/lib/typescript/commonjs/useSuperagentRuntime.d.ts +2 -1
- package/lib/typescript/commonjs/useSuperagentRuntime.d.ts.map +1 -1
- package/lib/typescript/module/AgentSettingsPanel.d.ts.map +1 -1
- package/lib/typescript/module/AgentSphereIcon.d.ts.map +1 -1
- package/lib/typescript/module/AttachmentPickerStatusModal.d.ts.map +1 -1
- package/lib/typescript/module/ChannelsPanel.d.ts.map +1 -1
- package/lib/typescript/module/ConversationChat.d.ts +1 -1
- package/lib/typescript/module/ConversationChat.d.ts.map +1 -1
- package/lib/typescript/module/ConversationComposer.d.ts.map +1 -1
- package/lib/typescript/module/ConversationMessageList.d.ts +1 -1
- package/lib/typescript/module/ConversationMessageList.d.ts.map +1 -1
- package/lib/typescript/module/ConversationScreen.d.ts +2 -1
- package/lib/typescript/module/ConversationScreen.d.ts.map +1 -1
- package/lib/typescript/module/EditorDrawer.d.ts +1 -1
- package/lib/typescript/module/EditorDrawer.d.ts.map +1 -1
- package/lib/typescript/module/FilesPanel.d.ts.map +1 -1
- package/lib/typescript/module/RenameAgentModal.d.ts.map +1 -1
- package/lib/typescript/module/ShareAgentModal.d.ts.map +1 -1
- package/lib/typescript/module/ShareAgentModal.styles.d.ts.map +1 -1
- package/lib/typescript/module/SuperagentHomeScreen.d.ts.map +1 -1
- package/lib/typescript/module/ToolApprovalCard.d.ts +3 -3
- package/lib/typescript/module/ToolApprovalCard.d.ts.map +1 -1
- package/lib/typescript/module/ToolCallSummary.d.ts +1 -1
- package/lib/typescript/module/ToolCallSummary.d.ts.map +1 -1
- package/lib/typescript/module/agentSphereAssets.d.ts +2 -0
- package/lib/typescript/module/agentSphereAssets.d.ts.map +1 -0
- package/lib/typescript/module/agentSphereStyles.d.ts.map +1 -1
- package/lib/typescript/module/apiClient.d.ts.map +1 -1
- package/lib/typescript/module/composerStyles.d.ts.map +1 -1
- package/lib/typescript/module/connectorBrandIcons.d.ts.map +1 -1
- package/lib/typescript/module/connectorBrandIcons.generated.d.ts +2 -0
- package/lib/typescript/module/connectorBrandIcons.generated.d.ts.map +1 -0
- package/lib/typescript/module/connectorCatalog.d.ts +2 -0
- package/lib/typescript/module/connectorCatalog.d.ts.map +1 -1
- package/lib/typescript/module/conversationParts.d.ts +1 -1
- package/lib/typescript/module/conversationParts.d.ts.map +1 -1
- package/lib/typescript/module/conversationRuntime.d.ts +6 -1
- package/lib/typescript/module/conversationRuntime.d.ts.map +1 -1
- package/lib/typescript/module/conversationStyles.d.ts.map +1 -1
- package/lib/typescript/module/editorShellStyles.d.ts +4 -0
- package/lib/typescript/module/editorShellStyles.d.ts.map +1 -1
- package/lib/typescript/module/index.d.ts +2 -0
- package/lib/typescript/module/index.d.ts.map +1 -1
- package/lib/typescript/module/markdownStyles.d.ts.map +1 -1
- package/lib/typescript/module/messageActionStyles.d.ts.map +1 -1
- package/lib/typescript/module/realtimeClient.d.ts.map +1 -1
- package/lib/typescript/module/renameAgentModalStyles.d.ts.map +1 -1
- package/lib/typescript/module/screenParts.d.ts +1 -1
- package/lib/typescript/module/screenParts.d.ts.map +1 -1
- package/lib/typescript/module/styles.d.ts +20 -11
- package/lib/typescript/module/styles.d.ts.map +1 -1
- package/lib/typescript/module/superagentApiClient.d.ts +2 -1
- package/lib/typescript/module/superagentApiClient.d.ts.map +1 -1
- package/lib/typescript/module/theme.d.ts +36 -0
- package/lib/typescript/module/theme.d.ts.map +1 -0
- package/lib/typescript/module/types.d.ts +16 -2
- package/lib/typescript/module/types.d.ts.map +1 -1
- package/lib/typescript/module/useSuperagentConversation.d.ts +3 -2
- package/lib/typescript/module/useSuperagentConversation.d.ts.map +1 -1
- package/lib/typescript/module/useSuperagentRuntime.d.ts +2 -1
- package/lib/typescript/module/useSuperagentRuntime.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/AgentSettingsPanel.tsx +118 -49
- package/src/AgentSphereIcon.tsx +11 -62
- package/src/AttachmentPickerStatusModal.tsx +4 -3
- package/src/ChannelsPanel.tsx +59 -39
- package/src/ConversationChat.tsx +12 -3
- package/src/ConversationComposer.tsx +7 -6
- package/src/ConversationMessageList.tsx +1 -1
- package/src/ConversationScreen.tsx +3 -0
- package/src/EditorDrawer.tsx +66 -41
- package/src/FilesPanel.tsx +48 -20
- package/src/RenameAgentModal.tsx +2 -1
- package/src/ShareAgentModal.styles.ts +2 -1
- package/src/ShareAgentModal.tsx +9 -8
- package/src/SuperagentHomeScreen.tsx +27 -7
- package/src/ToolApprovalCard.tsx +82 -14
- package/src/ToolCallSummary.tsx +18 -12
- package/src/agentSphereAssets.ts +325 -0
- package/src/agentSphereStyles.ts +3 -2
- package/src/apiClient.ts +7 -0
- package/src/composerStyles.ts +2 -1
- package/src/connectorBrandIcons.generated.ts +618 -0
- package/src/connectorBrandIcons.tsx +1 -53
- package/src/connectorCatalog.ts +24 -0
- package/src/conversationParts.tsx +6 -5
- package/src/conversationRuntime.ts +123 -12
- package/src/conversationStyles.ts +2 -1
- package/src/editorShellStyles.ts +6 -1
- package/src/index.ts +2 -0
- package/src/markdownStyles.ts +2 -1
- package/src/messageActionStyles.ts +2 -1
- package/src/realtimeClient.ts +7 -1
- package/src/renameAgentModalStyles.ts +2 -1
- package/src/screenParts.tsx +17 -29
- package/src/styles.ts +63 -54
- package/src/superagentApiClient.ts +68 -18
- package/src/theme.ts +254 -0
- package/src/types.ts +21 -2
- package/src/useSuperagentConversation.ts +141 -24
- package/src/useSuperagentRuntime.ts +165 -84
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_constants","_conversationRuntime","useSuperagentConversation","agentId","apiClient","realtimeClient","fallbackMessages","fallbackSending","onAgentMessageDone","onConversationSettled","onSendMessage","conversationId","setConversationId","useState","messages","setMessages","queuedMessages","setQueuedMessages","isLoading","setIsLoading","isSending","setIsSending","initError","setInitError","hasMoreMessages","setHasMoreMessages","sendGenerationRef","useRef","pollIntervalRef","loadingPreviousRef","settleTimeoutRef","messagesRef","onAgentMessageDoneRef","onConversationSettledRef","useEffect","current","clearPendingSettlers","useCallback","clearInterval","clearTimeout","client","cancelled","initConversation","conversations","getConversations","conversation","createConversation","page","getMessages","id","limit","MESSAGES_PAGE_SIZE","normalizeMessages","Boolean","has_more","hasMore","length","addMessage","createUserMessage","AUTO_GREET_MESSAGE","refreshConversation","error","Error","message","undefined","subscribeToConversation","onMessage","mergeMessage","onConversation","incoming","mergeConversationSnapshot","onAgentDone","then","catch","onReconnect","onError","visibleMessages","useMemo","filter","index","isVisibleMessage","sendMessage","content","options","trimmedContent","trim","fileUrls","assistantCountBefore","countAssistantResponses","userMessage","replyTo","sendGeneration","setSendingForCurrentSend","value","hasAssistantResponse","sendWithFallback","armSettleFallback","pollConversation","setTimeout","response","isQueuedResponse","position","refreshedMessages","hasNewAssistantResponse","errorMessage","createErrorMessage","deleteMessage","messageId","stop","stopConversation","loadPrevious","before","getMessageCursor","submitToolCallInput","toolCallId","approve","extraUserInput","originRequestId","updated"],"sourceRoot":"../../src","sources":["useSuperagentConversation.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","require","_constants","_conversationRuntime","useSuperagentConversation","agentId","apiClient","realtimeClient","currentUserId","fallbackMessages","fallbackSending","onAgentMessageDone","onConversationSettled","onSendMessage","conversationId","setConversationId","useState","messages","setMessages","queuedMessages","setQueuedMessages","isLoading","setIsLoading","isSending","setIsSending","initError","setInitError","hasMoreMessages","setHasMoreMessages","sendGenerationRef","useRef","pollIntervalRef","loadingPreviousRef","settleTimeoutRef","messagesRef","onAgentMessageDoneRef","onConversationSettledRef","useEffect","current","clearPendingSettlers","useCallback","clearInterval","clearTimeout","client","cancelled","initConversation","conversations","getConversations","conversation","createConversation","page","getMessages","id","limit","MESSAGES_PAGE_SIZE","normalizeMessages","Boolean","has_more","hasMore","length","bootstrapIntro","refreshConversation","error","Error","message","undefined","subscribeToConversation","onMessage","mergeMessage","onConversation","incoming","mergeConversationSnapshot","onAgentDone","payload","sender_platform_user_id","sendGeneration","setSendingIfCurrent","value","settle","handOffToPoll","assistantCountBefore","pollConversation","then","refreshed","hasRunningToolCall","countAssistantResponses","catch","onReconnect","onError","visibleMessages","useMemo","filter","index","isVisibleMessage","sendMessage","content","options","trimmedContent","trim","fileUrls","userMessage","createUserMessage","replyTo","setSendingForCurrentSend","delivered","hasAssistantResponse","sendWithFallback","armSettleFallback","setTimeout","response","addMessage","isQueuedResponse","position","pollQueuedSend","interval","refreshedMessages","hasNewAssistantResponse","errorMessage","createErrorMessage","deleteMessage","messageId","stop","stopConversation","loadPrevious","before","getMessageCursor","submitToolCallInput","toolCallId","approve","extraUserInput","originRequestId","updated"],"sourceRoot":"../../src","sources":["useSuperagentConversation.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -53,6 +53,11 @@ function useSuperagentRuntime({
|
|
|
53
53
|
const [isLoading, setIsLoading] = (0, _react.useState)(true);
|
|
54
54
|
const [loadError, setLoadError] = (0, _react.useState)(null);
|
|
55
55
|
const [runtimeAuthToken, setRuntimeAuthToken] = (0, _react.useState)(null);
|
|
56
|
+
// Caches the resolved runtime token keyed by the agent it belongs to. The
|
|
57
|
+
// runtimeAuthToken state lags an agent switch (it's cleared in a later effect),
|
|
58
|
+
// so resolveRuntimeToken must not trust it as a cache — this ref can never hand
|
|
59
|
+
// back a different agent's token.
|
|
60
|
+
const runtimeTokenRef = (0, _react.useRef)(null);
|
|
56
61
|
const [realtimeClient, setRealtimeClient] = (0, _react.useState)();
|
|
57
62
|
const [secrets, setSecrets] = (0, _react.useState)([]);
|
|
58
63
|
const connectorFlowRef = (0, _react.useRef)(null);
|
|
@@ -166,15 +171,27 @@ function useSuperagentRuntime({
|
|
|
166
171
|
}
|
|
167
172
|
}, [superagentService]);
|
|
168
173
|
const resolveRuntimeToken = (0, _react.useCallback)(async agentId => {
|
|
169
|
-
|
|
170
|
-
|
|
174
|
+
// Use the agent-keyed ref, not the runtimeAuthToken state: the state still
|
|
175
|
+
// holds the previous agent's token during a switch (it's cleared in a later
|
|
176
|
+
// effect), so trusting it could return the wrong agent's token here.
|
|
177
|
+
const cached = runtimeTokenRef.current;
|
|
178
|
+
if (cached && cached.agentId === agentId) {
|
|
179
|
+
return cached.token;
|
|
171
180
|
}
|
|
172
181
|
const token = await superagentService.getRuntimeAuthToken(agentId);
|
|
173
|
-
|
|
182
|
+
runtimeTokenRef.current = {
|
|
183
|
+
agentId,
|
|
184
|
+
token
|
|
185
|
+
};
|
|
186
|
+
// Compare against the latest active agent (ref), not the closure-captured
|
|
187
|
+
// activeAgentId: the user may have switched agents while the fetch was in
|
|
188
|
+
// flight, and writing a stale agent's token into shared state would point
|
|
189
|
+
// realtime/channel calls at the wrong agent.
|
|
190
|
+
if (agentId === activeAgentIdRef.current) {
|
|
174
191
|
setRuntimeAuthToken(token);
|
|
175
192
|
}
|
|
176
193
|
return token;
|
|
177
|
-
}, [
|
|
194
|
+
}, [superagentService]);
|
|
178
195
|
const loadChannels = (0, _react.useCallback)(async agentId => {
|
|
179
196
|
setIsLoadingChannels(true);
|
|
180
197
|
try {
|
|
@@ -213,6 +230,7 @@ function useSuperagentRuntime({
|
|
|
213
230
|
setChannelStatus({});
|
|
214
231
|
setCollaborators([]);
|
|
215
232
|
setConnectingChannelId(null);
|
|
233
|
+
setConnectingConnectorId(null);
|
|
216
234
|
setConnectedConnectors([]);
|
|
217
235
|
setFilePaths([]);
|
|
218
236
|
setFileLoadError(null);
|
|
@@ -256,23 +274,17 @@ function useSuperagentRuntime({
|
|
|
256
274
|
if (!flow || flow.cancelled) {
|
|
257
275
|
return;
|
|
258
276
|
}
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
if (event.status === 'error') {
|
|
267
|
-
flow.cancelled = true;
|
|
268
|
-
connectorFlowRef.current = null;
|
|
269
|
-
setConnectingConnectorId(null);
|
|
277
|
+
|
|
278
|
+
// The callback event carries no connection/connector identifier, so it can't
|
|
279
|
+
// be reliably attributed to this flow — a late callback from a superseded
|
|
280
|
+
// connect could otherwise mark the wrong flow. Don't mutate flow state here;
|
|
281
|
+
// waitForConnectorAuthorization polls the authoritative per-connection status
|
|
282
|
+
// (it detects ACTIVE/FAILED on its own). Just refresh the connector list so
|
|
283
|
+
// the UI reflects the latest state.
|
|
284
|
+
if (event.status === 'success' || event.status === 'error') {
|
|
270
285
|
await loadConnectors(flow.agentId);
|
|
271
|
-
showAlert(nativeAdapters, 'Connector failed', 'OAuth authorization did not complete. Please try connecting again.');
|
|
272
|
-
return;
|
|
273
286
|
}
|
|
274
|
-
|
|
275
|
-
}, [loadConnectors, nativeAdapters]);
|
|
287
|
+
}, [loadConnectors]);
|
|
276
288
|
(0, _react.useEffect)(() => {
|
|
277
289
|
return nativeAdapters.subscribeToExternalAuthCallbacks?.(completePendingConnectorFromCallback);
|
|
278
290
|
}, [completePendingConnectorFromCallback, nativeAdapters]);
|
|
@@ -399,6 +411,9 @@ function useSuperagentRuntime({
|
|
|
399
411
|
} : agent));
|
|
400
412
|
} catch (error) {
|
|
401
413
|
showAlert(nativeAdapters, 'Permissions update failed', getErrorMessage(error));
|
|
414
|
+
// Rethrow so optimistic callers (the permission toggle) can revert; the
|
|
415
|
+
// guard-config caller wraps this in try/catch since the alert already fired.
|
|
416
|
+
throw error;
|
|
402
417
|
}
|
|
403
418
|
}, [nativeAdapters, superagentService]);
|
|
404
419
|
const onSaveSecret = (0, _react.useCallback)(async ({
|
|
@@ -476,7 +491,10 @@ function useSuperagentRuntime({
|
|
|
476
491
|
const onCloneAgent = (0, _react.useCallback)(({
|
|
477
492
|
agentId
|
|
478
493
|
}) => {
|
|
479
|
-
|
|
494
|
+
// Use the Superagent clone route — /remix-app is an app route that the web
|
|
495
|
+
// builder redirects back to /superagent/:id for user_agent apps (reopening the
|
|
496
|
+
// original instead of cloning). /clone-superagent/:id is the agent clone flow.
|
|
497
|
+
nativeAdapters.openWebUrl?.(buildWebUrl(config.webUrl ?? config.baseUrl, `/clone-superagent/${encodeURIComponent(agentId)}`));
|
|
480
498
|
}, [config.baseUrl, config.webUrl, nativeAdapters]);
|
|
481
499
|
const onDeleteAgent = (0, _react.useCallback)(async ({
|
|
482
500
|
agentId
|
|
@@ -624,7 +642,10 @@ function useSuperagentRuntime({
|
|
|
624
642
|
}
|
|
625
643
|
const writtenPaths = [];
|
|
626
644
|
for (const file of files) {
|
|
627
|
-
const
|
|
645
|
+
const safeName = (0, _fileTreeUtils.sanitizeSandboxFilePath)(file.name) || 'upload';
|
|
646
|
+
// Stage uploads under a dedicated folder so a picked file named like a
|
|
647
|
+
// generated-app file (package.json, README.md, ...) can't overwrite it.
|
|
648
|
+
const safePath = `incoming_files/${safeName}`;
|
|
628
649
|
await superagentService.writeSandboxFile(agentId, safePath, file.content);
|
|
629
650
|
writtenPaths.push(safePath);
|
|
630
651
|
}
|
|
@@ -660,19 +681,31 @@ function useSuperagentRuntime({
|
|
|
660
681
|
setConnectingChannelId('whatsapp');
|
|
661
682
|
try {
|
|
662
683
|
const token = await resolveRuntimeToken(agentId);
|
|
684
|
+
// Editor gate: the connect redirect only authenticates the app-user token and
|
|
685
|
+
// does not re-check live editor access, so a downgraded viewer could otherwise
|
|
686
|
+
// open it. /whatsapp/status enforces the two-layer editor check and throws
|
|
687
|
+
// (403) for viewers — require it to pass before opening the setup page.
|
|
688
|
+
await superagentService.getWhatsAppStatus(agentId, token);
|
|
663
689
|
const connectUrl = superagentService.getWhatsAppConnectUrl(agentId, token);
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
690
|
+
if (activeAgentIdRef.current === agentId) {
|
|
691
|
+
setChannelStatus(current => ({
|
|
692
|
+
...current,
|
|
693
|
+
whatsapp: {
|
|
694
|
+
...current.whatsapp,
|
|
695
|
+
connectUrl
|
|
696
|
+
}
|
|
697
|
+
}));
|
|
698
|
+
}
|
|
699
|
+
if (!nativeAdapters.openUrl) {
|
|
700
|
+
// Without a URL opener the setup page never launches; surface an error
|
|
701
|
+
// instead of completing silently (mirrors the connector OAuth flow).
|
|
702
|
+
throw new Error('This app cannot open the WhatsApp setup page. Connect WhatsApp from the web app.');
|
|
703
|
+
}
|
|
704
|
+
await nativeAdapters.openUrl(connectUrl);
|
|
672
705
|
} catch (error) {
|
|
673
706
|
showAlert(nativeAdapters, 'WhatsApp setup failed', getErrorMessage(error));
|
|
674
707
|
} finally {
|
|
675
|
-
setConnectingChannelId(null);
|
|
708
|
+
if (activeAgentIdRef.current === agentId) setConnectingChannelId(null);
|
|
676
709
|
}
|
|
677
710
|
}, [nativeAdapters, resolveRuntimeToken, superagentService]);
|
|
678
711
|
const onSetupTelegram = (0, _react.useCallback)(async ({
|
|
@@ -683,12 +716,14 @@ function useSuperagentRuntime({
|
|
|
683
716
|
try {
|
|
684
717
|
const runtimeToken = await resolveRuntimeToken(agentId);
|
|
685
718
|
const telegram = await superagentService.setupTelegram(agentId, runtimeToken, token);
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
719
|
+
if (activeAgentIdRef.current === agentId) {
|
|
720
|
+
setChannelStatus(current => ({
|
|
721
|
+
...current,
|
|
722
|
+
telegram
|
|
723
|
+
}));
|
|
724
|
+
}
|
|
690
725
|
} finally {
|
|
691
|
-
setConnectingChannelId(null);
|
|
726
|
+
if (activeAgentIdRef.current === agentId) setConnectingChannelId(null);
|
|
692
727
|
}
|
|
693
728
|
}, [resolveRuntimeToken, superagentService]);
|
|
694
729
|
const onDisconnectTelegram = (0, _react.useCallback)(async ({
|
|
@@ -707,16 +742,18 @@ function useSuperagentRuntime({
|
|
|
707
742
|
try {
|
|
708
743
|
const token = await resolveRuntimeToken(agentId);
|
|
709
744
|
await superagentService.disconnectTelegram(agentId, token);
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
745
|
+
if (activeAgentIdRef.current === agentId) {
|
|
746
|
+
setChannelStatus(current => ({
|
|
747
|
+
...current,
|
|
748
|
+
telegram: {
|
|
749
|
+
connected: false
|
|
750
|
+
}
|
|
751
|
+
}));
|
|
752
|
+
}
|
|
716
753
|
} catch (error) {
|
|
717
754
|
showAlert(nativeAdapters, 'Telegram disconnect failed', getErrorMessage(error));
|
|
718
755
|
} finally {
|
|
719
|
-
setConnectingChannelId(null);
|
|
756
|
+
if (activeAgentIdRef.current === agentId) setConnectingChannelId(null);
|
|
720
757
|
}
|
|
721
758
|
}, [nativeAdapters, resolveRuntimeToken, superagentService]);
|
|
722
759
|
const onGenerateLineCode = (0, _react.useCallback)(async ({
|
|
@@ -726,18 +763,20 @@ function useSuperagentRuntime({
|
|
|
726
763
|
try {
|
|
727
764
|
const token = await resolveRuntimeToken(agentId);
|
|
728
765
|
const activation = await superagentService.generateLineCode(agentId, token);
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
766
|
+
if (activeAgentIdRef.current === agentId) {
|
|
767
|
+
setChannelStatus(current => ({
|
|
768
|
+
...current,
|
|
769
|
+
line: {
|
|
770
|
+
...current.line,
|
|
771
|
+
activation,
|
|
772
|
+
connected: false
|
|
773
|
+
}
|
|
774
|
+
}));
|
|
775
|
+
}
|
|
737
776
|
} catch (error) {
|
|
738
777
|
showAlert(nativeAdapters, 'LINE setup failed', getErrorMessage(error));
|
|
739
778
|
} finally {
|
|
740
|
-
setConnectingChannelId(null);
|
|
779
|
+
if (activeAgentIdRef.current === agentId) setConnectingChannelId(null);
|
|
741
780
|
}
|
|
742
781
|
}, [nativeAdapters, resolveRuntimeToken, superagentService]);
|
|
743
782
|
const onGenerateIMessageCode = (0, _react.useCallback)(async ({
|
|
@@ -747,20 +786,22 @@ function useSuperagentRuntime({
|
|
|
747
786
|
try {
|
|
748
787
|
const token = await resolveRuntimeToken(agentId);
|
|
749
788
|
const activation = await superagentService.generateIMessageCode(agentId, token);
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
789
|
+
if (activeAgentIdRef.current === agentId) {
|
|
790
|
+
setChannelStatus(current => ({
|
|
791
|
+
...current,
|
|
792
|
+
imessage: {
|
|
793
|
+
...current.imessage,
|
|
794
|
+
activation,
|
|
795
|
+
connected: current.imessage?.connected ?? false
|
|
796
|
+
}
|
|
797
|
+
}));
|
|
798
|
+
}
|
|
758
799
|
return activation;
|
|
759
800
|
} catch (error) {
|
|
760
801
|
showAlert(nativeAdapters, 'iMessage setup failed', getErrorMessage(error));
|
|
761
802
|
throw error;
|
|
762
803
|
} finally {
|
|
763
|
-
setConnectingChannelId(null);
|
|
804
|
+
if (activeAgentIdRef.current === agentId) setConnectingChannelId(null);
|
|
764
805
|
}
|
|
765
806
|
}, [nativeAdapters, resolveRuntimeToken, superagentService]);
|
|
766
807
|
const onDisconnectIMessage = (0, _react.useCallback)(async ({
|
|
@@ -779,14 +820,16 @@ function useSuperagentRuntime({
|
|
|
779
820
|
try {
|
|
780
821
|
const token = await resolveRuntimeToken(agentId);
|
|
781
822
|
const imessage = await superagentService.disconnectIMessage(agentId, token);
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
823
|
+
if (activeAgentIdRef.current === agentId) {
|
|
824
|
+
setChannelStatus(current => ({
|
|
825
|
+
...current,
|
|
826
|
+
imessage
|
|
827
|
+
}));
|
|
828
|
+
}
|
|
786
829
|
} catch (error) {
|
|
787
830
|
showAlert(nativeAdapters, 'iMessage disconnect failed', getErrorMessage(error));
|
|
788
831
|
} finally {
|
|
789
|
-
setConnectingChannelId(null);
|
|
832
|
+
if (activeAgentIdRef.current === agentId) setConnectingChannelId(null);
|
|
790
833
|
}
|
|
791
834
|
}, [nativeAdapters, resolveRuntimeToken, superagentService]);
|
|
792
835
|
const onOpenIMessage = (0, _react.useCallback)(async ({
|
|
@@ -794,7 +837,10 @@ function useSuperagentRuntime({
|
|
|
794
837
|
phoneNumber
|
|
795
838
|
}) => {
|
|
796
839
|
try {
|
|
797
|
-
|
|
840
|
+
if (!nativeAdapters.openUrl) {
|
|
841
|
+
throw new Error('This app cannot open Messages. Use the web app to share the iMessage code.');
|
|
842
|
+
}
|
|
843
|
+
await nativeAdapters.openUrl(buildIMessageUrl(phoneNumber, code));
|
|
798
844
|
} catch (error) {
|
|
799
845
|
showAlert(nativeAdapters, 'iMessage link unavailable', getErrorMessage(error));
|
|
800
846
|
}
|
|
@@ -813,7 +859,11 @@ function useSuperagentRuntime({
|
|
|
813
859
|
addFriendUrl,
|
|
814
860
|
code
|
|
815
861
|
}) => {
|
|
816
|
-
|
|
862
|
+
if (!nativeAdapters.share) {
|
|
863
|
+
showAlert(nativeAdapters, 'Sharing unavailable', 'This app cannot share the activation code. Copy it manually instead.');
|
|
864
|
+
return;
|
|
865
|
+
}
|
|
866
|
+
await nativeAdapters.share({
|
|
817
867
|
message: `LINE activation code: ${code}\n${addFriendUrl}`,
|
|
818
868
|
title: 'LINE activation code',
|
|
819
869
|
url: addFriendUrl
|
|
@@ -823,7 +873,11 @@ function useSuperagentRuntime({
|
|
|
823
873
|
code,
|
|
824
874
|
phoneNumber
|
|
825
875
|
}) => {
|
|
826
|
-
|
|
876
|
+
if (!nativeAdapters.share) {
|
|
877
|
+
showAlert(nativeAdapters, 'Sharing unavailable', 'This app cannot share the activation code. Copy it manually instead.');
|
|
878
|
+
return;
|
|
879
|
+
}
|
|
880
|
+
await nativeAdapters.share({
|
|
827
881
|
message: `Text ${code} to ${phoneNumber} to connect this Superagent on iMessage.`,
|
|
828
882
|
title: 'iMessage activation code',
|
|
829
883
|
url: buildIMessageUrl(phoneNumber, code)
|
|
@@ -859,22 +913,35 @@ function useSuperagentRuntime({
|
|
|
859
913
|
connectorFlowRef.current = null;
|
|
860
914
|
setConnectingConnectorId(null);
|
|
861
915
|
await loadConnectors(agentId);
|
|
862
|
-
|
|
916
|
+
// Return the connection_id (string) so the connector tool-approval can
|
|
917
|
+
// submit it; fall back to `true` when the backend omits it.
|
|
918
|
+
return connection.connection_id ?? true;
|
|
863
919
|
}
|
|
864
920
|
if (!connection.redirect_url || !connection.connection_id) {
|
|
865
921
|
throw new Error('The backend did not return an authorization URL for this connector.');
|
|
866
922
|
}
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
923
|
+
if (!nativeAdapters.openUrl) {
|
|
924
|
+
// Without a URL opener the browser never launches, so polling would just
|
|
925
|
+
// time out after ~2 minutes. Fail immediately with an actionable error.
|
|
926
|
+
throw new Error('This app cannot open the authorization page. Connect this integration from the web app.');
|
|
927
|
+
}
|
|
928
|
+
await nativeAdapters.openUrl(connection.redirect_url);
|
|
929
|
+
const connected = await waitForConnectorAuthorization(superagentService, agentId, connectorId, connection.connection_id, flow);
|
|
930
|
+
|
|
931
|
+
// Only clear shared state if this flow is still the active one — a newer
|
|
932
|
+
// connect may have superseded it (and owns connectorFlowRef now).
|
|
933
|
+
if (connectorFlowRef.current === flow) {
|
|
870
934
|
connectorFlowRef.current = null;
|
|
871
935
|
setConnectingConnectorId(null);
|
|
936
|
+
}
|
|
937
|
+
if (connected) {
|
|
872
938
|
await loadConnectors(agentId);
|
|
873
|
-
return true;
|
|
874
939
|
}
|
|
875
|
-
return
|
|
940
|
+
// On success return the connection_id so the connector tool-approval can
|
|
941
|
+
// submit it for backend verification; `false` on failure.
|
|
942
|
+
return connected ? connection.connection_id : false;
|
|
876
943
|
} catch (error) {
|
|
877
|
-
if (
|
|
944
|
+
if (connectorFlowRef.current === flow) {
|
|
878
945
|
connectorFlowRef.current = null;
|
|
879
946
|
setConnectingConnectorId(null);
|
|
880
947
|
showAlert(nativeAdapters, 'Connector failed', getErrorMessage(error));
|
|
@@ -953,6 +1020,7 @@ function useSuperagentRuntime({
|
|
|
953
1020
|
// instead of defaulting to the home route.
|
|
954
1021
|
initialRoute: currentRoute,
|
|
955
1022
|
currentUserAvatarUrl: config.currentUserAvatarUrl,
|
|
1023
|
+
currentUserId: config.currentUserId,
|
|
956
1024
|
currentUserName: config.currentUserName,
|
|
957
1025
|
fileLoadError,
|
|
958
1026
|
fileLoadFailed,
|
|
@@ -1019,22 +1087,27 @@ function useSuperagentRuntime({
|
|
|
1019
1087
|
};
|
|
1020
1088
|
}
|
|
1021
1089
|
async function waitForConnectorAuthorization(superagentService, agentId, connectorId, connectionId, flow) {
|
|
1090
|
+
// The connection status (scoped to this flow's connectionId) is the
|
|
1091
|
+
// authoritative source of truth — not a global callback flag, which can't be
|
|
1092
|
+
// attributed to a specific flow. Returns whether the connector ended up ACTIVE.
|
|
1093
|
+
const isActive = async () => (await superagentService.getConnectorConnectionStatus(agentId, connectorId, connectionId)) === 'ACTIVE';
|
|
1022
1094
|
const maxAttempts = 40;
|
|
1023
1095
|
for (let attempt = 0; attempt < maxAttempts; attempt++) {
|
|
1024
1096
|
if (flow.cancelled) {
|
|
1025
|
-
|
|
1097
|
+
// Cancelled — but OAuth may have already completed; confirm with the
|
|
1098
|
+
// authoritative status before reporting not-connected.
|
|
1099
|
+
return isActive().catch(() => false);
|
|
1026
1100
|
}
|
|
1027
1101
|
await delay(3000);
|
|
1028
|
-
if (flow.cancelled) {
|
|
1029
|
-
return;
|
|
1030
|
-
}
|
|
1031
1102
|
const status = await superagentService.getConnectorConnectionStatus(agentId, connectorId, connectionId);
|
|
1032
1103
|
if (status === 'ACTIVE') {
|
|
1033
|
-
return;
|
|
1104
|
+
return true;
|
|
1034
1105
|
}
|
|
1035
1106
|
if (status === 'FAILED') {
|
|
1036
1107
|
throw new Error('OAuth connection failed.');
|
|
1037
1108
|
}
|
|
1109
|
+
// If the user cancelled during the delay, the next iteration's top-of-loop
|
|
1110
|
+
// check re-confirms via the authoritative status before returning.
|
|
1038
1111
|
}
|
|
1039
1112
|
throw new Error('Connection timed out after 2 minutes.');
|
|
1040
1113
|
}
|
|
@@ -1043,14 +1116,26 @@ async function openAllowedExternalUrl(nativeAdapters, url, allowedHosts, fallbac
|
|
|
1043
1116
|
showAlert(nativeAdapters, fallbackMessage, 'The backend returned a channel link that cannot be opened safely.');
|
|
1044
1117
|
return;
|
|
1045
1118
|
}
|
|
1119
|
+
if (!nativeAdapters.openUrl) {
|
|
1120
|
+
// No URL opener: surface it instead of passing the host check and then
|
|
1121
|
+
// silently doing nothing.
|
|
1122
|
+
showAlert(nativeAdapters, fallbackMessage, 'This app cannot open external links. Use the web app instead.');
|
|
1123
|
+
return;
|
|
1124
|
+
}
|
|
1046
1125
|
try {
|
|
1047
|
-
await nativeAdapters.openUrl
|
|
1126
|
+
await nativeAdapters.openUrl(url);
|
|
1048
1127
|
} catch (error) {
|
|
1049
1128
|
showAlert(nativeAdapters, fallbackMessage, getErrorMessage(error));
|
|
1050
1129
|
}
|
|
1051
1130
|
}
|
|
1052
1131
|
function showAlert(nativeAdapters, title, message) {
|
|
1053
|
-
nativeAdapters.alert
|
|
1132
|
+
if (nativeAdapters.alert) {
|
|
1133
|
+
nativeAdapters.alert(title, message);
|
|
1134
|
+
return;
|
|
1135
|
+
}
|
|
1136
|
+
// No host alert adapter — fall back to React Native's Alert (as confirmAction
|
|
1137
|
+
// does) so connector/channel/file/model errors aren't silently swallowed.
|
|
1138
|
+
_reactNative.Alert.alert(title, message);
|
|
1054
1139
|
}
|
|
1055
1140
|
async function confirmAction(nativeAdapters, input) {
|
|
1056
1141
|
if (nativeAdapters.confirm) {
|