@docyrus/rn-assistant 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +477 -0
- package/dist/commonjs/components/agent-selector/agent-selector.js +300 -0
- package/dist/commonjs/components/agent-selector/agent-selector.js.map +1 -0
- package/dist/commonjs/components/agent-selector/index.js +17 -0
- package/dist/commonjs/components/agent-selector/index.js.map +1 -0
- package/dist/commonjs/components/assistant-animations/assistant-animations.js +169 -0
- package/dist/commonjs/components/assistant-animations/assistant-animations.js.map +1 -0
- package/dist/commonjs/components/assistant-animations/index.js +17 -0
- package/dist/commonjs/components/assistant-animations/index.js.map +1 -0
- package/dist/commonjs/components/assistant-screen/assistant-screen.js +809 -0
- package/dist/commonjs/components/assistant-screen/assistant-screen.js.map +1 -0
- package/dist/commonjs/components/assistant-screen/index.js +17 -0
- package/dist/commonjs/components/assistant-screen/index.js.map +1 -0
- package/dist/commonjs/components/index.js +116 -0
- package/dist/commonjs/components/index.js.map +1 -0
- package/dist/commonjs/components/message-parts/index.js +13 -0
- package/dist/commonjs/components/message-parts/index.js.map +1 -0
- package/dist/commonjs/components/message-parts/message-parts.js +209 -0
- package/dist/commonjs/components/message-parts/message-parts.js.map +1 -0
- package/dist/commonjs/components/new-chat/index.js +17 -0
- package/dist/commonjs/components/new-chat/index.js.map +1 -0
- package/dist/commonjs/components/new-chat/new-chat.js +100 -0
- package/dist/commonjs/components/new-chat/new-chat.js.map +1 -0
- package/dist/commonjs/components/prompt-input/attachment-picker.js +341 -0
- package/dist/commonjs/components/prompt-input/attachment-picker.js.map +1 -0
- package/dist/commonjs/components/prompt-input/attachment-preview.js +229 -0
- package/dist/commonjs/components/prompt-input/attachment-preview.js.map +1 -0
- package/dist/commonjs/components/prompt-input/index.js +41 -0
- package/dist/commonjs/components/prompt-input/index.js.map +1 -0
- package/dist/commonjs/components/prompt-input/prompt-input.js +288 -0
- package/dist/commonjs/components/prompt-input/prompt-input.js.map +1 -0
- package/dist/commonjs/components/prompt-input/provider-selector.js +542 -0
- package/dist/commonjs/components/prompt-input/provider-selector.js.map +1 -0
- package/dist/commonjs/components/prompt-input/reasoning-level-selector.js +350 -0
- package/dist/commonjs/components/prompt-input/reasoning-level-selector.js.map +1 -0
- package/dist/commonjs/components/prompt-input/voice-recorder.js +260 -0
- package/dist/commonjs/components/prompt-input/voice-recorder.js.map +1 -0
- package/dist/commonjs/components/sessions-list/index.js +17 -0
- package/dist/commonjs/components/sessions-list/index.js.map +1 -0
- package/dist/commonjs/components/sessions-list/sessions-list.js +820 -0
- package/dist/commonjs/components/sessions-list/sessions-list.js.map +1 -0
- package/dist/commonjs/hooks/index.js +34 -0
- package/dist/commonjs/hooks/index.js.map +1 -0
- package/dist/commonjs/hooks/use-agent-models.js +104 -0
- package/dist/commonjs/hooks/use-agent-models.js.map +1 -0
- package/dist/commonjs/hooks/use-assistant.js +402 -0
- package/dist/commonjs/hooks/use-assistant.js.map +1 -0
- package/dist/commonjs/hooks/use-attachment-picker.js +308 -0
- package/dist/commonjs/hooks/use-attachment-picker.js.map +1 -0
- package/dist/commonjs/hooks/use-voice-recorder.js +217 -0
- package/dist/commonjs/hooks/use-voice-recorder.js.map +1 -0
- package/dist/commonjs/index.js +112 -0
- package/dist/commonjs/index.js.map +1 -0
- package/dist/commonjs/package.json +1 -0
- package/dist/commonjs/theme/assistant-theme.js +105 -0
- package/dist/commonjs/theme/assistant-theme.js.map +1 -0
- package/dist/commonjs/theme/index.js +19 -0
- package/dist/commonjs/theme/index.js.map +1 -0
- package/dist/commonjs/types/index.js +2 -0
- package/dist/commonjs/types/index.js.map +1 -0
- package/dist/commonjs/ui/action-sheet.js +348 -0
- package/dist/commonjs/ui/action-sheet.js.map +1 -0
- package/dist/commonjs/ui/alert-dialog.js +134 -0
- package/dist/commonjs/ui/alert-dialog.js.map +1 -0
- package/dist/commonjs/ui/docyrus-brand-mark.js +52 -0
- package/dist/commonjs/ui/docyrus-brand-mark.js.map +1 -0
- package/dist/commonjs/ui/docyrus-icon.js +298 -0
- package/dist/commonjs/ui/docyrus-icon.js.map +1 -0
- package/dist/commonjs/ui/index.js +34 -0
- package/dist/commonjs/ui/index.js.map +1 -0
- package/dist/commonjs/utils/api-client.js +99 -0
- package/dist/commonjs/utils/api-client.js.map +1 -0
- package/dist/commonjs/utils/default-api-config.js +195 -0
- package/dist/commonjs/utils/default-api-config.js.map +1 -0
- package/dist/commonjs/utils/index.js +39 -0
- package/dist/commonjs/utils/index.js.map +1 -0
- package/dist/commonjs/utils/resolve-api-headers.js +16 -0
- package/dist/commonjs/utils/resolve-api-headers.js.map +1 -0
- package/dist/module/components/agent-selector/agent-selector.js +296 -0
- package/dist/module/components/agent-selector/agent-selector.js.map +1 -0
- package/dist/module/components/agent-selector/index.js +4 -0
- package/dist/module/components/agent-selector/index.js.map +1 -0
- package/dist/module/components/assistant-animations/assistant-animations.js +164 -0
- package/dist/module/components/assistant-animations/assistant-animations.js.map +1 -0
- package/dist/module/components/assistant-animations/index.js +4 -0
- package/dist/module/components/assistant-animations/index.js.map +1 -0
- package/dist/module/components/assistant-screen/assistant-screen.js +801 -0
- package/dist/module/components/assistant-screen/assistant-screen.js.map +1 -0
- package/dist/module/components/assistant-screen/index.js +4 -0
- package/dist/module/components/assistant-screen/index.js.map +1 -0
- package/dist/module/components/index.js +23 -0
- package/dist/module/components/index.js.map +1 -0
- package/dist/module/components/message-parts/index.js +4 -0
- package/dist/module/components/message-parts/index.js.map +1 -0
- package/dist/module/components/message-parts/message-parts.js +205 -0
- package/dist/module/components/message-parts/message-parts.js.map +1 -0
- package/dist/module/components/new-chat/index.js +4 -0
- package/dist/module/components/new-chat/index.js.map +1 -0
- package/dist/module/components/new-chat/new-chat.js +96 -0
- package/dist/module/components/new-chat/new-chat.js.map +1 -0
- package/dist/module/components/prompt-input/attachment-picker.js +337 -0
- package/dist/module/components/prompt-input/attachment-picker.js.map +1 -0
- package/dist/module/components/prompt-input/attachment-preview.js +225 -0
- package/dist/module/components/prompt-input/attachment-preview.js.map +1 -0
- package/dist/module/components/prompt-input/index.js +15 -0
- package/dist/module/components/prompt-input/index.js.map +1 -0
- package/dist/module/components/prompt-input/prompt-input.js +284 -0
- package/dist/module/components/prompt-input/prompt-input.js.map +1 -0
- package/dist/module/components/prompt-input/provider-selector.js +538 -0
- package/dist/module/components/prompt-input/provider-selector.js.map +1 -0
- package/dist/module/components/prompt-input/reasoning-level-selector.js +346 -0
- package/dist/module/components/prompt-input/reasoning-level-selector.js.map +1 -0
- package/dist/module/components/prompt-input/voice-recorder.js +256 -0
- package/dist/module/components/prompt-input/voice-recorder.js.map +1 -0
- package/dist/module/components/sessions-list/index.js +4 -0
- package/dist/module/components/sessions-list/index.js.map +1 -0
- package/dist/module/components/sessions-list/sessions-list.js +816 -0
- package/dist/module/components/sessions-list/sessions-list.js.map +1 -0
- package/dist/module/hooks/index.js +18 -0
- package/dist/module/hooks/index.js.map +1 -0
- package/dist/module/hooks/use-agent-models.js +100 -0
- package/dist/module/hooks/use-agent-models.js.map +1 -0
- package/dist/module/hooks/use-assistant.js +398 -0
- package/dist/module/hooks/use-assistant.js.map +1 -0
- package/dist/module/hooks/use-attachment-picker.js +303 -0
- package/dist/module/hooks/use-attachment-picker.js.map +1 -0
- package/dist/module/hooks/use-voice-recorder.js +214 -0
- package/dist/module/hooks/use-voice-recorder.js.map +1 -0
- package/dist/module/index.js +59 -0
- package/dist/module/index.js.map +1 -0
- package/dist/module/package.json +1 -0
- package/dist/module/theme/assistant-theme.js +100 -0
- package/dist/module/theme/assistant-theme.js.map +1 -0
- package/dist/module/theme/index.js +4 -0
- package/dist/module/theme/index.js.map +1 -0
- package/dist/module/types/index.js +2 -0
- package/dist/module/types/index.js.map +1 -0
- package/dist/module/ui/action-sheet.js +344 -0
- package/dist/module/ui/action-sheet.js.map +1 -0
- package/dist/module/ui/alert-dialog.js +130 -0
- package/dist/module/ui/alert-dialog.js.map +1 -0
- package/dist/module/ui/docyrus-brand-mark.js +48 -0
- package/dist/module/ui/docyrus-brand-mark.js.map +1 -0
- package/dist/module/ui/docyrus-icon.js +294 -0
- package/dist/module/ui/docyrus-icon.js.map +1 -0
- package/dist/module/ui/index.js +7 -0
- package/dist/module/ui/index.js.map +1 -0
- package/dist/module/utils/api-client.js +95 -0
- package/dist/module/utils/api-client.js.map +1 -0
- package/dist/module/utils/default-api-config.js +190 -0
- package/dist/module/utils/default-api-config.js.map +1 -0
- package/dist/module/utils/index.js +12 -0
- package/dist/module/utils/index.js.map +1 -0
- package/dist/module/utils/resolve-api-headers.js +12 -0
- package/dist/module/utils/resolve-api-headers.js.map +1 -0
- package/dist/typescript/commonjs/eslint.config.d.mts +4 -0
- package/dist/typescript/commonjs/eslint.config.d.mts.map +1 -0
- package/dist/typescript/commonjs/package.json +1 -0
- package/dist/typescript/commonjs/src/components/agent-selector/agent-selector.d.ts +49 -0
- package/dist/typescript/commonjs/src/components/agent-selector/agent-selector.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/agent-selector/index.d.ts +2 -0
- package/dist/typescript/commonjs/src/components/agent-selector/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/assistant-animations/assistant-animations.d.ts +8 -0
- package/dist/typescript/commonjs/src/components/assistant-animations/assistant-animations.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/assistant-animations/index.d.ts +2 -0
- package/dist/typescript/commonjs/src/components/assistant-animations/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/assistant-screen/assistant-screen.d.ts +122 -0
- package/dist/typescript/commonjs/src/components/assistant-screen/assistant-screen.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/assistant-screen/index.d.ts +2 -0
- package/dist/typescript/commonjs/src/components/assistant-screen/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/index.d.ts +11 -0
- package/dist/typescript/commonjs/src/components/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/message-parts/index.d.ts +2 -0
- package/dist/typescript/commonjs/src/components/message-parts/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/message-parts/message-parts.d.ts +22 -0
- package/dist/typescript/commonjs/src/components/message-parts/message-parts.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/new-chat/index.d.ts +2 -0
- package/dist/typescript/commonjs/src/components/new-chat/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/new-chat/new-chat.d.ts +34 -0
- package/dist/typescript/commonjs/src/components/new-chat/new-chat.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/prompt-input/attachment-picker.d.ts +53 -0
- package/dist/typescript/commonjs/src/components/prompt-input/attachment-picker.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/prompt-input/attachment-preview.d.ts +42 -0
- package/dist/typescript/commonjs/src/components/prompt-input/attachment-preview.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/prompt-input/index.d.ts +9 -0
- package/dist/typescript/commonjs/src/components/prompt-input/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/prompt-input/prompt-input.d.ts +139 -0
- package/dist/typescript/commonjs/src/components/prompt-input/prompt-input.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/prompt-input/provider-selector.d.ts +11 -0
- package/dist/typescript/commonjs/src/components/prompt-input/provider-selector.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/prompt-input/reasoning-level-selector.d.ts +35 -0
- package/dist/typescript/commonjs/src/components/prompt-input/reasoning-level-selector.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/prompt-input/voice-recorder.d.ts +48 -0
- package/dist/typescript/commonjs/src/components/prompt-input/voice-recorder.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/sessions-list/index.d.ts +2 -0
- package/dist/typescript/commonjs/src/components/sessions-list/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/sessions-list/sessions-list.d.ts +59 -0
- package/dist/typescript/commonjs/src/components/sessions-list/sessions-list.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/hooks/index.d.ts +8 -0
- package/dist/typescript/commonjs/src/hooks/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/hooks/use-agent-models.d.ts +68 -0
- package/dist/typescript/commonjs/src/hooks/use-agent-models.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/hooks/use-assistant.d.ts +55 -0
- package/dist/typescript/commonjs/src/hooks/use-assistant.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/hooks/use-attachment-picker.d.ts +99 -0
- package/dist/typescript/commonjs/src/hooks/use-attachment-picker.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/hooks/use-voice-recorder.d.ts +101 -0
- package/dist/typescript/commonjs/src/hooks/use-voice-recorder.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/index.d.ts +47 -0
- package/dist/typescript/commonjs/src/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/theme/assistant-theme.d.ts +51 -0
- package/dist/typescript/commonjs/src/theme/assistant-theme.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/theme/index.d.ts +2 -0
- package/dist/typescript/commonjs/src/theme/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/types/index.d.ts +167 -0
- package/dist/typescript/commonjs/src/types/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/ui/action-sheet.d.ts +29 -0
- package/dist/typescript/commonjs/src/ui/action-sheet.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/ui/alert-dialog.d.ts +12 -0
- package/dist/typescript/commonjs/src/ui/alert-dialog.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/ui/docyrus-brand-mark.d.ts +5 -0
- package/dist/typescript/commonjs/src/ui/docyrus-brand-mark.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/ui/docyrus-icon.d.ts +11 -0
- package/dist/typescript/commonjs/src/ui/docyrus-icon.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/ui/index.d.ts +5 -0
- package/dist/typescript/commonjs/src/ui/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/utils/api-client.d.ts +35 -0
- package/dist/typescript/commonjs/src/utils/api-client.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/utils/default-api-config.d.ts +38 -0
- package/dist/typescript/commonjs/src/utils/default-api-config.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/utils/index.d.ts +9 -0
- package/dist/typescript/commonjs/src/utils/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/utils/resolve-api-headers.d.ts +3 -0
- package/dist/typescript/commonjs/src/utils/resolve-api-headers.d.ts.map +1 -0
- package/dist/typescript/module/eslint.config.d.mts +4 -0
- package/dist/typescript/module/eslint.config.d.mts.map +1 -0
- package/dist/typescript/module/package.json +1 -0
- package/dist/typescript/module/src/components/agent-selector/agent-selector.d.ts +49 -0
- package/dist/typescript/module/src/components/agent-selector/agent-selector.d.ts.map +1 -0
- package/dist/typescript/module/src/components/agent-selector/index.d.ts +2 -0
- package/dist/typescript/module/src/components/agent-selector/index.d.ts.map +1 -0
- package/dist/typescript/module/src/components/assistant-animations/assistant-animations.d.ts +8 -0
- package/dist/typescript/module/src/components/assistant-animations/assistant-animations.d.ts.map +1 -0
- package/dist/typescript/module/src/components/assistant-animations/index.d.ts +2 -0
- package/dist/typescript/module/src/components/assistant-animations/index.d.ts.map +1 -0
- package/dist/typescript/module/src/components/assistant-screen/assistant-screen.d.ts +122 -0
- package/dist/typescript/module/src/components/assistant-screen/assistant-screen.d.ts.map +1 -0
- package/dist/typescript/module/src/components/assistant-screen/index.d.ts +2 -0
- package/dist/typescript/module/src/components/assistant-screen/index.d.ts.map +1 -0
- package/dist/typescript/module/src/components/index.d.ts +11 -0
- package/dist/typescript/module/src/components/index.d.ts.map +1 -0
- package/dist/typescript/module/src/components/message-parts/index.d.ts +2 -0
- package/dist/typescript/module/src/components/message-parts/index.d.ts.map +1 -0
- package/dist/typescript/module/src/components/message-parts/message-parts.d.ts +22 -0
- package/dist/typescript/module/src/components/message-parts/message-parts.d.ts.map +1 -0
- package/dist/typescript/module/src/components/new-chat/index.d.ts +2 -0
- package/dist/typescript/module/src/components/new-chat/index.d.ts.map +1 -0
- package/dist/typescript/module/src/components/new-chat/new-chat.d.ts +34 -0
- package/dist/typescript/module/src/components/new-chat/new-chat.d.ts.map +1 -0
- package/dist/typescript/module/src/components/prompt-input/attachment-picker.d.ts +53 -0
- package/dist/typescript/module/src/components/prompt-input/attachment-picker.d.ts.map +1 -0
- package/dist/typescript/module/src/components/prompt-input/attachment-preview.d.ts +42 -0
- package/dist/typescript/module/src/components/prompt-input/attachment-preview.d.ts.map +1 -0
- package/dist/typescript/module/src/components/prompt-input/index.d.ts +9 -0
- package/dist/typescript/module/src/components/prompt-input/index.d.ts.map +1 -0
- package/dist/typescript/module/src/components/prompt-input/prompt-input.d.ts +139 -0
- package/dist/typescript/module/src/components/prompt-input/prompt-input.d.ts.map +1 -0
- package/dist/typescript/module/src/components/prompt-input/provider-selector.d.ts +11 -0
- package/dist/typescript/module/src/components/prompt-input/provider-selector.d.ts.map +1 -0
- package/dist/typescript/module/src/components/prompt-input/reasoning-level-selector.d.ts +35 -0
- package/dist/typescript/module/src/components/prompt-input/reasoning-level-selector.d.ts.map +1 -0
- package/dist/typescript/module/src/components/prompt-input/voice-recorder.d.ts +48 -0
- package/dist/typescript/module/src/components/prompt-input/voice-recorder.d.ts.map +1 -0
- package/dist/typescript/module/src/components/sessions-list/index.d.ts +2 -0
- package/dist/typescript/module/src/components/sessions-list/index.d.ts.map +1 -0
- package/dist/typescript/module/src/components/sessions-list/sessions-list.d.ts +59 -0
- package/dist/typescript/module/src/components/sessions-list/sessions-list.d.ts.map +1 -0
- package/dist/typescript/module/src/hooks/index.d.ts +8 -0
- package/dist/typescript/module/src/hooks/index.d.ts.map +1 -0
- package/dist/typescript/module/src/hooks/use-agent-models.d.ts +68 -0
- package/dist/typescript/module/src/hooks/use-agent-models.d.ts.map +1 -0
- package/dist/typescript/module/src/hooks/use-assistant.d.ts +55 -0
- package/dist/typescript/module/src/hooks/use-assistant.d.ts.map +1 -0
- package/dist/typescript/module/src/hooks/use-attachment-picker.d.ts +99 -0
- package/dist/typescript/module/src/hooks/use-attachment-picker.d.ts.map +1 -0
- package/dist/typescript/module/src/hooks/use-voice-recorder.d.ts +101 -0
- package/dist/typescript/module/src/hooks/use-voice-recorder.d.ts.map +1 -0
- package/dist/typescript/module/src/index.d.ts +47 -0
- package/dist/typescript/module/src/index.d.ts.map +1 -0
- package/dist/typescript/module/src/theme/assistant-theme.d.ts +51 -0
- package/dist/typescript/module/src/theme/assistant-theme.d.ts.map +1 -0
- package/dist/typescript/module/src/theme/index.d.ts +2 -0
- package/dist/typescript/module/src/theme/index.d.ts.map +1 -0
- package/dist/typescript/module/src/types/index.d.ts +167 -0
- package/dist/typescript/module/src/types/index.d.ts.map +1 -0
- package/dist/typescript/module/src/ui/action-sheet.d.ts +29 -0
- package/dist/typescript/module/src/ui/action-sheet.d.ts.map +1 -0
- package/dist/typescript/module/src/ui/alert-dialog.d.ts +12 -0
- package/dist/typescript/module/src/ui/alert-dialog.d.ts.map +1 -0
- package/dist/typescript/module/src/ui/docyrus-brand-mark.d.ts +5 -0
- package/dist/typescript/module/src/ui/docyrus-brand-mark.d.ts.map +1 -0
- package/dist/typescript/module/src/ui/docyrus-icon.d.ts +11 -0
- package/dist/typescript/module/src/ui/docyrus-icon.d.ts.map +1 -0
- package/dist/typescript/module/src/ui/index.d.ts +5 -0
- package/dist/typescript/module/src/ui/index.d.ts.map +1 -0
- package/dist/typescript/module/src/utils/api-client.d.ts +35 -0
- package/dist/typescript/module/src/utils/api-client.d.ts.map +1 -0
- package/dist/typescript/module/src/utils/default-api-config.d.ts +38 -0
- package/dist/typescript/module/src/utils/default-api-config.d.ts.map +1 -0
- package/dist/typescript/module/src/utils/index.d.ts +9 -0
- package/dist/typescript/module/src/utils/index.d.ts.map +1 -0
- package/dist/typescript/module/src/utils/resolve-api-headers.d.ts +3 -0
- package/dist/typescript/module/src/utils/resolve-api-headers.d.ts.map +1 -0
- package/package.json +176 -0
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { type AISession, type AIAPIConfig } from '../../types';
|
|
2
|
+
export type SessionsListProps = {
|
|
3
|
+
/**
|
|
4
|
+
* API Configuration
|
|
5
|
+
*/
|
|
6
|
+
apiConfig: AIAPIConfig;
|
|
7
|
+
/**
|
|
8
|
+
* Agent ID
|
|
9
|
+
*/
|
|
10
|
+
agentId: string;
|
|
11
|
+
/**
|
|
12
|
+
* User ID (for filtering sessions)
|
|
13
|
+
*/
|
|
14
|
+
userId?: string;
|
|
15
|
+
/**
|
|
16
|
+
* Data Source ID for sessions
|
|
17
|
+
* @default 'f42b3daa-ca43-11ed-be9d-6fe3a1a7b37c'
|
|
18
|
+
*/
|
|
19
|
+
dataSourceId?: string;
|
|
20
|
+
/**
|
|
21
|
+
* Custom headers
|
|
22
|
+
*/
|
|
23
|
+
headers?: Record<string, string>;
|
|
24
|
+
/**
|
|
25
|
+
* On session select
|
|
26
|
+
*/
|
|
27
|
+
onSelectSession: (session: AISession) => void;
|
|
28
|
+
/**
|
|
29
|
+
* On new chat
|
|
30
|
+
*/
|
|
31
|
+
onNewChat: () => void;
|
|
32
|
+
/**
|
|
33
|
+
* Show header
|
|
34
|
+
* @default true
|
|
35
|
+
*/
|
|
36
|
+
showHeader?: boolean;
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* Sessions List Component
|
|
40
|
+
*
|
|
41
|
+
* Displays list of user's chat sessions with the agent.
|
|
42
|
+
* Sessions are ordered by last modified date.
|
|
43
|
+
*
|
|
44
|
+
* @example
|
|
45
|
+
* ```tsx
|
|
46
|
+
* <SessionsList
|
|
47
|
+
* api="https://api.docyrus.com"
|
|
48
|
+
* agentId="agent-123"
|
|
49
|
+
* token={userToken}
|
|
50
|
+
* onSelectSession={(session) => navigate('Chat', { sessionId: session.id })}
|
|
51
|
+
* onNewChat={() => navigate('Chat')}
|
|
52
|
+
* />
|
|
53
|
+
* ```
|
|
54
|
+
*/
|
|
55
|
+
export declare function SessionsList({ apiConfig, agentId, userId, dataSourceId, headers, onSelectSession, onNewChat, showHeader }: SessionsListProps): import("react").JSX.Element;
|
|
56
|
+
export declare namespace SessionsList {
|
|
57
|
+
var displayName: string;
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=sessions-list.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sessions-list.d.ts","sourceRoot":"","sources":["../../../../../../src/components/sessions-list/sessions-list.tsx"],"names":[],"mappings":"AAkBA,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAO/D,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;OAEG;IACH,SAAS,EAAE,WAAW,CAAC;IAEvB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjC;;OAEG;IACH,eAAe,EAAE,CAAC,OAAO,EAAE,SAAS,KAAK,IAAI,CAAC;IAE9C;;OAEG;IACH,SAAS,EAAE,MAAM,IAAI,CAAC;IAEtB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,YAAY,CAAC,EAC3B,SAAS,EACT,OAAO,EACP,MAAM,EACN,YAAqD,EACrD,OAAY,EACZ,eAAe,EACf,SAAS,EACT,UAAiB,EAClB,EAAE,iBAAiB,+BA0nBnB;yBAnoBe,YAAY"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AI Hooks
|
|
3
|
+
*/
|
|
4
|
+
export { useAssistant, type UseAssistantOptions, type UseAssistantReturn } from './use-assistant';
|
|
5
|
+
export { useAgentModels, type UseAgentModelsOptions, type UseAgentModelsReturn } from './use-agent-models';
|
|
6
|
+
export { useVoiceRecorder, type UseVoiceRecorderOptions, type UseVoiceRecorderReturn, type VoiceRecorderStatus } from './use-voice-recorder';
|
|
7
|
+
export { useAttachmentPicker, type UseAttachmentPickerOptions, type UseAttachmentPickerReturn, type AttachmentType } from './use-attachment-picker';
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,YAAY,EAAE,KAAK,mBAAmB,EAAE,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAGlG,OAAO,EAAE,cAAc,EAAE,KAAK,qBAAqB,EAAE,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAG3G,OAAO,EACL,gBAAgB,EAChB,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACzB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,mBAAmB,EACnB,KAAK,0BAA0B,EAC/B,KAAK,yBAAyB,EAC9B,KAAK,cAAc,EACpB,MAAM,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { type AIModel, type AgentDeployment, type AIAPIConfig } from '../types';
|
|
2
|
+
export type UseAgentModelsOptions = {
|
|
3
|
+
/**
|
|
4
|
+
* API Configuration
|
|
5
|
+
*/
|
|
6
|
+
apiConfig: AIAPIConfig;
|
|
7
|
+
/**
|
|
8
|
+
* Agent ID
|
|
9
|
+
*/
|
|
10
|
+
agentId: string;
|
|
11
|
+
/**
|
|
12
|
+
* Deployment ID (optional)
|
|
13
|
+
*/
|
|
14
|
+
deploymentId?: string;
|
|
15
|
+
};
|
|
16
|
+
export type UseAgentModelsReturn = {
|
|
17
|
+
/**
|
|
18
|
+
* Agent deployment data
|
|
19
|
+
*/
|
|
20
|
+
deployment: AgentDeployment | null;
|
|
21
|
+
/**
|
|
22
|
+
* Available models (grouped by provider)
|
|
23
|
+
*/
|
|
24
|
+
models: AIModel[];
|
|
25
|
+
/**
|
|
26
|
+
* Selected model
|
|
27
|
+
*/
|
|
28
|
+
selectedModel: AIModel | null;
|
|
29
|
+
/**
|
|
30
|
+
* Select a model
|
|
31
|
+
*/
|
|
32
|
+
selectModel: (model: AIModel | null) => void;
|
|
33
|
+
/**
|
|
34
|
+
* Loading state
|
|
35
|
+
*/
|
|
36
|
+
loading: boolean;
|
|
37
|
+
/**
|
|
38
|
+
* Error state
|
|
39
|
+
*/
|
|
40
|
+
error: Error | null;
|
|
41
|
+
/**
|
|
42
|
+
* Refresh deployment data
|
|
43
|
+
*/
|
|
44
|
+
refresh: () => Promise<void>;
|
|
45
|
+
};
|
|
46
|
+
/**
|
|
47
|
+
* Hook for managing agent models and deployments
|
|
48
|
+
*
|
|
49
|
+
* Fetches agent deployment data and available models from the API.
|
|
50
|
+
* Handles model selection and provides loading/error states.
|
|
51
|
+
*
|
|
52
|
+
* @example
|
|
53
|
+
* ```tsx
|
|
54
|
+
* const {
|
|
55
|
+
* deployment,
|
|
56
|
+
* models,
|
|
57
|
+
* selectedModel,
|
|
58
|
+
* selectModel,
|
|
59
|
+
* loading
|
|
60
|
+
* } = useAgentModels({
|
|
61
|
+
* api: 'https://api.docyrus.com',
|
|
62
|
+
* agentId: '9979c996-0d0c-11ef-86a3-ef75fac389e0',
|
|
63
|
+
* token: userToken
|
|
64
|
+
* });
|
|
65
|
+
* ```
|
|
66
|
+
*/
|
|
67
|
+
export declare function useAgentModels(options: UseAgentModelsOptions): UseAgentModelsReturn;
|
|
68
|
+
//# sourceMappingURL=use-agent-models.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-agent-models.d.ts","sourceRoot":"","sources":["../../../../../src/hooks/use-agent-models.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AAIhF,MAAM,MAAM,qBAAqB,GAAG;IAClC;;OAEG;IACH,SAAS,EAAE,WAAW,CAAC;IAEvB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC;;OAEG;IACH,UAAU,EAAE,eAAe,GAAG,IAAI,CAAC;IAEnC;;OAEG;IACH,MAAM,EAAE,OAAO,EAAE,CAAC;IAElB;;OAEG;IACH,aAAa,EAAE,OAAO,GAAG,IAAI,CAAC;IAE9B;;OAEG;IACH,WAAW,EAAE,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,KAAK,IAAI,CAAC;IAE7C;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IAEpB;;OAEG;IACH,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,oBAAoB,CAgFnF"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { type RefObject } from 'react';
|
|
2
|
+
import { type ScrollView, type TextInput } from 'react-native';
|
|
3
|
+
import { type AIMessage, type AIMessageFile, type AIModel, type AIAPIConfig } from '../types';
|
|
4
|
+
export type UseAssistantOptions = {
|
|
5
|
+
apiConfig: AIAPIConfig;
|
|
6
|
+
agentId: string;
|
|
7
|
+
deploymentId?: string;
|
|
8
|
+
dataSourceId?: string;
|
|
9
|
+
threadId?: string;
|
|
10
|
+
projectId?: string;
|
|
11
|
+
model?: AIModel;
|
|
12
|
+
credentials?: {
|
|
13
|
+
token?: string;
|
|
14
|
+
[key: string]: any;
|
|
15
|
+
};
|
|
16
|
+
headers?: Record<string, string>;
|
|
17
|
+
onError?: (error: Error) => void;
|
|
18
|
+
onMessage?: (message: AIMessage) => void;
|
|
19
|
+
onFinish?: () => void;
|
|
20
|
+
maxLength?: number;
|
|
21
|
+
};
|
|
22
|
+
export type UseAssistantReturn = {
|
|
23
|
+
messages: AIMessage[];
|
|
24
|
+
addMessage: (message: AIMessage) => void;
|
|
25
|
+
clearMessages: () => void;
|
|
26
|
+
loadMessages: (threadId: string) => Promise<void>;
|
|
27
|
+
input: string;
|
|
28
|
+
setInput: (input: string) => void;
|
|
29
|
+
inputRef: RefObject<TextInput | null>;
|
|
30
|
+
sendMessage: (text?: string) => Promise<void>;
|
|
31
|
+
isLoading: boolean;
|
|
32
|
+
canSend: boolean;
|
|
33
|
+
status: 'idle' | 'streaming' | 'error' | 'submitted';
|
|
34
|
+
error: Error | null;
|
|
35
|
+
selectedModel: AIModel | null;
|
|
36
|
+
setSelectedModel: (model: AIModel | null) => void;
|
|
37
|
+
threadId: string | null;
|
|
38
|
+
setThreadId: (threadId: string | null) => void;
|
|
39
|
+
projectId: string | null;
|
|
40
|
+
setProjectId: (projectId: string | null) => void;
|
|
41
|
+
scrollViewRef: RefObject<ScrollView | null>;
|
|
42
|
+
scrollToBottom: () => void;
|
|
43
|
+
files: AIMessageFile[];
|
|
44
|
+
addFile: (file: AIMessageFile) => void;
|
|
45
|
+
removeFile: (fileId: string) => void;
|
|
46
|
+
clearFiles: () => void;
|
|
47
|
+
isRecording: boolean;
|
|
48
|
+
toggleRecording: () => void;
|
|
49
|
+
stopGeneration: () => void;
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* AI Chat Hook - Powered by Vercel AI SDK
|
|
53
|
+
*/
|
|
54
|
+
export declare function useAssistant(options: UseAssistantOptions): UseAssistantReturn;
|
|
55
|
+
//# sourceMappingURL=use-assistant.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-assistant.d.ts","sourceRoot":"","sources":["../../../../../src/hooks/use-assistant.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import * as ImagePicker from 'expo-image-picker';
|
|
2
|
+
import { type AIMessageFile } from '../types';
|
|
3
|
+
export type AttachmentType = 'document' | 'image' | 'camera';
|
|
4
|
+
export type UseAttachmentPickerOptions = {
|
|
5
|
+
/**
|
|
6
|
+
* Allowed document MIME types
|
|
7
|
+
* @default ['*\/*']
|
|
8
|
+
*/
|
|
9
|
+
allowedDocumentTypes?: string[];
|
|
10
|
+
/**
|
|
11
|
+
* Allowed image media types
|
|
12
|
+
* @default ['images']
|
|
13
|
+
*/
|
|
14
|
+
allowedImageTypes?: ImagePicker.MediaType[];
|
|
15
|
+
/**
|
|
16
|
+
* Maximum number of attachments allowed
|
|
17
|
+
* @default 10
|
|
18
|
+
*/
|
|
19
|
+
maxAttachments?: number;
|
|
20
|
+
/**
|
|
21
|
+
* Maximum file size in bytes
|
|
22
|
+
* @default 10485760 (10MB)
|
|
23
|
+
*/
|
|
24
|
+
maxFileSize?: number;
|
|
25
|
+
/**
|
|
26
|
+
* Allow multiple file selection
|
|
27
|
+
* @default true
|
|
28
|
+
*/
|
|
29
|
+
allowMultiple?: boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Called when attachments change
|
|
32
|
+
*/
|
|
33
|
+
onAttachmentsChange?: (attachments: AIMessageFile[]) => void;
|
|
34
|
+
/**
|
|
35
|
+
* Called on error
|
|
36
|
+
*/
|
|
37
|
+
onError?: (error: Error) => void;
|
|
38
|
+
};
|
|
39
|
+
export type UseAttachmentPickerReturn = {
|
|
40
|
+
/**
|
|
41
|
+
* Current attachments
|
|
42
|
+
*/
|
|
43
|
+
attachments: AIMessageFile[];
|
|
44
|
+
/**
|
|
45
|
+
* Whether picker is loading
|
|
46
|
+
*/
|
|
47
|
+
isLoading: boolean;
|
|
48
|
+
/**
|
|
49
|
+
* Pick documents from device
|
|
50
|
+
*/
|
|
51
|
+
pickDocuments: () => Promise<AIMessageFile[]>;
|
|
52
|
+
/**
|
|
53
|
+
* Pick images from library
|
|
54
|
+
*/
|
|
55
|
+
pickImages: () => Promise<AIMessageFile[]>;
|
|
56
|
+
/**
|
|
57
|
+
* Take a photo with camera
|
|
58
|
+
*/
|
|
59
|
+
takePhoto: () => Promise<AIMessageFile | null>;
|
|
60
|
+
/**
|
|
61
|
+
* Add a single attachment
|
|
62
|
+
*/
|
|
63
|
+
addAttachment: (attachment: AIMessageFile) => void;
|
|
64
|
+
/**
|
|
65
|
+
* Remove an attachment by ID
|
|
66
|
+
*/
|
|
67
|
+
removeAttachment: (id: string) => void;
|
|
68
|
+
/**
|
|
69
|
+
* Clear all attachments
|
|
70
|
+
*/
|
|
71
|
+
clearAttachments: () => void;
|
|
72
|
+
/**
|
|
73
|
+
* Error message if any
|
|
74
|
+
*/
|
|
75
|
+
error: Error | null;
|
|
76
|
+
};
|
|
77
|
+
/**
|
|
78
|
+
* Hook for picking and managing attachments
|
|
79
|
+
*
|
|
80
|
+
* Supports documents via expo-document-picker and images via expo-image-picker.
|
|
81
|
+
* Converts picked files to AIMessageFile format.
|
|
82
|
+
*
|
|
83
|
+
* @example
|
|
84
|
+
* ```tsx
|
|
85
|
+
* const {
|
|
86
|
+
* attachments,
|
|
87
|
+
* pickDocuments,
|
|
88
|
+
* pickImages,
|
|
89
|
+
* takePhoto,
|
|
90
|
+
* removeAttachment,
|
|
91
|
+
* clearAttachments
|
|
92
|
+
* } = useAttachmentPicker({
|
|
93
|
+
* maxAttachments: 5,
|
|
94
|
+
* onAttachmentsChange: (files) => console.log('Attachments:', files)
|
|
95
|
+
* });
|
|
96
|
+
* ```
|
|
97
|
+
*/
|
|
98
|
+
export declare function useAttachmentPicker(options?: UseAttachmentPickerOptions): UseAttachmentPickerReturn;
|
|
99
|
+
//# sourceMappingURL=use-attachment-picker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-attachment-picker.d.ts","sourceRoot":"","sources":["../../../../../src/hooks/use-attachment-picker.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,WAAW,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,OAAO,GAAG,QAAQ,CAAC;AAE7D,MAAM,MAAM,0BAA0B,GAAG;IACvC;;;OAGG;IACH,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAEhC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,WAAW,CAAC,SAAS,EAAE,CAAC;IAE5C;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,mBAAmB,CAAC,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,KAAK,IAAI,CAAC;IAE7D;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC;;OAEG;IACH,WAAW,EAAE,aAAa,EAAE,CAAC;IAE7B;;OAEG;IACH,SAAS,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,aAAa,EAAE,MAAM,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IAE9C;;OAEG;IACH,UAAU,EAAE,MAAM,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IAE3C;;OAEG;IACH,SAAS,EAAE,MAAM,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IAE/C;;OAEG;IACH,aAAa,EAAE,CAAC,UAAU,EAAE,aAAa,KAAK,IAAI,CAAC;IAEnD;;OAEG;IACH,gBAAgB,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAEvC;;OAEG;IACH,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAE7B;;OAEG;IACH,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB,CAAC;AAoDF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,GAAE,0BAA+B,GAAG,yBAAyB,CAsTvG"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { type AIAPIConfig } from '../types';
|
|
2
|
+
export type VoiceRecorderStatus = 'idle' | 'recording' | 'stopped' | 'error';
|
|
3
|
+
export type UseVoiceRecorderOptions = {
|
|
4
|
+
/**
|
|
5
|
+
* Transcription endpoint URL
|
|
6
|
+
* If provided, audio will be sent to this endpoint for transcription
|
|
7
|
+
*/
|
|
8
|
+
transcribeEndpoint?: string;
|
|
9
|
+
/**
|
|
10
|
+
* Additional headers for transcription request
|
|
11
|
+
*/
|
|
12
|
+
transcribeHeaders?: AIAPIConfig['headers'];
|
|
13
|
+
/**
|
|
14
|
+
* Called when recording starts
|
|
15
|
+
*/
|
|
16
|
+
onRecordingStart?: () => void;
|
|
17
|
+
/**
|
|
18
|
+
* Called when recording stops
|
|
19
|
+
*/
|
|
20
|
+
onRecordingStop?: (uri: string) => void;
|
|
21
|
+
/**
|
|
22
|
+
* Called when transcription completes
|
|
23
|
+
*/
|
|
24
|
+
onTranscription?: (text: string) => void;
|
|
25
|
+
/**
|
|
26
|
+
* Called on error
|
|
27
|
+
*/
|
|
28
|
+
onError?: (error: Error) => void;
|
|
29
|
+
};
|
|
30
|
+
export type UseVoiceRecorderReturn = {
|
|
31
|
+
/**
|
|
32
|
+
* Current recording status
|
|
33
|
+
*/
|
|
34
|
+
status: VoiceRecorderStatus;
|
|
35
|
+
/**
|
|
36
|
+
* Whether currently recording
|
|
37
|
+
*/
|
|
38
|
+
isRecording: boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Recording duration in seconds
|
|
41
|
+
*/
|
|
42
|
+
duration: number;
|
|
43
|
+
/**
|
|
44
|
+
* URI of the last recording
|
|
45
|
+
*/
|
|
46
|
+
recordingUri: string | null;
|
|
47
|
+
/**
|
|
48
|
+
* Transcribed text from the last recording
|
|
49
|
+
*/
|
|
50
|
+
transcribedText: string | null;
|
|
51
|
+
/**
|
|
52
|
+
* Whether transcription is in progress
|
|
53
|
+
*/
|
|
54
|
+
isTranscribing: boolean;
|
|
55
|
+
/**
|
|
56
|
+
* Start recording
|
|
57
|
+
*/
|
|
58
|
+
startRecording: () => Promise<void>;
|
|
59
|
+
/**
|
|
60
|
+
* Stop recording
|
|
61
|
+
*/
|
|
62
|
+
stopRecording: () => Promise<string | null>;
|
|
63
|
+
/**
|
|
64
|
+
* Stop recording and transcribe
|
|
65
|
+
*/
|
|
66
|
+
stopAndTranscribe: () => Promise<string | null>;
|
|
67
|
+
/**
|
|
68
|
+
* Transcribe an audio file
|
|
69
|
+
*/
|
|
70
|
+
transcribe: (uri: string) => Promise<string | null>;
|
|
71
|
+
/**
|
|
72
|
+
* Reset state
|
|
73
|
+
*/
|
|
74
|
+
reset: () => void;
|
|
75
|
+
/**
|
|
76
|
+
* Error message if any
|
|
77
|
+
*/
|
|
78
|
+
error: Error | null;
|
|
79
|
+
};
|
|
80
|
+
/**
|
|
81
|
+
* Hook for voice recording with optional transcription
|
|
82
|
+
*
|
|
83
|
+
* Uses expo-audio (new API) for recording.
|
|
84
|
+
* Supports optional transcription via external endpoint.
|
|
85
|
+
*
|
|
86
|
+
* @example
|
|
87
|
+
* ```tsx
|
|
88
|
+
* const {
|
|
89
|
+
* isRecording,
|
|
90
|
+
* duration,
|
|
91
|
+
* startRecording,
|
|
92
|
+
* stopAndTranscribe,
|
|
93
|
+
* transcribedText
|
|
94
|
+
* } = useVoiceRecorder({
|
|
95
|
+
* transcribeEndpoint: 'https://api.example.com/transcribe',
|
|
96
|
+
* onTranscription: (text) => console.log('Transcribed:', text)
|
|
97
|
+
* });
|
|
98
|
+
* ```
|
|
99
|
+
*/
|
|
100
|
+
export declare function useVoiceRecorder(options?: UseVoiceRecorderOptions): UseVoiceRecorderReturn;
|
|
101
|
+
//# sourceMappingURL=use-voice-recorder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-voice-recorder.d.ts","sourceRoot":"","sources":["../../../../../src/hooks/use-voice-recorder.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AA+B5C,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,WAAW,GAAG,SAAS,GAAG,OAAO,CAAC;AAE7E,MAAM,MAAM,uBAAuB,GAAG;IACpC;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;OAEG;IACH,iBAAiB,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IAE3C;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAE9B;;OAEG;IACH,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAExC;;OAEG;IACH,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAEzC;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC;;OAEG;IACH,MAAM,EAAE,mBAAmB,CAAC;IAE5B;;OAEG;IACH,WAAW,EAAE,OAAO,CAAC;IAErB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5B;;OAEG;IACH,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAE/B;;OAEG;IACH,cAAc,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,cAAc,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpC;;OAEG;IACH,aAAa,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAE5C;;OAEG;IACH,iBAAiB,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAEhD;;OAEG;IACH,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAEpD;;OAEG;IACH,KAAK,EAAE,MAAM,IAAI,CAAC;IAElB;;OAEG;IACH,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,uBAA4B,GAAG,sBAAsB,CAmN9F"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @docyrus/rn-assistant - AI Assistant System for React Native
|
|
3
|
+
*
|
|
4
|
+
* Complete AI assistant system with Vercel AI SDK integration:
|
|
5
|
+
* - Chat interface with streaming responses
|
|
6
|
+
* - Agent/Model selection
|
|
7
|
+
* - Session management
|
|
8
|
+
* - Voice recording & transcription
|
|
9
|
+
* - File attachments (documents, images)
|
|
10
|
+
* - Quick actions and prompts
|
|
11
|
+
*
|
|
12
|
+
* **Requirements:**
|
|
13
|
+
* - `expo-constants` >= 18.0.0 (for AI SDK integration)
|
|
14
|
+
* - `@ai-sdk/react` and `ai` (bundled)
|
|
15
|
+
* - `expo/fetch` (for network requests)
|
|
16
|
+
* - internal theme and UI primitives are bundled locally
|
|
17
|
+
*
|
|
18
|
+
* @module @docyrus/rn-assistant
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```tsx
|
|
22
|
+
* import { DocyrusRNAssistant, createDocyrusRNAssistantConfig } from '@docyrus/rn-assistant';
|
|
23
|
+
*
|
|
24
|
+
* function App() {
|
|
25
|
+
* const apiConfig = createDocyrusRNAssistantConfig({
|
|
26
|
+
* baseUrl: 'https://api.docyrus.com',
|
|
27
|
+
* token: userToken
|
|
28
|
+
* });
|
|
29
|
+
*
|
|
30
|
+
* return (
|
|
31
|
+
* <DocyrusRNAssistant
|
|
32
|
+
* apiConfig={apiConfig}
|
|
33
|
+
* agentId="agent-123"
|
|
34
|
+
* credentials={{ token: userToken }}
|
|
35
|
+
* />
|
|
36
|
+
* );
|
|
37
|
+
* }
|
|
38
|
+
* ```
|
|
39
|
+
*/
|
|
40
|
+
export * from './components';
|
|
41
|
+
export { DocyrusRNAssistant, DocyrusRNAssistantEmbedded, DocyrusRNAssistantModal, DocyrusRNAssistantSheet, type DocyrusRNAssistantProps } from './components/assistant-screen';
|
|
42
|
+
export * from './hooks';
|
|
43
|
+
export * from './theme';
|
|
44
|
+
export * from './utils';
|
|
45
|
+
export { createDocyrusAPIConfig, createDocyrusRNAssistantConfig } from './utils/default-api-config';
|
|
46
|
+
export * from './types';
|
|
47
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAGH,cAAc,cAAc,CAAC;AAC7B,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,uBAAuB,EACvB,uBAAuB,EACvB,KAAK,uBAAuB,EAC7B,MAAM,+BAA+B,CAAC;AAGvC,cAAc,SAAS,CAAC;AAGxB,cAAc,SAAS,CAAC;AAGxB,cAAc,SAAS,CAAC;AACxB,OAAO,EACL,sBAAsB,EACtB,8BAA8B,EAC/B,MAAM,4BAA4B,CAAC;AAGpC,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { type PropsWithChildren } from 'react';
|
|
2
|
+
type ThemeMode = 'light' | 'dark' | 'system';
|
|
3
|
+
type AssistantThemeColors = {
|
|
4
|
+
background: string;
|
|
5
|
+
foreground: string;
|
|
6
|
+
card: string;
|
|
7
|
+
cardForeground: string;
|
|
8
|
+
muted: string;
|
|
9
|
+
mutedForeground: string;
|
|
10
|
+
border: string;
|
|
11
|
+
primary: string;
|
|
12
|
+
primaryForeground: string;
|
|
13
|
+
destructive: string;
|
|
14
|
+
destructiveForeground: string;
|
|
15
|
+
success: string;
|
|
16
|
+
successForeground: string;
|
|
17
|
+
warning: string;
|
|
18
|
+
warningForeground: string;
|
|
19
|
+
};
|
|
20
|
+
type AssistantThemeSpacing = Record<number, number> & {
|
|
21
|
+
0.5: number;
|
|
22
|
+
1.5: number;
|
|
23
|
+
2.5: number;
|
|
24
|
+
3.5: number;
|
|
25
|
+
};
|
|
26
|
+
type AssistantThemeRadius = {
|
|
27
|
+
sm: number;
|
|
28
|
+
md: number;
|
|
29
|
+
lg: number;
|
|
30
|
+
xl: number;
|
|
31
|
+
full: number;
|
|
32
|
+
};
|
|
33
|
+
export type DocyrusRNAssistantTheme = {
|
|
34
|
+
colors: AssistantThemeColors;
|
|
35
|
+
spacing: AssistantThemeSpacing;
|
|
36
|
+
borderRadius: AssistantThemeRadius;
|
|
37
|
+
isDark: boolean;
|
|
38
|
+
};
|
|
39
|
+
export type DocyrusRNAssistantThemeOverrides = Partial<{
|
|
40
|
+
colors: Partial<AssistantThemeColors>;
|
|
41
|
+
spacing: Partial<AssistantThemeSpacing>;
|
|
42
|
+
borderRadius: Partial<AssistantThemeRadius>;
|
|
43
|
+
}>;
|
|
44
|
+
export type DocyrusRNAssistantProviderProps = PropsWithChildren<{
|
|
45
|
+
mode?: ThemeMode;
|
|
46
|
+
theme?: DocyrusRNAssistantThemeOverrides;
|
|
47
|
+
}>;
|
|
48
|
+
export declare function DocyrusRNAssistantProvider({ children, mode, theme }: DocyrusRNAssistantProviderProps): import("react").JSX.Element;
|
|
49
|
+
export declare function useDocyrusRNAssistantTheme(): DocyrusRNAssistantTheme;
|
|
50
|
+
export {};
|
|
51
|
+
//# sourceMappingURL=assistant-theme.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assistant-theme.d.ts","sourceRoot":"","sources":["../../../../../src/theme/assistant-theme.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,iBAAiB,EAIvB,MAAM,OAAO,CAAC;AAIf,KAAK,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAC;AAE7C,KAAK,oBAAoB,GAAG;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,KAAK,qBAAqB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG;IACpD,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,KAAK,oBAAoB,GAAG;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,EAAE,oBAAoB,CAAC;IAC7B,OAAO,EAAE,qBAAqB,CAAC;IAC/B,YAAY,EAAE,oBAAoB,CAAC;IACnC,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,gCAAgC,GAAG,OAAO,CAAC;IACrD,MAAM,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACtC,OAAO,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACxC,YAAY,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;CAC7C,CAAC,CAAC;AA0FH,MAAM,MAAM,+BAA+B,GAAG,iBAAiB,CAAC;IAC9D,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,CAAC,EAAE,gCAAgC,CAAC;CAC1C,CAAC,CAAC;AAEH,wBAAgB,0BAA0B,CAAC,EACzC,QAAQ,EACR,IAAe,EACf,KAAK,EACN,EAAE,+BAA+B,+BAQjC;AAED,wBAAgB,0BAA0B,IAAI,uBAAuB,CAQpE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/theme/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,KAAK,+BAA+B,EACpC,KAAK,uBAAuB,EAC5B,KAAK,gCAAgC,EACrC,0BAA0B,EAC3B,MAAM,mBAAmB,CAAC"}
|