@webority/mobile-ui 0.91.0 → 0.93.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/canvas-kit.json +8 -0
- package/lib/commonjs/components/Accordion/Accordion.meta.js +1 -0
- package/lib/commonjs/components/Accordion/AccordionGroup.meta.js +1 -0
- package/lib/commonjs/components/AmountSlider/AmountSlider.meta.js +1 -0
- package/lib/commonjs/components/AnimatePresence/AnimatePresence.meta.js +1 -0
- package/lib/commonjs/components/AppBar/AppBar.meta.js +1 -0
- package/lib/commonjs/components/AppIcon/AppIcon.meta.js +1 -0
- package/lib/commonjs/components/AsyncBlock/AsyncBlock.meta.js +1 -0
- package/lib/commonjs/components/AuthedImage/AuthedImage.meta.js +1 -0
- package/lib/commonjs/components/Autocomplete/Autocomplete.meta.js +1 -0
- package/lib/commonjs/components/Avatar/Avatar.meta.js +1 -0
- package/lib/commonjs/components/Avatar/AvatarGroup.meta.js +1 -0
- package/lib/commonjs/components/Badge/Badge.meta.js +1 -0
- package/lib/commonjs/components/Banner/Banner.meta.js +1 -0
- package/lib/commonjs/components/BarChart/BarChart.meta.js +1 -0
- package/lib/commonjs/components/BottomNavigation/BottomNavigation.meta.js +1 -0
- package/lib/commonjs/components/BottomSheet/BottomSheet.meta.js +1 -0
- package/lib/commonjs/components/Box/Spacer.meta.js +1 -0
- package/lib/commonjs/components/Button/Button.meta.js +1 -0
- package/lib/commonjs/components/Calendar/Calendar.meta.js +1 -0
- package/lib/commonjs/components/Card/Card.meta.js +1 -0
- package/lib/commonjs/components/Carousel/Carousel.meta.js +1 -0
- package/lib/commonjs/components/Checkbox/Checkbox.meta.js +1 -0
- package/lib/commonjs/components/Chip/Chip.meta.js +1 -0
- package/lib/commonjs/components/ChoiceGroup/ChoiceGroup.meta.js +1 -0
- package/lib/commonjs/components/Composer/Composer.meta.js +1 -0
- package/lib/commonjs/components/Confetti/Confetti.meta.js +1 -0
- package/lib/commonjs/components/DatePicker/DatePicker.meta.js +1 -0
- package/lib/commonjs/components/DateRangePicker/DateRangePicker.meta.js +1 -0
- package/lib/commonjs/components/DateSeparator/DateSeparator.meta.js +1 -0
- package/lib/commonjs/components/DecimalInput/DecimalInput.meta.js +1 -0
- package/lib/commonjs/components/Descriptions/Descriptions.meta.js +1 -0
- package/lib/commonjs/components/Dialog/Dialog.meta.js +1 -0
- package/lib/commonjs/components/Divider/Divider.meta.js +1 -0
- package/lib/commonjs/components/Drawer/Drawer.meta.js +1 -0
- package/lib/commonjs/components/EmptyState/EmptyState.meta.js +1 -0
- package/lib/commonjs/components/FilePicker/FilePicker.meta.js +1 -0
- package/lib/commonjs/components/FileViewer/FileViewer.meta.js +1 -0
- package/lib/commonjs/components/FilterChipRow/FilterChipRow.meta.js +1 -0
- package/lib/commonjs/components/FloatingActionButton/FloatingActionButton.meta.js +1 -0
- package/lib/commonjs/components/FloatingActionButton/FloatingActionButtonGroup.meta.js +1 -0
- package/lib/commonjs/components/ForceUpdateDialog/ForceUpdateDialog.meta.js +1 -0
- package/lib/commonjs/components/FormField/FormField.meta.js +1 -0
- package/lib/commonjs/components/IconBadge/IconBadge.meta.js +1 -0
- package/lib/commonjs/components/IconButton/IconButton.meta.js +1 -0
- package/lib/commonjs/components/ImageGallery/ImageGallery.meta.js +1 -0
- package/lib/commonjs/components/InlineSelect/InlineSelect.meta.js +1 -0
- package/lib/commonjs/components/Input/Input.meta.js +1 -0
- package/lib/commonjs/components/KeyboardToolbar/KeyboardToolbar.meta.js +1 -0
- package/lib/commonjs/components/ListItem/ListItem.meta.js +1 -0
- package/lib/commonjs/components/LoaderOverlay/LoaderOverlay.meta.js +1 -0
- package/lib/commonjs/components/Markdown/Markdown.meta.js +1 -0
- package/lib/commonjs/components/Menu/Menu.meta.js +1 -0
- package/lib/commonjs/components/MessageBubble/MessageBubble.meta.js +1 -0
- package/lib/commonjs/components/MessageList/MessageList.meta.js +1 -0
- package/lib/commonjs/components/Modal/Modal.meta.js +1 -0
- package/lib/commonjs/components/Notation/Notation.meta.js +1 -0
- package/lib/commonjs/components/NumberInput/NumberInput.meta.js +1 -0
- package/lib/commonjs/components/OTPInput/OTPInput.meta.js +1 -0
- package/lib/commonjs/components/OnboardingPager/OnboardingPager.meta.js +1 -0
- package/lib/commonjs/components/OptionSheet/OptionSheet.meta.js +1 -0
- package/lib/commonjs/components/PaymentResult/PaymentResult.meta.js +1 -0
- package/lib/commonjs/components/PermissionPrompt/PermissionPrompt.meta.js +1 -0
- package/lib/commonjs/components/PhoneNumberInput/PhoneNumberInput.meta.js +1 -0
- package/lib/commonjs/components/PickerTrigger/PickerTrigger.meta.js +1 -0
- package/lib/commonjs/components/ProfileCompletion/ProfileCompletion.meta.js +1 -0
- package/lib/commonjs/components/ProfilePicker/ProfilePicker.meta.js +1 -0
- package/lib/commonjs/components/ProgressBar/ProgressBar.meta.js +1 -0
- package/lib/commonjs/components/ProgressRing/ProgressRing.meta.js +1 -0
- package/lib/commonjs/components/Radio/Radio.meta.js +1 -0
- package/lib/commonjs/components/Radio/RadioGroup.meta.js +1 -0
- package/lib/commonjs/components/Rating/Rating.meta.js +1 -0
- package/lib/commonjs/components/Repeater/Repeater.meta.js +1 -0
- package/lib/commonjs/components/RichTextEditor/RichTextEditor.meta.js +1 -0
- package/lib/commonjs/components/ScannerOverlay/ScannerOverlay.meta.js +1 -0
- package/lib/commonjs/components/Screen/Screen.meta.js +1 -0
- package/lib/commonjs/components/SearchBar/SearchBar.meta.js +1 -0
- package/lib/commonjs/components/SectionHeader/SectionHeader.meta.js +1 -0
- package/lib/commonjs/components/SegmentedControl/SegmentedControl.meta.js +1 -0
- package/lib/commonjs/components/Select/Select.meta.js +1 -0
- package/lib/commonjs/components/SignaturePad/SignaturePad.meta.js +1 -0
- package/lib/commonjs/components/Skeleton/Skeleton.meta.js +1 -0
- package/lib/commonjs/components/Skeleton/SkeletonCircle.meta.js +1 -0
- package/lib/commonjs/components/Skeleton/SkeletonContent.meta.js +1 -0
- package/lib/commonjs/components/Skeleton/SkeletonList.meta.js +1 -0
- package/lib/commonjs/components/Skeleton/SkeletonText.meta.js +1 -0
- package/lib/commonjs/components/SlideToConfirm/SlideToConfirm.meta.js +1 -0
- package/lib/commonjs/components/Slider/Slider.meta.js +1 -0
- package/lib/commonjs/components/SliderField/SliderField.meta.js +1 -0
- package/lib/commonjs/components/Sparkline/Sparkline.meta.js +1 -0
- package/lib/commonjs/components/Spinner/Spinner.meta.js +1 -0
- package/lib/commonjs/components/SquircleView/SquircleView.meta.js +1 -0
- package/lib/commonjs/components/StatTile/StatTile.meta.js +1 -0
- package/lib/commonjs/components/StatusBadge/StatusBadge.meta.js +1 -0
- package/lib/commonjs/components/Stepper/Stepper.meta.js +1 -0
- package/lib/commonjs/components/Swipeable/Swipeable.meta.js +1 -0
- package/lib/commonjs/components/Switch/Switch.meta.js +1 -0
- package/lib/commonjs/components/Tabs/Tabs.meta.js +1 -0
- package/lib/commonjs/components/TagInput/TagInput.meta.js +1 -0
- package/lib/commonjs/components/Text/Text.meta.js +1 -0
- package/lib/commonjs/components/TimePicker/TimePicker.meta.js +1 -0
- package/lib/commonjs/components/Timeline/Timeline.meta.js +1 -0
- package/lib/commonjs/components/Toast/Toast.meta.js +1 -0
- package/lib/commonjs/components/Tooltip/Tooltip.meta.js +1 -0
- package/lib/commonjs/components/Tour/Tour.meta.js +1 -0
- package/lib/commonjs/components/TypingIndicator/TypingIndicator.meta.js +1 -0
- package/lib/commonjs/components/WheelPicker/WheelPickerColumns.meta.js +1 -0
- package/lib/commonjs/components/WheelPicker/WheelPickerDuration.meta.js +1 -0
- package/lib/commonjs/components/WheelPicker/WheelPickerList.meta.js +1 -0
- package/lib/commonjs/components/ZoomableImage/ZoomableImage.meta.js +1 -0
- package/lib/commonjs/components/not-drawn.json +17 -0
- package/lib/module/components/Accordion/Accordion.meta.js +1 -0
- package/lib/module/components/Accordion/AccordionGroup.meta.js +1 -0
- package/lib/module/components/AmountSlider/AmountSlider.meta.js +1 -0
- package/lib/module/components/AnimatePresence/AnimatePresence.meta.js +1 -0
- package/lib/module/components/AppBar/AppBar.meta.js +1 -0
- package/lib/module/components/AppIcon/AppIcon.meta.js +1 -0
- package/lib/module/components/AsyncBlock/AsyncBlock.meta.js +1 -0
- package/lib/module/components/AuthedImage/AuthedImage.meta.js +1 -0
- package/lib/module/components/Autocomplete/Autocomplete.meta.js +1 -0
- package/lib/module/components/Avatar/Avatar.meta.js +1 -0
- package/lib/module/components/Avatar/AvatarGroup.meta.js +1 -0
- package/lib/module/components/Badge/Badge.meta.js +1 -0
- package/lib/module/components/Banner/Banner.meta.js +1 -0
- package/lib/module/components/BarChart/BarChart.meta.js +1 -0
- package/lib/module/components/BottomNavigation/BottomNavigation.meta.js +1 -0
- package/lib/module/components/BottomSheet/BottomSheet.meta.js +1 -0
- package/lib/module/components/Box/Spacer.meta.js +1 -0
- package/lib/module/components/Button/Button.meta.js +1 -0
- package/lib/module/components/Calendar/Calendar.meta.js +1 -0
- package/lib/module/components/Card/Card.meta.js +1 -0
- package/lib/module/components/Carousel/Carousel.meta.js +1 -0
- package/lib/module/components/Checkbox/Checkbox.meta.js +1 -0
- package/lib/module/components/Chip/Chip.meta.js +1 -0
- package/lib/module/components/ChoiceGroup/ChoiceGroup.meta.js +1 -0
- package/lib/module/components/Composer/Composer.meta.js +1 -0
- package/lib/module/components/Confetti/Confetti.meta.js +1 -0
- package/lib/module/components/DatePicker/DatePicker.meta.js +1 -0
- package/lib/module/components/DateRangePicker/DateRangePicker.meta.js +1 -0
- package/lib/module/components/DateSeparator/DateSeparator.meta.js +1 -0
- package/lib/module/components/DecimalInput/DecimalInput.meta.js +1 -0
- package/lib/module/components/Descriptions/Descriptions.meta.js +1 -0
- package/lib/module/components/Dialog/Dialog.meta.js +1 -0
- package/lib/module/components/Divider/Divider.meta.js +1 -0
- package/lib/module/components/Drawer/Drawer.meta.js +1 -0
- package/lib/module/components/EmptyState/EmptyState.meta.js +1 -0
- package/lib/module/components/FilePicker/FilePicker.meta.js +1 -0
- package/lib/module/components/FileViewer/FileViewer.meta.js +1 -0
- package/lib/module/components/FilterChipRow/FilterChipRow.meta.js +1 -0
- package/lib/module/components/FloatingActionButton/FloatingActionButton.meta.js +1 -0
- package/lib/module/components/FloatingActionButton/FloatingActionButtonGroup.meta.js +1 -0
- package/lib/module/components/ForceUpdateDialog/ForceUpdateDialog.meta.js +1 -0
- package/lib/module/components/FormField/FormField.meta.js +1 -0
- package/lib/module/components/IconBadge/IconBadge.meta.js +1 -0
- package/lib/module/components/IconButton/IconButton.meta.js +1 -0
- package/lib/module/components/ImageGallery/ImageGallery.meta.js +1 -0
- package/lib/module/components/InlineSelect/InlineSelect.meta.js +1 -0
- package/lib/module/components/Input/Input.meta.js +1 -0
- package/lib/module/components/KeyboardToolbar/KeyboardToolbar.meta.js +1 -0
- package/lib/module/components/ListItem/ListItem.meta.js +1 -0
- package/lib/module/components/LoaderOverlay/LoaderOverlay.meta.js +1 -0
- package/lib/module/components/Markdown/Markdown.meta.js +1 -0
- package/lib/module/components/Menu/Menu.meta.js +1 -0
- package/lib/module/components/MessageBubble/MessageBubble.meta.js +1 -0
- package/lib/module/components/MessageList/MessageList.meta.js +1 -0
- package/lib/module/components/Modal/Modal.meta.js +1 -0
- package/lib/module/components/Notation/Notation.meta.js +1 -0
- package/lib/module/components/NumberInput/NumberInput.meta.js +1 -0
- package/lib/module/components/OTPInput/OTPInput.meta.js +1 -0
- package/lib/module/components/OnboardingPager/OnboardingPager.meta.js +1 -0
- package/lib/module/components/OptionSheet/OptionSheet.meta.js +1 -0
- package/lib/module/components/PaymentResult/PaymentResult.meta.js +1 -0
- package/lib/module/components/PermissionPrompt/PermissionPrompt.meta.js +1 -0
- package/lib/module/components/PhoneNumberInput/PhoneNumberInput.meta.js +1 -0
- package/lib/module/components/PickerTrigger/PickerTrigger.meta.js +1 -0
- package/lib/module/components/ProfileCompletion/ProfileCompletion.meta.js +1 -0
- package/lib/module/components/ProfilePicker/ProfilePicker.meta.js +1 -0
- package/lib/module/components/ProgressBar/ProgressBar.meta.js +1 -0
- package/lib/module/components/ProgressRing/ProgressRing.meta.js +1 -0
- package/lib/module/components/Radio/Radio.meta.js +1 -0
- package/lib/module/components/Radio/RadioGroup.meta.js +1 -0
- package/lib/module/components/Rating/Rating.meta.js +1 -0
- package/lib/module/components/Repeater/Repeater.meta.js +1 -0
- package/lib/module/components/RichTextEditor/RichTextEditor.meta.js +1 -0
- package/lib/module/components/ScannerOverlay/ScannerOverlay.meta.js +1 -0
- package/lib/module/components/Screen/Screen.meta.js +1 -0
- package/lib/module/components/SearchBar/SearchBar.meta.js +1 -0
- package/lib/module/components/SectionHeader/SectionHeader.meta.js +1 -0
- package/lib/module/components/SegmentedControl/SegmentedControl.meta.js +1 -0
- package/lib/module/components/Select/Select.meta.js +1 -0
- package/lib/module/components/SignaturePad/SignaturePad.meta.js +1 -0
- package/lib/module/components/Skeleton/Skeleton.meta.js +1 -0
- package/lib/module/components/Skeleton/SkeletonCircle.meta.js +1 -0
- package/lib/module/components/Skeleton/SkeletonContent.meta.js +1 -0
- package/lib/module/components/Skeleton/SkeletonList.meta.js +1 -0
- package/lib/module/components/Skeleton/SkeletonText.meta.js +1 -0
- package/lib/module/components/SlideToConfirm/SlideToConfirm.meta.js +1 -0
- package/lib/module/components/Slider/Slider.meta.js +1 -0
- package/lib/module/components/SliderField/SliderField.meta.js +1 -0
- package/lib/module/components/Sparkline/Sparkline.meta.js +1 -0
- package/lib/module/components/Spinner/Spinner.meta.js +1 -0
- package/lib/module/components/SquircleView/SquircleView.meta.js +1 -0
- package/lib/module/components/StatTile/StatTile.meta.js +1 -0
- package/lib/module/components/StatusBadge/StatusBadge.meta.js +1 -0
- package/lib/module/components/Stepper/Stepper.meta.js +1 -0
- package/lib/module/components/Swipeable/Swipeable.meta.js +1 -0
- package/lib/module/components/Switch/Switch.meta.js +1 -0
- package/lib/module/components/Tabs/Tabs.meta.js +1 -0
- package/lib/module/components/TagInput/TagInput.meta.js +1 -0
- package/lib/module/components/Text/Text.meta.js +1 -0
- package/lib/module/components/TimePicker/TimePicker.meta.js +1 -0
- package/lib/module/components/Timeline/Timeline.meta.js +1 -0
- package/lib/module/components/Toast/Toast.meta.js +1 -0
- package/lib/module/components/Tooltip/Tooltip.meta.js +1 -0
- package/lib/module/components/Tour/Tour.meta.js +1 -0
- package/lib/module/components/TypingIndicator/TypingIndicator.meta.js +1 -0
- package/lib/module/components/WheelPicker/WheelPickerColumns.meta.js +1 -0
- package/lib/module/components/WheelPicker/WheelPickerDuration.meta.js +1 -0
- package/lib/module/components/WheelPicker/WheelPickerList.meta.js +1 -0
- package/lib/module/components/ZoomableImage/ZoomableImage.meta.js +1 -0
- package/lib/module/components/not-drawn.json +17 -0
- package/lib/typescript/commonjs/canvasKit/meta.d.ts +21 -6
- package/lib/typescript/commonjs/components/Accordion/Accordion.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Accordion/AccordionGroup.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/AmountSlider/AmountSlider.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/AnimatePresence/AnimatePresence.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/AppBar/AppBar.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/AppIcon/AppIcon.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/AsyncBlock/AsyncBlock.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/AuthedImage/AuthedImage.meta.d.ts +5 -0
- package/lib/typescript/commonjs/components/Autocomplete/Autocomplete.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Avatar/Avatar.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Avatar/AvatarGroup.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Badge/Badge.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Banner/Banner.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/BarChart/BarChart.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/BottomNavigation/BottomNavigation.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/BottomSheet/BottomSheet.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Box/Spacer.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Button/Button.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Calendar/Calendar.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Card/Card.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Carousel/Carousel.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Checkbox/Checkbox.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Chip/Chip.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/ChoiceGroup/ChoiceGroup.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Composer/Composer.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Confetti/Confetti.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/DatePicker/DatePicker.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/DateRangePicker/DateRangePicker.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/DateSeparator/DateSeparator.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/DecimalInput/DecimalInput.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Descriptions/Descriptions.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Dialog/Dialog.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Divider/Divider.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Drawer/Drawer.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/EmptyState/EmptyState.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/FilePicker/FilePicker.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/FileViewer/FileViewer.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/FilterChipRow/FilterChipRow.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/FloatingActionButton/FloatingActionButton.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/FloatingActionButton/FloatingActionButtonGroup.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/ForceUpdateDialog/ForceUpdateDialog.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/FormField/FormField.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/IconBadge/IconBadge.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/IconButton/IconButton.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/ImageGallery/ImageGallery.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/InlineSelect/InlineSelect.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Input/Input.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/KeyboardToolbar/KeyboardToolbar.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/ListItem/ListItem.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/LoaderOverlay/LoaderOverlay.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Markdown/Markdown.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Menu/Menu.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/MessageBubble/MessageBubble.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/MessageList/MessageList.meta.d.ts +5 -0
- package/lib/typescript/commonjs/components/Modal/Modal.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Notation/Notation.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/NumberInput/NumberInput.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/OTPInput/OTPInput.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/OnboardingPager/OnboardingPager.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/OptionSheet/OptionSheet.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/PaymentResult/PaymentResult.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/PermissionPrompt/PermissionPrompt.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/PhoneNumberInput/PhoneNumberInput.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/PickerTrigger/PickerTrigger.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/ProfileCompletion/ProfileCompletion.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/ProfilePicker/ProfilePicker.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/ProgressBar/ProgressBar.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/ProgressRing/ProgressRing.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Radio/Radio.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Radio/RadioGroup.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Rating/Rating.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Repeater/Repeater.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/RichTextEditor/RichTextEditor.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/ScannerOverlay/ScannerOverlay.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Screen/Screen.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/SearchBar/SearchBar.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/SectionHeader/SectionHeader.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/SegmentedControl/SegmentedControl.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Select/Select.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/SignaturePad/SignaturePad.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Skeleton/Skeleton.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Skeleton/SkeletonCircle.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Skeleton/SkeletonContent.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Skeleton/SkeletonList.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Skeleton/SkeletonText.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/SlideToConfirm/SlideToConfirm.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Slider/Slider.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/SliderField/SliderField.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Sparkline/Sparkline.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Spinner/Spinner.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/SquircleView/SquircleView.meta.d.ts +2 -0
- package/lib/typescript/commonjs/components/StatTile/StatTile.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/StatusBadge/StatusBadge.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Stepper/Stepper.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Swipeable/Swipeable.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Switch/Switch.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Tabs/Tabs.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/TagInput/TagInput.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Text/Text.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/TimePicker/TimePicker.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Timeline/Timeline.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Toast/Toast.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Tooltip/Tooltip.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/Tour/Tour.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/TypingIndicator/TypingIndicator.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/WheelPicker/WheelPickerColumns.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/WheelPicker/WheelPickerDuration.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/WheelPicker/WheelPickerList.meta.d.ts +3 -0
- package/lib/typescript/commonjs/components/ZoomableImage/ZoomableImage.meta.d.ts +3 -0
- package/lib/typescript/module/canvasKit/meta.d.ts +21 -6
- package/lib/typescript/module/components/Accordion/Accordion.meta.d.ts +3 -0
- package/lib/typescript/module/components/Accordion/AccordionGroup.meta.d.ts +3 -0
- package/lib/typescript/module/components/AmountSlider/AmountSlider.meta.d.ts +3 -0
- package/lib/typescript/module/components/AnimatePresence/AnimatePresence.meta.d.ts +3 -0
- package/lib/typescript/module/components/AppBar/AppBar.meta.d.ts +3 -0
- package/lib/typescript/module/components/AppIcon/AppIcon.meta.d.ts +3 -0
- package/lib/typescript/module/components/AsyncBlock/AsyncBlock.meta.d.ts +3 -0
- package/lib/typescript/module/components/AuthedImage/AuthedImage.meta.d.ts +5 -0
- package/lib/typescript/module/components/Autocomplete/Autocomplete.meta.d.ts +3 -0
- package/lib/typescript/module/components/Avatar/Avatar.meta.d.ts +3 -0
- package/lib/typescript/module/components/Avatar/AvatarGroup.meta.d.ts +3 -0
- package/lib/typescript/module/components/Badge/Badge.meta.d.ts +3 -0
- package/lib/typescript/module/components/Banner/Banner.meta.d.ts +3 -0
- package/lib/typescript/module/components/BarChart/BarChart.meta.d.ts +3 -0
- package/lib/typescript/module/components/BottomNavigation/BottomNavigation.meta.d.ts +3 -0
- package/lib/typescript/module/components/BottomSheet/BottomSheet.meta.d.ts +3 -0
- package/lib/typescript/module/components/Box/Spacer.meta.d.ts +3 -0
- package/lib/typescript/module/components/Button/Button.meta.d.ts +3 -0
- package/lib/typescript/module/components/Calendar/Calendar.meta.d.ts +3 -0
- package/lib/typescript/module/components/Card/Card.meta.d.ts +3 -0
- package/lib/typescript/module/components/Carousel/Carousel.meta.d.ts +3 -0
- package/lib/typescript/module/components/Checkbox/Checkbox.meta.d.ts +3 -0
- package/lib/typescript/module/components/Chip/Chip.meta.d.ts +3 -0
- package/lib/typescript/module/components/ChoiceGroup/ChoiceGroup.meta.d.ts +3 -0
- package/lib/typescript/module/components/Composer/Composer.meta.d.ts +3 -0
- package/lib/typescript/module/components/Confetti/Confetti.meta.d.ts +3 -0
- package/lib/typescript/module/components/DatePicker/DatePicker.meta.d.ts +3 -0
- package/lib/typescript/module/components/DateRangePicker/DateRangePicker.meta.d.ts +3 -0
- package/lib/typescript/module/components/DateSeparator/DateSeparator.meta.d.ts +3 -0
- package/lib/typescript/module/components/DecimalInput/DecimalInput.meta.d.ts +3 -0
- package/lib/typescript/module/components/Descriptions/Descriptions.meta.d.ts +3 -0
- package/lib/typescript/module/components/Dialog/Dialog.meta.d.ts +3 -0
- package/lib/typescript/module/components/Divider/Divider.meta.d.ts +3 -0
- package/lib/typescript/module/components/Drawer/Drawer.meta.d.ts +3 -0
- package/lib/typescript/module/components/EmptyState/EmptyState.meta.d.ts +3 -0
- package/lib/typescript/module/components/FilePicker/FilePicker.meta.d.ts +3 -0
- package/lib/typescript/module/components/FileViewer/FileViewer.meta.d.ts +3 -0
- package/lib/typescript/module/components/FilterChipRow/FilterChipRow.meta.d.ts +3 -0
- package/lib/typescript/module/components/FloatingActionButton/FloatingActionButton.meta.d.ts +3 -0
- package/lib/typescript/module/components/FloatingActionButton/FloatingActionButtonGroup.meta.d.ts +3 -0
- package/lib/typescript/module/components/ForceUpdateDialog/ForceUpdateDialog.meta.d.ts +3 -0
- package/lib/typescript/module/components/FormField/FormField.meta.d.ts +3 -0
- package/lib/typescript/module/components/IconBadge/IconBadge.meta.d.ts +3 -0
- package/lib/typescript/module/components/IconButton/IconButton.meta.d.ts +3 -0
- package/lib/typescript/module/components/ImageGallery/ImageGallery.meta.d.ts +3 -0
- package/lib/typescript/module/components/InlineSelect/InlineSelect.meta.d.ts +3 -0
- package/lib/typescript/module/components/Input/Input.meta.d.ts +3 -0
- package/lib/typescript/module/components/KeyboardToolbar/KeyboardToolbar.meta.d.ts +3 -0
- package/lib/typescript/module/components/ListItem/ListItem.meta.d.ts +3 -0
- package/lib/typescript/module/components/LoaderOverlay/LoaderOverlay.meta.d.ts +3 -0
- package/lib/typescript/module/components/Markdown/Markdown.meta.d.ts +3 -0
- package/lib/typescript/module/components/Menu/Menu.meta.d.ts +3 -0
- package/lib/typescript/module/components/MessageBubble/MessageBubble.meta.d.ts +3 -0
- package/lib/typescript/module/components/MessageList/MessageList.meta.d.ts +5 -0
- package/lib/typescript/module/components/Modal/Modal.meta.d.ts +3 -0
- package/lib/typescript/module/components/Notation/Notation.meta.d.ts +3 -0
- package/lib/typescript/module/components/NumberInput/NumberInput.meta.d.ts +3 -0
- package/lib/typescript/module/components/OTPInput/OTPInput.meta.d.ts +3 -0
- package/lib/typescript/module/components/OnboardingPager/OnboardingPager.meta.d.ts +3 -0
- package/lib/typescript/module/components/OptionSheet/OptionSheet.meta.d.ts +3 -0
- package/lib/typescript/module/components/PaymentResult/PaymentResult.meta.d.ts +3 -0
- package/lib/typescript/module/components/PermissionPrompt/PermissionPrompt.meta.d.ts +3 -0
- package/lib/typescript/module/components/PhoneNumberInput/PhoneNumberInput.meta.d.ts +3 -0
- package/lib/typescript/module/components/PickerTrigger/PickerTrigger.meta.d.ts +3 -0
- package/lib/typescript/module/components/ProfileCompletion/ProfileCompletion.meta.d.ts +3 -0
- package/lib/typescript/module/components/ProfilePicker/ProfilePicker.meta.d.ts +3 -0
- package/lib/typescript/module/components/ProgressBar/ProgressBar.meta.d.ts +3 -0
- package/lib/typescript/module/components/ProgressRing/ProgressRing.meta.d.ts +3 -0
- package/lib/typescript/module/components/Radio/Radio.meta.d.ts +3 -0
- package/lib/typescript/module/components/Radio/RadioGroup.meta.d.ts +3 -0
- package/lib/typescript/module/components/Rating/Rating.meta.d.ts +3 -0
- package/lib/typescript/module/components/Repeater/Repeater.meta.d.ts +3 -0
- package/lib/typescript/module/components/RichTextEditor/RichTextEditor.meta.d.ts +3 -0
- package/lib/typescript/module/components/ScannerOverlay/ScannerOverlay.meta.d.ts +3 -0
- package/lib/typescript/module/components/Screen/Screen.meta.d.ts +3 -0
- package/lib/typescript/module/components/SearchBar/SearchBar.meta.d.ts +3 -0
- package/lib/typescript/module/components/SectionHeader/SectionHeader.meta.d.ts +3 -0
- package/lib/typescript/module/components/SegmentedControl/SegmentedControl.meta.d.ts +3 -0
- package/lib/typescript/module/components/Select/Select.meta.d.ts +3 -0
- package/lib/typescript/module/components/SignaturePad/SignaturePad.meta.d.ts +3 -0
- package/lib/typescript/module/components/Skeleton/Skeleton.meta.d.ts +3 -0
- package/lib/typescript/module/components/Skeleton/SkeletonCircle.meta.d.ts +3 -0
- package/lib/typescript/module/components/Skeleton/SkeletonContent.meta.d.ts +3 -0
- package/lib/typescript/module/components/Skeleton/SkeletonList.meta.d.ts +3 -0
- package/lib/typescript/module/components/Skeleton/SkeletonText.meta.d.ts +3 -0
- package/lib/typescript/module/components/SlideToConfirm/SlideToConfirm.meta.d.ts +3 -0
- package/lib/typescript/module/components/Slider/Slider.meta.d.ts +3 -0
- package/lib/typescript/module/components/SliderField/SliderField.meta.d.ts +3 -0
- package/lib/typescript/module/components/Sparkline/Sparkline.meta.d.ts +3 -0
- package/lib/typescript/module/components/Spinner/Spinner.meta.d.ts +3 -0
- package/lib/typescript/module/components/SquircleView/SquircleView.meta.d.ts +2 -0
- package/lib/typescript/module/components/StatTile/StatTile.meta.d.ts +3 -0
- package/lib/typescript/module/components/StatusBadge/StatusBadge.meta.d.ts +3 -0
- package/lib/typescript/module/components/Stepper/Stepper.meta.d.ts +3 -0
- package/lib/typescript/module/components/Swipeable/Swipeable.meta.d.ts +3 -0
- package/lib/typescript/module/components/Switch/Switch.meta.d.ts +3 -0
- package/lib/typescript/module/components/Tabs/Tabs.meta.d.ts +3 -0
- package/lib/typescript/module/components/TagInput/TagInput.meta.d.ts +3 -0
- package/lib/typescript/module/components/Text/Text.meta.d.ts +3 -0
- package/lib/typescript/module/components/TimePicker/TimePicker.meta.d.ts +3 -0
- package/lib/typescript/module/components/Timeline/Timeline.meta.d.ts +3 -0
- package/lib/typescript/module/components/Toast/Toast.meta.d.ts +3 -0
- package/lib/typescript/module/components/Tooltip/Tooltip.meta.d.ts +3 -0
- package/lib/typescript/module/components/Tour/Tour.meta.d.ts +3 -0
- package/lib/typescript/module/components/TypingIndicator/TypingIndicator.meta.d.ts +3 -0
- package/lib/typescript/module/components/WheelPicker/WheelPickerColumns.meta.d.ts +3 -0
- package/lib/typescript/module/components/WheelPicker/WheelPickerDuration.meta.d.ts +3 -0
- package/lib/typescript/module/components/WheelPicker/WheelPickerList.meta.d.ts +3 -0
- package/lib/typescript/module/components/ZoomableImage/ZoomableImage.meta.d.ts +3 -0
- package/package.json +8 -7
package/canvas-kit.json
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"Accordion",marker:null,platforms:["phone"],acceptsChildren:!0,props:{title:{type:"string",required:!0,description:"The header text shown beside the chevron."},id:{type:"string",description:"Names the accordion inside an AccordionGroup, where it is required."},expanded:{type:"boolean",description:"The open state when the parent controls it; leave out to let the accordion manage its own state."},defaultExpanded:{type:"boolean",default:!1,description:"The open state at first, when the accordion manages its own state."},icon:{type:"icon",description:"An optional icon drawn before the title."},disabled:{type:"boolean",default:!1,description:"Blocks toggling and dims the title and chevron."},variant:{type:"enum",values:["plain","card"],default:"plain",description:"A plain header row or an elevated card."},accessibilityLabel:{type:"string",description:"Overrides the spoken label of the header; it defaults to the title."},loading:{type:"boolean",default:!1,description:"Shows the skeleton placeholder in place of the accordion."}},omit:["haptic"],examples:[{id:"Accordion.card",title:"Card with an icon",props:{title:"Is it themeable?",variant:"card",defaultExpanded:!0},children:"Yes. Wrap your app in the theme provider and override any token."},{id:"Accordion.plain",title:"Plain header row",props:{title:"Returns policy",variant:"plain",defaultExpanded:!0},children:"Items can be returned within 30 days."},{id:"Accordion.disabled",title:"Disabled",props:{title:"Warranty",variant:"card",disabled:!0},children:"One year manufacturer warranty is included."},{id:"Accordion.loading",title:"Loading skeleton",props:{title:"Shipping policy",variant:"card",loading:!0}}],usage:{when:["Hide secondary content behind a tappable header so a long screen stays short.","Show one open section at a time or several, by placing accordions inside an AccordionGroup."],whenNot:[{text:"The content is needed to make the next decision.",instead:"Show it inline in a Card."},{text:"Switching between peer views of the same data.",instead:"Use Tabs."}],do:[{note:"Give every accordion a short, specific title that says what is inside.",example:[{component:"Accordion",props:{title:"Shipping options"},children:"Standard and express delivery are available."}]},{note:"Give each accordion in a group its own id.",example:[{component:"AccordionGroup",props:{},children:[{component:"Accordion",props:{id:"shipping",title:"Shipping options"},children:"Standard and express delivery."},{component:"Accordion",props:{id:"returns",title:"Returns policy"},children:"Thirty days return policy."}]}]}],dont:[{note:"Do not use a vague title such as More or Details.",example:[{component:"Accordion",props:{title:"More"},children:"Standard and express delivery are available."}]},{note:"Do not nest an accordion inside another accordion.",example:[{component:"Accordion",props:{title:"Shipping options"},children:[{component:"Accordion",props:{title:"Returns policy"},children:"Thirty days return policy."}]}]}],a11y:["The header is announced as a button with its expanded or collapsed state.","Set accessibilityLabel only when the title alone does not describe the action."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"AccordionGroup",marker:null,platforms:["phone"],acceptsChildren:!0,props:{allowMultiple:{type:"boolean",default:!1,description:"When false, opening one accordion closes the others; when true, several stay open."},defaultExpandedKeys:{type:"array",description:"The ids of the accordions open at first, when the group manages its own state."},expandedKeys:{type:"array",description:"The ids of the open accordions when the parent controls them."}},omit:[],examples:[{id:"AccordionGroup.single",title:"One open at a time",props:{allowMultiple:!1,defaultExpandedKeys:["a"]},children:[{component:"Accordion",props:{id:"a",title:"Section A",variant:"card"},children:"Only one section is open at a time."},{component:"Accordion",props:{id:"b",title:"Section B",variant:"card"},children:"Opening this closes section A."}]},{id:"AccordionGroup.multiple",title:"Several open",props:{allowMultiple:!0,defaultExpandedKeys:["shipping","returns"]},children:[{component:"Accordion",props:{id:"shipping",title:"Shipping policy",variant:"card"},children:"Several sections can stay open together."},{component:"Accordion",props:{id:"returns",title:"Returns policy",variant:"card"},children:"Open ids are tracked by the group."},{component:"Accordion",props:{id:"warranty",title:"Warranty",variant:"card"},children:"One year manufacturer warranty is included."}]}],usage:{when:["Coordinate several accordions so opening one can close the others.","Keep the set of open sections in one place."],whenNot:[{text:"There is a single accordion.",instead:"Use Accordion on its own."}],do:[{note:"Give every accordion inside the group a unique id.",example:[{component:"AccordionGroup",props:{defaultExpandedKeys:["first"]},children:[{component:"Accordion",props:{id:"first",title:"First section"},children:"First section content."},{component:"Accordion",props:{id:"second",title:"Second section"},children:"Second section content."}]}]}],dont:[{note:"Do not also set expanded on an accordion inside a group.",example:[{component:"AccordionGroup",props:{defaultExpandedKeys:["first"]},children:[{component:"Accordion",props:{id:"first",title:"First section",expanded:!0},children:"First section content."},{component:"Accordion",props:{id:"second",title:"Second section"},children:"Second section content."}]}]}],a11y:["Each accordion keeps its own button semantics; the group adds none."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"AmountSlider",marker:null,platforms:["phone"],acceptsChildren:!1,props:{value:{type:"number",description:"The amount when the parent controls it."},defaultValue:{type:"number",description:"The amount at first, when the slider manages its own state."},min:{type:"number",default:0,description:"The smallest amount."},max:{type:"number",default:100,description:"The largest amount."},step:{type:"number",default:1,description:"The distance between selectable amounts."},disabled:{type:"boolean",default:!1,description:"Blocks the slider and the input box."},tone:{type:"enum",values:["primary","success","warning","danger"],description:"The colour of the filled track."},size:{type:"enum",values:["sm","md","lg"],description:"The size of the track and thumb."},variant:{type:"enum",values:["default","inset","minimal","bar"],default:"inset",description:"The look of the slider."},prefix:{type:"string",default:"₹",description:"Text drawn before the large amount; use an empty string for a plain number."},units:{type:"enum",values:["indian","none"],default:"indian",description:"Whether the large amount reads in Thousand, Lakh and Crore or as a grouped whole number."},animationDuration:{type:"number",description:"The length in milliseconds of one digit roll; it defaults to the theme's normal duration."},accessibilityLabel:{type:"string",description:"The spoken label of the slider."},inputAccessibilityLabel:{type:"string",default:"Amount",description:"The spoken label of the input box."}},omit:["haptic"],examples:[{id:"AmountSlider.default",title:"Loan amount",props:{value:5e5,min:1e5,max:5e6,step:5e4,accessibilityLabel:"Loan amount"}},{id:"AmountSlider.plain",title:"Whole number, minimal look",props:{value:25e3,min:0,max:1e5,step:1e3,variant:"minimal",units:"none",accessibilityLabel:"Budget"}},{id:"AmountSlider.bar",title:"Bar look, success tone",props:{value:2e6,min:1e5,max:5e6,step:5e4,variant:"bar",tone:"success",size:"lg",accessibilityLabel:"Savings goal"}},{id:"AmountSlider.disabled",title:"Disabled",props:{value:5e5,min:1e5,max:5e6,step:5e4,disabled:!0,accessibilityLabel:"Loan amount"}}],usage:{when:["Pick a money amount where both a rough drag and an exact entry make sense, such as a loan, budget or price.","Show the amount in Indian units next to an exact editable figure."],whenNot:[{text:"The value is not money or has only a few choices.",instead:"Use Slider or SegmentedControl."},{text:"The person must type a precise figure and never drag.",instead:"Use Input or DecimalInput."}],do:[{note:"Set min, max and step so every stop is a sensible amount.",example:[{component:"AmountSlider",props:{value:5e5,min:1e5,max:5e6,step:5e4,accessibilityLabel:"Loan amount"}}]}],dont:[{note:"Do not use a step so small that the thumb cannot land on a round figure.",example:[{component:"AmountSlider",props:{value:1234,min:0,max:1e4,step:1,accessibilityLabel:"Tiny step"}}]}],a11y:["Set accessibilityLabel to say what the amount is for.","The input box carries its own label through inputAccessibilityLabel."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"AnimatePresence",marker:null,platforms:["phone"],acceptsChildren:!0,props:{preset:{type:"enum",values:["fade","scale","slide-up","slide-down"],default:"fade",description:"The shape of the enter and exit animation."},duration:{type:"number",description:"The animation length in milliseconds; it defaults to the theme's normal duration."}},omit:[],examples:[{id:"AnimatePresence.fade",title:"Fade",props:{preset:"fade"},children:"fade content"},{id:"AnimatePresence.scale",title:"Scale",props:{preset:"scale",duration:300},children:"scale content"},{id:"AnimatePresence.slideUp",title:"Slide up",props:{preset:"slide-up",duration:300},children:"slide-up content"},{id:"AnimatePresence.slideDown",title:"Slide down",props:{preset:"slide-down",duration:300},children:"slide-down content"}],usage:{when:["Animate a single conditional child in on mount and out on unmount.","Let a panel, banner or message finish its exit animation before it disappears."],whenNot:[{text:"Animating rows inside a list.",instead:"Use the list's own item layout animation."}],do:[{note:"Pass the child only while it should be visible, such as a condition that is either the element or null.",example:[{component:"AnimatePresence",props:{preset:"fade"},children:"Visible content"}]}],dont:[{note:"Do not wrap several siblings; wrap one element.",example:[{component:"AnimatePresence",props:{preset:"fade"},children:[{component:"AnimatePresence",props:{preset:"slide-up"},children:"Nested content"}]}]}],a11y:["With the system Reduce Motion setting on, every preset fades instead of moving."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"AppBar",marker:"AppBar",platforms:["phone"],acceptsChildren:!1,props:{title:{type:"string",description:"The bar title."},subtitle:{type:"string",description:"A second line under the title."},titleAlignment:{type:"enum",values:["left","center"],default:"left",description:"Aligns the title and subtitle to the left or the centre."},leftAction:{type:"object",description:"The button at the left edge, drawn from an icon or a text label.",fields:{icon:{type:"icon",description:"The glyph of the button."},text:{type:"string",description:"A text label used instead of the glyph."},dot:{type:"boolean",description:"Draws a small unread dot on the button."},accessibilityLabel:{type:"string",description:"The spoken label of the button."}}},rightActions:{type:"array",description:"The buttons at the right edge, in order.",itemFields:{icon:{type:"icon",description:"The glyph of the button."},text:{type:"string",description:"A text label used instead of the glyph."},dot:{type:"boolean",description:"Draws a small unread dot on the button."},badge:{type:"stringOrNumber",description:"A count or short text drawn on the button; zero draws nothing."},accessibilityLabel:{type:"string",description:"The spoken label of the button."}}},leading:{type:"node",description:"Any element in the left slot, after the left action."},trailing:{type:"node",description:"Any element in the right slot, after the right actions."},gutter:{type:"number",description:"The distance in points from the screen edge to the visible edge of the outermost glyph."},titleVariant:{type:"string",description:"The text style of the title, a Text variant name or a variant the theme registers."},titleOffset:{type:"number",description:"The exact space in points between the left slot and the title."},height:{type:"number",description:"The bar height in points, without the top safe area; it overrides the variant height."},divider:{type:"boolean",description:"Draws a hairline under the bar; it shows unless the bar is transparent."},variant:{type:"enum",values:["default","large","compact"],default:"default",description:"The bar height and title weight."},transparent:{type:"boolean",default:!1,description:"Removes the background and the bottom line, for hero or tinted layouts."}},omit:["scrollY","haptic"],examples:[{id:"AppBar.default",title:"Title and subtitle",props:{title:"Inbox",subtitle:"3 unread",variant:"default"}},{id:"AppBar.compact",title:"Compact, centred title",props:{title:"Inbox",variant:"compact",titleAlignment:"center"}},{id:"AppBar.large",title:"Large title",props:{title:"Library",subtitle:"Scroll the list below",variant:"large"}},{id:"AppBar.transparent",title:"Transparent",props:{title:"Inbox",variant:"default",transparent:!0}}],usage:{when:["Put a title, a back button and a few actions at the top of a screen.","Use the large variant for a top-level screen whose title collapses as the list scrolls."],whenNot:[{text:"A search field is the main control of the screen.",instead:"Use SearchBar."},{text:"The page needs a custom header layout.",instead:"Compose it with the leading and trailing slots before building a new header."}],do:[{note:"Keep at most three actions on the right and give each an accessibility label.",example:[{component:"AppBar",props:{title:"Inbox",rightActions:[{icon:"search",accessibilityLabel:"Search messages"},{icon:"filter",accessibilityLabel:"Filter messages"},{icon:"more",accessibilityLabel:"More options"}]}}]},{note:"Use the compact variant on screens below the first level.",example:[{component:"AppBar",props:{title:"Settings",variant:"compact",rightActions:[{icon:"share",accessibilityLabel:"Share profile"}]}}]}],dont:[{note:"Do not put long text in the title; it truncates.",example:[{component:"AppBar",props:{title:"Inbox messages from all your accounts and folders",rightActions:[{icon:"search",accessibilityLabel:"Search messages"},{icon:"filter",accessibilityLabel:"Filter messages"},{icon:"more",accessibilityLabel:"More options"}]}}]},{note:"Do not give an action neither an icon nor a text label.",example:[{component:"AppBar",props:{title:"Settings",variant:"compact",rightActions:[{accessibilityLabel:"Share profile"}]}}]}],a11y:["Every action is at least 44 by 44 points and needs an accessibility label unless it has text.","The back arrow is announced as Back."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"AppIcon",marker:"AppIcon",platforms:["phone"],acceptsChildren:!1,props:{name:{type:"icon",required:!0,description:"The icon to draw, by name; add -iconsax to a curated name to draw the Iconsax glyph it shadows."},size:{type:"enumOrNumber",values:["xs","sm","md","lg","xl"],default:"md",description:"A size name (14, 18, 22, 28 or 36 pixels) or an exact size in pixels."},color:{type:"string",description:"Any colour value; it defaults to the primary text colour."},variant:{type:"enum",values:["linear","bold","broken","bulk","outline","twotone"],default:"linear",description:"The icon style; a name missing in a style falls back to linear."},accessibilityLabel:{type:"string",description:"Set when the icon carries meaning on its own; decorative icons stay silent for screen readers."}},omit:[],examples:[{id:"AppIcon.default",title:"Default icon",props:{name:"send"}},{id:"AppIcon.bold",title:"Bold style, large",props:{name:"send",variant:"bold",size:"xl",accessibilityLabel:"Send message"}},{id:"AppIcon.pixels",title:"Exact size",props:{name:"user",size:64}},{id:"AppIcon.twotone",title:"Two-tone style",props:{name:"calendar",variant:"twotone",size:"lg"}}],usage:{when:["Draw an icon from the design system's set by name, the same name as on the web.","Pick a style (linear, bold, broken, bulk, outline, twotone) to match the weight of the surrounding text."],whenNot:[{text:"Showing a photo or a brand logo.",instead:"Use Image or AuthedImage."},{text:"The icon is the only content of a button.",instead:"Use IconButton, which sets the touch size."}],do:[{note:"Use one style across a screen.",example:[{component:"AppIcon",props:{name:"home",variant:"linear"}},{component:"AppIcon",props:{name:"search",variant:"linear"}}]},{note:"Give an icon that stands alone an accessibility label.",example:[{component:"AppIcon",props:{name:"search",accessibilityLabel:"Search"}}]}],dont:[{note:"Do not use an icon without text for an action nobody would recognise.",example:[{component:"AppIcon",props:{name:"radar"}}]},{note:"Do not mix icon styles in one toolbar.",example:[{component:"AppIcon",props:{name:"home",variant:"linear"}},{component:"AppIcon",props:{name:"search",variant:"bold"}}]}],a11y:["A decorative icon is hidden from screen readers; set accessibilityLabel when it carries meaning.","Colour is never the only signal; pair a coloured icon with text."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"AsyncBlock",marker:null,platforms:["phone"],acceptsChildren:!0,props:{loading:{type:"boolean",default:!1,description:"Shows the placeholder instead of the content."},error:{type:"any",description:"An error to show in place of the content; a string is the description, and any other value is read for its message."},errorVariant:{type:"enum",values:["default","offline"],description:"Draws the error as a lost connection when offline; left out, an offline error picks it by itself."},empty:{type:"boolean",default:!1,description:"The fetch succeeded with nothing to show."},skeleton:{type:"node",description:"A placeholder shaped like the content; it falls back to a centred spinner."},emptyTitle:{type:"string",default:"Nothing here yet",description:"The title of the empty state."},emptyDescription:{type:"string",description:"The text under the empty title."},emptyIcon:{type:"icon",description:"The icon of the empty state."},errorTitle:{type:"string",default:"That didn't load",description:"The title of the error state."},offlineTitle:{type:"string",default:"You're offline",description:"The title of the offline error state."},retryLabel:{type:"string",default:"Try again",description:"The label of the retry button."}},omit:[],examples:[{id:"AsyncBlock.loading",title:"Loading",props:{loading:!0}},{id:"AsyncBlock.error",title:"Error",props:{error:"Network unreachable",errorTitle:"That didn't load",retryLabel:"Try again"}},{id:"AsyncBlock.offline",title:"Offline",props:{error:"No connection",errorVariant:"offline"}},{id:"AsyncBlock.empty",title:"Empty",props:{empty:!0,emptyTitle:"No invoices yet",emptyDescription:"Invoices appear here once you raise one."}},{id:"AsyncBlock.content",title:"Content",props:{},children:"The loaded content appears here."}],usage:{when:["Wrap any screen section that fetches data so loading, error, empty and content each have one place.","Show a shaped skeleton while data loads so the layout does not jump."],whenNot:[{text:"The data is already in memory and cannot fail.",instead:"Render the content directly."},{text:"A single button is busy.",instead:"Use the loading state of that Button."}],do:[{note:"Give the empty state a title that says what will appear and when.",example:[{component:"Card",props:{title:"No invoices yet"},children:"Invoices appear here once you raise one."}]},{note:"Pass a retry handler so a failure can be recovered.",example:[{component:"Button",props:{title:"Try again"}}]}],dont:[{note:"Do not show a raw error message from the server; pass a text written for the person.",example:[{component:"AsyncBlock",props:{errorTitle:"That didn't load",error:"Network unreachable",retryLabel:"Try again"}}]},{note:"Do not leave loading on while showing content.",example:[{component:"Card",props:{loading:!0}}]}],a11y:["The error and empty states are plain text, so screen readers read their title and description.","Loading wins over error, error over empty, and empty over content."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"AuthedImage",marker:null,platforms:["phone"],acceptsChildren:!1,props:{uri:{type:"url",required:!0,description:"The address of the image."},resizeMode:{type:"enum",values:["cover","contain","stretch","repeat","center"],description:"How the image fits its box, in React Native's names; contentFit wins when both are set."},contentFit:{type:"enum",values:["cover","contain","fill","none","scale-down"],description:"How the image fits its box, in expo-image's names."},fadeDuration:{type:"number",description:"The cross-fade in milliseconds when the image appears."},headers:{type:"object",description:"Extra request headers sent with the fetch."},authenticated:{type:"boolean",default:!0,description:"Attaches the stored sign-in token to the request when no client is given."},ttlMs:{type:"number",default:6048e5,description:"How long a cached image counts as fresh, in milliseconds."},placeholder:{type:"node",description:"Shown while the image loads."},fallback:{type:"node",description:"Shown when no usable image exists."},cacheKey:{type:"string",description:"Overrides the cache key derived from the address."},blurRadius:{type:"number",description:"Blurs the image by this radius in points."},tintColor:{type:"string",description:"Paints the image in one colour, for a mask-like icon."}},omit:[],examples:[{id:"AuthedImage.cover",title:"Cover fit",props:{uri:"https://picsum.photos/seed/webority-authed-image/400/300",authenticated:!1,contentFit:"cover"}},{id:"AuthedImage.contain",title:"Contain fit",props:{uri:"https://picsum.photos/seed/webority-authed-image/400/300",authenticated:!1,contentFit:"contain"}},{id:"AuthedImage.blurred",title:"Blurred",props:{uri:"https://picsum.photos/seed/webority-authed-image/400/300",authenticated:!1,contentFit:"cover",blurRadius:12}},{id:"AuthedImage.missing",title:"Image not found",props:{uri:"https://picsum.photos/id/999999/400/300",authenticated:!1,contentFit:"cover"}}],usage:{when:["Show an image that sits behind a sign-in, which the plain Image cannot fetch.","Cache the image on the device so it opens at once the next time."],whenNot:[{text:"The image is public and needs no token.",instead:"Use Image with a plain address."},{text:"The image is a person's picture.",instead:"Use Avatar."}],do:[{note:"Give the image a fixed height or aspect ratio so the layout does not jump.",example:[{component:"AuthedImage",props:{uri:"https://picsum.photos/seed/webority/400/300"}}]},{note:"Pass a fallback for the case where the image cannot load.",example:[{component:"AuthedImage",props:{uri:"https://picsum.photos/seed/webority/400/300",fallback:{component:"AppIcon",props:{name:"user"}}}}]}],dont:[{note:"Do not set one cache key for different pictures.",example:[{component:"AuthedImage",props:{uri:"https://picsum.photos/id/10/400/300",cacheKey:"shared-key"}},{component:"AuthedImage",props:{uri:"https://picsum.photos/id/11/400/300",cacheKey:"shared-key"}}]},{note:"Do not send the token to a public address; turn authenticated off.",example:[{component:"AuthedImage",props:{uri:"https://picsum.photos/seed/public/400/300",authenticated:!0}}]}],a11y:["Pass an accessibility label that describes the picture when it carries meaning.","A decorative image needs no label."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"Autocomplete",marker:null,platforms:["phone"],acceptsChildren:!1,props:{options:{type:"array",required:!0,description:"The candidate options to filter."},value:{type:"string",description:"The input text when the parent controls it."},defaultValue:{type:"string",description:"The input text at first, when the field manages its own text."},minChars:{type:"number",default:1,description:"The number of characters typed before suggestions appear."},maxResults:{type:"number",default:8,description:"The most suggestions shown."},emptyText:{type:"string",default:"No matches",description:"The text shown when nothing matches."},loading:{type:"boolean",default:!1,description:"Shows a spinner row in the dropdown, for results being fetched."},filterMode:{type:"enum",values:["client","none"],default:"client",description:"Client filters the options here; none shows them as given, for search done on a server."},loadingText:{type:"string",default:"Searching…",description:"The text beside the loading spinner."},placeholder:{type:"string",description:"The hint shown while the field is empty."},label:{type:"string",description:"The field label."},error:{type:"node",description:"An error message shown under the field."},helperText:{type:"string",description:"A hint shown under the field."},disabled:{type:"boolean",default:!1,description:"Blocks typing and selecting."},size:{type:"enum",values:["sm","md","lg"],default:"md",description:"The size of the field."},variant:{type:"enum",values:["outlined","filled","underline"],description:"The look of the field."}},omit:["haptic"],examples:[{id:"Autocomplete.countries",title:"Country search",props:{options:["India","Indonesia","Ireland","Israel","Italy","United States"],label:"Country",placeholder:"Start typing…"}},{id:"Autocomplete.filled",title:"Filled, large",props:{options:["India","Indonesia","Ireland"],label:"Country",variant:"filled",size:"lg"}},{id:"Autocomplete.loading",title:"Loading remote results",props:{options:[],label:"City",filterMode:"none",loading:!0,loadingText:"Searching…"}},{id:"Autocomplete.disabled",title:"Disabled",props:{options:["India","Indonesia"],label:"Country",disabled:!0}}],usage:{when:["Let a person pick one item from a long list by typing, such as a country, a city or an assignee.","Search on a server by showing a loading row and the fetched options as they are."],whenNot:[{text:"The list has only a few fixed choices.",instead:"Use Select or SegmentedControl."},{text:"The person may enter any text.",instead:"Use Input."}],do:[{note:"Set a label that names what is being chosen.",example:[{component:"Autocomplete",props:{label:"Country",options:["India","Indonesia","Ireland"],maxResults:8}}]},{note:"Use filterMode none and the loading state when results come from a server.",example:[{component:"Autocomplete",props:{label:"City",options:[],filterMode:"none",loading:!0,loadingText:"Searching..."}}]}],dont:[{note:"Do not show hundreds of suggestions; keep maxResults small.",example:[{component:"Autocomplete",props:{label:"Country",options:["India","Indonesia","Ireland"],maxResults:100}}]},{note:"Do not use it for a list a person would rather scroll.",example:[{component:"Autocomplete",props:{label:"Size",options:["Small","Medium","Large"]}}]}],a11y:["The field keeps the Input semantics, so the label and error are read.","Selecting a suggestion closes the keyboard."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"Avatar",marker:null,platforms:["phone"],acceptsChildren:!1,props:{source:{type:"url",description:"The picture to draw; it falls back to initials when it fails to load or is left out."},name:{type:"string",description:"The person's name, used for the initials and the fallback colour."},size:{type:"enumOrNumber",values:["xs","sm","md","lg","xl"],default:"md",description:"A size name (24, 32, 48, 64 or 80 points) or an exact size in points."},shape:{type:"enum",values:["circle","square","rounded"],default:"circle",description:"The outline of the avatar."},status:{type:"enum",values:["online","offline","busy","away","verified","pending"],description:"A presence dot, or a verified or pending ring; leave out to show nothing."},statusPosition:{type:"enum",values:["topRight","bottomRight"],default:"bottomRight",description:"The corner where the presence dot sits."},tone:{type:"enum",values:["neutral","primary","secondary","success","warning","danger","info"],description:"A theme colour for the initials disc; left out, the colour comes from the name."},backgroundColor:{type:"string",description:"A colour for the initials disc that wins over tone."},color:{type:"string",description:"A colour for the initials that wins over tone."},fontSize:{type:"number",description:"The initials font size in pixels; it wins over the size-based default."},loading:{type:"boolean",default:!1,description:"Shows the skeleton placeholder in place of the avatar."},accessibilityLabel:{type:"string",description:"The spoken name; it defaults to the person's name followed by avatar."}},omit:["ImageComponent","haptic","hitSlop"],examples:[{id:"Avatar.initials",title:"Initials",props:{name:"Ada Lovelace",size:"lg"}},{id:"Avatar.online",title:"Online dot",props:{name:"Ada Lovelace",size:"lg",status:"online"}},{id:"Avatar.verified",title:"Verified ring",props:{name:"Verified user",size:"lg",status:"verified"}},{id:"Avatar.tone",title:"Rounded, primary tone",props:{name:"Alan Turing",size:"lg",shape:"rounded",tone:"primary"}}],usage:{when:["Represent a person or an organisation with a picture, or with initials when there is none.","Show presence or an identity state with a dot or a ring."],whenNot:[{text:"Showing any other picture.",instead:"Use AuthedImage or Image."},{text:"Showing several people together.",instead:"Use AvatarGroup."}],do:[{note:"Always pass name so the initials fallback and the spoken label work.",example:[{component:"Avatar",props:{name:"Ada Lovelace",size:"md"}}]},{note:"Keep one size within a list.",example:[{component:"Avatar",props:{name:"Ada Lovelace",size:"sm"}},{component:"Avatar",props:{name:"Alan Turing",size:"sm"}}]}],dont:[{note:"Do not rely on the dot colour alone to tell presence.",example:[{component:"Avatar",props:{size:"md",status:"online"}}]},{note:"Do not set both tone and backgroundColor.",example:[{component:"Avatar",props:{name:"Ada Lovelace",size:"md",tone:"primary",backgroundColor:"#3b82f4"}}]}],a11y:["The spoken label is the name followed by avatar, with verified or pending added for the ring states.","A pressable avatar is announced as a button and keeps a touch area of at least 44 points."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"AvatarGroup",marker:null,platforms:["phone"],acceptsChildren:!0,props:{max:{type:"number",default:4,description:"The most avatars shown before the rest collapse into an overflow circle."},size:{type:"enumOrNumber",values:["xs","sm","md","lg","xl"],default:"md",description:"A size name or an exact size in points, applied to every avatar."},spacing:{type:"enum",values:["tight","normal","loose"],default:"normal",description:"How much the avatars overlap."},overflowVariant:{type:"enum",values:["count","plus"],default:"count",description:"Shows the overflow as a count such as +3 or as a plain plus."},accessibilityLabel:{type:"string",description:"The spoken label of the whole group."}},omit:[],examples:[{id:"AvatarGroup.default",title:"Four of six",props:{max:4,size:"md"},children:[{component:"Avatar",props:{name:"Ada Lovelace"}},{component:"Avatar",props:{name:"Alan Turing"}},{component:"Avatar",props:{name:"Grace Hopper"}},{component:"Avatar",props:{name:"Linus Torvalds"}},{component:"Avatar",props:{name:"Margaret Hamilton"}},{component:"Avatar",props:{name:"Dennis Ritchie"}}]},{id:"AvatarGroup.plus",title:"Plus overflow",props:{max:3,size:"md",overflowVariant:"plus"},children:[{component:"Avatar",props:{name:"Ada Lovelace"}},{component:"Avatar",props:{name:"Alan Turing"}},{component:"Avatar",props:{name:"Grace Hopper"}},{component:"Avatar",props:{name:"Linus Torvalds"}}]},{id:"AvatarGroup.tight",title:"Tight spacing",props:{max:4,size:"lg",spacing:"tight"},children:[{component:"Avatar",props:{name:"Ada Lovelace"}},{component:"Avatar",props:{name:"Alan Turing"}},{component:"Avatar",props:{name:"Grace Hopper"}}]}],usage:{when:["Show the people on a task, chat or team as one overlapping stack.","Collapse the extra people into a count."],whenNot:[{text:"Showing one person.",instead:"Use Avatar."},{text:"The person must be able to read every name.",instead:"Use a list of ListItem rows."}],do:[{note:"Set max so the stack fits the space it sits in.",example:[{component:"AvatarGroup",props:{max:2},children:[{component:"Avatar",props:{name:"Alice"}},{component:"Avatar",props:{name:"Bob"}}]}]}],dont:[{note:"Do not put anything but Avatar elements inside the group.",example:[{component:"AvatarGroup",props:{max:2},children:[{component:"Avatar",props:{name:"Alice"}},"and others"]}]}],a11y:["Set accessibilityLabel to say how many people the group holds.","The overflow circle is announced with its count."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"Badge",marker:null,platforms:["phone"],acceptsChildren:!0,props:{value:{type:"stringOrNumber",description:"The count or short text; a number of zero or less draws nothing in the standard variant."},max:{type:"number",default:99,description:"The largest number shown before it reads as the maximum with a plus."},variant:{type:"enum",values:["standard","dot"],default:"standard",description:"A pill with the value or a plain dot."},tone:{type:"enum",values:["primary","success","warning","danger","neutral","info"],default:"danger",description:"The colour of the badge."},size:{type:"enum",values:["sm","md"],default:"sm",description:"The size of the badge."},invisible:{type:"boolean",default:!1,description:"Hides the badge without removing it from the layout."},loading:{type:"boolean",default:!1,description:"Shows the skeleton placeholder in place of the badge."},anchor:{type:"enum",values:["topRight","topLeft","bottomRight","bottomLeft"],default:"topRight",description:"The corner of the child where the badge sits."},pulse:{type:"boolean",default:!1,description:"Pulses the badge to draw attention to something unread."},accessibilityLabel:{type:"string",description:"The spoken label of the badge."}},omit:[],examples:[{id:"Badge.count",title:"Count",props:{value:4,tone:"danger"}},{id:"Badge.dot",title:"Dot",props:{variant:"dot",tone:"success"}},{id:"Badge.overflow",title:"Over the maximum",props:{value:120,max:99,tone:"primary",size:"md"}},{id:"Badge.anchored",title:"On a button",props:{value:4,tone:"danger",anchor:"topRight"},children:[{component:"Button",props:{title:"Inbox",variant:"outline"}}]}],usage:{when:["Show a count or a status on its own, or on the corner of an icon, avatar or button.","Mark something unread with a dot or a pulsing badge."],whenNot:[{text:"Showing a status with a word.",instead:"Use StatusBadge."},{text:"Showing a removable label.",instead:"Use Chip."}],do:[{note:"Use the danger tone only for things that need action, such as unread alerts.",example:[{component:"Badge",props:{value:3,tone:"danger"},children:[{component:"Button",props:{title:"Alerts"}}]}]},{note:"Set max so a large count reads 99+ and stays small.",example:[{component:"Badge",props:{value:120,max:99},children:[{component:"Button",props:{title:"Inbox"}}]}]}],dont:[{note:"Do not rely on the colour alone to carry the meaning.",example:[{component:"Badge",props:{variant:"dot",tone:"danger"},children:[{component:"Button",props:{title:"Alerts"}}]}]},{note:"Do not stack several badges on one element.",example:[{component:"Badge",props:{value:4,anchor:"topRight"},children:[{component:"Badge",props:{variant:"dot",tone:"success",anchor:"bottomRight"},children:[{component:"Button",props:{title:"Inbox"}}]}]}]}],a11y:["Set accessibilityLabel to say what the count means, such as 4 unread messages.","Colour is never the only signal; the value or the label carries the meaning."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"Banner",marker:null,platforms:["phone"],acceptsChildren:!1,props:{title:{type:"string",description:"A short heading above the message."},message:{type:"node",required:!0,description:"The text of the banner. Plain text gets the built-in styling; a node is drawn as it is."},variant:{type:"enum",values:["info","success","warning","danger","neutral"],default:"info",description:"The kind of message, which sets its colour and icon."},icon:{type:"icon",description:"Replaces the built-in icon. Pass false to draw no icon."},actions:{type:"array",itemFields:{label:{type:"string",required:!0,description:"The button text."},tone:{type:"enum",values:["primary","neutral","danger"],description:"The button colour. Primary takes the banner colour, neutral the secondary text colour and danger the error colour."},variant:{type:"enum",values:["solid","outline","ghost"],description:"The button style: filled, bordered or text only."},size:{type:"enum",values:["sm","md"],description:"The button size. Medium is taller, with a 44 point touch target."}},description:"Buttons drawn under the message."},dismissible:{type:"boolean",default:!1,description:"Shows a close button."},visible:{type:"boolean",default:!0,description:"Shows or hides the banner. Hiding plays the exit animation first."},animateMount:{type:"boolean",default:!0,description:"Slides and fades the banner in when it first appears."},loading:{type:"boolean",default:!1,description:"Draws the placeholder shape instead of the content while data loads."},accessibilityRole:{type:"enum",values:["alert","summary","none"],default:"alert",description:"How a screen reader treats the banner. Alert announces it as it appears; summary and none are read in order."},accessibilityLabel:{type:"string",description:"Replaces what the banner is announced as. Leave it unset so the title, message and each button are read in turn."}},omit:["haptic"],examples:[{id:"Banner.info",title:"Info",props:{variant:"info",title:"Update available",message:"Version 2.4 includes performance improvements."}},{id:"Banner.success",title:"Success",props:{variant:"success",message:"Your changes were saved.",dismissible:!0}},{id:"Banner.danger",title:"Danger",props:{variant:"danger",title:"Payment failed",message:"Check your card details and try again.",dismissible:!0}}],usage:{when:["A message belongs to the whole screen or a section, such as an update, a warning or a saved state.","The message needs a visible place on the page and may offer one or two actions.","The person can dismiss it or leave it until it no longer applies."],whenNot:[{text:"The message is a brief confirmation that should disappear on its own.",instead:"Toast"},{text:"The person must answer before they can continue.",instead:"Dialog"}],do:[{note:"Keep the message to one or two sentences and give the action a clear verb.",example:[{component:"Banner",props:{variant:"info",message:"Version 2.4 is ready.",actions:[{label:"Update"}]}}]}],dont:[{note:"Do not stack several banners on one screen. They compete and the important one gets lost.",example:[{component:"Banner",props:{variant:"warning",message:"Several banners shown at once hide the one that matters."}}]}],a11y:["The alert role announces the banner as it appears, so use it only for something the person must hear now.","Without an accessibility label, a screen reader reads the title, the message and each button in turn."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"BarChart",marker:null,platforms:["phone"],acceptsChildren:!1,props:{data:{type:"array",required:!0,itemFields:{label:{type:"string",required:!0,description:"The full name of the bar, read aloud and written in the callout."},value:{type:"number",required:!0,description:"The bar value. A value below zero draws under the zero line."},axisLabel:{type:"string",description:"A shorter label drawn under the bar. It defaults to the label."},accessibilityLabel:{type:"string",description:"Replaces the spoken text of the bar."}},description:"The bars, left to right."},tone:{type:"enum",values:["primary","success","warning","danger","info","neutral"],default:"primary",description:"The colour of the bars."},color:{type:"string",description:"A single colour for every bar. It wins over the tone."},height:{type:"number",default:160,description:"Height of the plot in points."},label:{type:"string",description:"What the chart shows, read first by a screen reader."},summary:{type:"string",description:"The main message in a sentence, shown while no bar is picked. It defaults to the highest bar."},showValues:{type:"boolean",description:"Draws each bar's value on the bar. It is on by default when there are 7 bars or fewer."},selection:{type:"number",description:"The picked bar, counted from 0, when the screen controls the selection."},defaultSelection:{type:"number",description:"The bar picked at the start when the chart keeps its own selection."}},omit:["haptic"],examples:[{id:"BarChart.default",title:"Default",props:{label:"Approvals per day",summary:"Approvals peaked on Thursday",data:[{label:"Mon 06-Oct-2026",axisLabel:"Mon",value:14},{label:"Tue 07-Oct-2026",axisLabel:"Tue",value:22},{label:"Wed 08-Oct-2026",axisLabel:"Wed",value:9},{label:"Thu 09-Oct-2026",axisLabel:"Thu",value:31}]}},{id:"BarChart.success",title:"Success tone",props:{tone:"success",label:"Approvals per day",data:[{label:"Mon 06-Oct-2026",axisLabel:"Mon",value:14},{label:"Tue 07-Oct-2026",axisLabel:"Tue",value:22},{label:"Wed 08-Oct-2026",axisLabel:"Wed",value:9}]}},{id:"BarChart.negative",title:"Negative values",props:{label:"Change per day",data:[{label:"Mon 06-Oct-2026",axisLabel:"Mon",value:6},{label:"Tue 07-Oct-2026",axisLabel:"Tue",value:-4},{label:"Wed 08-Oct-2026",axisLabel:"Wed",value:9},{label:"Thu 09-Oct-2026",axisLabel:"Thu",value:-7}]}}],usage:{when:["A dashboard shows a handful of values side by side, such as a count per day.","The main message can be written as one sentence under the chart.","Values may be negative and the zero line should stay visible."],whenNot:[{text:"The values are a trend over many points.",instead:"Sparkline"},{text:"The chart must show exact numbers for every point.",instead:"a table of values"}],do:[{note:"Write a summary sentence that names the main message, so the chart reads without touching it.",example:[{component:"BarChart",props:{summary:"Approvals peaked on Thursday",data:[{label:"Mon",value:14},{label:"Thu",value:31}]}}]}],dont:[{note:"Do not leave out the label and summary. A reader then has to guess what the bars mean.",example:[{component:"BarChart",props:{data:[{label:"Mon",value:14},{label:"Thu",value:31}]}}]}],a11y:["A screen reader gets one adjustable element: swipe up or down to move from bar to bar, each read as its label and value.","The label names the chart and is read first."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"BottomNavigation",marker:null,platforms:["phone"],acceptsChildren:!1,props:{tabs:{type:"array",required:!0,itemFields:{key:{type:"string",required:!0,description:"A stable id for the tab."},label:{type:"string",required:!0,description:"The text under the icon and the accessible name of the tab."},showLabel:{type:"boolean",description:"Draws this tab's label. False hides the text and keeps it as the accessible name."},icon:{type:"icon",required:!0,description:"The tab icon, an icon name or any node."},activeIcon:{type:"icon",description:"The icon drawn while the tab is active."},badge:{type:"stringOrNumber",description:"A number or text drawn on the tab. True draws a dot."}},description:"The tabs, left to right."},centerAction:{type:"object",fields:{label:{type:"string",required:!0,description:"The accessible name of the button. It is never drawn."},icon:{type:"icon",description:"The icon drawn in the filled circle. It defaults to add."},content:{type:"node",description:"Replaces the filled circle entirely with any node."},size:{type:"number",description:"Diameter of the filled circle in pixels."},color:{type:"string",description:"Fill of the circle."},iconColor:{type:"string",description:"Colour of the icon in the circle."},iconSize:{type:"number",description:"Size of the icon in the circle in pixels."},lift:{type:"number",description:"How far the button rises above the centre of the row, in pixels."},gap:{type:"number",description:"Space between the button and the neighbouring tabs, in pixels."}},description:"A button in the middle of the bar that is not a tab."},activeTab:{type:"string",required:!0,description:"The key of the active tab."},showLabels:{type:"boolean",default:!0,description:"Shows the text label under each icon. Expand only labels the active tab."},variant:{type:"enum",values:["pill","underline","floating","bubble","expand","solid","tile"],default:"pill",description:"The look of the bar."},indicatorPosition:{type:"enum",values:["top","bottom"],default:"bottom",description:"Where the active line sits, for the variants that draw a line."},radius:{type:"stringOrNumber",description:"Corner radius of the bar in pixels, or the text pill for fully round ends."},indicatorRadius:{type:"stringOrNumber",description:"Corner radius of the active tab background in pixels, or the text auto to follow the bar.",default:"auto"},elevation:{type:"enum",values:["none","card","elevated","popover","modal","drawer"],description:"The shadow under the bar, as a shadow name or none."},iconSize:{type:"number",description:"Size of every tab icon in pixels."},marginHorizontal:{type:"number",description:"Space between the bar and the left and right screen edges, in pixels."},marginVertical:{type:"number",description:"Space above and below the bar, in pixels."},paddingHorizontal:{type:"number",description:"Space inside the bar between its edges and the tab row, in pixels."},paddingVertical:{type:"number",description:"Space inside the bar above and below the tab row, in pixels."},border:{type:"boolean",description:"Draws a hairline border around the bar."},minimizeOnScroll:{type:"boolean",default:!1,description:"Shrinks the bar to its icons while the person scrolls down and restores it on scroll up."},scrollDirection:{type:"enum",values:["up","down","idle"],default:"idle",description:"The scroll direction of the screen, read only when minimizeOnScroll is on."},accessory:{type:"node",description:"A compact strip tied to the bar, such as a status line."},labelMaxFontScale:{type:"number",description:"The largest text scale the tab label follows."}},omit:["haptic"],examples:[{id:"BottomNavigation.pill",title:"Pill",props:{variant:"pill",activeTab:"home",tabs:[{key:"home",label:"Home",icon:"home"},{key:"search",label:"Search",icon:"search-normal"},{key:"inbox",label:"Inbox",icon:"sms",badge:3},{key:"profile",label:"Profile",icon:"user"}]}},{id:"BottomNavigation.floating",title:"Floating",props:{variant:"floating",elevation:"card",activeTab:"search",tabs:[{key:"home",label:"Home",icon:"home"},{key:"search",label:"Search",icon:"search-normal"},{key:"profile",label:"Profile",icon:"user"}]}},{id:"BottomNavigation.underline",title:"Underline on top",props:{variant:"underline",indicatorPosition:"top",activeTab:"home",tabs:[{key:"home",label:"Home",icon:"home"},{key:"inbox",label:"Inbox",icon:"sms"},{key:"settings",label:"Settings",icon:"setting-2"}]}}],usage:{when:["The app has three to five top-level places the person moves between often.","The bar should stay on screen so the person always knows where they are.","A badge should show unread or pending work on a tab."],whenNot:[{text:"There are more than five destinations.",instead:"Drawer"},{text:"The choices switch views inside one screen.",instead:"Tabs"}],do:[{note:"Give every tab a short label, even when it also has an icon.",example:[{component:"BottomNavigation",props:{activeTab:"home",tabs:[{key:"home",label:"Home",icon:"home"},{key:"inbox",label:"Inbox",icon:"sms"}]}}]}],dont:[{note:"Do not hide every label with no accessible name left on the tab.",example:[{component:"BottomNavigation",props:{showLabels:!1,activeTab:"home",tabs:[{key:"home",label:"",icon:"home"},{key:"inbox",label:"",icon:"sms"}]}}]}],a11y:["A tab's label is its accessible name, also when showLabel is false.","The bar stays expanded while a screen reader is on.","The centre action's label is its accessible name and is never drawn."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"BottomSheet",marker:null,platforms:["phone"],acceptsChildren:!0,props:{snapPoints:{type:"array",required:!0,description:"The heights the sheet rests at: a number of points, a percentage such as 50%, or content to hug the content."},index:{type:"number",description:"The snap point the sheet shows, counted from 0. Minus one closes it."},enablePanDownToClose:{type:"boolean",default:!0,description:"Lets a drag on the handle past the threshold close the sheet."},enableBackdropPress:{type:"boolean",default:!0,description:"Lets a tap on the scrim close the sheet. Back and Escape follow it."},scrollable:{type:"boolean",default:!1,description:"Wraps the content in a vertical scroll view between the header and the footer."},scrollEventThrottle:{type:"number",description:"How often the inner scroll view reports scrolling, in milliseconds. Used only with scrollable."},backdropOpacity:{type:"number",description:"The opacity of the scrim."},keyboardBehavior:{type:"enum",values:["none","shift"],default:"shift",description:"How the sheet reacts to the keyboard. Shift rides up with it; none stays put."},mode:{type:"enum",values:["modal","inline"],default:"modal",description:"Modal covers the whole screen in a native modal; inline overlays the parent view."},presentation:{type:"enum",values:["sheet","dialog","auto"],default:"sheet",description:"Sheet is full width at the bottom; dialog is centred; auto picks a dialog on a tablet."},header:{type:"node",description:"A fixed region between the handle and the content. It does not scroll."},footer:{type:"node",description:"A fixed region at the bottom of the sheet, such as a row of buttons."},accessibilityLabel:{type:"string",description:"Names the sheet for a screen reader."},accessibilityViewIsModal:{type:"boolean",description:"Tells a screen reader to ignore what is behind the sheet."}},omit:["scrollRef"],examples:[{id:"BottomSheet.content",title:"Hugs its content",props:{snapPoints:["content"],mode:"inline",index:0},children:"Sheet content."},{id:"BottomSheet.headerFooter",title:"Header and footer",props:{snapPoints:["50%"],mode:"inline",index:0,header:"Filters",footer:"Apply"},children:"Choose how to filter the list."},{id:"BottomSheet.dialog",title:"Dialog presentation",props:{snapPoints:["50%"],presentation:"dialog",mode:"inline",index:0},children:"Centred on a tablet."}],usage:{when:["A short task or a list of choices belongs on top of the current screen.","The person should be able to drag the sheet between a small and a tall height.","The content needs a fixed header or a fixed row of buttons."],whenNot:[{text:"The person must answer one question before going on.",instead:"Dialog"},{text:"The content is a full screen of its own.",instead:"a new screen"}],do:[{note:"Use the content snap point so the sheet is as tall as what it holds.",example:[{component:"BottomSheet",props:{snapPoints:["content"],mode:"inline",index:0}}]}],dont:[{note:"Do not set a snap point taller than the content needs. It leaves a large empty area.",example:[{component:"BottomSheet",props:{snapPoints:["90%"],mode:"inline",index:0}}]}],a11y:["Turning off backdrop press also turns off Back and Escape, so a sheet that must be answered stays open.","Set accessibilityLabel so a screen reader names the sheet when it opens."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"Spacer",marker:null,platforms:["phone"],acceptsChildren:!1,props:{size:{type:"enum",values:["none","xxs","xs","sm","md","lg","xl","2xl","3xl","4xl"],description:"A fixed gap of this space step. Leave it out for a flexible spacer that pushes its neighbours apart."}},omit:[],examples:[{id:"Spacer.fixed",title:"Fixed gap",props:{size:"lg"}},{id:"Spacer.flexible",title:"Flexible push",props:{}}],usage:{when:["Two siblings need a fixed gap that does not belong to either of them.","A flexible space should push one sibling to the far end of a row or column."],whenNot:[{text:"Every child in a row or column needs the same gap.",instead:"the gap of Row or Stack"}],do:[{note:"Pick a space step by name so the gap follows the shared scale.",example:[{component:"Spacer",props:{size:"md"}}]}],dont:[{note:"Do not stack several spacers to make a larger gap. Use the next step up.",example:[{component:"Spacer",props:{size:"xs"}},{component:"Spacer",props:{size:"xs"}}]}],a11y:["A spacer draws nothing and is skipped by a screen reader."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"Button",marker:null,platforms:["phone"],acceptsChildren:!0,props:{title:{type:"string",description:"The label, and the accessible name of the button unless an accessibility label is set."},variant:{type:"enum",values:["solid","soft","outline","ghost","link","glass"],default:"solid",description:"The visual weight, heaviest first. Glass suits a button on a gradient or a photo."},tone:{type:"enum",values:["primary","secondary","success","warning","danger","neutral"],default:"primary",description:"The colour family of the button."},size:{type:"enum",values:["xs","sm","md","lg","xl"],default:"md",description:"The size of the button."},loading:{type:"boolean",default:!1,description:"Disables the button and draws a spinner before the title."},disabled:{type:"boolean",default:!1,description:"Blocks presses and dims the button."},fullWidth:{type:"boolean",default:!1,description:"Stretches the button to the full width of its parent."},leftIcon:{type:"icon",description:"An icon before the title."},rightIcon:{type:"icon",description:"An icon after the title."},iconVariant:{type:"enum",values:["linear","bold","broken","bulk","outline","twotone"],description:"The icon style for an icon given by name."},leftIconBadge:{type:"boolean",default:!1,description:"Draws the left icon inside its own disc at the left edge. Ignored on a link."},rounded:{type:"boolean",default:!1,description:"Gives the button fully round ends."},accessibilityHint:{type:"string",description:"What happens when the control is used, read after its name by a screen reader."},accessibilityLabel:{type:"string",description:"Replaces the title as the accessible name of the button."}},omit:["haptic","gradient","pressAnimation","hitSlop","id","needsOffscreenAlphaCompositing","pointerEvents","removeClippedSubviews","nativeID","collapsable","collapsableChildren","renderToHardwareTextureAndroid","focusable","tabIndex","shouldRasterizeIOS","isTVSelectable","hasTVPreferredFocus","tvParallaxShiftDistanceX","tvParallaxShiftDistanceY","tvParallaxTiltAngle","tvParallaxMagnification","accessible","accessibilityActions","aria-label","accessibilityRole","accessibilityState","aria-busy","aria-checked","aria-disabled","aria-expanded","aria-selected","accessibilityValue","aria-valuemax","aria-valuemin","aria-valuenow","aria-valuetext","importantForAccessibility","aria-hidden","aria-modal","role","accessibilityLabelledBy","aria-labelledby","accessibilityLiveRegion","aria-live","screenReaderFocusable","accessibilityElementsHidden","accessibilityViewIsModal","accessibilityIgnoresInvertColors","accessibilityLanguage","accessibilityShowsLargeContentViewer","accessibilityLargeContentTitle","accessibilityRespondsToUserInteraction","cancelable","delayHoverIn","delayHoverOut","delayLongPress","pressRetentionOffset","android_disableSound","android_ripple","testOnly_pressed","unstable_pressDelay"],examples:[{id:"Button.solid",title:"Solid",props:{title:"Save",variant:"solid",tone:"primary"}},{id:"Button.outline",title:"Outline",props:{title:"Cancel",variant:"outline",tone:"neutral"}},{id:"Button.danger",title:"Danger",props:{title:"Delete",tone:"danger"}},{id:"Button.icon",title:"With an icon",props:{title:"Add item",leftIcon:"add",size:"lg"}}],usage:{when:["The person starts an action, such as saving, sending or adding.","One action on a screen is the main one and should stand out.","An action is in progress and the button should show it with a spinner."],whenNot:[{text:"The control moves to another screen as part of the text.",instead:"a link variant button"},{text:"The control toggles a setting on or off.",instead:"Switch"}],do:[{note:"Label the button with a verb that says what happens.",example:[{component:"Button",props:{title:"Save changes"}}]}],dont:[{note:"Do not use several solid primary buttons side by side. Only one action is the main one.",example:[{component:"Button",props:{title:"Save"}},{component:"Button",props:{title:"Send"}}]}],a11y:["The title is the accessible name; set an accessibility label only when it should differ.","Pass the label as the title, not as text children, which draw a blank button.","While loading, the button reports itself as disabled and busy."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"Calendar",marker:null,platforms:["phone"],acceptsChildren:!1,props:{mode:{type:"enum",values:["single","range"],default:"single",description:"Single picks one day; range picks a start and then an end."},value:{type:"object",required:!0,fields:{start:{type:"string",required:!0,description:"The first day, as an ISO date."},end:{type:"string",description:"The last day of a range, as an ISO date. It is absent while a range is in progress."}},description:"The selection, or null when nothing is picked. Dates are written as ISO strings."},month:{type:"string",description:"A day in the month shown, as an ISO date. Leave it out to let the calendar keep the month."},minDate:{type:"string",description:"The earliest day that can be picked, as an ISO date."},maxDate:{type:"string",description:"The latest day that can be picked, as an ISO date."},disabledDates:{type:"array",description:"Days that cannot be picked, as ISO dates."},weekStartsOn:{type:"enum",values:[0,1,6],default:0,description:"The first weekday of the grid: 0 is Sunday, 1 is Monday and 6 is Saturday."},locale:{type:"string",default:"en-IN",description:"The locale for month, weekday and day names."},markedDates:{type:"array",itemFields:{date:{type:"string",required:!0,description:"The marked day, as an ISO date."},kind:{type:"enum",values:["holiday","event","pending"],required:!0,description:"What the mark means."},label:{type:"string",description:"What the day is, read aloud before its kind."},tone:{type:"enum",values:["success","warning","danger","info","primary","neutral"],description:"The dot colour. It defaults by kind."}},description:"Days drawn with a dot and read aloud with each day."},strikeMarkedInRange:{type:"boolean",default:!1,description:"In range mode, strikes holidays inside a complete range and reads them as not counted."},cellSize:{type:"number",description:"Fixed width and height of each day, at least 44. Unset, days share the width equally."},accessibilityLabel:{type:"string",description:"Names the calendar. It is read with the month heading."}},omit:["haptic"],examples:[{id:"Calendar.single",title:"Single day",props:{value:{start:"2026-10-12"},mode:"single"}},{id:"Calendar.range",title:"Range",props:{value:{start:"2026-10-12",end:"2026-10-16"},mode:"range",strikeMarkedInRange:!0}},{id:"Calendar.mondayStart",title:"Week starts on Monday",props:{value:{start:"2026-10-12"},mode:"single",weekStartsOn:1}}],usage:{when:["The person picks one day or a range from a visible month, such as leave dates.","Holidays or events should show as marks on the days.","The grid should sit inside the page rather than in a sheet."],whenNot:[{text:"The person picks a date from a form field.",instead:"DatePicker"},{text:"The person picks a range from a form field.",instead:"DateRangePicker"}],do:[{note:"Mark holidays so the person sees them before picking a range.",example:[{component:"Calendar",props:{mode:"range",strikeMarkedInRange:!0}}]}],dont:[{note:"Do not set a cell size below 44. The days become hard to tap.",example:[{component:"Calendar",props:{mode:"single",cellSize:30}}]}],a11y:["Each marked day is read aloud with its label and kind.","Days keep a touch target of at least 44 points.","Set accessibilityLabel so the calendar is named with its month heading."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"Card",marker:null,platforms:["phone"],acceptsChildren:!0,props:{variant:{type:"enum",values:["elevated","outlined","filled","flat"],default:"elevated",description:"The surface style of the card."},elevation:{type:"enum",values:["none","card","elevated","popover","modal","drawer"],default:"card",description:"The shadow under the card, as a shadow name or none."},radius:{type:"enum",values:["sm","md","lg","xl"],default:"lg",description:"The corner radius."},padding:{type:"enum",values:["none","sm","md","lg","xl"],default:"md",description:"The space inside the card."},interactive:{type:"boolean",default:!1,description:"Makes the whole card pressable."},bg:{type:"string",description:"The background: a background colour name or any colour value. It replaces the variant surface."},header:{type:"node",description:"A free header slot. When set it replaces the built-in header."},title:{type:"node",description:"The built-in header title. A string is drawn as a heading; a node is drawn as it is."},titleFont:{type:"enum",values:["sans","serif"],default:"sans",description:"The face of a string title: the sans text face, or the serif display face. A node title ignores it."},lead:{type:"node",description:"A subtitle line under the title."},action:{type:"node",description:"A header action: a node is drawn as it is, or a label with a press handler draws a text action."},headerActions:{type:"node",description:"Extra nodes drawn in the header row after the action."},collapsible:{type:"boolean",default:!1,description:"Draws a chevron in the header that folds the body and footer away."},collapsed:{type:"boolean",description:"The folded state, when the screen controls it."},defaultCollapsed:{type:"boolean",default:!1,description:"The folded state at the start, when the card keeps its own."},collapsedSummary:{type:"node",description:"Shown under the title while the card is folded."},removeLabel:{type:"string",default:"Remove",description:"The accessible name of the remove button."},separatorHeight:{type:"number",description:"Height of the bottom band of the flat variant. It defaults to a hairline."},footer:{type:"node",description:"A footer slot below the body."},imageHeight:{type:"number",default:160,description:"Height of the card image in points."},imageAspectRatio:{type:"number",description:"The width to height ratio of the card image."},imageOverlay:{type:"node",description:"A node drawn over the card image."},loading:{type:"boolean",default:!1,description:"Draws the placeholder shape instead of the content while data loads."},contextMenu:{type:"object",fields:{items:{type:"any",required:!0,description:"The menu entries: a list of items, or a list of groups of items."},title:{type:"string",description:"A short heading over the items. It is also the accessible name of the menu."},topActions:{type:"array",itemFields:{key:{type:"string",required:!0,description:"A stable id for the item."},label:{type:"string",required:!0,description:"The item text."},icon:{type:"icon",description:"A leading icon."},description:{type:"string",description:"A line under the label. Any description presents the menu as a sheet on a phone."},detail:{type:"string",description:"Short trailing text, such as a count."},checked:{type:"boolean",description:"Draws a check mark and reports the checked state."},destructive:{type:"boolean",description:"Draws the item in the error colour."},disabled:{type:"boolean",description:"Marks the item as unavailable now."},hidden:{type:"boolean",description:"Never shows the item."},submenu:{type:"array",description:"One level of items that replaces the list when this item is chosen."},accessibilityLabel:{type:"string",description:"Replaces the item text for a screen reader."}},description:"Up to three icon actions in a row above the list."},preview:{type:"node",description:"What lifts over the dimmed screen while the menu is open."},unavailable:{type:"enum",values:["hide","disable"],description:"Hide drops an unavailable item; disable shows it dimmed."},presentation:{type:"enum",values:["auto","popover","sheet"],description:"How the menu is drawn. Auto picks a sheet on a phone past seven items or with a description."},placement:{type:"enum",values:["top","bottom","auto"],description:"The preferred side of the pressed card."},accessibilityLabel:{type:"string",description:"Names the menu for a screen reader."},closeLabel:{type:"string",description:"The accessible name of the tap outside area."},backLabel:{type:"string",description:"The accessible name of a submenu's Back row."}},description:"A long press menu. Every item is also a screen reader action on the card."},borderRadius:{type:"number",description:"A corner radius in points for this card. It wins over the radius name."},accessibilityHint:{type:"string",description:"What happens when the control is used, read after its name by a screen reader."},disabled:{type:"boolean",description:"Blocks presses on an interactive card."},accessibilityLabel:{type:"string",description:"Names the card for a screen reader."}},omit:["imageSource","gradient","haptic","hitSlop","id","needsOffscreenAlphaCompositing","pointerEvents","removeClippedSubviews","nativeID","collapsable","collapsableChildren","renderToHardwareTextureAndroid","focusable","tabIndex","shouldRasterizeIOS","isTVSelectable","hasTVPreferredFocus","tvParallaxShiftDistanceX","tvParallaxShiftDistanceY","tvParallaxTiltAngle","tvParallaxMagnification","accessible","accessibilityActions","aria-label","accessibilityRole","accessibilityState","aria-busy","aria-checked","aria-disabled","aria-expanded","aria-selected","accessibilityValue","aria-valuemax","aria-valuemin","aria-valuenow","aria-valuetext","importantForAccessibility","aria-hidden","aria-modal","role","accessibilityLabelledBy","aria-labelledby","accessibilityLiveRegion","aria-live","screenReaderFocusable","accessibilityElementsHidden","accessibilityViewIsModal","accessibilityIgnoresInvertColors","accessibilityLanguage","accessibilityShowsLargeContentViewer","accessibilityLargeContentTitle","accessibilityRespondsToUserInteraction","cancelable","delayHoverIn","delayHoverOut","delayLongPress","pressRetentionOffset","android_disableSound","android_ripple","testOnly_pressed","unstable_pressDelay"],examples:[{id:"Card.elevated",title:"Elevated",props:{variant:"elevated",title:"Account summary",lead:"Updated today"},children:"Balance and recent activity appear here."},{id:"Card.outlined",title:"Outlined",props:{variant:"outlined",title:"Notes",padding:"lg"},children:"A short note about this account."},{id:"Card.collapsible",title:"Collapsible",props:{title:"Details",collapsible:!0,defaultCollapsed:!1,collapsedSummary:"3 items"},children:"Three items are listed in this section."}],usage:{when:["Related content should read as one group, such as a summary, a record or a list item.","The group may need a header, a footer, an image or a menu.","The whole group should be pressable and lead somewhere."],whenNot:[{text:"The content is a plain row in a list.",instead:"ListItem"},{text:"The content only needs spacing.",instead:"Box"}],do:[{note:"Give the card a title so the group has a name.",example:[{component:"Card",props:{title:"Account summary"}}]}],dont:[{note:"Do not nest cards inside cards. The surfaces and shadows pile up.",example:[{component:"Card",props:{title:"Outer"},children:[{component:"Card",props:{title:"Inner"}}]}]}],a11y:["Context menu items are also screen reader actions on the card.","Set accessibilityLabel on an interactive card so its purpose is announced."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"Carousel",marker:null,platforms:["phone"],acceptsChildren:!1,props:{data:{type:"array",required:!0,description:"The slides. Each entry is handed to the slide renderer."},index:{type:"number",description:"The slide shown, counted from 0, when the screen controls it."},defaultIndex:{type:"number",default:0,description:"The slide shown at the start when the carousel keeps its own position."},autoPlay:{type:"boolean",default:!1,description:"Advances the slides on a timer. It implies loop."},autoPlayInterval:{type:"number",default:4e3,description:"The time between slides when autoPlay is on, in milliseconds."},loop:{type:"boolean",default:!1,description:"Jumps back to the first slide after the last."},showPagination:{type:"boolean",default:!0,description:"Draws the pagination marks under the slides."},paginationStyle:{type:"enum",values:["dots","bars","numbers"],default:"dots",description:"The look of the pagination marks."},itemWidth:{type:"stringOrNumber",description:"Width of each slide in points, or the text screen for the width of the parent.",default:"screen"},spacing:{type:"number",default:0,description:"Horizontal space between slides, in points."},accessibilityLabel:{type:"string",description:"Names the carousel for a screen reader."},showThumbnails:{type:"boolean",default:!1,description:"Draws a strip of small thumbnails under the carousel."},loading:{type:"boolean",default:!1,description:"Draws the placeholder shape instead of the slides while data loads."}},omit:["haptic"],examples:[{id:"Carousel.dots",title:"Dots",props:{data:["Sunset","Mountain","Coast"],showPagination:!0,paginationStyle:"dots"}},{id:"Carousel.bars",title:"Bars with spacing",props:{data:["Sunset","Mountain","Coast"],paginationStyle:"bars",itemWidth:280,spacing:12}},{id:"Carousel.numbers",title:"Numbers",props:{data:["Sunset","Mountain","Coast"],paginationStyle:"numbers",loop:!0}}],usage:{when:["A few slides of the same kind share one place, such as promotions or photos.","The person swipes sideways and sees where they are in the set.","A slide strip should advance on its own, such as a banner rotation."],whenNot:[{text:"The slides are steps of a first run flow.",instead:"OnboardingPager"},{text:"The items are a long scrolling list.",instead:"a list"}],do:[{note:"Keep the set short and show the pagination so the person knows more slides follow.",example:[{component:"Carousel",props:{data:["One","Two","Three"],showPagination:!0}}]}],dont:[{note:"Do not auto play a carousel that holds text the person must read. The slide changes before they finish.",example:[{component:"Carousel",props:{data:["One","Two","Three"],autoPlay:!0,autoPlayInterval:1e3}}]}],a11y:["Set accessibilityLabel so a screen reader names the carousel.","Auto play pauses while the person drags and resumes after a short idle time."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"Checkbox",marker:null,platforms:["phone"],acceptsChildren:!1,props:{checked:{type:"boolean",description:"Whether the box is checked, when the screen controls it."},defaultChecked:{type:"boolean",description:"Whether the box starts checked, when the checkbox keeps its own state."},indeterminate:{type:"boolean",default:!1,description:"Draws the mixed state, such as a select all box with some rows chosen."},disabled:{type:"boolean",default:!1,description:"Blocks presses and dims the checkbox."},label:{type:"node",description:"The text beside the box. A node label needs an accessibility label."},description:{type:"node",description:"A secondary line under the label."},error:{type:"node",description:"An error line under the label. It also draws the box in the error colour; true shows the error state without a message."},help:{type:"node",description:"A node beside the label, such as an info button. It is not part of the checkbox and does not toggle it."},labelLines:{type:"number",description:"The lines the label may take before it truncates. Zero or unset means no limit."},size:{type:"enum",values:["sm","md","lg"],default:"md",description:"The size of the box."},tone:{type:"enum",values:["primary","success","warning","danger"],default:"primary",description:"The colour of the checked box."},accessibilityHint:{type:"string",description:"What happens when the control is used, read after its name by a screen reader."},accessibilityLabel:{type:"string",description:"The accessible name of the checkbox. Needed when the label is a node."}},omit:["haptic","hitSlop","id","needsOffscreenAlphaCompositing","pointerEvents","removeClippedSubviews","nativeID","collapsable","collapsableChildren","renderToHardwareTextureAndroid","focusable","tabIndex","shouldRasterizeIOS","isTVSelectable","hasTVPreferredFocus","tvParallaxShiftDistanceX","tvParallaxShiftDistanceY","tvParallaxTiltAngle","tvParallaxMagnification","accessible","accessibilityActions","aria-label","accessibilityRole","accessibilityState","aria-busy","aria-checked","aria-disabled","aria-expanded","aria-selected","accessibilityValue","aria-valuemax","aria-valuemin","aria-valuenow","aria-valuetext","importantForAccessibility","aria-hidden","aria-modal","role","accessibilityLabelledBy","aria-labelledby","accessibilityLiveRegion","aria-live","screenReaderFocusable","accessibilityElementsHidden","accessibilityViewIsModal","accessibilityIgnoresInvertColors","accessibilityLanguage","accessibilityShowsLargeContentViewer","accessibilityLargeContentTitle","accessibilityRespondsToUserInteraction","cancelable","delayHoverIn","delayHoverOut","delayLongPress","pressRetentionOffset","android_disableSound","android_ripple","testOnly_pressed","unstable_pressDelay"],examples:[{id:"Checkbox.checked",title:"Checked",props:{checked:!0,label:"Email me a receipt"}},{id:"Checkbox.description",title:"With a description",props:{checked:!1,label:"Subscribe to updates",description:"A monthly summary, no more."}},{id:"Checkbox.error",title:"Error",props:{checked:!1,label:"I accept the terms",error:"You must accept the terms to continue."}},{id:"Checkbox.indeterminate",title:"Mixed state",props:{indeterminate:!0,label:"Select all",size:"lg"}}],usage:{when:["The person picks any number of options from a list.","A single yes or no needs to be saved with a form, such as accepting terms.","A parent box should show that only some of its rows are chosen."],whenNot:[{text:"The person picks exactly one option.",instead:"Radio"},{text:"The setting takes effect at once when changed.",instead:"Switch"}],do:[{note:"Write the label so a checked box reads as a true statement.",example:[{component:"Checkbox",props:{checked:!0,label:"Email me a receipt"}}]}],dont:[{note:"Do not leave a checkbox with no label. The person cannot tell what it controls.",example:[{component:"Checkbox",props:{checked:!1}}]}],a11y:["A node label needs an accessibility label, which becomes the screen reader name.","Pressing the help node beside the label does not toggle the checkbox."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"Chip",marker:null,platforms:["phone"],acceptsChildren:!1,props:{label:{type:"string",required:!0,description:"Chip text."},count:{type:"stringOrNumber",description:'A figure after the label, drawn quieter than it (regular weight, caption size, tabular digits): "Open" with `count={4}`.'},selected:{type:"boolean",default:!1,description:"Selected visual state."},selectionMode:{type:"enum",values:["single","multiple","radio"],default:"single",description:"How a pressable chip announces itself."},leftIcon:{type:"icon",description:"Icon before the label."},iconVariant:{type:"enum",values:["linear","bold","broken","bulk","outline","twotone"],description:"Iconsax style for a leftIcon given as a name. Default linear."},variant:{type:"enum",values:["filled","outlined","soft"],default:"filled",description:"Visual style."},tone:{type:"enum",values:["primary","neutral","success","warning","danger","info"],default:"neutral",description:"Semantic color."},size:{type:"enum",values:["sm","md"],default:"md",description:"Size scale."},disabled:{type:"boolean",default:!1,description:"Disabled state."},loading:{type:"boolean",default:!1,description:"When true, renders the component as its authored skeleton placeholder shape."},accessibilityLabel:{type:"string",description:"Overrides the default accessibility label."}},omit:["haptic"],examples:[{id:"Chip.default",title:"Default",props:{label:"Engineering"}},{id:"Chip.selected",title:"Selected multiple",props:{label:"Design",selected:!0,selectionMode:"multiple",tone:"primary"}},{id:"Chip.count",title:"With count",props:{label:"Open",count:4,variant:"outlined"}},{id:"Chip.withIcon",title:"With icon",props:{label:"Starred",leftIcon:"star",variant:"soft",tone:"primary"}}],usage:{when:["A compact tag, optionally selectable or closable.","A compact pill for filters, tags, and selections."],whenNot:[{text:"When the affordance is an action.",instead:"Button"},{text:"For 2 to 4 short values in a single exclusive switch.",instead:"SegmentedControl"},{text:"When options can wrap freely or be multi-select and the library should manage the selection state.",instead:"ChoiceGroup"}],do:[{note:"Pass a string or number to count to render a figure after the label.",example:[{component:"Chip",props:{label:"Open",count:4}}]}],dont:[{note:"Do not pass 0 to count if you want it hidden while loading.",example:[{component:"Chip",props:{label:"Open",count:0}}]}],a11y:["Announces as a radio, a checkbox, or a button depending on the selection mode.","Exposes a checked state for radio and multiple selection modes, and a selected state otherwise.","A radio chip adds vertical hit slop to reach a 44 point touch target."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"ChoiceGroup",marker:null,platforms:["phone"],acceptsChildren:!1,props:{value:{type:"any",description:"The selected value when the parent controls it: one option's value, or a list of them when several can be chosen."},options:{type:"array",required:!0,description:"The choices, in the ChoiceOption shape by default.",itemFields:{label:{type:"string",required:!0,description:"The text shown for the option and read aloud."},value:{type:"stringOrNumber",required:!0,description:"The value the group stores when this option is chosen."},color:{type:"string",description:"Tints the default card's label, border, dot and selected fill; defaults to the primary colour."},description:{type:"string",description:"A second line shown on the card only; the chip is label and icon alone."},icon:{type:"icon",description:"Icon before the label: an AppIcon name drawn in the option's current ink and bold while selected, or a name and variant object, a render function or any node."},disabled:{type:"boolean",description:"Disables this option only."}}},selectionMode:{type:"enum",values:["single","multiple"],description:"Single picks one option (radio); multiple toggles any number (checkbox). Defaults to single."},variant:{type:"enum",values:["card","chip"],default:"card",description:"Look of the built-in template: the bordered card or the icon-and-label chip."},indicatorPosition:{type:"enum",values:["leading","trailing"],default:"trailing",description:"Side of the card the radio dot sits on; the chip has no dot."},direction:{type:"enum",values:["row","column"],default:"row",description:"Main axis of the option list."},size:{type:"enum",values:["sm","md","lg"],default:"md",description:"Density of the built-in templates: padding, font size, icon and dot."},gap:{type:"number",description:"Gap between options. Default theme.space.sm."},wrap:{type:"boolean",default:!1,description:"Allow options to wrap onto multiple lines (swatch grids)."},fullWidth:{type:"boolean",description:"Stretch options equally along the main axis. Default true for an unwrapped row of cards, false otherwise; a chip hugs its content."},disabled:{type:"boolean",default:!1,description:"Disables the whole group; per-option disabled still applies on top."},labelLines:{type:"number",default:1,description:"Lines an option label may take in the built-in templates before it ends in an ellipsis."},descriptionLines:{type:"number",default:2,description:"Lines an option description may take in the card before it ends in an ellipsis."},accessibilityLabel:{type:"string",description:"Accessible label for the group."},min:{type:"number",description:"Multiple mode only: fewest options that stay selected. Pressing a selected option at this count does nothing."},max:{type:"number",description:"Multiple mode only: most options that can be selected. At this count the unselected options are disabled."}},omit:["defaultValue","haptic"],examples:[{id:"ChoiceGroup.status",title:"Status cards",props:{options:[{label:"Hot",value:"Hot",icon:"flash"},{label:"Warm",value:"Warm",icon:"sun-1"},{label:"Cold",value:"Cold",icon:"cloud"}],value:"Hot"}},{id:"ChoiceGroup.chip",title:"Role chips",props:{variant:"chip",options:[{label:"Admin",value:"admin",icon:"shield-tick"},{label:"Finance",value:"finance",icon:"wallet-2"},{label:"Viewer",value:"viewer",icon:"eye"}],value:"finance"}},{id:"ChoiceGroup.column",title:"Plans in a column",props:{direction:"column",indicatorPosition:"leading",options:[{label:"Free",value:"free",description:"Hobby projects"},{label:"Pro",value:"pro",description:"Solo professionals"},{label:"Team",value:"team",description:"Up to 10 seats"}],value:"pro"}}],usage:{when:["Choosing one option from a short, fully visible set, such as a status or a plan.","Picking a role or filter where each choice has its own icon (the chip variant)."],whenNot:[{text:"The list is long and needs scrolling or search",instead:"Select"},{text:"The options must join into one bar of segments that slides",instead:"SegmentedControl"},{text:"The question is a single yes or no",instead:"Checkbox"}],do:[{note:"Give each option a label and a value, and pass a default so one option starts selected.",example:[{component:"ChoiceGroup",props:{options:[{label:"Hot",value:"Hot"},{label:"Warm",value:"Warm"},{label:"Cold",value:"Cold"}],value:"Hot"}}]}],dont:[{note:"Pass a single value in multiple mode; multiple mode takes an array of values.",example:[{component:"ChoiceGroup",props:{selectionMode:"multiple",options:[{label:"Hot",value:"Hot"},{label:"Warm",value:"Warm"}],value:"Hot"}}]}],a11y:["Single mode exposes a radiogroup of radio options; multiple mode exposes checkboxes with checked state and no radiogroup role.","Each option is read with its label, and a card reads its full description even when the text is cut short on screen.","A disabled group or option is announced as disabled and cannot be pressed."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"Composer",marker:null,platforms:["phone"],acceptsChildren:!1,props:{placeholder:{type:"string",default:"Message",description:"The placeholder text shown while the box is empty."},value:{type:"string",description:"Controlled draft text; leave unset and the composer keeps its own."},accessibilityLabel:{type:"string",description:"The text box's screen reader name, defaulting to the placeholder."},sendLabel:{type:"string",default:"Send",description:"The send button's screen reader name."},busy:{type:"boolean",default:!1,description:"A reply is arriving: the person can type but not send, and send shows a spinner."},disabled:{type:"boolean",default:!1,description:"Nothing can be typed or sent."},maxLength:{type:"number",description:"The maximum number of characters the box accepts."},maxLines:{type:"number",default:5,description:"The box grows to this many lines, then scrolls."},leading:{type:"node",description:"Before the box, e.g. an attach button."},trailing:{type:"node",description:"Between the box and send, e.g. a microphone button."},above:{type:"node",description:"Inside the bar, above the row: a banner or note that rides the keyboard too."},below:{type:"node",description:"Inside the bar, below the row: a disclaimer."},keyboardAware:{type:"boolean",default:!0,description:"Rides the keyboard so the composer stays visible above it."},keyboardOffset:{type:"number",description:"How far below the bar the keyboard top starts: the bottom safe area inset plus anything under it."},safeArea:{type:"boolean",default:!0,description:"Pad the bar for the bottom safe area, or turn off above a tab bar."},autoFocus:{type:"boolean",description:"Focuses the text input when the component mounts."}},omit:["haptic"],examples:[{id:"Composer.default",title:"Default",props:{placeholder:"Message Asha",keyboardAware:!1,safeArea:!1}},{id:"Composer.busy",title:"Reply arriving",props:{placeholder:"Message Asha",busy:!0,keyboardAware:!1,safeArea:!1}},{id:"Composer.disabled",title:"Closed conversation",props:{placeholder:"Messaging is closed",disabled:!0,keyboardAware:!1,safeArea:!1}}],usage:{when:["Provide the message input bar at the bottom of a chat screen.","Allow typing messages with an integrated send button and action slots.","Pair with MessageList to ride the keyboard automatically in a chat view."],whenNot:[{text:"A single labelled field.",instead:"Input"},{text:"A long form answer.",instead:"Input with type textarea"}],do:[{note:"Turn off keyboardAware when placing the composer inside a sheet that already moves with the keyboard.",example:[{component:"Composer",props:{placeholder:"Message Asha",keyboardAware:!1}}]}],dont:[{note:"Do not leave keyboardAware enabled inside a sheet that already moves with the keyboard.",example:[{component:"Composer",props:{placeholder:"Message Asha",keyboardAware:!0}}]}],a11y:["The text input accessibility label defaults to the placeholder text when accessibilityLabel is unset.","The send button accessibility label uses sendLabel, which defaults to Send.","The send button reports its disabled or busy loading state to assistive technologies."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"Confetti",marker:null,platforms:["phone"],acceptsChildren:!1,props:{count:{type:"number",default:80,description:"Number of pieces."},colors:{type:"array",description:"Piece colours. Defaults to a vibrant set drawn from the theme palette."},preset:{type:"enum",values:["pop","rain","fireworks"],default:"pop",description:"Which animation to run. 'pop' bursts open from the origin, rises, hangs, then floats down; 'rain' falls from the top edge; 'fireworks' fires several staggered bursts at random points."},shapes:{type:"array",description:"Which shapes appear. Defaults to a mix chosen per preset. Members: strip, square, circle, triangle, star, streamer."},speed:{type:"enum",values:["slow","normal","fast"],default:"normal",description:"Scales duration. Slow is 1.6x, fast is 0.6x."},physics:{type:"object",fields:{velocity:{type:"number",description:"Launch speed. Above 1 throws pieces further from the origin."},drag:{type:"number",description:"Air resistance. Above 1 makes pieces give up their launch speed sooner."},fallSpeed:{type:"number",description:"Steady falling speed once the launch speed is spent."},spread:{type:"number",description:"Burst arc in degrees, for 'pop' and 'fireworks'. Ignored by 'rain'."}},description:"Tune the preset's motion. Each value multiplies the preset's own."},origin:{type:"object",fields:{x:{type:"number",required:!0,description:"Horizontal origin coordinate."},y:{type:"number",required:!0,description:"Vertical origin coordinate."}},description:"Burst origin for 'pop'. Defaults to the centre of the container."},duration:{type:"number",default:2800,description:"Base animation duration in ms, before speed scales it."},fadeOut:{type:"boolean",default:!0,description:"Fade pieces out near the end."},autoStart:{type:"boolean",default:!1,description:"Fire automatically on mount."},recycle:{type:"boolean",default:!1,description:"Loop continuously until `stop()` is called."},size:{type:"number",default:10,description:"Base piece size in px, varied ±40% per piece."}},omit:[],examples:[{id:"Confetti.pop",title:"Pop burst",props:{preset:"pop",count:80,autoStart:!0}},{id:"Confetti.rain",title:"Rain of circles and squares",props:{preset:"rain",speed:"slow",shapes:["circle","square"],autoStart:!0}},{id:"Confetti.fireworks",title:"Fireworks",props:{preset:"fireworks",count:120,duration:3600,autoStart:!0}}],usage:{when:["Celebration moments such as an order confirmed or an achievement unlocked.","When a decorative burst should overlay the current screen without blocking interaction."],whenNot:[{text:"An element entering or leaving the screen.",instead:"AnimatePresence"},{text:"A quiet confirmation without a celebration.",instead:"Toast"}],do:[{note:"Place Confetti last in the parent so it covers the area, and fire it through a ref or with autoStart.",example:[{component:"Confetti",props:{preset:"pop",count:80,autoStart:!0}}]}],dont:[{note:"Do not rely on Confetti for layout space; it draws an absolute-fill overlay with no pointer events.",example:[{component:"Confetti",props:{preset:"pop",recycle:!0}}]}],a11y:["The burst is decorative and conveys no information.","Under reduced motion the animation stops and onComplete fires immediately."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"DatePicker",marker:null,platforms:["phone"],acceptsChildren:!1,props:{visible:{type:"boolean",description:"Opens the calendar sheet when the parent controls it; leave out to use the built-in trigger field."},value:{type:"string",description:"The selected date."},minDate:{type:"string",description:"The earliest date that can be picked."},maxDate:{type:"string",description:"The latest date that can be picked."},disabledDates:{type:"array",description:"Single dates that cannot be picked."},mode:{type:"enum",values:["modal","inline"],default:"modal",description:"Shows the calendar in a sheet or inline in the page."},locale:{type:"string",default:"en-IN",description:"Locale for month and weekday labels."},weekStartsOn:{type:"enum",values:[0,1,6],default:0,description:"First day of week, 0 is Sunday."},title:{type:"string",default:"Select Date",description:"The heading of the calendar sheet."},confirmLabel:{type:"string",default:"Confirm",description:"The label of the confirm button."},cancelLabel:{type:"string",default:"Cancel",description:"The label of the cancel button."},label:{type:"string",description:"Field label when used in trigger mode."},placeholder:{type:"string",description:"Placeholder text when used in trigger mode."},helperText:{type:"string",description:"Helper text below the field when used in trigger mode."},error:{type:"node",description:"Error message shown below the field."},required:{type:"boolean",description:"Shows a required marker on the trigger label."},disabled:{type:"boolean",description:"Disables the trigger field."},size:{type:"enum",values:["sm","md","lg"],description:"Size of the trigger field."},variant:{type:"enum",values:["outlined","filled","underline"],description:"Visual style of the trigger field."},clearable:{type:"boolean",description:"Shows a clear button once a value is set."}},omit:["haptic"],examples:[{id:"DatePicker.trigger",title:"Trigger field",props:{label:"Start date",placeholder:"Select date",size:"md",variant:"outlined"}},{id:"DatePicker.required",title:"Required with helper",props:{label:"Birth date",required:!0,helperText:"Tap to open the calendar"}},{id:"DatePicker.error",title:"With error",props:{label:"Start date",error:"This field is required",clearable:!0}},{id:"DatePicker.inline",title:"Inline calendar",props:{visible:!0,mode:"inline"}}],usage:{when:["A modal calendar is needed with bounds and disabled dates.","A calendar with locale aware labels is required."],whenNot:[{text:"A time needs to be picked.",instead:"TimePicker"},{text:"A start and end date need to be picked.",instead:"DateRangePicker"},{text:"An always visible month grid is needed.",instead:"Calendar"}],do:[{note:"Omit the visible prop to use trigger mode and let the component manage its own open state.",example:[{component:"DatePicker",props:{label:"Date of birth",placeholder:"Select date"}}]}],dont:[{note:"Do not pass the visible prop unless you need to own the open state externally with a custom trigger.",example:[{component:"DatePicker",props:{visible:!0}}]}],a11y:["The modal sheet traps focus for screen readers when open.","Day cells announce their full date and their selected or disabled states.","Under Reduce Motion the sheet fades in and out and day cells do not scale on press."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"DateRangePicker",marker:null,platforms:["phone"],acceptsChildren:!1,props:{visible:{type:"boolean",description:"Opens the range sheet when the parent controls it; leave out to use the built-in trigger field."},value:{type:"object",required:!0,description:"The chosen range, from a start day to an end day.",fields:{start:{type:"string",required:!0,description:"Start day of the range, as an ISO 8601 date, or null."},end:{type:"string",required:!0,description:"End day of the range, as an ISO 8601 date, or null."}}},label:{type:"string",description:"Label shown above the trigger field."},placeholder:{type:"string",description:"Text shown in the trigger field when no range is set."},helperText:{type:"string",description:"Helper text shown below the trigger field."},error:{type:"node",description:"Error shown in place of the helper text."},required:{type:"boolean",description:"Shows a required marker on the trigger field."},disabled:{type:"boolean",description:"Disables the trigger field."},size:{type:"enum",values:["sm","md","lg"],description:"Size of the trigger field."},variant:{type:"enum",values:["outlined","filled","underline"],description:"Visual treatment of the trigger field."},clearable:{type:"boolean",description:"Shows a clear affordance in the trigger field."},minDate:{type:"string",description:"Selection bound: days before this date cannot be picked, as an ISO 8601 date."},maxDate:{type:"string",description:"Selection bound: days after this date cannot be picked, as an ISO 8601 date."},disabledDates:{type:"array",description:"Specific dates, as ISO 8601 dates, that cannot be picked."},markedDates:{type:"array",description:"Holidays, events and pending requests drawn on the grid; see Calendar.",itemFields:{date:{type:"string",required:!0,description:"The day, as an ISO 8601 date."},kind:{type:"enum",values:["holiday","event","pending"],required:!0,description:"What the day is: a holiday, an event or a pending request."},label:{type:"string",description:"What the day is, such as Dussehra or Casual leave; read aloud before the kind."},tone:{type:"enum",values:["success","warning","danger","info","primary","neutral"],description:"Dot colour. Default: danger for a holiday, primary for an event, warning for pending."}}},strikeMarkedInRange:{type:"boolean",description:"Strike holidays inside the chosen range and read them as not counted; see Calendar."},locale:{type:"string",default:"en-IN",description:"Locale used to format dates in the grid and the range header."},weekStartsOn:{type:"enum",values:[0,1,6],default:0,description:"First weekday of the grid: 0 Sunday, 1 Monday, 6 Saturday."},title:{type:"string",default:"Select Date Range",description:"Heading shown at the top of the sheet."},confirmLabel:{type:"string",default:"Confirm",description:"Label of the confirm button."},cancelLabel:{type:"string",default:"Cancel",description:"Label of the cancel button."},maxRange:{type:"number",description:"Cap on the selected range length, in days."}},omit:["haptic"],examples:[{id:"DateRangePicker.trigger",title:"Trigger field",props:{value:{start:"2026-10-12",end:"2026-10-16"},label:"Dates",placeholder:"Select range",size:"md"}},{id:"DateRangePicker.weekStart",title:"Monday start with a cap",props:{value:{start:"2026-10-12",end:"2026-10-16"},label:"Leave",weekStartsOn:1,maxRange:14}},{id:"DateRangePicker.disabled",title:"Disabled",props:{value:{start:"2026-10-12",end:"2026-10-16"},label:"Dates",disabled:!0}}],usage:{when:["Pick a start day and an end day as one range, such as the dates of a stay or a leave request.","Confirm a range in one step inside a sheet, with an optional cap on its length."],whenNot:[{text:"Picking a single day.",instead:"DatePicker"},{text:"Showing a month grid that stays on screen.",instead:"Calendar"},{text:"Picking a time of day.",instead:"TimePicker"}],do:[{note:"Set maxRange when a range has a limit, such as a 14-day leave cap, so a longer pick restarts from the new tap.",example:[{component:"DateRangePicker",props:{label:"Leave",weekStartsOn:1,maxRange:14}}]}],dont:[{note:"Do not use it for one day; a single day belongs in DatePicker.",example:[{component:"DateRangePicker",props:{label:"Day"}}]}],a11y:["Marked days are read aloud with their label before their kind, such as Dussehra holiday.","A range longer than maxRange is rejected with a warning haptic, and the selection restarts from the tapped day.","The picker opens as a modal sheet that screen readers treat as modal; Cancel, Dismiss or a drag down from the title closes it."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"DateSeparator",marker:null,platforms:["phone"],acceptsChildren:!1,props:{date:{type:"string",description:"The day to name."},label:{type:"string",description:'Draws this text instead of a day, e.g. "New messages" above the first unread.'},emphasis:{type:"boolean",default:!1,description:"Draws the text and rules in the brand colour, for an unread divider."},labels:{type:"object",description:"Custom relative day labels, defaulting to Today and Yesterday.",fields:{today:{type:"string",description:"The label for today, defaulting to Today."},yesterday:{type:"string",description:"The label for yesterday, defaulting to Yesterday."}}},now:{type:"string",description:"The reference for Today and Yesterday."}},omit:[],examples:[{id:"DateSeparator.day",title:"A day",props:{date:"2026-10-11T09:00:00Z"}},{id:"DateSeparator.label",title:"A text label",props:{label:"Earlier"}},{id:"DateSeparator.unread",title:"Unread divider",props:{label:"New messages",emphasis:!0}}],usage:{when:["Separate groups of chat messages by day in a message list.","Draw an unread divider line above the first unread message with label and emphasis."],whenNot:[{text:"A heading above a block of content.",instead:"SectionHeader"},{text:"Separating days inside MessageList where the list already inserts separators.",instead:"MessageList day grouping"}],do:[{note:"Pass either date for a day divider or label with emphasis for an unread messages divider.",example:[{component:"DateSeparator",props:{date:"2026-10-11T09:00:00Z"}}]}],dont:[{note:"Do not pass both date and label together, because label overrides date.",example:[{component:"DateSeparator",props:{date:"2026-10-11T09:00:00Z",label:"Today"}}]}],a11y:["The text uses an accessibility header role so screen reader users can navigate through a conversation by day.","The centred text element is announced directly to assistive technologies."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"DecimalInput",marker:null,platforms:["phone"],acceptsChildren:!1,props:{symbol:{type:"node",description:"The quantity's symbol, drawn in the prefix box before the value."},value:{type:"stringOrNumber",description:"The figure. Text in the default mode, a number or an empty string in numeric mode. Null and undefined show an empty field."},max:{type:"number",description:"A keystroke or paste that would pass this is refused; a figure already past it can still be edited down."},min:{type:"number",description:"Lower bound, refused the same way as max."},decimals:{type:"number",description:"Most fraction digits kept after the point."},whole:{type:"boolean",default:!1,description:"Digits only. Number-pad keyboard."},signed:{type:"boolean",default:!1,description:"Allow one leading minus. Numeric keyboard."},allowExponent:{type:"boolean",default:!1,description:"Allow exponent notation such as 1e-5."},numeric:{type:"boolean",default:!1,description:"Hand onChange a number. The field keeps the typed text itself, so a half-typed figure survives the keystroke, and follows value when it changes from elsewhere."},unclearCommaMessage:{type:"node",default:"Use a point for the decimal mark. A comma before three digits could mean thousands.",description:"Shown when the figure has a comma before exactly three digits and no error is passed."},readOnly:{type:"boolean",default:!1,description:"Selectable and focusable but not editable. Unlike disabled, the field is not dimmed."},disabled:{type:"boolean",default:!1,description:"Dims the field out and blocks editing."},label:{type:"node",description:"A string, or a node for a symbol with a subscript. A node label needs an explicit accessibilityLabel."},help:{type:"node",description:"Drawn beside the static label, right after it and centred on its line, such as a glossary info button."},error:{type:"node",description:"A string or a node puts the field in the error state and replaces the helper; true shows the error state without a message."},helperText:{type:"node",description:"A string or a node, shown below the field when there is no error."},prefix:{type:"node",description:"Fixed text drawn before the value in the leading slot, such as a currency symbol or a country code."},placeholder:{type:"string",description:"Placeholder text shown while the field is empty."},unit:{type:"string",description:"A fixed unit drawn after the value in the trailing slot, such as km, % or /month."},accessibilityLabel:{type:"string",description:"The screen reader name of the field. When left out, the label is used, or the placeholder when there is no label."},maxLength:{type:"number",description:"Character limit passed to the text input."},borderRadius:{type:"number",description:"Per-instance override for the field's corner radius. Wins over the field size's radius."},type:{type:"enum",values:["input","password","textarea"],default:"input",description:"One switch for the behaviour set: input for single-line text, password for a masked value with an eye toggle, textarea for multi-line text."},size:{type:"enum",values:["sm","md","lg"],default:"md",description:"Field height, padding and font size."},variant:{type:"enum",values:["outlined","filled","underline"],description:"The field's look. When left out, the theme's field variant is used, and outlined when the theme sets none."},labelMode:{type:"enum",values:["float","top"],description:"top keeps the static label above the field. float uses a floating label that rises to the top border on focus."},showPasswordToggle:{type:"boolean",default:!1,description:"Setting this alone also puts the field in password mode, the same as type password."},secureTextEntry:{type:"boolean",default:!1,description:"React Native's own prop: masks the value without the eye toggle."},multiline:{type:"boolean",default:!1,description:"React Native's own prop, the same as type textarea."},required:{type:"boolean",default:!1,description:"Marks the field as required."},showCounter:{type:"boolean",default:!0,description:"Renders a character counter below the field when maxLength is set. Set false for fields that cap input without advertising it."},leftIcon:{type:"icon",description:"Leading slot: an icon name such as user, a name and variant object, a render function or a node."},rightIcon:{type:"icon",description:"Trailing slot, same contract as leftIcon."},action:{type:"object",description:"A button beside the field box, for a Verify, Apply or Look up action on what was typed.",fields:{label:{type:"string",required:!0,description:"The button's text."},loading:{type:"boolean",description:"Shows the button's spinner and blocks presses."},disabled:{type:"boolean",description:"Blocks presses. The button is also disabled whenever the field is."},variant:{type:"enum",values:["solid","soft","outline","ghost","link","glass"],description:"Button variant."},tone:{type:"enum",values:["primary","secondary","success","warning","danger","neutral"],description:"Button tone."},icon:{type:"icon",description:"Icon drawn before the button label."}}}},omit:["allowFontScaling","autoCapitalize","autoComplete","autoCorrect","autoFocus","blurOnSubmit","submitBehavior","caretHidden","contextMenuHidden","defaultValue","editable","inputMode","placeholderTextColor","returnKeyType","enterKeyHint","selectTextOnFocus","selection","selectionColor","textAlign","inputAccessoryViewID","inputAccessoryViewButtonLabel","maxFontSizeMultiplier","hitSlop","id","needsOffscreenAlphaCompositing","pointerEvents","removeClippedSubviews","nativeID","collapsable","collapsableChildren","renderToHardwareTextureAndroid","focusable","tabIndex","shouldRasterizeIOS","isTVSelectable","hasTVPreferredFocus","tvParallaxShiftDistanceX","tvParallaxShiftDistanceY","tvParallaxTiltAngle","tvParallaxMagnification","accessible","accessibilityActions","aria-label","accessibilityRole","accessibilityState","aria-busy","aria-checked","aria-disabled","aria-expanded","aria-selected","accessibilityHint","accessibilityValue","aria-valuemax","aria-valuemin","aria-valuenow","aria-valuetext","importantForAccessibility","aria-hidden","aria-modal","role","accessibilityLabelledBy","aria-labelledby","accessibilityLiveRegion","aria-live","screenReaderFocusable","accessibilityElementsHidden","accessibilityViewIsModal","accessibilityIgnoresInvertColors","accessibilityLanguage","accessibilityShowsLargeContentViewer","accessibilityLargeContentTitle","accessibilityRespondsToUserInteraction","disableKeyboardShortcuts","clearButtonMode","clearTextOnFocus","dataDetectorTypes","enablesReturnKeyAutomatically","keyboardAppearance","passwordRules","rejectResponderTermination","selectionState","spellCheck","textContentType","scrollEnabled","lineBreakStrategyIOS","lineBreakModeIOS","smartInsertDelete","cursorColor","selectionHandleColor","importantForAutofill","disableFullscreenUI","inlineImageLeft","inlineImagePadding","numberOfLines","returnKeyLabel","textBreakStrategy","underlineColorAndroid","textAlignVertical","showSoftInputOnFocus","verticalAlign"],examples:[{id:"DecimalInput.amount",title:"Amount with symbol",props:{label:"Amount",symbol:"₹",max:1e5}},{id:"DecimalInput.whole",title:"Whole number with unit",props:{label:"Quantity",whole:!0,unit:"pcs"}},{id:"DecimalInput.signed",title:"Signed with two decimals",props:{label:"Adjustment",signed:!0,decimals:2}},{id:"DecimalInput.readOnly",title:"Read only",props:{label:"Total",readOnly:!0,value:"1250.50"}}],usage:{when:["The figure can be empty or half-typed while the person types, such as 12. or a lone minus.","The value is a measurement, a tolerance or an amount the person types, not a count changed by steps."],whenNot:[{text:"The value changes by taps and is never empty or half-typed.",instead:"NumberInput"},{text:"The field takes free text rather than a figure.",instead:"Input"}],do:[{note:"Give the figure a label, and a symbol or unit so the number has a meaning.",example:[{component:"DecimalInput",props:{label:"Length",symbol:"L",unit:"m",max:500}}]}],dont:[{note:"Do not use it for a stepper quantity. Use NumberInput when the value is changed by steps.",example:[{component:"DecimalInput",props:{label:"Quantity",whole:!0,max:10}}]}],a11y:["Every figure needs a label. A symbol or unit alone does not name the field.","A comma before exactly three digits, such as 2,500, shows unclearCommaMessage as the field error, which a screen reader announces.","readOnly keeps the figure focusable and announced. disabled greys it out and drops it from the focus order."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"Descriptions",marker:null,platforms:["phone"],acceptsChildren:!1,props:{items:{type:"array",required:!0,description:"The rows.",itemFields:{label:{type:"node",required:!0,description:"A string renders as text."},value:{type:"node",description:"A string, a number, a `sym()` / `Notation` or a list of those renders as text in the value's size, weight and colour (`strong`, `tone`), the subscript included."},full:{type:"boolean",description:"Make this row span both columns."},key:{type:"string",description:"React key."},strong:{type:"boolean",description:"Draw a string value in the semibold weight."},tone:{type:"enum",values:["primary","secondary","tertiary","inverse","disabled","link","textStrong","success","warning","danger","info"],description:"Colour of a string value: a text role, a semantic tone or a raw colour."}}},columns:{type:"enum",values:[1,2],default:1,description:"1 stacks label above value; 2 puts them side by side."},size:{type:"enum",values:["sm","md"],default:"md",description:"Row padding + font size."},bordered:{type:"boolean",default:!1,description:"Hairlines between rows."},title:{type:"string",description:"Optional heading above the list."},variant:{type:"enum",values:["list","summary"],default:"list",description:"'list' (default) is the record-detail layout."}},omit:[],examples:[{id:"Descriptions.default",title:"Two columns",props:{title:"Invoice details",columns:2,bordered:!0,items:[{label:"Invoice",value:"INV-1042"},{label:"Amount",value:"₹12,500"},{label:"Status",value:"Paid"},{label:"Notes",value:"Net 30",full:!0}]}},{id:"Descriptions.summary",title:"Summary table",props:{variant:"summary",items:[{label:"Collection area",value:"1 240 m²"},{label:"Risk",value:"3.2",strong:!0,tone:"danger"},{label:"Tolerable",value:"1.0",tone:"tertiary"}]}},{id:"Descriptions.compact",title:"Compact with a missing value",props:{size:"sm",items:[{label:"Name",value:"Asha"},{label:"City"}]}}],usage:{when:["Display read-only labelled facts and record details on a screen.","Show a compact summary table of key metrics with right-aligned values.","Present structured fields where missing values should read as no value rather than a broken row."],whenNot:[{text:"The row is interactive or navigates to another screen.",instead:"ListItem"},{text:"Displaying a single prominent headline metric or KPI.",instead:"StatTile"}],do:[{note:"Leave missing or empty values undefined so the component renders the standard hyphen.",example:[{component:"Descriptions",props:{items:[{label:"Status",value:"Active"},{label:"Paid on"}]}}]}],dont:[{note:"Do not pass placeholder strings like N/A for missing values.",example:[{component:"Descriptions",props:{items:[{label:"Status",value:"Active"},{label:"Paid on",value:"N/A"}]}}]}],a11y:["A missing value renders a plain hyphen so a row is never blank to a screen reader.","Labels and textual values are read in natural order by screen readers."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"Dialog",marker:null,platforms:["phone"],acceptsChildren:!0,props:{visible:{type:"boolean",required:!0,description:"Controls visibility."},title:{type:"string",description:"Headline."},message:{type:"string",description:"Body text."},icon:{type:"node",description:"Top icon."},variant:{type:"enum",values:["default","success","warning","danger","info"],default:"default",description:"Semantic styling."},actions:{type:"array",description:"Ordered action buttons.",itemFields:{label:{type:"string",required:!0,description:"The text drawn on the action button."},tone:{type:"enum",values:["primary","neutral","info","danger"],description:"The color scheme of the action."},loading:{type:"boolean",description:"Shows a spinner and blocks its press."},disabled:{type:"boolean",description:"Dims the action and blocks its press (a confirm waiting on a typed phrase, say)."}}},dismissOnAction:{type:"boolean",default:!0,description:"Automatically close after an action fires."},accessibilityLabel:{type:"string",description:"Overrides the alert region label."}},omit:["haptic"],examples:[{id:"Dialog.default",title:"Default",props:{visible:!0,title:"Save changes?",message:"Your edits will be saved to the cloud and synced across all devices."}},{id:"Dialog.warning",title:"Warning",props:{visible:!0,variant:"warning",title:"Discard draft?",message:"The draft will be deleted."}},{id:"Dialog.danger",title:"Danger",props:{visible:!0,variant:"danger",title:"Delete account?",message:"This cannot be undone."}},{id:"Dialog.success",title:"Success",props:{visible:!0,variant:"success",title:"Payment received",message:"A receipt is on its way."}}],usage:{when:["For a confirm, alert or destructive dialog with action buttons.","When the user must explicitly choose an action to proceed."],whenNot:[{text:"For content anchored to the bottom edge.",instead:"BottomSheet"},{text:"For a menu or a longer form.",instead:"Drawer"},{text:"For a message that needs no answer.",instead:"Toast"}],do:[{note:"Use a warning or danger variant for destructive operations.",example:[{component:"Dialog",props:{visible:!0,title:"Delete account?",message:"This cannot be undone.",variant:"danger"}}]}],dont:[{note:"Do not use the default variant for destructive operations.",example:[{component:"Dialog",props:{visible:!0,title:"Delete account?",message:"This cannot be undone."}}]}],a11y:["The dialog sets the alert role and its accessible name defaults to the title.","Dismissing the dialog delays action execution until after the native modal has dismissed.","You can override the accessible name using the accessibility label prop."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"Divider",marker:null,platforms:["phone"],acceptsChildren:!1,props:{orientation:{type:"enum",required:!1,values:["horizontal","vertical"],default:"horizontal",description:"Direction of the line; a vertical line stretches to fill the height of its parent."},thickness:{type:"number",required:!1,default:1,description:"Line thickness in points."},color:{type:"string",required:!1,description:"Line color; the theme border color when left out."},spacing:{type:"enum",required:!1,values:["none","sm","md","lg"],default:"none",description:"Margin around the line, vertical for a horizontal line and horizontal for a vertical one."},inset:{type:"number",required:!1,default:0,description:"Extra offset from the leading edge, to line up with an avatar or icon column."},label:{type:"string",required:!1,description:"Text drawn inline that splits the line in two; ignored on a vertical line."},labelPosition:{type:"enum",required:!1,values:["start","center","end"],default:"center",description:"Where the label sits along the line."}},omit:[],examples:[{id:"Divider.plain",title:"Plain line",props:{}},{id:"Divider.labelled",title:"Labelled break",props:{label:"OR"}},{id:"Divider.labelStart",title:"Label at the start",props:{label:"OR",labelPosition:"start"}},{id:"Divider.thick",title:"Thick line",props:{thickness:4}}],usage:{when:["Separate groups of rows in a list or form.","Show an OR break between two paths with a short label."],whenNot:[{text:"Spacing alone separates the content.",instead:"Use gap or margin, not a line."},{text:"A section needs a heading.",instead:"SectionHeader"}],do:[{note:"Keep a label to a word or two.",example:[{component:"Divider",props:{label:"OR"}}]}],dont:[{note:"Do not put a sentence in the label; it is cut to one line.",example:[{component:"Divider",props:{label:"Or continue with your email address instead"}}]}],a11y:["The line is decorative and hidden from screen readers, so never rely on it alone to show a grouping.","A label is read as plain text, so keep it meaningful."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const drawerChildren=[{component:"ListItem",props:{title:"Profile",chevron:!0}},{component:"ListItem",props:{title:"Settings",chevron:!0}}],meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"Drawer",marker:null,platforms:["phone"],acceptsChildren:!0,props:{visible:{type:"boolean",required:!1,description:"Controlled visibility; leave it out to let the drawer manage its own state."},defaultVisible:{type:"boolean",required:!1,default:!1,description:"Initial visibility when the drawer manages its own state."},side:{type:"enum",required:!1,values:["left","right","top","bottom"],default:"left",description:"Edge the drawer slides in from."},width:{type:"stringOrNumber",required:!1,description:"Size along the slide axis, in points or as a percent string; 280 for left and right and 40% of the window height for top and bottom when left out."},enableSwipe:{type:"boolean",required:!1,default:!0,description:"Allows dragging the drawer toward its edge to dismiss it."},enableBackdropPress:{type:"boolean",required:!1,default:!0,description:"Allows a tap on the dimmed backdrop to dismiss the drawer."},backdropOpacity:{type:"number",required:!1,default:.5,description:"Backdrop opacity from 0 to 1 when the drawer is fully open."},accessibilityLabel:{type:"string",required:!1,description:"Name announced for the drawer panel; Drawer when left out."}},omit:["haptic"],examples:[{id:"Drawer.left",title:"Left drawer",props:{defaultVisible:!0,side:"left",width:280},children:drawerChildren},{id:"Drawer.right",title:"Right drawer, 320 wide",props:{defaultVisible:!0,side:"right",width:320},children:drawerChildren},{id:"Drawer.top",title:"Top drawer, 40 percent",props:{defaultVisible:!0,side:"top",width:"40%"},children:drawerChildren},{id:"Drawer.bottom",title:"Bottom drawer, 60 percent",props:{defaultVisible:!0,side:"bottom",width:"60%"},children:drawerChildren}],usage:{when:["A navigation menu or contextual actions that slide over the screen from an edge.","A settings or filter panel that keeps the page visible behind a dimmed backdrop."],whenNot:[{text:"The surface is partial height and driven by its content.",instead:"BottomSheet"},{text:"A short confirmation or choice.",instead:"Dialog"}],do:[{note:"Give the drawer a close button at the foot.",example:[{component:"ListItem",props:{title:"Profile",chevron:!0}},{component:"Button",props:{title:"Close drawer",variant:"outline"}}]}],dont:[{note:"Do not leave a drawer with no visible way to close it when swipe and backdrop dismissal are off.",example:[{component:"ListItem",props:{title:"Profile",chevron:!0}}]}],a11y:["The panel is announced with its accessibilityLabel, Drawer when left out, and the backdrop is a Close drawer button.","The rest of the screen is hidden from screen readers while the drawer is open."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"EmptyState",marker:null,platforms:["phone"],acceptsChildren:!1,props:{icon:{type:"node",description:"Illustration or icon drawn in a circle above the title."},title:{type:"string",required:!0,description:"Headline message."},description:{type:"string",description:"Supporting copy under the title."},size:{type:"enum",values:["sm","md","lg"],default:"md",description:"Icon size, type scale and vertical padding."},fill:{type:"boolean",default:!1,description:"Grows to fill the space it is given and centres its content; pass it as the empty component of a list."}},omit:["action","secondaryAction"],examples:[{id:"EmptyState.medium",title:"Medium",props:{title:"No messages yet",description:"Start a conversation with anyone in your contacts.",size:"md"}},{id:"EmptyState.small",title:"Small",props:{title:"No messages yet",description:"Start a conversation with anyone in your contacts.",size:"sm"}},{id:"EmptyState.large",title:"Large",props:{title:"No messages yet",description:"Start a conversation with anyone in your contacts.",size:"lg"}},{id:"EmptyState.titleOnly",title:"Title only",props:{title:"Nothing here"}}],usage:{when:["A list, search or screen has no data yet and needs a clear next step.","A load failed and the screen shows a message with a retry action."],whenNot:[{text:"Data is still loading.",instead:"Skeleton"},{text:"A short passing message about an action.",instead:"Toast"}],do:[{note:"Say what is missing and what to do about it.",example:[{component:"EmptyState",props:{title:"No orders yet",description:"When you place an order it will show up here."}}]}],dont:[{note:"Do not leave a bare title with no explanation.",example:[{component:"EmptyState",props:{title:"Empty"}}]}],a11y:["Announced as a summary region, so write the title and description as plain sentences.","Put the meaning in the title and description, not in the icon."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"FilePicker",marker:null,platforms:["phone"],acceptsChildren:!1,props:{maxFiles:{type:"number",required:!1,description:"Most files that can be attached."},maxSizeMB:{type:"number",required:!1,description:"Largest size of one file in megabytes; bigger picks are rejected with an error."},accept:{type:"array",required:!1,description:"Accepted mime types, such as image/* or application/pdf; every type is accepted when left out."},variant:{type:"enum",required:!1,values:["card","list"],default:"card",description:"card shows a dashed upload tile and a strip of thumbnails; list shows one row per file."},disabled:{type:"boolean",required:!1,default:!1,description:"Blocks picking and removing files and dims the trigger."},helperText:{type:"string",required:!1,description:"Hint under the trigger, such as the file limits."},error:{type:"node",required:!1,description:"External error shown under the field; it wins over validation errors."},accessibilityLabel:{type:"string",required:!1,description:"Overrides the generated Attachments label."}},omit:["files","defaultFiles","sources","labels","haptic"],examples:[{id:"FilePicker.card",title:"Card with limits",props:{variant:"card",maxFiles:4,maxSizeMB:100,accept:["image/*","application/pdf"],helperText:"Up to 4 files, max 100MB each."}},{id:"FilePicker.list",title:"List with limits",props:{variant:"list",maxFiles:4,maxSizeMB:100,accept:["image/*","application/pdf"],helperText:"Up to 4 files, max 100MB each."}},{id:"FilePicker.disabled",title:"Disabled",props:{disabled:!0,helperText:"Up to 4 files, max 100MB each."}},{id:"FilePicker.error",title:"With an error",props:{error:"Add at least one file."}}],usage:{when:["A form needs photos or documents attached, with limits on count, size and type.","An edit screen shows files already uploaded beside new picks."],whenNot:[{text:"The file only needs to be viewed.",instead:"FileViewer"},{text:"The person picks one value from a short list.",instead:"Select"}],do:[{note:"Show the limits in the helper text so a rejection is no surprise.",example:[{component:"FilePicker",props:{maxFiles:4,helperText:"Up to 4 files, max 100MB each."}}]}],dont:[{note:"Do not set limits without telling the person.",example:[{component:"FilePicker",props:{maxFiles:4}}]}],a11y:["The picker is announced as a button named Attachments with the file count; set accessibilityLabel to name the field.","Remove and retry controls carry their own labels."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"FileViewer",marker:null,platforms:["phone"],acceptsChildren:!1,props:{zoomEnabled:{type:"boolean",required:!1,default:!0,description:"Allows pinch, double tap zoom and panning while zoomed; off also resets any zoom."},maxZoom:{type:"number",required:!1,default:4,description:"Upper bound on pinch zoom, as a multiple of the page fitting the width."},accessibilityLabel:{type:"string",required:!1,description:"Spoken name for the viewer."}},omit:["source"],examples:[{id:"FileViewer.default",title:"Sample document",props:{accessibilityLabel:"Sample PDF document"}},{id:"FileViewer.noZoom",title:"Zoom off",props:{zoomEnabled:!1,accessibilityLabel:"Sample PDF document"}},{id:"FileViewer.maxZoom",title:"Zoom capped at 2",props:{maxZoom:2,accessibilityLabel:"Sample PDF document"}}],usage:{when:["Showing a PDF inside the app, from a link or a saved file."],whenNot:[{text:"The document is not a PDF.",instead:"Open it with the system viewer."},{text:"The file is a picture or a set of pictures.",instead:"ImageGallery"}],do:[{note:"Leave zoom on so small print stays readable.",example:[{component:"FileViewer",props:{}}]}],dont:[{note:"Do not turn zoom off for a dense document.",example:[{component:"FileViewer",props:{zoomEnabled:!1}}]}],a11y:["Give the viewer an accessibilityLabel that names the document; without one it is not announced as a labelled element."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"FilterChipRow",marker:null,platforms:["phone"],acceptsChildren:!1,props:{items:{type:"array",required:!0,description:"The chips to show in the row.",itemFields:{key:{type:"string",required:!0,description:"Stable id of the chip."},label:{type:"string",required:!0,description:"The text on the chip."},count:{type:"stringOrNumber",description:"Shown after the label."},disabled:{type:"boolean",description:"Disables this chip only."}}},value:{type:"string",required:!0,description:"Key of the selected item."},bleed:{type:"number",default:0,description:"The page gutter in points."},size:{type:"enum",values:["sm","md"],description:"Size scale."},variant:{type:"enum",values:["filled","outlined","soft"],description:"Visual style."},tone:{type:"enum",values:["primary","neutral","success","warning","danger","info"],description:"Semantic color."},accessibilityLabel:{type:"string",description:'Names the radiogroup for screen readers, e.g. "Filter by status".'}},omit:["haptic"],examples:[{id:"FilterChipRow.default",title:"Default",props:{items:[{key:"all",label:"All"},{key:"open",label:"Open",count:4},{key:"closed",label:"Closed"}],value:"open"}},{id:"FilterChipRow.bleed",title:"Edge to edge",props:{bleed:16,items:[{key:"today",label:"Today"},{key:"week",label:"This week"},{key:"month",label:"This month"},{key:"year",label:"This year"}],value:"today"}},{id:"FilterChipRow.styled",title:"Styled chips",props:{variant:"soft",tone:"primary",size:"sm",items:[{key:"design",label:"Design"},{key:"engineering",label:"Engineering"},{key:"marketing",label:"Marketing"}],value:"engineering"}}],usage:{when:["A scrolling horizontal row of single-choice filter chips above a list."],whenNot:[{text:"To switch between entirely different views or tabs of a screen.",instead:"Tabs"}],do:[{note:"Provide a unique key for each item and pass the currently selected key to value.",example:[{component:"FilterChipRow",props:{items:[{key:"active",label:"Active"},{key:"inactive",label:"Inactive"}],value:"active"}}]},{note:"Use the count field on an item to show the number of results for that filter.",example:[{component:"FilterChipRow",props:{items:[{key:"draft",label:"Drafts",count:2},{key:"published",label:"Published",count:15}],value:"draft"}}]}],dont:[{note:"Do not leave value empty; one item should always be selected by default.",example:[{component:"FilterChipRow",props:{items:[{key:"active",label:"Active"},{key:"inactive",label:"Inactive"}],value:""}}]},{note:"Do not put the count in the label string; use the count field so it is styled correctly.",example:[{component:"FilterChipRow",props:{items:[{key:"draft",label:"Drafts (2)"},{key:"published",label:"Published (15)"}],value:"draft"}}]}],a11y:["Announces as a radiogroup of radios.","Use accessibilityLabel to name the group for screen readers."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"FloatingActionButton",marker:null,platforms:["phone"],acceptsChildren:!1,props:{label:{type:"string",description:"Text beside the icon; makes the button extended, a pill."},collapsed:{type:"boolean",default:!1,description:"Folds an extended button to its round icon, with the label fading out, and has no effect without a label."},size:{type:"enum",values:["sm","md","lg"],default:"md",description:"The diameter of the round button."},tone:{type:"enum",values:["primary","success","warning","danger","neutral"],default:"primary",description:"The colour family of the button."},position:{type:"enum",values:["bottomRight","bottomLeft","bottomCenter"],description:"The corner or edge of the screen the button is pinned to; leave it unset to place the button yourself."},bottomOffset:{type:"number",description:"The gap above the bottom edge, in points, before the safe area inset is added."},disabled:{type:"boolean",default:!1,description:"Blocks presses and dims the button."},hideOnScroll:{type:"boolean",default:!1,description:"Slides the button off the bottom edge while isScrolling is true."},isScrolling:{type:"boolean",default:!1,description:"Whether the list behind the button is scrolling right now; wire it to your scroll handler."},accessibilityLabel:{type:"string",required:!0,description:"The name a screen reader reads for the button."},accessibilityHint:{type:"string",description:"What happens when the button is pressed, read after its name by a screen reader."}},omit:["icon","haptic"],examples:[{id:"FloatingActionButton.extended",title:"Extended",props:{label:"New invoice",accessibilityLabel:"New invoice",tone:"primary"}},{id:"FloatingActionButton.neutralLarge",title:"Neutral and large",props:{label:"Filter",accessibilityLabel:"Filter the list",tone:"neutral",size:"lg"}},{id:"FloatingActionButton.collapsed",title:"Collapsed",props:{label:"New invoice",accessibilityLabel:"New invoice",collapsed:!0}}],usage:{when:["A screen has one main action that a person repeats often, such as adding an item.","The action has to stay reachable while the list behind it scrolls."],whenNot:[{text:"The action is a confirmation or a submit inside a form or dialog.",instead:"Button"}],do:[{note:"Use one button per screen for its main action, with a label that says what happens.",example:[{component:"FloatingActionButton",props:{label:"New invoice",accessibilityLabel:"New invoice"}}]},{note:"Fold an extended button with collapsed while the list scrolls, so it covers fewer rows.",example:[{component:"FloatingActionButton",props:{label:"New invoice",accessibilityLabel:"New invoice",collapsed:!0}}]}],dont:[{note:"Do not put two buttons on one screen; the second competes with the first for attention.",example:[{component:"FloatingActionButton",props:{label:"New invoice",accessibilityLabel:"New invoice"}},{component:"FloatingActionButton",props:{label:"Import",accessibilityLabel:"Import invoices"}}]},{note:"Do not set collapsed on a button with no label, because there is nothing to fold.",example:[{component:"FloatingActionButton",props:{accessibilityLabel:"New invoice",collapsed:!0}}]}],a11y:["The accessibility label names the button for a screen reader; set it to the action, not to the icon.","A collapsed button keeps its label as the accessible name, so a screen reader still hears what it does."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"FloatingActionButtonGroup",marker:null,platforms:["phone"],acceptsChildren:!1,props:{open:{type:"boolean",description:"Whether the actions are expanded. Set it to control the group; leave it unset to let the group track its own state."},defaultOpen:{type:"boolean",default:!1,description:"Whether the group starts expanded when it is not controlled by open."},position:{type:"enum",values:["bottomRight","bottomLeft","bottomCenter"],default:"bottomRight",description:"The corner or edge of the screen the group is pinned to."},bottomOffset:{type:"number",description:"The gap above the bottom edge, in points, before the safe area inset is added."},size:{type:"enum",values:["sm","md","lg"],default:"md",description:"The diameter of the primary button and of the action buttons."},accessibilityLabel:{type:"string",default:"Quick actions",description:"The name a screen reader reads for the primary button."},hideOnScroll:{type:"boolean",default:!1,description:"Slides the whole group off the bottom edge while isScrolling is true, and closes it first."},isScrolling:{type:"boolean",default:!1,description:"Whether the list behind the group is scrolling right now; wire it to your scroll handler."}},omit:["primaryIcon","primaryActiveIcon","actions","haptic"],examples:[{id:"FloatingActionButtonGroup.basic",title:"Basic",props:{accessibilityLabel:"Create"}},{id:"FloatingActionButtonGroup.open",title:"Open",props:{accessibilityLabel:"Create",defaultOpen:!0}},{id:"FloatingActionButtonGroup.placed",title:"Bottom left, large",props:{accessibilityLabel:"Create",position:"bottomLeft",size:"lg",bottomOffset:24}}],usage:{when:["A screen has one main task that offers two to six related actions, such as creating an item of several kinds.","The actions have to stay reachable while the list behind them scrolls."],whenNot:[{text:"The screen has one action only; a single button does the job.",instead:"FloatingActionButton"},{text:"The choices belong to a field or a row, not to the screen.",instead:"Menu"}],do:[{note:"Pin the group to a corner, where a thumb reaches it, and name it for what its actions create.",example:[{component:"FloatingActionButtonGroup",props:{accessibilityLabel:"Create",position:"bottomRight"}}]},{note:"Set hideOnScroll so the group slides away while the list behind it scrolls.",example:[{component:"FloatingActionButtonGroup",props:{accessibilityLabel:"Create",hideOnScroll:!0}}]}],dont:[{note:"Do not centre the group at the bottom of the screen, where it covers the buttons there.",example:[{component:"FloatingActionButtonGroup",props:{accessibilityLabel:"Create",position:"bottomCenter"}}]},{note:"Do not leave hideOnScroll off on a long list, because the group then covers the rows as they scroll.",example:[{component:"FloatingActionButtonGroup",props:{accessibilityLabel:"Create",hideOnScroll:!1}}]}],a11y:["The accessibility label names the group for a screen reader, so set it to what the actions create, not to an icon.","The primary button announces whether the group is expanded, and each action reads its own accessibility label."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"ForceUpdateDialog",marker:null,platforms:["phone"],acceptsChildren:!1,props:{visible:{type:"boolean",required:!0,description:"Whether the dialog is showing."},mandatory:{type:"boolean",required:!1,default:!1,description:"Hides the Later action and ignores backdrop and Back dismissal; use it for updates that must not be skipped."},updateUrl:{type:"string",required:!1,description:"Address the Update action opens; the platform store when left out."},title:{type:"string",required:!1,default:"Update available",description:"Dialog title."},message:{type:"string",required:!1,default:"A new version of the app is available. Please update to continue using the latest features and security improvements.",description:"Dialog message."},updateLabel:{type:"string",required:!1,default:"Update now",description:"Label of the main action."},laterLabel:{type:"string",required:!1,default:"Later",description:"Label of the dismiss action; hidden when mandatory."}},omit:[],examples:[{id:"ForceUpdateDialog.optional",title:"Optional update",props:{visible:!0,message:"Version 2.1.0 brings faster sync and improved offline support."}},{id:"ForceUpdateDialog.mandatory",title:"Mandatory update",props:{visible:!0,mandatory:!0,message:"Version 2.1.0 brings faster sync and improved offline support."}},{id:"ForceUpdateDialog.defaultCopy",title:"Default copy",props:{visible:!0}},{id:"ForceUpdateDialog.customLabels",title:"Custom labels",props:{visible:!0,title:"Time to update",updateLabel:"Get the update",laterLabel:"Not now"}}],usage:{when:["The installed version is too old and the person must move to the store version.","A newer version is out and the app offers it with a Later choice."],whenNot:[{text:"A passing notice about something new.",instead:"Banner"},{text:"Any other confirmation.",instead:"Dialog"}],do:[{note:"Mark the update mandatory only when the old version cannot keep working.",example:[{component:"ForceUpdateDialog",props:{visible:!0,mandatory:!0}}]}],dont:[{note:"Do not make an ordinary update mandatory; the person cannot dismiss it.",example:[{component:"ForceUpdateDialog",props:{visible:!0,mandatory:!0,message:"A small colour tweak is available."}}]}],a11y:["Shown as a modal dialog: focus stays inside until it is dismissed, and a mandatory one cannot be dismissed.","Keep the message short and say why the update is needed."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"FormField",marker:null,platforms:["phone"],acceptsChildren:!0,props:{label:{type:"node",required:!1,description:"Field label above the input, or left of it in the inline layout; a node label needs accessibilityLabel."},help:{type:"node",required:!1,description:"Drawn right after the label, such as an info button; not part of the label's spoken text."},helperText:{type:"node",required:!1,description:"Hint under the input; hidden while an error shows."},error:{type:"node",required:!1,description:"Error message in the error color; it hides the helper text and marks the field invalid."},required:{type:"boolean",required:!1,default:!1,description:"Adds the required marker after the label."},name:{type:"string",required:!1,description:"Connects the field to the surrounding form by name."},layout:{type:"enum",required:!1,values:["stacked","inline"],default:"stacked",description:"stacked puts the label above the input; inline puts it on the left."},helperLines:{type:"number",required:!1,description:"Lines the helper text and error may take before an ellipsis; no limit when left out or 0."},accessibilityLabel:{type:"string",required:!1,description:"Overrides the spoken label built from the label and the error."}},omit:[],examples:[{id:"FormField.stacked",title:"Stacked with helper",props:{label:"Email",required:!0,helperText:"We'll never share this."},children:[{component:"Input",props:{placeholder:"you@example.com"}}]},{id:"FormField.inline",title:"Inline label",props:{label:"Email",layout:"inline",helperText:"We'll never share this."},children:[{component:"Input",props:{placeholder:"you@example.com"}}]},{id:"FormField.error",title:"With an error",props:{label:"Email",required:!0,helperText:"We'll never share this.",error:"Enter a valid email address."},children:[{component:"Input",props:{placeholder:"you@example.com"}}]},{id:"FormField.optional",title:"Optional field",props:{label:"Nickname"},children:[{component:"Input",props:{placeholder:"What should we call you?"}}]}],usage:{when:["Wrap one input with a label, a helper or an error so every field in a form is laid out the same way.","Any input type: Input, Select, Switch or a date picker."],whenNot:[{text:"The control already draws its own label and error.",instead:"Use the control on its own."},{text:"The form is wired with react-hook-form.",instead:"HookFormField"}],do:[{note:"Say what to fix in the error, and keep the hint for what to enter.",example:[{component:"FormField",props:{label:"Email",error:"Enter a valid email address."},children:[{component:"Input",props:{placeholder:"you@example.com"}}]}]}],dont:[{note:"Do not repeat the label as the placeholder.",example:[{component:"FormField",props:{label:"Email"},children:[{component:"Input",props:{placeholder:"Email"}}]}]}],a11y:["The field is announced as the label plus the error when one shows; a node label needs accessibilityLabel.","The error is read out when it appears, through a live region."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"IconBadge",marker:null,platforms:["phone"],acceptsChildren:!1,props:{icon:{type:"icon",required:!0,description:"The icon to draw inside the badge."},iconVariant:{type:"enum",values:["linear","bold","broken","bulk","outline","twotone"],default:"linear",description:"The Iconsax style for the icon when given as a name."},size:{type:"enum",values:["sm","md","lg"],default:"md",description:"The size of the badge circle and its icon."},tone:{type:"enum",values:["primary","secondary","success","warning","danger","info","neutral"],default:"primary",description:"The colour of the tinted background and the icon."},accessibilityLabel:{type:"string",description:"Announces the badge as an image to screen readers; without it the badge is decorative."}},omit:[],examples:[{id:"IconBadge.primary",title:"Primary",props:{icon:"user"}},{id:"IconBadge.danger",title:"Danger",props:{icon:"alert-circle",tone:"danger",size:"lg",accessibilityLabel:"Error"}},{id:"IconBadge.neutral",title:"Neutral",props:{icon:"user",tone:"neutral",iconVariant:"bold"}}],usage:{when:["Draw an icon on a circular surface tinted with the same colour."],whenNot:[{text:"Providing a tappable icon action.",instead:"Use IconButton."}],do:[{note:"Give a standalone badge an accessibility label when it carries meaning.",example:[{component:"IconBadge",props:{icon:"user",accessibilityLabel:"User profile"}}]},{note:"Use the danger tone to highlight an error or a critical warning.",example:[{component:"IconBadge",props:{icon:"alert-circle",tone:"danger",accessibilityLabel:"Error"}}]}],dont:[{note:"Do not leave a meaningful badge silent for screen readers.",example:[{component:"IconBadge",props:{icon:"user"}}]},{note:"Do not use the danger tone for a standard status or an informational icon.",example:[{component:"IconBadge",props:{icon:"user",tone:"danger",accessibilityLabel:"User profile"}}]}],a11y:["A decorative badge is hidden from screen readers; set accessibilityLabel when it carries meaning.","Colour is never the only signal; pair a coloured badge with text."]}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.meta=void 0;var _meta=require("../../canvasKit/meta.js");const meta=exports.meta=(0,_meta.definePhoneMeta)()({name:"IconButton",marker:null,platforms:["phone"],acceptsChildren:!1,props:{accessibilityLabel:{type:"string",required:!0,description:"The accessible name of the button, required for an icon-only control."},iconVariant:{type:"enum",values:["linear","bold","broken","bulk","outline","twotone"],default:"linear",description:"The Iconsax style for the icon when it is given by name."},tone:{type:"enum",values:["primary","secondary","success","warning","danger","neutral"],default:"primary",description:"The colour family of the button."},variant:{type:"enum",values:["solid","soft","outline","ghost","glass"],default:"solid",description:"The visual weight of the button, from a solid fill to no fill."},size:{type:"enum",values:["sm","md","lg"],default:"md",description:"The diameter of the button and the size of its icon."},shape:{type:"enum",values:["circle","rounded"],default:"circle",description:"The outline of the button."},active:{type:"boolean",default:!1,description:"Draws the button filled regardless of the variant, as for an active nav tile."},disabled:{type:"boolean",default:!1,description:"Blocks presses and dims the button."},loading:{type:"boolean",default:!1,description:"Replaces the icon with a spinner and disables the button."}},omit:["icon","haptic"],examples:[{id:"IconButton.default",title:"Default",props:{accessibilityLabel:"Send",variant:"solid",tone:"primary"}},{id:"IconButton.outline",title:"Outline",props:{accessibilityLabel:"Close",variant:"outline",tone:"neutral"}},{id:"IconButton.active",title:"Active",props:{accessibilityLabel:"Menu",active:!0,tone:"primary"}}],usage:{when:["A single icon action that needs a clear touch target, such as a back or close control.","A navigation tile that is selected and should render filled."],whenNot:[{text:"A button with a text label.",instead:"Button"},{text:"A decorative icon with no action.",instead:"AppIcon"},{text:"A floating action button over the main content.",instead:"FloatingActionButton"}],do:[{note:"Always set an accessibility label so screen readers can announce the action.",example:[{component:"IconButton",props:{accessibilityLabel:"Close dialog"}}]},{note:"Use the outline variant for a quiet action beside stronger controls.",example:[{component:"IconButton",props:{accessibilityLabel:"Copy",variant:"outline",tone:"neutral"}}]}],dont:[{note:"Do not omit the accessibility label; an icon-only button is invisible to screen readers without it.",example:[{component:"IconButton",props:{variant:"solid"}}]},{note:"Do not use the danger tone for a standard destructive action without confirmation.",example:[{component:"IconButton",props:{accessibilityLabel:"Delete",tone:"danger"}}]}],a11y:["The accessibility label is the spoken name; without it the button has no accessible name.","The button announces itself as disabled when disabled or loading, with a disabled state.","The active state is exposed as selected for screen readers."]}});
|