@webority/mobile-ui 0.0.39 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/components/Accordion/Accordion.js +1 -343
- package/lib/commonjs/components/Accordion/index.js +1 -26
- package/lib/commonjs/components/AmountSlider/AmountSlider.js +1 -209
- package/lib/commonjs/components/AmountSlider/index.js +1 -20
- package/lib/commonjs/components/AnimatePresence/AnimatePresence.js +1 -71
- package/lib/commonjs/components/AnimatePresence/index.js +1 -13
- package/lib/commonjs/components/AppBar/AppBar.js +1 -358
- package/lib/commonjs/components/AppBar/index.js +1 -20
- package/lib/commonjs/components/AppIcon/AppIcon.js +1 -155
- package/lib/commonjs/components/AppIcon/catalog/bold/a.g.js +1 -84
- package/lib/commonjs/components/AppIcon/catalog/bold/b.g.js +1 -89
- package/lib/commonjs/components/AppIcon/catalog/bold/c.g.js +1 -118
- package/lib/commonjs/components/AppIcon/catalog/bold/d.g.js +1 -68
- package/lib/commonjs/components/AppIcon/catalog/bold/e.g.js +1 -46
- package/lib/commonjs/components/AppIcon/catalog/bold/f.g.js +1 -52
- package/lib/commonjs/components/AppIcon/catalog/bold/g.g.js +1 -54
- package/lib/commonjs/components/AppIcon/catalog/bold/h.g.js +1 -52
- package/lib/commonjs/components/AppIcon/catalog/bold/i.g.js +1 -31
- package/lib/commonjs/components/AppIcon/catalog/bold/j.g.js +1 -18
- package/lib/commonjs/components/AppIcon/catalog/bold/k.g.js +1 -20
- package/lib/commonjs/components/AppIcon/catalog/bold/l.g.js +1 -52
- package/lib/commonjs/components/AppIcon/catalog/bold/m.g.js +1 -105
- package/lib/commonjs/components/AppIcon/catalog/bold/n.g.js +1 -34
- package/lib/commonjs/components/AppIcon/catalog/bold/o.g.js +1 -21
- package/lib/commonjs/components/AppIcon/catalog/bold/p.g.js +1 -60
- package/lib/commonjs/components/AppIcon/catalog/bold/q.g.js +1 -22
- package/lib/commonjs/components/AppIcon/catalog/bold/r.g.js +1 -59
- package/lib/commonjs/components/AppIcon/catalog/bold/s.g.js +1 -113
- package/lib/commonjs/components/AppIcon/catalog/bold/t.g.js +1 -74
- package/lib/commonjs/components/AppIcon/catalog/bold/u.g.js +1 -28
- package/lib/commonjs/components/AppIcon/catalog/bold/v.g.js +1 -40
- package/lib/commonjs/components/AppIcon/catalog/bold/w.g.js +1 -41
- package/lib/commonjs/components/AppIcon/catalog/bold/x.g.js +1 -18
- package/lib/commonjs/components/AppIcon/catalog/bold/y.g.js +1 -16
- package/lib/commonjs/components/AppIcon/catalog/bold/z.g.js +1 -17
- package/lib/commonjs/components/AppIcon/catalog/broken/a.g.js +1 -84
- package/lib/commonjs/components/AppIcon/catalog/broken/b.g.js +1 -89
- package/lib/commonjs/components/AppIcon/catalog/broken/c.g.js +1 -118
- package/lib/commonjs/components/AppIcon/catalog/broken/d.g.js +1 -68
- package/lib/commonjs/components/AppIcon/catalog/broken/e.g.js +1 -46
- package/lib/commonjs/components/AppIcon/catalog/broken/f.g.js +1 -52
- package/lib/commonjs/components/AppIcon/catalog/broken/g.g.js +1 -54
- package/lib/commonjs/components/AppIcon/catalog/broken/h.g.js +1 -52
- package/lib/commonjs/components/AppIcon/catalog/broken/i.g.js +1 -31
- package/lib/commonjs/components/AppIcon/catalog/broken/j.g.js +1 -18
- package/lib/commonjs/components/AppIcon/catalog/broken/k.g.js +1 -20
- package/lib/commonjs/components/AppIcon/catalog/broken/l.g.js +1 -52
- package/lib/commonjs/components/AppIcon/catalog/broken/m.g.js +1 -105
- package/lib/commonjs/components/AppIcon/catalog/broken/n.g.js +1 -34
- package/lib/commonjs/components/AppIcon/catalog/broken/o.g.js +1 -21
- package/lib/commonjs/components/AppIcon/catalog/broken/p.g.js +1 -60
- package/lib/commonjs/components/AppIcon/catalog/broken/q.g.js +1 -22
- package/lib/commonjs/components/AppIcon/catalog/broken/r.g.js +1 -59
- package/lib/commonjs/components/AppIcon/catalog/broken/s.g.js +1 -113
- package/lib/commonjs/components/AppIcon/catalog/broken/t.g.js +1 -74
- package/lib/commonjs/components/AppIcon/catalog/broken/u.g.js +1 -28
- package/lib/commonjs/components/AppIcon/catalog/broken/v.g.js +1 -40
- package/lib/commonjs/components/AppIcon/catalog/broken/w.g.js +1 -41
- package/lib/commonjs/components/AppIcon/catalog/broken/x.g.js +1 -18
- package/lib/commonjs/components/AppIcon/catalog/broken/y.g.js +1 -16
- package/lib/commonjs/components/AppIcon/catalog/broken/z.g.js +1 -17
- package/lib/commonjs/components/AppIcon/catalog/bulk/a.g.js +1 -84
- package/lib/commonjs/components/AppIcon/catalog/bulk/b.g.js +1 -89
- package/lib/commonjs/components/AppIcon/catalog/bulk/c.g.js +1 -118
- package/lib/commonjs/components/AppIcon/catalog/bulk/d.g.js +1 -68
- package/lib/commonjs/components/AppIcon/catalog/bulk/e.g.js +1 -46
- package/lib/commonjs/components/AppIcon/catalog/bulk/f.g.js +1 -52
- package/lib/commonjs/components/AppIcon/catalog/bulk/g.g.js +1 -54
- package/lib/commonjs/components/AppIcon/catalog/bulk/h.g.js +1 -52
- package/lib/commonjs/components/AppIcon/catalog/bulk/i.g.js +1 -31
- package/lib/commonjs/components/AppIcon/catalog/bulk/j.g.js +1 -18
- package/lib/commonjs/components/AppIcon/catalog/bulk/k.g.js +1 -20
- package/lib/commonjs/components/AppIcon/catalog/bulk/l.g.js +1 -52
- package/lib/commonjs/components/AppIcon/catalog/bulk/m.g.js +1 -105
- package/lib/commonjs/components/AppIcon/catalog/bulk/n.g.js +1 -34
- package/lib/commonjs/components/AppIcon/catalog/bulk/o.g.js +1 -21
- package/lib/commonjs/components/AppIcon/catalog/bulk/p.g.js +1 -60
- package/lib/commonjs/components/AppIcon/catalog/bulk/q.g.js +1 -22
- package/lib/commonjs/components/AppIcon/catalog/bulk/r.g.js +1 -59
- package/lib/commonjs/components/AppIcon/catalog/bulk/s.g.js +1 -113
- package/lib/commonjs/components/AppIcon/catalog/bulk/t.g.js +1 -74
- package/lib/commonjs/components/AppIcon/catalog/bulk/u.g.js +1 -28
- package/lib/commonjs/components/AppIcon/catalog/bulk/v.g.js +1 -40
- package/lib/commonjs/components/AppIcon/catalog/bulk/w.g.js +1 -41
- package/lib/commonjs/components/AppIcon/catalog/bulk/x.g.js +1 -18
- package/lib/commonjs/components/AppIcon/catalog/bulk/y.g.js +1 -16
- package/lib/commonjs/components/AppIcon/catalog/bulk/z.g.js +1 -17
- package/lib/commonjs/components/AppIcon/catalog/linear/a.g.js +1 -84
- package/lib/commonjs/components/AppIcon/catalog/linear/b.g.js +1 -89
- package/lib/commonjs/components/AppIcon/catalog/linear/c.g.js +1 -118
- package/lib/commonjs/components/AppIcon/catalog/linear/d.g.js +1 -68
- package/lib/commonjs/components/AppIcon/catalog/linear/e.g.js +1 -46
- package/lib/commonjs/components/AppIcon/catalog/linear/f.g.js +1 -52
- package/lib/commonjs/components/AppIcon/catalog/linear/g.g.js +1 -54
- package/lib/commonjs/components/AppIcon/catalog/linear/h.g.js +1 -52
- package/lib/commonjs/components/AppIcon/catalog/linear/i.g.js +1 -31
- package/lib/commonjs/components/AppIcon/catalog/linear/j.g.js +1 -18
- package/lib/commonjs/components/AppIcon/catalog/linear/k.g.js +1 -20
- package/lib/commonjs/components/AppIcon/catalog/linear/l.g.js +1 -52
- package/lib/commonjs/components/AppIcon/catalog/linear/m.g.js +1 -105
- package/lib/commonjs/components/AppIcon/catalog/linear/n.g.js +1 -34
- package/lib/commonjs/components/AppIcon/catalog/linear/o.g.js +1 -21
- package/lib/commonjs/components/AppIcon/catalog/linear/p.g.js +1 -60
- package/lib/commonjs/components/AppIcon/catalog/linear/q.g.js +1 -22
- package/lib/commonjs/components/AppIcon/catalog/linear/r.g.js +1 -59
- package/lib/commonjs/components/AppIcon/catalog/linear/s.g.js +1 -113
- package/lib/commonjs/components/AppIcon/catalog/linear/t.g.js +1 -74
- package/lib/commonjs/components/AppIcon/catalog/linear/u.g.js +1 -28
- package/lib/commonjs/components/AppIcon/catalog/linear/v.g.js +1 -40
- package/lib/commonjs/components/AppIcon/catalog/linear/w.g.js +1 -41
- package/lib/commonjs/components/AppIcon/catalog/linear/x.g.js +1 -18
- package/lib/commonjs/components/AppIcon/catalog/linear/y.g.js +1 -16
- package/lib/commonjs/components/AppIcon/catalog/linear/z.g.js +1 -17
- package/lib/commonjs/components/AppIcon/catalog/outline/a.g.js +1 -84
- package/lib/commonjs/components/AppIcon/catalog/outline/b.g.js +1 -89
- package/lib/commonjs/components/AppIcon/catalog/outline/c.g.js +1 -118
- package/lib/commonjs/components/AppIcon/catalog/outline/d.g.js +1 -68
- package/lib/commonjs/components/AppIcon/catalog/outline/e.g.js +1 -46
- package/lib/commonjs/components/AppIcon/catalog/outline/f.g.js +1 -52
- package/lib/commonjs/components/AppIcon/catalog/outline/g.g.js +1 -54
- package/lib/commonjs/components/AppIcon/catalog/outline/h.g.js +1 -52
- package/lib/commonjs/components/AppIcon/catalog/outline/i.g.js +1 -31
- package/lib/commonjs/components/AppIcon/catalog/outline/j.g.js +1 -18
- package/lib/commonjs/components/AppIcon/catalog/outline/k.g.js +1 -20
- package/lib/commonjs/components/AppIcon/catalog/outline/l.g.js +1 -52
- package/lib/commonjs/components/AppIcon/catalog/outline/m.g.js +1 -105
- package/lib/commonjs/components/AppIcon/catalog/outline/n.g.js +1 -34
- package/lib/commonjs/components/AppIcon/catalog/outline/o.g.js +1 -21
- package/lib/commonjs/components/AppIcon/catalog/outline/p.g.js +1 -60
- package/lib/commonjs/components/AppIcon/catalog/outline/q.g.js +1 -22
- package/lib/commonjs/components/AppIcon/catalog/outline/r.g.js +1 -59
- package/lib/commonjs/components/AppIcon/catalog/outline/s.g.js +1 -113
- package/lib/commonjs/components/AppIcon/catalog/outline/t.g.js +1 -74
- package/lib/commonjs/components/AppIcon/catalog/outline/u.g.js +1 -28
- package/lib/commonjs/components/AppIcon/catalog/outline/v.g.js +1 -40
- package/lib/commonjs/components/AppIcon/catalog/outline/w.g.js +1 -41
- package/lib/commonjs/components/AppIcon/catalog/outline/x.g.js +1 -18
- package/lib/commonjs/components/AppIcon/catalog/outline/y.g.js +1 -16
- package/lib/commonjs/components/AppIcon/catalog/outline/z.g.js +1 -17
- package/lib/commonjs/components/AppIcon/catalog/twotone/a.g.js +1 -84
- package/lib/commonjs/components/AppIcon/catalog/twotone/b.g.js +1 -89
- package/lib/commonjs/components/AppIcon/catalog/twotone/c.g.js +1 -118
- package/lib/commonjs/components/AppIcon/catalog/twotone/d.g.js +1 -68
- package/lib/commonjs/components/AppIcon/catalog/twotone/e.g.js +1 -46
- package/lib/commonjs/components/AppIcon/catalog/twotone/f.g.js +1 -52
- package/lib/commonjs/components/AppIcon/catalog/twotone/g.g.js +1 -54
- package/lib/commonjs/components/AppIcon/catalog/twotone/h.g.js +1 -52
- package/lib/commonjs/components/AppIcon/catalog/twotone/i.g.js +1 -31
- package/lib/commonjs/components/AppIcon/catalog/twotone/j.g.js +1 -18
- package/lib/commonjs/components/AppIcon/catalog/twotone/k.g.js +1 -20
- package/lib/commonjs/components/AppIcon/catalog/twotone/l.g.js +1 -52
- package/lib/commonjs/components/AppIcon/catalog/twotone/m.g.js +1 -105
- package/lib/commonjs/components/AppIcon/catalog/twotone/n.g.js +1 -34
- package/lib/commonjs/components/AppIcon/catalog/twotone/o.g.js +1 -21
- package/lib/commonjs/components/AppIcon/catalog/twotone/p.g.js +1 -60
- package/lib/commonjs/components/AppIcon/catalog/twotone/q.g.js +1 -22
- package/lib/commonjs/components/AppIcon/catalog/twotone/r.g.js +1 -59
- package/lib/commonjs/components/AppIcon/catalog/twotone/s.g.js +1 -113
- package/lib/commonjs/components/AppIcon/catalog/twotone/t.g.js +1 -74
- package/lib/commonjs/components/AppIcon/catalog/twotone/u.g.js +1 -28
- package/lib/commonjs/components/AppIcon/catalog/twotone/v.g.js +1 -40
- package/lib/commonjs/components/AppIcon/catalog/twotone/w.g.js +1 -41
- package/lib/commonjs/components/AppIcon/catalog/twotone/x.g.js +1 -18
- package/lib/commonjs/components/AppIcon/catalog/twotone/y.g.js +1 -16
- package/lib/commonjs/components/AppIcon/catalog/twotone/z.g.js +1 -17
- package/lib/commonjs/components/AppIcon/catalog.g.js +1 -187
- package/lib/commonjs/components/AppIcon/defaultIcons.js +1 -83
- package/lib/commonjs/components/AppIcon/glyphs.g.js +1 -160
- package/lib/commonjs/components/AppIcon/index.js +1 -64
- package/lib/commonjs/components/AppIcon/slotIcon.js +1 -67
- package/lib/commonjs/components/AppIcon/variants.g.js +1 -741
- package/lib/commonjs/components/AsyncBlock/AsyncBlock.js +1 -87
- package/lib/commonjs/components/AsyncBlock/index.js +1 -20
- package/lib/commonjs/components/AuthedImage/AuthedImage.js +1 -230
- package/lib/commonjs/components/AuthedImage/authedImageCache.js +1 -351
- package/lib/commonjs/components/AuthedImage/index.js +1 -45
- package/lib/commonjs/components/Autocomplete/Autocomplete.js +1 -227
- package/lib/commonjs/components/Autocomplete/index.js +1 -13
- package/lib/commonjs/components/Avatar/Avatar.js +1 -502
- package/lib/commonjs/components/Avatar/index.js +1 -32
- package/lib/commonjs/components/Badge/Badge.js +1 -298
- package/lib/commonjs/components/Badge/index.js +1 -20
- package/lib/commonjs/components/Banner/Banner.js +1 -401
- package/lib/commonjs/components/Banner/index.js +1 -20
- package/lib/commonjs/components/BottomNavigation/BottomNavigation.js +1 -893
- package/lib/commonjs/components/BottomNavigation/index.js +1 -20
- package/lib/commonjs/components/BottomSheet/BottomSheet.js +1 -732
- package/lib/commonjs/components/BottomSheet/index.js +1 -26
- package/lib/commonjs/components/Box/Box.js +1 -226
- package/lib/commonjs/components/Box/index.js +1 -37
- package/lib/commonjs/components/Button/Button.js +1 -561
- package/lib/commonjs/components/Button/index.js +1 -20
- package/lib/commonjs/components/Card/Card.js +1 -407
- package/lib/commonjs/components/Card/index.js +1 -20
- package/lib/commonjs/components/Carousel/Carousel.js +1 -587
- package/lib/commonjs/components/Carousel/index.js +1 -20
- package/lib/commonjs/components/Checkbox/Checkbox.js +1 -187
- package/lib/commonjs/components/Checkbox/index.js +1 -20
- package/lib/commonjs/components/Chip/Chip.js +1 -358
- package/lib/commonjs/components/Chip/index.js +1 -20
- package/lib/commonjs/components/ChoiceGroup/ChoiceGroup.js +1 -336
- package/lib/commonjs/components/ChoiceGroup/index.js +1 -20
- package/lib/commonjs/components/Confetti/Confetti.js +1 -382
- package/lib/commonjs/components/Confetti/index.js +1 -13
- package/lib/commonjs/components/DatePicker/DatePicker.js +1 -1054
- package/lib/commonjs/components/DatePicker/index.js +1 -20
- package/lib/commonjs/components/DateRangePicker/DateRangePicker.js +1 -794
- package/lib/commonjs/components/DateRangePicker/index.js +1 -20
- package/lib/commonjs/components/DecimalInput/DecimalInput.js +1 -0
- package/lib/commonjs/components/DecimalInput/index.js +1 -0
- package/lib/commonjs/components/Descriptions/Descriptions.js +1 -107
- package/lib/commonjs/components/Descriptions/index.js +1 -20
- package/lib/commonjs/components/Dialog/Dialog.js +1 -248
- package/lib/commonjs/components/Dialog/index.js +1 -20
- package/lib/commonjs/components/Divider/Divider.js +1 -117
- package/lib/commonjs/components/Divider/index.js +1 -20
- package/lib/commonjs/components/Drawer/Drawer.js +1 -382
- package/lib/commonjs/components/Drawer/index.js +1 -20
- package/lib/commonjs/components/EmptyState/EmptyState.js +1 -236
- package/lib/commonjs/components/EmptyState/index.js +1 -20
- package/lib/commonjs/components/ErrorBoundary/ErrorBoundary.js +1 -136
- package/lib/commonjs/components/ErrorBoundary/index.js +1 -27
- package/lib/commonjs/components/ErrorBoundary/useErrorHandler.js +1 -24
- package/lib/commonjs/components/ErrorBoundary/withErrorBoundary.js +1 -28
- package/lib/commonjs/components/FieldBase/Chevron.js +1 -75
- package/lib/commonjs/components/FieldBase/ChoiceText.js +1 -0
- package/lib/commonjs/components/FieldBase/FieldBase.js +1 -804
- package/lib/commonjs/components/FieldBase/index.js +1 -75
- package/lib/commonjs/components/FieldBase/useFloatingLabel.js +1 -181
- package/lib/commonjs/components/FilePicker/FilePicker.js +1 -797
- package/lib/commonjs/components/FilePicker/index.js +1 -26
- package/lib/commonjs/components/FileViewer/FileViewer.js +1 -259
- package/lib/commonjs/components/FileViewer/index.js +1 -13
- package/lib/commonjs/components/FloatingActionButton/FloatingActionButton.js +1 -696
- package/lib/commonjs/components/FloatingActionButton/index.js +1 -26
- package/lib/commonjs/components/ForceUpdateDialog/ForceUpdateDialog.js +1 -90
- package/lib/commonjs/components/ForceUpdateDialog/index.js +1 -20
- package/lib/commonjs/components/FormField/FormField.js +1 -170
- package/lib/commonjs/components/FormField/index.js +1 -20
- package/lib/commonjs/components/IconBadge/IconBadge.js +1 -0
- package/lib/commonjs/components/IconBadge/index.js +1 -0
- package/lib/commonjs/components/IconButton/IconButton.js +1 -198
- package/lib/commonjs/components/IconButton/index.js +1 -13
- package/lib/commonjs/components/ImageGallery/ImageGallery.js +1 -594
- package/lib/commonjs/components/ImageGallery/index.js +1 -20
- package/lib/commonjs/components/InlineSelect/InlineSelect.js +1 -190
- package/lib/commonjs/components/InlineSelect/index.js +1 -20
- package/lib/commonjs/components/Input/Input.js +1 -591
- package/lib/commonjs/components/Input/index.js +1 -20
- package/lib/commonjs/components/KeyboardAwareScrollView/KeyboardAwareScrollView.js +1 -168
- package/lib/commonjs/components/KeyboardAwareScrollView/index.js +1 -13
- package/lib/commonjs/components/KeyboardToolbar/KeyboardToolbar.js +1 -135
- package/lib/commonjs/components/KeyboardToolbar/index.js +1 -13
- package/lib/commonjs/components/ListItem/ListItem.js +1 -344
- package/lib/commonjs/components/ListItem/index.js +1 -20
- package/lib/commonjs/components/LoaderOverlay/LoaderOverlay.js +1 -203
- package/lib/commonjs/components/LoaderOverlay/index.js +1 -25
- package/lib/commonjs/components/Markdown/Markdown.js +1 -276
- package/lib/commonjs/components/Markdown/index.js +1 -13
- package/lib/commonjs/components/Markdown/parse.js +1 -229
- package/lib/commonjs/components/Modal/Modal.js +1 -376
- package/lib/commonjs/components/Modal/index.js +1 -26
- package/lib/commonjs/components/Notation/Notation.js +1 -0
- package/lib/commonjs/components/Notation/index.js +1 -0
- package/lib/commonjs/components/NumberInput/NumberInput.js +1 -386
- package/lib/commonjs/components/NumberInput/index.js +1 -20
- package/lib/commonjs/components/OTPInput/OTPInput.js +1 -448
- package/lib/commonjs/components/OTPInput/index.js +1 -20
- package/lib/commonjs/components/OptionSheet/OptionSheet.js +1 -718
- package/lib/commonjs/components/OptionSheet/index.js +1 -0
- package/lib/commonjs/components/PhoneNumberInput/PhoneNumberInput.js +1 -574
- package/lib/commonjs/components/PhoneNumberInput/index.js +1 -32
- package/lib/commonjs/components/PickerTrigger/PickerTrigger.js +1 -150
- package/lib/commonjs/components/PickerTrigger/index.js +1 -20
- package/lib/commonjs/components/ProfileCompletion/ProfileCompletion.js +1 -214
- package/lib/commonjs/components/ProfileCompletion/index.js +1 -20
- package/lib/commonjs/components/ProfilePicker/ProfilePicker.js +1 -531
- package/lib/commonjs/components/ProfilePicker/index.js +1 -20
- package/lib/commonjs/components/ProgressBar/ProgressBar.js +1 -202
- package/lib/commonjs/components/ProgressBar/index.js +1 -20
- package/lib/commonjs/components/ProgressRing/ProgressRing.js +1 -191
- package/lib/commonjs/components/ProgressRing/index.js +1 -20
- package/lib/commonjs/components/Radio/Radio.js +1 -127
- package/lib/commonjs/components/Radio/RadioDot.js +1 -108
- package/lib/commonjs/components/Radio/RadioGroup.js +1 -50
- package/lib/commonjs/components/Radio/index.js +1 -46
- package/lib/commonjs/components/Rating/Rating.js +1 -338
- package/lib/commonjs/components/Rating/index.js +1 -20
- package/lib/commonjs/components/Repeater/Repeater.js +1 -166
- package/lib/commonjs/components/Repeater/index.js +1 -20
- package/lib/commonjs/components/RichTextEditor/RichTextEditor.js +1 -314
- package/lib/commonjs/components/RichTextEditor/index.js +1 -20
- package/lib/commonjs/components/RichTextEditor/markdownActions.js +1 -213
- package/lib/commonjs/components/SearchBar/SearchBar.js +1 -244
- package/lib/commonjs/components/SearchBar/index.js +1 -20
- package/lib/commonjs/components/SectionHeader/SectionHeader.js +1 -0
- package/lib/commonjs/components/SectionHeader/index.js +1 -0
- package/lib/commonjs/components/SegmentedControl/SegmentedControl.js +1 -320
- package/lib/commonjs/components/SegmentedControl/index.js +1 -20
- package/lib/commonjs/components/Select/Select.js +1 -277
- package/lib/commonjs/components/Select/index.js +1 -20
- package/lib/commonjs/components/Skeleton/Skeleton.js +1 -285
- package/lib/commonjs/components/Skeleton/SkeletonClock.js +1 -118
- package/lib/commonjs/components/Skeleton/SkeletonContent.js +1 -309
- package/lib/commonjs/components/Skeleton/SkeletonList.js +1 -92
- package/lib/commonjs/components/Skeleton/SkeletonProvider.js +1 -114
- package/lib/commonjs/components/Skeleton/SkeletonSkip.js +1 -37
- package/lib/commonjs/components/Skeleton/index.js +1 -85
- package/lib/commonjs/components/SlideToConfirm/SlideToConfirm.js +1 -262
- package/lib/commonjs/components/SlideToConfirm/index.js +1 -13
- package/lib/commonjs/components/Slider/Slider.js +1 -809
- package/lib/commonjs/components/Slider/index.js +1 -20
- package/lib/commonjs/components/Slider/valueText.js +1 -266
- package/lib/commonjs/components/SliderField/SliderField.js +1 -360
- package/lib/commonjs/components/SliderField/index.js +1 -20
- package/lib/commonjs/components/Spinner/Spinner.js +1 -203
- package/lib/commonjs/components/Spinner/index.js +1 -20
- package/lib/commonjs/components/SquircleFill/SquircleFill.js +1 -116
- package/lib/commonjs/components/StatTile/StatTile.js +1 -0
- package/lib/commonjs/components/StatTile/index.js +1 -0
- package/lib/commonjs/components/StatusBadge/StatusBadge.js +1 -233
- package/lib/commonjs/components/StatusBadge/index.js +1 -20
- package/lib/commonjs/components/Stepper/Stepper.js +1 -779
- package/lib/commonjs/components/Stepper/index.js +1 -20
- package/lib/commonjs/components/Swipeable/Swipeable.js +1 -383
- package/lib/commonjs/components/Swipeable/index.js +1 -20
- package/lib/commonjs/components/Switch/Switch.js +1 -233
- package/lib/commonjs/components/Switch/index.js +1 -20
- package/lib/commonjs/components/Tabs/Tabs.js +1 -428
- package/lib/commonjs/components/Tabs/index.js +1 -20
- package/lib/commonjs/components/TagInput/TagInput.js +1 -185
- package/lib/commonjs/components/TagInput/index.js +1 -20
- package/lib/commonjs/components/Text/Text.js +1 -146
- package/lib/commonjs/components/Text/index.js +1 -13
- package/lib/commonjs/components/TimePicker/TimePicker.js +1 -732
- package/lib/commonjs/components/TimePicker/index.js +1 -20
- package/lib/commonjs/components/Timeline/Timeline.js +1 -263
- package/lib/commonjs/components/Timeline/index.js +1 -20
- package/lib/commonjs/components/Toast/Toast.js +1 -326
- package/lib/commonjs/components/Toast/ToastProvider.js +1 -200
- package/lib/commonjs/components/Toast/index.js +1 -39
- package/lib/commonjs/components/Tooltip/Tooltip.js +1 -412
- package/lib/commonjs/components/Tooltip/index.js +1 -20
- package/lib/commonjs/components/Tour/Tour.js +1 -342
- package/lib/commonjs/components/Tour/index.js +1 -20
- package/lib/commonjs/components/ZoomableImage/ZoomableImage.js +1 -204
- package/lib/commonjs/components/ZoomableImage/index.js +1 -13
- package/lib/commonjs/components/index.js +1 -748
- package/lib/commonjs/form/FormContext.js +1 -52
- package/lib/commonjs/form/HookFormField.js +1 -0
- package/lib/commonjs/form/equal.js +1 -56
- package/lib/commonjs/form/index.js +1 -81
- package/lib/commonjs/form/path.js +1 -91
- package/lib/commonjs/form/rules.js +1 -73
- package/lib/commonjs/form/types.js +1 -2
- package/lib/commonjs/form/useField.js +1 -66
- package/lib/commonjs/form/useForm.js +1 -379
- package/lib/commonjs/form/useFormCompletion.js +1 -73
- package/lib/commonjs/form/useHookFormField.js +1 -0
- package/lib/commonjs/hooks/index.js +1 -85
- package/lib/commonjs/hooks/useControllableState.js +1 -32
- package/lib/commonjs/hooks/useDebounce.js +1 -17
- package/lib/commonjs/hooks/useDragToDismiss.js +1 -142
- package/lib/commonjs/hooks/useFlickGuard.js +1 -60
- package/lib/commonjs/hooks/usePressAnimation.js +1 -130
- package/lib/commonjs/hooks/useReducedMotion.js +1 -33
- package/lib/commonjs/hooks/useToggle.js +1 -22
- package/lib/commonjs/index.js +1 -468
- package/lib/commonjs/initUI.js +1 -24
- package/lib/commonjs/network/NetworkStatusBanner.js +1 -89
- package/lib/commonjs/network/index.js +1 -13
- package/lib/commonjs/specs/NativePdfRasterizer.js +1 -9
- package/lib/commonjs/theme/Gradient.js +1 -59
- package/lib/commonjs/theme/ThemeContext.js +1 -101
- package/lib/commonjs/theme/animatedValue.js +1 -69
- package/lib/commonjs/theme/index.js +1 -149
- package/lib/commonjs/theme/merge.js +1 -30
- package/lib/commonjs/theme/textStyle.js +1 -39
- package/lib/commonjs/theme/tokens.js +1 -706
- package/lib/commonjs/theme/types.js +1 -6
- package/lib/commonjs/utils/color.js +1 -58
- package/lib/commonjs/utils/corners.js +1 -22
- package/lib/commonjs/utils/dimensions.js +1 -37
- package/lib/commonjs/utils/feedback.js +1 -76
- package/lib/commonjs/utils/hapticUtils.js +1 -94
- package/lib/commonjs/utils/hashString.js +1 -22
- package/lib/commonjs/utils/index.js +1 -178
- package/lib/commonjs/utils/mergeRefs.js +1 -24
- package/lib/commonjs/utils/responsive.js +1 -104
- package/lib/commonjs/utils/shadows.js +1 -61
- package/lib/commonjs/utils/spacing.js +1 -86
- package/lib/commonjs/utils/squircle.js +1 -158
- package/lib/commonjs/utils/warnUnknownProps.js +1 -46
- package/lib/module/components/Accordion/Accordion.js +1 -337
- package/lib/module/components/Accordion/index.js +1 -4
- package/lib/module/components/AmountSlider/AmountSlider.js +1 -205
- package/lib/module/components/AmountSlider/index.js +1 -4
- package/lib/module/components/AnimatePresence/AnimatePresence.js +1 -65
- package/lib/module/components/AnimatePresence/index.js +1 -4
- package/lib/module/components/AppBar/AppBar.js +1 -354
- package/lib/module/components/AppBar/index.js +1 -4
- package/lib/module/components/AppIcon/AppIcon.js +1 -136
- package/lib/module/components/AppIcon/catalog/bold/a.g.js +1 -80
- package/lib/module/components/AppIcon/catalog/bold/b.g.js +1 -85
- package/lib/module/components/AppIcon/catalog/bold/c.g.js +1 -114
- package/lib/module/components/AppIcon/catalog/bold/d.g.js +1 -64
- package/lib/module/components/AppIcon/catalog/bold/e.g.js +1 -42
- package/lib/module/components/AppIcon/catalog/bold/f.g.js +1 -48
- package/lib/module/components/AppIcon/catalog/bold/g.g.js +1 -50
- package/lib/module/components/AppIcon/catalog/bold/h.g.js +1 -48
- package/lib/module/components/AppIcon/catalog/bold/i.g.js +1 -27
- package/lib/module/components/AppIcon/catalog/bold/j.g.js +1 -14
- package/lib/module/components/AppIcon/catalog/bold/k.g.js +1 -16
- package/lib/module/components/AppIcon/catalog/bold/l.g.js +1 -48
- package/lib/module/components/AppIcon/catalog/bold/m.g.js +1 -101
- package/lib/module/components/AppIcon/catalog/bold/n.g.js +1 -30
- package/lib/module/components/AppIcon/catalog/bold/o.g.js +1 -17
- package/lib/module/components/AppIcon/catalog/bold/p.g.js +1 -56
- package/lib/module/components/AppIcon/catalog/bold/q.g.js +1 -18
- package/lib/module/components/AppIcon/catalog/bold/r.g.js +1 -55
- package/lib/module/components/AppIcon/catalog/bold/s.g.js +1 -109
- package/lib/module/components/AppIcon/catalog/bold/t.g.js +1 -70
- package/lib/module/components/AppIcon/catalog/bold/u.g.js +1 -24
- package/lib/module/components/AppIcon/catalog/bold/v.g.js +1 -36
- package/lib/module/components/AppIcon/catalog/bold/w.g.js +1 -37
- package/lib/module/components/AppIcon/catalog/bold/x.g.js +1 -14
- package/lib/module/components/AppIcon/catalog/bold/y.g.js +1 -12
- package/lib/module/components/AppIcon/catalog/bold/z.g.js +1 -13
- package/lib/module/components/AppIcon/catalog/broken/a.g.js +1 -80
- package/lib/module/components/AppIcon/catalog/broken/b.g.js +1 -85
- package/lib/module/components/AppIcon/catalog/broken/c.g.js +1 -114
- package/lib/module/components/AppIcon/catalog/broken/d.g.js +1 -64
- package/lib/module/components/AppIcon/catalog/broken/e.g.js +1 -42
- package/lib/module/components/AppIcon/catalog/broken/f.g.js +1 -48
- package/lib/module/components/AppIcon/catalog/broken/g.g.js +1 -50
- package/lib/module/components/AppIcon/catalog/broken/h.g.js +1 -48
- package/lib/module/components/AppIcon/catalog/broken/i.g.js +1 -27
- package/lib/module/components/AppIcon/catalog/broken/j.g.js +1 -14
- package/lib/module/components/AppIcon/catalog/broken/k.g.js +1 -16
- package/lib/module/components/AppIcon/catalog/broken/l.g.js +1 -48
- package/lib/module/components/AppIcon/catalog/broken/m.g.js +1 -101
- package/lib/module/components/AppIcon/catalog/broken/n.g.js +1 -30
- package/lib/module/components/AppIcon/catalog/broken/o.g.js +1 -17
- package/lib/module/components/AppIcon/catalog/broken/p.g.js +1 -56
- package/lib/module/components/AppIcon/catalog/broken/q.g.js +1 -18
- package/lib/module/components/AppIcon/catalog/broken/r.g.js +1 -55
- package/lib/module/components/AppIcon/catalog/broken/s.g.js +1 -109
- package/lib/module/components/AppIcon/catalog/broken/t.g.js +1 -70
- package/lib/module/components/AppIcon/catalog/broken/u.g.js +1 -24
- package/lib/module/components/AppIcon/catalog/broken/v.g.js +1 -36
- package/lib/module/components/AppIcon/catalog/broken/w.g.js +1 -37
- package/lib/module/components/AppIcon/catalog/broken/x.g.js +1 -14
- package/lib/module/components/AppIcon/catalog/broken/y.g.js +1 -12
- package/lib/module/components/AppIcon/catalog/broken/z.g.js +1 -13
- package/lib/module/components/AppIcon/catalog/bulk/a.g.js +1 -80
- package/lib/module/components/AppIcon/catalog/bulk/b.g.js +1 -85
- package/lib/module/components/AppIcon/catalog/bulk/c.g.js +1 -114
- package/lib/module/components/AppIcon/catalog/bulk/d.g.js +1 -64
- package/lib/module/components/AppIcon/catalog/bulk/e.g.js +1 -42
- package/lib/module/components/AppIcon/catalog/bulk/f.g.js +1 -48
- package/lib/module/components/AppIcon/catalog/bulk/g.g.js +1 -50
- package/lib/module/components/AppIcon/catalog/bulk/h.g.js +1 -48
- package/lib/module/components/AppIcon/catalog/bulk/i.g.js +1 -27
- package/lib/module/components/AppIcon/catalog/bulk/j.g.js +1 -14
- package/lib/module/components/AppIcon/catalog/bulk/k.g.js +1 -16
- package/lib/module/components/AppIcon/catalog/bulk/l.g.js +1 -48
- package/lib/module/components/AppIcon/catalog/bulk/m.g.js +1 -101
- package/lib/module/components/AppIcon/catalog/bulk/n.g.js +1 -30
- package/lib/module/components/AppIcon/catalog/bulk/o.g.js +1 -17
- package/lib/module/components/AppIcon/catalog/bulk/p.g.js +1 -56
- package/lib/module/components/AppIcon/catalog/bulk/q.g.js +1 -18
- package/lib/module/components/AppIcon/catalog/bulk/r.g.js +1 -55
- package/lib/module/components/AppIcon/catalog/bulk/s.g.js +1 -109
- package/lib/module/components/AppIcon/catalog/bulk/t.g.js +1 -70
- package/lib/module/components/AppIcon/catalog/bulk/u.g.js +1 -24
- package/lib/module/components/AppIcon/catalog/bulk/v.g.js +1 -36
- package/lib/module/components/AppIcon/catalog/bulk/w.g.js +1 -37
- package/lib/module/components/AppIcon/catalog/bulk/x.g.js +1 -14
- package/lib/module/components/AppIcon/catalog/bulk/y.g.js +1 -12
- package/lib/module/components/AppIcon/catalog/bulk/z.g.js +1 -13
- package/lib/module/components/AppIcon/catalog/linear/a.g.js +1 -80
- package/lib/module/components/AppIcon/catalog/linear/b.g.js +1 -85
- package/lib/module/components/AppIcon/catalog/linear/c.g.js +1 -114
- package/lib/module/components/AppIcon/catalog/linear/d.g.js +1 -64
- package/lib/module/components/AppIcon/catalog/linear/e.g.js +1 -42
- package/lib/module/components/AppIcon/catalog/linear/f.g.js +1 -48
- package/lib/module/components/AppIcon/catalog/linear/g.g.js +1 -50
- package/lib/module/components/AppIcon/catalog/linear/h.g.js +1 -48
- package/lib/module/components/AppIcon/catalog/linear/i.g.js +1 -27
- package/lib/module/components/AppIcon/catalog/linear/j.g.js +1 -14
- package/lib/module/components/AppIcon/catalog/linear/k.g.js +1 -16
- package/lib/module/components/AppIcon/catalog/linear/l.g.js +1 -48
- package/lib/module/components/AppIcon/catalog/linear/m.g.js +1 -101
- package/lib/module/components/AppIcon/catalog/linear/n.g.js +1 -30
- package/lib/module/components/AppIcon/catalog/linear/o.g.js +1 -17
- package/lib/module/components/AppIcon/catalog/linear/p.g.js +1 -56
- package/lib/module/components/AppIcon/catalog/linear/q.g.js +1 -18
- package/lib/module/components/AppIcon/catalog/linear/r.g.js +1 -55
- package/lib/module/components/AppIcon/catalog/linear/s.g.js +1 -109
- package/lib/module/components/AppIcon/catalog/linear/t.g.js +1 -70
- package/lib/module/components/AppIcon/catalog/linear/u.g.js +1 -24
- package/lib/module/components/AppIcon/catalog/linear/v.g.js +1 -36
- package/lib/module/components/AppIcon/catalog/linear/w.g.js +1 -37
- package/lib/module/components/AppIcon/catalog/linear/x.g.js +1 -14
- package/lib/module/components/AppIcon/catalog/linear/y.g.js +1 -12
- package/lib/module/components/AppIcon/catalog/linear/z.g.js +1 -13
- package/lib/module/components/AppIcon/catalog/outline/a.g.js +1 -80
- package/lib/module/components/AppIcon/catalog/outline/b.g.js +1 -85
- package/lib/module/components/AppIcon/catalog/outline/c.g.js +1 -114
- package/lib/module/components/AppIcon/catalog/outline/d.g.js +1 -64
- package/lib/module/components/AppIcon/catalog/outline/e.g.js +1 -42
- package/lib/module/components/AppIcon/catalog/outline/f.g.js +1 -48
- package/lib/module/components/AppIcon/catalog/outline/g.g.js +1 -50
- package/lib/module/components/AppIcon/catalog/outline/h.g.js +1 -48
- package/lib/module/components/AppIcon/catalog/outline/i.g.js +1 -27
- package/lib/module/components/AppIcon/catalog/outline/j.g.js +1 -14
- package/lib/module/components/AppIcon/catalog/outline/k.g.js +1 -16
- package/lib/module/components/AppIcon/catalog/outline/l.g.js +1 -48
- package/lib/module/components/AppIcon/catalog/outline/m.g.js +1 -101
- package/lib/module/components/AppIcon/catalog/outline/n.g.js +1 -30
- package/lib/module/components/AppIcon/catalog/outline/o.g.js +1 -17
- package/lib/module/components/AppIcon/catalog/outline/p.g.js +1 -56
- package/lib/module/components/AppIcon/catalog/outline/q.g.js +1 -18
- package/lib/module/components/AppIcon/catalog/outline/r.g.js +1 -55
- package/lib/module/components/AppIcon/catalog/outline/s.g.js +1 -109
- package/lib/module/components/AppIcon/catalog/outline/t.g.js +1 -70
- package/lib/module/components/AppIcon/catalog/outline/u.g.js +1 -24
- package/lib/module/components/AppIcon/catalog/outline/v.g.js +1 -36
- package/lib/module/components/AppIcon/catalog/outline/w.g.js +1 -37
- package/lib/module/components/AppIcon/catalog/outline/x.g.js +1 -14
- package/lib/module/components/AppIcon/catalog/outline/y.g.js +1 -12
- package/lib/module/components/AppIcon/catalog/outline/z.g.js +1 -13
- package/lib/module/components/AppIcon/catalog/twotone/a.g.js +1 -80
- package/lib/module/components/AppIcon/catalog/twotone/b.g.js +1 -85
- package/lib/module/components/AppIcon/catalog/twotone/c.g.js +1 -114
- package/lib/module/components/AppIcon/catalog/twotone/d.g.js +1 -64
- package/lib/module/components/AppIcon/catalog/twotone/e.g.js +1 -42
- package/lib/module/components/AppIcon/catalog/twotone/f.g.js +1 -48
- package/lib/module/components/AppIcon/catalog/twotone/g.g.js +1 -50
- package/lib/module/components/AppIcon/catalog/twotone/h.g.js +1 -48
- package/lib/module/components/AppIcon/catalog/twotone/i.g.js +1 -27
- package/lib/module/components/AppIcon/catalog/twotone/j.g.js +1 -14
- package/lib/module/components/AppIcon/catalog/twotone/k.g.js +1 -16
- package/lib/module/components/AppIcon/catalog/twotone/l.g.js +1 -48
- package/lib/module/components/AppIcon/catalog/twotone/m.g.js +1 -101
- package/lib/module/components/AppIcon/catalog/twotone/n.g.js +1 -30
- package/lib/module/components/AppIcon/catalog/twotone/o.g.js +1 -17
- package/lib/module/components/AppIcon/catalog/twotone/p.g.js +1 -56
- package/lib/module/components/AppIcon/catalog/twotone/q.g.js +1 -18
- package/lib/module/components/AppIcon/catalog/twotone/r.g.js +1 -55
- package/lib/module/components/AppIcon/catalog/twotone/s.g.js +1 -109
- package/lib/module/components/AppIcon/catalog/twotone/t.g.js +1 -70
- package/lib/module/components/AppIcon/catalog/twotone/u.g.js +1 -24
- package/lib/module/components/AppIcon/catalog/twotone/v.g.js +1 -36
- package/lib/module/components/AppIcon/catalog/twotone/w.g.js +1 -37
- package/lib/module/components/AppIcon/catalog/twotone/x.g.js +1 -14
- package/lib/module/components/AppIcon/catalog/twotone/y.g.js +1 -12
- package/lib/module/components/AppIcon/catalog/twotone/z.g.js +1 -13
- package/lib/module/components/AppIcon/catalog.g.js +1 -183
- package/lib/module/components/AppIcon/defaultIcons.js +1 -79
- package/lib/module/components/AppIcon/glyphs.g.js +1 -156
- package/lib/module/components/AppIcon/index.js +1 -6
- package/lib/module/components/AppIcon/slotIcon.js +1 -62
- package/lib/module/components/AppIcon/variants.g.js +1 -737
- package/lib/module/components/AsyncBlock/AsyncBlock.js +1 -81
- package/lib/module/components/AsyncBlock/index.js +1 -4
- package/lib/module/components/AuthedImage/AuthedImage.js +1 -226
- package/lib/module/components/AuthedImage/authedImageCache.js +1 -337
- package/lib/module/components/AuthedImage/index.js +1 -5
- package/lib/module/components/Autocomplete/Autocomplete.js +1 -222
- package/lib/module/components/Autocomplete/index.js +1 -4
- package/lib/module/components/Avatar/Avatar.js +1 -496
- package/lib/module/components/Avatar/index.js +1 -4
- package/lib/module/components/Badge/Badge.js +1 -294
- package/lib/module/components/Badge/index.js +1 -4
- package/lib/module/components/Banner/Banner.js +1 -397
- package/lib/module/components/Banner/index.js +1 -4
- package/lib/module/components/BottomNavigation/BottomNavigation.js +1 -889
- package/lib/module/components/BottomNavigation/index.js +1 -4
- package/lib/module/components/BottomSheet/BottomSheet.js +1 -727
- package/lib/module/components/BottomSheet/index.js +1 -4
- package/lib/module/components/Box/Box.js +1 -220
- package/lib/module/components/Box/index.js +1 -4
- package/lib/module/components/Button/Button.js +1 -557
- package/lib/module/components/Button/index.js +1 -4
- package/lib/module/components/Card/Card.js +1 -403
- package/lib/module/components/Card/index.js +1 -4
- package/lib/module/components/Carousel/Carousel.js +1 -583
- package/lib/module/components/Carousel/index.js +1 -4
- package/lib/module/components/Checkbox/Checkbox.js +1 -184
- package/lib/module/components/Checkbox/index.js +1 -4
- package/lib/module/components/Chip/Chip.js +1 -354
- package/lib/module/components/Chip/index.js +1 -4
- package/lib/module/components/ChoiceGroup/ChoiceGroup.js +1 -332
- package/lib/module/components/ChoiceGroup/index.js +1 -4
- package/lib/module/components/Confetti/Confetti.js +1 -377
- package/lib/module/components/Confetti/index.js +1 -4
- package/lib/module/components/DatePicker/DatePicker.js +1 -1049
- package/lib/module/components/DatePicker/index.js +1 -4
- package/lib/module/components/DateRangePicker/DateRangePicker.js +1 -791
- package/lib/module/components/DateRangePicker/index.js +1 -4
- package/lib/module/components/DecimalInput/DecimalInput.js +1 -0
- package/lib/module/components/DecimalInput/index.js +1 -0
- package/lib/module/components/Descriptions/Descriptions.js +1 -101
- package/lib/module/components/Descriptions/index.js +1 -4
- package/lib/module/components/Dialog/Dialog.js +1 -243
- package/lib/module/components/Dialog/index.js +1 -4
- package/lib/module/components/Divider/Divider.js +1 -114
- package/lib/module/components/Divider/index.js +1 -4
- package/lib/module/components/Drawer/Drawer.js +1 -378
- package/lib/module/components/Drawer/index.js +1 -4
- package/lib/module/components/EmptyState/EmptyState.js +1 -232
- package/lib/module/components/EmptyState/index.js +1 -4
- package/lib/module/components/ErrorBoundary/ErrorBoundary.js +1 -130
- package/lib/module/components/ErrorBoundary/index.js +1 -6
- package/lib/module/components/ErrorBoundary/useErrorHandler.js +1 -20
- package/lib/module/components/ErrorBoundary/withErrorBoundary.js +1 -23
- package/lib/module/components/FieldBase/Chevron.js +1 -69
- package/lib/module/components/FieldBase/ChoiceText.js +1 -0
- package/lib/module/components/FieldBase/FieldBase.js +1 -790
- package/lib/module/components/FieldBase/index.js +1 -5
- package/lib/module/components/FieldBase/useFloatingLabel.js +1 -177
- package/lib/module/components/FilePicker/FilePicker.js +1 -791
- package/lib/module/components/FilePicker/index.js +1 -4
- package/lib/module/components/FileViewer/FileViewer.js +1 -253
- package/lib/module/components/FileViewer/index.js +1 -4
- package/lib/module/components/FloatingActionButton/FloatingActionButton.js +1 -691
- package/lib/module/components/FloatingActionButton/index.js +1 -4
- package/lib/module/components/ForceUpdateDialog/ForceUpdateDialog.js +1 -84
- package/lib/module/components/ForceUpdateDialog/index.js +1 -4
- package/lib/module/components/FormField/FormField.js +1 -166
- package/lib/module/components/FormField/index.js +1 -4
- package/lib/module/components/IconBadge/IconBadge.js +1 -0
- package/lib/module/components/IconBadge/index.js +1 -0
- package/lib/module/components/IconButton/IconButton.js +1 -194
- package/lib/module/components/IconButton/index.js +1 -4
- package/lib/module/components/ImageGallery/ImageGallery.js +1 -589
- package/lib/module/components/ImageGallery/index.js +1 -4
- package/lib/module/components/InlineSelect/InlineSelect.js +1 -186
- package/lib/module/components/InlineSelect/index.js +1 -4
- package/lib/module/components/Input/Input.js +1 -587
- package/lib/module/components/Input/index.js +1 -4
- package/lib/module/components/KeyboardAwareScrollView/KeyboardAwareScrollView.js +1 -164
- package/lib/module/components/KeyboardAwareScrollView/index.js +1 -4
- package/lib/module/components/KeyboardToolbar/KeyboardToolbar.js +1 -130
- package/lib/module/components/KeyboardToolbar/index.js +1 -4
- package/lib/module/components/ListItem/ListItem.js +1 -340
- package/lib/module/components/ListItem/index.js +1 -4
- package/lib/module/components/LoaderOverlay/LoaderOverlay.js +1 -196
- package/lib/module/components/LoaderOverlay/index.js +1 -4
- package/lib/module/components/Markdown/Markdown.js +1 -270
- package/lib/module/components/Markdown/index.js +1 -4
- package/lib/module/components/Markdown/parse.js +1 -223
- package/lib/module/components/Modal/Modal.js +1 -372
- package/lib/module/components/Modal/index.js +1 -4
- package/lib/module/components/Notation/Notation.js +1 -0
- package/lib/module/components/Notation/index.js +1 -0
- package/lib/module/components/NumberInput/NumberInput.js +1 -382
- package/lib/module/components/NumberInput/index.js +1 -4
- package/lib/module/components/OTPInput/OTPInput.js +1 -445
- package/lib/module/components/OTPInput/index.js +1 -4
- package/lib/module/components/OptionSheet/OptionSheet.js +1 -714
- package/lib/module/components/OptionSheet/index.js +1 -0
- package/lib/module/components/PhoneNumberInput/PhoneNumberInput.js +1 -569
- package/lib/module/components/PhoneNumberInput/index.js +1 -4
- package/lib/module/components/PickerTrigger/PickerTrigger.js +1 -146
- package/lib/module/components/PickerTrigger/index.js +1 -4
- package/lib/module/components/ProfileCompletion/ProfileCompletion.js +1 -211
- package/lib/module/components/ProfileCompletion/index.js +1 -4
- package/lib/module/components/ProfilePicker/ProfilePicker.js +1 -526
- package/lib/module/components/ProfilePicker/index.js +1 -4
- package/lib/module/components/ProgressBar/ProgressBar.js +1 -199
- package/lib/module/components/ProgressBar/index.js +1 -4
- package/lib/module/components/ProgressRing/ProgressRing.js +1 -187
- package/lib/module/components/ProgressRing/index.js +1 -4
- package/lib/module/components/Radio/Radio.js +1 -123
- package/lib/module/components/Radio/RadioDot.js +1 -102
- package/lib/module/components/Radio/RadioGroup.js +1 -45
- package/lib/module/components/Radio/index.js +1 -6
- package/lib/module/components/Rating/Rating.js +1 -334
- package/lib/module/components/Rating/index.js +1 -4
- package/lib/module/components/Repeater/Repeater.js +1 -162
- package/lib/module/components/Repeater/index.js +1 -4
- package/lib/module/components/RichTextEditor/RichTextEditor.js +1 -309
- package/lib/module/components/RichTextEditor/index.js +1 -5
- package/lib/module/components/RichTextEditor/markdownActions.js +1 -207
- package/lib/module/components/SearchBar/SearchBar.js +1 -241
- package/lib/module/components/SearchBar/index.js +1 -4
- package/lib/module/components/SectionHeader/SectionHeader.js +1 -0
- package/lib/module/components/SectionHeader/index.js +1 -0
- package/lib/module/components/SegmentedControl/SegmentedControl.js +1 -317
- package/lib/module/components/SegmentedControl/index.js +1 -4
- package/lib/module/components/Select/Select.js +1 -273
- package/lib/module/components/Select/index.js +1 -4
- package/lib/module/components/Skeleton/Skeleton.js +1 -278
- package/lib/module/components/Skeleton/SkeletonClock.js +1 -111
- package/lib/module/components/Skeleton/SkeletonContent.js +1 -304
- package/lib/module/components/Skeleton/SkeletonList.js +1 -87
- package/lib/module/components/Skeleton/SkeletonProvider.js +1 -106
- package/lib/module/components/Skeleton/SkeletonSkip.js +1 -31
- package/lib/module/components/Skeleton/index.js +1 -9
- package/lib/module/components/SlideToConfirm/SlideToConfirm.js +1 -258
- package/lib/module/components/SlideToConfirm/index.js +1 -4
- package/lib/module/components/Slider/Slider.js +1 -805
- package/lib/module/components/Slider/index.js +1 -4
- package/lib/module/components/Slider/valueText.js +1 -258
- package/lib/module/components/SliderField/SliderField.js +1 -357
- package/lib/module/components/SliderField/index.js +1 -4
- package/lib/module/components/Spinner/Spinner.js +1 -199
- package/lib/module/components/Spinner/index.js +1 -4
- package/lib/module/components/SquircleFill/SquircleFill.js +1 -110
- package/lib/module/components/StatTile/StatTile.js +1 -0
- package/lib/module/components/StatTile/index.js +1 -0
- package/lib/module/components/StatusBadge/StatusBadge.js +1 -229
- package/lib/module/components/StatusBadge/index.js +1 -4
- package/lib/module/components/Stepper/Stepper.js +1 -775
- package/lib/module/components/Stepper/index.js +1 -4
- package/lib/module/components/Swipeable/Swipeable.js +1 -378
- package/lib/module/components/Swipeable/index.js +1 -4
- package/lib/module/components/Switch/Switch.js +1 -230
- package/lib/module/components/Switch/index.js +1 -4
- package/lib/module/components/Tabs/Tabs.js +1 -425
- package/lib/module/components/Tabs/index.js +1 -4
- package/lib/module/components/TagInput/TagInput.js +1 -181
- package/lib/module/components/TagInput/index.js +1 -4
- package/lib/module/components/Text/Text.js +1 -142
- package/lib/module/components/Text/index.js +1 -4
- package/lib/module/components/TimePicker/TimePicker.js +1 -726
- package/lib/module/components/TimePicker/index.js +1 -4
- package/lib/module/components/Timeline/Timeline.js +1 -257
- package/lib/module/components/Timeline/index.js +1 -4
- package/lib/module/components/Toast/Toast.js +1 -321
- package/lib/module/components/Toast/ToastProvider.js +1 -192
- package/lib/module/components/Toast/index.js +1 -5
- package/lib/module/components/Tooltip/Tooltip.js +1 -407
- package/lib/module/components/Tooltip/index.js +1 -4
- package/lib/module/components/Tour/Tour.js +1 -338
- package/lib/module/components/Tour/index.js +1 -4
- package/lib/module/components/ZoomableImage/ZoomableImage.js +1 -198
- package/lib/module/components/ZoomableImage/index.js +1 -4
- package/lib/module/components/index.js +1 -79
- package/lib/module/form/FormContext.js +1 -44
- package/lib/module/form/HookFormField.js +1 -0
- package/lib/module/form/equal.js +1 -51
- package/lib/module/form/index.js +1 -17
- package/lib/module/form/path.js +1 -84
- package/lib/module/form/rules.js +1 -59
- package/lib/module/form/types.js +0 -2
- package/lib/module/form/useField.js +1 -61
- package/lib/module/form/useForm.js +1 -375
- package/lib/module/form/useFormCompletion.js +1 -67
- package/lib/module/form/useHookFormField.js +1 -0
- package/lib/module/hooks/index.js +1 -10
- package/lib/module/hooks/useControllableState.js +1 -28
- package/lib/module/hooks/useDebounce.js +1 -12
- package/lib/module/hooks/useDragToDismiss.js +1 -137
- package/lib/module/hooks/useFlickGuard.js +1 -55
- package/lib/module/hooks/usePressAnimation.js +1 -126
- package/lib/module/hooks/useReducedMotion.js +1 -29
- package/lib/module/hooks/useToggle.js +1 -17
- package/lib/module/index.js +1 -18
- package/lib/module/initUI.js +1 -19
- package/lib/module/network/NetworkStatusBanner.js +1 -83
- package/lib/module/network/index.js +1 -4
- package/lib/module/specs/NativePdfRasterizer.js +1 -5
- package/lib/module/theme/Gradient.js +1 -52
- package/lib/module/theme/ThemeContext.js +1 -93
- package/lib/module/theme/animatedValue.js +1 -64
- package/lib/module/theme/index.js +1 -67
- package/lib/module/theme/merge.js +1 -25
- package/lib/module/theme/textStyle.js +1 -34
- package/lib/module/theme/tokens.js +1 -702
- package/lib/module/theme/types.js +1 -4
- package/lib/module/utils/color.js +1 -52
- package/lib/module/utils/corners.js +1 -18
- package/lib/module/utils/dimensions.js +1 -4
- package/lib/module/utils/feedback.js +1 -70
- package/lib/module/utils/hapticUtils.js +1 -86
- package/lib/module/utils/hashString.js +1 -17
- package/lib/module/utils/index.js +1 -13
- package/lib/module/utils/mergeRefs.js +1 -19
- package/lib/module/utils/responsive.js +1 -97
- package/lib/module/utils/shadows.js +1 -54
- package/lib/module/utils/spacing.js +1 -82
- package/lib/module/utils/squircle.js +1 -151
- package/lib/module/utils/warnUnknownProps.js +1 -42
- package/lib/typescript/commonjs/components/AppBar/AppBar.d.ts +42 -1
- package/lib/typescript/commonjs/components/AppIcon/AppIcon.d.ts +15 -2
- package/lib/typescript/commonjs/components/AppIcon/catalog.g.d.ts +1 -1
- package/lib/typescript/commonjs/components/AppIcon/glyphs.g.d.ts +62 -0
- package/lib/typescript/commonjs/components/AppIcon/index.d.ts +2 -2
- package/lib/typescript/commonjs/components/AppIcon/slotIcon.d.ts +9 -5
- package/lib/typescript/commonjs/components/AsyncBlock/AsyncBlock.d.ts +17 -1
- package/lib/typescript/commonjs/components/AsyncBlock/index.d.ts +1 -1
- package/lib/typescript/commonjs/components/AuthedImage/AuthedImage.d.ts +17 -2
- package/lib/typescript/commonjs/components/AuthedImage/authedImageCache.d.ts +12 -0
- package/lib/typescript/commonjs/components/Avatar/Avatar.d.ts +8 -5
- package/lib/typescript/commonjs/components/Banner/Banner.d.ts +28 -1
- package/lib/typescript/commonjs/components/Banner/index.d.ts +1 -1
- package/lib/typescript/commonjs/components/BottomSheet/BottomSheet.d.ts +44 -2
- package/lib/typescript/commonjs/components/BottomSheet/index.d.ts +1 -1
- package/lib/typescript/commonjs/components/Button/Button.d.ts +6 -0
- package/lib/typescript/commonjs/components/Card/Card.d.ts +31 -1
- package/lib/typescript/commonjs/components/Card/index.d.ts +1 -1
- package/lib/typescript/commonjs/components/Checkbox/Checkbox.d.ts +22 -4
- package/lib/typescript/commonjs/components/Chip/Chip.d.ts +19 -1
- package/lib/typescript/commonjs/components/Chip/index.d.ts +1 -1
- package/lib/typescript/commonjs/components/ChoiceGroup/ChoiceGroup.d.ts +31 -7
- package/lib/typescript/commonjs/components/ChoiceGroup/index.d.ts +1 -1
- package/lib/typescript/commonjs/components/DecimalInput/DecimalInput.d.ts +56 -0
- package/lib/typescript/commonjs/components/DecimalInput/index.d.ts +3 -0
- package/lib/typescript/commonjs/components/Descriptions/Descriptions.d.ts +15 -2
- package/lib/typescript/commonjs/components/Descriptions/index.d.ts +1 -1
- package/lib/typescript/commonjs/components/Dialog/Dialog.d.ts +6 -2
- package/lib/typescript/commonjs/components/EmptyState/EmptyState.d.ts +6 -0
- package/lib/typescript/commonjs/components/FieldBase/ChoiceText.d.ts +24 -0
- package/lib/typescript/commonjs/components/FieldBase/FieldBase.d.ts +24 -4
- package/lib/typescript/commonjs/components/FieldBase/index.d.ts +1 -1
- package/lib/typescript/commonjs/components/FieldBase/useFloatingLabel.d.ts +3 -1
- package/lib/typescript/commonjs/components/FormField/FormField.d.ts +15 -5
- package/lib/typescript/commonjs/components/IconBadge/IconBadge.d.ts +30 -0
- package/lib/typescript/commonjs/components/IconBadge/index.d.ts +3 -0
- package/lib/typescript/commonjs/components/IconButton/IconButton.d.ts +15 -8
- package/lib/typescript/commonjs/components/Input/Input.d.ts +33 -3
- package/lib/typescript/commonjs/components/KeyboardAwareScrollView/KeyboardAwareScrollView.d.ts +19 -22
- package/lib/typescript/commonjs/components/KeyboardAwareScrollView/index.d.ts +1 -1
- package/lib/typescript/commonjs/components/KeyboardToolbar/KeyboardToolbar.d.ts +15 -10
- package/lib/typescript/commonjs/components/ListItem/ListItem.d.ts +39 -2
- package/lib/typescript/commonjs/components/ListItem/index.d.ts +1 -1
- package/lib/typescript/commonjs/components/Notation/Notation.d.ts +27 -0
- package/lib/typescript/commonjs/components/Notation/index.d.ts +3 -0
- package/lib/typescript/commonjs/components/NumberInput/NumberInput.d.ts +11 -3
- package/lib/typescript/commonjs/components/OTPInput/OTPInput.d.ts +6 -0
- package/lib/typescript/commonjs/components/OptionSheet/OptionSheet.d.ts +11 -1
- package/lib/typescript/commonjs/components/OptionSheet/index.d.ts +3 -0
- package/lib/typescript/commonjs/components/PhoneNumberInput/PhoneNumberInput.d.ts +43 -7
- package/lib/typescript/commonjs/components/PhoneNumberInput/index.d.ts +2 -2
- package/lib/typescript/commonjs/components/PickerTrigger/PickerTrigger.d.ts +8 -6
- package/lib/typescript/commonjs/components/ProfilePicker/ProfilePicker.d.ts +3 -3
- package/lib/typescript/commonjs/components/ProgressBar/ProgressBar.d.ts +5 -0
- package/lib/typescript/commonjs/components/Radio/Radio.d.ts +4 -0
- package/lib/typescript/commonjs/components/Repeater/Repeater.d.ts +15 -1
- package/lib/typescript/commonjs/components/SearchBar/SearchBar.d.ts +2 -0
- package/lib/typescript/commonjs/components/SectionHeader/SectionHeader.d.ts +18 -0
- package/lib/typescript/commonjs/components/SectionHeader/index.d.ts +3 -0
- package/lib/typescript/commonjs/components/SegmentedControl/SegmentedControl.d.ts +7 -0
- package/lib/typescript/commonjs/components/Select/Select.d.ts +32 -2
- package/lib/typescript/commonjs/components/Slider/valueText.d.ts +3 -0
- package/lib/typescript/commonjs/components/StatTile/StatTile.d.ts +31 -0
- package/lib/typescript/commonjs/components/StatTile/index.d.ts +3 -0
- package/lib/typescript/commonjs/components/Stepper/Stepper.d.ts +7 -0
- package/lib/typescript/commonjs/components/Switch/Switch.d.ts +19 -0
- package/lib/typescript/commonjs/components/Switch/index.d.ts +1 -1
- package/lib/typescript/commonjs/components/Text/Text.d.ts +8 -3
- package/lib/typescript/commonjs/components/Toast/Toast.d.ts +6 -0
- package/lib/typescript/commonjs/components/Toast/ToastProvider.d.ts +24 -1
- package/lib/typescript/commonjs/components/Toast/index.d.ts +2 -2
- package/lib/typescript/commonjs/components/index.d.ts +26 -14
- package/lib/typescript/commonjs/form/FormContext.d.ts +10 -1
- package/lib/typescript/commonjs/form/HookFormField.d.ts +44 -0
- package/lib/typescript/commonjs/form/index.d.ts +4 -0
- package/lib/typescript/commonjs/form/useField.d.ts +6 -0
- package/lib/typescript/commonjs/form/useForm.d.ts +4 -0
- package/lib/typescript/commonjs/form/useHookFormField.d.ts +32 -0
- package/lib/typescript/commonjs/index.d.ts +5 -5
- package/lib/typescript/commonjs/network/NetworkStatusBanner.d.ts +6 -0
- package/lib/typescript/commonjs/theme/ThemeContext.d.ts +8 -0
- package/lib/typescript/commonjs/theme/index.d.ts +1 -1
- package/lib/typescript/commonjs/theme/types.d.ts +40 -1
- package/lib/typescript/module/components/AppBar/AppBar.d.ts +42 -1
- package/lib/typescript/module/components/AppIcon/AppIcon.d.ts +15 -2
- package/lib/typescript/module/components/AppIcon/catalog.g.d.ts +1 -1
- package/lib/typescript/module/components/AppIcon/glyphs.g.d.ts +62 -0
- package/lib/typescript/module/components/AppIcon/index.d.ts +2 -2
- package/lib/typescript/module/components/AppIcon/slotIcon.d.ts +9 -5
- package/lib/typescript/module/components/AsyncBlock/AsyncBlock.d.ts +17 -1
- package/lib/typescript/module/components/AsyncBlock/index.d.ts +1 -1
- package/lib/typescript/module/components/AuthedImage/AuthedImage.d.ts +17 -2
- package/lib/typescript/module/components/AuthedImage/authedImageCache.d.ts +12 -0
- package/lib/typescript/module/components/Avatar/Avatar.d.ts +8 -5
- package/lib/typescript/module/components/Banner/Banner.d.ts +28 -1
- package/lib/typescript/module/components/Banner/index.d.ts +1 -1
- package/lib/typescript/module/components/BottomSheet/BottomSheet.d.ts +44 -2
- package/lib/typescript/module/components/BottomSheet/index.d.ts +1 -1
- package/lib/typescript/module/components/Button/Button.d.ts +6 -0
- package/lib/typescript/module/components/Card/Card.d.ts +31 -1
- package/lib/typescript/module/components/Card/index.d.ts +1 -1
- package/lib/typescript/module/components/Checkbox/Checkbox.d.ts +22 -4
- package/lib/typescript/module/components/Chip/Chip.d.ts +19 -1
- package/lib/typescript/module/components/Chip/index.d.ts +1 -1
- package/lib/typescript/module/components/ChoiceGroup/ChoiceGroup.d.ts +31 -7
- package/lib/typescript/module/components/ChoiceGroup/index.d.ts +1 -1
- package/lib/typescript/module/components/DecimalInput/DecimalInput.d.ts +56 -0
- package/lib/typescript/module/components/DecimalInput/index.d.ts +3 -0
- package/lib/typescript/module/components/Descriptions/Descriptions.d.ts +15 -2
- package/lib/typescript/module/components/Descriptions/index.d.ts +1 -1
- package/lib/typescript/module/components/Dialog/Dialog.d.ts +6 -2
- package/lib/typescript/module/components/EmptyState/EmptyState.d.ts +6 -0
- package/lib/typescript/module/components/FieldBase/ChoiceText.d.ts +24 -0
- package/lib/typescript/module/components/FieldBase/FieldBase.d.ts +24 -4
- package/lib/typescript/module/components/FieldBase/index.d.ts +1 -1
- package/lib/typescript/module/components/FieldBase/useFloatingLabel.d.ts +3 -1
- package/lib/typescript/module/components/FormField/FormField.d.ts +15 -5
- package/lib/typescript/module/components/IconBadge/IconBadge.d.ts +30 -0
- package/lib/typescript/module/components/IconBadge/index.d.ts +3 -0
- package/lib/typescript/module/components/IconButton/IconButton.d.ts +15 -8
- package/lib/typescript/module/components/Input/Input.d.ts +33 -3
- package/lib/typescript/module/components/KeyboardAwareScrollView/KeyboardAwareScrollView.d.ts +19 -22
- package/lib/typescript/module/components/KeyboardAwareScrollView/index.d.ts +1 -1
- package/lib/typescript/module/components/KeyboardToolbar/KeyboardToolbar.d.ts +15 -10
- package/lib/typescript/module/components/ListItem/ListItem.d.ts +39 -2
- package/lib/typescript/module/components/ListItem/index.d.ts +1 -1
- package/lib/typescript/module/components/Notation/Notation.d.ts +27 -0
- package/lib/typescript/module/components/Notation/index.d.ts +3 -0
- package/lib/typescript/module/components/NumberInput/NumberInput.d.ts +11 -3
- package/lib/typescript/module/components/OTPInput/OTPInput.d.ts +6 -0
- package/lib/typescript/module/components/OptionSheet/OptionSheet.d.ts +11 -1
- package/lib/typescript/module/components/OptionSheet/index.d.ts +3 -0
- package/lib/typescript/module/components/PhoneNumberInput/PhoneNumberInput.d.ts +43 -7
- package/lib/typescript/module/components/PhoneNumberInput/index.d.ts +2 -2
- package/lib/typescript/module/components/PickerTrigger/PickerTrigger.d.ts +8 -6
- package/lib/typescript/module/components/ProfilePicker/ProfilePicker.d.ts +3 -3
- package/lib/typescript/module/components/ProgressBar/ProgressBar.d.ts +5 -0
- package/lib/typescript/module/components/Radio/Radio.d.ts +4 -0
- package/lib/typescript/module/components/Repeater/Repeater.d.ts +15 -1
- package/lib/typescript/module/components/SearchBar/SearchBar.d.ts +2 -0
- package/lib/typescript/module/components/SectionHeader/SectionHeader.d.ts +18 -0
- package/lib/typescript/module/components/SectionHeader/index.d.ts +3 -0
- package/lib/typescript/module/components/SegmentedControl/SegmentedControl.d.ts +7 -0
- package/lib/typescript/module/components/Select/Select.d.ts +32 -2
- package/lib/typescript/module/components/Slider/valueText.d.ts +3 -0
- package/lib/typescript/module/components/StatTile/StatTile.d.ts +31 -0
- package/lib/typescript/module/components/StatTile/index.d.ts +3 -0
- package/lib/typescript/module/components/Stepper/Stepper.d.ts +7 -0
- package/lib/typescript/module/components/Switch/Switch.d.ts +19 -0
- package/lib/typescript/module/components/Switch/index.d.ts +1 -1
- package/lib/typescript/module/components/Text/Text.d.ts +8 -3
- package/lib/typescript/module/components/Toast/Toast.d.ts +6 -0
- package/lib/typescript/module/components/Toast/ToastProvider.d.ts +24 -1
- package/lib/typescript/module/components/Toast/index.d.ts +2 -2
- package/lib/typescript/module/components/index.d.ts +26 -14
- package/lib/typescript/module/form/FormContext.d.ts +10 -1
- package/lib/typescript/module/form/HookFormField.d.ts +44 -0
- package/lib/typescript/module/form/index.d.ts +4 -0
- package/lib/typescript/module/form/useField.d.ts +6 -0
- package/lib/typescript/module/form/useForm.d.ts +4 -0
- package/lib/typescript/module/form/useHookFormField.d.ts +32 -0
- package/lib/typescript/module/index.d.ts +5 -5
- package/lib/typescript/module/network/NetworkStatusBanner.d.ts +6 -0
- package/lib/typescript/module/theme/ThemeContext.d.ts +8 -0
- package/lib/typescript/module/theme/index.d.ts +1 -1
- package/lib/typescript/module/theme/types.d.ts +40 -1
- package/package.json +14 -5
|
@@ -1,241 +1 @@
|
|
|
1
|
-
"
|
|
2
|
-
|
|
3
|
-
import { forwardRef, useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
4
|
-
import { Pressable, StyleSheet, TextInput, View } from 'react-native';
|
|
5
|
-
import { useDebounce } from "../../hooks/useDebounce.js";
|
|
6
|
-
import { useTheme } from "../../theme/index.js";
|
|
7
|
-
import { resolveHaptic, triggerHaptic } from "../../utils/hapticUtils.js";
|
|
8
|
-
import { mergeRefs } from "../../utils/mergeRefs.js";
|
|
9
|
-
import { defaultIcons } from "../AppIcon/defaultIcons.js";
|
|
10
|
-
import { renderSlotIcon } from "../AppIcon/slotIcon.js";
|
|
11
|
-
import { FieldBase, FieldLabel, resolveFieldSize, resolveFieldTextStyle, resolveVariantColors } from "../FieldBase/FieldBase.js";
|
|
12
|
-
import { useFloatingLabel } from "../FieldBase/useFloatingLabel.js";
|
|
13
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
14
|
-
const SearchBar = /*#__PURE__*/forwardRef((props, ref) => {
|
|
15
|
-
const {
|
|
16
|
-
value: rawValue,
|
|
17
|
-
onChangeText,
|
|
18
|
-
onSubmit,
|
|
19
|
-
placeholder = 'Search…',
|
|
20
|
-
autoFocus = false,
|
|
21
|
-
disabled = false,
|
|
22
|
-
onClear,
|
|
23
|
-
leftIcon,
|
|
24
|
-
debounceMs,
|
|
25
|
-
size = 'md',
|
|
26
|
-
variant: variantProp,
|
|
27
|
-
borderRadius: borderRadiusProp,
|
|
28
|
-
label,
|
|
29
|
-
labelMode = 'top',
|
|
30
|
-
labelStyle,
|
|
31
|
-
haptic,
|
|
32
|
-
style,
|
|
33
|
-
accessibilityLabel,
|
|
34
|
-
testID,
|
|
35
|
-
...rest
|
|
36
|
-
} = props;
|
|
37
|
-
const theme = useTheme();
|
|
38
|
-
// Resolution chain mirrors every other field-family control: caller prop →
|
|
39
|
-
// component-specific token (`components.searchBar.defaultVariant`) → shared
|
|
40
|
-
// field-family token (`components.field.defaultVariant`) → library default.
|
|
41
|
-
// Library default stays `'filled'` so SearchBar reads as the traditional
|
|
42
|
-
// pill-shaped, borderless search box when no theme opinion is expressed.
|
|
43
|
-
// `underline` is the field family's bottom-rule row: no fill, no pill, the
|
|
44
|
-
// magnifier and text flush with the rule's ends, like Input's underline.
|
|
45
|
-
const variant = variantProp ?? theme.components.searchBar?.defaultVariant ?? theme.components.field?.defaultVariant ?? 'filled';
|
|
46
|
-
const isUnderline = variant === 'underline';
|
|
47
|
-
const fieldTokens = resolveFieldSize(theme, size);
|
|
48
|
-
const sizeStyles = {
|
|
49
|
-
...fieldTokens,
|
|
50
|
-
...(theme.components.searchBar?.[size] ?? {})
|
|
51
|
-
};
|
|
52
|
-
const fieldText = resolveFieldTextStyle(theme, {
|
|
53
|
-
disabled
|
|
54
|
-
});
|
|
55
|
-
// A tap anywhere on the box (padding, icon, gap) focuses the input, not
|
|
56
|
-
// only a tap on its text.
|
|
57
|
-
const inputRef = useRef(null);
|
|
58
|
-
const setInputRef = useMemo(() => mergeRefs(inputRef, ref), [ref]);
|
|
59
|
-
const focusInput = useCallback(() => {
|
|
60
|
-
if (!disabled) {
|
|
61
|
-
inputRef.current?.focus();
|
|
62
|
-
}
|
|
63
|
-
}, [disabled]);
|
|
64
|
-
const styles = useMemo(() => buildStyles(theme), [theme]);
|
|
65
|
-
|
|
66
|
-
// Coerce nullable inputs to '' once at the top so every downstream read is
|
|
67
|
-
// a guaranteed string. Required when consumers pass `value={state}` where
|
|
68
|
-
// `state` may be `undefined` / `null` before being initialised.
|
|
69
|
-
const value = typeof rawValue === 'string' ? rawValue : '';
|
|
70
|
-
const [isFocused, setIsFocused] = useState(false);
|
|
71
|
-
const [internalValue, setInternalValue] = useState(value);
|
|
72
|
-
const debouncedValue = useDebounce(internalValue, debounceMs ?? 0);
|
|
73
|
-
|
|
74
|
-
// Equivalent-mutant note: removing the `debounceMs === undefined` guard
|
|
75
|
-
// below cannot change observable behaviour. `internalValue` is only ever
|
|
76
|
-
// read (via `displayValue`) when `debounceMs !== undefined`; without the
|
|
77
|
-
// guard, a non-debounced instance would keep resyncing `internalValue`
|
|
78
|
-
// from `value` on every prop change, but that resynced value is never
|
|
79
|
-
// displayed or sent anywhere while non-debounced, so no test can observe
|
|
80
|
-
// the difference.
|
|
81
|
-
// biome-ignore lint/correctness/useExhaustiveDependencies: syncs the internal draft FROM the `value` prop; adding `internalValue` would revert every keystroke while the debounce is still pending
|
|
82
|
-
useEffect(() => {
|
|
83
|
-
if (debounceMs === undefined) {
|
|
84
|
-
return;
|
|
85
|
-
}
|
|
86
|
-
if (value !== internalValue) {
|
|
87
|
-
setInternalValue(value);
|
|
88
|
-
}
|
|
89
|
-
}, [value, debounceMs]);
|
|
90
|
-
const lastSentRef = useRef(value);
|
|
91
|
-
useEffect(() => {
|
|
92
|
-
if (debounceMs === undefined) {
|
|
93
|
-
return;
|
|
94
|
-
}
|
|
95
|
-
if (debouncedValue === lastSentRef.current) {
|
|
96
|
-
return;
|
|
97
|
-
}
|
|
98
|
-
lastSentRef.current = debouncedValue;
|
|
99
|
-
onChangeText(debouncedValue);
|
|
100
|
-
}, [debouncedValue, debounceMs, onChangeText]);
|
|
101
|
-
const handleChangeText = useCallback(text => {
|
|
102
|
-
if (debounceMs !== undefined) {
|
|
103
|
-
setInternalValue(text);
|
|
104
|
-
return;
|
|
105
|
-
}
|
|
106
|
-
onChangeText(text);
|
|
107
|
-
}, [debounceMs, onChangeText]);
|
|
108
|
-
const handleClear = useCallback(() => {
|
|
109
|
-
const h = resolveHaptic(haptic, 'selection');
|
|
110
|
-
if (h) {
|
|
111
|
-
triggerHaptic(h);
|
|
112
|
-
}
|
|
113
|
-
if (debounceMs !== undefined) {
|
|
114
|
-
setInternalValue('');
|
|
115
|
-
lastSentRef.current = '';
|
|
116
|
-
}
|
|
117
|
-
onChangeText('');
|
|
118
|
-
onClear?.();
|
|
119
|
-
}, [haptic, debounceMs, onChangeText, onClear]);
|
|
120
|
-
const handleSubmit = useCallback(() => {
|
|
121
|
-
onSubmit?.(debounceMs !== undefined ? internalValue : value);
|
|
122
|
-
}, [onSubmit, debounceMs, internalValue, value]);
|
|
123
|
-
const displayValue = debounceMs !== undefined ? internalValue : value;
|
|
124
|
-
const hasValue = displayValue.length > 0;
|
|
125
|
-
const leadingState = {
|
|
126
|
-
size: sizeStyles.iconSize,
|
|
127
|
-
color: disabled ? theme.colors.text.disabled : theme.colors.text.tertiary,
|
|
128
|
-
disabled
|
|
129
|
-
};
|
|
130
|
-
const leading = leftIcon ? renderSlotIcon(leftIcon, leadingState) : (theme.icons?.search ?? defaultIcons.search)(leadingState);
|
|
131
|
-
|
|
132
|
-
// Floating label: rests over the text past the magnifier, rises on focus or
|
|
133
|
-
// value; the outlined pill gets the field family's notch. Static labels use
|
|
134
|
-
// FieldLabel above the row.
|
|
135
|
-
const showFloatingLabel = Boolean(label) && labelMode === 'float';
|
|
136
|
-
const floating = useFloatingLabel({
|
|
137
|
-
label,
|
|
138
|
-
enabled: showFloatingLabel,
|
|
139
|
-
floated: isFocused || hasValue,
|
|
140
|
-
variant,
|
|
141
|
-
sizeTokens: {
|
|
142
|
-
...fieldTokens,
|
|
143
|
-
...sizeStyles
|
|
144
|
-
},
|
|
145
|
-
leadingOffset: sizeStyles.iconSize + theme.spacing.md,
|
|
146
|
-
trailingOffset: hasValue ? sizeStyles.iconSize + theme.spacing.md : 0,
|
|
147
|
-
paddingLeft: isUnderline ? 0 : sizeStyles.paddingHorizontal,
|
|
148
|
-
color: theme.colors.field.label,
|
|
149
|
-
style: labelStyle
|
|
150
|
-
});
|
|
151
|
-
const trailing = hasValue && !disabled ? /*#__PURE__*/_jsx(Pressable, {
|
|
152
|
-
onPress: handleClear,
|
|
153
|
-
hitSlop: 8,
|
|
154
|
-
accessibilityRole: "button",
|
|
155
|
-
accessibilityLabel: "Clear search",
|
|
156
|
-
children: (theme.icons?.close ?? defaultIcons.close)({
|
|
157
|
-
size: sizeStyles.iconSize,
|
|
158
|
-
color: theme.colors.text.secondary
|
|
159
|
-
})
|
|
160
|
-
}) : null;
|
|
161
|
-
return /*#__PURE__*/_jsxs(View, {
|
|
162
|
-
style: style,
|
|
163
|
-
testID: testID,
|
|
164
|
-
children: [label && !showFloatingLabel ? /*#__PURE__*/_jsx(FieldLabel, {
|
|
165
|
-
size: size,
|
|
166
|
-
style: labelStyle,
|
|
167
|
-
children: label
|
|
168
|
-
}) : null, /*#__PURE__*/_jsx(View, {
|
|
169
|
-
style: styles.root,
|
|
170
|
-
children: /*#__PURE__*/_jsxs(View, {
|
|
171
|
-
style: styles.fieldWrap,
|
|
172
|
-
children: [/*#__PURE__*/_jsx(FieldBase, {
|
|
173
|
-
size: size,
|
|
174
|
-
variant: variant,
|
|
175
|
-
focused: isFocused,
|
|
176
|
-
disabled: disabled,
|
|
177
|
-
filled: hasValue,
|
|
178
|
-
minHeight: sizeStyles.minHeight,
|
|
179
|
-
paddingHorizontal: isUnderline ? 0 : sizeStyles.paddingHorizontal,
|
|
180
|
-
borderRadius: borderRadiusProp ?? sizeStyles.borderRadius,
|
|
181
|
-
leading: leading,
|
|
182
|
-
trailing: trailing,
|
|
183
|
-
topNotch: floating.topNotch,
|
|
184
|
-
onPress: focusInput,
|
|
185
|
-
pressFeedback: false,
|
|
186
|
-
accessibilityRole: "search",
|
|
187
|
-
accessibilityLabel: accessibilityLabel ?? placeholder,
|
|
188
|
-
children: /*#__PURE__*/_jsx(TextInput, {
|
|
189
|
-
ref: setInputRef,
|
|
190
|
-
style: [styles.input, {
|
|
191
|
-
fontSize: sizeStyles.fontSize,
|
|
192
|
-
color: fieldText.color,
|
|
193
|
-
...fieldText.weightStyle
|
|
194
|
-
}],
|
|
195
|
-
value: displayValue,
|
|
196
|
-
onChangeText: handleChangeText,
|
|
197
|
-
onSubmitEditing: handleSubmit,
|
|
198
|
-
onFocus: () => setIsFocused(true),
|
|
199
|
-
onBlur: () => setIsFocused(false),
|
|
200
|
-
placeholder: showFloatingLabel && !(isFocused || hasValue) ? undefined : placeholder,
|
|
201
|
-
placeholderTextColor: fieldText.placeholderColor,
|
|
202
|
-
autoFocus: autoFocus,
|
|
203
|
-
editable: !disabled,
|
|
204
|
-
returnKeyType: "search",
|
|
205
|
-
selectionColor: resolveVariantColors(theme, variant).borderFocusedRepresentative,
|
|
206
|
-
accessibilityLabel: accessibilityLabel ?? placeholder,
|
|
207
|
-
accessibilityState: {
|
|
208
|
-
disabled
|
|
209
|
-
},
|
|
210
|
-
...rest
|
|
211
|
-
})
|
|
212
|
-
}), floating.node]
|
|
213
|
-
})
|
|
214
|
-
})]
|
|
215
|
-
});
|
|
216
|
-
});
|
|
217
|
-
SearchBar.displayName = 'SearchBar';
|
|
218
|
-
const buildStyles = _theme => StyleSheet.create({
|
|
219
|
-
root: {
|
|
220
|
-
flexDirection: 'row',
|
|
221
|
-
alignItems: 'center',
|
|
222
|
-
width: '100%',
|
|
223
|
-
position: 'relative',
|
|
224
|
-
// The floated label sits over the box's top edge.
|
|
225
|
-
overflow: 'visible'
|
|
226
|
-
},
|
|
227
|
-
fieldWrap: {
|
|
228
|
-
flex: 1,
|
|
229
|
-
position: 'relative',
|
|
230
|
-
overflow: 'visible'
|
|
231
|
-
},
|
|
232
|
-
input: {
|
|
233
|
-
flex: 1,
|
|
234
|
-
padding: 0,
|
|
235
|
-
margin: 0,
|
|
236
|
-
includeFontPadding: false
|
|
237
|
-
}
|
|
238
|
-
});
|
|
239
|
-
export { SearchBar };
|
|
240
|
-
export default SearchBar;
|
|
241
|
-
//# sourceMappingURL=SearchBar.js.map
|
|
1
|
+
import{forwardRef as e,useCallback as o,useEffect as i,useMemo as t,useRef as l,useState as r}from"react";import{Pressable as s,StyleSheet as a,TextInput as n,View as c}from"react-native";import{useDebounce as d}from"../../hooks/useDebounce.js";import{useTheme as p}from"../../theme/index.js";import{resolveHaptic as u,triggerHaptic as f}from"../../utils/hapticUtils.js";import{mergeRefs as m}from"../../utils/mergeRefs.js";import{defaultIcons as b}from"../AppIcon/defaultIcons.js";import{renderSlotIcon as h}from"../AppIcon/slotIcon.js";import{FieldBase as g,FieldLabel as y,resolveFieldSize as v,resolveFieldTextStyle as x,resolveVariantColors as z}from"../FieldBase/FieldBase.js";import{useFloatingLabel as S}from"../FieldBase/useFloatingLabel.js";import{jsx as j,jsxs as F}from"react/jsx-runtime";const B=e((e,a)=>{const{value:B,onChangeText:I,onSubmit:C,placeholder:R="Search…",autoFocus:L=!1,disabled:w=!1,onClear:H,leftIcon:T,debounceMs:D,size:k="md",variant:N,borderRadius:P,label:A,labelMode:M="top",labelStyle:O,haptic:V,style:W,inputStyle:E,accessibilityLabel:K,testID:U,...q}=e,G=p(),J=N??G.components.searchBar?.defaultVariant??G.components.field?.defaultVariant??"filled",Q="underline"===J,X=v(G,k),Y={...X,...G.components.searchBar?.[k]??{}},Z=x(G,{disabled:w}),$=l(null),_=t(()=>m($,a),[a]),ee=o(()=>{w||$.current?.focus()},[w]),oe=t(()=>buildStyles(G),[G]),ie="string"==typeof B?B:"",[te,le]=r(!1),[re,se]=r(ie),ae=d(re,D??0);i(()=>{void 0!==D&&ie!==re&&se(ie)},[ie,D]);const ne=l(ie);i(()=>{void 0!==D&&ae!==ne.current&&(ne.current=ae,I(ae))},[ae,D,I]);const ce=o(e=>{void 0===D?I(e):se(e)},[D,I]),de=o(()=>{const e=u(V,"selection");e&&f(e),void 0!==D&&(se(""),ne.current=""),I(""),H?.()},[V,D,I,H]),pe=o(()=>{C?.(void 0!==D?re:ie)},[C,D,re,ie]),ue=void 0!==D?re:ie,fe=ue.length>0,me={size:Y.iconSize,color:w?G.colors.text.disabled:G.colors.text.tertiary,disabled:w},be=T?h(T,me):(G.icons?.search??b.search)(me),he=Boolean(A)&&"float"===M,ge=S({label:A,enabled:he,floated:te||fe,variant:J,sizeTokens:{...X,...Y},leadingOffset:Y.iconSize+G.spacing.md,trailingOffset:fe?Y.iconSize+G.spacing.md:0,paddingLeft:Q?0:Y.paddingHorizontal,color:G.colors.field.label,style:O}),ye=fe&&!w?j(s,{onPress:de,hitSlop:8,accessibilityRole:"button",accessibilityLabel:"Clear search",children:(G.icons?.close??b.close)({size:Y.iconSize,color:G.colors.text.secondary})}):null;return F(c,{style:W,testID:U,children:[A&&!he?j(y,{size:k,style:O,children:A}):null,j(c,{style:oe.root,children:F(c,{style:oe.fieldWrap,children:[j(g,{size:k,variant:J,focused:te,disabled:w,filled:fe,minHeight:Y.minHeight,paddingHorizontal:Q?0:Y.paddingHorizontal,borderRadius:P??Y.borderRadius,leading:be,trailing:ye,topNotch:ge.topNotch,onPress:ee,pressFeedback:!1,accessibilityRole:"search",accessibilityLabel:K??R,children:j(n,{ref:_,style:[oe.input,{fontSize:Y.fontSize,color:Z.color,...Z.weightStyle},E],value:ue,onChangeText:ce,onSubmitEditing:pe,onFocus:()=>le(!0),onBlur:()=>le(!1),placeholder:!he||te||fe?R:void 0,placeholderTextColor:Z.placeholderColor,autoFocus:L,editable:!w,returnKeyType:"search",selectionColor:z(G,J).borderFocusedRepresentative,accessibilityLabel:K??R,accessibilityState:{disabled:w},...q})}),ge.node]})})]})});B.displayName="SearchBar";const buildStyles=e=>a.create({root:{flexDirection:"row",alignItems:"center",width:"100%",position:"relative",overflow:"visible"},fieldWrap:{flex:1,position:"relative",overflow:"visible"},input:{flex:1,padding:0,margin:0,includeFontPadding:!1}});export{B as SearchBar};export default B;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import e,{useMemo as t}from"react";import{useTheme as i}from"../../theme/index.js";import{RequiredMark as r}from"../FieldBase/index.js";import{Text as o}from"../Text/Text.js";import{jsx as a,jsxs as s}from"react/jsx-runtime";export const SectionHeader=({children:e,variant:l="title",flush:n=!1,required:c=!1,style:m,testID:d})=>{const p=i(),g=t(()=>({marginTop:n?0:p.spacing.lg,marginBottom:p.spacing.sm}),[p,n]),v="caps"===l?{variant:"overline",color:"tertiary",weight:void 0}:"sub"===l?{variant:"label",color:"primary",weight:"semibold"}:{variant:"title",color:void 0,weight:void 0};return s(o,{variant:v.variant,color:v.color,weight:v.weight,accessibilityRole:"header",accessibilityLabel:c&&"string"==typeof e?`${e}, required`:void 0,style:[g,m],testID:d,children:[e,c?a(r,{}):null]})};export default SectionHeader;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{default,SectionHeader}from"./SectionHeader.js";
|
|
@@ -1,317 +1 @@
|
|
|
1
|
-
"
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* SegmentedControl — iOS-style segmented control.
|
|
5
|
-
*
|
|
6
|
-
* Rounded container with equal-width segments and an animated thumb that
|
|
7
|
-
* springs between selected segments. Theme-aware, dark-mode friendly,
|
|
8
|
-
* fully accessible (radiogroup / radio roles + selected state).
|
|
9
|
-
*
|
|
10
|
-
* The `variant` prop borrows Tabs' other two looks: `underline` slides a bar
|
|
11
|
-
* under the selected label above a hairline divider, `pills` slides a tinted
|
|
12
|
-
* pill behind it. Both drop the filled track and its inset; the indicator is
|
|
13
|
-
* the same Animated.View as the thumb, drawn with that look's colour, corner
|
|
14
|
-
* and vertical extent. It is a look, not a semantic change: the roles stay
|
|
15
|
-
* radiogroup / radio, and screen navigation is still Tabs.
|
|
16
|
-
*/
|
|
17
|
-
|
|
18
|
-
import { forwardRef, useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
19
|
-
import { Animated, Pressable, StyleSheet, Text, View } from 'react-native';
|
|
20
|
-
import { useControllableState } from "../../hooks/index.js";
|
|
21
|
-
import { createAnimatedValue, useTheme } from "../../theme/index.js";
|
|
22
|
-
import { resolveHaptic, triggerHaptic } from "../../utils/index.js";
|
|
23
|
-
import { smoothCorners } from "../../utils/corners.js";
|
|
24
|
-
import { renderSlotIcon } from "../AppIcon/slotIcon.js";
|
|
25
|
-
import { SquircleFill, useSquircle } from "../SquircleFill/SquircleFill.js";
|
|
26
|
-
|
|
27
|
-
/** The same three looks as `Tabs`; `segmented` is the filled track with a thumb. */
|
|
28
|
-
|
|
29
|
-
/** A theme radius token or a pixel number. */
|
|
30
|
-
|
|
31
|
-
/** What a segment knows about itself when it draws its icon. */
|
|
32
|
-
|
|
33
|
-
/**
|
|
34
|
-
* A segment icon speaks the library's slot language: an AppIcon name
|
|
35
|
-
* (`icon: 'sun-1'`), `{ name, variant }`, a render function that gets
|
|
36
|
-
* `{ color, size, selected, disabled }`, or any node drawn as is. A name is
|
|
37
|
-
* drawn in the label's colour at the size's icon size.
|
|
38
|
-
*/
|
|
39
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
40
|
-
/**
|
|
41
|
-
* The control's sizes. Exported so `Tabs`' segmented variant draws from the
|
|
42
|
-
* same numbers and the two looks cannot drift.
|
|
43
|
-
*/
|
|
44
|
-
export const segmentedControlSizes = {
|
|
45
|
-
sm: {
|
|
46
|
-
height: 32,
|
|
47
|
-
fontSize: 12,
|
|
48
|
-
paddingHorizontal: 10,
|
|
49
|
-
iconSize: 14
|
|
50
|
-
},
|
|
51
|
-
md: {
|
|
52
|
-
height: 40,
|
|
53
|
-
fontSize: 14,
|
|
54
|
-
paddingHorizontal: 14,
|
|
55
|
-
iconSize: 16
|
|
56
|
-
},
|
|
57
|
-
lg: {
|
|
58
|
-
height: 48,
|
|
59
|
-
fontSize: 16,
|
|
60
|
-
paddingHorizontal: 18,
|
|
61
|
-
iconSize: 18
|
|
62
|
-
}
|
|
63
|
-
};
|
|
64
|
-
|
|
65
|
-
/** Inset between the track edge and the thumb; also read by `Tabs`' segmented variant. */
|
|
66
|
-
export const segmentedControlTrackPadding = 4;
|
|
67
|
-
const sizeMap = segmentedControlSizes;
|
|
68
|
-
const TRACK_PADDING = segmentedControlTrackPadding;
|
|
69
|
-
const SegmentedControl = /*#__PURE__*/forwardRef((props, ref) => {
|
|
70
|
-
const {
|
|
71
|
-
segments,
|
|
72
|
-
value: valueProp,
|
|
73
|
-
defaultValue,
|
|
74
|
-
onChange,
|
|
75
|
-
size = 'md',
|
|
76
|
-
fullWidth = true,
|
|
77
|
-
disabled = false,
|
|
78
|
-
tone = 'primary',
|
|
79
|
-
variant = 'segmented',
|
|
80
|
-
radius,
|
|
81
|
-
haptic,
|
|
82
|
-
accessibilityLabel,
|
|
83
|
-
style,
|
|
84
|
-
containerStyle,
|
|
85
|
-
segmentStyle,
|
|
86
|
-
selectedIndicatorStyle,
|
|
87
|
-
textStyle,
|
|
88
|
-
labelStyle,
|
|
89
|
-
testID
|
|
90
|
-
} = props;
|
|
91
|
-
const [current, setCurrent] = useControllableState({
|
|
92
|
-
value: valueProp,
|
|
93
|
-
defaultValue: defaultValue ?? segments[0]?.value,
|
|
94
|
-
onChange
|
|
95
|
-
});
|
|
96
|
-
const theme = useTheme();
|
|
97
|
-
const segTheme = theme.components.segmentedControl;
|
|
98
|
-
const styles = useMemo(() => buildStyles(theme), [theme]);
|
|
99
|
-
const baseSize = sizeMap[size];
|
|
100
|
-
const sizeStyles = {
|
|
101
|
-
height: segTheme?.[size]?.height ?? baseSize.height,
|
|
102
|
-
fontSize: segTheme?.[size]?.fontSize ?? baseSize.fontSize,
|
|
103
|
-
paddingHorizontal: segTheme?.[size]?.paddingHorizontal ?? baseSize.paddingHorizontal,
|
|
104
|
-
iconSize: segTheme?.[size]?.iconSize ?? baseSize.iconSize
|
|
105
|
-
};
|
|
106
|
-
const isSegmented = variant === 'segmented';
|
|
107
|
-
const isUnderline = variant === 'underline';
|
|
108
|
-
const isPills = variant === 'pills';
|
|
109
|
-
// Only the filled track has an inset; the underline and the pill sit in a
|
|
110
|
-
// row that spans the control's full height and width.
|
|
111
|
-
const trackPadding = isSegmented ? segTheme?.trackPadding ?? TRACK_PADDING : 0;
|
|
112
|
-
const underlineHeight = segTheme?.underlineHeight ?? 2;
|
|
113
|
-
const pillInset = segTheme?.pillInset ?? 4;
|
|
114
|
-
|
|
115
|
-
// Corner radius: the prop, else the theme token, else each variant's own
|
|
116
|
-
// default (md track with an sm thumb, full pill, square underline). With a
|
|
117
|
-
// radius given, the thumb nests inside the track with a concentric corner
|
|
118
|
-
// (the track's minus the inset), never negative.
|
|
119
|
-
const chosenRadius = typeof radius === 'number' ? radius : radius ? theme.radius[radius] : segTheme?.radius;
|
|
120
|
-
const trackRadius = chosenRadius ?? theme.radius.md;
|
|
121
|
-
const thumbRadius = chosenRadius === undefined ? theme.radius.sm : Math.max(chosenRadius - trackPadding, 0);
|
|
122
|
-
const pillRadius = chosenRadius ?? theme.radius.full;
|
|
123
|
-
const underlineRadius = chosenRadius ?? 0;
|
|
124
|
-
|
|
125
|
-
// Track width is measured from onLayout. Thumb width is a regular number (not
|
|
126
|
-
// animated) — `width` cannot be driven by the native animated module, and mixing
|
|
127
|
-
// a JS-driven width with a native-driven translateX inside `Animated.parallel`
|
|
128
|
-
// sends the parallel composite into the native driver and JS setValue/timing
|
|
129
|
-
// calls on the same value then throw "moved to native". Keep width as state and
|
|
130
|
-
// only animate translateX via the native driver.
|
|
131
|
-
const [trackWidth, setTrackWidth] = useState(0);
|
|
132
|
-
const thumbTranslateX = useRef(createAnimatedValue(0)).current;
|
|
133
|
-
const activeIndex = Math.max(0, segments.findIndex(s => s.value === current));
|
|
134
|
-
const segmentWidth = trackWidth > 0 ? (trackWidth - trackPadding * 2) / Math.max(segments.length, 1) : 0;
|
|
135
|
-
const animateThumb = useCallback((index, segWidth) => {
|
|
136
|
-
if (segWidth <= 0) {
|
|
137
|
-
return undefined;
|
|
138
|
-
}
|
|
139
|
-
// The thumb lives in the row inside the track's inset, so its origin is
|
|
140
|
-
// the first segment's left edge.
|
|
141
|
-
const targetX = segWidth * index;
|
|
142
|
-
const spring = theme.motion.spring.snappy;
|
|
143
|
-
// Clamped: the `snappy` preset is underdamped and would carry the thumb
|
|
144
|
-
// past the segment and back, poking it out of the track at either end.
|
|
145
|
-
// With the clamp it decelerates into the target and stops there.
|
|
146
|
-
const anim = Animated.spring(thumbTranslateX, {
|
|
147
|
-
toValue: targetX,
|
|
148
|
-
damping: spring.damping,
|
|
149
|
-
stiffness: spring.stiffness,
|
|
150
|
-
mass: spring.mass,
|
|
151
|
-
overshootClamping: true,
|
|
152
|
-
useNativeDriver: true
|
|
153
|
-
});
|
|
154
|
-
anim.start();
|
|
155
|
-
return anim;
|
|
156
|
-
}, [theme.motion.spring.snappy, thumbTranslateX]);
|
|
157
|
-
useEffect(() => {
|
|
158
|
-
if (segmentWidth > 0) {
|
|
159
|
-
const anim = animateThumb(activeIndex, segmentWidth);
|
|
160
|
-
return () => anim?.stop();
|
|
161
|
-
}
|
|
162
|
-
}, [activeIndex, segmentWidth, animateThumb]);
|
|
163
|
-
const handleTrackLayout = useCallback(e => {
|
|
164
|
-
const width = e.nativeEvent.layout.width;
|
|
165
|
-
if (width !== trackWidth) {
|
|
166
|
-
setTrackWidth(width);
|
|
167
|
-
}
|
|
168
|
-
}, [trackWidth]);
|
|
169
|
-
const handlePress = useCallback(segment => {
|
|
170
|
-
if (disabled) {
|
|
171
|
-
return;
|
|
172
|
-
}
|
|
173
|
-
if (segment.value === current) {
|
|
174
|
-
return;
|
|
175
|
-
}
|
|
176
|
-
const h = resolveHaptic(haptic, 'selection');
|
|
177
|
-
if (h) {
|
|
178
|
-
triggerHaptic(h);
|
|
179
|
-
}
|
|
180
|
-
setCurrent(segment.value);
|
|
181
|
-
}, [disabled, setCurrent, current, haptic]);
|
|
182
|
-
|
|
183
|
-
// The indicator per look: the elevated thumb, the brand-colour bar, or the
|
|
184
|
-
// tinted pill; the same colours Tabs gives its three variants.
|
|
185
|
-
const indicatorBg = isSegmented ? theme.colors.background.elevated : isPills ? theme.colors.primaryMuted : theme.colors.primary;
|
|
186
|
-
const indicatorRadius = isSegmented ? thumbRadius : isPills ? pillRadius : underlineRadius;
|
|
187
|
-
// The selected label and icon: brand colour by default (like the active
|
|
188
|
-
// tab), the dark text colour on the neutral tone.
|
|
189
|
-
const activeTextColor = tone === 'neutral' ? theme.colors.text.primary : theme.colors.primary;
|
|
190
|
-
|
|
191
|
-
// Android smooth corners: the track's fill is drawn as an SVG squircle over
|
|
192
|
-
// a transparent host. The thumb keeps its native corner: its radius sits
|
|
193
|
-
// under the squircle floor. It is flat (no shadow), by the team's choice.
|
|
194
|
-
// The other two looks have no fill, so the hook only forwards the layout.
|
|
195
|
-
const trackFill = theme.colors.background.tertiary;
|
|
196
|
-
const squircle = useSquircle(isSegmented, trackRadius, handleTrackLayout);
|
|
197
|
-
return /*#__PURE__*/_jsxs(View, {
|
|
198
|
-
ref: ref,
|
|
199
|
-
accessibilityRole: "radiogroup",
|
|
200
|
-
accessibilityLabel: accessibilityLabel,
|
|
201
|
-
testID: testID,
|
|
202
|
-
style: [styles.track, {
|
|
203
|
-
height: sizeStyles.height,
|
|
204
|
-
opacity: disabled ? 0.55 : 1,
|
|
205
|
-
alignSelf: fullWidth ? 'stretch' : 'flex-start'
|
|
206
|
-
}, isSegmented ? {
|
|
207
|
-
borderRadius: trackRadius,
|
|
208
|
-
...smoothCorners,
|
|
209
|
-
backgroundColor: squircle.active ? 'transparent' : trackFill,
|
|
210
|
-
padding: trackPadding
|
|
211
|
-
} : isUnderline ? {
|
|
212
|
-
borderBottomColor: theme.colors.border.secondary,
|
|
213
|
-
borderBottomWidth: StyleSheet.hairlineWidth
|
|
214
|
-
} : null, containerStyle, style],
|
|
215
|
-
onLayout: squircle.onLayout,
|
|
216
|
-
children: [squircle.active && squircle.size ? /*#__PURE__*/_jsx(SquircleFill, {
|
|
217
|
-
width: squircle.size.width,
|
|
218
|
-
height: squircle.size.height,
|
|
219
|
-
radius: trackRadius,
|
|
220
|
-
fill: trackFill
|
|
221
|
-
}) : null, /*#__PURE__*/_jsxs(View, {
|
|
222
|
-
style: styles.row,
|
|
223
|
-
children: [segmentWidth > 0 ? /*#__PURE__*/_jsx(Animated.View, {
|
|
224
|
-
pointerEvents: "none",
|
|
225
|
-
style: [styles.thumb, isSegmented ? {
|
|
226
|
-
top: 0,
|
|
227
|
-
height: sizeStyles.height - trackPadding * 2
|
|
228
|
-
} : isPills ? {
|
|
229
|
-
top: pillInset,
|
|
230
|
-
bottom: pillInset
|
|
231
|
-
} : {
|
|
232
|
-
bottom: 0,
|
|
233
|
-
height: underlineHeight
|
|
234
|
-
}, {
|
|
235
|
-
width: segmentWidth,
|
|
236
|
-
borderRadius: indicatorRadius,
|
|
237
|
-
...smoothCorners,
|
|
238
|
-
backgroundColor: indicatorBg,
|
|
239
|
-
transform: [{
|
|
240
|
-
translateX: thumbTranslateX
|
|
241
|
-
}]
|
|
242
|
-
}, selectedIndicatorStyle]
|
|
243
|
-
}) : null, segments.map(segment => {
|
|
244
|
-
const isActive = segment.value === current;
|
|
245
|
-
const labelColor = isActive ? activeTextColor : theme.colors.text.tertiary;
|
|
246
|
-
const iconNode = renderSlotIcon(segment.icon, {
|
|
247
|
-
color: labelColor,
|
|
248
|
-
size: sizeStyles.iconSize,
|
|
249
|
-
selected: isActive,
|
|
250
|
-
disabled
|
|
251
|
-
});
|
|
252
|
-
return /*#__PURE__*/_jsxs(Pressable, {
|
|
253
|
-
onPress: () => handlePress(segment),
|
|
254
|
-
disabled: disabled,
|
|
255
|
-
accessibilityRole: "radio",
|
|
256
|
-
accessibilityLabel: segment.label,
|
|
257
|
-
accessibilityState: {
|
|
258
|
-
selected: isActive,
|
|
259
|
-
disabled
|
|
260
|
-
},
|
|
261
|
-
style: ({
|
|
262
|
-
pressed
|
|
263
|
-
}) => [styles.segment, {
|
|
264
|
-
paddingHorizontal: sizeStyles.paddingHorizontal,
|
|
265
|
-
opacity: pressed && !isActive ? 0.7 : 1
|
|
266
|
-
}, segmentStyle],
|
|
267
|
-
children: [iconNode ? /*#__PURE__*/_jsx(View, {
|
|
268
|
-
style: styles.segmentIcon,
|
|
269
|
-
children: iconNode
|
|
270
|
-
}) : null, /*#__PURE__*/_jsx(Text, {
|
|
271
|
-
style: [styles.segmentLabel, {
|
|
272
|
-
color: labelColor,
|
|
273
|
-
fontSize: sizeStyles.fontSize,
|
|
274
|
-
fontWeight: isActive ? theme.typography.fontWeight.semibold : theme.typography.fontWeight.medium
|
|
275
|
-
}, textStyle, labelStyle],
|
|
276
|
-
numberOfLines: 1,
|
|
277
|
-
children: segment.label
|
|
278
|
-
})]
|
|
279
|
-
}, String(segment.value));
|
|
280
|
-
})]
|
|
281
|
-
})]
|
|
282
|
-
});
|
|
283
|
-
});
|
|
284
|
-
SegmentedControl.displayName = 'SegmentedControl';
|
|
285
|
-
const buildStyles = _theme => StyleSheet.create({
|
|
286
|
-
track: {
|
|
287
|
-
flexDirection: 'row',
|
|
288
|
-
alignItems: 'stretch',
|
|
289
|
-
position: 'relative'
|
|
290
|
-
},
|
|
291
|
-
row: {
|
|
292
|
-
flex: 1,
|
|
293
|
-
flexDirection: 'row',
|
|
294
|
-
alignItems: 'stretch',
|
|
295
|
-
position: 'relative',
|
|
296
|
-
overflow: 'hidden'
|
|
297
|
-
},
|
|
298
|
-
thumb: {
|
|
299
|
-
position: 'absolute',
|
|
300
|
-
left: 0
|
|
301
|
-
},
|
|
302
|
-
segment: {
|
|
303
|
-
flex: 1,
|
|
304
|
-
flexDirection: 'row',
|
|
305
|
-
alignItems: 'center',
|
|
306
|
-
justifyContent: 'center'
|
|
307
|
-
},
|
|
308
|
-
segmentIcon: {
|
|
309
|
-
marginRight: 6
|
|
310
|
-
},
|
|
311
|
-
segmentLabel: {
|
|
312
|
-
includeFontPadding: false
|
|
313
|
-
}
|
|
314
|
-
});
|
|
315
|
-
export { SegmentedControl };
|
|
316
|
-
export default SegmentedControl;
|
|
317
|
-
//# sourceMappingURL=SegmentedControl.js.map
|
|
1
|
+
import{forwardRef as e,useCallback as t,useEffect as i,useMemo as o,useRef as r,useState as n}from"react";import{Animated as l,Pressable as s,StyleSheet as a,Text as d,View as c}from"react-native";import{useControllableState as m}from"../../hooks/index.js";import{createAnimatedValue as g,useTheme as h}from"../../theme/index.js";import{resolveHaptic as p,triggerHaptic as u}from"../../utils/index.js";import{smoothCorners as f}from"../../utils/corners.js";import{renderSlotIcon as y}from"../AppIcon/slotIcon.js";import{FieldLabel as b,FieldMessage as z,hasFieldText as S}from"../FieldBase/index.js";import{SquircleFill as x,useSquircle as v}from"../SquircleFill/SquircleFill.js";import{jsx as C,jsxs as I}from"react/jsx-runtime";export const segmentedControlSizes={sm:{height:32,fontSize:12,paddingHorizontal:10,iconSize:14},md:{height:40,fontSize:14,paddingHorizontal:14,iconSize:16},lg:{height:48,fontSize:16,paddingHorizontal:18,iconSize:18}};export const segmentedControlTrackPadding=4;const j=segmentedControlSizes,w=e((e,w)=>{const{segments:k,label:H,helperText:L,error:D,value:W,defaultValue:R,onChange:F,size:M="md",fullWidth:P=!0,disabled:V=!1,tone:B="primary",variant:q="segmented",radius:E,haptic:N,accessibilityLabel:T,style:A,containerStyle:O,segmentStyle:X,selectedIndicatorStyle:G,textStyle:J,labelStyle:K,testID:Q}=e,[U,Y]=m({value:W,defaultValue:R??k[0]?.value,onChange:F}),Z=h(),$=Z.components.segmentedControl,_=o(()=>buildStyles(Z),[Z]),ee=j[M],te={height:$?.[M]?.height??ee.height,fontSize:$?.[M]?.fontSize??ee.fontSize,paddingHorizontal:$?.[M]?.paddingHorizontal??ee.paddingHorizontal,iconSize:$?.[M]?.iconSize??ee.iconSize},ie="segmented"===q,oe="underline"===q,re="pills"===q,ne=ie?$?.trackPadding??4:0,le=$?.underlineHeight??2,se=$?.pillInset??4,ae="number"==typeof E?E:E?Z.radius[E]:$?.radius,de=ae??Z.radius.md,ce=void 0===ae?Z.radius.sm:Math.max(ae-ne,0),me=ae??Z.radius.full,ge=ae??0,[he,pe]=n(0),ue=r(g(0)).current,fe=Math.max(0,k.findIndex(e=>e.value===U)),ye=he>0?(he-2*ne)/Math.max(k.length,1):0,be=t((e,t)=>{if(t<=0)return;const i=t*e,o=Z.motion.spring.snappy,r=l.spring(ue,{toValue:i,damping:o.damping,stiffness:o.stiffness,mass:o.mass,overshootClamping:!0,useNativeDriver:!0});return r.start(),r},[Z.motion.spring.snappy,ue]);i(()=>{if(ye>0){const e=be(fe,ye);return()=>e?.stop()}},[fe,ye,be]);const ze=t(e=>{const t=e.nativeEvent.layout.width;t!==he&&pe(t)},[he]),Se=t(e=>{if(V)return;if(e.value===U)return;const t=p(N,"selection");t&&u(t),Y(e.value)},[V,Y,U,N]),xe=ie?Z.colors.background.elevated:re?Z.colors.primaryMuted:Z.colors.primary,ve=ie?ce:re?me:ge,Ce="neutral"===B?Z.colors.text.primary:Z.colors.primary,Ie=Z.colors.background.tertiary,je=v(ie,de,ze),we=S(H),ke=S(D)?D:L,He=S(ke),Le=I(c,{ref:w,accessibilityRole:"radiogroup",accessibilityLabel:T??("string"==typeof H?H:void 0),testID:Q,style:[_.track,{height:te.height,opacity:V?.55:1,alignSelf:P?"stretch":"flex-start"},ie?{borderRadius:de,...f,backgroundColor:je.active?"transparent":Ie,padding:ne}:oe?{borderBottomColor:Z.colors.border.secondary,borderBottomWidth:a.hairlineWidth}:null,O,A],onLayout:je.onLayout,children:[je.active&&je.size?C(x,{width:je.size.width,height:je.size.height,radius:de,fill:Ie}):null,I(c,{style:_.row,children:[ye>0?C(l.View,{pointerEvents:"none",style:[_.thumb,ie?{top:0,height:te.height-2*ne}:re?{top:se,bottom:se}:{bottom:0,height:le},{width:ye,borderRadius:ve,...f,backgroundColor:xe,transform:[{translateX:ue}]},G]}):null,k.map(e=>{const t=e.value===U,i=t?Ce:Z.colors.text.tertiary,o=y(e.icon,{color:i,size:te.iconSize,selected:t,disabled:V});return I(s,{onPress:()=>Se(e),disabled:V,accessibilityRole:"radio",accessibilityLabel:e.label,accessibilityState:{selected:t,disabled:V},style:({pressed:e})=>[_.segment,{paddingHorizontal:te.paddingHorizontal,opacity:e&&!t?.7:1},X],children:[o?C(c,{style:_.segmentIcon,children:o}):null,C(d,{style:[_.segmentLabel,{color:i,fontSize:te.fontSize,fontWeight:t?Z.typography.fontWeight.semibold:Z.typography.fontWeight.medium},J,K],numberOfLines:1,children:e.label})]},String(e.value))})]})]});return we||He?I(c,{style:{alignSelf:P?"stretch":"flex-start"},children:[we?C(b,{size:M,children:H}):null,Le,He?C(z,{size:M,text:ke,error:S(D)}):null]}):Le});w.displayName="SegmentedControl";const buildStyles=e=>a.create({track:{flexDirection:"row",alignItems:"stretch",position:"relative"},row:{flex:1,flexDirection:"row",alignItems:"stretch",position:"relative",overflow:"hidden"},thumb:{position:"absolute",left:0},segment:{flex:1,flexDirection:"row",alignItems:"center",justifyContent:"center"},segmentIcon:{marginRight:6},segmentLabel:{includeFontPadding:!1}});export{w as SegmentedControl};export default w;
|