@webority/mobile-ui 0.88.1 → 0.89.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 +2 -0
- package/lib/commonjs/canvasKit/index.js +1 -1
- package/lib/commonjs/components/Accordion/Accordion.js +1 -1
- package/lib/commonjs/components/AmountSlider/AmountSlider.js +1 -1
- package/lib/commonjs/components/AnimatePresence/AnimatePresence.js +1 -1
- package/lib/commonjs/components/AppBar/AppBar.js +1 -1
- package/lib/commonjs/components/AppIcon/AppIcon.js +1 -1
- package/lib/commonjs/components/AsyncBlock/AsyncBlock.js +1 -1
- package/lib/commonjs/components/AuthedImage/AuthedImage.js +1 -1
- package/lib/commonjs/components/Autocomplete/Autocomplete.js +1 -1
- package/lib/commonjs/components/Avatar/Avatar.js +1 -1
- package/lib/commonjs/components/Badge/Badge.js +1 -1
- package/lib/commonjs/components/Banner/Banner.js +1 -1
- package/lib/commonjs/components/BarChart/BarChart.js +1 -1
- package/lib/commonjs/components/BottomNavigation/BottomNavigation.js +1 -1
- package/lib/commonjs/components/BottomSheet/BottomSheet.js +1 -1
- package/lib/commonjs/components/Box/Box.js +1 -1
- package/lib/commonjs/components/Button/Button.js +1 -1
- package/lib/commonjs/components/Calendar/Calendar.js +1 -1
- package/lib/commonjs/components/Calendar/CalendarDay.js +1 -1
- package/lib/commonjs/components/Calendar/calendarStyles.js +1 -1
- package/lib/commonjs/components/Card/Card.js +1 -1
- package/lib/commonjs/components/Carousel/Carousel.js +1 -1
- package/lib/commonjs/components/Checkbox/Checkbox.js +1 -1
- package/lib/commonjs/components/Chip/Chip.js +1 -1
- package/lib/commonjs/components/ChoiceGroup/ChoiceGroup.js +1 -1
- package/lib/commonjs/components/Composer/Composer.js +1 -1
- package/lib/commonjs/components/Confetti/Confetti.js +1 -1
- package/lib/commonjs/components/DatePicker/DatePicker.js +1 -1
- package/lib/commonjs/components/DateRangePicker/DateRangePicker.js +1 -1
- package/lib/commonjs/components/DateSeparator/DateSeparator.js +1 -1
- package/lib/commonjs/components/Descriptions/Descriptions.js +1 -1
- package/lib/commonjs/components/Dialog/Dialog.js +1 -1
- package/lib/commonjs/components/Divider/Divider.js +1 -1
- package/lib/commonjs/components/Drawer/Drawer.js +1 -1
- package/lib/commonjs/components/EmptyState/EmptyState.js +1 -1
- package/lib/commonjs/components/ErrorBoundary/ErrorBoundary.js +1 -1
- package/lib/commonjs/components/FieldBase/Chevron.js +1 -1
- package/lib/commonjs/components/FieldBase/ChoiceText.js +1 -1
- package/lib/commonjs/components/FieldBase/FieldBase.js +1 -1
- package/lib/commonjs/components/FieldBase/useFloatingLabel.js +1 -1
- package/lib/commonjs/components/FilePicker/FilePicker.js +1 -1
- package/lib/commonjs/components/FileViewer/FileViewer.js +1 -1
- package/lib/commonjs/components/FilterChipRow/FilterChipRow.js +1 -1
- package/lib/commonjs/components/FloatingActionButton/FloatingActionButton.js +1 -1
- package/lib/commonjs/components/FormField/FormField.js +1 -1
- package/lib/commonjs/components/IconBadge/IconBadge.js +1 -1
- package/lib/commonjs/components/IconButton/IconButton.js +1 -1
- package/lib/commonjs/components/ImageGallery/ImageGallery.js +1 -1
- package/lib/commonjs/components/InlineSelect/InlineSelect.js +1 -1
- package/lib/commonjs/components/Input/Input.js +1 -1
- package/lib/commonjs/components/KeyboardAwareScrollView/KeyboardAwareScrollView.js +1 -1
- package/lib/commonjs/components/KeyboardToolbar/KeyboardToolbar.js +1 -1
- package/lib/commonjs/components/ListItem/ListItem.js +1 -1
- package/lib/commonjs/components/LoaderOverlay/LoaderOverlay.js +1 -1
- package/lib/commonjs/components/Markdown/Markdown.js +1 -1
- package/lib/commonjs/components/Menu/MenuSurface.js +1 -1
- package/lib/commonjs/components/MessageBubble/MessageBubble.js +1 -1
- package/lib/commonjs/components/MessageList/MessageList.js +1 -1
- package/lib/commonjs/components/Modal/Modal.js +1 -1
- package/lib/commonjs/components/Notation/Notation.js +1 -1
- package/lib/commonjs/components/NumberInput/NumberInput.js +1 -1
- package/lib/commonjs/components/OTPInput/OTPInput.js +1 -1
- package/lib/commonjs/components/OnboardingPager/OnboardingPager.js +1 -1
- package/lib/commonjs/components/OptionSheet/OptionSheet.js +1 -1
- package/lib/commonjs/components/PaymentResult/PaymentResult.js +1 -1
- package/lib/commonjs/components/PermissionPrompt/PermissionPrompt.js +1 -1
- package/lib/commonjs/components/PhoneNumberInput/PhoneNumberInput.js +1 -1
- package/lib/commonjs/components/PickerTrigger/PickerTrigger.js +1 -1
- package/lib/commonjs/components/ProfileCompletion/ProfileCompletion.js +1 -1
- package/lib/commonjs/components/ProfilePicker/ProfilePicker.js +1 -1
- package/lib/commonjs/components/ProgressBar/ProgressBar.js +1 -1
- package/lib/commonjs/components/ProgressRing/ProgressRing.js +1 -1
- package/lib/commonjs/components/Radio/Radio.js +1 -1
- package/lib/commonjs/components/Radio/RadioDot.js +1 -1
- package/lib/commonjs/components/Rating/Rating.js +1 -1
- package/lib/commonjs/components/Repeater/Repeater.js +1 -1
- package/lib/commonjs/components/RichTextEditor/RichTextEditor.js +1 -1
- package/lib/commonjs/components/ScannerOverlay/ScannerOverlay.js +1 -1
- package/lib/commonjs/components/Screen/Screen.js +1 -1
- package/lib/commonjs/components/SearchBar/SearchBar.js +1 -1
- package/lib/commonjs/components/SearchBar/SearchPanel.js +1 -1
- package/lib/commonjs/components/SectionHeader/SectionHeader.js +1 -1
- package/lib/commonjs/components/SegmentedControl/SegmentedControl.js +1 -1
- package/lib/commonjs/components/Select/Select.js +1 -1
- package/lib/commonjs/components/SignaturePad/SignaturePad.js +1 -1
- package/lib/commonjs/components/Skeleton/Skeleton.js +1 -1
- package/lib/commonjs/components/Skeleton/SkeletonContent.js +1 -1
- package/lib/commonjs/components/SlideToConfirm/SlideToConfirm.js +1 -1
- package/lib/commonjs/components/Slider/Slider.js +1 -1
- package/lib/commonjs/components/Slider/valueText.js +1 -1
- package/lib/commonjs/components/SliderField/SliderField.js +1 -1
- package/lib/commonjs/components/Sparkline/Sparkline.js +1 -1
- package/lib/commonjs/components/Spinner/Spinner.js +1 -1
- package/lib/commonjs/components/StatTile/StatTile.js +1 -1
- package/lib/commonjs/components/StatusBadge/StatusBadge.js +1 -1
- package/lib/commonjs/components/Stepper/Stepper.js +1 -1
- package/lib/commonjs/components/Swipeable/Swipeable.js +1 -1
- package/lib/commonjs/components/Switch/Switch.js +1 -1
- package/lib/commonjs/components/Tabs/Tabs.js +1 -1
- package/lib/commonjs/components/TagInput/TagInput.js +1 -1
- package/lib/commonjs/components/Text/Text.js +1 -1
- package/lib/commonjs/components/TimePicker/TimePicker.js +1 -1
- package/lib/commonjs/components/Timeline/Timeline.js +1 -1
- package/lib/commonjs/components/Toast/Toast.js +1 -1
- package/lib/commonjs/components/Toast/ToastProvider.js +1 -1
- package/lib/commonjs/components/Tooltip/RichTooltipBody.js +1 -1
- package/lib/commonjs/components/Tooltip/Tooltip.js +1 -1
- package/lib/commonjs/components/Tour/Tour.js +1 -1
- package/lib/commonjs/components/TypingIndicator/TypingIndicator.js +1 -1
- package/lib/commonjs/components/WheelPicker/Wheel.js +1 -1
- package/lib/commonjs/components/WheelPicker/WheelPicker.js +1 -1
- package/lib/commonjs/hooks/useDragToDismiss.js +1 -1
- package/lib/commonjs/hooks/usePressAnimation.js +1 -1
- package/lib/commonjs/hooks/useRefreshControl.js +1 -1
- package/lib/commonjs/index.js +1 -1
- package/lib/commonjs/initUI.js +1 -1
- package/lib/commonjs/network/NetworkStatusBanner.js +1 -1
- package/lib/commonjs/theme/ThemeContext.js +1 -1
- package/lib/commonjs/theme/componentSizes.js +1 -1
- package/lib/commonjs/theme/index.js +1 -1
- package/lib/commonjs/theme/merge.js +1 -1
- package/lib/commonjs/theme/scale.js +1 -1
- package/lib/commonjs/theme/textStyle.js +1 -1
- package/lib/commonjs/theme/tokens.generated.js +1 -1
- package/lib/commonjs/theme/tokens.js +1 -1
- package/lib/commonjs/utils/color.js +1 -1
- package/lib/module/canvasKit/index.js +1 -1
- package/lib/module/components/Accordion/Accordion.js +1 -1
- package/lib/module/components/AmountSlider/AmountSlider.js +1 -1
- package/lib/module/components/AnimatePresence/AnimatePresence.js +1 -1
- package/lib/module/components/AppBar/AppBar.js +1 -1
- package/lib/module/components/AppIcon/AppIcon.js +1 -1
- package/lib/module/components/AsyncBlock/AsyncBlock.js +1 -1
- package/lib/module/components/AuthedImage/AuthedImage.js +1 -1
- package/lib/module/components/Autocomplete/Autocomplete.js +1 -1
- package/lib/module/components/Avatar/Avatar.js +1 -1
- package/lib/module/components/Badge/Badge.js +1 -1
- package/lib/module/components/Banner/Banner.js +1 -1
- package/lib/module/components/BarChart/BarChart.js +1 -1
- package/lib/module/components/BottomNavigation/BottomNavigation.js +1 -1
- package/lib/module/components/BottomSheet/BottomSheet.js +1 -1
- package/lib/module/components/Box/Box.js +1 -1
- package/lib/module/components/Button/Button.js +1 -1
- package/lib/module/components/Calendar/Calendar.js +1 -1
- package/lib/module/components/Calendar/CalendarDay.js +1 -1
- package/lib/module/components/Calendar/calendarStyles.js +1 -1
- package/lib/module/components/Card/Card.js +1 -1
- package/lib/module/components/Carousel/Carousel.js +1 -1
- package/lib/module/components/Checkbox/Checkbox.js +1 -1
- package/lib/module/components/Chip/Chip.js +1 -1
- package/lib/module/components/ChoiceGroup/ChoiceGroup.js +1 -1
- package/lib/module/components/Composer/Composer.js +1 -1
- package/lib/module/components/Confetti/Confetti.js +1 -1
- package/lib/module/components/DatePicker/DatePicker.js +1 -1
- package/lib/module/components/DateRangePicker/DateRangePicker.js +1 -1
- package/lib/module/components/DateSeparator/DateSeparator.js +1 -1
- package/lib/module/components/Descriptions/Descriptions.js +1 -1
- package/lib/module/components/Dialog/Dialog.js +1 -1
- package/lib/module/components/Divider/Divider.js +1 -1
- package/lib/module/components/Drawer/Drawer.js +1 -1
- package/lib/module/components/EmptyState/EmptyState.js +1 -1
- package/lib/module/components/ErrorBoundary/ErrorBoundary.js +1 -1
- package/lib/module/components/FieldBase/Chevron.js +1 -1
- package/lib/module/components/FieldBase/ChoiceText.js +1 -1
- package/lib/module/components/FieldBase/FieldBase.js +1 -1
- package/lib/module/components/FieldBase/useFloatingLabel.js +1 -1
- package/lib/module/components/FilePicker/FilePicker.js +1 -1
- package/lib/module/components/FileViewer/FileViewer.js +1 -1
- package/lib/module/components/FilterChipRow/FilterChipRow.js +1 -1
- package/lib/module/components/FloatingActionButton/FloatingActionButton.js +1 -1
- package/lib/module/components/FormField/FormField.js +1 -1
- package/lib/module/components/IconBadge/IconBadge.js +1 -1
- package/lib/module/components/IconButton/IconButton.js +1 -1
- package/lib/module/components/ImageGallery/ImageGallery.js +1 -1
- package/lib/module/components/InlineSelect/InlineSelect.js +1 -1
- package/lib/module/components/Input/Input.js +1 -1
- package/lib/module/components/KeyboardAwareScrollView/KeyboardAwareScrollView.js +1 -1
- package/lib/module/components/KeyboardToolbar/KeyboardToolbar.js +1 -1
- package/lib/module/components/ListItem/ListItem.js +1 -1
- package/lib/module/components/LoaderOverlay/LoaderOverlay.js +1 -1
- package/lib/module/components/Markdown/Markdown.js +1 -1
- package/lib/module/components/Menu/MenuSurface.js +1 -1
- package/lib/module/components/MessageBubble/MessageBubble.js +1 -1
- package/lib/module/components/MessageList/MessageList.js +1 -1
- package/lib/module/components/Modal/Modal.js +1 -1
- package/lib/module/components/Notation/Notation.js +1 -1
- package/lib/module/components/NumberInput/NumberInput.js +1 -1
- package/lib/module/components/OTPInput/OTPInput.js +1 -1
- package/lib/module/components/OnboardingPager/OnboardingPager.js +1 -1
- package/lib/module/components/OptionSheet/OptionSheet.js +1 -1
- package/lib/module/components/PaymentResult/PaymentResult.js +1 -1
- package/lib/module/components/PermissionPrompt/PermissionPrompt.js +1 -1
- package/lib/module/components/PhoneNumberInput/PhoneNumberInput.js +1 -1
- package/lib/module/components/PickerTrigger/PickerTrigger.js +1 -1
- package/lib/module/components/ProfileCompletion/ProfileCompletion.js +1 -1
- package/lib/module/components/ProfilePicker/ProfilePicker.js +1 -1
- package/lib/module/components/ProgressBar/ProgressBar.js +1 -1
- package/lib/module/components/ProgressRing/ProgressRing.js +1 -1
- package/lib/module/components/Radio/Radio.js +1 -1
- package/lib/module/components/Radio/RadioDot.js +1 -1
- package/lib/module/components/Rating/Rating.js +1 -1
- package/lib/module/components/Repeater/Repeater.js +1 -1
- package/lib/module/components/RichTextEditor/RichTextEditor.js +1 -1
- package/lib/module/components/ScannerOverlay/ScannerOverlay.js +1 -1
- package/lib/module/components/Screen/Screen.js +1 -1
- package/lib/module/components/SearchBar/SearchBar.js +1 -1
- package/lib/module/components/SearchBar/SearchPanel.js +1 -1
- package/lib/module/components/SectionHeader/SectionHeader.js +1 -1
- package/lib/module/components/SegmentedControl/SegmentedControl.js +1 -1
- package/lib/module/components/Select/Select.js +1 -1
- package/lib/module/components/SignaturePad/SignaturePad.js +1 -1
- package/lib/module/components/Skeleton/Skeleton.js +1 -1
- package/lib/module/components/Skeleton/SkeletonContent.js +1 -1
- package/lib/module/components/SlideToConfirm/SlideToConfirm.js +1 -1
- package/lib/module/components/Slider/Slider.js +1 -1
- package/lib/module/components/Slider/valueText.js +1 -1
- package/lib/module/components/SliderField/SliderField.js +1 -1
- package/lib/module/components/Sparkline/Sparkline.js +1 -1
- package/lib/module/components/Spinner/Spinner.js +1 -1
- package/lib/module/components/StatTile/StatTile.js +1 -1
- package/lib/module/components/StatusBadge/StatusBadge.js +1 -1
- package/lib/module/components/Stepper/Stepper.js +1 -1
- package/lib/module/components/Swipeable/Swipeable.js +1 -1
- package/lib/module/components/Switch/Switch.js +1 -1
- package/lib/module/components/Tabs/Tabs.js +1 -1
- package/lib/module/components/TagInput/TagInput.js +1 -1
- package/lib/module/components/Text/Text.js +1 -1
- package/lib/module/components/TimePicker/TimePicker.js +1 -1
- package/lib/module/components/Timeline/Timeline.js +1 -1
- package/lib/module/components/Toast/Toast.js +1 -1
- package/lib/module/components/Toast/ToastProvider.js +1 -1
- package/lib/module/components/Tooltip/RichTooltipBody.js +1 -1
- package/lib/module/components/Tooltip/Tooltip.js +1 -1
- package/lib/module/components/Tour/Tour.js +1 -1
- package/lib/module/components/TypingIndicator/TypingIndicator.js +1 -1
- package/lib/module/components/WheelPicker/Wheel.js +1 -1
- package/lib/module/components/WheelPicker/WheelPicker.js +1 -1
- package/lib/module/hooks/useDragToDismiss.js +1 -1
- package/lib/module/hooks/usePressAnimation.js +1 -1
- package/lib/module/hooks/useRefreshControl.js +1 -1
- package/lib/module/index.js +1 -1
- package/lib/module/initUI.js +1 -1
- package/lib/module/network/NetworkStatusBanner.js +1 -1
- package/lib/module/theme/ThemeContext.js +1 -1
- package/lib/module/theme/componentSizes.js +1 -1
- package/lib/module/theme/index.js +1 -1
- package/lib/module/theme/merge.js +1 -1
- package/lib/module/theme/scale.js +1 -1
- package/lib/module/theme/textStyle.js +1 -1
- package/lib/module/theme/tokens.generated.js +1 -1
- package/lib/module/theme/tokens.js +1 -1
- package/lib/module/utils/color.js +1 -1
- package/lib/typescript/commonjs/components/AmountSlider/AmountSlider.d.ts +1 -1
- package/lib/typescript/commonjs/components/AnimatePresence/AnimatePresence.d.ts +1 -1
- package/lib/typescript/commonjs/components/AppBar/AppBar.d.ts +4 -4
- package/lib/typescript/commonjs/components/AppIcon/AppIcon.d.ts +1 -1
- package/lib/typescript/commonjs/components/AppIcon/defaultIcons.d.ts +1 -1
- package/lib/typescript/commonjs/components/Avatar/Avatar.d.ts +4 -4
- package/lib/typescript/commonjs/components/Badge/Badge.d.ts +1 -1
- package/lib/typescript/commonjs/components/Banner/Banner.d.ts +1 -1
- package/lib/typescript/commonjs/components/BarChart/BarChart.d.ts +1 -1
- package/lib/typescript/commonjs/components/BottomNavigation/BottomNavigation.d.ts +8 -10
- package/lib/typescript/commonjs/components/BottomSheet/BottomSheet.d.ts +2 -2
- package/lib/typescript/commonjs/components/Box/Box.d.ts +21 -21
- package/lib/typescript/commonjs/components/Button/Button.d.ts +3 -3
- package/lib/typescript/commonjs/components/Calendar/Calendar.d.ts +1 -1
- package/lib/typescript/commonjs/components/Calendar/calendarStyles.d.ts +9 -9
- package/lib/typescript/commonjs/components/Card/Card.d.ts +7 -6
- package/lib/typescript/commonjs/components/Checkbox/Checkbox.d.ts +1 -1
- package/lib/typescript/commonjs/components/Chip/Chip.d.ts +1 -1
- package/lib/typescript/commonjs/components/ChoiceGroup/ChoiceGroup.d.ts +1 -1
- package/lib/typescript/commonjs/components/Dialog/Dialog.d.ts +2 -2
- package/lib/typescript/commonjs/components/FieldBase/Chevron.d.ts +1 -1
- package/lib/typescript/commonjs/components/FieldBase/FieldBase.d.ts +32 -33
- package/lib/typescript/commonjs/components/FieldBase/useFloatingLabel.d.ts +2 -3
- package/lib/typescript/commonjs/components/FloatingActionButton/FloatingActionButton.d.ts +2 -2
- package/lib/typescript/commonjs/components/FormField/FormField.d.ts +2 -3
- package/lib/typescript/commonjs/components/IconBadge/IconBadge.d.ts +1 -1
- package/lib/typescript/commonjs/components/IconButton/IconButton.d.ts +2 -2
- package/lib/typescript/commonjs/components/InlineSelect/InlineSelect.d.ts +2 -3
- package/lib/typescript/commonjs/components/Input/Input.d.ts +2 -2
- package/lib/typescript/commonjs/components/Notation/Notation.d.ts +1 -1
- package/lib/typescript/commonjs/components/OptionSheet/OptionSheet.d.ts +2 -2
- package/lib/typescript/commonjs/components/PickerTrigger/PickerTrigger.d.ts +2 -3
- package/lib/typescript/commonjs/components/ProfileCompletion/ProfileCompletion.d.ts +3 -4
- package/lib/typescript/commonjs/components/ProfilePicker/ProfilePicker.d.ts +5 -6
- package/lib/typescript/commonjs/components/ProgressBar/ProgressBar.d.ts +1 -1
- package/lib/typescript/commonjs/components/ProgressRing/ProgressRing.d.ts +6 -7
- package/lib/typescript/commonjs/components/Radio/Radio.d.ts +1 -1
- package/lib/typescript/commonjs/components/SearchBar/SearchBar.d.ts +1 -1
- package/lib/typescript/commonjs/components/SegmentedControl/SegmentedControl.d.ts +3 -4
- package/lib/typescript/commonjs/components/Select/Select.d.ts +5 -5
- package/lib/typescript/commonjs/components/Skeleton/Skeleton.d.ts +2 -2
- package/lib/typescript/commonjs/components/SlideToConfirm/SlideToConfirm.d.ts +1 -1
- package/lib/typescript/commonjs/components/Slider/Slider.d.ts +6 -7
- package/lib/typescript/commonjs/components/Slider/valueText.d.ts +1 -1
- package/lib/typescript/commonjs/components/Sparkline/Sparkline.d.ts +1 -1
- package/lib/typescript/commonjs/components/StatusBadge/StatusBadge.d.ts +2 -3
- package/lib/typescript/commonjs/components/Swipeable/Swipeable.d.ts +2 -2
- package/lib/typescript/commonjs/components/Switch/Switch.d.ts +1 -1
- package/lib/typescript/commonjs/components/Tabs/Tabs.d.ts +6 -7
- package/lib/typescript/commonjs/components/Text/Text.d.ts +6 -7
- package/lib/typescript/commonjs/components/Timeline/Timeline.d.ts +1 -1
- package/lib/typescript/commonjs/components/Toast/Toast.d.ts +1 -1
- package/lib/typescript/commonjs/components/Toast/ToastProvider.d.ts +2 -2
- package/lib/typescript/commonjs/components/Tour/Tour.d.ts +2 -2
- package/lib/typescript/commonjs/hooks/usePresenceMotion.d.ts +2 -2
- package/lib/typescript/commonjs/index.d.ts +2 -2
- package/lib/typescript/commonjs/initUI.d.ts +3 -3
- package/lib/typescript/commonjs/theme/ThemeContext.d.ts +5 -3
- package/lib/typescript/commonjs/theme/componentSizes.d.ts +40 -18
- package/lib/typescript/commonjs/theme/index.d.ts +15 -17
- package/lib/typescript/commonjs/theme/merge.d.ts +15 -2
- package/lib/typescript/commonjs/theme/scale.d.ts +6 -4
- package/lib/typescript/commonjs/theme/textStyle.d.ts +4 -17
- package/lib/typescript/commonjs/theme/tokens.generated.d.ts +239 -92
- package/lib/typescript/commonjs/theme/types.d.ts +104 -347
- package/lib/typescript/commonjs/utils/color.d.ts +6 -2
- package/lib/typescript/commonjs/utils/shadows.d.ts +2 -2
- package/lib/typescript/module/components/AmountSlider/AmountSlider.d.ts +1 -1
- package/lib/typescript/module/components/AnimatePresence/AnimatePresence.d.ts +1 -1
- package/lib/typescript/module/components/AppBar/AppBar.d.ts +4 -4
- package/lib/typescript/module/components/AppIcon/AppIcon.d.ts +1 -1
- package/lib/typescript/module/components/AppIcon/defaultIcons.d.ts +1 -1
- package/lib/typescript/module/components/Avatar/Avatar.d.ts +4 -4
- package/lib/typescript/module/components/Badge/Badge.d.ts +1 -1
- package/lib/typescript/module/components/Banner/Banner.d.ts +1 -1
- package/lib/typescript/module/components/BarChart/BarChart.d.ts +1 -1
- package/lib/typescript/module/components/BottomNavigation/BottomNavigation.d.ts +8 -10
- package/lib/typescript/module/components/BottomSheet/BottomSheet.d.ts +2 -2
- package/lib/typescript/module/components/Box/Box.d.ts +21 -21
- package/lib/typescript/module/components/Button/Button.d.ts +3 -3
- package/lib/typescript/module/components/Calendar/Calendar.d.ts +1 -1
- package/lib/typescript/module/components/Calendar/calendarStyles.d.ts +9 -9
- package/lib/typescript/module/components/Card/Card.d.ts +7 -6
- package/lib/typescript/module/components/Checkbox/Checkbox.d.ts +1 -1
- package/lib/typescript/module/components/Chip/Chip.d.ts +1 -1
- package/lib/typescript/module/components/ChoiceGroup/ChoiceGroup.d.ts +1 -1
- package/lib/typescript/module/components/Dialog/Dialog.d.ts +2 -2
- package/lib/typescript/module/components/FieldBase/Chevron.d.ts +1 -1
- package/lib/typescript/module/components/FieldBase/FieldBase.d.ts +32 -33
- package/lib/typescript/module/components/FieldBase/useFloatingLabel.d.ts +2 -3
- package/lib/typescript/module/components/FloatingActionButton/FloatingActionButton.d.ts +2 -2
- package/lib/typescript/module/components/FormField/FormField.d.ts +2 -3
- package/lib/typescript/module/components/IconBadge/IconBadge.d.ts +1 -1
- package/lib/typescript/module/components/IconButton/IconButton.d.ts +2 -2
- package/lib/typescript/module/components/InlineSelect/InlineSelect.d.ts +2 -3
- package/lib/typescript/module/components/Input/Input.d.ts +2 -2
- package/lib/typescript/module/components/Notation/Notation.d.ts +1 -1
- package/lib/typescript/module/components/OptionSheet/OptionSheet.d.ts +2 -2
- package/lib/typescript/module/components/PickerTrigger/PickerTrigger.d.ts +2 -3
- package/lib/typescript/module/components/ProfileCompletion/ProfileCompletion.d.ts +3 -4
- package/lib/typescript/module/components/ProfilePicker/ProfilePicker.d.ts +5 -6
- package/lib/typescript/module/components/ProgressBar/ProgressBar.d.ts +1 -1
- package/lib/typescript/module/components/ProgressRing/ProgressRing.d.ts +6 -7
- package/lib/typescript/module/components/Radio/Radio.d.ts +1 -1
- package/lib/typescript/module/components/SearchBar/SearchBar.d.ts +1 -1
- package/lib/typescript/module/components/SegmentedControl/SegmentedControl.d.ts +3 -4
- package/lib/typescript/module/components/Select/Select.d.ts +5 -5
- package/lib/typescript/module/components/Skeleton/Skeleton.d.ts +2 -2
- package/lib/typescript/module/components/SlideToConfirm/SlideToConfirm.d.ts +1 -1
- package/lib/typescript/module/components/Slider/Slider.d.ts +6 -7
- package/lib/typescript/module/components/Slider/valueText.d.ts +1 -1
- package/lib/typescript/module/components/Sparkline/Sparkline.d.ts +1 -1
- package/lib/typescript/module/components/StatusBadge/StatusBadge.d.ts +2 -3
- package/lib/typescript/module/components/Swipeable/Swipeable.d.ts +2 -2
- package/lib/typescript/module/components/Switch/Switch.d.ts +1 -1
- package/lib/typescript/module/components/Tabs/Tabs.d.ts +6 -7
- package/lib/typescript/module/components/Text/Text.d.ts +6 -7
- package/lib/typescript/module/components/Timeline/Timeline.d.ts +1 -1
- package/lib/typescript/module/components/Toast/Toast.d.ts +1 -1
- package/lib/typescript/module/components/Toast/ToastProvider.d.ts +2 -2
- package/lib/typescript/module/components/Tour/Tour.d.ts +2 -2
- package/lib/typescript/module/hooks/usePresenceMotion.d.ts +2 -2
- package/lib/typescript/module/index.d.ts +2 -2
- package/lib/typescript/module/initUI.d.ts +3 -3
- package/lib/typescript/module/theme/ThemeContext.d.ts +5 -3
- package/lib/typescript/module/theme/componentSizes.d.ts +40 -18
- package/lib/typescript/module/theme/index.d.ts +15 -17
- package/lib/typescript/module/theme/merge.d.ts +15 -2
- package/lib/typescript/module/theme/scale.d.ts +6 -4
- package/lib/typescript/module/theme/textStyle.d.ts +4 -17
- package/lib/typescript/module/theme/tokens.generated.d.ts +239 -92
- package/lib/typescript/module/theme/types.d.ts +104 -347
- package/lib/typescript/module/utils/color.d.ts +6 -2
- package/lib/typescript/module/utils/shadows.d.ts +2 -2
- package/package.json +8 -15
- package/lib/commonjs/theme/componentTokens.js +0 -1
- package/lib/commonjs/theme/retiredThemeKeys.js +0 -1
- package/lib/module/theme/componentTokens.js +0 -1
- package/lib/module/theme/retiredThemeKeys.js +0 -1
- package/lib/typescript/commonjs/theme/componentTokens.d.ts +0 -762
- package/lib/typescript/commonjs/theme/retiredThemeKeys.d.ts +0 -22
- package/lib/typescript/module/theme/componentTokens.d.ts +0 -762
- package/lib/typescript/module/theme/retiredThemeKeys.d.ts +0 -22
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Toast=void 0;var _react=require("react"),_reactNative=require("react-native"),_usePresenceMotion=require("../../hooks/usePresenceMotion.js"),_index=require("../../theme/index.js"),_corners=require("../../utils/corners.js"),_jsxRuntime=require("react/jsx-runtime");const DEFAULT_SWIPE_DISMISS_THRESHOLD=80,DEFAULT_SWIPE_VELOCITY_THRESHOLD=.5,DEFAULT_STACK_OFFSET=8,DEFAULT_STACK_SCALE_STEP=.04,DEFAULT_AUTO_DISMISS_MS=3e3,WEB_ACTION_MIN_DURATION_MS=8e3,COUNTDOWN_BAR_HEIGHT=3,ACTION_HIT_SLOP={top:10,bottom:10,left:10,right:10},DISMISS_ACTIONS=[{name:"dismiss",label:"Dismiss"}],Toast=({toast:e,index:t,onDismiss:i,shownAt:a,runtime:n})=>{const r=(0,_index.useTheme)(),s=(0,_usePresenceMotion.usePresenceMotion)(),o=s.duration("fast"),c=e.variant??"default",l=e.position??"bottom",u=(0,_react.useMemo)(()=>buildStyles(r),[r]),d=(0,_react.useMemo)(()=>tintFor(r,c),[r,c]),m=(0,_react.useMemo)(()=>inkFor(r,c),[r,c]),_=r.components.toast,p=_?.iconCircleSize??28,g=(0,_index.fontSizeOf)(r,_.iconGlyphText,"components.toast.iconGlyphText"),v=_?.tintBarWidth??0,h=_?.swipeDismissThreshold??80,f=_?.swipeVelocityThreshold??.5,x=_?.stackOffset??8,N=_?.stackScaleStep??.04,b=_?.stackMinScale??.9,S=_?.defaultDurationMs??3e3,y=_?.enableSwipeDismiss??!0,A=_?.enterSpringDamping??18,T=_?.enterSpringStiffness??180,w=_?.enterSpringMass??1,R="top"===l?-120:120,M=(0,_react.useRef)((0,_index.createAnimatedValue)(s.reduced?0:R)).current,D=(0,_react.useRef)((0,_index.createAnimatedValue)(0)).current,V=(0,_react.useRef)((0,_index.createAnimatedValue)(0)).current,C=(0,_react.useRef)(!1),j="top"===l?t*x:-t*x,E=Math.max(1-t*N,b),I=(0,_react.useRef)((0,_index.createAnimatedValue)(j)).current;(0,_react.useEffect)(()=>{(0,_index.setNativeValue)(I,j)},[j,I]);const k=(0,_react.useMemo)(()=>_reactNative.Animated.add(M,I),[M,I]),O=void 0!==e.action,P=e.duration??S,L=P>0&&O&&"web"===_reactNative.Platform.OS?Math.max(P,8e3):P,F=L<=0||O&&!0===n?.screenReaderOn,H=!0===e.countdown&&!F,B=(0,_react.useRef)((0,_index.createAnimatedValue)(1)).current,z=(0,_react.useRef)({initialised:!1,timer:null,remaining:0,startedAt:0}),G=(0,_react.useRef)({touch:!1,pan:!1,hover:!1}),U=(0,_react.useRef)(()=>{}),q=(0,_react.useRef)({id:e.id,totalMs:L,shownAt:a,runtime:n,persistent:F,animateBar:!1});q.current={id:e.id,totalMs:L,shownAt:a,runtime:n,persistent:F,animateBar:H&&!s.reduced};const W=(0,_react.useCallback)(()=>{const e=z.current,t=q.current,i=G.current;if(!e.initialised){e.initialised=!0;const i=t.runtime?.readRemaining(t.id),a=void 0===t.shownAt?0:Date.now()-t.shownAt;e.remaining=i??(t.totalMs>0?Math.max(t.totalMs-a,0):0),t.totalMs>0&&e.remaining<t.totalMs&&(0,_index.setNativeValue)(B,e.remaining/t.totalMs)}const a=!(t.persistent||C.current||i.touch||i.pan||i.hover);a&&null===e.timer?(e.startedAt=Date.now(),e.timer=setTimeout(()=>{e.timer=null,e.remaining=0,U.current()},e.remaining),t.animateBar&&_reactNative.Animated.timing(B,{toValue:0,duration:e.remaining,easing:_reactNative.Easing.linear,useNativeDriver:!0}).start()):a||null===e.timer||(clearTimeout(e.timer),e.timer=null,e.remaining=Math.max(e.remaining-(Date.now()-e.startedAt),0),B.stopAnimation())},[B]),dismiss=()=>{if(C.current)return;C.current=!0,W();const t=[_reactNative.Animated.timing(V,{toValue:0,duration:o,easing:_reactNative.Easing.bezier(...r.motion.easing.accelerate),useNativeDriver:!0})];s.reduced||t.push(_reactNative.Animated.timing(M,{toValue:R,duration:r.motion.duration.fast,easing:_reactNative.Easing.bezier(...r.motion.easing.accelerate),useNativeDriver:!0})),_reactNative.Animated.parallel(t).start(()=>i(e.id))};U.current=dismiss,(0,_react.useEffect)(()=>{const e=s.reduced?_reactNative.Animated.timing(V,{toValue:1,duration:o,useNativeDriver:!0}):_reactNative.Animated.parallel([_reactNative.Animated.spring(M,{toValue:0,damping:A,stiffness:T,mass:w,useNativeDriver:!0}),_reactNative.Animated.timing(V,{toValue:1,duration:o,useNativeDriver:!0})]);return e.start(),()=>e.stop()},[]),(0,_react.useEffect)(()=>{W()},[F,W]),(0,_react.useEffect)(()=>()=>{const e=z.current,t=q.current;null!==e.timer&&(clearTimeout(e.timer),e.timer=null,e.remaining=Math.max(e.remaining-(Date.now()-e.startedAt),0)),B.stopAnimation(),e.initialised&&t.totalMs>0&&!C.current&&t.runtime?.writeRemaining(t.id,e.remaining)},[B]);const $=(0,_react.useCallback)((e,t)=>{G.current[e]=t,W()},[W]),K=(0,_react.useCallback)(()=>$("touch",!0),[$]),X=(0,_react.useCallback)(e=>$("touch",(e.nativeEvent.touches?.length??0)>0),[$]),Y=(0,_react.useCallback)(()=>$("hover",!0),[$]),J=(0,_react.useCallback)(()=>$("hover",!1),[$]),Q=(0,_react.useMemo)(()=>_reactNative.PanResponder.create({onMoveShouldSetPanResponder:(e,t)=>Math.abs(t.dx)>Math.abs(t.dy)&&Math.abs(t.dx)>6,onPanResponderGrant:()=>$("pan",!0),onPanResponderMove:(e,t)=>{(0,_index.setNativeValue)(D,t.dx);const i=1-.7*Math.min(Math.abs(t.dx)/200,1);(0,_index.setNativeValue)(V,i)},onPanResponderTerminate:()=>{if($("pan",!1),s.reduced)return(0,_index.setNativeValue)(D,0),void _reactNative.Animated.timing(V,{toValue:1,duration:o,useNativeDriver:!0}).start();_reactNative.Animated.parallel([_reactNative.Animated.spring(D,{toValue:0,damping:r.motion.spring.snappy.damping,stiffness:r.motion.spring.snappy.stiffness,mass:r.motion.spring.snappy.mass,useNativeDriver:!0}),_reactNative.Animated.timing(V,{toValue:1,duration:o,useNativeDriver:!0})]).start()},onPanResponderRelease:(t,a)=>{if(Math.abs(a.dx)>h||Math.abs(a.vx)>f){const t=a.dx>=0?1:-1;C.current=!0,$("pan",!1);const n=[_reactNative.Animated.timing(V,{toValue:0,duration:o,useNativeDriver:!0})];s.reduced||n.push(_reactNative.Animated.timing(D,{toValue:500*t,duration:r.motion.duration.fast,useNativeDriver:!0})),_reactNative.Animated.parallel(n).start(()=>i(e.id))}else $("pan",!1),s.reduced?((0,_index.setNativeValue)(D,0),_reactNative.Animated.timing(V,{toValue:1,duration:o,useNativeDriver:!0}).start()):_reactNative.Animated.parallel([_reactNative.Animated.spring(D,{toValue:0,useNativeDriver:!0}),_reactNative.Animated.spring(V,{toValue:1,useNativeDriver:!0})]).start()}}),[D,V,$,h,f,o,s.reduced,r.motion.duration.fast,r.motion.spring.snappy.damping,r.motion.spring.snappy.stiffness,r.motion.spring.snappy.mass,i,e.id]),Z={accessibilityActions:DISMISS_ACTIONS,onAccessibilityAction:e=>{"dismiss"===e.nativeEvent.actionName&&dismiss()}},[ee,te]=(0,_react.useState)(0),ie=(0,_react.useMemo)(()=>B.interpolate({inputRange:[0,1],outputRange:[-ee,0]}),[B,ee]),ae=e.description?`${e.message}. ${e.description}`:e.message,ne=e.action&&H?`${e.action.label}, ${Math.ceil(L/1e3)} seconds`:e.action?.label;return(0,_jsxRuntime.jsxs)(_reactNative.Animated.View,{...y?Q.panHandlers:{},...O?{}:{accessible:!0,...Z},..."web"===_reactNative.Platform.OS?{onPointerEnter:Y,onPointerLeave:J}:{},onTouchStart:K,onTouchEnd:X,onTouchCancel:X,accessibilityLabel:ae,testID:e.testID,style:[u.container,{backgroundColor:r.colors.background.elevated,borderRadius:r.radius.lg,..._corners.smoothCorners,padding:r.spacing.md,...r.shadows.md,shadowColor:r.shadows.md.shadowColor,opacity:V,transform:[{translateY:k},{translateX:D},{scale:E}]},e.style,e.containerStyle],children:[v>0?(0,_jsxRuntime.jsx)(_reactNative.View,{style:[u.tintBar,{width:v,backgroundColor:d}]}):null,(0,_jsxRuntime.jsxs)(_reactNative.View,{style:u.row,children:[(()=>{if(e.icon)return e.icon;const t=defaultGlyph(c);return t?(0,_jsxRuntime.jsx)(_reactNative.View,{style:[u.iconCircle,{width:p,height:p,borderRadius:r.radius.pill,..._corners.smoothCorners,backgroundColor:d+"22"},e.iconCircleStyle],children:(0,_jsxRuntime.jsx)(_reactNative.Text,{style:[u.iconGlyph,{color:m,fontSize:g}],accessible:!1,children:t})}):null})(),(0,_jsxRuntime.jsxs)(_reactNative.View,{style:u.textBlock,children:[(0,_jsxRuntime.jsx)(_reactNative.Text,{style:[u.message,{color:r.colors.text.primary,fontSize:r.typography.fontSize.base,...(0,_index.fontFor)(r,"semibold")},e.textStyle,e.messageStyle],numberOfLines:2,children:e.message}),e.description?(0,_jsxRuntime.jsx)(_reactNative.Text,{style:[u.description,{color:r.colors.text.secondary,fontSize:r.typography.fontSize.sm}],numberOfLines:3,children:e.description}):null]}),e.action?(0,_jsxRuntime.jsx)(_reactNative.Pressable,{accessibilityRole:"button",accessibilityLabel:ne,hitSlop:ACTION_HIT_SLOP,...Z,onPress:()=>{e.action?.onPress(),dismiss()},style:({pressed:t})=>[u.actionBtn,{backgroundColor:t?r.colors.surface.pressed:"transparent"},e.actionButtonStyle],children:(0,_jsxRuntime.jsx)(_reactNative.Text,{style:{color:d,fontSize:r.typography.fontSize.sm,...(0,_index.fontFor)(r,"semibold")},numberOfLines:1,children:e.action.label})}):null]}),H?(0,_jsxRuntime.jsxs)(_reactNative.View,{pointerEvents:"none",accessibilityElementsHidden:!0,importantForAccessibility:"no-hide-descendants",onLayout:e=>te(e.nativeEvent.layout.width),testID:"toast-countdown",style:[u.countdownTrack,{backgroundColor:d+"22"}],children:[s.reduced?(0,_jsxRuntime.jsx)(_reactNative.View,{style:[u.countdownFill,{backgroundColor:d}]}):null,!s.reduced&&ee>0?(0,_jsxRuntime.jsx)(_reactNative.Animated.View,{style:[u.countdownFill,{backgroundColor:d,transform:[{translateX:ie}]}]}):null]}):null]})};exports.Toast=Toast;const tintFor=(e,t)=>{switch(t){case"success":return e.colors.success;case"error":return e.colors.error;case"warning":return e.colors.warning;case"info":return e.colors.info;default:return e.colors.text.primary}},inkFor=(e,t)=>{switch(t){case"success":return e.colors.toneText.success;case"error":return e.colors.toneText.error;case"warning":return e.colors.toneText.warning;case"info":return e.colors.toneText.info;default:return e.colors.text.primary}},defaultGlyph=e=>{switch(e){case"success":return"✓";case"error":return"×";case"warning":return"!";case"info":return"i";default:return""}},buildStyles=e=>_reactNative.StyleSheet.create({container:{overflow:"hidden",marginVertical:e.spacing.xs},tintBar:{position:"absolute",left:0,top:0,bottom:0},row:{flexDirection:"row",alignItems:"center",paddingLeft:e.spacing.sm},iconCircle:{alignItems:"center",justifyContent:"center",marginRight:e.spacing.md},iconGlyph:{fontWeight:"700",lineHeight:19},textBlock:{flex:1,paddingRight:e.spacing.sm},message:{lineHeight:20},description:{marginTop:e.spacing.xxs,lineHeight:18},countdownTrack:{position:"absolute",left:0,right:0,bottom:0,height:3,overflow:"hidden"},countdownFill:{position:"absolute",left:0,right:0,top:0,bottom:0},actionBtn:{paddingHorizontal:e.spacing.sm,paddingVertical:e.spacing.xs,minHeight:e.components.toast.actionMinHeight,borderRadius:e.radius.md,..._corners.smoothCorners,marginLeft:e.spacing.sm}});var _default=exports.default=Toast;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Toast=void 0;var _react=require("react"),_reactNative=require("react-native"),_usePresenceMotion=require("../../hooks/usePresenceMotion.js"),_index=require("../../theme/index.js"),_corners=require("../../utils/corners.js"),_jsxRuntime=require("react/jsx-runtime");const SWIPE_DISMISS_THRESHOLD=80,SWIPE_VELOCITY_THRESHOLD=.5,STACK_OFFSET=8,STACK_SCALE_STEP=.04,DEFAULT_AUTO_DISMISS_MS=3e3,WEB_ACTION_MIN_DURATION_MS=8e3,COUNTDOWN_BAR_HEIGHT=3,ACTION_HIT_SLOP={top:10,bottom:10,left:10,right:10},DISMISS_ACTIONS=[{name:"dismiss",label:"Dismiss"}],Toast=({toast:e,index:t,onDismiss:a,shownAt:i,runtime:n})=>{const r=(0,_index.useTheme)(),s=(0,_usePresenceMotion.usePresenceMotion)(),o=s.duration("fast"),c=e.variant??"default",l=e.position??"bottom",u=(0,_react.useMemo)(()=>buildStyles(r),[r]),d=(0,_react.useMemo)(()=>tintFor(r,c),[r,c]),m=(0,_react.useMemo)(()=>inkFor(r,c),[r,c]),_=r.components.toast["icon-circle-size"],p=r.text[r.components.toast["icon-glyph-text"]].size,v=r.components.toast["tint-bar-width"],g=r.settings.components.toast?.defaultDurationMs??3e3,x=r.settings.components.toast?.enableSwipeDismiss??!0,h="top"===l?-120:120,f=(0,_react.useRef)((0,_index.createAnimatedValue)(s.reduced?0:h)).current,N=(0,_react.useRef)((0,_index.createAnimatedValue)(0)).current,b=(0,_react.useRef)((0,_index.createAnimatedValue)(0)).current,A=(0,_react.useRef)(!1),y="top"===l?8*t:8*-t,S=Math.max(1-.04*t,.9),w=(0,_react.useRef)((0,_index.createAnimatedValue)(y)).current;(0,_react.useEffect)(()=>{(0,_index.setNativeValue)(w,y)},[y,w]);const R=(0,_react.useMemo)(()=>_reactNative.Animated.add(f,w),[f,w]),M=void 0!==e.action,T=e.duration??g,V=T>0&&M&&"web"===_reactNative.Platform.OS?Math.max(T,8e3):T,D=V<=0||M&&!0===n?.screenReaderOn,j=!0===e.countdown&&!D,C=(0,_react.useRef)((0,_index.createAnimatedValue)(1)).current,I=(0,_react.useRef)({initialised:!1,timer:null,remaining:0,startedAt:0}),E=(0,_react.useRef)({touch:!1,pan:!1,hover:!1}),P=(0,_react.useRef)(()=>{}),O=(0,_react.useRef)({id:e.id,totalMs:V,shownAt:i,runtime:n,persistent:D,animateBar:!1});O.current={id:e.id,totalMs:V,shownAt:i,runtime:n,persistent:D,animateBar:j&&!s.reduced};const k=(0,_react.useCallback)(()=>{const e=I.current,t=O.current,a=E.current;if(!e.initialised){e.initialised=!0;const a=t.runtime?.readRemaining(t.id),i=void 0===t.shownAt?0:Date.now()-t.shownAt;e.remaining=a??(t.totalMs>0?Math.max(t.totalMs-i,0):0),t.totalMs>0&&e.remaining<t.totalMs&&(0,_index.setNativeValue)(C,e.remaining/t.totalMs)}const i=!(t.persistent||A.current||a.touch||a.pan||a.hover);i&&null===e.timer?(e.startedAt=Date.now(),e.timer=setTimeout(()=>{e.timer=null,e.remaining=0,P.current()},e.remaining),t.animateBar&&_reactNative.Animated.timing(C,{toValue:0,duration:e.remaining,easing:_reactNative.Easing.linear,useNativeDriver:!0}).start()):i||null===e.timer||(clearTimeout(e.timer),e.timer=null,e.remaining=Math.max(e.remaining-(Date.now()-e.startedAt),0),C.stopAnimation())},[C]),dismiss=()=>{if(A.current)return;A.current=!0,k();const t=[_reactNative.Animated.timing(b,{toValue:0,duration:o,easing:_reactNative.Easing.bezier(...r.motion.ease.accelerate),useNativeDriver:!0})];s.reduced||t.push(_reactNative.Animated.timing(f,{toValue:h,duration:r.motion.duration.fast,easing:_reactNative.Easing.bezier(...r.motion.ease.accelerate),useNativeDriver:!0})),_reactNative.Animated.parallel(t).start(()=>a(e.id))};P.current=dismiss,(0,_react.useEffect)(()=>{const e=s.reduced?_reactNative.Animated.timing(b,{toValue:1,duration:o,useNativeDriver:!0}):_reactNative.Animated.parallel([_reactNative.Animated.spring(f,{toValue:0,damping:18,stiffness:180,mass:1,useNativeDriver:!0}),_reactNative.Animated.timing(b,{toValue:1,duration:o,useNativeDriver:!0})]);return e.start(),()=>e.stop()},[]),(0,_react.useEffect)(()=>{k()},[D,k]),(0,_react.useEffect)(()=>()=>{const e=I.current,t=O.current;null!==e.timer&&(clearTimeout(e.timer),e.timer=null,e.remaining=Math.max(e.remaining-(Date.now()-e.startedAt),0)),C.stopAnimation(),e.initialised&&t.totalMs>0&&!A.current&&t.runtime?.writeRemaining(t.id,e.remaining)},[C]);const L=(0,_react.useCallback)((e,t)=>{E.current[e]=t,k()},[k]),H=(0,_react.useCallback)(()=>L("touch",!0),[L]),F=(0,_react.useCallback)(e=>L("touch",(e.nativeEvent.touches?.length??0)>0),[L]),z=(0,_react.useCallback)(()=>L("hover",!0),[L]),B=(0,_react.useCallback)(()=>L("hover",!1),[L]),q=(0,_react.useMemo)(()=>_reactNative.PanResponder.create({onMoveShouldSetPanResponder:(e,t)=>Math.abs(t.dx)>Math.abs(t.dy)&&Math.abs(t.dx)>6,onPanResponderGrant:()=>L("pan",!0),onPanResponderMove:(e,t)=>{(0,_index.setNativeValue)(N,t.dx);const a=1-.7*Math.min(Math.abs(t.dx)/200,1);(0,_index.setNativeValue)(b,a)},onPanResponderTerminate:()=>{if(L("pan",!1),s.reduced)return(0,_index.setNativeValue)(N,0),void _reactNative.Animated.timing(b,{toValue:1,duration:o,useNativeDriver:!0}).start();_reactNative.Animated.parallel([_reactNative.Animated.spring(N,{toValue:0,damping:r.motion.spring.snappy.damping,stiffness:r.motion.spring.snappy.stiffness,mass:r.motion.spring.snappy.mass,useNativeDriver:!0}),_reactNative.Animated.timing(b,{toValue:1,duration:o,useNativeDriver:!0})]).start()},onPanResponderRelease:(t,i)=>{if(Math.abs(i.dx)>80||Math.abs(i.vx)>.5){const t=i.dx>=0?1:-1;A.current=!0,L("pan",!1);const n=[_reactNative.Animated.timing(b,{toValue:0,duration:o,useNativeDriver:!0})];s.reduced||n.push(_reactNative.Animated.timing(N,{toValue:500*t,duration:r.motion.duration.fast,useNativeDriver:!0})),_reactNative.Animated.parallel(n).start(()=>a(e.id))}else L("pan",!1),s.reduced?((0,_index.setNativeValue)(N,0),_reactNative.Animated.timing(b,{toValue:1,duration:o,useNativeDriver:!0}).start()):_reactNative.Animated.parallel([_reactNative.Animated.spring(N,{toValue:0,useNativeDriver:!0}),_reactNative.Animated.spring(b,{toValue:1,useNativeDriver:!0})]).start()}}),[N,b,L,o,s.reduced,r.motion.duration.fast,r.motion.spring.snappy.damping,r.motion.spring.snappy.stiffness,r.motion.spring.snappy.mass,a,e.id]),G={accessibilityActions:DISMISS_ACTIONS,onAccessibilityAction:e=>{"dismiss"===e.nativeEvent.actionName&&dismiss()}},[W,U]=(0,_react.useState)(0),$=(0,_react.useMemo)(()=>C.interpolate({inputRange:[0,1],outputRange:[-W,0]}),[C,W]),K=e.description?`${e.message}. ${e.description}`:e.message,X=e.action&&j?`${e.action.label}, ${Math.ceil(V/1e3)} seconds`:e.action?.label;return(0,_jsxRuntime.jsxs)(_reactNative.Animated.View,{...x?q.panHandlers:{},...M?{}:{accessible:!0,...G},..."web"===_reactNative.Platform.OS?{onPointerEnter:z,onPointerLeave:B}:{},onTouchStart:H,onTouchEnd:F,onTouchCancel:F,accessibilityLabel:K,testID:e.testID,style:[u.container,{backgroundColor:r.colors.surface,borderRadius:r.radius.lg,..._corners.smoothCorners,padding:r.space.md,...r.shadow.elevated,opacity:b,transform:[{translateY:R},{translateX:N},{scale:S}]},e.style,e.containerStyle],children:[v>0?(0,_jsxRuntime.jsx)(_reactNative.View,{style:[u.tintBar,{width:v,backgroundColor:d}]}):null,(0,_jsxRuntime.jsxs)(_reactNative.View,{style:u.row,children:[(()=>{if(e.icon)return e.icon;const t=defaultGlyph(c);return t?(0,_jsxRuntime.jsx)(_reactNative.View,{style:[u.iconCircle,{width:_,height:_,borderRadius:r.radius.pill,..._corners.smoothCorners,backgroundColor:d+"22"},e.iconCircleStyle],children:(0,_jsxRuntime.jsx)(_reactNative.Text,{style:[u.iconGlyph,{color:m,fontSize:p}],accessible:!1,children:t})}):null})(),(0,_jsxRuntime.jsxs)(_reactNative.View,{style:u.textBlock,children:[(0,_jsxRuntime.jsx)(_reactNative.Text,{style:[u.message,{color:r.colors["text-body"],fontSize:r.text.base.size,...(0,_index.fontFor)(r,"semibold")},e.textStyle,e.messageStyle],numberOfLines:2,children:e.message}),e.description?(0,_jsxRuntime.jsx)(_reactNative.Text,{style:[u.description,{color:r.colors["text-muted"],fontSize:r.text.sm.size}],numberOfLines:3,children:e.description}):null]}),e.action?(0,_jsxRuntime.jsx)(_reactNative.Pressable,{accessibilityRole:"button",accessibilityLabel:X,hitSlop:ACTION_HIT_SLOP,...G,onPress:()=>{e.action?.onPress(),dismiss()},style:({pressed:t})=>[u.actionBtn,{backgroundColor:t?r.colors["surface-pressed"]:"transparent"},e.actionButtonStyle],children:(0,_jsxRuntime.jsx)(_reactNative.Text,{style:{color:d,fontSize:r.text.sm.size,...(0,_index.fontFor)(r,"semibold")},numberOfLines:1,children:e.action.label})}):null]}),j?(0,_jsxRuntime.jsxs)(_reactNative.View,{pointerEvents:"none",accessibilityElementsHidden:!0,importantForAccessibility:"no-hide-descendants",onLayout:e=>U(e.nativeEvent.layout.width),testID:"toast-countdown",style:[u.countdownTrack,{backgroundColor:d+"22"}],children:[s.reduced?(0,_jsxRuntime.jsx)(_reactNative.View,{style:[u.countdownFill,{backgroundColor:d}]}):null,!s.reduced&&W>0?(0,_jsxRuntime.jsx)(_reactNative.Animated.View,{style:[u.countdownFill,{backgroundColor:d,transform:[{translateX:$}]}]}):null]}):null]})};exports.Toast=Toast;const tintFor=(e,t)=>{switch(t){case"success":return e.colors.success;case"danger":return e.colors.danger;case"warning":return e.colors.warning;case"info":return e.colors.info;default:return e.colors["text-body"]}},inkFor=(e,t)=>{switch(t){case"success":return e.colors["success-text"];case"danger":return e.colors["danger-text"];case"warning":return e.colors["warning-text"];case"info":return e.colors["info-text"];default:return e.colors["text-body"]}},defaultGlyph=e=>{switch(e){case"success":return"✓";case"danger":return"×";case"warning":return"!";case"info":return"i";default:return""}},buildStyles=e=>_reactNative.StyleSheet.create({container:{overflow:"hidden",marginVertical:e.space.xs},tintBar:{position:"absolute",left:0,top:0,bottom:0},row:{flexDirection:"row",alignItems:"center",paddingLeft:e.space.sm},iconCircle:{alignItems:"center",justifyContent:"center",marginRight:e.space.md},iconGlyph:{fontWeight:"700",lineHeight:19},textBlock:{flex:1,paddingRight:e.space.sm},message:{lineHeight:20},description:{marginTop:e.space.xxs,lineHeight:18},countdownTrack:{position:"absolute",left:0,right:0,bottom:0,height:3,overflow:"hidden"},countdownFill:{position:"absolute",left:0,right:0,top:0,bottom:0},actionBtn:{paddingHorizontal:e.space.sm,paddingVertical:e.space.xs,minHeight:e.components.toast["action-min-height"],borderRadius:e.radius.md,..._corners.smoothCorners,marginLeft:e.space.sm}});var _default=exports.default=Toast;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useToast=exports.toast=exports.ToastProvider=exports.ToastHost=void 0;var _mobileCore=require("@webority/mobile-core"),_react=require("react"),_reactNative=require("react-native"),_reactNativeSafeAreaContext=require("react-native-safe-area-context"),_index=require("../../theme/index.js"),_announce=require("../../utils/announce.js"),_hapticUtils=require("../../utils/hapticUtils.js"),_Toast=_interopRequireDefault(require("./Toast.js")),_jsxRuntime=require("react/jsx-runtime");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const MAX_VISIBLE=3,UNDO_DEFAULT_DURATION_MS=6e3,UNDO_MIN_DURATION_MS=6e3,ToastContext=(0,_react.createContext)(null),ToastHostContext=(0,_react.createContext)(null);let nextId=0;const makeId=()=>(nextId+=1,`toast-${Date.now().toString(36)}-${nextId.toString(36)}`),defaultHaptic=e=>{switch(e){case"
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useToast=exports.toast=exports.ToastProvider=exports.ToastHost=void 0;var _mobileCore=require("@webority/mobile-core"),_react=require("react"),_reactNative=require("react-native"),_reactNativeSafeAreaContext=require("react-native-safe-area-context"),_index=require("../../theme/index.js"),_announce=require("../../utils/announce.js"),_hapticUtils=require("../../utils/hapticUtils.js"),_Toast=_interopRequireDefault(require("./Toast.js")),_jsxRuntime=require("react/jsx-runtime");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const MAX_VISIBLE=3,UNDO_DEFAULT_DURATION_MS=6e3,UNDO_MIN_DURATION_MS=6e3,ToastContext=(0,_react.createContext)(null),ToastHostContext=(0,_react.createContext)(null);let nextId=0;const makeId=()=>(nextId+=1,`toast-${Date.now().toString(36)}-${nextId.toString(36)}`),defaultHaptic=e=>{switch(e){case"danger":return"notificationError";case"success":return"notificationSuccess";case"warning":return"notificationWarning";default:return"selection"}},resolveHaptics=(e,t)=>{if(!1===e)return!1;const r=e?.[t??"default"];return void 0===r?defaultHaptic(t):r};let nextHostId=0;const makeHostId=()=>(nextHostId+=1,nextHostId),useScreenReaderEnabled=()=>{const[e,t]=(0,_react.useState)(!1);return(0,_react.useEffect)(()=>{if("web"===_reactNative.Platform.OS)return;let e=!0;_reactNative.AccessibilityInfo.isScreenReaderEnabled().then(r=>{e&&t(r)});const r=_reactNative.AccessibilityInfo.addEventListener("screenReaderChanged",t);return()=>{e=!1,r.remove()}},[]),e};let providerCount=0,activeApi=null;const setActiveApi=e=>{activeApi=e},getActiveApi=()=>activeApi,ToastProvider=({children:e,maxVisible:t=3,topOffset:r,bottomOffset:o,defaultDuration:s,haptics:n})=>{const a=(0,_react.useRef)({defaultDuration:s,haptics:n});a.current={defaultDuration:s,haptics:n};const[i,u]=(0,_react.useState)([]),[c,d]=(0,_react.useState)([]),l=useScreenReaderEnabled(),_=(0,_react.useRef)(new Map),p=(0,_react.useRef)(new Map);(0,_react.useEffect)(()=>{const e=new Set(i.map(e=>e.id));for(const[t,r]of[..._.current])e.has(t)||(_.current.delete(t),r());for(const t of[...p.current.keys()])e.has(t)||p.current.delete(t)},[i]),(0,_react.useEffect)(()=>{const e=_.current;return()=>{for(const[t,r]of[...e])e.delete(t),r()}},[]);const f=(0,_react.useMemo)(()=>({screenReaderOn:l,readRemaining:e=>p.current.get(e),writeRemaining:(e,t)=>{p.current.set(e,t)}}),[l]),m=(0,_react.useCallback)(e=>{u(t=>t.filter(t=>t.id!==e))},[]),x=(0,_react.useCallback)(()=>{u([])},[]),v=(0,_react.useCallback)(e=>{const r=makeId(),{defaultDuration:o,haptics:s}=a.current,n={...e,duration:e.duration??o,id:r,shownAt:Date.now()},i=void 0!==e.haptic?e.haptic:resolveHaptics(s,e.variant);return!1!==i&&(0,_hapticUtils.triggerHaptic)(i),(0,_announce.announce)(e.description?`${e.message}. ${e.description}`:e.message,{polite:"danger"!==e.variant}),u(r=>{const o=[...void 0===e.key?r:r.filter(t=>t.key!==e.key),n];return o.length>t?o.slice(o.length-t):o}),r},[t]),h=(0,_react.useCallback)((e,t)=>{const{onUndo:r,onCommit:o,undoLabel:s,duration:n,...a}=t,i={id:""},u=v({...a,message:e,duration:0===n?0:Math.max(n??6e3,6e3),countdown:!0,action:{label:s??"Undo",onPress:()=>{_.current.delete(i.id),r()}}});return i.id=u,o&&_.current.set(u,o),u},[v]),g=(0,_react.useMemo)(()=>({show:v,undo:h,hide:m,hideAll:x}),[v,h,m,x]);(0,_react.useEffect)(()=>(providerCount+=1,setActiveApi(g),()=>{providerCount-=1,providerCount<=0&&(providerCount=0,setActiveApi(null))}),[g]);const w=(0,_react.useCallback)(e=>{d(t=>[...t,e])},[]),b=(0,_react.useCallback)(e=>{d(t=>t.filter(t=>t!==e))},[]),T=c.length>0?c[c.length-1]:null,y=(0,_react.useMemo)(()=>({register:w,unregister:b,activeHostId:T,queue:i,hide:m,topOffset:r,bottomOffset:o,runtime:f}),[w,b,T,i,m,r,o,f]);return(0,_jsxRuntime.jsx)(ToastContext.Provider,{value:g,children:(0,_jsxRuntime.jsxs)(ToastHostContext.Provider,{value:y,children:[e,null===T?(0,_jsxRuntime.jsx)(ToastLayers,{queue:i,onDismiss:m,topOffset:r,bottomOffset:o,runtime:f}):null]})})};exports.ToastProvider=ToastProvider;let warnedHost=!1;const warnHostWithoutProvider=()=>{warnedHost||(warnedHost=!0,"undefined"!=typeof __DEV__&&__DEV__&&_mobileCore.Logger.warn("[toast] <ToastHost /> rendered outside a <ToastProvider />; it renders nothing. Mount a provider near your app root."))},ToastHost=()=>{const e=(0,_react.useContext)(ToastHostContext),[t]=(0,_react.useState)(makeHostId),r=e?.register,o=e?.unregister;return(0,_react.useEffect)(()=>{if(r&&o)return r(t),()=>o(t);warnHostWithoutProvider()},[r,o,t]),e&&e.activeHostId===t?(0,_jsxRuntime.jsx)(ToastLayers,{queue:e.queue,onDismiss:e.hide,topOffset:e.topOffset,bottomOffset:e.bottomOffset,runtime:e.runtime}):null};exports.ToastHost=ToastHost;const ToastLayers=({queue:e,onDismiss:t,topOffset:r,bottomOffset:o,runtime:s})=>{const n=(0,_index.useTheme)(),a=(0,_reactNativeSafeAreaContext.useSafeAreaInsets)(),i=(0,_react.useMemo)(()=>buildStyles(),[]),u=e.filter(e=>"top"===(e.position??"bottom")),c=e.filter(e=>"bottom"===(e.position??"bottom"));return(0,_jsxRuntime.jsxs)(_jsxRuntime.Fragment,{children:[(0,_jsxRuntime.jsx)(_reactNative.View,{testID:"toast-layer-top",pointerEvents:"box-none",style:[i.layer,i.top,{top:(r??a.top)+n.space.sm,paddingHorizontal:n.space.md}],children:u.map((e,r)=>(0,_jsxRuntime.jsx)(_Toast.default,{toast:e,index:u.length-1-r,shownAt:e.shownAt,runtime:s,onDismiss:t},e.id))}),(0,_jsxRuntime.jsx)(_reactNative.View,{testID:"toast-layer-bottom",pointerEvents:"box-none",style:[i.layer,i.bottom,{bottom:(o??a.bottom)+n.space.sm,paddingHorizontal:n.space.md}],children:c.map((e,r)=>(0,_jsxRuntime.jsx)(_Toast.default,{toast:e,index:c.length-1-r,shownAt:e.shownAt,runtime:s,onDismiss:t},e.id))})]})},useToast=()=>{const e=(0,_react.useContext)(ToastContext);if(!e)throw new Error("useToast must be used within a <ToastProvider>.");return e};exports.useToast=useToast;let warned=!1;const warnNoProvider=()=>{warned||(warned=!0,"undefined"!=typeof __DEV__&&__DEV__&&_mobileCore.Logger.warn("[toast] No <ToastProvider /> mounted; toast() calls are no-ops. Mount a provider near your app root."))},proxy=e=>{const t=getActiveApi();return t?e(t):(warnNoProvider(),"")},toast=exports.toast={show:e=>proxy(t=>t.show(e)),undo:(e,t)=>proxy(r=>r.undo(e,t)),success:(e,t)=>proxy(r=>r.show({...t,message:e,variant:"success"})),error:(e,t)=>proxy(r=>r.show({...t,message:e,variant:"danger"})),warning:(e,t)=>proxy(r=>r.show({...t,message:e,variant:"warning"})),info:(e,t)=>proxy(r=>r.show({...t,message:e,variant:"info"})),hideAll:()=>{const e=getActiveApi();e?e.hideAll():warnNoProvider()}},buildStyles=()=>_reactNative.StyleSheet.create({layer:{position:"absolute",left:0,right:0},top:{alignItems:"stretch"},bottom:{alignItems:"stretch"}});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.RichTooltipBody=void 0;var _react=require("react"),_reactNative=require("react-native"),_index=require("../../theme/index.js"),_corners=require("../../utils/corners.js"),_index2=require("../Button/index.js"),_index3=require("../Text/index.js"),_jsxRuntime=require("react/jsx-runtime");const RichTooltipBody=({title:e,content:i,action:t,onAction:s,focusRef:r,actionRef:
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.RichTooltipBody=void 0;var _react=require("react"),_reactNative=require("react-native"),_index=require("../../theme/index.js"),_corners=require("../../utils/corners.js"),_index2=require("../Button/index.js"),_index3=require("../Text/index.js"),_jsxRuntime=require("react/jsx-runtime");const RichTooltipBody=({title:e,content:i,action:t,onAction:s,focusRef:r,actionRef:o,messageStyle:n})=>{const a=(0,_index.useTheme)(),c=(0,_react.useMemo)(()=>buildStyles(a),[a]);return(0,_jsxRuntime.jsxs)(_reactNative.View,{style:c.card,children:[e?(0,_jsxRuntime.jsx)(_index3.Text,{ref:r,variant:"label",weight:"semibold",accessibilityRole:"header",children:e}):null,"string"==typeof i?(0,_jsxRuntime.jsx)(_index3.Text,{ref:e?void 0:r,variant:"bodySmall",color:"secondary",style:n,children:i}):i,t?(0,_jsxRuntime.jsx)(_reactNative.View,{style:c.actions,children:(0,_jsxRuntime.jsx)(_index2.Button,{ref:o,title:t.label,variant:"ghost",size:"sm",accessibilityLabel:t.accessibilityLabel,onPress:s})}):null]})};exports.RichTooltipBody=RichTooltipBody;const buildStyles=e=>_reactNative.StyleSheet.create({card:{gap:e.space.xs,paddingHorizontal:e.space.md,paddingTop:e.space.md,paddingBottom:e.space.sm,backgroundColor:e.colors.surface,borderRadius:e.radius.md,..._corners.smoothCorners,...e.shadow.popover},actions:{flexDirection:"row",justifyContent:"flex-end",marginTop:e.space.xs}});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Tooltip=void 0;var cache,_react=_interopRequireWildcard(require("react")),_reactNative=require("react-native"),_reactNativeSafeAreaContext=require("react-native-safe-area-context"),_usePresenceMotion=require("../../hooks/usePresenceMotion.js"),_index=require("../../theme/index.js"),_announce=require("../../utils/announce.js"),_corners=require("../../utils/corners.js"),_mergeRefs=require("../../utils/mergeRefs.js"),_placement=require("../../utils/placement.js"),_focusHost=require("../Menu/focusHost.js"),_ModalSafeArea=require("../ModalSafeArea/ModalSafeArea.js"),_ToastProvider=require("../Toast/ToastProvider.js"),_RichTooltipBody=require("./RichTooltipBody.js"),_tooltipPosition=require("./tooltipPosition.js"),_jsxRuntime=require("react/jsx-runtime");function _interopRequireWildcard(e,t){if(!t&&e&&e.__esModule)return e;var r,a,o=Object.defineProperty,
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Tooltip=void 0;var cache,_react=_interopRequireWildcard(require("react")),_reactNative=require("react-native"),_reactNativeSafeAreaContext=require("react-native-safe-area-context"),_usePresenceMotion=require("../../hooks/usePresenceMotion.js"),_index=require("../../theme/index.js"),_announce=require("../../utils/announce.js"),_corners=require("../../utils/corners.js"),_mergeRefs=require("../../utils/mergeRefs.js"),_placement=require("../../utils/placement.js"),_focusHost=require("../Menu/focusHost.js"),_ModalSafeArea=require("../ModalSafeArea/ModalSafeArea.js"),_ToastProvider=require("../Toast/ToastProvider.js"),_RichTooltipBody=require("./RichTooltipBody.js"),_tooltipPosition=require("./tooltipPosition.js"),_jsxRuntime=require("react/jsx-runtime");function _interopRequireWildcard(e,t){if(!t&&e&&e.__esModule)return e;var r,a,o=Object.defineProperty,s={__proto__:null,default:e};if(Object(e)!==e)return s;if(cache||"function"!=typeof WeakMap||(cache=new WeakMap),cache){if(cache.has(e))return cache.get(e);cache.set(e,s)}for(a in e)"default"!==a&&{}.hasOwnProperty.call(e,a)&&((r=o&&Object.getOwnPropertyDescriptor(e,a))&&(r.get||r.set)?o(s,a,r):s[a]=e[a]);return s}const PRESS_AUTO_HIDE_MS=4e3,ARROW_HALF_WIDTH=4,ARROW_HEIGHT=6,ARROW_CORNER_PADDING=12,DEFAULT_MAX_WIDTH=240,RICH_MAX_WIDTH=280,MESSAGE_LINE_HEIGHT=18,EXIT_DURATION_MS=150,Tooltip=e=>{const{content:t,children:r,variant:a="plain",title:o,action:s,placement:i="auto",visible:n,onVisibleChange:c,hideOnContentPress:l=!0,maxWidth:u,showArrow:_=!0,accessibilityLabel:d,style:f,containerStyle:p,arrowStyle:m,messageStyle:h,closeLabel:v="Close tooltip",testID:R}=e,b="rich"===a,g=e.trigger??(b?"press":"longPress"),x=(0,_index.useTheme)(),y=(0,_usePresenceMotion.usePresenceMotion)(),j=(0,_reactNativeSafeAreaContext.useSafeAreaInsets)(),[S,T]=(0,_ModalSafeArea.useModalInsets)(),N=(0,_react.useMemo)(()=>({...j,top:S.top,bottom:S.bottom}),[j,S]),w=(0,_reactNative.useWindowDimensions)(),A=(0,_react.useMemo)(()=>buildStyles(x),[x]),P=x.space.sm,M=x.space.sm,C=u??(b?280:240),E="press"===g&&!b,O=(x.settings.components.tooltip?.enableScaleAnimation??!1)&&!y.reduced,H="manual"===g||"boolean"==typeof n,[W,q]=(0,_react.useState)(!1),D=H?Boolean(n):W,[I,L]=(0,_react.useState)(null),[V,k]=(0,_react.useState)({width:0,height:0}),B=(0,_react.useRef)(null),F=(0,_react.useRef)(null),z=(0,_react.useRef)(null),G=(0,_react.useRef)(null),U=(0,_react.useRef)(null),X=(0,_react.useRef)(!1),Y=(0,_react.useRef)(!1),J=(0,_react.useRef)((0,_index.createAnimatedValue)(D||!O?1:.85)).current,K=(0,_react.useRef)((0,_index.createAnimatedValue)(D?1:0)).current,Q=(0,_react.useRef)(null),Z=(0,_react.useRef)(!1),[$,ee]=(0,_react.useState)(D),te=(0,_react.useCallback)(e=>{H||q(e),c?.(e)},[H,c]),re=(0,_react.useCallback)(()=>{B.current&&B.current.measureInWindow((e,t,r,a)=>{L({x:e,y:t,width:r,height:a})})},[]),ae=(0,_react.useCallback)(e=>{re(),te(!0)},[re,te]),oe=(0,_react.useCallback)(()=>{te(!1)},[te]),se=(0,_react.useRef)(oe);se.current=oe;const ie=(0,_react.useCallback)(()=>{if(!X.current)return;X.current=!1;const e=U.current;U.current=null,e?e():b&&(0,_focusHost.focusHost)(F.current??B.current)},[b]);(0,_react.useEffect)(()=>{if(D)return Y.current=!0,X.current=!1,(0,_placement.claimAnchoredSurface)(()=>se.current());Y.current&&(Y.current=!1,X.current=!0)},[D]),(0,_react.useEffect)(()=>{D&&ee(!0)},[D]);const ne=(0,_react.useRef)($);(0,_react.useEffect)(()=>{ne.current&&!$&&"ios"!==_reactNative.Platform.OS&&ie(),ne.current=$},[$,ie]);const ce=(0,_react.useCallback)(()=>{U.current=s?.onPress??null,oe()},[s,oe]);(0,_react.useEffect)(()=>{if(!Z.current)return Z.current=!0,D&&(re(),E&&(Q.current&&clearTimeout(Q.current),Q.current=setTimeout(()=>{oe()},4e3))),()=>{Q.current&&(clearTimeout(Q.current),Q.current=null)};let e;if(D){re();const t=[_reactNative.Animated.timing(K,{toValue:1,duration:y.duration("fast"),useNativeDriver:!0})];O?t.push(_reactNative.Animated.spring(J,{toValue:1,damping:x.motion.spring.snappy.damping,stiffness:x.motion.spring.snappy.stiffness,mass:x.motion.spring.snappy.mass,useNativeDriver:!0})):(0,_index.setNativeValue)(J,1),e=_reactNative.Animated.parallel(t),e.start(),E&&(Q.current&&clearTimeout(Q.current),Q.current=setTimeout(()=>{oe()},4e3))}else{const t=[_reactNative.Animated.timing(K,{toValue:0,duration:y.reduced?y.duration("fast"):150,easing:_reactNative.Easing.bezier(...x.motion.ease.accelerate),useNativeDriver:!0})];O&&t.push(_reactNative.Animated.timing(J,{toValue:.85,duration:150,easing:_reactNative.Easing.bezier(...x.motion.ease.accelerate),useNativeDriver:!0})),e=_reactNative.Animated.parallel(t),e.start(({finished:e})=>{e&&ee(!1)}),Q.current&&(clearTimeout(Q.current),Q.current=null)}return()=>{e?.stop(),Q.current&&(clearTimeout(Q.current),Q.current=null)}},[D]);const handleContentLayout=e=>{const{width:t,height:r}=e.nativeEvent.layout;t===V.width&&r===V.height||k({width:t,height:r})},le=(0,_react.useMemo)(()=>(0,_tooltipPosition.resolveTooltipPosition)({anchor:I,size:V,placement:i,rich:b,viewport:{width:w.width,height:w.height,insets:N},maxWidth:C,gap:P,padding:M,arrowCornerPadding:12}),[I,V,i,b,w.width,w.height,N,C,P,M]),ue=null!==I&&V.width>0,de=D&&ue;(0,_react.useEffect)(()=>{if(!b||!de)return;const e="web"===_reactNative.Platform.OS?G:z,t=setTimeout(()=>(0,_focusHost.focusHost)(e.current),_focusHost.FOCUS_DELAY_MS);return()=>clearTimeout(t)},[b,de]),(0,_react.useEffect)(()=>{!b&&de&&"ios"===_reactNative.Platform.OS&&"string"==typeof t&&(0,_announce.announce)(t)},[b,de,t]);const fe=r.props,pe=(0,_react.useMemo)(()=>(0,_mergeRefs.mergeRefs)(fe.ref,F),[fe.ref]),me={};"longPress"!==g||fe.contextMenu?"press"===g&&(me.onPress=e=>{fe.onPress?.(e),ae(e)}):(me.onLongPress=ae,me.accessibilityHint="Long press for more info"),b&&(me.ref=pe);const he=_react.default.cloneElement(r,me),ve=d??("string"==typeof t?t:"Tooltip"),Re=(0,_react.useMemo)(()=>{if(!_)return null;const e={position:"absolute",width:0,height:0,backgroundColor:"transparent",borderStyle:"solid",borderLeftWidth:4,borderRightWidth:4,borderBottomWidth:6,borderTopWidth:0,borderLeftColor:"transparent",borderRightColor:"transparent",borderTopColor:"transparent",borderBottomColor:b?x.colors.surface:x.colors["surface-inverse"]};return"top"===le.placement?{...e,bottom:-6,left:le.arrowOffset-4,transform:[{rotate:"180deg"}]}:"bottom"===le.placement?{...e,top:-6,left:le.arrowOffset-4}:"left"===le.placement?{...e,right:-6,top:le.arrowOffset-4,transform:[{rotate:"90deg"}]}:{...e,left:-6,top:le.arrowOffset-4,transform:[{rotate:"-90deg"}]}},[_,le,x,b]),be={position:"absolute",top:le.top,left:le.left,maxWidth:C,opacity:D&&!ue?0:K,transform:[{scale:J}]},ge=Re?(0,_jsxRuntime.jsx)(_reactNative.View,{style:[Re,m],pointerEvents:"none"}):null;return(0,_jsxRuntime.jsxs)(_jsxRuntime.Fragment,{children:[(0,_jsxRuntime.jsx)(_reactNative.View,{ref:B,collapsable:!1,onLayout:re,testID:R,children:he}),(0,_jsxRuntime.jsx)(_reactNative.Modal,{visible:$,transparent:!0,statusBarTranslucent:!0,presentationStyle:"overFullScreen",animationType:"none",onRequestClose:oe,onDismiss:ie,children:(0,_jsxRuntime.jsxs)(_ModalSafeArea.ModalSafeArea,{onInsets:T,children:[b?(0,_jsxRuntime.jsxs)(_jsxRuntime.Fragment,{children:[(0,_jsxRuntime.jsx)(_reactNative.Pressable,{style:_reactNative.StyleSheet.absoluteFill,onPress:l?oe:void 0,accessibilityLabel:v,accessibilityRole:"button"}),$?(0,_jsxRuntime.jsxs)(_reactNative.Animated.View,{onLayout:handleContentLayout,style:[be,f,p],children:[(0,_jsxRuntime.jsx)(_RichTooltipBody.RichTooltipBody,{title:o,content:t,action:s,onAction:ce,focusRef:z,actionRef:G,messageStyle:h}),ge]}):null]}):(0,_jsxRuntime.jsx)(_reactNative.Pressable,{style:_reactNative.StyleSheet.absoluteFill,onPress:l?oe:void 0,accessibilityLabel:v,accessibilityRole:"button",children:$?(0,_jsxRuntime.jsxs)(_reactNative.Animated.View,{accessibilityRole:"web"===_reactNative.Platform.OS?"tooltip":void 0,accessibilityLiveRegion:"polite",accessibilityLabel:ve,onLayout:handleContentLayout,style:[be,f,p],children:[(0,_jsxRuntime.jsx)(_reactNative.View,{style:[A.tooltip,{backgroundColor:x.colors["surface-inverse"],borderRadius:x.radius.md,..._corners.smoothCorners,paddingHorizontal:x.space.md,paddingVertical:x.space.sm,...x.shadow.popover,shadowColor:x.shadow.popover.shadowColor}],children:"string"==typeof t?(0,_jsxRuntime.jsx)(_reactNative.Text,{style:[{color:x.colors["text-inverse"],fontSize:x.text.sm.size,lineHeight:18},h],children:t}):t}),ge]}):null}),(0,_jsxRuntime.jsx)(_ToastProvider.ToastHost,{})]})})]})};exports.Tooltip=Tooltip;const buildStyles=e=>_reactNative.StyleSheet.create({tooltip:{overflow:"hidden"}});var _default=exports.default=Tooltip;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Tour=void 0;var _react=require("react"),_reactNative=require("react-native"),_usePresenceMotion=require("../../hooks/usePresenceMotion.js"),_index=require("../../theme/index.js"),_corners=require("../../utils/corners.js"),_index2=require("../Button/index.js"),_index3=require("../Modal/index.js"),_jsxRuntime=require("react/jsx-runtime");const MAX_CARD_WIDTH=360,HIGHLIGHT_BORDER_WIDTH=2,measureInWindow=e=>new Promise(t=>{const i=e.current;i?i.measureInWindow((e,i,r,
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Tour=void 0;var _react=require("react"),_reactNative=require("react-native"),_usePresenceMotion=require("../../hooks/usePresenceMotion.js"),_index=require("../../theme/index.js"),_corners=require("../../utils/corners.js"),_index2=require("../Button/index.js"),_index3=require("../Modal/index.js"),_jsxRuntime=require("react/jsx-runtime");const MAX_CARD_WIDTH=360,HIGHLIGHT_BORDER_WIDTH=2,measureInWindow=e=>new Promise(t=>{const i=e.current;i?i.measureInWindow((e,i,r,s)=>t({x:e,y:i,width:r,height:s})):t(null)}),isOnScreen=(e,t)=>e.width>0&&e.height>0&&e.x<t.width&&e.y<t.height&&e.x+e.width>0&&e.y+e.height>0,Tour=({tourId:e,steps:t,visible:i,onClose:r,seenStore:s,labels:n,haptic:a,testID:o})=>{const c=(0,_index.useTheme)(),l=(0,_usePresenceMotion.usePresenceMotion)().duration("fast"),u=(0,_react.useMemo)(()=>buildStyles(c),[c]),d=(0,_reactNative.useWindowDimensions)(),h=(0,_react.useRef)(d);h.current=d;const x=c.space.sm,_=c.space.sm,[m,p]=(0,_react.useState)(null),[g,y]=(0,_react.useState)(0),b=(0,_react.useRef)((0,_index.createAnimatedValue)(0)).current,f=(0,_react.useRef)(t);f.current=t;const w=(0,_react.useRef)(r);w.current=r;const v=(0,_react.useRef)(s);v.current=s;const j=(0,_react.useCallback)(async(e,t)=>{for(let i=e;i>=0&&i<f.current.length;i+=t){const e=await measureInWindow(f.current[i].target);if(e&&isOnScreen(e,h.current))return{index:i,rect:e}}return null},[]);(0,_react.useEffect)(()=>{if(!i)return void p(null);let t=!1;return(async()=>{const i=v.current;if(i&&await i.isSeen(e))return void(t||w.current("alreadySeen"));const r=await j(0,1);t||(r?(y(r.index),p(r)):w.current("noTargets"))})(),()=>{t=!0}},[i,e,j]),(0,_react.useEffect)(()=>{if(!m)return;const e=f.current[m.index],t=`Step ${m.index+1} of ${f.current.length}`;_reactNative.AccessibilityInfo.announceForAccessibility([t,e.title,e.description].filter(Boolean).join(". ")),b.setValue(0);const i=_reactNative.Animated.timing(b,{toValue:1,duration:l,useNativeDriver:!0});return i.start(),()=>i.stop()},[m,b,l]);const R=(0,_react.useCallback)(async t=>{p(null),await(v.current?.markSeen(e)),w.current(t)},[e]),S=(0,_react.useCallback)(async()=>{if(!m)return;const e=await j(m.index+1,1);e?p(e):await R("finished")},[m,j,R]),k=(0,_react.useCallback)(async()=>{if(!m)return;const e=await j(m.index-1,-1);e&&p(e)},[m,j]),N=(0,_react.useCallback)(()=>{R("skipped")},[R]),M=m?t[m.index]:void 0,C=!!m&&m.index===t.length-1,I=c.space.xs,T=m?{x:m.rect.x-I,y:m.rect.y-I,width:m.rect.width+2*I,height:m.rect.height+2*I}:null,D=Math.min(d.width-2*_,360),P=T?(()=>{const e=T.x+T.width/2,t=Math.max(_,Math.min(e-D/2,d.width-D-_)),i=T.y,r=d.height-(T.y+T.height);return r>=i?{left:t,top:T.y+T.height+x,maxHeight:Math.max(r-x-_,0)}:{left:t,bottom:d.height-T.y+x,maxHeight:Math.max(i-x-_,0)}})():null,q=c.colors.scrim,z=T?Math.min(M?.radius?c.radius[M.radius]+I:c.radius.md,Math.min(T.width,T.height)/2):0,V=Math.max(d.width,d.height);return(0,_jsxRuntime.jsx)(_index3.Modal,{visible:null!==m,onRequestClose:N,presentation:"fullScreen",backdropPressClose:!1,backdropStyle:u.transparent,contentStyle:u.transparent,accessibilityLabel:M?.title??M?.description,haptic:a,testID:o,children:T&&P&&M?(0,_jsxRuntime.jsxs)(_reactNative.View,{style:_reactNative.StyleSheet.absoluteFill,children:[(0,_jsxRuntime.jsx)(_reactNative.View,{style:[u.dim,{borderColor:q,borderWidth:V,top:T.y-V,left:T.x-V,width:T.width+2*V,height:T.height+2*V,borderRadius:z+V}]}),(0,_jsxRuntime.jsx)(_reactNative.View,{pointerEvents:"none",style:[u.highlight,{top:T.y,left:T.x,width:T.width,height:T.height,borderRadius:z}]}),(0,_jsxRuntime.jsxs)(_reactNative.Animated.View,{accessibilityLiveRegion:"polite",style:[u.card,P,{width:D,opacity:b}],testID:o?`${o}-card`:void 0,children:[(0,_jsxRuntime.jsx)(_reactNative.Text,{style:u.position,children:`Step ${(m?.index??0)+1} of ${t.length}`}),M.title?(0,_jsxRuntime.jsx)(_reactNative.Text,{style:u.title,accessibilityRole:"header",children:M.title}):null,(0,_jsxRuntime.jsx)(_reactNative.Text,{style:u.description,children:M.description}),(0,_jsxRuntime.jsxs)(_reactNative.View,{style:u.actions,children:[(0,_jsxRuntime.jsx)(_index2.Button,{title:n?.skip??"Skip",variant:"ghost",size:"sm",haptic:a,onPress:N,testID:o?`${o}-skip`:void 0}),(0,_jsxRuntime.jsxs)(_reactNative.View,{style:u.navigation,children:[m&&m.index>g?(0,_jsxRuntime.jsx)(_index2.Button,{title:n?.back??"Back",variant:"outline",size:"sm",haptic:a,onPress:()=>{k()},testID:o?`${o}-back`:void 0}):null,(0,_jsxRuntime.jsx)(_index2.Button,{title:C?n?.done??"Done":n?.next??"Next",size:"sm",haptic:a,onPress:()=>{S()},testID:o?`${o}-next`:void 0})]})]})]})]}):null})};exports.Tour=Tour,Tour.displayName="Tour";const buildStyles=e=>_reactNative.StyleSheet.create({transparent:{backgroundColor:"transparent"},dim:{position:"absolute"},highlight:{position:"absolute",borderWidth:2,borderColor:e.colors.primary,borderRadius:e.radius.md,..._corners.smoothCorners},card:{position:"absolute",backgroundColor:e.colors.surface,borderRadius:e.radius.lg,..._corners.smoothCorners,padding:e.space.lg,gap:e.space.sm,...e.shadow.popover},position:{color:e.colors["text-subtle"],fontSize:e.text.xs.size},title:{color:e.colors["text-body"],fontSize:e.text.lg.size,fontWeight:e.weight.semibold},description:{color:e.colors["text-muted"],fontSize:e.text.sm.size},actions:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",marginTop:e.space.xs},navigation:{flexDirection:"row",gap:e.space.sm}});var _default=exports.default=Tour;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.TypingIndicator=void 0;var cache,_react=require("react"),_reactNative=require("react-native"),_reactNativeReanimated=_interopRequireWildcard(require("react-native-reanimated")),_useReducedMotion=require("../../hooks/useReducedMotion.js"),_index=require("../../theme/index.js"),_corners=require("../../utils/corners.js"),_index2=require("../Text/index.js"),_jsxRuntime=require("react/jsx-runtime");function _interopRequireWildcard(e,t){if(!t&&e&&e.__esModule)return e;var i,a,r=Object.defineProperty,
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.TypingIndicator=void 0;var cache,_react=require("react"),_reactNative=require("react-native"),_reactNativeReanimated=_interopRequireWildcard(require("react-native-reanimated")),_useReducedMotion=require("../../hooks/useReducedMotion.js"),_index=require("../../theme/index.js"),_corners=require("../../utils/corners.js"),_index2=require("../Text/index.js"),_jsxRuntime=require("react/jsx-runtime");function _interopRequireWildcard(e,t){if(!t&&e&&e.__esModule)return e;var i,a,r=Object.defineProperty,s={__proto__:null,default:e};if(Object(e)!==e)return s;if(cache||"function"!=typeof WeakMap||(cache=new WeakMap),cache){if(cache.has(e))return cache.get(e);cache.set(e,s)}for(a in e)"default"!==a&&{}.hasOwnProperty.call(e,a)&&((i=r&&Object.getOwnPropertyDescriptor(e,a))&&(i.get||i.set)?r(s,a,i):s[a]=e[a]);return s}const DOT=6,DIM=.3,PULSE_MS=400,STAGGER_MS=160,STILL_OPACITY=[1,.65,.3],Dot=({index:e,still:t,colour:i,dotStyle:a})=>{const r=(0,_reactNativeReanimated.useSharedValue)(.3);(0,_react.useEffect)(()=>{if(!t)return r.value=(0,_reactNativeReanimated.withDelay)(160*e,(0,_reactNativeReanimated.withRepeat)((0,_reactNativeReanimated.withSequence)((0,_reactNativeReanimated.withTiming)(1,{duration:400}),(0,_reactNativeReanimated.withTiming)(.3,{duration:400})),-1)),()=>(0,_reactNativeReanimated.cancelAnimation)(r)},[t,e,r]);const s=(0,_reactNativeReanimated.useAnimatedStyle)(()=>({opacity:r.value}));return(0,_jsxRuntime.jsx)(_reactNativeReanimated.default.View,{style:[a,{backgroundColor:i},t?{opacity:STILL_OPACITY[e]}:s]})},TypingIndicator=({label:e,accessibilityLabel:t,bubble:i=!0,style:a,testID:r})=>{const s=(0,_index.useTheme)(),c=(0,_react.useMemo)(()=>buildStyles(s),[s]),n=(0,_useReducedMotion.useReducedMotion)(),o=s.colors["text-subtle"];return(0,_jsxRuntime.jsxs)(_reactNative.View,{style:[c.root,i?c.bubble:null,a],accessible:!0,accessibilityRole:"progressbar",accessibilityLabel:e??t??"Typing",accessibilityState:{busy:!0},"aria-busy":!0,testID:r,children:[(0,_jsxRuntime.jsx)(_reactNative.View,{style:c.dots,children:[0,1,2].map(e=>(0,_jsxRuntime.jsx)(Dot,{index:e,still:n,colour:o,dotStyle:c.dot},e))}),e?(0,_jsxRuntime.jsx)(_index2.Text,{variant:"bodySmall",color:"secondary",children:e}):null]})};exports.TypingIndicator=TypingIndicator;const buildStyles=e=>_reactNative.StyleSheet.create({dot:{width:6,height:6,borderRadius:e.radius.pill,..._corners.smoothCorners},root:{flexDirection:"row",alignItems:"center",alignSelf:"flex-start",gap:e.space.sm,marginTop:e.space.sm},bubble:{backgroundColor:e.colors["bg-subtle"],borderRadius:e.radius.xl,..._corners.smoothCorners,paddingHorizontal:e.space.md,paddingVertical:e.space.sm+e.space.xs},dots:{flexDirection:"row",alignItems:"center",gap:e.space.xs}});var _default=exports.default=TypingIndicator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Wheel=exports.WHEEL_VISIBLE_ITEMS=exports.WHEEL_CENTER_OFFSET=void 0;var _react=require("react"),_reactNative=require("react-native"),_index=require("../../theme/index.js"),_announce=require("../../utils/announce.js"),_hapticUtils=require("../../utils/hapticUtils.js"),_jsxRuntime=require("react/jsx-runtime");const WHEEL_VISIBLE_ITEMS=exports.WHEEL_VISIBLE_ITEMS=5,WHEEL_CENTER_OFFSET=exports.WHEEL_CENTER_OFFSET=Math.floor(WHEEL_VISIBLE_ITEMS/2),HAPTIC_DEBOUNCE_MS=35,WEB_SETTLE_MS=120,SCALE_STOPS=[-2,-1,0,1,2],WheelRow=(0,_react.memo)(({label:e,index:t,scrollY:a,itemHeight:
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Wheel=exports.WHEEL_VISIBLE_ITEMS=exports.WHEEL_CENTER_OFFSET=void 0;var _react=require("react"),_reactNative=require("react-native"),_index=require("../../theme/index.js"),_announce=require("../../utils/announce.js"),_hapticUtils=require("../../utils/hapticUtils.js"),_jsxRuntime=require("react/jsx-runtime");const WHEEL_VISIBLE_ITEMS=exports.WHEEL_VISIBLE_ITEMS=5,WHEEL_CENTER_OFFSET=exports.WHEEL_CENTER_OFFSET=Math.floor(WHEEL_VISIBLE_ITEMS/2),HAPTIC_DEBOUNCE_MS=35,WEB_SETTLE_MS=120,SCALE_STOPS=[-2,-1,0,1,2],WheelRow=(0,_react.memo)(({label:e,index:t,scrollY:a,itemHeight:n,selected:r,theme:i,reducedMotion:s,onPress:c,editor:l})=>{const{opacity:o,scale:u}=(0,_react.useMemo)(()=>{const e=_reactNative.Animated.subtract(_reactNative.Animated.divide(a,n),t);return{opacity:e.interpolate({inputRange:SCALE_STOPS,outputRange:[.3,.6,1,.6,.3],extrapolate:"clamp"}),scale:e.interpolate({inputRange:SCALE_STOPS,outputRange:[.85,.95,1.05,.95,.85],extrapolate:"clamp"})}},[a,n,t]),d=(0,_jsxRuntime.jsx)(_reactNative.Text,{numberOfLines:1,maxFontSizeMultiplier:1.5,style:{fontSize:i.text.xl.size,color:r?i.colors["text-body"]:i.colors["text-muted"],fontWeight:r?i.weight.semibold:i.weight.medium,letterSpacing:i["letter-spacing"].normal},children:e});return(0,_jsxRuntime.jsx)(_reactNative.Animated.View,{style:[styles.row,{height:n},s?{opacity:o}:{opacity:o,transform:[{scale:u}]}],accessible:!1,importantForAccessibility:"no",children:l??(c?(0,_jsxRuntime.jsx)(_reactNative.Pressable,{focusable:!1,accessible:!1,onPress:()=>c(t),style:styles.rowPress,children:d}):d)})}),Wheel=({label:e,items:t,selectedIndex:a,onIndexChange:n,itemHeight:r,width:i,theme:s,haptic:c,disabled:l,reducedMotion:o,typeable:u,testID:d})=>{const m="web"===_reactNative.Platform.OS,[_,b]=(0,_react.useState)(null),x=(0,_react.useRef)(!1),f=(0,_react.useRef)(null),h=(0,_react.useRef)((0,_index.createAnimatedValue)(a*r)).current,E=(0,_react.useRef)(a*r),y=(0,_react.useRef)(a*r),p=(0,_react.useRef)(a),v=(0,_react.useRef)(0),S=(0,_react.useRef)(null),g=(0,_react.useRef)(()=>{}),T=t.length-1;(0,_react.useEffect)(()=>{p.current=a;const e=a*r;if(y.current===e)return;if(y.current=e,Math.abs(E.current-e)<1)return;E.current=e,m||(0,_index.setNativeValue)(h,e);const t=requestAnimationFrame(()=>{f.current?.scrollToOffset({offset:e,animated:!1})});return()=>cancelAnimationFrame(t)},[a,r,h,m]),(0,_react.useEffect)(()=>()=>{S.current&&clearTimeout(S.current)},[]);const I=(0,_react.useCallback)((e,r)=>{if(!(e===a||e<0||e>T)){if("accessibility"===r){const e=(0,_hapticUtils.resolveHaptic)(c,"denseTick");e&&(0,_hapticUtils.triggerHaptic)(e)}if("keyboard"!==r){const a=t[e];a&&(0,_announce.announce)(a.accessibilityLabel??a.label)}n(e)}},[a,T,t,c,n]),M=(0,_react.useCallback)(()=>{!l&&u&&(x.current=!0,b(String(t[a]?.value??"")))},[l,u,t,a]),R=(0,_react.useCallback)(e=>{if(!x.current)return;x.current=!1,b(null);const a=e.trim();if(!/^\d+$/.test(a))return;const n=Number(a),r=t.findIndex(e=>e.value===n);r>=0&&I(r,"keyboard")},[t,I]);g.current=()=>{S.current=null;const e=Math.max(0,Math.min(T,Math.round(E.current/r))),t=e*r;Math.abs(E.current-t)>=1&&f.current?.scrollToOffset({offset:t,animated:!o}),I(e,"scroll")};const L=(0,_react.useMemo)(()=>_reactNative.Animated.event([{nativeEvent:{contentOffset:{y:h}}}],{useNativeDriver:!m,listener:e=>{const t=e.nativeEvent.contentOffset.y;E.current=t;const a=Math.round(t/r);if(a!==p.current&&a>=0&&a<=T){const e=Date.now();if(e-v.current>=35){const t=(0,_hapticUtils.resolveHaptic)(c,"denseTick");t&&(0,_hapticUtils.triggerHaptic)(t),v.current=e}p.current=a}m&&(S.current&&clearTimeout(S.current),S.current=setTimeout(()=>g.current(),120))}}),[h,r,T,c,m]),w=(0,_react.useCallback)(e=>{const t=e.nativeEvent.contentOffset.y;I(Math.max(0,Math.min(T,Math.round(t/r))),"scroll")},[I,T,r]),j=(0,_react.useCallback)(e=>{if(l)return;const t=e.nativeEvent.actionName;"increment"===t?I(Math.min(T,a+1),"accessibility"):"decrement"===t&&I(Math.max(0,a-1),"accessibility")},[l,I,T,a]),C=(0,_react.useCallback)(e=>{l||f.current?.scrollToOffset({offset:e*r,animated:!o})},[l,r,o]),N=(0,_react.useCallback)(({item:t,index:n})=>{const i=n===a,c=i&&null!==_;return(0,_jsxRuntime.jsx)(WheelRow,{label:t.label,index:n,scrollY:h,itemHeight:r,selected:i,theme:s,reducedMotion:o,onPress:i&&u?M:m?C:void 0,editor:c?(0,_jsxRuntime.jsx)(_reactNative.TextInput,{autoFocus:!0,selectTextOnFocus:!0,keyboardType:"number-pad",returnKeyType:"done",accessibilityLabel:e,value:_,onChangeText:b,onSubmitEditing:()=>R(_),onBlur:()=>R(_),style:{width:"100%",padding:s.space.none,textAlign:"center",fontSize:s.text.xl.size,color:s.colors["text-body"],fontWeight:s.weight.semibold,letterSpacing:s["letter-spacing"].normal}}):void 0})},[h,r,a,s,o,m,C,u,M,_,R,e]),A=(0,_react.useCallback)((e,t)=>`${String(e.value)}-${t}`,[]),F=(0,_react.useCallback)((e,t)=>({length:r,offset:r*t,index:t}),[r]),H=t[a]?t[a].accessibilityLabel??t[a].label:"",W=m?{focusable:!0,role:"spinbutton","aria-label":e,"aria-valuetext":H,"aria-valuenow":a,"aria-valuemin":0,"aria-valuemax":T,"aria-disabled":l,onKeyDown:e=>{if(l)return;const t={ArrowDown:Math.min(T,a+1),PageDown:Math.min(T,a+1),ArrowUp:Math.max(0,a-1),PageUp:Math.max(0,a-1),Home:0,End:T}[e.key];void 0!==t&&(e.preventDefault?.(),I(t,"keyboard"))}}:void 0;return(0,_jsxRuntime.jsxs)(_reactNative.View,{style:[void 0===i?styles.columnFlex:{width:i},{height:r*WHEEL_VISIBLE_ITEMS},styles.column,l?styles.disabled:null],testID:d,...W,children:[m?null:(0,_jsxRuntime.jsx)(_reactNative.View,{pointerEvents:"none",style:styles.a11yLayer,accessible:!0,accessibilityRole:"adjustable",accessibilityLabel:e,accessibilityValue:{text:H},accessibilityState:{disabled:Boolean(l)},"aria-disabled":Boolean(l),accessibilityActions:[{name:"increment"},{name:"decrement"}],onAccessibilityAction:j}),(0,_jsxRuntime.jsx)(_reactNative.Animated.FlatList,{ref:f,data:t,keyExtractor:A,renderItem:N,getItemLayout:F,showsVerticalScrollIndicator:!1,snapToInterval:r,snapToAlignment:"start",decelerationRate:"fast",bounces:!1,scrollEnabled:!l,nestedScrollEnabled:!0,scrollEventThrottle:16,onScroll:L,onMomentumScrollEnd:w,contentContainerStyle:{paddingVertical:r*WHEEL_CENTER_OFFSET},initialScrollIndex:a,style:[styles.list,{height:r*WHEEL_VISIBLE_ITEMS}],importantForAccessibility:"no-hide-descendants","aria-hidden":!0})]})};exports.Wheel=Wheel;const styles=_reactNative.StyleSheet.create({column:{overflow:"hidden"},columnFlex:{flex:1},disabled:{opacity:.5},list:{flexGrow:0},row:{alignItems:"center",justifyContent:"center"},rowPress:{alignItems:"center",justifyContent:"center",alignSelf:"stretch",flex:1},a11yLayer:{..._reactNative.StyleSheet.absoluteFill,zIndex:2}});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.WheelPicker=void 0;var _react=require("react"),_reactNative=require("react-native"),_useReducedMotion=require("../../hooks/useReducedMotion.js"),_index=require("../../theme/index.js"),_index2=require("../Chip/index.js"),_Wheel=require("./Wheel.js"),_jsxRuntime=require("react/jsx-runtime");const BASE_ITEM_HEIGHT=40,MAX_FONT_SCALE=1.5,DEFAULT_COLUMN_WIDTH=64,MAX_DURATION_MINUTES=1439,range=(e,t,i=1)=>{const a=[];for(let
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.WheelPicker=void 0;var _react=require("react"),_reactNative=require("react-native"),_useReducedMotion=require("../../hooks/useReducedMotion.js"),_index=require("../../theme/index.js"),_index2=require("../Chip/index.js"),_Wheel=require("./Wheel.js"),_jsxRuntime=require("react/jsx-runtime");const BASE_ITEM_HEIGHT=40,MAX_FONT_SCALE=1.5,DEFAULT_COLUMN_WIDTH=64,MAX_DURATION_MINUTES=1439,range=(e,t,i=1)=>{const a=[];for(let s=e;s<=t;s+=i)a.push(s);return a},plural=(e,t,i)=>`${e} ${1===e?t:i}`,formatPreset=(e,t,i)=>{const a=Math.floor(e/60),s=e%60;return 0===a?`${s} ${i}`:0===s?`${a} ${t}`:`${a} ${t} ${s} ${i}`},toItem=e=>"object"==typeof e?e:{value:e,label:String(e)},WheelPicker=e=>{const{haptic:t,disabled:i,testID:a,style:s}=e,r=(0,_index.useTheme)(),n=(0,_useReducedMotion.useReducedMotion)(),{fontScale:o}=(0,_reactNative.useWindowDimensions)(),l=Math.min(Math.max(o,1),1.5),u=Math.round(40*l),d=(0,_react.useMemo)(()=>buildStyles(r,u),[r,u]),c="list"===e.mode?e.items:void 0,m=(0,_react.useMemo)(()=>c?.map(toItem),[c]),h="duration"===e.mode?e.minuteStep??1:1,_="duration"===e.mode?Math.max(0,Math.min(1439,Math.floor(e.maxMinutes??1/0))):0,x=Math.floor(_/60),p="duration"===e.mode?e.labels:void 0,b=p?.hours??"Hours",f=p?.minutes??"Minutes",M=p?.hourUnit??"hr",v=p?.minuteUnit??"min",j="duration"===e.mode?e.presets:void 0;for(const e of j??[])if(!Number.isInteger(e)||e<0||e>_||e%h!==0)throw new Error(`WheelPicker preset ${e} must be a whole number of minutes from 0 to ${_} in steps of ${h}.`);const y=(0,_react.useCallback)(e=>{const t=e===x?_%60:59;return Math.floor(t/h)*h},[x,_,h]),g="duration"===e.mode?e.value:0,w=(0,_react.useMemo)(()=>{const e=Number.isFinite(g)?g:0,t=Math.max(0,Math.min(_,e)),i=Math.floor(t/60),a=Math.round(t%60/h)*h;return{hour:i,minute:Math.min(y(i),a)}},[g,_,h,y]),S=(0,_react.useMemo)(()=>"duration"===e.mode?range(0,x).map(e=>({value:e,label:String(e),accessibilityLabel:plural(e,"hour","hours")})):[],[e.mode,x]),N=y(w.hour),W=(0,_react.useMemo)(()=>"duration"===e.mode?range(0,N,h).map(e=>({value:e,label:String(e).padStart(2,"0"),accessibilityLabel:plural(e,"minute","minutes")})):[],[e.mode,N,h]),I=(0,_react.useMemo)(()=>"list"===e.mode?[{key:"list",label:e.label??"Value",items:m??[],value:e.value??"",width:e.width}]:"duration"===e.mode?[{key:"hours",label:b,items:S,value:w.hour,unit:M,gapAfter:r.space.md},{key:"minutes",label:f,items:W,value:w.minute,unit:v}]:e.columns,[e,m,S,W,w,b,f,M,v,r.space.md]),{onChange:R}=e,k=(0,_react.useCallback)((t,i)=>{const a=t.items[i];if(a&&R)if("list"===e.mode)R(a.value);else if("duration"===e.mode){const e=Number(a.value),i=R;"hours"===t.key?i(60*e+Math.min(w.minute,y(e))):i(60*w.hour+e)}else R(t.key,a.value)},[R,e.mode,w,y]),E=(0,_react.useCallback)(e=>{R?.(e)},[R]),C=60*w.hour+w.minute,T=(0,_jsxRuntime.jsxs)(_reactNative.View,{style:[d.wheels,s],testID:a,children:[(0,_jsxRuntime.jsxs)(_reactNative.View,{pointerEvents:"none",style:d.selectionBand,children:[(0,_jsxRuntime.jsx)(_reactNative.View,{style:d.bandLine}),(0,_jsxRuntime.jsx)(_reactNative.View,{style:d.bandLine})]}),I.map(a=>{if(0===a.items.length)return null;const s=a.items.findIndex(e=>e.value===a.value);return(0,_jsxRuntime.jsxs)(_react.Fragment,{children:[(0,_jsxRuntime.jsx)(_Wheel.Wheel,{label:a.label,items:a.items,selectedIndex:Math.max(0,s),onIndexChange:e=>k(a,e),itemHeight:u,width:a.width??("list"===e.mode?void 0:64),theme:r,haptic:t,disabled:i,reducedMotion:n,typeable:"duration"===e.mode,testID:a.testID}),a.unit?(0,_jsxRuntime.jsx)(_reactNative.Text,{style:d.unit,maxFontSizeMultiplier:1.5,numberOfLines:1,accessible:!1,importantForAccessibility:"no","aria-hidden":!0,children:a.unit}):null,a.separator?(0,_jsxRuntime.jsx)(_reactNative.Text,{style:d.separator,maxFontSizeMultiplier:1.5,accessible:!1,importantForAccessibility:"no","aria-hidden":!0,children:a.separator}):null,a.gapAfter?(0,_jsxRuntime.jsx)(_reactNative.View,{style:{width:a.gapAfter}}):null]},a.key)})]});return j&&0!==j.length?(0,_jsxRuntime.jsxs)(_reactNative.View,{children:[T,(0,_jsxRuntime.jsx)(_reactNative.View,{style:d.presets,children:j.map(e=>(0,_jsxRuntime.jsx)(_index2.Chip,{label:formatPreset(e,M,v),size:"sm",selected:e===C,disabled:i,onPress:()=>E(e)},e))})]}):T};exports.WheelPicker=WheelPicker;const buildStyles=(e,t)=>_reactNative.StyleSheet.create({wheels:{flexDirection:"row",alignItems:"center",justifyContent:"center",height:t*_Wheel.WHEEL_VISIBLE_ITEMS,position:"relative"},selectionBand:{position:"absolute",left:0,right:0,top:t*_Wheel.WHEEL_CENTER_OFFSET,height:t,justifyContent:"space-between"},bandLine:{height:2*_reactNative.StyleSheet.hairlineWidth,backgroundColor:e.colors.primary,opacity:.85},separator:{fontSize:e.text["2xl"].size,fontWeight:e.weight.bold,color:e.colors["text-body"],paddingHorizontal:e.space.xs},unit:{fontSize:e.text.base.size,fontWeight:e.weight.semibold,color:e.colors["text-muted"],paddingLeft:e.space.xs},presets:{flexDirection:"row",flexWrap:"wrap",justifyContent:"center",gap:e.space.xs,paddingTop:e.space.sm}});var _default=exports.default=WheelPicker;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useDragToDismiss=exports.createDragToDismissController=exports.DRAG_DISMISS_VELOCITY=exports.DRAG_DISMISS_DISTANCE=void 0;var _react=require("react"),_reactNative=require("react-native"),_reactNativeGestureHandler=require("react-native-gesture-handler"),_index=require("../theme/index.js"),_usePresenceMotion=require("./usePresenceMotion.js");const DRAG_DISMISS_DISTANCE=exports.DRAG_DISMISS_DISTANCE=100,DRAG_DISMISS_VELOCITY=exports.DRAG_DISMISS_VELOCITY=.5,createDragToDismissController=({drag:e,travel:t,onDismiss:r,opacity:a},s,i)=>{const{snappy:n}=s.spring,springBack=()=>_reactNative.Animated.spring(e,{toValue:0,damping:n.damping,stiffness:n.stiffness,mass:n.mass,useNativeDriver:!0}).start(),o=!0===i?.reduced?a:void 0,
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useDragToDismiss=exports.createDragToDismissController=exports.DRAG_DISMISS_VELOCITY=exports.DRAG_DISMISS_DISTANCE=void 0;var _react=require("react"),_reactNative=require("react-native"),_reactNativeGestureHandler=require("react-native-gesture-handler"),_index=require("../theme/index.js"),_usePresenceMotion=require("./usePresenceMotion.js");const DRAG_DISMISS_DISTANCE=exports.DRAG_DISMISS_DISTANCE=100,DRAG_DISMISS_VELOCITY=exports.DRAG_DISMISS_VELOCITY=.5,createDragToDismissController=({drag:e,travel:t,onDismiss:r,opacity:a},s,i)=>{const{snappy:n}=s.spring,springBack=()=>_reactNative.Animated.spring(e,{toValue:0,damping:n.damping,stiffness:n.stiffness,mass:n.mass,useNativeDriver:!0}).start(),o=!0===i?.reduced?a:void 0,u=i?.duration("default")??s.duration.default;return{move:t=>{(0,_index.setNativeValue)(e,Math.max(0,t))},release:(a,i)=>{if(a>DRAG_DISMISS_DISTANCE||i>DRAG_DISMISS_VELOCITY){if(o)return void _reactNative.Animated.timing(o,{toValue:0,duration:u,easing:_reactNative.Easing.bezier(...s.ease.accelerate),useNativeDriver:!0}).start(()=>r());_reactNative.Animated.timing(e,{toValue:"function"==typeof t?t():t,duration:s.duration.fast,easing:_reactNative.Easing.bezier(...s.ease.accelerate),useNativeDriver:!0}).start(()=>r())}else springBack()},cancel:springBack}};exports.createDragToDismissController=createDragToDismissController;const useDragToDismiss=e=>{const{drag:t,travel:r,onDismiss:a,contentAtTop:s,scrollGesture:i}=e,{motion:n}=(0,_index.useTheme)(),o=(0,_usePresenceMotion.usePresenceMotion)(),u=(0,_react.useRef)((0,_index.createAnimatedValue)(1)).current;return(0,_react.useMemo)(()=>{const e=createDragToDismissController({drag:t,travel:r,onDismiss:a,opacity:u},n,o),c=_reactNativeGestureHandler.Gesture.Pan().runOnJS(!0).activeOffsetY(6).failOffsetX([-12,12]).onUpdate(t=>e.move(t.translationY)).onEnd(t=>e.release(t.translationY,t.velocityY/1e3)).onFinalize((_e,t)=>{t||e.cancel()});let l=0,D=!1;const d=_reactNativeGestureHandler.Gesture.Pan().runOnJS(!0).activeOffsetY(8).failOffsetX([-12,12]).onBegin(()=>{l=0,D=!1}).onUpdate(t=>{if(!D){if(s&&!s())return;D=!0,l=t.translationY}e.move(t.translationY-l)}).onEnd(t=>{D&&e.release(t.translationY-l,t.velocityY/1e3)}).onFinalize((_e,t)=>{!t&&D&&e.cancel()});return i&&d.simultaneousWithExternalGesture(i),{handleGesture:c,sheetGesture:d,opacity:u}},[t,r,a,s,i,n,o,u])};exports.useDragToDismiss=useDragToDismiss;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.usePressAnimation=exports.PRESS_ANIMATION_PRESETS=void 0;var _react=require("react"),_reactNative=require("react-native"),_index=require("../theme/index.js"),_animatedValue=require("../theme/animatedValue.js"),_usePresenceMotion=require("./usePresenceMotion.js");const PRESS_ANIMATION_PRESETS=exports.PRESS_ANIMATION_PRESETS=["scale","bounce","fade","sink","pulse"],FADE_TO=.6,SINK_BY=2,PULSE_TO=1.05,DEFAULT_SCALE_TO={scale:.97,bounce:.92,fade:1,sink:1,pulse:1},usePressAnimation=({preset:e="scale",scaleTo:a,pressDuration:t,enabled:s=!0}={})=>{const r=(0,_index.useTheme)(),i=(0,_usePresenceMotion.usePresenceMotion)(),n=(0,_react.useRef)((0,_animatedValue.createAnimatedValue)(1)).current,c=(0,_react.useRef)((0,_animatedValue.createAnimatedValue)(1)).current,u=(0,_react.useRef)((0,_animatedValue.createAnimatedValue)(0)).current,o=i.reduced?"fade":e,l=a??DEFAULT_SCALE_TO[o],_=t??i.duration("fast"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.usePressAnimation=exports.PRESS_ANIMATION_PRESETS=void 0;var _react=require("react"),_reactNative=require("react-native"),_index=require("../theme/index.js"),_animatedValue=require("../theme/animatedValue.js"),_usePresenceMotion=require("./usePresenceMotion.js");const PRESS_ANIMATION_PRESETS=exports.PRESS_ANIMATION_PRESETS=["scale","bounce","fade","sink","pulse"],FADE_TO=.6,SINK_BY=2,PULSE_TO=1.05,DEFAULT_SCALE_TO={scale:.97,bounce:.92,fade:1,sink:1,pulse:1},usePressAnimation=({preset:e="scale",scaleTo:a,pressDuration:t,enabled:s=!0}={})=>{const r=(0,_index.useTheme)(),i=(0,_usePresenceMotion.usePresenceMotion)(),n=(0,_react.useRef)((0,_animatedValue.createAnimatedValue)(1)).current,c=(0,_react.useRef)((0,_animatedValue.createAnimatedValue)(1)).current,u=(0,_react.useRef)((0,_animatedValue.createAnimatedValue)(0)).current,o=i.reduced?"fade":e,l=a??DEFAULT_SCALE_TO[o],_=t??i.duration("fast"),m=(0,_react.useCallback)((e,a,t)=>_reactNative.Animated.timing(e,{toValue:a,duration:_,easing:_reactNative.Easing.bezier(...t),useNativeDriver:!0}),[_]),d=(0,_react.useCallback)((e,a,t)=>_reactNative.Animated.spring(e,{toValue:a,damping:r.motion.spring[t].damping,stiffness:r.motion.spring[t].stiffness,mass:r.motion.spring[t].mass,useNativeDriver:!0}),[r]),p=(0,_react.useCallback)(()=>{if(s)switch(o){case"scale":case"bounce":m(n,l,r.motion.ease["in-out"]).start();break;case"fade":m(c,.6,r.motion.ease["in-out"]).start();break;case"sink":m(u,2,r.motion.ease["in-out"]).start()}},[s,o,l,n,c,u,r,m]),A=(0,_react.useCallback)(()=>{if(s)switch(o){case"scale":d(n,1,"snappy").start();break;case"bounce":d(n,1,"bouncy").start();break;case"fade":m(c,1,r.motion.ease.decelerate).start();break;case"sink":d(u,0,"snappy").start()}},[s,o,n,c,u,r,m,d]),b=(0,_react.useCallback)(()=>{s&&"pulse"===o&&_reactNative.Animated.sequence([_reactNative.Animated.timing(n,{toValue:1.05,duration:r.motion.duration.instant,easing:_reactNative.Easing.bezier(...r.motion.ease.accelerate),useNativeDriver:!0}),d(n,1,"snappy")]).start()},[s,o,n,r,d]),f=(0,_react.useMemo)(()=>({transform:[{scale:n},{translateY:u}],opacity:c}),[n,u,c]);return{scale:n,opacity:c,translateY:u,style:f,pressIn:p,pressOut:A,press:b}};exports.usePressAnimation=usePressAnimation;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useRefreshControl=void 0;var _mobileCore=require("@webority/mobile-core"),_react=require("react"),_reactNative=require("react-native"),_index=require("../theme/index.js"),_announce=require("../utils/announce.js"),_hapticUtils=require("../utils/hapticUtils.js"),_jsxRuntime=require("react/jsx-runtime");const DEFAULT_MIN_VISIBLE_MS=400,useRefreshControl=e=>{const{onRefresh:r,refreshing:t=!1,haptic:s,title:c,minVisibleMs:n=DEFAULT_MIN_VISIBLE_MS,labels:o}=e,a=(0,_index.useTheme)(),[i,u]=(0,_react.useState)(!1),l=(0,_react.useRef)(!1),_=(0,_react.useRef)(!0),f=(0,_react.useRef)(null),h=(0,_react.useRef)(r);h.current=r;const
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useRefreshControl=void 0;var _mobileCore=require("@webority/mobile-core"),_react=require("react"),_reactNative=require("react-native"),_index=require("../theme/index.js"),_announce=require("../utils/announce.js"),_hapticUtils=require("../utils/hapticUtils.js"),_jsxRuntime=require("react/jsx-runtime");const DEFAULT_MIN_VISIBLE_MS=400,useRefreshControl=e=>{const{onRefresh:r,refreshing:t=!1,haptic:s,title:c,minVisibleMs:n=DEFAULT_MIN_VISIBLE_MS,labels:o}=e,a=(0,_index.useTheme)(),[i,u]=(0,_react.useState)(!1),l=(0,_react.useRef)(!1),_=(0,_react.useRef)(!0),f=(0,_react.useRef)(null),h=(0,_react.useRef)(r);h.current=r;const m=(0,_react.useRef)(o);m.current=o;const R=(0,_react.useRef)(n);R.current=n,(0,_react.useEffect)(()=>(_.current=!0,()=>{_.current=!1,f.current?.release()}),[]);const b=(0,_react.useCallback)(e=>new Promise(r=>{if(e<=0)return void r();const t=setTimeout(()=>{f.current=null,r()},e);f.current={release:()=>{clearTimeout(t),f.current=null,r()}}}),[]),d=(0,_react.useCallback)(async e=>{if(l.current)return;l.current=!0,u(!0);const r=Date.now();e&&(0,_announce.announce)(m.current?.refreshing??"Refreshing");let t=!1;try{await h.current()}catch(e){t=!0,_mobileCore.Logger.error("[@webority/mobile-ui] useRefreshControl: onRefresh failed.",e)}_.current&&await b(R.current-(Date.now()-r)),l.current=!1,_.current&&(u(!1),e&&!t&&(0,_announce.announce)(m.current?.refreshed??"Updated"))},[b]),p="android"===_reactNative.Platform.OS?"gestureStart":null,C=void 0===s?p:(0,_hapticUtils.resolveHaptic)(s,"gestureStart"),g=(0,_react.useCallback)(()=>{l.current||(C&&(0,_hapticUtils.triggerHaptic)(C),d(!1))},[C,d]),v=(0,_react.useCallback)(()=>d(!0),[d]),x=(0,_react.useMemo)(()=>({accessibilityActions:[{name:"refresh",label:o?.refresh??"Refresh"}],onAccessibilityAction:e=>{"refresh"===e.nativeEvent.actionName&&d(!0)}}),[o?.refresh,d]),y=i||t;return{refreshControl:(0,_react.useMemo)(()=>(0,_jsxRuntime.jsx)(_reactNative.RefreshControl,{refreshing:y,onRefresh:g,tintColor:a.colors.primary,colors:[a.colors.primary],progressBackgroundColor:a.colors.surface,title:c,titleColor:a.colors["text-muted"]}),[y,g,c,a.colors.primary,a.colors.surface,a.colors["text-muted"]]),refreshing:y,refresh:v,accessibilityProps:x}};exports.useRefreshControl=useRefreshControl;
|
package/lib/commonjs/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var _exportNames={APP_ICON_SIZES:!0,AppIcon:!0,CURATED_ICON_NAMES:!0,defaultIcons:!0,ICON_NAMES:!0,ICONSAX_SUFFIX:!0,renderSlotIcon:!0,deletePath:!0,Form:!0,getPath:!0,HookFormField:!0,isFieldFilled:!0,rules:!0,setPath:!0,useField:!0,useFieldArray:!0,useForm:!0,useFormCompletion:!0,useFormContext:!0,useHookFormField:!0,useOptionalFormContext:!0,FLICK_TOLERANCE:!0,PRESENCE_REDUCE_MOTION:!0,PRESS_ANIMATION_PRESETS:!0,useControllableState:!0,useDebounce:!0,useFieldChain:!0,useFlickGuard:!0,usePresenceMotion:!0,usePressAnimation:!0,useReducedMotion:!0,useRefreshControl:!0,useScrollDirection:!0,useToggle:!0,initUI:!0,NetworkStatusBanner:!0,darkTheme:!0,fontSizeOf:!0,getColorMode:!0,getTheme:!0,lightTheme:!0,mergeTheme:!0,radiusOf:!0,resetTheme:!0,resolveBadgeSize:!0,resolveButtonSize:!0,resolveCheckboxSize:!0,resolveChipSize:!0,resolveEmptyStateSize:!0,resolveFieldSize:!0,resolveFloatingActionButtonSize:!0,resolveListItemSize:!0,resolveOtpInputSize:!0,resolveRadioSize:!0,resolveSegmentedControlSize:!0,resolveSliderSize:!0,resolveSwitchSize:!0,resolveTabsSize:!0,setColorMode:!0,setTheme:!0,spaceOf:!0,subscribeTheme:!0,ThemeProvider:!0,useTheme:!0,useThemeMode:!0,announce:!0,Breakpoints:!0,configureFeedback:!0,feedback:!0,hapticForIntent:!0,isFeedbackEnabled:!0,isScreenSize:!0,isTablet:!0,Responsive:!0,ScreenDimensions:!0,SQUIRCLE_MIN_RADIUS:!0,SQUIRCLE_SMOOTHING:!0,setHapticImplementation:!0,shadowStyle:!0,smoothCorners:!0,squircleApplies:!0,squircleHostRadius:!0,squirclePath:!0,triggerHaptic:!0,useScreenDimensions:!0,warnUnknownProps:!0};Object.defineProperty(exports,"APP_ICON_SIZES",{enumerable:!0,get:function(){return _index2.APP_ICON_SIZES}}),Object.defineProperty(exports,"AppIcon",{enumerable:!0,get:function(){return _index2.AppIcon}}),Object.defineProperty(exports,"Breakpoints",{enumerable:!0,get:function(){return _index7.Breakpoints}}),Object.defineProperty(exports,"CURATED_ICON_NAMES",{enumerable:!0,get:function(){return _index2.CURATED_ICON_NAMES}}),Object.defineProperty(exports,"FLICK_TOLERANCE",{enumerable:!0,get:function(){return _index4.FLICK_TOLERANCE}}),Object.defineProperty(exports,"Form",{enumerable:!0,get:function(){return _index3.Form}}),Object.defineProperty(exports,"HookFormField",{enumerable:!0,get:function(){return _index3.HookFormField}}),Object.defineProperty(exports,"ICONSAX_SUFFIX",{enumerable:!0,get:function(){return _index2.ICONSAX_SUFFIX}}),Object.defineProperty(exports,"ICON_NAMES",{enumerable:!0,get:function(){return _index2.ICON_NAMES}}),Object.defineProperty(exports,"NetworkStatusBanner",{enumerable:!0,get:function(){return _index5.NetworkStatusBanner}}),Object.defineProperty(exports,"PRESENCE_REDUCE_MOTION",{enumerable:!0,get:function(){return _index4.PRESENCE_REDUCE_MOTION}}),Object.defineProperty(exports,"PRESS_ANIMATION_PRESETS",{enumerable:!0,get:function(){return _index4.PRESS_ANIMATION_PRESETS}}),Object.defineProperty(exports,"Responsive",{enumerable:!0,get:function(){return _index7.Responsive}}),Object.defineProperty(exports,"SQUIRCLE_MIN_RADIUS",{enumerable:!0,get:function(){return _index7.SQUIRCLE_MIN_RADIUS}}),Object.defineProperty(exports,"SQUIRCLE_SMOOTHING",{enumerable:!0,get:function(){return _index7.SQUIRCLE_SMOOTHING}}),Object.defineProperty(exports,"ScreenDimensions",{enumerable:!0,get:function(){return _index7.ScreenDimensions}}),Object.defineProperty(exports,"ThemeProvider",{enumerable:!0,get:function(){return _index6.ThemeProvider}}),Object.defineProperty(exports,"announce",{enumerable:!0,get:function(){return _index7.announce}}),Object.defineProperty(exports,"configureFeedback",{enumerable:!0,get:function(){return _index7.configureFeedback}}),Object.defineProperty(exports,"darkTheme",{enumerable:!0,get:function(){return _index6.darkTheme}}),Object.defineProperty(exports,"defaultIcons",{enumerable:!0,get:function(){return _index2.defaultIcons}}),Object.defineProperty(exports,"deletePath",{enumerable:!0,get:function(){return _index3.deletePath}}),Object.defineProperty(exports,"feedback",{enumerable:!0,get:function(){return _index7.feedback}}),Object.defineProperty(exports,"fontSizeOf",{enumerable:!0,get:function(){return _index6.fontSizeOf}}),Object.defineProperty(exports,"getColorMode",{enumerable:!0,get:function(){return _index6.getColorMode}}),Object.defineProperty(exports,"getPath",{enumerable:!0,get:function(){return _index3.getPath}}),Object.defineProperty(exports,"getTheme",{enumerable:!0,get:function(){return _index6.getTheme}}),Object.defineProperty(exports,"hapticForIntent",{enumerable:!0,get:function(){return _index7.hapticForIntent}}),Object.defineProperty(exports,"initUI",{enumerable:!0,get:function(){return _initUI.initUI}}),Object.defineProperty(exports,"isFeedbackEnabled",{enumerable:!0,get:function(){return _index7.isFeedbackEnabled}}),Object.defineProperty(exports,"isFieldFilled",{enumerable:!0,get:function(){return _index3.isFieldFilled}}),Object.defineProperty(exports,"isScreenSize",{enumerable:!0,get:function(){return _index7.isScreenSize}}),Object.defineProperty(exports,"isTablet",{enumerable:!0,get:function(){return _index7.isTablet}}),Object.defineProperty(exports,"lightTheme",{enumerable:!0,get:function(){return _index6.lightTheme}}),Object.defineProperty(exports,"mergeTheme",{enumerable:!0,get:function(){return _index6.mergeTheme}}),Object.defineProperty(exports,"radiusOf",{enumerable:!0,get:function(){return _index6.radiusOf}}),Object.defineProperty(exports,"renderSlotIcon",{enumerable:!0,get:function(){return _index2.renderSlotIcon}}),Object.defineProperty(exports,"resetTheme",{enumerable:!0,get:function(){return _index6.resetTheme}}),Object.defineProperty(exports,"resolveBadgeSize",{enumerable:!0,get:function(){return _index6.resolveBadgeSize}}),Object.defineProperty(exports,"resolveButtonSize",{enumerable:!0,get:function(){return _index6.resolveButtonSize}}),Object.defineProperty(exports,"resolveCheckboxSize",{enumerable:!0,get:function(){return _index6.resolveCheckboxSize}}),Object.defineProperty(exports,"resolveChipSize",{enumerable:!0,get:function(){return _index6.resolveChipSize}}),Object.defineProperty(exports,"resolveEmptyStateSize",{enumerable:!0,get:function(){return _index6.resolveEmptyStateSize}}),Object.defineProperty(exports,"resolveFieldSize",{enumerable:!0,get:function(){return _index6.resolveFieldSize}}),Object.defineProperty(exports,"resolveFloatingActionButtonSize",{enumerable:!0,get:function(){return _index6.resolveFloatingActionButtonSize}}),Object.defineProperty(exports,"resolveListItemSize",{enumerable:!0,get:function(){return _index6.resolveListItemSize}}),Object.defineProperty(exports,"resolveOtpInputSize",{enumerable:!0,get:function(){return _index6.resolveOtpInputSize}}),Object.defineProperty(exports,"resolveRadioSize",{enumerable:!0,get:function(){return _index6.resolveRadioSize}}),Object.defineProperty(exports,"resolveSegmentedControlSize",{enumerable:!0,get:function(){return _index6.resolveSegmentedControlSize}}),Object.defineProperty(exports,"resolveSliderSize",{enumerable:!0,get:function(){return _index6.resolveSliderSize}}),Object.defineProperty(exports,"resolveSwitchSize",{enumerable:!0,get:function(){return _index6.resolveSwitchSize}}),Object.defineProperty(exports,"resolveTabsSize",{enumerable:!0,get:function(){return _index6.resolveTabsSize}}),Object.defineProperty(exports,"rules",{enumerable:!0,get:function(){return _index3.rules}}),Object.defineProperty(exports,"setColorMode",{enumerable:!0,get:function(){return _index6.setColorMode}}),Object.defineProperty(exports,"setHapticImplementation",{enumerable:!0,get:function(){return _index7.setHapticImplementation}}),Object.defineProperty(exports,"setPath",{enumerable:!0,get:function(){return _index3.setPath}}),Object.defineProperty(exports,"setTheme",{enumerable:!0,get:function(){return _index6.setTheme}}),Object.defineProperty(exports,"shadowStyle",{enumerable:!0,get:function(){return _index7.shadowStyle}}),Object.defineProperty(exports,"smoothCorners",{enumerable:!0,get:function(){return _index7.smoothCorners}}),Object.defineProperty(exports,"spaceOf",{enumerable:!0,get:function(){return _index6.spaceOf}}),Object.defineProperty(exports,"squircleApplies",{enumerable:!0,get:function(){return _index7.squircleApplies}}),Object.defineProperty(exports,"squircleHostRadius",{enumerable:!0,get:function(){return _index7.squircleHostRadius}}),Object.defineProperty(exports,"squirclePath",{enumerable:!0,get:function(){return _index7.squirclePath}}),Object.defineProperty(exports,"subscribeTheme",{enumerable:!0,get:function(){return _index6.subscribeTheme}}),Object.defineProperty(exports,"triggerHaptic",{enumerable:!0,get:function(){return _index7.triggerHaptic}}),Object.defineProperty(exports,"useControllableState",{enumerable:!0,get:function(){return _index4.useControllableState}}),Object.defineProperty(exports,"useDebounce",{enumerable:!0,get:function(){return _index4.useDebounce}}),Object.defineProperty(exports,"useField",{enumerable:!0,get:function(){return _index3.useField}}),Object.defineProperty(exports,"useFieldArray",{enumerable:!0,get:function(){return _index3.useFieldArray}}),Object.defineProperty(exports,"useFieldChain",{enumerable:!0,get:function(){return _index4.useFieldChain}}),Object.defineProperty(exports,"useFlickGuard",{enumerable:!0,get:function(){return _index4.useFlickGuard}}),Object.defineProperty(exports,"useForm",{enumerable:!0,get:function(){return _index3.useForm}}),Object.defineProperty(exports,"useFormCompletion",{enumerable:!0,get:function(){return _index3.useFormCompletion}}),Object.defineProperty(exports,"useFormContext",{enumerable:!0,get:function(){return _index3.useFormContext}}),Object.defineProperty(exports,"useHookFormField",{enumerable:!0,get:function(){return _index3.useHookFormField}}),Object.defineProperty(exports,"useOptionalFormContext",{enumerable:!0,get:function(){return _index3.useOptionalFormContext}}),Object.defineProperty(exports,"usePresenceMotion",{enumerable:!0,get:function(){return _index4.usePresenceMotion}}),Object.defineProperty(exports,"usePressAnimation",{enumerable:!0,get:function(){return _index4.usePressAnimation}}),Object.defineProperty(exports,"useReducedMotion",{enumerable:!0,get:function(){return _index4.useReducedMotion}}),Object.defineProperty(exports,"useRefreshControl",{enumerable:!0,get:function(){return _index4.useRefreshControl}}),Object.defineProperty(exports,"useScreenDimensions",{enumerable:!0,get:function(){return _index7.useScreenDimensions}}),Object.defineProperty(exports,"useScrollDirection",{enumerable:!0,get:function(){return _index4.useScrollDirection}}),Object.defineProperty(exports,"useTheme",{enumerable:!0,get:function(){return _index6.useTheme}}),Object.defineProperty(exports,"useThemeMode",{enumerable:!0,get:function(){return _index6.useThemeMode}}),Object.defineProperty(exports,"useToggle",{enumerable:!0,get:function(){return _index4.useToggle}}),Object.defineProperty(exports,"warnUnknownProps",{enumerable:!0,get:function(){return _index7.warnUnknownProps}});var _index=require("./components/index.js");Object.keys(_index).forEach(function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(_exportNames,e)||e in exports&&exports[e]===_index[e]||Object.defineProperty(exports,e,{enumerable:!0,get:function(){return _index[e]}}))});var _index2=require("./components/AppIcon/index.js"),_index3=require("./form/index.js"),_index4=require("./hooks/index.js"),_initUI=require("./initUI.js"),_index5=require("./network/index.js"),_index6=require("./theme/index.js"),_index7=require("./utils/index.js");
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var _exportNames={APP_ICON_SIZES:!0,AppIcon:!0,CURATED_ICON_NAMES:!0,defaultIcons:!0,ICON_NAMES:!0,ICONSAX_SUFFIX:!0,renderSlotIcon:!0,deletePath:!0,Form:!0,getPath:!0,HookFormField:!0,isFieldFilled:!0,rules:!0,setPath:!0,useField:!0,useFieldArray:!0,useForm:!0,useFormCompletion:!0,useFormContext:!0,useHookFormField:!0,useOptionalFormContext:!0,FLICK_TOLERANCE:!0,PRESENCE_REDUCE_MOTION:!0,PRESS_ANIMATION_PRESETS:!0,useControllableState:!0,useDebounce:!0,useFieldChain:!0,useFlickGuard:!0,usePresenceMotion:!0,usePressAnimation:!0,useReducedMotion:!0,useRefreshControl:!0,useScrollDirection:!0,useToggle:!0,initUI:!0,NetworkStatusBanner:!0,COLOR_NAMES:!0,DURATION_NAMES:!0,darkTheme:!0,EASE_NAMES:!0,FONT_NAMES:!0,getColorMode:!0,getTheme:!0,LEADING_NAMES:!0,LETTER_SPACING_NAMES:!0,lightTheme:!0,mergeBrand:!0,RADIUS_NAMES:!0,radiusOf:!0,resetTheme:!0,resolveBadgeSize:!0,resolveButtonSize:!0,resolveCheckboxSize:!0,resolveChipSize:!0,resolveEmptyStateSize:!0,resolveFieldSize:!0,resolveFloatingActionButtonSize:!0,resolveListItemSize:!0,resolveOtpInputSize:!0,resolveRadioSize:!0,resolveSegmentedControlSize:!0,resolveSliderSize:!0,resolveSwitchSize:!0,resolveTabsSize:!0,SHADOW_NAMES:!0,SIZE_NAMES:!0,SPACE_NAMES:!0,setColorMode:!0,setTheme:!0,spaceOf:!0,subscribeTheme:!0,TEXT_NAMES:!0,ThemeProvider:!0,textOf:!0,useTheme:!0,useThemeMode:!0,WEIGHT_NAMES:!0,announce:!0,Breakpoints:!0,configureFeedback:!0,feedback:!0,hapticForIntent:!0,isFeedbackEnabled:!0,isScreenSize:!0,isTablet:!0,Responsive:!0,ScreenDimensions:!0,SQUIRCLE_MIN_RADIUS:!0,SQUIRCLE_SMOOTHING:!0,setHapticImplementation:!0,shadowStyle:!0,smoothCorners:!0,squircleApplies:!0,squircleHostRadius:!0,squirclePath:!0,triggerHaptic:!0,useScreenDimensions:!0,warnUnknownProps:!0};Object.defineProperty(exports,"APP_ICON_SIZES",{enumerable:!0,get:function(){return _index2.APP_ICON_SIZES}}),Object.defineProperty(exports,"AppIcon",{enumerable:!0,get:function(){return _index2.AppIcon}}),Object.defineProperty(exports,"Breakpoints",{enumerable:!0,get:function(){return _index7.Breakpoints}}),Object.defineProperty(exports,"COLOR_NAMES",{enumerable:!0,get:function(){return _index6.COLOR_NAMES}}),Object.defineProperty(exports,"CURATED_ICON_NAMES",{enumerable:!0,get:function(){return _index2.CURATED_ICON_NAMES}}),Object.defineProperty(exports,"DURATION_NAMES",{enumerable:!0,get:function(){return _index6.DURATION_NAMES}}),Object.defineProperty(exports,"EASE_NAMES",{enumerable:!0,get:function(){return _index6.EASE_NAMES}}),Object.defineProperty(exports,"FLICK_TOLERANCE",{enumerable:!0,get:function(){return _index4.FLICK_TOLERANCE}}),Object.defineProperty(exports,"FONT_NAMES",{enumerable:!0,get:function(){return _index6.FONT_NAMES}}),Object.defineProperty(exports,"Form",{enumerable:!0,get:function(){return _index3.Form}}),Object.defineProperty(exports,"HookFormField",{enumerable:!0,get:function(){return _index3.HookFormField}}),Object.defineProperty(exports,"ICONSAX_SUFFIX",{enumerable:!0,get:function(){return _index2.ICONSAX_SUFFIX}}),Object.defineProperty(exports,"ICON_NAMES",{enumerable:!0,get:function(){return _index2.ICON_NAMES}}),Object.defineProperty(exports,"LEADING_NAMES",{enumerable:!0,get:function(){return _index6.LEADING_NAMES}}),Object.defineProperty(exports,"LETTER_SPACING_NAMES",{enumerable:!0,get:function(){return _index6.LETTER_SPACING_NAMES}}),Object.defineProperty(exports,"NetworkStatusBanner",{enumerable:!0,get:function(){return _index5.NetworkStatusBanner}}),Object.defineProperty(exports,"PRESENCE_REDUCE_MOTION",{enumerable:!0,get:function(){return _index4.PRESENCE_REDUCE_MOTION}}),Object.defineProperty(exports,"PRESS_ANIMATION_PRESETS",{enumerable:!0,get:function(){return _index4.PRESS_ANIMATION_PRESETS}}),Object.defineProperty(exports,"RADIUS_NAMES",{enumerable:!0,get:function(){return _index6.RADIUS_NAMES}}),Object.defineProperty(exports,"Responsive",{enumerable:!0,get:function(){return _index7.Responsive}}),Object.defineProperty(exports,"SHADOW_NAMES",{enumerable:!0,get:function(){return _index6.SHADOW_NAMES}}),Object.defineProperty(exports,"SIZE_NAMES",{enumerable:!0,get:function(){return _index6.SIZE_NAMES}}),Object.defineProperty(exports,"SPACE_NAMES",{enumerable:!0,get:function(){return _index6.SPACE_NAMES}}),Object.defineProperty(exports,"SQUIRCLE_MIN_RADIUS",{enumerable:!0,get:function(){return _index7.SQUIRCLE_MIN_RADIUS}}),Object.defineProperty(exports,"SQUIRCLE_SMOOTHING",{enumerable:!0,get:function(){return _index7.SQUIRCLE_SMOOTHING}}),Object.defineProperty(exports,"ScreenDimensions",{enumerable:!0,get:function(){return _index7.ScreenDimensions}}),Object.defineProperty(exports,"TEXT_NAMES",{enumerable:!0,get:function(){return _index6.TEXT_NAMES}}),Object.defineProperty(exports,"ThemeProvider",{enumerable:!0,get:function(){return _index6.ThemeProvider}}),Object.defineProperty(exports,"WEIGHT_NAMES",{enumerable:!0,get:function(){return _index6.WEIGHT_NAMES}}),Object.defineProperty(exports,"announce",{enumerable:!0,get:function(){return _index7.announce}}),Object.defineProperty(exports,"configureFeedback",{enumerable:!0,get:function(){return _index7.configureFeedback}}),Object.defineProperty(exports,"darkTheme",{enumerable:!0,get:function(){return _index6.darkTheme}}),Object.defineProperty(exports,"defaultIcons",{enumerable:!0,get:function(){return _index2.defaultIcons}}),Object.defineProperty(exports,"deletePath",{enumerable:!0,get:function(){return _index3.deletePath}}),Object.defineProperty(exports,"feedback",{enumerable:!0,get:function(){return _index7.feedback}}),Object.defineProperty(exports,"getColorMode",{enumerable:!0,get:function(){return _index6.getColorMode}}),Object.defineProperty(exports,"getPath",{enumerable:!0,get:function(){return _index3.getPath}}),Object.defineProperty(exports,"getTheme",{enumerable:!0,get:function(){return _index6.getTheme}}),Object.defineProperty(exports,"hapticForIntent",{enumerable:!0,get:function(){return _index7.hapticForIntent}}),Object.defineProperty(exports,"initUI",{enumerable:!0,get:function(){return _initUI.initUI}}),Object.defineProperty(exports,"isFeedbackEnabled",{enumerable:!0,get:function(){return _index7.isFeedbackEnabled}}),Object.defineProperty(exports,"isFieldFilled",{enumerable:!0,get:function(){return _index3.isFieldFilled}}),Object.defineProperty(exports,"isScreenSize",{enumerable:!0,get:function(){return _index7.isScreenSize}}),Object.defineProperty(exports,"isTablet",{enumerable:!0,get:function(){return _index7.isTablet}}),Object.defineProperty(exports,"lightTheme",{enumerable:!0,get:function(){return _index6.lightTheme}}),Object.defineProperty(exports,"mergeBrand",{enumerable:!0,get:function(){return _index6.mergeBrand}}),Object.defineProperty(exports,"radiusOf",{enumerable:!0,get:function(){return _index6.radiusOf}}),Object.defineProperty(exports,"renderSlotIcon",{enumerable:!0,get:function(){return _index2.renderSlotIcon}}),Object.defineProperty(exports,"resetTheme",{enumerable:!0,get:function(){return _index6.resetTheme}}),Object.defineProperty(exports,"resolveBadgeSize",{enumerable:!0,get:function(){return _index6.resolveBadgeSize}}),Object.defineProperty(exports,"resolveButtonSize",{enumerable:!0,get:function(){return _index6.resolveButtonSize}}),Object.defineProperty(exports,"resolveCheckboxSize",{enumerable:!0,get:function(){return _index6.resolveCheckboxSize}}),Object.defineProperty(exports,"resolveChipSize",{enumerable:!0,get:function(){return _index6.resolveChipSize}}),Object.defineProperty(exports,"resolveEmptyStateSize",{enumerable:!0,get:function(){return _index6.resolveEmptyStateSize}}),Object.defineProperty(exports,"resolveFieldSize",{enumerable:!0,get:function(){return _index6.resolveFieldSize}}),Object.defineProperty(exports,"resolveFloatingActionButtonSize",{enumerable:!0,get:function(){return _index6.resolveFloatingActionButtonSize}}),Object.defineProperty(exports,"resolveListItemSize",{enumerable:!0,get:function(){return _index6.resolveListItemSize}}),Object.defineProperty(exports,"resolveOtpInputSize",{enumerable:!0,get:function(){return _index6.resolveOtpInputSize}}),Object.defineProperty(exports,"resolveRadioSize",{enumerable:!0,get:function(){return _index6.resolveRadioSize}}),Object.defineProperty(exports,"resolveSegmentedControlSize",{enumerable:!0,get:function(){return _index6.resolveSegmentedControlSize}}),Object.defineProperty(exports,"resolveSliderSize",{enumerable:!0,get:function(){return _index6.resolveSliderSize}}),Object.defineProperty(exports,"resolveSwitchSize",{enumerable:!0,get:function(){return _index6.resolveSwitchSize}}),Object.defineProperty(exports,"resolveTabsSize",{enumerable:!0,get:function(){return _index6.resolveTabsSize}}),Object.defineProperty(exports,"rules",{enumerable:!0,get:function(){return _index3.rules}}),Object.defineProperty(exports,"setColorMode",{enumerable:!0,get:function(){return _index6.setColorMode}}),Object.defineProperty(exports,"setHapticImplementation",{enumerable:!0,get:function(){return _index7.setHapticImplementation}}),Object.defineProperty(exports,"setPath",{enumerable:!0,get:function(){return _index3.setPath}}),Object.defineProperty(exports,"setTheme",{enumerable:!0,get:function(){return _index6.setTheme}}),Object.defineProperty(exports,"shadowStyle",{enumerable:!0,get:function(){return _index7.shadowStyle}}),Object.defineProperty(exports,"smoothCorners",{enumerable:!0,get:function(){return _index7.smoothCorners}}),Object.defineProperty(exports,"spaceOf",{enumerable:!0,get:function(){return _index6.spaceOf}}),Object.defineProperty(exports,"squircleApplies",{enumerable:!0,get:function(){return _index7.squircleApplies}}),Object.defineProperty(exports,"squircleHostRadius",{enumerable:!0,get:function(){return _index7.squircleHostRadius}}),Object.defineProperty(exports,"squirclePath",{enumerable:!0,get:function(){return _index7.squirclePath}}),Object.defineProperty(exports,"subscribeTheme",{enumerable:!0,get:function(){return _index6.subscribeTheme}}),Object.defineProperty(exports,"textOf",{enumerable:!0,get:function(){return _index6.textOf}}),Object.defineProperty(exports,"triggerHaptic",{enumerable:!0,get:function(){return _index7.triggerHaptic}}),Object.defineProperty(exports,"useControllableState",{enumerable:!0,get:function(){return _index4.useControllableState}}),Object.defineProperty(exports,"useDebounce",{enumerable:!0,get:function(){return _index4.useDebounce}}),Object.defineProperty(exports,"useField",{enumerable:!0,get:function(){return _index3.useField}}),Object.defineProperty(exports,"useFieldArray",{enumerable:!0,get:function(){return _index3.useFieldArray}}),Object.defineProperty(exports,"useFieldChain",{enumerable:!0,get:function(){return _index4.useFieldChain}}),Object.defineProperty(exports,"useFlickGuard",{enumerable:!0,get:function(){return _index4.useFlickGuard}}),Object.defineProperty(exports,"useForm",{enumerable:!0,get:function(){return _index3.useForm}}),Object.defineProperty(exports,"useFormCompletion",{enumerable:!0,get:function(){return _index3.useFormCompletion}}),Object.defineProperty(exports,"useFormContext",{enumerable:!0,get:function(){return _index3.useFormContext}}),Object.defineProperty(exports,"useHookFormField",{enumerable:!0,get:function(){return _index3.useHookFormField}}),Object.defineProperty(exports,"useOptionalFormContext",{enumerable:!0,get:function(){return _index3.useOptionalFormContext}}),Object.defineProperty(exports,"usePresenceMotion",{enumerable:!0,get:function(){return _index4.usePresenceMotion}}),Object.defineProperty(exports,"usePressAnimation",{enumerable:!0,get:function(){return _index4.usePressAnimation}}),Object.defineProperty(exports,"useReducedMotion",{enumerable:!0,get:function(){return _index4.useReducedMotion}}),Object.defineProperty(exports,"useRefreshControl",{enumerable:!0,get:function(){return _index4.useRefreshControl}}),Object.defineProperty(exports,"useScreenDimensions",{enumerable:!0,get:function(){return _index7.useScreenDimensions}}),Object.defineProperty(exports,"useScrollDirection",{enumerable:!0,get:function(){return _index4.useScrollDirection}}),Object.defineProperty(exports,"useTheme",{enumerable:!0,get:function(){return _index6.useTheme}}),Object.defineProperty(exports,"useThemeMode",{enumerable:!0,get:function(){return _index6.useThemeMode}}),Object.defineProperty(exports,"useToggle",{enumerable:!0,get:function(){return _index4.useToggle}}),Object.defineProperty(exports,"warnUnknownProps",{enumerable:!0,get:function(){return _index7.warnUnknownProps}});var _index=require("./components/index.js");Object.keys(_index).forEach(function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(_exportNames,e)||e in exports&&exports[e]===_index[e]||Object.defineProperty(exports,e,{enumerable:!0,get:function(){return _index[e]}}))});var _index2=require("./components/AppIcon/index.js"),_index3=require("./form/index.js"),_index4=require("./hooks/index.js"),_initUI=require("./initUI.js"),_index5=require("./network/index.js"),_index6=require("./theme/index.js"),_index7=require("./utils/index.js");
|
package/lib/commonjs/initUI.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.initUI=void 0;var _index=require("./theme/index.js");const initUI=(e={})=>{e.defaultMode&&(0,_index.setColorMode)(e.defaultMode),e.
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.initUI=void 0;var _index=require("./theme/index.js");const initUI=(e={})=>{e.defaultMode&&(0,_index.setColorMode)(e.defaultMode),(e.brand||e.settings)&&(0,_index.setTheme)(e.brand,e.settings)};exports.initUI=initUI;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.NetworkStatusBanner=void 0;var _mobileCore=require("@webority/mobile-core"),_react=require("react"),_reactNative=require("react-native"),_reactNativeSafeAreaContext=require("react-native-safe-area-context"),_usePresenceMotion=require("../hooks/usePresenceMotion.js"),_index=require("../theme/index.js"),_jsxRuntime=require("react/jsx-runtime");const NetworkStatusBanner=({message:e="You are offline. Some features may be unavailable.",position:t="top",style:a,disabled:r=!1,safeArea:o=!0})=>{const n=(0,_index.useTheme)(),i=(0,_usePresenceMotion.usePresenceMotion)(),s=(0,_reactNativeSafeAreaContext.useSafeAreaInsets)(),u=o?"top"===t?s.top:s.bottom:0,[c,l]=(0,_react.useState)(0),d=c>0?c:56+u,{isConnected:m,isInternetReachable:p}=(0,_mobileCore.useNetworkStatus)(),_=!(r||m&&!1!==p),v=(0,_react.useRef)(new _reactNative.Animated.Value(0)).current,f=(0,_react.useRef)(new _reactNative.Animated.Value(0)).current,
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.NetworkStatusBanner=void 0;var _mobileCore=require("@webority/mobile-core"),_react=require("react"),_reactNative=require("react-native"),_reactNativeSafeAreaContext=require("react-native-safe-area-context"),_usePresenceMotion=require("../hooks/usePresenceMotion.js"),_index=require("../theme/index.js"),_jsxRuntime=require("react/jsx-runtime");const NetworkStatusBanner=({message:e="You are offline. Some features may be unavailable.",position:t="top",style:a,disabled:r=!1,safeArea:o=!0})=>{const n=(0,_index.useTheme)(),i=(0,_usePresenceMotion.usePresenceMotion)(),s=(0,_reactNativeSafeAreaContext.useSafeAreaInsets)(),u=o?"top"===t?s.top:s.bottom:0,[c,l]=(0,_react.useState)(0),d=c>0?c:56+u,{isConnected:m,isInternetReachable:p}=(0,_mobileCore.useNetworkStatus)(),_=!(r||m&&!1!==p),v=(0,_react.useRef)(new _reactNative.Animated.Value(0)).current,f=(0,_react.useRef)(new _reactNative.Animated.Value(0)).current,x=i.duration("default");(0,_react.useEffect)(()=>{_reactNative.Animated.parallel([_reactNative.Animated.timing(v,{toValue:_?1:0,duration:n.motion.duration.default,useNativeDriver:!0}),_reactNative.Animated.timing(f,{toValue:_?1:0,duration:x,useNativeDriver:!0})]).start()},[_,v,f,n.motion.duration.default,x]);const b=(0,_react.useMemo)(()=>buildStyles(n),[n]),N=v.interpolate({inputRange:[0,1],outputRange:i.range("top"===t?-d:d,0)});return(0,_jsxRuntime.jsx)(_reactNative.Animated.View,{pointerEvents:_?"auto":"none",accessibilityRole:"alert",accessibilityLiveRegion:_?"polite":"none",onLayout:e=>l(e.nativeEvent.layout.height),style:[b.container,"top"===t?b.top:b.bottom,"top"===t?{paddingTop:n.space.sm+u}:{paddingBottom:n.space.sm+u},{backgroundColor:n.colors.danger,opacity:f,transform:[{translateY:N}]},a],children:(0,_jsxRuntime.jsx)(_reactNative.Text,{style:{color:n.colors["on-danger"],fontSize:n.text.sm.size,...(0,_index.fontFor)(n,"semibold"),textAlign:"center"},numberOfLines:2,children:e})})};exports.NetworkStatusBanner=NetworkStatusBanner;const buildStyles=e=>_reactNative.StyleSheet.create({container:{position:"absolute",left:0,right:0,paddingVertical:e.space.sm,paddingHorizontal:e.space.lg,zIndex:1e3,elevation:8},top:{top:0},bottom:{bottom:0}});var _default=exports.default=NetworkStatusBanner;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useThemeMode=exports.useTheme=exports.ThemeProvider=void 0;var _mobileCore=require("@webority/mobile-core"),_react=require("react"),_reactNative=require("react-native"),_useReducedMotion=require("../hooks/useReducedMotion.js"),_merge=require("./merge.js"),_tokens=require("./tokens.js"),_jsxRuntime=require("react/jsx-runtime");const REDUCED_SPRING={damping:100,stiffness:1e3,mass:1},collapseMotion=e=>({...e,duration:{instant:0,fast:0,
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useThemeMode=exports.useTheme=exports.ThemeProvider=void 0;var _mobileCore=require("@webority/mobile-core"),_react=require("react"),_reactNative=require("react-native"),_useReducedMotion=require("../hooks/useReducedMotion.js"),_merge=require("./merge.js"),_tokens=require("./tokens.js"),_jsxRuntime=require("react/jsx-runtime");const REDUCED_SPRING={damping:100,stiffness:1e3,mass:1},collapseMotion=e=>({...e,duration:{instant:0,fast:0,default:0,slow:0,slower:0},spring:{gentle:REDUCED_SPRING,bouncy:REDUCED_SPRING,snappy:REDUCED_SPRING}}),isPreference=e=>"light"===e||"dark"===e||"system"===e,defaultValue={theme:_tokens.lightTheme,mode:"light",preference:"system",setPreference:()=>{},toggleColorMode:()=>{}},ThemeContext=(0,_react.createContext)(defaultValue),ThemeProvider=e=>{const{children:t,initialPreference:r="system",persistKey:o,brand:s,settings:n,...i}=e;if(Object.keys(i).length>0)throw new Error("ThemeProvider takes only these props: children, initialPreference, persistKey, brand, settings (mobile-ui 0.89.0). Run webority upgrade 0.89.0 to move an app.");const[c,a]=(0,_react.useState)(r),u=(0,_react.useRef)(!1);(0,_react.useEffect)(()=>{if(!o)return;let e=!0;return _mobileCore.Storage.getItem(o).then(t=>{e&&!u.current&&isPreference(t)&&a(t)}),()=>{e=!1}},[o]);const m=(0,_react.useCallback)(e=>{u.current=!0,a(e)},[]);(0,_react.useEffect)(()=>{o&&u.current&&_mobileCore.Storage.setItem(o,c)},[o,c]);const[d,l]=(0,_react.useState)(()=>_reactNative.Appearance.getColorScheme()??"light");(0,_react.useEffect)(()=>{const e=_reactNative.Appearance.addChangeListener(({colorScheme:e})=>{l(e??"light")});return()=>e.remove()},[]);const h="system"===c?d:c,_=(0,_useReducedMotion.useReducedMotion)(),g=(0,_react.useMemo)(()=>{const e="dark"===h?_tokens.darkTheme:_tokens.lightTheme,t=s||n?(0,_merge.mergeBrand)(e,s,n):e;return _?{...t,motion:collapseMotion(t.motion)}:t},[h,s,n,_]),p=(0,_react.useMemo)(()=>({theme:g,mode:h,preference:c,setPreference:m,toggleColorMode:()=>m(e=>"system"===e?"dark"===d?"light":"dark":"dark"===e?"light":"dark")}),[g,h,c,d,m]);return(0,_jsxRuntime.jsx)(ThemeContext.Provider,{value:p,children:t})};exports.ThemeProvider=ThemeProvider;const useTheme=()=>(0,_react.useContext)(ThemeContext).theme;exports.useTheme=useTheme;const useThemeMode=()=>{const e=(0,_react.useContext)(ThemeContext);return{mode:e.mode,preference:e.preference,setPreference:e.setPreference,toggleColorMode:e.toggleColorMode}};exports.useThemeMode=useThemeMode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.validateComponentTokens=exports.resolveTabsSize=exports.resolveSwitchSize=exports.resolveSliderSize=exports.resolveSegmentedControlSize=exports.resolveRadioSize=exports.resolveOtpInputSize=exports.resolveListItemSize=exports.resolveFloatingActionButtonSize=exports.resolveFieldSize=exports.resolveEmptyStateSize=exports.resolveChipSize=exports.resolveCheckboxSize=exports.resolveButtonSize=exports.resolveBadgeSize=void 0;var _scale=require("./scale.js");const
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.validateComponentTokens=exports.resolveTabsSize=exports.resolveSwitchSize=exports.resolveSliderSize=exports.resolveSegmentedControlSize=exports.resolveRadioSize=exports.resolveOtpInputSize=exports.resolveListItemSize=exports.resolveFloatingActionButtonSize=exports.resolveFieldSize=exports.resolveEmptyStateSize=exports.resolveChipSize=exports.resolveCheckboxSize=exports.resolveButtonSize=exports.resolveBadgeSize=void 0;var _scale=require("./scale.js"),_tokensGenerated=require("./tokens.generated.js");const SIZE_KEYS=["xs","sm","md","lg","xl"],kindOf=(e,o,s)=>{const t=_tokensGenerated.COMPONENT_KINDS[e][o];if(!t)throw new Error(`components.${e}${s?`.${s}`:""}.${o} has no kind in COMPONENT_KINDS.`);return t},pixelsOf=(e,o,s,t)=>{if("space"===o||"text"===o||"radius"===o)return(0,_scale.scaleStep)(e,o,String(s),t);if("number"!=typeof s)throw new Error(`${t} is ${JSON.stringify(s)}; it takes a number.`);return s},resolveSize=(e,o,s)=>{const t=e.components[o][s],r={};for(const i of Object.keys(t))r[i]=pixelsOf(e,kindOf(o,i,s),t[i],`components.${o}.${s}.${i}`);return r},resolveButtonSize=(e,o)=>resolveSize(e,"button",o);exports.resolveButtonSize=resolveButtonSize;const resolveFieldSize=(e,o)=>resolveSize(e,"field",o);exports.resolveFieldSize=resolveFieldSize;const resolveEmptyStateSize=(e,o)=>resolveSize(e,"empty-state",o);exports.resolveEmptyStateSize=resolveEmptyStateSize;const resolveListItemSize=(e,o)=>resolveSize(e,"list-item",o);exports.resolveListItemSize=resolveListItemSize;const resolveBadgeSize=(e,o)=>resolveSize(e,"badge",o);exports.resolveBadgeSize=resolveBadgeSize;const resolveChipSize=(e,o)=>resolveSize(e,"chip",o);exports.resolveChipSize=resolveChipSize;const resolveCheckboxSize=(e,o)=>resolveSize(e,"checkbox",o);exports.resolveCheckboxSize=resolveCheckboxSize;const resolveRadioSize=(e,o)=>resolveSize(e,"radio",o);exports.resolveRadioSize=resolveRadioSize;const resolveSwitchSize=(e,o)=>resolveSize(e,"switch",o);exports.resolveSwitchSize=resolveSwitchSize;const resolveOtpInputSize=(e,o)=>resolveSize(e,"otp-input",o);exports.resolveOtpInputSize=resolveOtpInputSize;const resolveSegmentedControlSize=(e,o)=>resolveSize(e,"segmented-control",o);exports.resolveSegmentedControlSize=resolveSegmentedControlSize;const resolveTabsSize=(e,o)=>resolveSize(e,"tabs",o);exports.resolveTabsSize=resolveTabsSize;const resolveSliderSize=(e,o)=>resolveSize(e,"slider",o);exports.resolveSliderSize=resolveSliderSize;const resolveFloatingActionButtonSize=(e,o)=>resolveSize(e,"floating-action-button",o);exports.resolveFloatingActionButtonSize=resolveFloatingActionButtonSize;const validateComponentTokens=e=>{for(const o of Object.keys(_tokensGenerated.COMPONENT_KINDS)){const s=e.components[o];for(const t of Object.keys(s))SIZE_KEYS.includes(t)?resolveSize(e,o,t):pixelsOf(e,kindOf(o,t),s[t],`components.${o}.${t}`)}};exports.validateComponentTokens=validateComponentTokens;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"Gradient",{enumerable:!0,get:function(){return _Gradient.Gradient}}),Object.defineProperty(exports,"ThemeProvider",{enumerable:!0,get:function(){return _ThemeContext.ThemeProvider}}),Object.defineProperty(exports,"
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"COLOR_NAMES",{enumerable:!0,get:function(){return _tokensGenerated.COLOR_NAMES}}),Object.defineProperty(exports,"DURATION_NAMES",{enumerable:!0,get:function(){return _tokensGenerated.DURATION_NAMES}}),Object.defineProperty(exports,"EASE_NAMES",{enumerable:!0,get:function(){return _tokensGenerated.EASE_NAMES}}),Object.defineProperty(exports,"FONT_NAMES",{enumerable:!0,get:function(){return _tokensGenerated.FONT_NAMES}}),Object.defineProperty(exports,"Gradient",{enumerable:!0,get:function(){return _Gradient.Gradient}}),Object.defineProperty(exports,"LEADING_NAMES",{enumerable:!0,get:function(){return _tokensGenerated.LEADING_NAMES}}),Object.defineProperty(exports,"LETTER_SPACING_NAMES",{enumerable:!0,get:function(){return _tokensGenerated.LETTER_SPACING_NAMES}}),Object.defineProperty(exports,"RADIUS_NAMES",{enumerable:!0,get:function(){return _tokensGenerated.RADIUS_NAMES}}),Object.defineProperty(exports,"SHADOW_NAMES",{enumerable:!0,get:function(){return _tokensGenerated.SHADOW_NAMES}}),Object.defineProperty(exports,"SIZE_NAMES",{enumerable:!0,get:function(){return _tokensGenerated.SIZE_NAMES}}),Object.defineProperty(exports,"SPACE_NAMES",{enumerable:!0,get:function(){return _tokensGenerated.SPACE_NAMES}}),Object.defineProperty(exports,"TEXT_NAMES",{enumerable:!0,get:function(){return _tokensGenerated.TEXT_NAMES}}),Object.defineProperty(exports,"ThemeProvider",{enumerable:!0,get:function(){return _ThemeContext.ThemeProvider}}),Object.defineProperty(exports,"WEIGHT_NAMES",{enumerable:!0,get:function(){return _tokensGenerated.WEIGHT_NAMES}}),Object.defineProperty(exports,"createAnimatedValue",{enumerable:!0,get:function(){return _animatedValue.createAnimatedValue}}),Object.defineProperty(exports,"darkTheme",{enumerable:!0,get:function(){return _tokens.darkTheme}}),Object.defineProperty(exports,"fontFor",{enumerable:!0,get:function(){return _textStyle.fontFor}}),exports.getTheme=exports.getColorMode=void 0,Object.defineProperty(exports,"gradientAngle",{enumerable:!0,get:function(){return _Gradient.gradientAngle}}),Object.defineProperty(exports,"lightTheme",{enumerable:!0,get:function(){return _tokens.lightTheme}}),Object.defineProperty(exports,"mergeBrand",{enumerable:!0,get:function(){return _merge.mergeBrand}}),Object.defineProperty(exports,"radiusOf",{enumerable:!0,get:function(){return _scale.radiusOf}}),exports.resetTheme=void 0,Object.defineProperty(exports,"resolveBadgeSize",{enumerable:!0,get:function(){return _componentSizes.resolveBadgeSize}}),Object.defineProperty(exports,"resolveButtonSize",{enumerable:!0,get:function(){return _componentSizes.resolveButtonSize}}),Object.defineProperty(exports,"resolveCheckboxSize",{enumerable:!0,get:function(){return _componentSizes.resolveCheckboxSize}}),Object.defineProperty(exports,"resolveChipSize",{enumerable:!0,get:function(){return _componentSizes.resolveChipSize}}),Object.defineProperty(exports,"resolveEmptyStateSize",{enumerable:!0,get:function(){return _componentSizes.resolveEmptyStateSize}}),Object.defineProperty(exports,"resolveFieldSize",{enumerable:!0,get:function(){return _componentSizes.resolveFieldSize}}),Object.defineProperty(exports,"resolveFloatingActionButtonSize",{enumerable:!0,get:function(){return _componentSizes.resolveFloatingActionButtonSize}}),Object.defineProperty(exports,"resolveListItemSize",{enumerable:!0,get:function(){return _componentSizes.resolveListItemSize}}),Object.defineProperty(exports,"resolveOtpInputSize",{enumerable:!0,get:function(){return _componentSizes.resolveOtpInputSize}}),Object.defineProperty(exports,"resolveRadioSize",{enumerable:!0,get:function(){return _componentSizes.resolveRadioSize}}),Object.defineProperty(exports,"resolveSegmentedControlSize",{enumerable:!0,get:function(){return _componentSizes.resolveSegmentedControlSize}}),Object.defineProperty(exports,"resolveSliderSize",{enumerable:!0,get:function(){return _componentSizes.resolveSliderSize}}),Object.defineProperty(exports,"resolveSwitchSize",{enumerable:!0,get:function(){return _componentSizes.resolveSwitchSize}}),Object.defineProperty(exports,"resolveTabsSize",{enumerable:!0,get:function(){return _componentSizes.resolveTabsSize}}),exports.setColorMode=void 0,Object.defineProperty(exports,"setNativeValue",{enumerable:!0,get:function(){return _animatedValue.setNativeValue}}),exports.setTheme=void 0,Object.defineProperty(exports,"spaceOf",{enumerable:!0,get:function(){return _scale.spaceOf}}),exports.subscribeTheme=void 0,Object.defineProperty(exports,"textOf",{enumerable:!0,get:function(){return _scale.textOf}}),Object.defineProperty(exports,"toBackgroundImage",{enumerable:!0,get:function(){return _Gradient.toBackgroundImage}}),Object.defineProperty(exports,"useTheme",{enumerable:!0,get:function(){return _ThemeContext.useTheme}}),Object.defineProperty(exports,"useThemeMode",{enumerable:!0,get:function(){return _ThemeContext.useThemeMode}}),Object.defineProperty(exports,"validateComponentTokens",{enumerable:!0,get:function(){return _componentSizes.validateComponentTokens}});var _merge=require("./merge.js"),_tokens=require("./tokens.js"),_animatedValue=require("./animatedValue.js"),_componentSizes=require("./componentSizes.js"),_Gradient=require("./Gradient.js"),_scale=require("./scale.js"),_ThemeContext=require("./ThemeContext.js"),_textStyle=require("./textStyle.js"),_tokensGenerated=require("./tokens.generated.js");let brandGlobal,settingsGlobal,currentMode="light",currentTheme=_tokens.lightTheme;const subscribers=new Set,recompute=()=>{const e="dark"===currentMode?_tokens.darkTheme:_tokens.lightTheme;currentTheme=brandGlobal||settingsGlobal?(0,_merge.mergeBrand)(e,brandGlobal,settingsGlobal):e,subscribers.forEach(e=>e())},setTheme=(e,t)=>{brandGlobal=e,settingsGlobal=t,recompute()};exports.setTheme=setTheme;const setColorMode=e=>{currentMode=e,recompute()};exports.setColorMode=setColorMode;const getColorMode=()=>currentMode;exports.getColorMode=getColorMode;const getTheme=()=>currentTheme;exports.getTheme=getTheme;const resetTheme=()=>{currentMode="light",brandGlobal=void 0,settingsGlobal=void 0,recompute()};exports.resetTheme=resetTheme;const subscribeTheme=e=>(subscribers.add(e),()=>{subscribers.delete(e)});exports.subscribeTheme=subscribeTheme;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.mergeBrand=void 0;var _componentSizes=require("./componentSizes.js"),_tokensGenerated=require("./tokens.generated.js"),_toneInk=require("./toneInk.js");const HINT="Run webority upgrade to rename old names.",BRAND_KEYS=["colors","radius","font"],COLOR_MODES=["light","dark"],FIXED_RADII=["none","pill"],RADIUS_ALLOWED="sm, md, lg, xl",SETTINGS_KEYS=["icons","gradients","textVariants","maxFontSizeMultiplier","components"],COMPONENT_SETTING_KEYS={field:{defaultVariant:!0,requiredMarker:!0},input:{defaultVariant:!0,defaultLabelMode:!0,tintLabelOnFocus:!0,shakeOnError:!0},"search-bar":{defaultVariant:!0},select:{defaultVariant:!0},"otp-input":{shakeOnError:!0},"option-sheet":{selectedMarker:!0},"profile-picker":{defaultTone:!0,defaultVariant:!0,defaultAvatarTone:!0},slider:{thumbPressAnimation:!0},rating:{pulseOnPress:!0},stepper:{pulseAnimation:!0},tooltip:{enableScaleAnimation:!0},toast:{enableSwipeDismiss:!0,defaultDurationMs:!0}},isPlainObject=e=>"object"==typeof e&&null!==e&&!Array.isArray(e),validateBrand=e=>{if(void 0===e)return;if(!isPlainObject(e))throw new Error(`A brand is an object of colors, radius and font; got ${typeof e}. ${HINT}`);for(const o of Object.keys(e))if(!BRAND_KEYS.includes(o))throw new Error(`A brand sets colors, radius and font only; ${o} is not allowed (allowed: colors, radius, font). ${HINT}`);const o=e.colors;if(void 0!==o&&!isPlainObject(o))throw new Error(`A brand's colors is an object of light and dark; got ${typeof o}. ${HINT}`);for(const e of Object.keys(o??{})){if(!COLOR_MODES.includes(e))throw new Error(`A brand sets colours under light and dark only; ${e} is not allowed (allowed: light, dark). ${HINT}`);const t=o[e];for(const e of Object.keys(t)){if(!_tokensGenerated.COLOR_NAMES.includes(e))throw new Error(`unknown colour ${e}; allowed: ${_tokensGenerated.COLOR_NAMES.join(", ")}. ${HINT}`);if(void 0!==t[e]&&"string"!=typeof t[e])throw new Error(`colour ${e} must be a string; got ${typeof t[e]}.`)}}const t=e.radius;if(void 0!==t&&!isPlainObject(t))throw new Error(`A brand's radius is an object of radius names; got ${typeof t}. ${HINT}`);for(const e of Object.keys(t??{})){const o=t[e];if(!_tokensGenerated.RADIUS_NAMES.includes(e))throw new Error(`unknown radius ${e}; allowed: ${RADIUS_ALLOWED}. ${HINT}`);if(FIXED_RADII.includes(e))throw new Error(`radius ${e} is fixed by the library; allowed: ${RADIUS_ALLOWED}.`);if("number"!=typeof o||!Number.isFinite(o))throw new Error(`radius ${e} must be a number; got ${typeof o}.`)}const n=e.font;if(void 0!==n&&!isPlainObject(n))throw new Error(`A brand's font is an object of font names; got ${typeof n}. ${HINT}`);for(const e of Object.keys(n??{})){if(!_tokensGenerated.FONT_NAMES.includes(e))throw new Error(`unknown font ${e}; allowed: ${_tokensGenerated.FONT_NAMES.join(", ")}. ${HINT}`);const o=n[e];if(!isPlainObject(o))throw new Error(`font ${e} must be an object of weights; got ${typeof o}. ${HINT}`);for(const t of Object.keys(o)){if(!_tokensGenerated.WEIGHT_NAMES.includes(t))throw new Error(`unknown font weight ${t} in font ${e}; allowed: ${_tokensGenerated.WEIGHT_NAMES.join(", ")}. ${HINT}`);const n=o[t];if("string"!=typeof n||0===n.length)throw new Error(`font ${e} weight ${t} must be a non-empty string.`)}}},validateSettings=e=>{if(void 0===e)return;if(!isPlainObject(e))throw new Error(`Theme settings is an object; got ${typeof e}. ${HINT}`);for(const o of Object.keys(e))if(!SETTINGS_KEYS.includes(o))throw new Error(`Theme settings take ${SETTINGS_KEYS.join(", ")} only; ${o} is not allowed. ${HINT}`);const o=e.components;if(void 0===o)return;if(!isPlainObject(o))throw new Error(`Theme settings components is an object of component names; got ${typeof o}. ${HINT}`);const t=COMPONENT_SETTING_KEYS;for(const e of Object.keys(o)){if(!Object.keys(t).includes(e))throw new Error(`unknown component ${e} in theme settings; allowed: ${Object.keys(COMPONENT_SETTING_KEYS).join(", ")}. ${HINT}`);const n=o[e];if(void 0===n)continue;if(!isPlainObject(n))throw new Error(`theme settings for ${e} is an object; got ${typeof n}. ${HINT}`);const r=t[e];for(const o of Object.keys(n))if(!(o in r))throw new Error(`unknown setting ${o} for ${e}; allowed: ${Object.keys(r).join(", ")}. ${HINT}`)}},TONES=["primary","success","warning","danger","info"],mergeBrand=(e,o,t)=>{validateBrand(o),validateSettings(t);const n=Object.fromEntries(Object.entries(o?.colors?.[e.mode]??{}).filter(([,e])=>void 0!==e)),r={...e.colors,...n},s={...e.radius,...o?.radius},i={...e.font};for(const t of Object.keys(o?.font??{}))i[t]={...e.font[t],...o?.font?.[t]};const a=[r.bg,r["bg-subtle"],r["bg-muted"]],l={};for(const o of TONES){const t="string"==typeof n[o];let s=r[o];if(t||"string"==typeof n[`on-${o}`]){const e=(0,_toneInk.deriveSolidFill)(s,r[`on-${o}`]);e!==s&&(l[o]=e,s=e)}if(t&&"string"!=typeof n[`${o}-text`]&&(l[`${o}-text`]=(0,_toneInk.deriveToneInk)(s,a,e.mode)),"primary"===o&&(t||void 0!==l.primary)){const o=(0,_toneInk.deriveStateFills)(s,r["on-primary"],{fill:e.colors.primary,hover:e.colors["primary-hover"],pressed:e.colors["primary-pressed"]});"string"!=typeof n["primary-hover"]&&(l["primary-hover"]=o.hover),"string"!=typeof n["primary-pressed"]&&(l["primary-pressed"]=o.pressed)}}const c={},d=new Set([...Object.keys(e.settings.components),...Object.keys(t?.components??{})]);for(const o of d)c[o]={...e.settings.components[o],...t?.components?.[o]};const f=t?.maxFontSizeMultiplier??e.settings.maxFontSizeMultiplier,u={icons:{...e.settings.icons,...t?.icons},gradients:{...e.settings.gradients,...t?.gradients},textVariants:{...e.settings.textVariants,...t?.textVariants},components:c,...void 0===f?{}:{maxFontSizeMultiplier:f}},p={...e,colors:{...r,...l},radius:s,font:i,settings:u};return(0,_componentSizes.validateComponentTokens)(p),p};exports.mergeBrand=mergeBrand;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.spaceOf=exports.
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.textOf=exports.spaceOf=exports.scaleStep=exports.radiusOf=void 0;const scaleStep=(e,t,s,r)=>{const a="space"===t?e.space:"radius"===t?e.radius:e.text,c=a[s],o="text"===t?c?.size:c;if("number"!=typeof o){const e=Object.keys(a).join(", ");throw new Error(`${r?`${r} is `:""}${JSON.stringify(s)}, which is not a ${"text"===t?"text size":"radius"===t?"corner":"space"} name. Use one of: ${e}.`)}return o};exports.scaleStep=scaleStep;const spaceOf=(e,t)=>scaleStep(e,"space",t);exports.spaceOf=spaceOf;const radiusOf=(e,t)=>scaleStep(e,"radius",t);exports.radiusOf=radiusOf;const textOf=(e,t)=>scaleStep(e,"text",t);exports.textOf=textOf;
|