@repzo/widget-react-native 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +482 -0
- package/lib/commonjs/agent-ui-blocks.js +159 -0
- package/lib/commonjs/agent-ui-blocks.js.map +1 -0
- package/lib/commonjs/api/client.js +267 -0
- package/lib/commonjs/api/client.js.map +1 -0
- package/lib/commonjs/api/realtime.js +193 -0
- package/lib/commonjs/api/realtime.js.map +1 -0
- package/lib/commonjs/api/sse-parser.js +58 -0
- package/lib/commonjs/api/sse-parser.js.map +1 -0
- package/lib/commonjs/controller.js +23 -0
- package/lib/commonjs/controller.js.map +1 -0
- package/lib/commonjs/device-id.js +75 -0
- package/lib/commonjs/device-id.js.map +1 -0
- package/lib/commonjs/events.js +49 -0
- package/lib/commonjs/events.js.map +1 -0
- package/lib/commonjs/i18n.js +106 -0
- package/lib/commonjs/i18n.js.map +1 -0
- package/lib/commonjs/index.js +98 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/locales.js +85 -0
- package/lib/commonjs/locales.js.map +1 -0
- package/lib/commonjs/package.json +1 -0
- package/lib/commonjs/push/push-notifications.js +208 -0
- package/lib/commonjs/push/push-notifications.js.map +1 -0
- package/lib/commonjs/state/use-widget-state.js +23 -0
- package/lib/commonjs/state/use-widget-state.js.map +1 -0
- package/lib/commonjs/state/widget-store.js +1682 -0
- package/lib/commonjs/state/widget-store.js.map +1 -0
- package/lib/commonjs/storage.js +147 -0
- package/lib/commonjs/storage.js.map +1 -0
- package/lib/commonjs/types.js +44 -0
- package/lib/commonjs/types.js.map +1 -0
- package/lib/commonjs/ui/WidgetProvider.js +404 -0
- package/lib/commonjs/ui/WidgetProvider.js.map +1 -0
- package/lib/commonjs/ui/components/AgentUiBlocks.js +864 -0
- package/lib/commonjs/ui/components/AgentUiBlocks.js.map +1 -0
- package/lib/commonjs/ui/components/Avatar.js +76 -0
- package/lib/commonjs/ui/components/Avatar.js.map +1 -0
- package/lib/commonjs/ui/components/ConversationRow.js +155 -0
- package/lib/commonjs/ui/components/ConversationRow.js.map +1 -0
- package/lib/commonjs/ui/components/ErrorBoundary.js +44 -0
- package/lib/commonjs/ui/components/ErrorBoundary.js.map +1 -0
- package/lib/commonjs/ui/components/Gradient.js +168 -0
- package/lib/commonjs/ui/components/Gradient.js.map +1 -0
- package/lib/commonjs/ui/components/Launcher.js +125 -0
- package/lib/commonjs/ui/components/Launcher.js.map +1 -0
- package/lib/commonjs/ui/components/Markdown.js +257 -0
- package/lib/commonjs/ui/components/Markdown.js.map +1 -0
- package/lib/commonjs/ui/components/OutboundMessageCard.js +157 -0
- package/lib/commonjs/ui/components/OutboundMessageCard.js.map +1 -0
- package/lib/commonjs/ui/components/WidgetPanel.js +131 -0
- package/lib/commonjs/ui/components/WidgetPanel.js.map +1 -0
- package/lib/commonjs/ui/components/icons.js +383 -0
- package/lib/commonjs/ui/components/icons.js.map +1 -0
- package/lib/commonjs/ui/hooks/use-keyboard-overlap.js +113 -0
- package/lib/commonjs/ui/hooks/use-keyboard-overlap.js.map +1 -0
- package/lib/commonjs/ui/hooks/use-reduce-motion.js +38 -0
- package/lib/commonjs/ui/hooks/use-reduce-motion.js.map +1 -0
- package/lib/commonjs/ui/hooks/use-widget-insets.js +41 -0
- package/lib/commonjs/ui/hooks/use-widget-insets.js.map +1 -0
- package/lib/commonjs/ui/screens/chat/ChatView.js +590 -0
- package/lib/commonjs/ui/screens/chat/ChatView.js.map +1 -0
- package/lib/commonjs/ui/screens/chat/ChatView.styles.js +362 -0
- package/lib/commonjs/ui/screens/chat/ChatView.styles.js.map +1 -0
- package/lib/commonjs/ui/screens/chat/ChatView.types.js +6 -0
- package/lib/commonjs/ui/screens/chat/ChatView.types.js.map +1 -0
- package/lib/commonjs/ui/screens/conversations/ConversationsList.js +150 -0
- package/lib/commonjs/ui/screens/conversations/ConversationsList.js.map +1 -0
- package/lib/commonjs/ui/screens/conversations/ConversationsList.styles.js +118 -0
- package/lib/commonjs/ui/screens/conversations/ConversationsList.styles.js.map +1 -0
- package/lib/commonjs/ui/screens/conversations/ConversationsList.types.js +6 -0
- package/lib/commonjs/ui/screens/conversations/ConversationsList.types.js.map +1 -0
- package/lib/commonjs/ui/screens/home/HomeView.js +336 -0
- package/lib/commonjs/ui/screens/home/HomeView.js.map +1 -0
- package/lib/commonjs/ui/screens/home/HomeView.styles.js +245 -0
- package/lib/commonjs/ui/screens/home/HomeView.styles.js.map +1 -0
- package/lib/commonjs/ui/screens/home/HomeView.types.js +6 -0
- package/lib/commonjs/ui/screens/home/HomeView.types.js.map +1 -0
- package/lib/commonjs/ui/screens/home/greeting.js +49 -0
- package/lib/commonjs/ui/screens/home/greeting.js.map +1 -0
- package/lib/commonjs/ui/screens/pre-chat/PreChatForm.js +229 -0
- package/lib/commonjs/ui/screens/pre-chat/PreChatForm.js.map +1 -0
- package/lib/commonjs/ui/screens/pre-chat/PreChatForm.styles.js +125 -0
- package/lib/commonjs/ui/screens/pre-chat/PreChatForm.styles.js.map +1 -0
- package/lib/commonjs/ui/screens/pre-chat/PreChatForm.types.js +6 -0
- package/lib/commonjs/ui/screens/pre-chat/PreChatForm.types.js.map +1 -0
- package/lib/commonjs/ui/styles/global.js +55 -0
- package/lib/commonjs/ui/styles/global.js.map +1 -0
- package/lib/commonjs/ui/styles/theme.js +148 -0
- package/lib/commonjs/ui/styles/theme.js.map +1 -0
- package/lib/commonjs/ui/utils/conversations.js +125 -0
- package/lib/commonjs/ui/utils/conversations.js.map +1 -0
- package/lib/commonjs/ui/utils/html.js +44 -0
- package/lib/commonjs/ui/utils/html.js.map +1 -0
- package/lib/commonjs/ui/utils/native-gradient.js +65 -0
- package/lib/commonjs/ui/utils/native-gradient.js.map +1 -0
- package/lib/commonjs/ui/utils/rtl.js +56 -0
- package/lib/commonjs/ui/utils/rtl.js.map +1 -0
- package/lib/commonjs/ui/utils/safe-url.js +67 -0
- package/lib/commonjs/ui/utils/safe-url.js.map +1 -0
- package/lib/module/agent-ui-blocks.js +152 -0
- package/lib/module/agent-ui-blocks.js.map +1 -0
- package/lib/module/api/client.js +261 -0
- package/lib/module/api/client.js.map +1 -0
- package/lib/module/api/realtime.js +189 -0
- package/lib/module/api/realtime.js.map +1 -0
- package/lib/module/api/sse-parser.js +53 -0
- package/lib/module/api/sse-parser.js.map +1 -0
- package/lib/module/controller.js +19 -0
- package/lib/module/controller.js.map +1 -0
- package/lib/module/device-id.js +69 -0
- package/lib/module/device-id.js.map +1 -0
- package/lib/module/events.js +44 -0
- package/lib/module/events.js.map +1 -0
- package/lib/module/i18n.js +99 -0
- package/lib/module/i18n.js.map +1 -0
- package/lib/module/index.js +55 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/locales.js +80 -0
- package/lib/module/locales.js.map +1 -0
- package/lib/module/package.json +1 -0
- package/lib/module/push/push-notifications.js +204 -0
- package/lib/module/push/push-notifications.js.map +1 -0
- package/lib/module/state/use-widget-state.js +18 -0
- package/lib/module/state/use-widget-state.js.map +1 -0
- package/lib/module/state/widget-store.js +1677 -0
- package/lib/module/state/widget-store.js.map +1 -0
- package/lib/module/storage.js +141 -0
- package/lib/module/storage.js.map +1 -0
- package/lib/module/types.js +40 -0
- package/lib/module/types.js.map +1 -0
- package/lib/module/ui/WidgetProvider.js +400 -0
- package/lib/module/ui/WidgetProvider.js.map +1 -0
- package/lib/module/ui/components/AgentUiBlocks.js +857 -0
- package/lib/module/ui/components/AgentUiBlocks.js.map +1 -0
- package/lib/module/ui/components/Avatar.js +71 -0
- package/lib/module/ui/components/Avatar.js.map +1 -0
- package/lib/module/ui/components/ConversationRow.js +150 -0
- package/lib/module/ui/components/ConversationRow.js.map +1 -0
- package/lib/module/ui/components/ErrorBoundary.js +39 -0
- package/lib/module/ui/components/ErrorBoundary.js.map +1 -0
- package/lib/module/ui/components/Gradient.js +165 -0
- package/lib/module/ui/components/Gradient.js.map +1 -0
- package/lib/module/ui/components/Launcher.js +121 -0
- package/lib/module/ui/components/Launcher.js.map +1 -0
- package/lib/module/ui/components/Markdown.js +253 -0
- package/lib/module/ui/components/Markdown.js.map +1 -0
- package/lib/module/ui/components/OutboundMessageCard.js +153 -0
- package/lib/module/ui/components/OutboundMessageCard.js.map +1 -0
- package/lib/module/ui/components/WidgetPanel.js +127 -0
- package/lib/module/ui/components/WidgetPanel.js.map +1 -0
- package/lib/module/ui/components/icons.js +370 -0
- package/lib/module/ui/components/icons.js.map +1 -0
- package/lib/module/ui/hooks/use-keyboard-overlap.js +109 -0
- package/lib/module/ui/hooks/use-keyboard-overlap.js.map +1 -0
- package/lib/module/ui/hooks/use-reduce-motion.js +34 -0
- package/lib/module/ui/hooks/use-reduce-motion.js.map +1 -0
- package/lib/module/ui/hooks/use-widget-insets.js +37 -0
- package/lib/module/ui/hooks/use-widget-insets.js.map +1 -0
- package/lib/module/ui/screens/chat/ChatView.js +586 -0
- package/lib/module/ui/screens/chat/ChatView.js.map +1 -0
- package/lib/module/ui/screens/chat/ChatView.styles.js +358 -0
- package/lib/module/ui/screens/chat/ChatView.styles.js.map +1 -0
- package/lib/module/ui/screens/chat/ChatView.types.js +4 -0
- package/lib/module/ui/screens/chat/ChatView.types.js.map +1 -0
- package/lib/module/ui/screens/conversations/ConversationsList.js +146 -0
- package/lib/module/ui/screens/conversations/ConversationsList.js.map +1 -0
- package/lib/module/ui/screens/conversations/ConversationsList.styles.js +114 -0
- package/lib/module/ui/screens/conversations/ConversationsList.styles.js.map +1 -0
- package/lib/module/ui/screens/conversations/ConversationsList.types.js +4 -0
- package/lib/module/ui/screens/conversations/ConversationsList.types.js.map +1 -0
- package/lib/module/ui/screens/home/HomeView.js +332 -0
- package/lib/module/ui/screens/home/HomeView.js.map +1 -0
- package/lib/module/ui/screens/home/HomeView.styles.js +242 -0
- package/lib/module/ui/screens/home/HomeView.styles.js.map +1 -0
- package/lib/module/ui/screens/home/HomeView.types.js +4 -0
- package/lib/module/ui/screens/home/HomeView.types.js.map +1 -0
- package/lib/module/ui/screens/home/greeting.js +44 -0
- package/lib/module/ui/screens/home/greeting.js.map +1 -0
- package/lib/module/ui/screens/pre-chat/PreChatForm.js +225 -0
- package/lib/module/ui/screens/pre-chat/PreChatForm.js.map +1 -0
- package/lib/module/ui/screens/pre-chat/PreChatForm.styles.js +121 -0
- package/lib/module/ui/screens/pre-chat/PreChatForm.styles.js.map +1 -0
- package/lib/module/ui/screens/pre-chat/PreChatForm.types.js +4 -0
- package/lib/module/ui/screens/pre-chat/PreChatForm.types.js.map +1 -0
- package/lib/module/ui/styles/global.js +51 -0
- package/lib/module/ui/styles/global.js.map +1 -0
- package/lib/module/ui/styles/theme.js +137 -0
- package/lib/module/ui/styles/theme.js.map +1 -0
- package/lib/module/ui/utils/conversations.js +115 -0
- package/lib/module/ui/utils/conversations.js.map +1 -0
- package/lib/module/ui/utils/html.js +39 -0
- package/lib/module/ui/utils/html.js.map +1 -0
- package/lib/module/ui/utils/native-gradient.js +60 -0
- package/lib/module/ui/utils/native-gradient.js.map +1 -0
- package/lib/module/ui/utils/rtl.js +49 -0
- package/lib/module/ui/utils/rtl.js.map +1 -0
- package/lib/module/ui/utils/safe-url.js +59 -0
- package/lib/module/ui/utils/safe-url.js.map +1 -0
- package/lib/typescript/commonjs/agent-ui-blocks.d.ts +20 -0
- package/lib/typescript/commonjs/agent-ui-blocks.d.ts.map +1 -0
- package/lib/typescript/commonjs/api/client.d.ts +115 -0
- package/lib/typescript/commonjs/api/client.d.ts.map +1 -0
- package/lib/typescript/commonjs/api/realtime.d.ts +39 -0
- package/lib/typescript/commonjs/api/realtime.d.ts.map +1 -0
- package/lib/typescript/commonjs/api/sse-parser.d.ts +13 -0
- package/lib/typescript/commonjs/api/sse-parser.d.ts.map +1 -0
- package/lib/typescript/commonjs/controller.d.ts +15 -0
- package/lib/typescript/commonjs/controller.d.ts.map +1 -0
- package/lib/typescript/commonjs/device-id.d.ts +15 -0
- package/lib/typescript/commonjs/device-id.d.ts.map +1 -0
- package/lib/typescript/commonjs/events.d.ts +41 -0
- package/lib/typescript/commonjs/events.d.ts.map +1 -0
- package/lib/typescript/commonjs/i18n.d.ts +78 -0
- package/lib/typescript/commonjs/i18n.d.ts.map +1 -0
- package/lib/typescript/commonjs/index.d.ts +103 -0
- package/lib/typescript/commonjs/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/locales.d.ts +18 -0
- package/lib/typescript/commonjs/locales.d.ts.map +1 -0
- package/lib/typescript/commonjs/package.json +1 -0
- package/lib/typescript/commonjs/push/push-notifications.d.ts +71 -0
- package/lib/typescript/commonjs/push/push-notifications.d.ts.map +1 -0
- package/lib/typescript/commonjs/state/use-widget-state.d.ts +10 -0
- package/lib/typescript/commonjs/state/use-widget-state.d.ts.map +1 -0
- package/lib/typescript/commonjs/state/widget-store.d.ts +227 -0
- package/lib/typescript/commonjs/state/widget-store.d.ts.map +1 -0
- package/lib/typescript/commonjs/storage.d.ts +42 -0
- package/lib/typescript/commonjs/storage.d.ts.map +1 -0
- package/lib/typescript/commonjs/types.d.ts +391 -0
- package/lib/typescript/commonjs/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/WidgetProvider.d.ts +15 -0
- package/lib/typescript/commonjs/ui/WidgetProvider.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/AgentUiBlocks.d.ts +27 -0
- package/lib/typescript/commonjs/ui/components/AgentUiBlocks.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/Avatar.d.ts +19 -0
- package/lib/typescript/commonjs/ui/components/Avatar.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/ConversationRow.d.ts +26 -0
- package/lib/typescript/commonjs/ui/components/ConversationRow.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/ErrorBoundary.d.ts +27 -0
- package/lib/typescript/commonjs/ui/components/ErrorBoundary.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/Gradient.d.ts +33 -0
- package/lib/typescript/commonjs/ui/components/Gradient.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/Launcher.d.ts +18 -0
- package/lib/typescript/commonjs/ui/components/Launcher.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/Markdown.d.ts +19 -0
- package/lib/typescript/commonjs/ui/components/Markdown.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/OutboundMessageCard.d.ts +20 -0
- package/lib/typescript/commonjs/ui/components/OutboundMessageCard.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/WidgetPanel.d.ts +26 -0
- package/lib/typescript/commonjs/ui/components/WidgetPanel.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/icons.d.ts +38 -0
- package/lib/typescript/commonjs/ui/components/icons.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/hooks/use-keyboard-overlap.d.ts +33 -0
- package/lib/typescript/commonjs/ui/hooks/use-keyboard-overlap.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/hooks/use-reduce-motion.d.ts +11 -0
- package/lib/typescript/commonjs/ui/hooks/use-reduce-motion.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/hooks/use-widget-insets.d.ts +16 -0
- package/lib/typescript/commonjs/ui/hooks/use-widget-insets.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/screens/chat/ChatView.d.ts +11 -0
- package/lib/typescript/commonjs/ui/screens/chat/ChatView.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/screens/chat/ChatView.styles.d.ts +349 -0
- package/lib/typescript/commonjs/ui/screens/chat/ChatView.styles.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/screens/chat/ChatView.types.d.ts +48 -0
- package/lib/typescript/commonjs/ui/screens/chat/ChatView.types.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/screens/conversations/ConversationsList.d.ts +10 -0
- package/lib/typescript/commonjs/ui/screens/conversations/ConversationsList.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/screens/conversations/ConversationsList.styles.d.ts +113 -0
- package/lib/typescript/commonjs/ui/screens/conversations/ConversationsList.styles.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/screens/conversations/ConversationsList.types.d.ts +31 -0
- package/lib/typescript/commonjs/ui/screens/conversations/ConversationsList.types.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/screens/home/HomeView.d.ts +17 -0
- package/lib/typescript/commonjs/ui/screens/home/HomeView.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/screens/home/HomeView.styles.d.ts +227 -0
- package/lib/typescript/commonjs/ui/screens/home/HomeView.styles.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/screens/home/HomeView.types.d.ts +40 -0
- package/lib/typescript/commonjs/ui/screens/home/HomeView.types.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/screens/home/greeting.d.ts +19 -0
- package/lib/typescript/commonjs/ui/screens/home/greeting.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/screens/pre-chat/PreChatForm.d.ts +7 -0
- package/lib/typescript/commonjs/ui/screens/pre-chat/PreChatForm.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/screens/pre-chat/PreChatForm.styles.d.ts +115 -0
- package/lib/typescript/commonjs/ui/screens/pre-chat/PreChatForm.styles.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/screens/pre-chat/PreChatForm.types.d.ts +20 -0
- package/lib/typescript/commonjs/ui/screens/pre-chat/PreChatForm.types.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/styles/global.d.ts +46 -0
- package/lib/typescript/commonjs/ui/styles/global.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/styles/theme.d.ts +103 -0
- package/lib/typescript/commonjs/ui/styles/theme.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/utils/conversations.d.ts +41 -0
- package/lib/typescript/commonjs/ui/utils/conversations.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/utils/html.d.ts +10 -0
- package/lib/typescript/commonjs/ui/utils/html.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/utils/native-gradient.d.ts +61 -0
- package/lib/typescript/commonjs/ui/utils/native-gradient.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/utils/rtl.d.ts +33 -0
- package/lib/typescript/commonjs/ui/utils/rtl.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/utils/safe-url.d.ts +21 -0
- package/lib/typescript/commonjs/ui/utils/safe-url.d.ts.map +1 -0
- package/lib/typescript/module/agent-ui-blocks.d.ts +20 -0
- package/lib/typescript/module/agent-ui-blocks.d.ts.map +1 -0
- package/lib/typescript/module/api/client.d.ts +115 -0
- package/lib/typescript/module/api/client.d.ts.map +1 -0
- package/lib/typescript/module/api/realtime.d.ts +39 -0
- package/lib/typescript/module/api/realtime.d.ts.map +1 -0
- package/lib/typescript/module/api/sse-parser.d.ts +13 -0
- package/lib/typescript/module/api/sse-parser.d.ts.map +1 -0
- package/lib/typescript/module/controller.d.ts +15 -0
- package/lib/typescript/module/controller.d.ts.map +1 -0
- package/lib/typescript/module/device-id.d.ts +15 -0
- package/lib/typescript/module/device-id.d.ts.map +1 -0
- package/lib/typescript/module/events.d.ts +41 -0
- package/lib/typescript/module/events.d.ts.map +1 -0
- package/lib/typescript/module/i18n.d.ts +78 -0
- package/lib/typescript/module/i18n.d.ts.map +1 -0
- package/lib/typescript/module/index.d.ts +103 -0
- package/lib/typescript/module/index.d.ts.map +1 -0
- package/lib/typescript/module/locales.d.ts +18 -0
- package/lib/typescript/module/locales.d.ts.map +1 -0
- package/lib/typescript/module/package.json +1 -0
- package/lib/typescript/module/push/push-notifications.d.ts +71 -0
- package/lib/typescript/module/push/push-notifications.d.ts.map +1 -0
- package/lib/typescript/module/state/use-widget-state.d.ts +10 -0
- package/lib/typescript/module/state/use-widget-state.d.ts.map +1 -0
- package/lib/typescript/module/state/widget-store.d.ts +227 -0
- package/lib/typescript/module/state/widget-store.d.ts.map +1 -0
- package/lib/typescript/module/storage.d.ts +42 -0
- package/lib/typescript/module/storage.d.ts.map +1 -0
- package/lib/typescript/module/types.d.ts +391 -0
- package/lib/typescript/module/types.d.ts.map +1 -0
- package/lib/typescript/module/ui/WidgetProvider.d.ts +15 -0
- package/lib/typescript/module/ui/WidgetProvider.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/AgentUiBlocks.d.ts +27 -0
- package/lib/typescript/module/ui/components/AgentUiBlocks.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/Avatar.d.ts +19 -0
- package/lib/typescript/module/ui/components/Avatar.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/ConversationRow.d.ts +26 -0
- package/lib/typescript/module/ui/components/ConversationRow.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/ErrorBoundary.d.ts +27 -0
- package/lib/typescript/module/ui/components/ErrorBoundary.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/Gradient.d.ts +33 -0
- package/lib/typescript/module/ui/components/Gradient.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/Launcher.d.ts +18 -0
- package/lib/typescript/module/ui/components/Launcher.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/Markdown.d.ts +19 -0
- package/lib/typescript/module/ui/components/Markdown.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/OutboundMessageCard.d.ts +20 -0
- package/lib/typescript/module/ui/components/OutboundMessageCard.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/WidgetPanel.d.ts +26 -0
- package/lib/typescript/module/ui/components/WidgetPanel.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/icons.d.ts +38 -0
- package/lib/typescript/module/ui/components/icons.d.ts.map +1 -0
- package/lib/typescript/module/ui/hooks/use-keyboard-overlap.d.ts +33 -0
- package/lib/typescript/module/ui/hooks/use-keyboard-overlap.d.ts.map +1 -0
- package/lib/typescript/module/ui/hooks/use-reduce-motion.d.ts +11 -0
- package/lib/typescript/module/ui/hooks/use-reduce-motion.d.ts.map +1 -0
- package/lib/typescript/module/ui/hooks/use-widget-insets.d.ts +16 -0
- package/lib/typescript/module/ui/hooks/use-widget-insets.d.ts.map +1 -0
- package/lib/typescript/module/ui/screens/chat/ChatView.d.ts +11 -0
- package/lib/typescript/module/ui/screens/chat/ChatView.d.ts.map +1 -0
- package/lib/typescript/module/ui/screens/chat/ChatView.styles.d.ts +349 -0
- package/lib/typescript/module/ui/screens/chat/ChatView.styles.d.ts.map +1 -0
- package/lib/typescript/module/ui/screens/chat/ChatView.types.d.ts +48 -0
- package/lib/typescript/module/ui/screens/chat/ChatView.types.d.ts.map +1 -0
- package/lib/typescript/module/ui/screens/conversations/ConversationsList.d.ts +10 -0
- package/lib/typescript/module/ui/screens/conversations/ConversationsList.d.ts.map +1 -0
- package/lib/typescript/module/ui/screens/conversations/ConversationsList.styles.d.ts +113 -0
- package/lib/typescript/module/ui/screens/conversations/ConversationsList.styles.d.ts.map +1 -0
- package/lib/typescript/module/ui/screens/conversations/ConversationsList.types.d.ts +31 -0
- package/lib/typescript/module/ui/screens/conversations/ConversationsList.types.d.ts.map +1 -0
- package/lib/typescript/module/ui/screens/home/HomeView.d.ts +17 -0
- package/lib/typescript/module/ui/screens/home/HomeView.d.ts.map +1 -0
- package/lib/typescript/module/ui/screens/home/HomeView.styles.d.ts +227 -0
- package/lib/typescript/module/ui/screens/home/HomeView.styles.d.ts.map +1 -0
- package/lib/typescript/module/ui/screens/home/HomeView.types.d.ts +40 -0
- package/lib/typescript/module/ui/screens/home/HomeView.types.d.ts.map +1 -0
- package/lib/typescript/module/ui/screens/home/greeting.d.ts +19 -0
- package/lib/typescript/module/ui/screens/home/greeting.d.ts.map +1 -0
- package/lib/typescript/module/ui/screens/pre-chat/PreChatForm.d.ts +7 -0
- package/lib/typescript/module/ui/screens/pre-chat/PreChatForm.d.ts.map +1 -0
- package/lib/typescript/module/ui/screens/pre-chat/PreChatForm.styles.d.ts +115 -0
- package/lib/typescript/module/ui/screens/pre-chat/PreChatForm.styles.d.ts.map +1 -0
- package/lib/typescript/module/ui/screens/pre-chat/PreChatForm.types.d.ts +20 -0
- package/lib/typescript/module/ui/screens/pre-chat/PreChatForm.types.d.ts.map +1 -0
- package/lib/typescript/module/ui/styles/global.d.ts +46 -0
- package/lib/typescript/module/ui/styles/global.d.ts.map +1 -0
- package/lib/typescript/module/ui/styles/theme.d.ts +103 -0
- package/lib/typescript/module/ui/styles/theme.d.ts.map +1 -0
- package/lib/typescript/module/ui/utils/conversations.d.ts +41 -0
- package/lib/typescript/module/ui/utils/conversations.d.ts.map +1 -0
- package/lib/typescript/module/ui/utils/html.d.ts +10 -0
- package/lib/typescript/module/ui/utils/html.d.ts.map +1 -0
- package/lib/typescript/module/ui/utils/native-gradient.d.ts +61 -0
- package/lib/typescript/module/ui/utils/native-gradient.d.ts.map +1 -0
- package/lib/typescript/module/ui/utils/rtl.d.ts +33 -0
- package/lib/typescript/module/ui/utils/rtl.d.ts.map +1 -0
- package/lib/typescript/module/ui/utils/safe-url.d.ts +21 -0
- package/lib/typescript/module/ui/utils/safe-url.d.ts.map +1 -0
- package/metro.js +40 -0
- package/package.json +116 -0
- package/src/agent-ui-blocks.ts +302 -0
- package/src/api/client.ts +332 -0
- package/src/api/realtime.ts +225 -0
- package/src/api/sse-parser.ts +51 -0
- package/src/controller.ts +20 -0
- package/src/device-id.ts +71 -0
- package/src/events.ts +74 -0
- package/src/i18n.ts +114 -0
- package/src/index.tsx +199 -0
- package/src/locales.ts +80 -0
- package/src/push/push-notifications.ts +254 -0
- package/src/state/use-widget-state.ts +20 -0
- package/src/state/widget-store.ts +1815 -0
- package/src/storage.ts +153 -0
- package/src/types.ts +445 -0
- package/src/ui/WidgetProvider.tsx +434 -0
- package/src/ui/components/AgentUiBlocks.tsx +912 -0
- package/src/ui/components/Avatar.tsx +86 -0
- package/src/ui/components/ConversationRow.tsx +163 -0
- package/src/ui/components/ErrorBoundary.tsx +49 -0
- package/src/ui/components/Gradient.tsx +165 -0
- package/src/ui/components/Launcher.tsx +128 -0
- package/src/ui/components/Markdown.tsx +291 -0
- package/src/ui/components/OutboundMessageCard.tsx +154 -0
- package/src/ui/components/WidgetPanel.tsx +133 -0
- package/src/ui/components/icons.tsx +315 -0
- package/src/ui/hooks/use-keyboard-overlap.ts +134 -0
- package/src/ui/hooks/use-reduce-motion.ts +39 -0
- package/src/ui/hooks/use-widget-insets.ts +44 -0
- package/src/ui/screens/chat/ChatView.styles.ts +357 -0
- package/src/ui/screens/chat/ChatView.tsx +690 -0
- package/src/ui/screens/chat/ChatView.types.ts +46 -0
- package/src/ui/screens/conversations/ConversationsList.styles.ts +111 -0
- package/src/ui/screens/conversations/ConversationsList.tsx +144 -0
- package/src/ui/screens/conversations/ConversationsList.types.ts +33 -0
- package/src/ui/screens/home/HomeView.styles.ts +246 -0
- package/src/ui/screens/home/HomeView.tsx +336 -0
- package/src/ui/screens/home/HomeView.types.ts +42 -0
- package/src/ui/screens/home/greeting.ts +50 -0
- package/src/ui/screens/pre-chat/PreChatForm.styles.ts +120 -0
- package/src/ui/screens/pre-chat/PreChatForm.tsx +221 -0
- package/src/ui/screens/pre-chat/PreChatForm.types.ts +22 -0
- package/src/ui/styles/global.ts +50 -0
- package/src/ui/styles/theme.ts +155 -0
- package/src/ui/utils/conversations.ts +122 -0
- package/src/ui/utils/html.ts +58 -0
- package/src/ui/utils/native-gradient.ts +60 -0
- package/src/ui/utils/rtl.ts +43 -0
- package/src/ui/utils/safe-url.ts +63 -0
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.WidgetPanel = WidgetPanel;
|
|
7
|
+
var _reactNative = require("react-native");
|
|
8
|
+
var _global = require("../styles/global.js");
|
|
9
|
+
var _theme = require("../styles/theme.js");
|
|
10
|
+
var _icons = require("./icons.js");
|
|
11
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
|
+
/**
|
|
13
|
+
* Panel chrome: the colored header (with the assigned agent) and the bottom
|
|
14
|
+
* space switcher. Port of `client/src/widget/components/WidgetPanel.tsx`; the
|
|
15
|
+
* fixed-size floating card becomes a full-height sheet because the RN host is
|
|
16
|
+
* a modal, not an iframe pinned to a corner.
|
|
17
|
+
*/
|
|
18
|
+
|
|
19
|
+
const SPACE_META = {
|
|
20
|
+
home: {
|
|
21
|
+
labelKey: 'home',
|
|
22
|
+
icon: props => /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.HomeIcon, {
|
|
23
|
+
...props
|
|
24
|
+
})
|
|
25
|
+
},
|
|
26
|
+
messages: {
|
|
27
|
+
labelKey: 'messages',
|
|
28
|
+
icon: props => /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.ChatOutlineIcon, {
|
|
29
|
+
...props
|
|
30
|
+
})
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
function WidgetPanel({
|
|
34
|
+
color,
|
|
35
|
+
children,
|
|
36
|
+
activeTab,
|
|
37
|
+
onTabChange,
|
|
38
|
+
showTabs,
|
|
39
|
+
spaces,
|
|
40
|
+
unreadCount = 0,
|
|
41
|
+
labels
|
|
42
|
+
}) {
|
|
43
|
+
const enabledSpaces = spaces.filter(space => space.enabled);
|
|
44
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
45
|
+
style: _global.globalStyles.screen,
|
|
46
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
47
|
+
style: _global.globalStyles.fill,
|
|
48
|
+
children: children
|
|
49
|
+
}), showTabs && enabledSpaces.length > 1 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
50
|
+
style: styles.tabBar,
|
|
51
|
+
children: enabledSpaces.map(space => {
|
|
52
|
+
const meta = SPACE_META[space.type];
|
|
53
|
+
if (!meta) return null;
|
|
54
|
+
const active = activeTab === space.type;
|
|
55
|
+
const showBadge = space.type === 'messages' && unreadCount > 0;
|
|
56
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Pressable, {
|
|
57
|
+
onPress: () => onTabChange(space.type),
|
|
58
|
+
accessibilityRole: "tab",
|
|
59
|
+
accessibilityState: {
|
|
60
|
+
selected: active
|
|
61
|
+
},
|
|
62
|
+
accessibilityLabel: showBadge ? `${labels[meta.labelKey]}, ${labels.unread}` : undefined,
|
|
63
|
+
style: styles.tab,
|
|
64
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
65
|
+
style: styles.tabIconWrap,
|
|
66
|
+
children: [meta.icon({
|
|
67
|
+
size: 22,
|
|
68
|
+
color: active ? color : _theme.palette.textSubtle
|
|
69
|
+
}), showBadge ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
70
|
+
style: styles.tabBadge,
|
|
71
|
+
pointerEvents: "none",
|
|
72
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
73
|
+
style: styles.tabBadgeLabel,
|
|
74
|
+
children: unreadCount > 9 ? '9+' : unreadCount
|
|
75
|
+
})
|
|
76
|
+
}) : null]
|
|
77
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
78
|
+
style: [styles.tabLabel, {
|
|
79
|
+
color: active ? color : _theme.palette.textSubtle
|
|
80
|
+
}],
|
|
81
|
+
children: labels[meta.labelKey]
|
|
82
|
+
})]
|
|
83
|
+
}, space.type);
|
|
84
|
+
})
|
|
85
|
+
})]
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
const styles = _reactNative.StyleSheet.create({
|
|
89
|
+
tabIconWrap: {
|
|
90
|
+
position: 'relative'
|
|
91
|
+
},
|
|
92
|
+
tabBadge: {
|
|
93
|
+
position: 'absolute',
|
|
94
|
+
top: -5,
|
|
95
|
+
end: -12,
|
|
96
|
+
minWidth: 18,
|
|
97
|
+
height: 18,
|
|
98
|
+
borderRadius: 9,
|
|
99
|
+
paddingHorizontal: _theme.spacing.xs,
|
|
100
|
+
backgroundColor: _theme.palette.danger,
|
|
101
|
+
alignItems: 'center',
|
|
102
|
+
justifyContent: 'center',
|
|
103
|
+
borderWidth: 2,
|
|
104
|
+
borderColor: _theme.palette.white
|
|
105
|
+
},
|
|
106
|
+
tabBadgeLabel: {
|
|
107
|
+
fontSize: _theme.fontSize.micro,
|
|
108
|
+
fontWeight: '700',
|
|
109
|
+
color: _theme.palette.white
|
|
110
|
+
},
|
|
111
|
+
tabBar: {
|
|
112
|
+
flexDirection: 'row',
|
|
113
|
+
borderTopWidth: _reactNative.StyleSheet.hairlineWidth,
|
|
114
|
+
borderTopColor: _theme.palette.border,
|
|
115
|
+
backgroundColor: _theme.palette.white
|
|
116
|
+
},
|
|
117
|
+
tab: {
|
|
118
|
+
flex: 1,
|
|
119
|
+
alignItems: 'center',
|
|
120
|
+
justifyContent: 'center',
|
|
121
|
+
gap: 2,
|
|
122
|
+
paddingVertical: _theme.spacing.sm,
|
|
123
|
+
minHeight: 52
|
|
124
|
+
},
|
|
125
|
+
tabLabel: {
|
|
126
|
+
fontSize: _theme.fontSize.caption,
|
|
127
|
+
// Weight stays constant across states — only color signals the active tab.
|
|
128
|
+
fontWeight: '600'
|
|
129
|
+
}
|
|
130
|
+
});
|
|
131
|
+
//# sourceMappingURL=WidgetPanel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_global","_theme","_icons","_jsxRuntime","SPACE_META","home","labelKey","icon","props","jsx","HomeIcon","messages","ChatOutlineIcon","WidgetPanel","color","children","activeTab","onTabChange","showTabs","spaces","unreadCount","labels","enabledSpaces","filter","space","enabled","jsxs","View","style","globalStyles","screen","fill","length","styles","tabBar","map","meta","type","active","showBadge","Pressable","onPress","accessibilityRole","accessibilityState","selected","accessibilityLabel","unread","undefined","tab","tabIconWrap","size","palette","textSubtle","tabBadge","pointerEvents","Text","tabBadgeLabel","tabLabel","StyleSheet","create","position","top","end","minWidth","height","borderRadius","paddingHorizontal","spacing","xs","backgroundColor","danger","alignItems","justifyContent","borderWidth","borderColor","white","fontSize","micro","fontWeight","flexDirection","borderTopWidth","hairlineWidth","borderTopColor","border","flex","gap","paddingVertical","sm","minHeight","caption"],"sourceRoot":"../../../../src","sources":["ui/components/WidgetPanel.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,383 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.AlertIcon = AlertIcon;
|
|
7
|
+
exports.ArrowRightIcon = ArrowRightIcon;
|
|
8
|
+
exports.ArrowUpIcon = ArrowUpIcon;
|
|
9
|
+
exports.ChatIcon = ChatIcon;
|
|
10
|
+
exports.ChatOutlineIcon = ChatOutlineIcon;
|
|
11
|
+
exports.ChevronIcon = ChevronIcon;
|
|
12
|
+
exports.CloseIcon = CloseIcon;
|
|
13
|
+
exports.HomeIcon = HomeIcon;
|
|
14
|
+
exports.PaperclipIcon = PaperclipIcon;
|
|
15
|
+
exports.PersonIcon = PersonIcon;
|
|
16
|
+
var _reactNative = require("react-native");
|
|
17
|
+
var _theme = require("../styles/theme.js");
|
|
18
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
19
|
+
/**
|
|
20
|
+
* Geometric icons drawn with plain Views.
|
|
21
|
+
*
|
|
22
|
+
* The library ships zero native dependencies, so `react-native-svg` is off the
|
|
23
|
+
* table; every glyph here is a rotated border or triangle, which renders
|
|
24
|
+
* identically on both platforms and scales with the `size` prop.
|
|
25
|
+
*/
|
|
26
|
+
|
|
27
|
+
/** Two crossed bars. */
|
|
28
|
+
function CloseIcon({
|
|
29
|
+
size = 18,
|
|
30
|
+
color = _theme.palette.textMuted,
|
|
31
|
+
style
|
|
32
|
+
}) {
|
|
33
|
+
const bar = {
|
|
34
|
+
position: 'absolute',
|
|
35
|
+
width: size,
|
|
36
|
+
height: Math.max(2, size * 0.11),
|
|
37
|
+
borderRadius: 2,
|
|
38
|
+
backgroundColor: color
|
|
39
|
+
};
|
|
40
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
41
|
+
style: [{
|
|
42
|
+
width: size,
|
|
43
|
+
height: size
|
|
44
|
+
}, styles.center, style],
|
|
45
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
46
|
+
style: [bar, {
|
|
47
|
+
transform: [{
|
|
48
|
+
rotate: '45deg'
|
|
49
|
+
}]
|
|
50
|
+
}]
|
|
51
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
52
|
+
style: [bar, {
|
|
53
|
+
transform: [{
|
|
54
|
+
rotate: '-45deg'
|
|
55
|
+
}]
|
|
56
|
+
}]
|
|
57
|
+
})]
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
const CHEVRON_ROTATION = {
|
|
61
|
+
left: '45deg',
|
|
62
|
+
right: '-135deg',
|
|
63
|
+
up: '135deg',
|
|
64
|
+
down: '-45deg'
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
/** A square with two adjacent borders, rotated into an arrow head. */
|
|
68
|
+
function ChevronIcon({
|
|
69
|
+
size = 16,
|
|
70
|
+
color = _theme.palette.textMuted,
|
|
71
|
+
direction = 'left',
|
|
72
|
+
style
|
|
73
|
+
}) {
|
|
74
|
+
const box = size * 0.62;
|
|
75
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
76
|
+
style: [{
|
|
77
|
+
width: size,
|
|
78
|
+
height: size
|
|
79
|
+
}, styles.center, style],
|
|
80
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
81
|
+
style: {
|
|
82
|
+
width: box,
|
|
83
|
+
height: box,
|
|
84
|
+
borderLeftWidth: Math.max(2, size * 0.13),
|
|
85
|
+
borderBottomWidth: Math.max(2, size * 0.13),
|
|
86
|
+
borderColor: color,
|
|
87
|
+
transform: [{
|
|
88
|
+
rotate: CHEVRON_ROTATION[direction]
|
|
89
|
+
}]
|
|
90
|
+
}
|
|
91
|
+
})
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
/** Arrow with a shaft — used for the "start a conversation" affordance. */
|
|
96
|
+
function ArrowRightIcon({
|
|
97
|
+
size = 16,
|
|
98
|
+
color = _theme.palette.textMuted,
|
|
99
|
+
style
|
|
100
|
+
}) {
|
|
101
|
+
const thickness = Math.max(2, size * 0.12);
|
|
102
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
103
|
+
style: [{
|
|
104
|
+
width: size,
|
|
105
|
+
height: size
|
|
106
|
+
}, styles.center, style],
|
|
107
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
108
|
+
style: {
|
|
109
|
+
position: 'absolute',
|
|
110
|
+
width: size * 0.8,
|
|
111
|
+
height: thickness,
|
|
112
|
+
borderRadius: thickness,
|
|
113
|
+
backgroundColor: color
|
|
114
|
+
}
|
|
115
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
116
|
+
style: {
|
|
117
|
+
position: 'absolute',
|
|
118
|
+
right: size * 0.12,
|
|
119
|
+
width: size * 0.42,
|
|
120
|
+
height: size * 0.42,
|
|
121
|
+
borderTopWidth: thickness,
|
|
122
|
+
borderRightWidth: thickness,
|
|
123
|
+
borderColor: color,
|
|
124
|
+
transform: [{
|
|
125
|
+
rotate: '45deg'
|
|
126
|
+
}]
|
|
127
|
+
}
|
|
128
|
+
})]
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
/** Right-pointing triangle for the send button. */
|
|
133
|
+
/** Upward arrow — the send affordance inside the composer's round button. */
|
|
134
|
+
function ArrowUpIcon({
|
|
135
|
+
size = 16,
|
|
136
|
+
color = _theme.palette.white,
|
|
137
|
+
style
|
|
138
|
+
}) {
|
|
139
|
+
const thickness = Math.max(2, size * 0.12);
|
|
140
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
141
|
+
style: [{
|
|
142
|
+
width: size,
|
|
143
|
+
height: size
|
|
144
|
+
}, styles.center, style],
|
|
145
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
146
|
+
style: {
|
|
147
|
+
position: 'absolute',
|
|
148
|
+
width: thickness,
|
|
149
|
+
height: size * 0.78,
|
|
150
|
+
borderRadius: thickness,
|
|
151
|
+
backgroundColor: color
|
|
152
|
+
}
|
|
153
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
154
|
+
style: {
|
|
155
|
+
position: 'absolute',
|
|
156
|
+
top: size * 0.14,
|
|
157
|
+
width: size * 0.42,
|
|
158
|
+
height: size * 0.42,
|
|
159
|
+
borderTopWidth: thickness,
|
|
160
|
+
borderRightWidth: thickness,
|
|
161
|
+
borderColor: color,
|
|
162
|
+
transform: [{
|
|
163
|
+
rotate: '-45deg'
|
|
164
|
+
}]
|
|
165
|
+
}
|
|
166
|
+
})]
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
/** Rounded speech bubble with a tail. */
|
|
171
|
+
function ChatIcon({
|
|
172
|
+
size = 24,
|
|
173
|
+
color = _theme.palette.white,
|
|
174
|
+
style
|
|
175
|
+
}) {
|
|
176
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
177
|
+
style: [{
|
|
178
|
+
width: size,
|
|
179
|
+
height: size
|
|
180
|
+
}, style],
|
|
181
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
182
|
+
style: {
|
|
183
|
+
width: size,
|
|
184
|
+
height: size * 0.78,
|
|
185
|
+
borderRadius: size * 0.26,
|
|
186
|
+
backgroundColor: color
|
|
187
|
+
}
|
|
188
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
189
|
+
style: {
|
|
190
|
+
position: 'absolute',
|
|
191
|
+
left: size * 0.18,
|
|
192
|
+
bottom: 0,
|
|
193
|
+
width: 0,
|
|
194
|
+
height: 0,
|
|
195
|
+
borderLeftWidth: size * 0.14,
|
|
196
|
+
borderRightWidth: size * 0.14,
|
|
197
|
+
borderTopWidth: size * 0.26,
|
|
198
|
+
borderLeftColor: 'transparent',
|
|
199
|
+
borderRightColor: 'transparent',
|
|
200
|
+
borderTopColor: color
|
|
201
|
+
}
|
|
202
|
+
})]
|
|
203
|
+
});
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
/** Outlined speech bubble — the Messages tab + empty state. */
|
|
207
|
+
function ChatOutlineIcon({
|
|
208
|
+
size = 22,
|
|
209
|
+
color = _theme.palette.textSubtle,
|
|
210
|
+
style
|
|
211
|
+
}) {
|
|
212
|
+
const thickness = Math.max(1.5, size * 0.09);
|
|
213
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
214
|
+
style: [{
|
|
215
|
+
width: size,
|
|
216
|
+
height: size
|
|
217
|
+
}, style],
|
|
218
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
219
|
+
style: {
|
|
220
|
+
width: size,
|
|
221
|
+
height: size * 0.76,
|
|
222
|
+
borderRadius: size * 0.24,
|
|
223
|
+
borderWidth: thickness,
|
|
224
|
+
borderColor: color
|
|
225
|
+
}
|
|
226
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
227
|
+
style: {
|
|
228
|
+
position: 'absolute',
|
|
229
|
+
left: size * 0.2,
|
|
230
|
+
bottom: size * 0.02,
|
|
231
|
+
width: size * 0.22,
|
|
232
|
+
height: size * 0.22,
|
|
233
|
+
borderLeftWidth: thickness,
|
|
234
|
+
borderBottomWidth: thickness,
|
|
235
|
+
borderColor: color,
|
|
236
|
+
backgroundColor: _theme.palette.white,
|
|
237
|
+
transform: [{
|
|
238
|
+
rotate: '-45deg'
|
|
239
|
+
}]
|
|
240
|
+
}
|
|
241
|
+
})]
|
|
242
|
+
});
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
/** House outline — the Home tab. */
|
|
246
|
+
function HomeIcon({
|
|
247
|
+
size = 22,
|
|
248
|
+
color = _theme.palette.textSubtle,
|
|
249
|
+
style
|
|
250
|
+
}) {
|
|
251
|
+
const thickness = Math.max(1.5, size * 0.09);
|
|
252
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
253
|
+
style: [{
|
|
254
|
+
width: size,
|
|
255
|
+
height: size
|
|
256
|
+
}, styles.center, style],
|
|
257
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
258
|
+
style: {
|
|
259
|
+
position: 'absolute',
|
|
260
|
+
top: size * 0.04,
|
|
261
|
+
width: size * 0.56,
|
|
262
|
+
height: size * 0.56,
|
|
263
|
+
borderTopWidth: thickness,
|
|
264
|
+
borderLeftWidth: thickness,
|
|
265
|
+
borderColor: color,
|
|
266
|
+
transform: [{
|
|
267
|
+
rotate: '45deg'
|
|
268
|
+
}]
|
|
269
|
+
}
|
|
270
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
271
|
+
style: {
|
|
272
|
+
position: 'absolute',
|
|
273
|
+
bottom: size * 0.08,
|
|
274
|
+
width: size * 0.7,
|
|
275
|
+
height: size * 0.44,
|
|
276
|
+
borderWidth: thickness,
|
|
277
|
+
borderTopWidth: 0,
|
|
278
|
+
borderColor: color
|
|
279
|
+
}
|
|
280
|
+
})]
|
|
281
|
+
});
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
/** Person glyph for conversations with no assigned agent. */
|
|
285
|
+
function PersonIcon({
|
|
286
|
+
size = 18,
|
|
287
|
+
color = _theme.palette.white,
|
|
288
|
+
style
|
|
289
|
+
}) {
|
|
290
|
+
const thickness = Math.max(1.5, size * 0.11);
|
|
291
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
292
|
+
style: [{
|
|
293
|
+
width: size,
|
|
294
|
+
height: size
|
|
295
|
+
}, styles.center, style],
|
|
296
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
297
|
+
style: {
|
|
298
|
+
position: 'absolute',
|
|
299
|
+
top: size * 0.06,
|
|
300
|
+
width: size * 0.42,
|
|
301
|
+
height: size * 0.42,
|
|
302
|
+
borderRadius: size * 0.21,
|
|
303
|
+
borderWidth: thickness,
|
|
304
|
+
borderColor: color
|
|
305
|
+
}
|
|
306
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
307
|
+
style: {
|
|
308
|
+
position: 'absolute',
|
|
309
|
+
bottom: size * 0.06,
|
|
310
|
+
width: size * 0.74,
|
|
311
|
+
height: size * 0.3,
|
|
312
|
+
borderTopLeftRadius: size * 0.37,
|
|
313
|
+
borderTopRightRadius: size * 0.37,
|
|
314
|
+
borderWidth: thickness,
|
|
315
|
+
borderBottomWidth: 0,
|
|
316
|
+
borderColor: color
|
|
317
|
+
}
|
|
318
|
+
})]
|
|
319
|
+
});
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
/** Circle-with-bang used on the offline notice. */
|
|
323
|
+
function AlertIcon({
|
|
324
|
+
size = 16,
|
|
325
|
+
color = _theme.palette.warningIcon,
|
|
326
|
+
style
|
|
327
|
+
}) {
|
|
328
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
329
|
+
style: [{
|
|
330
|
+
width: size,
|
|
331
|
+
height: size,
|
|
332
|
+
borderRadius: size / 2,
|
|
333
|
+
borderWidth: Math.max(1.5, size * 0.12),
|
|
334
|
+
borderColor: color
|
|
335
|
+
}, styles.center, style],
|
|
336
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
337
|
+
style: {
|
|
338
|
+
width: Math.max(1.5, size * 0.12),
|
|
339
|
+
height: size * 0.34,
|
|
340
|
+
backgroundColor: color,
|
|
341
|
+
marginBottom: 1
|
|
342
|
+
}
|
|
343
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
344
|
+
style: {
|
|
345
|
+
width: Math.max(1.5, size * 0.12),
|
|
346
|
+
height: Math.max(1.5, size * 0.12),
|
|
347
|
+
backgroundColor: color
|
|
348
|
+
}
|
|
349
|
+
})]
|
|
350
|
+
});
|
|
351
|
+
}
|
|
352
|
+
function PaperclipIcon({
|
|
353
|
+
size = 18,
|
|
354
|
+
color = _theme.palette.textMuted,
|
|
355
|
+
style
|
|
356
|
+
}) {
|
|
357
|
+
const thickness = Math.max(1.5, size * 0.1);
|
|
358
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
359
|
+
style: [{
|
|
360
|
+
width: size,
|
|
361
|
+
height: size
|
|
362
|
+
}, styles.center, style],
|
|
363
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
364
|
+
style: {
|
|
365
|
+
width: size * 0.42,
|
|
366
|
+
height: size * 0.82,
|
|
367
|
+
borderRadius: size * 0.21,
|
|
368
|
+
borderWidth: thickness,
|
|
369
|
+
borderColor: color,
|
|
370
|
+
transform: [{
|
|
371
|
+
rotate: '35deg'
|
|
372
|
+
}]
|
|
373
|
+
}
|
|
374
|
+
})
|
|
375
|
+
});
|
|
376
|
+
}
|
|
377
|
+
const styles = _reactNative.StyleSheet.create({
|
|
378
|
+
center: {
|
|
379
|
+
alignItems: 'center',
|
|
380
|
+
justifyContent: 'center'
|
|
381
|
+
}
|
|
382
|
+
});
|
|
383
|
+
//# sourceMappingURL=icons.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_theme","_jsxRuntime","CloseIcon","size","color","palette","textMuted","style","bar","position","width","height","Math","max","borderRadius","backgroundColor","jsxs","View","styles","center","children","jsx","transform","rotate","CHEVRON_ROTATION","left","right","up","down","ChevronIcon","direction","box","borderLeftWidth","borderBottomWidth","borderColor","ArrowRightIcon","thickness","borderTopWidth","borderRightWidth","ArrowUpIcon","white","top","ChatIcon","bottom","borderLeftColor","borderRightColor","borderTopColor","ChatOutlineIcon","textSubtle","borderWidth","HomeIcon","PersonIcon","borderTopLeftRadius","borderTopRightRadius","AlertIcon","warningIcon","marginBottom","PaperclipIcon","StyleSheet","create","alignItems","justifyContent"],"sourceRoot":"../../../../src","sources":["ui/components/icons.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.useKeyboardOverlap = useKeyboardOverlap;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
/**
|
|
10
|
+
* How far the keyboard covers the widget panel, in dp.
|
|
11
|
+
*
|
|
12
|
+
* The panel is a `<Modal>` that reaches the bottom of the screen, so the
|
|
13
|
+
* keyboard's own height is the whole story: what it reports is what has to be
|
|
14
|
+
* given back, less whatever the layout has already conceded down there.
|
|
15
|
+
*
|
|
16
|
+
* Measuring the panel does not work, and neither does RN's
|
|
17
|
+
* `<KeyboardAvoidingView>`, which is built on the same measurement. Both read a
|
|
18
|
+
* view's position out of the shadow tree, which places it relative to the
|
|
19
|
+
* surface root, while the keyboard frame arrives in screen coordinates. An iOS
|
|
20
|
+
* page sheet starts some 60dp down the screen, so the two disagree by exactly
|
|
21
|
+
* that much and the composer ends up under the keyboard with only its top
|
|
22
|
+
* border showing.
|
|
23
|
+
*
|
|
24
|
+
* What counts as already conceded differs by platform. iOS never resizes its
|
|
25
|
+
* window for the keyboard, so it is the safe-area padding the panel already
|
|
26
|
+
* keeps below itself. Android modals ask for `adjustResize`, so the window
|
|
27
|
+
* usually gives up the height itself and nothing more is owed; when it does not
|
|
28
|
+
* — an edge-to-edge window stays put — the whole keyboard still is. Either way
|
|
29
|
+
* the difference shows up in the panel's own height, so that is where the
|
|
30
|
+
* shrink is read from. RN already nets the navigation bar out of the height it
|
|
31
|
+
* reports on Android, so the safe-area inset must not come off twice there.
|
|
32
|
+
*/
|
|
33
|
+
|
|
34
|
+
// iOS announces the keyboard before it moves, so the layout can travel with
|
|
35
|
+
// it; Android only reports the keyboard once it has settled.
|
|
36
|
+
const SHOW_EVENT = _reactNative.Platform.OS === 'ios' ? 'keyboardWillShow' : 'keyboardDidShow';
|
|
37
|
+
const HIDE_EVENT = _reactNative.Platform.OS === 'ios' ? 'keyboardWillHide' : 'keyboardDidHide';
|
|
38
|
+
|
|
39
|
+
/** Android is the only platform whose window gives up height to the keyboard. */
|
|
40
|
+
const WINDOW_RESIZES = _reactNative.Platform.OS === 'android';
|
|
41
|
+
function useKeyboardOverlap(enabled, bottomInset) {
|
|
42
|
+
const [overlap, setOverlap] = (0, _react.useState)(0);
|
|
43
|
+
// Mirrors `overlap` for the handlers, which must not re-subscribe on it.
|
|
44
|
+
const applied = (0, _react.useRef)(0);
|
|
45
|
+
const keyboardHeight = (0, _react.useRef)(0);
|
|
46
|
+
// The panel's height with no keyboard, and its height now. Taking the tallest
|
|
47
|
+
// seen keeps an Android resize that lands before the keyboard event from
|
|
48
|
+
// being mistaken for the resting height.
|
|
49
|
+
const restingHeight = (0, _react.useRef)(0);
|
|
50
|
+
const currentHeight = (0, _react.useRef)(0);
|
|
51
|
+
const apply = (0, _react.useCallback)((next, event) => {
|
|
52
|
+
if (Math.abs(next - applied.current) < 1) return;
|
|
53
|
+
applied.current = next;
|
|
54
|
+
|
|
55
|
+
// Riding the keyboard's own duration and curve keeps the composer glued to
|
|
56
|
+
// it, and leaves the work in the native layout pass instead of re-laying
|
|
57
|
+
// out the message list from JS on every frame. Android reports a duration
|
|
58
|
+
// of 0 and animates nothing, which is what the guard falls through to.
|
|
59
|
+
const duration = event?.duration ?? 0;
|
|
60
|
+
const easing = event?.easing;
|
|
61
|
+
if (duration > 10 && easing) {
|
|
62
|
+
_reactNative.LayoutAnimation.configureNext({
|
|
63
|
+
duration,
|
|
64
|
+
update: {
|
|
65
|
+
duration,
|
|
66
|
+
type: _reactNative.LayoutAnimation.Types[easing] ?? _reactNative.LayoutAnimation.Types.keyboard
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
setOverlap(next);
|
|
71
|
+
}, []);
|
|
72
|
+
const recompute = (0, _react.useCallback)(event => {
|
|
73
|
+
const alreadyClear = WINDOW_RESIZES ? Math.max(restingHeight.current - currentHeight.current, 0) : bottomInset;
|
|
74
|
+
const height = keyboardHeight.current;
|
|
75
|
+
apply(Math.min(Math.max(height - alreadyClear, 0), height), event);
|
|
76
|
+
}, [apply, bottomInset]);
|
|
77
|
+
const onLayout = (0, _react.useCallback)(event => {
|
|
78
|
+
// Only Android has a shrink to read, and only there can it land after the
|
|
79
|
+
// keyboard event and leave the first answer stale.
|
|
80
|
+
if (!WINDOW_RESIZES) return;
|
|
81
|
+
const {
|
|
82
|
+
height
|
|
83
|
+
} = event.nativeEvent.layout;
|
|
84
|
+
currentHeight.current = height;
|
|
85
|
+
restingHeight.current = Math.max(restingHeight.current, height);
|
|
86
|
+
if (keyboardHeight.current > 0) recompute();
|
|
87
|
+
}, [recompute]);
|
|
88
|
+
(0, _react.useEffect)(() => {
|
|
89
|
+
if (!enabled) {
|
|
90
|
+
keyboardHeight.current = 0;
|
|
91
|
+
restingHeight.current = 0;
|
|
92
|
+
apply(0);
|
|
93
|
+
return undefined;
|
|
94
|
+
}
|
|
95
|
+
const handleShow = event => {
|
|
96
|
+
keyboardHeight.current = event.endCoordinates?.height ?? 0;
|
|
97
|
+
recompute(event);
|
|
98
|
+
};
|
|
99
|
+
const handleHide = event => {
|
|
100
|
+
keyboardHeight.current = 0;
|
|
101
|
+
recompute(event);
|
|
102
|
+
};
|
|
103
|
+
const subscriptions = [_reactNative.Keyboard.addListener(SHOW_EVENT, handleShow), _reactNative.Keyboard.addListener(HIDE_EVENT, handleHide)];
|
|
104
|
+
return () => {
|
|
105
|
+
subscriptions.forEach(subscription => subscription.remove());
|
|
106
|
+
};
|
|
107
|
+
}, [apply, enabled, recompute]);
|
|
108
|
+
return {
|
|
109
|
+
overlap,
|
|
110
|
+
onLayout
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
//# sourceMappingURL=use-keyboard-overlap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","SHOW_EVENT","Platform","OS","HIDE_EVENT","WINDOW_RESIZES","useKeyboardOverlap","enabled","bottomInset","overlap","setOverlap","useState","applied","useRef","keyboardHeight","restingHeight","currentHeight","apply","useCallback","next","event","Math","abs","current","duration","easing","LayoutAnimation","configureNext","update","type","Types","keyboard","recompute","alreadyClear","max","height","min","onLayout","nativeEvent","layout","useEffect","undefined","handleShow","endCoordinates","handleHide","subscriptions","Keyboard","addListener","forEach","subscription","remove"],"sourceRoot":"../../../../src","sources":["ui/hooks/use-keyboard-overlap.ts"],"mappings":"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","ignoreList":[]}
|