everkit-ui 0.1.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/LICENSE +21 -0
- package/README.md +99 -0
- package/dist/commonjs/components/ActionSheet.js +67 -0
- package/dist/commonjs/components/ActionSheet.js.map +1 -0
- package/dist/commonjs/components/AnimatedEllipsis.js +92 -0
- package/dist/commonjs/components/AnimatedEllipsis.js.map +1 -0
- package/dist/commonjs/components/AnimatedPressable.js +63 -0
- package/dist/commonjs/components/AnimatedPressable.js.map +1 -0
- package/dist/commonjs/components/AppErrorBoundary.js +94 -0
- package/dist/commonjs/components/AppErrorBoundary.js.map +1 -0
- package/dist/commonjs/components/AppImage.js +83 -0
- package/dist/commonjs/components/AppImage.js.map +1 -0
- package/dist/commonjs/components/AuthFormScreen.js +96 -0
- package/dist/commonjs/components/AuthFormScreen.js.map +1 -0
- package/dist/commonjs/components/Avatar.js +155 -0
- package/dist/commonjs/components/Avatar.js.map +1 -0
- package/dist/commonjs/components/BotChatBubble.js +129 -0
- package/dist/commonjs/components/BotChatBubble.js.map +1 -0
- package/dist/commonjs/components/BottomActionSheet.js +90 -0
- package/dist/commonjs/components/BottomActionSheet.js.map +1 -0
- package/dist/commonjs/components/Button.js +163 -0
- package/dist/commonjs/components/Button.js.map +1 -0
- package/dist/commonjs/components/Card.js +104 -0
- package/dist/commonjs/components/Card.js.map +1 -0
- package/dist/commonjs/components/Carousel.js +59 -0
- package/dist/commonjs/components/Carousel.js.map +1 -0
- package/dist/commonjs/components/ChatInputBar.js +105 -0
- package/dist/commonjs/components/ChatInputBar.js.map +1 -0
- package/dist/commonjs/components/ChatScreen.js +203 -0
- package/dist/commonjs/components/ChatScreen.js.map +1 -0
- package/dist/commonjs/components/Chip.js +68 -0
- package/dist/commonjs/components/Chip.js.map +1 -0
- package/dist/commonjs/components/ChipSelector.js +126 -0
- package/dist/commonjs/components/ChipSelector.js.map +1 -0
- package/dist/commonjs/components/CircularProgress.js +128 -0
- package/dist/commonjs/components/CircularProgress.js.map +1 -0
- package/dist/commonjs/components/ConfirmDialog.js +139 -0
- package/dist/commonjs/components/ConfirmDialog.js.map +1 -0
- package/dist/commonjs/components/DateField.js +144 -0
- package/dist/commonjs/components/DateField.js.map +1 -0
- package/dist/commonjs/components/DetailHeader.js +32 -0
- package/dist/commonjs/components/DetailHeader.js.map +1 -0
- package/dist/commonjs/components/DetailScreen.js +88 -0
- package/dist/commonjs/components/DetailScreen.js.map +1 -0
- package/dist/commonjs/components/EmptyState.js +128 -0
- package/dist/commonjs/components/EmptyState.js.map +1 -0
- package/dist/commonjs/components/ErrorBoundary.js +87 -0
- package/dist/commonjs/components/ErrorBoundary.js.map +1 -0
- package/dist/commonjs/components/ErrorState.js +77 -0
- package/dist/commonjs/components/ErrorState.js.map +1 -0
- package/dist/commonjs/components/Fab.js +73 -0
- package/dist/commonjs/components/Fab.js.map +1 -0
- package/dist/commonjs/components/FabMenu.js +199 -0
- package/dist/commonjs/components/FabMenu.js.map +1 -0
- package/dist/commonjs/components/FavoriteButton.js +47 -0
- package/dist/commonjs/components/FavoriteButton.js.map +1 -0
- package/dist/commonjs/components/FollowStatsRow.js +84 -0
- package/dist/commonjs/components/FollowStatsRow.js.map +1 -0
- package/dist/commonjs/components/FormScreen.js +102 -0
- package/dist/commonjs/components/FormScreen.js.map +1 -0
- package/dist/commonjs/components/FormattedText.js +58 -0
- package/dist/commonjs/components/FormattedText.js.map +1 -0
- package/dist/commonjs/components/GoogleGlyph.js +44 -0
- package/dist/commonjs/components/GoogleGlyph.js.map +1 -0
- package/dist/commonjs/components/Gradient.js +59 -0
- package/dist/commonjs/components/Gradient.js.map +1 -0
- package/dist/commonjs/components/HeroStatsRow.js +46 -0
- package/dist/commonjs/components/HeroStatsRow.js.map +1 -0
- package/dist/commonjs/components/Input.js +163 -0
- package/dist/commonjs/components/Input.js.map +1 -0
- package/dist/commonjs/components/KeyboardAware.js +41 -0
- package/dist/commonjs/components/KeyboardAware.js.map +1 -0
- package/dist/commonjs/components/KeyboardScrollView.js +150 -0
- package/dist/commonjs/components/KeyboardScrollView.js.map +1 -0
- package/dist/commonjs/components/LegalBulletList.js +55 -0
- package/dist/commonjs/components/LegalBulletList.js.map +1 -0
- package/dist/commonjs/components/LegalSection.js +87 -0
- package/dist/commonjs/components/LegalSection.js.map +1 -0
- package/dist/commonjs/components/LikeButton.js +103 -0
- package/dist/commonjs/components/LikeButton.js.map +1 -0
- package/dist/commonjs/components/LoadingScreen.js +38 -0
- package/dist/commonjs/components/LoadingScreen.js.map +1 -0
- package/dist/commonjs/components/NotesCard.js +48 -0
- package/dist/commonjs/components/NotesCard.js.map +1 -0
- package/dist/commonjs/components/OnboardingSlide.js +73 -0
- package/dist/commonjs/components/OnboardingSlide.js.map +1 -0
- package/dist/commonjs/components/PhotoPicker.js +133 -0
- package/dist/commonjs/components/PhotoPicker.js.map +1 -0
- package/dist/commonjs/components/PhotoStrip.js +66 -0
- package/dist/commonjs/components/PhotoStrip.js.map +1 -0
- package/dist/commonjs/components/PhotoViewer.js +124 -0
- package/dist/commonjs/components/PhotoViewer.js.map +1 -0
- package/dist/commonjs/components/ProgressBar.js +108 -0
- package/dist/commonjs/components/ProgressBar.js.map +1 -0
- package/dist/commonjs/components/ScreenGradient.js +68 -0
- package/dist/commonjs/components/ScreenGradient.js.map +1 -0
- package/dist/commonjs/components/ScreenHeader.js +98 -0
- package/dist/commonjs/components/ScreenHeader.js.map +1 -0
- package/dist/commonjs/components/SearchInput.js +122 -0
- package/dist/commonjs/components/SearchInput.js.map +1 -0
- package/dist/commonjs/components/SelectionSheet.js +243 -0
- package/dist/commonjs/components/SelectionSheet.js.map +1 -0
- package/dist/commonjs/components/SettingsRow.js +125 -0
- package/dist/commonjs/components/SettingsRow.js.map +1 -0
- package/dist/commonjs/components/SettingsSection.js +45 -0
- package/dist/commonjs/components/SettingsSection.js.map +1 -0
- package/dist/commonjs/components/Skeleton.js +131 -0
- package/dist/commonjs/components/Skeleton.js.map +1 -0
- package/dist/commonjs/components/Spinner.js +41 -0
- package/dist/commonjs/components/Spinner.js.map +1 -0
- package/dist/commonjs/components/StarRating.js +87 -0
- package/dist/commonjs/components/StarRating.js.map +1 -0
- package/dist/commonjs/components/StatTile.js +63 -0
- package/dist/commonjs/components/StatTile.js.map +1 -0
- package/dist/commonjs/components/StepDots.js +121 -0
- package/dist/commonjs/components/StepDots.js.map +1 -0
- package/dist/commonjs/components/StickyBottomBar.js +44 -0
- package/dist/commonjs/components/StickyBottomBar.js.map +1 -0
- package/dist/commonjs/components/TabPillGroup.js +88 -0
- package/dist/commonjs/components/TabPillGroup.js.map +1 -0
- package/dist/commonjs/components/Text.js +175 -0
- package/dist/commonjs/components/Text.js.map +1 -0
- package/dist/commonjs/components/Toast.js +162 -0
- package/dist/commonjs/components/Toast.js.map +1 -0
- package/dist/commonjs/components/ToggleRow.js +121 -0
- package/dist/commonjs/components/ToggleRow.js.map +1 -0
- package/dist/commonjs/components/TypingIndicator.js +96 -0
- package/dist/commonjs/components/TypingIndicator.js.map +1 -0
- package/dist/commonjs/components/UserChatBubble.js +68 -0
- package/dist/commonjs/components/UserChatBubble.js.map +1 -0
- package/dist/commonjs/index.js +506 -0
- package/dist/commonjs/index.js.map +1 -0
- package/dist/commonjs/internal/appImageProps.js +44 -0
- package/dist/commonjs/internal/appImageProps.js.map +1 -0
- package/dist/commonjs/internal/avatarFallback.js +103 -0
- package/dist/commonjs/internal/avatarFallback.js.map +1 -0
- package/dist/commonjs/internal/chipStyle.js +89 -0
- package/dist/commonjs/internal/chipStyle.js.map +1 -0
- package/dist/commonjs/internal/detailScreenState.js +31 -0
- package/dist/commonjs/internal/detailScreenState.js.map +1 -0
- package/dist/commonjs/internal/haptics.js +50 -0
- package/dist/commonjs/internal/haptics.js.map +1 -0
- package/dist/commonjs/internal/hexToRgba.js +28 -0
- package/dist/commonjs/internal/hexToRgba.js.map +1 -0
- package/dist/commonjs/internal/inputStyle.js +52 -0
- package/dist/commonjs/internal/inputStyle.js.map +1 -0
- package/dist/commonjs/internal/keyboardAwareProps.js +38 -0
- package/dist/commonjs/internal/keyboardAwareProps.js.map +1 -0
- package/dist/commonjs/internal/keyboardScrollViewProps.js +66 -0
- package/dist/commonjs/internal/keyboardScrollViewProps.js.map +1 -0
- package/dist/commonjs/internal/overlay.js +36 -0
- package/dist/commonjs/internal/overlay.js.map +1 -0
- package/dist/commonjs/internal/parseInlineMarkdown.js +118 -0
- package/dist/commonjs/internal/parseInlineMarkdown.js.map +1 -0
- package/dist/commonjs/internal/refCounter.js +33 -0
- package/dist/commonjs/internal/refCounter.js.map +1 -0
- package/dist/commonjs/internal/resolveGradient.js +86 -0
- package/dist/commonjs/internal/resolveGradient.js.map +1 -0
- package/dist/commonjs/internal/spinnerProps.js +41 -0
- package/dist/commonjs/internal/spinnerProps.js.map +1 -0
- package/dist/commonjs/internal/springs.js +44 -0
- package/dist/commonjs/internal/springs.js.map +1 -0
- package/dist/commonjs/internal/stickyBottomBarStyle.js +51 -0
- package/dist/commonjs/internal/stickyBottomBarStyle.js.map +1 -0
- package/dist/commonjs/package.json +1 -0
- package/dist/commonjs/preset.js +44 -0
- package/dist/commonjs/preset.js.map +1 -0
- package/dist/commonjs/theme/ThemeProvider.js +59 -0
- package/dist/commonjs/theme/ThemeProvider.js.map +1 -0
- package/dist/commonjs/theme/geometry.js +95 -0
- package/dist/commonjs/theme/geometry.js.map +1 -0
- package/dist/commonjs/theme/index.js +44 -0
- package/dist/commonjs/theme/index.js.map +1 -0
- package/dist/commonjs/theme/scale.js +45 -0
- package/dist/commonjs/theme/scale.js.map +1 -0
- package/dist/commonjs/theme/types.js +6 -0
- package/dist/commonjs/theme/types.js.map +1 -0
- package/dist/module/components/ActionSheet.js +63 -0
- package/dist/module/components/ActionSheet.js.map +1 -0
- package/dist/module/components/AnimatedEllipsis.js +87 -0
- package/dist/module/components/AnimatedEllipsis.js.map +1 -0
- package/dist/module/components/AnimatedPressable.js +58 -0
- package/dist/module/components/AnimatedPressable.js.map +1 -0
- package/dist/module/components/AppErrorBoundary.js +88 -0
- package/dist/module/components/AppErrorBoundary.js.map +1 -0
- package/dist/module/components/AppImage.js +80 -0
- package/dist/module/components/AppImage.js.map +1 -0
- package/dist/module/components/AuthFormScreen.js +92 -0
- package/dist/module/components/AuthFormScreen.js.map +1 -0
- package/dist/module/components/Avatar.js +151 -0
- package/dist/module/components/Avatar.js.map +1 -0
- package/dist/module/components/BotChatBubble.js +124 -0
- package/dist/module/components/BotChatBubble.js.map +1 -0
- package/dist/module/components/BottomActionSheet.js +86 -0
- package/dist/module/components/BottomActionSheet.js.map +1 -0
- package/dist/module/components/Button.js +158 -0
- package/dist/module/components/Button.js.map +1 -0
- package/dist/module/components/Card.js +98 -0
- package/dist/module/components/Card.js.map +1 -0
- package/dist/module/components/Carousel.js +55 -0
- package/dist/module/components/Carousel.js.map +1 -0
- package/dist/module/components/ChatInputBar.js +101 -0
- package/dist/module/components/ChatInputBar.js.map +1 -0
- package/dist/module/components/ChatScreen.js +198 -0
- package/dist/module/components/ChatScreen.js.map +1 -0
- package/dist/module/components/Chip.js +63 -0
- package/dist/module/components/Chip.js.map +1 -0
- package/dist/module/components/ChipSelector.js +122 -0
- package/dist/module/components/ChipSelector.js.map +1 -0
- package/dist/module/components/CircularProgress.js +123 -0
- package/dist/module/components/CircularProgress.js.map +1 -0
- package/dist/module/components/ConfirmDialog.js +135 -0
- package/dist/module/components/ConfirmDialog.js.map +1 -0
- package/dist/module/components/DateField.js +141 -0
- package/dist/module/components/DateField.js.map +1 -0
- package/dist/module/components/DetailHeader.js +28 -0
- package/dist/module/components/DetailHeader.js.map +1 -0
- package/dist/module/components/DetailScreen.js +84 -0
- package/dist/module/components/DetailScreen.js.map +1 -0
- package/dist/module/components/EmptyState.js +125 -0
- package/dist/module/components/EmptyState.js.map +1 -0
- package/dist/module/components/ErrorBoundary.js +81 -0
- package/dist/module/components/ErrorBoundary.js.map +1 -0
- package/dist/module/components/ErrorState.js +73 -0
- package/dist/module/components/ErrorState.js.map +1 -0
- package/dist/module/components/Fab.js +68 -0
- package/dist/module/components/Fab.js.map +1 -0
- package/dist/module/components/FabMenu.js +194 -0
- package/dist/module/components/FabMenu.js.map +1 -0
- package/dist/module/components/FavoriteButton.js +42 -0
- package/dist/module/components/FavoriteButton.js.map +1 -0
- package/dist/module/components/FollowStatsRow.js +80 -0
- package/dist/module/components/FollowStatsRow.js.map +1 -0
- package/dist/module/components/FormScreen.js +98 -0
- package/dist/module/components/FormScreen.js.map +1 -0
- package/dist/module/components/FormattedText.js +54 -0
- package/dist/module/components/FormattedText.js.map +1 -0
- package/dist/module/components/GoogleGlyph.js +39 -0
- package/dist/module/components/GoogleGlyph.js.map +1 -0
- package/dist/module/components/Gradient.js +55 -0
- package/dist/module/components/Gradient.js.map +1 -0
- package/dist/module/components/HeroStatsRow.js +42 -0
- package/dist/module/components/HeroStatsRow.js.map +1 -0
- package/dist/module/components/Input.js +159 -0
- package/dist/module/components/Input.js.map +1 -0
- package/dist/module/components/KeyboardAware.js +37 -0
- package/dist/module/components/KeyboardAware.js.map +1 -0
- package/dist/module/components/KeyboardScrollView.js +146 -0
- package/dist/module/components/KeyboardScrollView.js.map +1 -0
- package/dist/module/components/LegalBulletList.js +51 -0
- package/dist/module/components/LegalBulletList.js.map +1 -0
- package/dist/module/components/LegalSection.js +83 -0
- package/dist/module/components/LegalSection.js.map +1 -0
- package/dist/module/components/LikeButton.js +100 -0
- package/dist/module/components/LikeButton.js.map +1 -0
- package/dist/module/components/LoadingScreen.js +34 -0
- package/dist/module/components/LoadingScreen.js.map +1 -0
- package/dist/module/components/NotesCard.js +44 -0
- package/dist/module/components/NotesCard.js.map +1 -0
- package/dist/module/components/OnboardingSlide.js +69 -0
- package/dist/module/components/OnboardingSlide.js.map +1 -0
- package/dist/module/components/PhotoPicker.js +129 -0
- package/dist/module/components/PhotoPicker.js.map +1 -0
- package/dist/module/components/PhotoStrip.js +62 -0
- package/dist/module/components/PhotoStrip.js.map +1 -0
- package/dist/module/components/PhotoViewer.js +121 -0
- package/dist/module/components/PhotoViewer.js.map +1 -0
- package/dist/module/components/ProgressBar.js +103 -0
- package/dist/module/components/ProgressBar.js.map +1 -0
- package/dist/module/components/ScreenGradient.js +64 -0
- package/dist/module/components/ScreenGradient.js.map +1 -0
- package/dist/module/components/ScreenHeader.js +94 -0
- package/dist/module/components/ScreenHeader.js.map +1 -0
- package/dist/module/components/SearchInput.js +118 -0
- package/dist/module/components/SearchInput.js.map +1 -0
- package/dist/module/components/SelectionSheet.js +239 -0
- package/dist/module/components/SelectionSheet.js.map +1 -0
- package/dist/module/components/SettingsRow.js +121 -0
- package/dist/module/components/SettingsRow.js.map +1 -0
- package/dist/module/components/SettingsSection.js +41 -0
- package/dist/module/components/SettingsSection.js.map +1 -0
- package/dist/module/components/Skeleton.js +126 -0
- package/dist/module/components/Skeleton.js.map +1 -0
- package/dist/module/components/Spinner.js +37 -0
- package/dist/module/components/Spinner.js.map +1 -0
- package/dist/module/components/StarRating.js +83 -0
- package/dist/module/components/StarRating.js.map +1 -0
- package/dist/module/components/StatTile.js +59 -0
- package/dist/module/components/StatTile.js.map +1 -0
- package/dist/module/components/StepDots.js +117 -0
- package/dist/module/components/StepDots.js.map +1 -0
- package/dist/module/components/StickyBottomBar.js +40 -0
- package/dist/module/components/StickyBottomBar.js.map +1 -0
- package/dist/module/components/TabPillGroup.js +84 -0
- package/dist/module/components/TabPillGroup.js.map +1 -0
- package/dist/module/components/Text.js +171 -0
- package/dist/module/components/Text.js.map +1 -0
- package/dist/module/components/Toast.js +157 -0
- package/dist/module/components/Toast.js.map +1 -0
- package/dist/module/components/ToggleRow.js +117 -0
- package/dist/module/components/ToggleRow.js.map +1 -0
- package/dist/module/components/TypingIndicator.js +91 -0
- package/dist/module/components/TypingIndicator.js.map +1 -0
- package/dist/module/components/UserChatBubble.js +63 -0
- package/dist/module/components/UserChatBubble.js.map +1 -0
- package/dist/module/index.js +112 -0
- package/dist/module/index.js.map +1 -0
- package/dist/module/internal/appImageProps.js +40 -0
- package/dist/module/internal/appImageProps.js.map +1 -0
- package/dist/module/internal/avatarFallback.js +97 -0
- package/dist/module/internal/avatarFallback.js.map +1 -0
- package/dist/module/internal/chipStyle.js +84 -0
- package/dist/module/internal/chipStyle.js.map +1 -0
- package/dist/module/internal/detailScreenState.js +27 -0
- package/dist/module/internal/detailScreenState.js.map +1 -0
- package/dist/module/internal/haptics.js +46 -0
- package/dist/module/internal/haptics.js.map +1 -0
- package/dist/module/internal/hexToRgba.js +24 -0
- package/dist/module/internal/hexToRgba.js.map +1 -0
- package/dist/module/internal/inputStyle.js +48 -0
- package/dist/module/internal/inputStyle.js.map +1 -0
- package/dist/module/internal/keyboardAwareProps.js +34 -0
- package/dist/module/internal/keyboardAwareProps.js.map +1 -0
- package/dist/module/internal/keyboardScrollViewProps.js +60 -0
- package/dist/module/internal/keyboardScrollViewProps.js.map +1 -0
- package/dist/module/internal/overlay.js +32 -0
- package/dist/module/internal/overlay.js.map +1 -0
- package/dist/module/internal/parseInlineMarkdown.js +114 -0
- package/dist/module/internal/parseInlineMarkdown.js.map +1 -0
- package/dist/module/internal/refCounter.js +29 -0
- package/dist/module/internal/refCounter.js.map +1 -0
- package/dist/module/internal/resolveGradient.js +82 -0
- package/dist/module/internal/resolveGradient.js.map +1 -0
- package/dist/module/internal/spinnerProps.js +37 -0
- package/dist/module/internal/spinnerProps.js.map +1 -0
- package/dist/module/internal/springs.js +40 -0
- package/dist/module/internal/springs.js.map +1 -0
- package/dist/module/internal/stickyBottomBarStyle.js +47 -0
- package/dist/module/internal/stickyBottomBarStyle.js.map +1 -0
- package/dist/module/package.json +1 -0
- package/dist/module/preset.js +44 -0
- package/dist/module/preset.js.map +1 -0
- package/dist/module/theme/ThemeProvider.js +51 -0
- package/dist/module/theme/ThemeProvider.js.map +1 -0
- package/dist/module/theme/geometry.js +91 -0
- package/dist/module/theme/geometry.js.map +1 -0
- package/dist/module/theme/index.js +5 -0
- package/dist/module/theme/index.js.map +1 -0
- package/dist/module/theme/scale.js +41 -0
- package/dist/module/theme/scale.js.map +1 -0
- package/dist/module/theme/types.js +4 -0
- package/dist/module/theme/types.js.map +1 -0
- package/dist/typescript/commonjs/package.json +1 -0
- package/dist/typescript/commonjs/src/components/ActionSheet.d.ts +29 -0
- package/dist/typescript/commonjs/src/components/ActionSheet.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/AnimatedEllipsis.d.ts +22 -0
- package/dist/typescript/commonjs/src/components/AnimatedEllipsis.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/AnimatedPressable.d.ts +34 -0
- package/dist/typescript/commonjs/src/components/AnimatedPressable.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/AppErrorBoundary.d.ts +42 -0
- package/dist/typescript/commonjs/src/components/AppErrorBoundary.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/AppImage.d.ts +38 -0
- package/dist/typescript/commonjs/src/components/AppImage.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/AuthFormScreen.d.ts +46 -0
- package/dist/typescript/commonjs/src/components/AuthFormScreen.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/Avatar.d.ts +64 -0
- package/dist/typescript/commonjs/src/components/Avatar.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/BotChatBubble.d.ts +42 -0
- package/dist/typescript/commonjs/src/components/BotChatBubble.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/BottomActionSheet.d.ts +45 -0
- package/dist/typescript/commonjs/src/components/BottomActionSheet.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/Button.d.ts +31 -0
- package/dist/typescript/commonjs/src/components/Button.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/Card.d.ts +49 -0
- package/dist/typescript/commonjs/src/components/Card.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/Carousel.d.ts +45 -0
- package/dist/typescript/commonjs/src/components/Carousel.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/ChatInputBar.d.ts +28 -0
- package/dist/typescript/commonjs/src/components/ChatInputBar.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/ChatScreen.d.ts +79 -0
- package/dist/typescript/commonjs/src/components/ChatScreen.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/Chip.d.ts +36 -0
- package/dist/typescript/commonjs/src/components/Chip.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/ChipSelector.d.ts +51 -0
- package/dist/typescript/commonjs/src/components/ChipSelector.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/CircularProgress.d.ts +47 -0
- package/dist/typescript/commonjs/src/components/CircularProgress.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/ConfirmDialog.d.ts +50 -0
- package/dist/typescript/commonjs/src/components/ConfirmDialog.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/DateField.d.ts +26 -0
- package/dist/typescript/commonjs/src/components/DateField.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/DetailHeader.d.ts +28 -0
- package/dist/typescript/commonjs/src/components/DetailHeader.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/DetailScreen.d.ts +55 -0
- package/dist/typescript/commonjs/src/components/DetailScreen.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/EmptyState.d.ts +33 -0
- package/dist/typescript/commonjs/src/components/EmptyState.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/ErrorBoundary.d.ts +36 -0
- package/dist/typescript/commonjs/src/components/ErrorBoundary.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/ErrorState.d.ts +23 -0
- package/dist/typescript/commonjs/src/components/ErrorState.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/Fab.d.ts +32 -0
- package/dist/typescript/commonjs/src/components/Fab.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/FabMenu.d.ts +48 -0
- package/dist/typescript/commonjs/src/components/FabMenu.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/FavoriteButton.d.ts +27 -0
- package/dist/typescript/commonjs/src/components/FavoriteButton.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/FollowStatsRow.d.ts +30 -0
- package/dist/typescript/commonjs/src/components/FollowStatsRow.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/FormScreen.d.ts +53 -0
- package/dist/typescript/commonjs/src/components/FormScreen.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/FormattedText.d.ts +30 -0
- package/dist/typescript/commonjs/src/components/FormattedText.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/GoogleGlyph.d.ts +18 -0
- package/dist/typescript/commonjs/src/components/GoogleGlyph.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/Gradient.d.ts +36 -0
- package/dist/typescript/commonjs/src/components/Gradient.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/HeroStatsRow.d.ts +23 -0
- package/dist/typescript/commonjs/src/components/HeroStatsRow.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/Input.d.ts +50 -0
- package/dist/typescript/commonjs/src/components/Input.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/KeyboardAware.d.ts +27 -0
- package/dist/typescript/commonjs/src/components/KeyboardAware.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/KeyboardScrollView.d.ts +61 -0
- package/dist/typescript/commonjs/src/components/KeyboardScrollView.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/LegalBulletList.d.ts +24 -0
- package/dist/typescript/commonjs/src/components/LegalBulletList.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/LegalSection.d.ts +34 -0
- package/dist/typescript/commonjs/src/components/LegalSection.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/LikeButton.d.ts +37 -0
- package/dist/typescript/commonjs/src/components/LikeButton.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/LoadingScreen.d.ts +17 -0
- package/dist/typescript/commonjs/src/components/LoadingScreen.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/NotesCard.d.ts +17 -0
- package/dist/typescript/commonjs/src/components/NotesCard.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/OnboardingSlide.d.ts +31 -0
- package/dist/typescript/commonjs/src/components/OnboardingSlide.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/PhotoPicker.d.ts +37 -0
- package/dist/typescript/commonjs/src/components/PhotoPicker.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/PhotoStrip.d.ts +32 -0
- package/dist/typescript/commonjs/src/components/PhotoStrip.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/PhotoViewer.d.ts +35 -0
- package/dist/typescript/commonjs/src/components/PhotoViewer.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/ProgressBar.d.ts +43 -0
- package/dist/typescript/commonjs/src/components/ProgressBar.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/ScreenGradient.d.ts +25 -0
- package/dist/typescript/commonjs/src/components/ScreenGradient.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/ScreenHeader.d.ts +48 -0
- package/dist/typescript/commonjs/src/components/ScreenHeader.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/SearchInput.d.ts +30 -0
- package/dist/typescript/commonjs/src/components/SearchInput.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/SelectionSheet.d.ts +54 -0
- package/dist/typescript/commonjs/src/components/SelectionSheet.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/SettingsRow.d.ts +52 -0
- package/dist/typescript/commonjs/src/components/SettingsRow.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/SettingsSection.d.ts +24 -0
- package/dist/typescript/commonjs/src/components/SettingsSection.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/Skeleton.d.ts +31 -0
- package/dist/typescript/commonjs/src/components/Skeleton.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/Spinner.d.ts +23 -0
- package/dist/typescript/commonjs/src/components/Spinner.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/StarRating.d.ts +30 -0
- package/dist/typescript/commonjs/src/components/StarRating.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/StatTile.d.ts +33 -0
- package/dist/typescript/commonjs/src/components/StatTile.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/StepDots.d.ts +61 -0
- package/dist/typescript/commonjs/src/components/StepDots.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/StickyBottomBar.d.ts +28 -0
- package/dist/typescript/commonjs/src/components/StickyBottomBar.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/TabPillGroup.d.ts +33 -0
- package/dist/typescript/commonjs/src/components/TabPillGroup.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/Text.d.ts +34 -0
- package/dist/typescript/commonjs/src/components/Text.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/Toast.d.ts +33 -0
- package/dist/typescript/commonjs/src/components/Toast.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/ToggleRow.d.ts +37 -0
- package/dist/typescript/commonjs/src/components/ToggleRow.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/TypingIndicator.d.ts +22 -0
- package/dist/typescript/commonjs/src/components/TypingIndicator.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/components/UserChatBubble.d.ts +34 -0
- package/dist/typescript/commonjs/src/components/UserChatBubble.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/index.d.ts +69 -0
- package/dist/typescript/commonjs/src/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/internal/appImageProps.d.ts +39 -0
- package/dist/typescript/commonjs/src/internal/appImageProps.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/internal/avatarFallback.d.ts +45 -0
- package/dist/typescript/commonjs/src/internal/avatarFallback.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/internal/chipStyle.d.ts +53 -0
- package/dist/typescript/commonjs/src/internal/chipStyle.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/internal/detailScreenState.d.ts +25 -0
- package/dist/typescript/commonjs/src/internal/detailScreenState.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/internal/haptics.d.ts +19 -0
- package/dist/typescript/commonjs/src/internal/haptics.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/internal/hexToRgba.d.ts +17 -0
- package/dist/typescript/commonjs/src/internal/hexToRgba.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/internal/inputStyle.d.ts +30 -0
- package/dist/typescript/commonjs/src/internal/inputStyle.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/internal/keyboardAwareProps.d.ts +37 -0
- package/dist/typescript/commonjs/src/internal/keyboardAwareProps.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/internal/keyboardScrollViewProps.d.ts +67 -0
- package/dist/typescript/commonjs/src/internal/keyboardScrollViewProps.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/internal/overlay.d.ts +24 -0
- package/dist/typescript/commonjs/src/internal/overlay.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/internal/parseInlineMarkdown.d.ts +28 -0
- package/dist/typescript/commonjs/src/internal/parseInlineMarkdown.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/internal/refCounter.d.ts +17 -0
- package/dist/typescript/commonjs/src/internal/refCounter.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/internal/resolveGradient.d.ts +57 -0
- package/dist/typescript/commonjs/src/internal/resolveGradient.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/internal/spinnerProps.d.ts +27 -0
- package/dist/typescript/commonjs/src/internal/spinnerProps.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/internal/springs.d.ts +37 -0
- package/dist/typescript/commonjs/src/internal/springs.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/internal/stickyBottomBarStyle.d.ts +36 -0
- package/dist/typescript/commonjs/src/internal/stickyBottomBarStyle.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/preset.d.ts +3 -0
- package/dist/typescript/commonjs/src/preset.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/theme/ThemeProvider.d.ts +17 -0
- package/dist/typescript/commonjs/src/theme/ThemeProvider.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/theme/geometry.d.ts +18 -0
- package/dist/typescript/commonjs/src/theme/geometry.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/theme/index.d.ts +4 -0
- package/dist/typescript/commonjs/src/theme/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/theme/scale.d.ts +41 -0
- package/dist/typescript/commonjs/src/theme/scale.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/theme/types.d.ts +67 -0
- package/dist/typescript/commonjs/src/theme/types.d.ts.map +1 -0
- package/dist/typescript/module/package.json +1 -0
- package/dist/typescript/module/src/components/ActionSheet.d.ts +29 -0
- package/dist/typescript/module/src/components/ActionSheet.d.ts.map +1 -0
- package/dist/typescript/module/src/components/AnimatedEllipsis.d.ts +22 -0
- package/dist/typescript/module/src/components/AnimatedEllipsis.d.ts.map +1 -0
- package/dist/typescript/module/src/components/AnimatedPressable.d.ts +34 -0
- package/dist/typescript/module/src/components/AnimatedPressable.d.ts.map +1 -0
- package/dist/typescript/module/src/components/AppErrorBoundary.d.ts +42 -0
- package/dist/typescript/module/src/components/AppErrorBoundary.d.ts.map +1 -0
- package/dist/typescript/module/src/components/AppImage.d.ts +38 -0
- package/dist/typescript/module/src/components/AppImage.d.ts.map +1 -0
- package/dist/typescript/module/src/components/AuthFormScreen.d.ts +46 -0
- package/dist/typescript/module/src/components/AuthFormScreen.d.ts.map +1 -0
- package/dist/typescript/module/src/components/Avatar.d.ts +64 -0
- package/dist/typescript/module/src/components/Avatar.d.ts.map +1 -0
- package/dist/typescript/module/src/components/BotChatBubble.d.ts +42 -0
- package/dist/typescript/module/src/components/BotChatBubble.d.ts.map +1 -0
- package/dist/typescript/module/src/components/BottomActionSheet.d.ts +45 -0
- package/dist/typescript/module/src/components/BottomActionSheet.d.ts.map +1 -0
- package/dist/typescript/module/src/components/Button.d.ts +31 -0
- package/dist/typescript/module/src/components/Button.d.ts.map +1 -0
- package/dist/typescript/module/src/components/Card.d.ts +49 -0
- package/dist/typescript/module/src/components/Card.d.ts.map +1 -0
- package/dist/typescript/module/src/components/Carousel.d.ts +45 -0
- package/dist/typescript/module/src/components/Carousel.d.ts.map +1 -0
- package/dist/typescript/module/src/components/ChatInputBar.d.ts +28 -0
- package/dist/typescript/module/src/components/ChatInputBar.d.ts.map +1 -0
- package/dist/typescript/module/src/components/ChatScreen.d.ts +79 -0
- package/dist/typescript/module/src/components/ChatScreen.d.ts.map +1 -0
- package/dist/typescript/module/src/components/Chip.d.ts +36 -0
- package/dist/typescript/module/src/components/Chip.d.ts.map +1 -0
- package/dist/typescript/module/src/components/ChipSelector.d.ts +51 -0
- package/dist/typescript/module/src/components/ChipSelector.d.ts.map +1 -0
- package/dist/typescript/module/src/components/CircularProgress.d.ts +47 -0
- package/dist/typescript/module/src/components/CircularProgress.d.ts.map +1 -0
- package/dist/typescript/module/src/components/ConfirmDialog.d.ts +50 -0
- package/dist/typescript/module/src/components/ConfirmDialog.d.ts.map +1 -0
- package/dist/typescript/module/src/components/DateField.d.ts +26 -0
- package/dist/typescript/module/src/components/DateField.d.ts.map +1 -0
- package/dist/typescript/module/src/components/DetailHeader.d.ts +28 -0
- package/dist/typescript/module/src/components/DetailHeader.d.ts.map +1 -0
- package/dist/typescript/module/src/components/DetailScreen.d.ts +55 -0
- package/dist/typescript/module/src/components/DetailScreen.d.ts.map +1 -0
- package/dist/typescript/module/src/components/EmptyState.d.ts +33 -0
- package/dist/typescript/module/src/components/EmptyState.d.ts.map +1 -0
- package/dist/typescript/module/src/components/ErrorBoundary.d.ts +36 -0
- package/dist/typescript/module/src/components/ErrorBoundary.d.ts.map +1 -0
- package/dist/typescript/module/src/components/ErrorState.d.ts +23 -0
- package/dist/typescript/module/src/components/ErrorState.d.ts.map +1 -0
- package/dist/typescript/module/src/components/Fab.d.ts +32 -0
- package/dist/typescript/module/src/components/Fab.d.ts.map +1 -0
- package/dist/typescript/module/src/components/FabMenu.d.ts +48 -0
- package/dist/typescript/module/src/components/FabMenu.d.ts.map +1 -0
- package/dist/typescript/module/src/components/FavoriteButton.d.ts +27 -0
- package/dist/typescript/module/src/components/FavoriteButton.d.ts.map +1 -0
- package/dist/typescript/module/src/components/FollowStatsRow.d.ts +30 -0
- package/dist/typescript/module/src/components/FollowStatsRow.d.ts.map +1 -0
- package/dist/typescript/module/src/components/FormScreen.d.ts +53 -0
- package/dist/typescript/module/src/components/FormScreen.d.ts.map +1 -0
- package/dist/typescript/module/src/components/FormattedText.d.ts +30 -0
- package/dist/typescript/module/src/components/FormattedText.d.ts.map +1 -0
- package/dist/typescript/module/src/components/GoogleGlyph.d.ts +18 -0
- package/dist/typescript/module/src/components/GoogleGlyph.d.ts.map +1 -0
- package/dist/typescript/module/src/components/Gradient.d.ts +36 -0
- package/dist/typescript/module/src/components/Gradient.d.ts.map +1 -0
- package/dist/typescript/module/src/components/HeroStatsRow.d.ts +23 -0
- package/dist/typescript/module/src/components/HeroStatsRow.d.ts.map +1 -0
- package/dist/typescript/module/src/components/Input.d.ts +50 -0
- package/dist/typescript/module/src/components/Input.d.ts.map +1 -0
- package/dist/typescript/module/src/components/KeyboardAware.d.ts +27 -0
- package/dist/typescript/module/src/components/KeyboardAware.d.ts.map +1 -0
- package/dist/typescript/module/src/components/KeyboardScrollView.d.ts +61 -0
- package/dist/typescript/module/src/components/KeyboardScrollView.d.ts.map +1 -0
- package/dist/typescript/module/src/components/LegalBulletList.d.ts +24 -0
- package/dist/typescript/module/src/components/LegalBulletList.d.ts.map +1 -0
- package/dist/typescript/module/src/components/LegalSection.d.ts +34 -0
- package/dist/typescript/module/src/components/LegalSection.d.ts.map +1 -0
- package/dist/typescript/module/src/components/LikeButton.d.ts +37 -0
- package/dist/typescript/module/src/components/LikeButton.d.ts.map +1 -0
- package/dist/typescript/module/src/components/LoadingScreen.d.ts +17 -0
- package/dist/typescript/module/src/components/LoadingScreen.d.ts.map +1 -0
- package/dist/typescript/module/src/components/NotesCard.d.ts +17 -0
- package/dist/typescript/module/src/components/NotesCard.d.ts.map +1 -0
- package/dist/typescript/module/src/components/OnboardingSlide.d.ts +31 -0
- package/dist/typescript/module/src/components/OnboardingSlide.d.ts.map +1 -0
- package/dist/typescript/module/src/components/PhotoPicker.d.ts +37 -0
- package/dist/typescript/module/src/components/PhotoPicker.d.ts.map +1 -0
- package/dist/typescript/module/src/components/PhotoStrip.d.ts +32 -0
- package/dist/typescript/module/src/components/PhotoStrip.d.ts.map +1 -0
- package/dist/typescript/module/src/components/PhotoViewer.d.ts +35 -0
- package/dist/typescript/module/src/components/PhotoViewer.d.ts.map +1 -0
- package/dist/typescript/module/src/components/ProgressBar.d.ts +43 -0
- package/dist/typescript/module/src/components/ProgressBar.d.ts.map +1 -0
- package/dist/typescript/module/src/components/ScreenGradient.d.ts +25 -0
- package/dist/typescript/module/src/components/ScreenGradient.d.ts.map +1 -0
- package/dist/typescript/module/src/components/ScreenHeader.d.ts +48 -0
- package/dist/typescript/module/src/components/ScreenHeader.d.ts.map +1 -0
- package/dist/typescript/module/src/components/SearchInput.d.ts +30 -0
- package/dist/typescript/module/src/components/SearchInput.d.ts.map +1 -0
- package/dist/typescript/module/src/components/SelectionSheet.d.ts +54 -0
- package/dist/typescript/module/src/components/SelectionSheet.d.ts.map +1 -0
- package/dist/typescript/module/src/components/SettingsRow.d.ts +52 -0
- package/dist/typescript/module/src/components/SettingsRow.d.ts.map +1 -0
- package/dist/typescript/module/src/components/SettingsSection.d.ts +24 -0
- package/dist/typescript/module/src/components/SettingsSection.d.ts.map +1 -0
- package/dist/typescript/module/src/components/Skeleton.d.ts +31 -0
- package/dist/typescript/module/src/components/Skeleton.d.ts.map +1 -0
- package/dist/typescript/module/src/components/Spinner.d.ts +23 -0
- package/dist/typescript/module/src/components/Spinner.d.ts.map +1 -0
- package/dist/typescript/module/src/components/StarRating.d.ts +30 -0
- package/dist/typescript/module/src/components/StarRating.d.ts.map +1 -0
- package/dist/typescript/module/src/components/StatTile.d.ts +33 -0
- package/dist/typescript/module/src/components/StatTile.d.ts.map +1 -0
- package/dist/typescript/module/src/components/StepDots.d.ts +61 -0
- package/dist/typescript/module/src/components/StepDots.d.ts.map +1 -0
- package/dist/typescript/module/src/components/StickyBottomBar.d.ts +28 -0
- package/dist/typescript/module/src/components/StickyBottomBar.d.ts.map +1 -0
- package/dist/typescript/module/src/components/TabPillGroup.d.ts +33 -0
- package/dist/typescript/module/src/components/TabPillGroup.d.ts.map +1 -0
- package/dist/typescript/module/src/components/Text.d.ts +34 -0
- package/dist/typescript/module/src/components/Text.d.ts.map +1 -0
- package/dist/typescript/module/src/components/Toast.d.ts +33 -0
- package/dist/typescript/module/src/components/Toast.d.ts.map +1 -0
- package/dist/typescript/module/src/components/ToggleRow.d.ts +37 -0
- package/dist/typescript/module/src/components/ToggleRow.d.ts.map +1 -0
- package/dist/typescript/module/src/components/TypingIndicator.d.ts +22 -0
- package/dist/typescript/module/src/components/TypingIndicator.d.ts.map +1 -0
- package/dist/typescript/module/src/components/UserChatBubble.d.ts +34 -0
- package/dist/typescript/module/src/components/UserChatBubble.d.ts.map +1 -0
- package/dist/typescript/module/src/index.d.ts +69 -0
- package/dist/typescript/module/src/index.d.ts.map +1 -0
- package/dist/typescript/module/src/internal/appImageProps.d.ts +39 -0
- package/dist/typescript/module/src/internal/appImageProps.d.ts.map +1 -0
- package/dist/typescript/module/src/internal/avatarFallback.d.ts +45 -0
- package/dist/typescript/module/src/internal/avatarFallback.d.ts.map +1 -0
- package/dist/typescript/module/src/internal/chipStyle.d.ts +53 -0
- package/dist/typescript/module/src/internal/chipStyle.d.ts.map +1 -0
- package/dist/typescript/module/src/internal/detailScreenState.d.ts +25 -0
- package/dist/typescript/module/src/internal/detailScreenState.d.ts.map +1 -0
- package/dist/typescript/module/src/internal/haptics.d.ts +19 -0
- package/dist/typescript/module/src/internal/haptics.d.ts.map +1 -0
- package/dist/typescript/module/src/internal/hexToRgba.d.ts +17 -0
- package/dist/typescript/module/src/internal/hexToRgba.d.ts.map +1 -0
- package/dist/typescript/module/src/internal/inputStyle.d.ts +30 -0
- package/dist/typescript/module/src/internal/inputStyle.d.ts.map +1 -0
- package/dist/typescript/module/src/internal/keyboardAwareProps.d.ts +37 -0
- package/dist/typescript/module/src/internal/keyboardAwareProps.d.ts.map +1 -0
- package/dist/typescript/module/src/internal/keyboardScrollViewProps.d.ts +67 -0
- package/dist/typescript/module/src/internal/keyboardScrollViewProps.d.ts.map +1 -0
- package/dist/typescript/module/src/internal/overlay.d.ts +24 -0
- package/dist/typescript/module/src/internal/overlay.d.ts.map +1 -0
- package/dist/typescript/module/src/internal/parseInlineMarkdown.d.ts +28 -0
- package/dist/typescript/module/src/internal/parseInlineMarkdown.d.ts.map +1 -0
- package/dist/typescript/module/src/internal/refCounter.d.ts +17 -0
- package/dist/typescript/module/src/internal/refCounter.d.ts.map +1 -0
- package/dist/typescript/module/src/internal/resolveGradient.d.ts +57 -0
- package/dist/typescript/module/src/internal/resolveGradient.d.ts.map +1 -0
- package/dist/typescript/module/src/internal/spinnerProps.d.ts +27 -0
- package/dist/typescript/module/src/internal/spinnerProps.d.ts.map +1 -0
- package/dist/typescript/module/src/internal/springs.d.ts +37 -0
- package/dist/typescript/module/src/internal/springs.d.ts.map +1 -0
- package/dist/typescript/module/src/internal/stickyBottomBarStyle.d.ts +36 -0
- package/dist/typescript/module/src/internal/stickyBottomBarStyle.d.ts.map +1 -0
- package/dist/typescript/module/src/preset.d.ts +3 -0
- package/dist/typescript/module/src/preset.d.ts.map +1 -0
- package/dist/typescript/module/src/theme/ThemeProvider.d.ts +17 -0
- package/dist/typescript/module/src/theme/ThemeProvider.d.ts.map +1 -0
- package/dist/typescript/module/src/theme/geometry.d.ts +18 -0
- package/dist/typescript/module/src/theme/geometry.d.ts.map +1 -0
- package/dist/typescript/module/src/theme/index.d.ts +4 -0
- package/dist/typescript/module/src/theme/index.d.ts.map +1 -0
- package/dist/typescript/module/src/theme/scale.d.ts +41 -0
- package/dist/typescript/module/src/theme/scale.d.ts.map +1 -0
- package/dist/typescript/module/src/theme/types.d.ts +67 -0
- package/dist/typescript/module/src/theme/types.d.ts.map +1 -0
- package/package.json +180 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TextInput","View","Pressable","Send","useColors","useShadows","useTypography","VARIANT_GEOMETRY","SPACE","RADIUS","jsx","_jsx","jsxs","_jsxs","ChatInputBar","value","onChangeText","onSend","isSending","placeholder","maxLength","style","colors","shadows","typography","canSend","trim","length","bodyGeometry","fieldFont","fontFamily","fontSize","lineHeight","letterSpacing","flexDirection","alignItems","paddingHorizontal","paddingVertical","gap","backgroundColor","bg","primary","borderTopWidth","borderTopColor","border","default","children","placeholderTextColor","text","tertiary","flex","borderRadius","maxHeight","card","color","multiline","returnKeyType","accessibilityLabel","accessibilityHint","onPress","disabled","width","height","full","justifyContent","brand","sm","secondary","accessibilityRole","accessibilityState","size","inverse"],"sourceRoot":"../../../src","sources":["components/ChatInputBar.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import React, { forwardRef, useCallback, useImperativeHandle, useMemo, useRef, useState } from 'react';
|
|
4
|
+
import { View, Keyboard, FlatList } from 'react-native';
|
|
5
|
+
import { SafeAreaView } from 'react-native-safe-area-context';
|
|
6
|
+
import { ScreenGradient } from "./ScreenGradient.js";
|
|
7
|
+
import { ScreenHeader } from "./ScreenHeader.js";
|
|
8
|
+
import { KeyboardAware } from "./KeyboardAware.js";
|
|
9
|
+
import { ErrorState } from "./ErrorState.js";
|
|
10
|
+
import { ChatInputBar } from "./ChatInputBar.js";
|
|
11
|
+
import { SPACE } from "../theme/scale.js";
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Minimal contract every message must satisfy: a stable `id` for the FlatList.
|
|
15
|
+
* Callers pass their own full message shape; this scaffold never introspects
|
|
16
|
+
* anything beyond `id` — it is fully generic over the message type.
|
|
17
|
+
*/
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Imperative handle exposed via `ref`. The only verb is `scrollToBottom` (used by
|
|
21
|
+
* a "back to latest" affordance). Kept intentionally small — anything richer
|
|
22
|
+
* would leak the FlatList implementation.
|
|
23
|
+
*/
|
|
24
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
25
|
+
/**
|
|
26
|
+
* Theme-agnostic, generic scaffold for chat screens: a {@link ScreenGradient}
|
|
27
|
+
* background → {@link KeyboardAware} → safe-area → {@link ScreenHeader} → an
|
|
28
|
+
* inverted `FlatList` → {@link ChatInputBar}, with error / loading / empty
|
|
29
|
+
* states. Fully generic over the message type (`M extends { id: string }`).
|
|
30
|
+
*
|
|
31
|
+
* What it OWNS: layout, the input text state (so it can restore on send-failure),
|
|
32
|
+
* the inverted-list perf knobs, and the imperative `scrollToBottom` handle.
|
|
33
|
+
*
|
|
34
|
+
* What it does NOT own: message rendering (caller passes `renderMessage`), the
|
|
35
|
+
* mutation lifecycle (caller passes `onSend` + an `onSendError` callback — there
|
|
36
|
+
* is NO `useToast` coupling; the app surfaces failures itself), and which data
|
|
37
|
+
* hook drives `messages`. It carries no color of its own; every surface inside
|
|
38
|
+
* reads the active theme.
|
|
39
|
+
*
|
|
40
|
+
* Router-decoupled: `onBack` is a plain callback — no `expo-router` import.
|
|
41
|
+
*/
|
|
42
|
+
function ChatScreenInner({
|
|
43
|
+
title,
|
|
44
|
+
subtitle,
|
|
45
|
+
onBack,
|
|
46
|
+
rightActions,
|
|
47
|
+
messages,
|
|
48
|
+
renderMessage,
|
|
49
|
+
isLoading = false,
|
|
50
|
+
loadingFallback,
|
|
51
|
+
error,
|
|
52
|
+
onRetry,
|
|
53
|
+
emptyState,
|
|
54
|
+
onSend,
|
|
55
|
+
onSendError,
|
|
56
|
+
isSending = false,
|
|
57
|
+
inputPlaceholder = 'Type a message...',
|
|
58
|
+
inputMaxLength = 2000,
|
|
59
|
+
onEndReached,
|
|
60
|
+
onEndReachedThreshold,
|
|
61
|
+
listFooter,
|
|
62
|
+
onListScroll,
|
|
63
|
+
floatingOverlay
|
|
64
|
+
}, ref) {
|
|
65
|
+
const [text, setText] = useState('');
|
|
66
|
+
const listRef = useRef(null);
|
|
67
|
+
useImperativeHandle(ref, () => ({
|
|
68
|
+
scrollToBottom: ({
|
|
69
|
+
animated = true
|
|
70
|
+
} = {}) => {
|
|
71
|
+
// Inverted list → offset 0 is the visible bottom.
|
|
72
|
+
listRef.current?.scrollToOffset({
|
|
73
|
+
offset: 0,
|
|
74
|
+
animated
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
}), []);
|
|
78
|
+
|
|
79
|
+
// With `inverted`, index 0 sits at the bottom. Callers pass oldest-first, so
|
|
80
|
+
// we reverse for display. Memoised to keep the reference stable across
|
|
81
|
+
// re-renders that do not change the array.
|
|
82
|
+
const reversedMessages = useMemo(() => messages.slice().reverse(), [messages]);
|
|
83
|
+
const handleSend = useCallback(() => {
|
|
84
|
+
const trimmed = text.trim();
|
|
85
|
+
if (!trimmed || isSending) return;
|
|
86
|
+
// Optimistically clear the input so the keyboard feels responsive. The
|
|
87
|
+
// original text is captured in `trimmed`; on rejection we restore via a
|
|
88
|
+
// functional setter so we do not stomp whatever the user typed since.
|
|
89
|
+
setText('');
|
|
90
|
+
Keyboard.dismiss();
|
|
91
|
+
const onError = err => {
|
|
92
|
+
setText(current => current.length === 0 ? trimmed : current);
|
|
93
|
+
onSendError?.(err);
|
|
94
|
+
};
|
|
95
|
+
// try/catch handles a synchronous throw; .catch handles a rejected Promise.
|
|
96
|
+
try {
|
|
97
|
+
Promise.resolve(onSend(trimmed)).catch(onError);
|
|
98
|
+
} catch (err) {
|
|
99
|
+
onError(err);
|
|
100
|
+
}
|
|
101
|
+
}, [text, isSending, onSend, onSendError]);
|
|
102
|
+
const keyExtractor = useCallback(item => item.id, []);
|
|
103
|
+
const showEmpty = !isLoading && messages.length === 0 && !error;
|
|
104
|
+
const showLoading = isLoading && messages.length === 0;
|
|
105
|
+
const showList = !showEmpty && !showLoading && !error;
|
|
106
|
+
return /*#__PURE__*/_jsx(ScreenGradient, {
|
|
107
|
+
children: /*#__PURE__*/_jsx(KeyboardAware, {
|
|
108
|
+
keyboardVerticalOffset: 0,
|
|
109
|
+
children: /*#__PURE__*/_jsxs(SafeAreaView, {
|
|
110
|
+
style: {
|
|
111
|
+
flex: 1
|
|
112
|
+
},
|
|
113
|
+
edges: ['top'],
|
|
114
|
+
children: [/*#__PURE__*/_jsx(ScreenHeader, {
|
|
115
|
+
variant: "detail",
|
|
116
|
+
title: title,
|
|
117
|
+
subtitle: subtitle,
|
|
118
|
+
onBack: onBack,
|
|
119
|
+
showBack: Boolean(onBack),
|
|
120
|
+
rightActions: rightActions
|
|
121
|
+
}), error ? /*#__PURE__*/_jsx(ErrorState, {
|
|
122
|
+
message: error.message,
|
|
123
|
+
onRetry: onRetry
|
|
124
|
+
}) : showLoading ? loadingFallback ?? /*#__PURE__*/_jsx(View, {
|
|
125
|
+
style: {
|
|
126
|
+
flex: 1
|
|
127
|
+
}
|
|
128
|
+
}) : showEmpty ?
|
|
129
|
+
/*#__PURE__*/
|
|
130
|
+
// Fill the space between header and input so the empty state centers
|
|
131
|
+
// instead of collapsing to the top. `flexGrow/flexBasis/alignSelf` are
|
|
132
|
+
// spelled out rather than the `flex: 1` shorthand: on the New
|
|
133
|
+
// Architecture a deeply-nested `flex: 1` chain (this box → the caller's
|
|
134
|
+
// wrapper → a self-centering EmptyState) can collapse to zero height,
|
|
135
|
+
// and the explicit longhand + `stretch` is the reliable form.
|
|
136
|
+
_jsx(View, {
|
|
137
|
+
style: {
|
|
138
|
+
flexGrow: 1,
|
|
139
|
+
flexBasis: 0,
|
|
140
|
+
alignSelf: 'stretch',
|
|
141
|
+
justifyContent: 'center'
|
|
142
|
+
},
|
|
143
|
+
children: emptyState ?? null
|
|
144
|
+
}) : showList ? /*#__PURE__*/_jsxs(View, {
|
|
145
|
+
style: {
|
|
146
|
+
flex: 1
|
|
147
|
+
},
|
|
148
|
+
children: [/*#__PURE__*/_jsx(FlatList, {
|
|
149
|
+
ref: listRef,
|
|
150
|
+
inverted: true,
|
|
151
|
+
data: reversedMessages,
|
|
152
|
+
renderItem: renderMessage,
|
|
153
|
+
keyExtractor: keyExtractor,
|
|
154
|
+
keyboardDismissMode: "on-drag"
|
|
155
|
+
// `"always"` (not `"handled"`): under New Arch `"handled"` lets
|
|
156
|
+
// ancestor responders eat the first tap, breaking first-tap
|
|
157
|
+
// focus AND smooth scrolling on an inverted list. Bubbles are
|
|
158
|
+
// read-only, so there is no «persist on tap» behaviour to keep.
|
|
159
|
+
,
|
|
160
|
+
keyboardShouldPersistTaps: "always",
|
|
161
|
+
contentContainerStyle: {
|
|
162
|
+
paddingTop: SPACE['4'],
|
|
163
|
+
paddingBottom: SPACE['4']
|
|
164
|
+
},
|
|
165
|
+
onEndReached: onEndReached,
|
|
166
|
+
onEndReachedThreshold: onEndReachedThreshold,
|
|
167
|
+
ListFooterComponent: listFooter ? /*#__PURE__*/_jsx(_Fragment, {
|
|
168
|
+
children: listFooter
|
|
169
|
+
}) : null,
|
|
170
|
+
onScroll: onListScroll,
|
|
171
|
+
scrollEventThrottle: onListScroll ? 16 : undefined
|
|
172
|
+
// Perf knobs. `removeClippedSubviews` is intentionally OFF for an
|
|
173
|
+
// inverted FlatList — iOS clips the bottom (latest) rows when the
|
|
174
|
+
// keyboard opens and they never re-mount.
|
|
175
|
+
,
|
|
176
|
+
windowSize: 7,
|
|
177
|
+
maxToRenderPerBatch: 10,
|
|
178
|
+
updateCellsBatchingPeriod: 120,
|
|
179
|
+
initialNumToRender: 20
|
|
180
|
+
}), floatingOverlay]
|
|
181
|
+
}) : null, /*#__PURE__*/_jsx(ChatInputBar, {
|
|
182
|
+
value: text,
|
|
183
|
+
onChangeText: setText,
|
|
184
|
+
onSend: handleSend,
|
|
185
|
+
isSending: isSending,
|
|
186
|
+
placeholder: inputPlaceholder,
|
|
187
|
+
maxLength: inputMaxLength
|
|
188
|
+
})]
|
|
189
|
+
})
|
|
190
|
+
})
|
|
191
|
+
});
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
// `forwardRef` loses the generic <M>, so cast back. Standard React pattern for a
|
|
195
|
+
// generic forwardRef component.
|
|
196
|
+
export const ChatScreen = /*#__PURE__*/forwardRef(ChatScreenInner);
|
|
197
|
+
ChatScreen.displayName = 'ChatScreen';
|
|
198
|
+
//# sourceMappingURL=ChatScreen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","forwardRef","useCallback","useImperativeHandle","useMemo","useRef","useState","View","Keyboard","FlatList","SafeAreaView","ScreenGradient","ScreenHeader","KeyboardAware","ErrorState","ChatInputBar","SPACE","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ChatScreenInner","title","subtitle","onBack","rightActions","messages","renderMessage","isLoading","loadingFallback","error","onRetry","emptyState","onSend","onSendError","isSending","inputPlaceholder","inputMaxLength","onEndReached","onEndReachedThreshold","listFooter","onListScroll","floatingOverlay","ref","text","setText","listRef","scrollToBottom","animated","current","scrollToOffset","offset","reversedMessages","slice","reverse","handleSend","trimmed","trim","dismiss","onError","err","length","Promise","resolve","catch","keyExtractor","item","id","showEmpty","showLoading","showList","children","keyboardVerticalOffset","style","flex","edges","variant","showBack","Boolean","message","flexGrow","flexBasis","alignSelf","justifyContent","inverted","data","renderItem","keyboardDismissMode","keyboardShouldPersistTaps","contentContainerStyle","paddingTop","paddingBottom","ListFooterComponent","onScroll","scrollEventThrottle","undefined","windowSize","maxToRenderPerBatch","updateCellsBatchingPeriod","initialNumToRender","value","onChangeText","placeholder","maxLength","ChatScreen","displayName"],"sourceRoot":"../../../src","sources":["components/ChatScreen.tsx"],"mappings":";;AACA,OAAOA,KAAK,IAAIC,UAAU,EAAEC,WAAW,EAAEC,mBAAmB,EAAEC,OAAO,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AACtG,SACEC,IAAI,EACJC,QAAQ,EACRC,QAAQ,QAIH,cAAc;AACrB,SAASC,YAAY,QAAQ,gCAAgC;AAC7D,SAASC,cAAc,QAAQ,qBAAkB;AACjD,SAASC,YAAY,QAAQ,mBAAgB;AAC7C,SAASC,aAAa,QAAQ,oBAAiB;AAC/C,SAASC,UAAU,QAAQ,iBAAc;AACzC,SAASC,YAAY,QAAQ,mBAAgB;AAC7C,SAASC,KAAK,QAAQ,mBAAgB;;AAEtC;AACA;AACA;AACA;AACA;;AAKA;AACA;AACA;AACA;AACA;AAJA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAsEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,eAAeA,CACtB;EACEC,KAAK;EACLC,QAAQ;EACRC,MAAM;EACNC,YAAY;EACZC,QAAQ;EACRC,aAAa;EACbC,SAAS,GAAG,KAAK;EACjBC,eAAe;EACfC,KAAK;EACLC,OAAO;EACPC,UAAU;EACVC,MAAM;EACNC,WAAW;EACXC,SAAS,GAAG,KAAK;EACjBC,gBAAgB,GAAG,mBAAmB;EACtCC,cAAc,GAAG,IAAI;EACrBC,YAAY;EACZC,qBAAqB;EACrBC,UAAU;EACVC,YAAY;EACZC;AACkB,CAAC,EACrBC,GAA0B,EAC1B;EACA,MAAM,CAACC,IAAI,EAAEC,OAAO,CAAC,GAAGzC,QAAQ,CAAC,EAAE,CAAC;EACpC,MAAM0C,OAAO,GAAG3C,MAAM,CAAc,IAAI,CAAC;EAEzCF,mBAAmB,CACjB0C,GAAG,EACH,OAAO;IACLI,cAAc,EAAEA,CAAC;MAAEC,QAAQ,GAAG;IAA6B,CAAC,GAAG,CAAC,CAAC,KAAK;MACpE;MACAF,OAAO,CAACG,OAAO,EAAEC,cAAc,CAAC;QAAEC,MAAM,EAAE,CAAC;QAAEH;MAAS,CAAC,CAAC;IAC1D;EACF,CAAC,CAAC,EACF,EACF,CAAC;;EAED;EACA;EACA;EACA,MAAMI,gBAAgB,GAAGlD,OAAO,CAAC,MAAMwB,QAAQ,CAAC2B,KAAK,CAAC,CAAC,CAACC,OAAO,CAAC,CAAC,EAAE,CAAC5B,QAAQ,CAAC,CAAC;EAE9E,MAAM6B,UAAU,GAAGvD,WAAW,CAAC,MAAM;IACnC,MAAMwD,OAAO,GAAGZ,IAAI,CAACa,IAAI,CAAC,CAAC;IAC3B,IAAI,CAACD,OAAO,IAAIrB,SAAS,EAAE;IAC3B;IACA;IACA;IACAU,OAAO,CAAC,EAAE,CAAC;IACXvC,QAAQ,CAACoD,OAAO,CAAC,CAAC;IAClB,MAAMC,OAAO,GAAIC,GAAY,IAAK;MAChCf,OAAO,CAAEI,OAAO,IAAMA,OAAO,CAACY,MAAM,KAAK,CAAC,GAAGL,OAAO,GAAGP,OAAQ,CAAC;MAChEf,WAAW,GAAG0B,GAAG,CAAC;IACpB,CAAC;IACD;IACA,IAAI;MACFE,OAAO,CAACC,OAAO,CAAC9B,MAAM,CAACuB,OAAO,CAAC,CAAC,CAACQ,KAAK,CAACL,OAAO,CAAC;IACjD,CAAC,CAAC,OAAOC,GAAG,EAAE;MACZD,OAAO,CAACC,GAAG,CAAC;IACd;EACF,CAAC,EAAE,CAAChB,IAAI,EAAET,SAAS,EAAEF,MAAM,EAAEC,WAAW,CAAC,CAAC;EAE1C,MAAM+B,YAAY,GAAGjE,WAAW,CAAEkE,IAAO,IAAKA,IAAI,CAACC,EAAE,EAAE,EAAE,CAAC;EAE1D,MAAMC,SAAS,GAAG,CAACxC,SAAS,IAAIF,QAAQ,CAACmC,MAAM,KAAK,CAAC,IAAI,CAAC/B,KAAK;EAC/D,MAAMuC,WAAW,GAAGzC,SAAS,IAAIF,QAAQ,CAACmC,MAAM,KAAK,CAAC;EACtD,MAAMS,QAAQ,GAAG,CAACF,SAAS,IAAI,CAACC,WAAW,IAAI,CAACvC,KAAK;EAErD,oBACEd,IAAA,CAACP,cAAc;IAAA8D,QAAA,eACbvD,IAAA,CAACL,aAAa;MAAC6D,sBAAsB,EAAE,CAAE;MAAAD,QAAA,eAQvCnD,KAAA,CAACZ,YAAY;QAACiE,KAAK,EAAE;UAAEC,IAAI,EAAE;QAAE,CAAE;QAACC,KAAK,EAAE,CAAC,KAAK,CAAE;QAAAJ,QAAA,gBAC/CvD,IAAA,CAACN,YAAY;UACXkE,OAAO,EAAC,QAAQ;UAChBtD,KAAK,EAAEA,KAAM;UACbC,QAAQ,EAAEA,QAAS;UACnBC,MAAM,EAAEA,MAAO;UACfqD,QAAQ,EAAEC,OAAO,CAACtD,MAAM,CAAE;UAC1BC,YAAY,EAAEA;QAAa,CAC5B,CAAC,EAUDK,KAAK,gBACJd,IAAA,CAACJ,UAAU;UAACmE,OAAO,EAAEjD,KAAK,CAACiD,OAAQ;UAAChD,OAAO,EAAEA;QAAQ,CAAE,CAAC,GACtDsC,WAAW,GACZxC,eAAe,iBAAIb,IAAA,CAACX,IAAI;UAACoE,KAAK,EAAE;YAAEC,IAAI,EAAE;UAAE;QAAE,CAAE,CAAC,GAC9CN,SAAS;QAAA;QACX;QACA;QACA;QACA;QACA;QACA;QACApD,IAAA,CAACX,IAAI;UAACoE,KAAK,EAAE;YAAEO,QAAQ,EAAE,CAAC;YAAEC,SAAS,EAAE,CAAC;YAAEC,SAAS,EAAE,SAAS;YAAEC,cAAc,EAAE;UAAS,CAAE;UAAAZ,QAAA,EACxFvC,UAAU,IAAI;QAAI,CACf,CAAC,GACLsC,QAAQ,gBACVlD,KAAA,CAACf,IAAI;UAACoE,KAAK,EAAE;YAAEC,IAAI,EAAE;UAAE,CAAE;UAAAH,QAAA,gBACvBvD,IAAA,CAACT,QAAQ;YACPoC,GAAG,EAAEG,OAAQ;YACbsC,QAAQ;YACRC,IAAI,EAAEjC,gBAAiB;YACvBkC,UAAU,EAAE3D,aAAc;YAC1BsC,YAAY,EAAEA,YAAa;YAC3BsB,mBAAmB,EAAC;YACpB;YACA;YACA;YACA;YAAA;YACAC,yBAAyB,EAAC,QAAQ;YAClCC,qBAAqB,EAAE;cAAEC,UAAU,EAAE5E,KAAK,CAAC,GAAG,CAAC;cAAE6E,aAAa,EAAE7E,KAAK,CAAC,GAAG;YAAE,CAAE;YAC7EwB,YAAY,EAAEA,YAAa;YAC3BC,qBAAqB,EAAEA,qBAAsB;YAC7CqD,mBAAmB,EAAEpD,UAAU,gBAAGxB,IAAA,CAAAE,SAAA;cAAAqD,QAAA,EAAG/B;YAAU,CAAG,CAAC,GAAG,IAAK;YAC3DqD,QAAQ,EAAEpD,YAAa;YACvBqD,mBAAmB,EAAErD,YAAY,GAAG,EAAE,GAAGsD;YACzC;YACA;YACA;YAAA;YACAC,UAAU,EAAE,CAAE;YACdC,mBAAmB,EAAE,EAAG;YACxBC,yBAAyB,EAAE,GAAI;YAC/BC,kBAAkB,EAAE;UAAG,CACxB,CAAC,EACDzD,eAAe;QAAA,CACZ,CAAC,GACL,IAAI,eAGR1B,IAAA,CAACH,YAAY;UACXuF,KAAK,EAAExD,IAAK;UACZyD,YAAY,EAAExD,OAAQ;UACtBZ,MAAM,EAAEsB,UAAW;UACnBpB,SAAS,EAAEA,SAAU;UACrBmE,WAAW,EAAElE,gBAAiB;UAC9BmE,SAAS,EAAElE;QAAe,CAC3B,CAAC;MAAA,CACU;IAAC,CACF;EAAC,CACF,CAAC;AAErB;;AAEA;AACA;AACA,OAAO,MAAMmE,UAAU,gBAAGzG,UAAU,CAACsB,eAAe,CAAwB;AAC1EmF,UAAU,CAA8BC,WAAW,GAAG,YAAY","ignoreList":[]}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import { View } from 'react-native';
|
|
5
|
+
import { Text } from "./Text.js";
|
|
6
|
+
import { useColors } from "../theme/ThemeProvider.js";
|
|
7
|
+
import { RADIUS } from "../theme/scale.js";
|
|
8
|
+
import { resolveChipColors, resolveChipSize } from "../internal/chipStyle.js";
|
|
9
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
10
|
+
/**
|
|
11
|
+
* Theme-agnostic pill-shaped tag — the single primitive for chip-style labels.
|
|
12
|
+
*
|
|
13
|
+
* GENERIC variants only (`default | info | success | warning`); domain chips
|
|
14
|
+
* (tea-companion's `'tea-type'`, espresso's diag chips) read per-app palettes
|
|
15
|
+
* and stay per app. Background + foreground come INLINE from {@link useColors}
|
|
16
|
+
* via the pure {@link resolveChipColors} helper — `default` uses neutral
|
|
17
|
+
* `bg.tertiary` / `text.secondary`, `success` uses `brand.primaryLight` /
|
|
18
|
+
* `brand.primaryDark`, and `info` / `warning` are translucent washes over the
|
|
19
|
+
* matching `semantic.*` colour. No hardcoded hex. Size geometry (padding, gap,
|
|
20
|
+
* icon/emoji sizing, text variant) comes from {@link resolveChipSize}.
|
|
21
|
+
*
|
|
22
|
+
* `icon` is an optional leading visual, colored to match the foreground.
|
|
23
|
+
* Layout (flex, radius, alignment) is applied INLINE from the library-owned
|
|
24
|
+
* {@link RADIUS} scale, so the chip renders with no NativeWind setup in the
|
|
25
|
+
* consumer; `style` is an inline override merged last.
|
|
26
|
+
*/
|
|
27
|
+
export const Chip = /*#__PURE__*/React.memo(function Chip({
|
|
28
|
+
variant = 'default',
|
|
29
|
+
label,
|
|
30
|
+
icon: Icon,
|
|
31
|
+
size = 'md',
|
|
32
|
+
style
|
|
33
|
+
}) {
|
|
34
|
+
const colors = useColors();
|
|
35
|
+
const palette = resolveChipColors(variant, {
|
|
36
|
+
colors
|
|
37
|
+
});
|
|
38
|
+
const dims = resolveChipSize(size);
|
|
39
|
+
const hasLeading = Boolean(Icon);
|
|
40
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
41
|
+
style: [{
|
|
42
|
+
flexDirection: 'row',
|
|
43
|
+
alignItems: 'center',
|
|
44
|
+
borderRadius: RADIUS.full,
|
|
45
|
+
alignSelf: 'flex-start',
|
|
46
|
+
backgroundColor: palette.bg,
|
|
47
|
+
paddingHorizontal: dims.paddingHorizontal,
|
|
48
|
+
paddingVertical: dims.paddingVertical,
|
|
49
|
+
gap: hasLeading ? dims.gap : 0
|
|
50
|
+
}, style],
|
|
51
|
+
children: [Icon ? /*#__PURE__*/_jsx(Icon, {
|
|
52
|
+
size: dims.iconSize,
|
|
53
|
+
color: palette.fg
|
|
54
|
+
}) : null, /*#__PURE__*/_jsx(Text, {
|
|
55
|
+
variant: dims.textVariant,
|
|
56
|
+
style: {
|
|
57
|
+
color: palette.fg
|
|
58
|
+
},
|
|
59
|
+
children: label
|
|
60
|
+
})]
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
//# sourceMappingURL=Chip.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","View","Text","useColors","RADIUS","resolveChipColors","resolveChipSize","jsx","_jsx","jsxs","_jsxs","Chip","memo","variant","label","icon","Icon","size","style","colors","palette","dims","hasLeading","Boolean","flexDirection","alignItems","borderRadius","full","alignSelf","backgroundColor","bg","paddingHorizontal","paddingVertical","gap","children","iconSize","color","fg","textVariant"],"sourceRoot":"../../../src","sources":["components/Chip.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,QAAwC,cAAc;AAEnE,SAASC,IAAI,QAAQ,WAAQ;AAC7B,SAASC,SAAS,QAAQ,2BAAwB;AAClD,SAASC,MAAM,QAAQ,mBAAgB;AACvC,SACEC,iBAAiB,EACjBC,eAAe,QAGV,0BAAuB;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAiB9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,IAAI,gBAAGX,KAAK,CAACY,IAAI,CAAC,SAASD,IAAIA,CAAC;EAC3CE,OAAO,GAAG,SAAS;EACnBC,KAAK;EACLC,IAAI,EAAEC,IAAI;EACVC,IAAI,GAAG,IAAI;EACXC;AACS,CAAC,EAAE;EACZ,MAAMC,MAAM,GAAGhB,SAAS,CAAC,CAAC;EAC1B,MAAMiB,OAAO,GAAGf,iBAAiB,CAACQ,OAAO,EAAE;IAAEM;EAAO,CAAC,CAAC;EACtD,MAAME,IAAI,GAAGf,eAAe,CAACW,IAAI,CAAC;EAElC,MAAMK,UAAU,GAAGC,OAAO,CAACP,IAAI,CAAC;EAEhC,oBACEN,KAAA,CAACT,IAAI;IACHiB,KAAK,EAAE,CACL;MACEM,aAAa,EAAE,KAAK;MACpBC,UAAU,EAAE,QAAQ;MACpBC,YAAY,EAAEtB,MAAM,CAACuB,IAAI;MACzBC,SAAS,EAAE,YAAY;MACvBC,eAAe,EAAET,OAAO,CAACU,EAAE;MAC3BC,iBAAiB,EAAEV,IAAI,CAACU,iBAAiB;MACzCC,eAAe,EAAEX,IAAI,CAACW,eAAe;MACrCC,GAAG,EAAEX,UAAU,GAAGD,IAAI,CAACY,GAAG,GAAG;IAC/B,CAAC,EACDf,KAAK,CACL;IAAAgB,QAAA,GAEDlB,IAAI,gBAAGR,IAAA,CAACQ,IAAI;MAACC,IAAI,EAAEI,IAAI,CAACc,QAAS;MAACC,KAAK,EAAEhB,OAAO,CAACiB;IAAG,CAAE,CAAC,GAAG,IAAI,eAC/D7B,IAAA,CAACN,IAAI;MAACW,OAAO,EAAEQ,IAAI,CAACiB,WAAY;MAACpB,KAAK,EAAE;QAAEkB,KAAK,EAAEhB,OAAO,CAACiB;MAAG,CAAE;MAAAH,QAAA,EAC3DpB;IAAK,CACF,CAAC;EAAA,CACH,CAAC;AAEX,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { View, ScrollView, Pressable } from 'react-native';
|
|
4
|
+
import { Text } from "./Text.js";
|
|
5
|
+
import { useColors } from "../theme/ThemeProvider.js";
|
|
6
|
+
import { SPACE } from "../theme/scale.js";
|
|
7
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
8
|
+
/**
|
|
9
|
+
* Theme-agnostic single-select chip group — a row (or wrapping grid) of pill
|
|
10
|
+
* chips where exactly one is active. Distinct from the static {@link Chip} tag:
|
|
11
|
+
* this owns selection state styling and tap handling.
|
|
12
|
+
*
|
|
13
|
+
* Every colour comes INLINE from {@link useColors}: the active `filled` chip
|
|
14
|
+
* fills with the chosen `brand.*` ramp (label `text.inverse`); the active
|
|
15
|
+
* `outlined` chip uses the `brand.*Light` wash (label the matching `brand.*`);
|
|
16
|
+
* inactive chips fill with `bg.secondary` (label `text.secondary`). The pilot
|
|
17
|
+
* consumer's var-backed text classes (`text-white`, `text-brand-*`) are replaced
|
|
18
|
+
* with inline theme colours per the one styling rule. Layout (gap + label
|
|
19
|
+
* spacing) is applied INLINE from the library-owned {@link SPACE} scale, so the
|
|
20
|
+
* chip group renders with no NativeWind setup in the consumer.
|
|
21
|
+
*/
|
|
22
|
+
export function ChipSelector({
|
|
23
|
+
options,
|
|
24
|
+
selected,
|
|
25
|
+
onSelect,
|
|
26
|
+
variant = 'filled',
|
|
27
|
+
color = 'primary',
|
|
28
|
+
layout = 'wrap',
|
|
29
|
+
shape = 'pill',
|
|
30
|
+
label,
|
|
31
|
+
contentPaddingHorizontal
|
|
32
|
+
}) {
|
|
33
|
+
const colors = useColors();
|
|
34
|
+
const borderRadius = shape === 'pill' ? 999 : 12;
|
|
35
|
+
const activeBg = {
|
|
36
|
+
filled: {
|
|
37
|
+
primary: colors.brand.primary,
|
|
38
|
+
secondary: colors.brand.secondary,
|
|
39
|
+
accent: colors.brand.accent
|
|
40
|
+
},
|
|
41
|
+
outlined: {
|
|
42
|
+
primary: colors.brand.primaryLight,
|
|
43
|
+
secondary: colors.brand.secondaryLight,
|
|
44
|
+
accent: colors.brand.accentLight
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
const activeInk = {
|
|
48
|
+
filled: {
|
|
49
|
+
primary: colors.text.inverse,
|
|
50
|
+
secondary: colors.text.inverse,
|
|
51
|
+
accent: colors.text.inverse
|
|
52
|
+
},
|
|
53
|
+
outlined: {
|
|
54
|
+
primary: colors.brand.primary,
|
|
55
|
+
secondary: colors.brand.secondary,
|
|
56
|
+
accent: colors.brand.accent
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
const renderChips = () => options.map(option => {
|
|
60
|
+
const isActive = option.value === selected;
|
|
61
|
+
// A per-option `color` overrides the ramp: filled with that colour, label
|
|
62
|
+
// in `text.inverse` (matching a filled active chip).
|
|
63
|
+
const activeBackground = option.color ?? activeBg[variant][color];
|
|
64
|
+
const activeForeground = option.color ? colors.text.inverse : activeInk[variant][color];
|
|
65
|
+
return /*#__PURE__*/_jsx(Pressable, {
|
|
66
|
+
onPress: () => onSelect(option.value),
|
|
67
|
+
accessibilityRole: "button",
|
|
68
|
+
accessibilityState: {
|
|
69
|
+
selected: isActive
|
|
70
|
+
},
|
|
71
|
+
accessibilityLabel: option.label,
|
|
72
|
+
style: {
|
|
73
|
+
flexShrink: 0,
|
|
74
|
+
paddingHorizontal: 16,
|
|
75
|
+
height: 36,
|
|
76
|
+
borderRadius,
|
|
77
|
+
alignItems: 'center',
|
|
78
|
+
justifyContent: 'center',
|
|
79
|
+
backgroundColor: isActive ? activeBackground : colors.bg.secondary
|
|
80
|
+
},
|
|
81
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
82
|
+
variant: "label-sm",
|
|
83
|
+
numberOfLines: 1,
|
|
84
|
+
style: {
|
|
85
|
+
color: isActive ? activeForeground : colors.text.secondary
|
|
86
|
+
},
|
|
87
|
+
children: option.label
|
|
88
|
+
})
|
|
89
|
+
}, option.value);
|
|
90
|
+
});
|
|
91
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
92
|
+
children: [label && /*#__PURE__*/_jsx(Text, {
|
|
93
|
+
variant: "label-md",
|
|
94
|
+
style: {
|
|
95
|
+
marginBottom: SPACE['1.5'],
|
|
96
|
+
color: colors.text.secondary
|
|
97
|
+
},
|
|
98
|
+
children: label
|
|
99
|
+
}), layout === 'wrap' ? /*#__PURE__*/_jsx(View, {
|
|
100
|
+
style: {
|
|
101
|
+
flexDirection: 'row',
|
|
102
|
+
flexWrap: 'wrap',
|
|
103
|
+
gap: SPACE['2'],
|
|
104
|
+
paddingHorizontal: contentPaddingHorizontal
|
|
105
|
+
},
|
|
106
|
+
children: renderChips()
|
|
107
|
+
}) : /*#__PURE__*/_jsx(ScrollView, {
|
|
108
|
+
horizontal: true,
|
|
109
|
+
showsHorizontalScrollIndicator: false,
|
|
110
|
+
contentContainerStyle: {
|
|
111
|
+
gap: 8,
|
|
112
|
+
alignItems: 'center',
|
|
113
|
+
paddingHorizontal: contentPaddingHorizontal
|
|
114
|
+
},
|
|
115
|
+
style: {
|
|
116
|
+
height: 44
|
|
117
|
+
},
|
|
118
|
+
children: renderChips()
|
|
119
|
+
})]
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
//# sourceMappingURL=ChipSelector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["View","ScrollView","Pressable","Text","useColors","SPACE","jsx","_jsx","jsxs","_jsxs","ChipSelector","options","selected","onSelect","variant","color","layout","shape","label","contentPaddingHorizontal","colors","borderRadius","activeBg","filled","primary","brand","secondary","accent","outlined","primaryLight","secondaryLight","accentLight","activeInk","text","inverse","renderChips","map","option","isActive","value","activeBackground","activeForeground","onPress","accessibilityRole","accessibilityState","accessibilityLabel","style","flexShrink","paddingHorizontal","height","alignItems","justifyContent","backgroundColor","bg","children","numberOfLines","marginBottom","flexDirection","flexWrap","gap","horizontal","showsHorizontalScrollIndicator","contentContainerStyle"],"sourceRoot":"../../../src","sources":["components/ChipSelector.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { useEffect, useId } from 'react';
|
|
4
|
+
import { View } from 'react-native';
|
|
5
|
+
import Animated, { useSharedValue, useAnimatedProps, withTiming, Easing, cancelAnimation } from 'react-native-reanimated';
|
|
6
|
+
import Svg, { Circle, Defs, LinearGradient, Stop } from 'react-native-svg';
|
|
7
|
+
import { useColors } from "../theme/ThemeProvider.js";
|
|
8
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
9
|
+
const AnimatedCircle = Animated.createAnimatedComponent(Circle);
|
|
10
|
+
const SWEEP_DURATION_MS = 800;
|
|
11
|
+
/**
|
|
12
|
+
* Theme-agnostic circular progress RING with a centered content slot — the
|
|
13
|
+
* generic primitive behind countdown dials, percentage gauges, and step
|
|
14
|
+
* meters. The app composes the center (time, percent, play/pause) and owns all
|
|
15
|
+
* domain logic (counting, formatting, infusion state); this ring only paints
|
|
16
|
+
* the arc and animates the sweep.
|
|
17
|
+
*
|
|
18
|
+
* Colour comes INLINE from {@link useColors}: the track defaults to
|
|
19
|
+
* `border.default` and the filled arc to a `brand.primary` → `brand.primaryDark`
|
|
20
|
+
* gradient (or a flat `brand.primary` when `gradient={false}`). The
|
|
21
|
+
* `strokeDashoffset` sweep is driven on the UI thread via `useAnimatedProps`, so
|
|
22
|
+
* pushing a new `progress` eases the arc without a JS-thread re-render. The arc
|
|
23
|
+
* starts at 12 o'clock (`rotate(-90)`) and grows clockwise.
|
|
24
|
+
*/
|
|
25
|
+
export function CircularProgress({
|
|
26
|
+
progress,
|
|
27
|
+
size = 200,
|
|
28
|
+
strokeWidth = 12,
|
|
29
|
+
trackColor,
|
|
30
|
+
gradient = true,
|
|
31
|
+
rounded = true,
|
|
32
|
+
animationDurationMs = SWEEP_DURATION_MS,
|
|
33
|
+
children,
|
|
34
|
+
style
|
|
35
|
+
}) {
|
|
36
|
+
const colors = useColors();
|
|
37
|
+
const radius = (size - strokeWidth) / 2;
|
|
38
|
+
const circumference = 2 * Math.PI * radius;
|
|
39
|
+
const center = size / 2;
|
|
40
|
+
const clamped = Math.min(Math.max(progress, 0), 1);
|
|
41
|
+
|
|
42
|
+
// A unique gradient id per instance — two rings on one screen must not share
|
|
43
|
+
// (or clobber) the same `<Defs>` entry. `useId()` returns colons (`:r0:`),
|
|
44
|
+
// which are invalid in an SVG element id / `url(#…)` reference and silently
|
|
45
|
+
// break gradient resolution, so strip them out.
|
|
46
|
+
const rawId = useId();
|
|
47
|
+
const gradientId = `everkit-progress-${rawId.replace(/:/g, '')}`;
|
|
48
|
+
|
|
49
|
+
// Drive `strokeDashoffset` on the UI thread; pushing a new `progress` eases
|
|
50
|
+
// the arc with no JS-thread re-render.
|
|
51
|
+
const progressValue = useSharedValue(clamped);
|
|
52
|
+
useEffect(() => {
|
|
53
|
+
progressValue.value = withTiming(clamped, {
|
|
54
|
+
duration: animationDurationMs,
|
|
55
|
+
easing: Easing.out(Easing.cubic)
|
|
56
|
+
});
|
|
57
|
+
}, [clamped, animationDurationMs]);
|
|
58
|
+
|
|
59
|
+
// Cancel the in-flight sweep on unmount.
|
|
60
|
+
useEffect(() => {
|
|
61
|
+
return () => cancelAnimation(progressValue);
|
|
62
|
+
}, []);
|
|
63
|
+
const progressArcProps = useAnimatedProps(() => ({
|
|
64
|
+
strokeDashoffset: circumference * (1 - progressValue.value)
|
|
65
|
+
}));
|
|
66
|
+
const stroke = gradient ? `url(#${gradientId})` : colors.brand.primary;
|
|
67
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
68
|
+
style: [{
|
|
69
|
+
width: size,
|
|
70
|
+
height: size,
|
|
71
|
+
alignItems: 'center',
|
|
72
|
+
justifyContent: 'center'
|
|
73
|
+
}, style],
|
|
74
|
+
children: [/*#__PURE__*/_jsxs(Svg, {
|
|
75
|
+
width: size,
|
|
76
|
+
height: size,
|
|
77
|
+
style: {
|
|
78
|
+
position: 'absolute'
|
|
79
|
+
},
|
|
80
|
+
children: [/*#__PURE__*/_jsx(Defs, {
|
|
81
|
+
children: /*#__PURE__*/_jsxs(LinearGradient, {
|
|
82
|
+
id: gradientId,
|
|
83
|
+
x1: "0",
|
|
84
|
+
y1: "0",
|
|
85
|
+
x2: "0",
|
|
86
|
+
y2: "1",
|
|
87
|
+
children: [/*#__PURE__*/_jsx(Stop, {
|
|
88
|
+
offset: "0",
|
|
89
|
+
stopColor: colors.brand.primary
|
|
90
|
+
}), /*#__PURE__*/_jsx(Stop, {
|
|
91
|
+
offset: "1",
|
|
92
|
+
stopColor: colors.brand.primaryDark
|
|
93
|
+
})]
|
|
94
|
+
})
|
|
95
|
+
}), /*#__PURE__*/_jsx(Circle, {
|
|
96
|
+
cx: center,
|
|
97
|
+
cy: center,
|
|
98
|
+
r: radius,
|
|
99
|
+
stroke: trackColor ?? colors.border.default,
|
|
100
|
+
strokeWidth: strokeWidth,
|
|
101
|
+
fill: "none"
|
|
102
|
+
}), /*#__PURE__*/_jsx(AnimatedCircle, {
|
|
103
|
+
cx: center,
|
|
104
|
+
cy: center,
|
|
105
|
+
r: radius,
|
|
106
|
+
stroke: stroke,
|
|
107
|
+
strokeWidth: strokeWidth,
|
|
108
|
+
fill: "none",
|
|
109
|
+
strokeDasharray: circumference,
|
|
110
|
+
strokeLinecap: rounded ? 'round' : 'butt',
|
|
111
|
+
transform: `rotate(-90 ${center} ${center})`,
|
|
112
|
+
animatedProps: progressArcProps
|
|
113
|
+
})]
|
|
114
|
+
}), children != null && /*#__PURE__*/_jsx(View, {
|
|
115
|
+
style: {
|
|
116
|
+
alignItems: 'center',
|
|
117
|
+
justifyContent: 'center'
|
|
118
|
+
},
|
|
119
|
+
children: children
|
|
120
|
+
})]
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
//# sourceMappingURL=CircularProgress.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useEffect","useId","View","Animated","useSharedValue","useAnimatedProps","withTiming","Easing","cancelAnimation","Svg","Circle","Defs","LinearGradient","Stop","useColors","jsx","_jsx","jsxs","_jsxs","AnimatedCircle","createAnimatedComponent","SWEEP_DURATION_MS","CircularProgress","progress","size","strokeWidth","trackColor","gradient","rounded","animationDurationMs","children","style","colors","radius","circumference","Math","PI","center","clamped","min","max","rawId","gradientId","replace","progressValue","value","duration","easing","out","cubic","progressArcProps","strokeDashoffset","stroke","brand","primary","width","height","alignItems","justifyContent","position","id","x1","y1","x2","y2","offset","stopColor","primaryDark","cx","cy","r","border","default","fill","strokeDasharray","strokeLinecap","transform","animatedProps"],"sourceRoot":"../../../src","sources":["components/CircularProgress.tsx"],"mappings":"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","ignoreList":[]}
|