@masumdev/rn-ui 0.1.0 → 0.1.2
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.js +239 -0
- package/lib/commonjs/components/Accordion.js.map +1 -0
- package/lib/commonjs/components/Alert.js +183 -0
- package/lib/commonjs/components/Alert.js.map +1 -0
- package/lib/commonjs/components/AlertDialog.js +223 -0
- package/lib/commonjs/components/AlertDialog.js.map +1 -0
- package/lib/commonjs/components/AspectRatio.js +44 -0
- package/lib/commonjs/components/AspectRatio.js.map +1 -0
- package/lib/commonjs/components/Attachment.js +236 -0
- package/lib/commonjs/components/Attachment.js.map +1 -0
- package/lib/commonjs/components/Avatar.js +268 -0
- package/lib/commonjs/components/Avatar.js.map +1 -0
- package/lib/commonjs/components/Badge.js +94 -0
- package/lib/commonjs/components/Badge.js.map +1 -0
- package/lib/commonjs/components/BottomSheet.js +127 -0
- package/lib/commonjs/components/BottomSheet.js.map +1 -0
- package/lib/commonjs/components/Box.js +55 -0
- package/lib/commonjs/components/Box.js.map +1 -0
- package/lib/commonjs/components/Breadcrumb.js +84 -0
- package/lib/commonjs/components/Breadcrumb.js.map +1 -0
- package/lib/commonjs/components/Bubble.js +236 -0
- package/lib/commonjs/components/Bubble.js.map +1 -0
- package/lib/commonjs/components/Button.js +117 -0
- package/lib/commonjs/components/Button.js.map +1 -0
- package/lib/commonjs/components/ButtonGroup.js +143 -0
- package/lib/commonjs/components/ButtonGroup.js.map +1 -0
- package/lib/commonjs/components/Calendar.js +495 -0
- package/lib/commonjs/components/Calendar.js.map +1 -0
- package/lib/commonjs/components/Card.js +39 -0
- package/lib/commonjs/components/Card.js.map +1 -0
- package/lib/commonjs/components/Carousel.js +345 -0
- package/lib/commonjs/components/Carousel.js.map +1 -0
- package/lib/commonjs/components/Checkbox.js +105 -0
- package/lib/commonjs/components/Checkbox.js.map +1 -0
- package/lib/commonjs/components/Collapsible.js +121 -0
- package/lib/commonjs/components/Collapsible.js.map +1 -0
- package/lib/commonjs/components/Combobox.js +374 -0
- package/lib/commonjs/components/Combobox.js.map +1 -0
- package/lib/commonjs/components/Command.js +118 -0
- package/lib/commonjs/components/Command.js.map +1 -0
- package/lib/commonjs/components/ContextMenu.js +348 -0
- package/lib/commonjs/components/ContextMenu.js.map +1 -0
- package/lib/commonjs/components/DataList.js +76 -0
- package/lib/commonjs/components/DataList.js.map +1 -0
- package/lib/commonjs/components/Divider.js +31 -0
- package/lib/commonjs/components/Divider.js.map +1 -0
- package/lib/commonjs/components/DropdownMenu.js +368 -0
- package/lib/commonjs/components/DropdownMenu.js.map +1 -0
- package/lib/commonjs/components/Empty.js +129 -0
- package/lib/commonjs/components/Empty.js.map +1 -0
- package/lib/commonjs/components/FloatingActionButton.js +184 -0
- package/lib/commonjs/components/FloatingActionButton.js.map +1 -0
- package/lib/commonjs/components/FormField.js +93 -0
- package/lib/commonjs/components/FormField.js.map +1 -0
- package/lib/commonjs/components/HoverCard.js +212 -0
- package/lib/commonjs/components/HoverCard.js.map +1 -0
- package/lib/commonjs/components/IconButton.js +98 -0
- package/lib/commonjs/components/IconButton.js.map +1 -0
- package/lib/commonjs/components/Input.js +94 -0
- package/lib/commonjs/components/Input.js.map +1 -0
- package/lib/commonjs/components/InputGroup.js +216 -0
- package/lib/commonjs/components/InputGroup.js.map +1 -0
- package/lib/commonjs/components/InputOTP.js +231 -0
- package/lib/commonjs/components/InputOTP.js.map +1 -0
- package/lib/commonjs/components/Item.js +226 -0
- package/lib/commonjs/components/Item.js.map +1 -0
- package/lib/commonjs/components/KeyboardAvoiding.js +69 -0
- package/lib/commonjs/components/KeyboardAvoiding.js.map +1 -0
- package/lib/commonjs/components/Label.js +39 -0
- package/lib/commonjs/components/Label.js.map +1 -0
- package/lib/commonjs/components/MetricCard.js +60 -0
- package/lib/commonjs/components/MetricCard.js.map +1 -0
- package/lib/commonjs/components/Pagination.js +60 -0
- package/lib/commonjs/components/Pagination.js.map +1 -0
- package/lib/commonjs/components/Popover.js +96 -0
- package/lib/commonjs/components/Popover.js.map +1 -0
- package/lib/commonjs/components/Progress.js +64 -0
- package/lib/commonjs/components/Progress.js.map +1 -0
- package/lib/commonjs/components/RadioGroup.js +127 -0
- package/lib/commonjs/components/RadioGroup.js.map +1 -0
- package/lib/commonjs/components/Select.js +147 -0
- package/lib/commonjs/components/Select.js.map +1 -0
- package/lib/commonjs/components/Sheet.js +89 -0
- package/lib/commonjs/components/Sheet.js.map +1 -0
- package/lib/commonjs/components/Skeleton.js +88 -0
- package/lib/commonjs/components/Skeleton.js.map +1 -0
- package/lib/commonjs/components/Slider.js +209 -0
- package/lib/commonjs/components/Slider.js.map +1 -0
- package/lib/commonjs/components/Stepper.js +95 -0
- package/lib/commonjs/components/Stepper.js.map +1 -0
- package/lib/commonjs/components/Switch.js +153 -0
- package/lib/commonjs/components/Switch.js.map +1 -0
- package/lib/commonjs/components/Table.js +102 -0
- package/lib/commonjs/components/Table.js.map +1 -0
- package/lib/commonjs/components/Tabs.js +133 -0
- package/lib/commonjs/components/Tabs.js.map +1 -0
- package/lib/commonjs/components/Text.js +33 -0
- package/lib/commonjs/components/Text.js.map +1 -0
- package/lib/commonjs/components/Textarea.js +30 -0
- package/lib/commonjs/components/Textarea.js.map +1 -0
- package/lib/commonjs/components/Timeline.js +97 -0
- package/lib/commonjs/components/Timeline.js.map +1 -0
- package/lib/commonjs/components/Toast.js +374 -0
- package/lib/commonjs/components/Toast.js.map +1 -0
- package/lib/commonjs/components/index.js +1048 -0
- package/lib/commonjs/components/index.js.map +1 -0
- package/lib/commonjs/components/types.js +14 -0
- package/lib/commonjs/components/types.js.map +1 -0
- package/lib/commonjs/index.js +39 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/package.json +1 -0
- package/lib/commonjs/theme/ThemeProvider.js +101 -0
- package/lib/commonjs/theme/ThemeProvider.js.map +1 -0
- package/lib/commonjs/theme/createTheme.js +62 -0
- package/lib/commonjs/theme/createTheme.js.map +1 -0
- package/lib/commonjs/theme/index.js +83 -0
- package/lib/commonjs/theme/index.js.map +1 -0
- package/lib/commonjs/theme/tokens.js +356 -0
- package/lib/commonjs/theme/tokens.js.map +1 -0
- package/lib/commonjs/theme/types.js +6 -0
- package/lib/commonjs/theme/types.js.map +1 -0
- package/lib/commonjs/theme/useTheme.js +16 -0
- package/lib/commonjs/theme/useTheme.js.map +1 -0
- package/lib/commonjs/theme/useThemeStyles.js +16 -0
- package/lib/commonjs/theme/useThemeStyles.js.map +1 -0
- package/lib/commonjs/utils/color.js +22 -0
- package/lib/commonjs/utils/color.js.map +1 -0
- package/lib/commonjs/utils/index.js +13 -0
- package/lib/commonjs/utils/index.js.map +1 -0
- package/lib/module/components/Accordion.js +234 -0
- package/lib/module/components/Accordion.js.map +1 -0
- package/lib/module/components/Alert.js +177 -0
- package/lib/module/components/Alert.js.map +1 -0
- package/lib/module/components/AlertDialog.js +218 -0
- package/lib/module/components/AlertDialog.js.map +1 -0
- package/lib/module/components/AspectRatio.js +39 -0
- package/lib/module/components/AspectRatio.js.map +1 -0
- package/lib/module/components/Attachment.js +231 -0
- package/lib/module/components/Attachment.js.map +1 -0
- package/lib/module/components/Avatar.js +258 -0
- package/lib/module/components/Avatar.js.map +1 -0
- package/lib/module/components/Badge.js +89 -0
- package/lib/module/components/Badge.js.map +1 -0
- package/lib/module/components/BottomSheet.js +68 -0
- package/lib/module/components/BottomSheet.js.map +1 -0
- package/lib/module/components/Box.js +50 -0
- package/lib/module/components/Box.js.map +1 -0
- package/lib/module/components/Breadcrumb.js +75 -0
- package/lib/module/components/Breadcrumb.js.map +1 -0
- package/lib/module/components/Bubble.js +228 -0
- package/lib/module/components/Bubble.js.map +1 -0
- package/lib/module/components/Button.js +112 -0
- package/lib/module/components/Button.js.map +1 -0
- package/lib/module/components/ButtonGroup.js +136 -0
- package/lib/module/components/ButtonGroup.js.map +1 -0
- package/lib/module/components/Calendar.js +489 -0
- package/lib/module/components/Calendar.js.map +1 -0
- package/lib/module/components/Card.js +34 -0
- package/lib/module/components/Card.js.map +1 -0
- package/lib/module/components/Carousel.js +334 -0
- package/lib/module/components/Carousel.js.map +1 -0
- package/lib/module/components/Checkbox.js +99 -0
- package/lib/module/components/Checkbox.js.map +1 -0
- package/lib/module/components/Collapsible.js +112 -0
- package/lib/module/components/Collapsible.js.map +1 -0
- package/lib/module/components/Combobox.js +362 -0
- package/lib/module/components/Combobox.js.map +1 -0
- package/lib/module/components/Command.js +113 -0
- package/lib/module/components/Command.js.map +1 -0
- package/lib/module/components/ContextMenu.js +334 -0
- package/lib/module/components/ContextMenu.js.map +1 -0
- package/lib/module/components/DataList.js +68 -0
- package/lib/module/components/DataList.js.map +1 -0
- package/lib/module/components/Divider.js +26 -0
- package/lib/module/components/Divider.js.map +1 -0
- package/lib/module/components/DropdownMenu.js +354 -0
- package/lib/module/components/DropdownMenu.js.map +1 -0
- package/lib/module/components/Empty.js +119 -0
- package/lib/module/components/Empty.js.map +1 -0
- package/lib/module/components/FloatingActionButton.js +178 -0
- package/lib/module/components/FloatingActionButton.js.map +1 -0
- package/lib/module/components/FormField.js +83 -0
- package/lib/module/components/FormField.js.map +1 -0
- package/lib/module/components/HoverCard.js +203 -0
- package/lib/module/components/HoverCard.js.map +1 -0
- package/lib/module/components/IconButton.js +93 -0
- package/lib/module/components/IconButton.js.map +1 -0
- package/lib/module/components/Input.js +89 -0
- package/lib/module/components/Input.js.map +1 -0
- package/lib/module/components/InputGroup.js +206 -0
- package/lib/module/components/InputGroup.js.map +1 -0
- package/lib/module/components/InputOTP.js +221 -0
- package/lib/module/components/InputOTP.js.map +1 -0
- package/lib/module/components/Item.js +212 -0
- package/lib/module/components/Item.js.map +1 -0
- package/lib/module/components/KeyboardAvoiding.js +64 -0
- package/lib/module/components/KeyboardAvoiding.js.map +1 -0
- package/lib/module/components/Label.js +34 -0
- package/lib/module/components/Label.js.map +1 -0
- package/lib/module/components/MetricCard.js +55 -0
- package/lib/module/components/MetricCard.js.map +1 -0
- package/lib/module/components/Pagination.js +55 -0
- package/lib/module/components/Pagination.js.map +1 -0
- package/lib/module/components/Popover.js +89 -0
- package/lib/module/components/Popover.js.map +1 -0
- package/lib/module/components/Progress.js +58 -0
- package/lib/module/components/Progress.js.map +1 -0
- package/lib/module/components/RadioGroup.js +121 -0
- package/lib/module/components/RadioGroup.js.map +1 -0
- package/lib/module/components/Select.js +142 -0
- package/lib/module/components/Select.js.map +1 -0
- package/lib/module/components/Sheet.js +75 -0
- package/lib/module/components/Sheet.js.map +1 -0
- package/lib/module/components/Skeleton.js +82 -0
- package/lib/module/components/Skeleton.js.map +1 -0
- package/lib/module/components/Slider.js +203 -0
- package/lib/module/components/Slider.js.map +1 -0
- package/lib/module/components/Stepper.js +90 -0
- package/lib/module/components/Stepper.js.map +1 -0
- package/lib/module/components/Switch.js +147 -0
- package/lib/module/components/Switch.js.map +1 -0
- package/lib/module/components/Table.js +94 -0
- package/lib/module/components/Table.js.map +1 -0
- package/lib/module/components/Tabs.js +125 -0
- package/lib/module/components/Tabs.js.map +1 -0
- package/lib/module/components/Text.js +28 -0
- package/lib/module/components/Text.js.map +1 -0
- package/lib/module/components/Textarea.js +25 -0
- package/lib/module/components/Textarea.js.map +1 -0
- package/lib/module/components/Timeline.js +89 -0
- package/lib/module/components/Timeline.js.map +1 -0
- package/lib/module/components/Toast.js +359 -0
- package/lib/module/components/Toast.js.map +1 -0
- package/lib/module/components/index.js +55 -0
- package/lib/module/components/index.js.map +1 -0
- package/lib/module/components/types.js +10 -0
- package/lib/module/components/types.js.map +1 -0
- package/lib/module/index.js +6 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/package.json +1 -0
- package/lib/module/theme/ThemeProvider.js +95 -0
- package/lib/module/theme/ThemeProvider.js.map +1 -0
- package/lib/module/theme/createTheme.js +57 -0
- package/lib/module/theme/createTheme.js.map +1 -0
- package/lib/module/theme/index.js +8 -0
- package/lib/module/theme/index.js.map +1 -0
- package/lib/module/theme/tokens.js +352 -0
- package/lib/module/theme/tokens.js.map +1 -0
- package/lib/module/theme/types.js +4 -0
- package/lib/module/theme/types.js.map +1 -0
- package/lib/module/theme/useTheme.js +12 -0
- package/lib/module/theme/useTheme.js.map +1 -0
- package/lib/module/theme/useThemeStyles.js +12 -0
- package/lib/module/theme/useThemeStyles.js.map +1 -0
- package/lib/module/utils/color.js +18 -0
- package/lib/module/utils/color.js.map +1 -0
- package/lib/module/utils/index.js +4 -0
- package/lib/module/utils/index.js.map +1 -0
- package/lib/typescript/commonjs/components/Accordion.d.ts +53 -0
- package/lib/typescript/commonjs/components/Accordion.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Alert.d.ts +29 -0
- package/lib/typescript/commonjs/components/Alert.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/AlertDialog.d.ts +32 -0
- package/lib/typescript/commonjs/components/AlertDialog.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/AspectRatio.d.ts +20 -0
- package/lib/typescript/commonjs/components/AspectRatio.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Attachment.d.ts +66 -0
- package/lib/typescript/commonjs/components/Attachment.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Avatar.d.ts +37 -0
- package/lib/typescript/commonjs/components/Avatar.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Badge.d.ts +16 -0
- package/lib/typescript/commonjs/components/Badge.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/BottomSheet.d.ts +17 -0
- package/lib/typescript/commonjs/components/BottomSheet.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Box.d.ts +23 -0
- package/lib/typescript/commonjs/components/Box.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Breadcrumb.d.ts +23 -0
- package/lib/typescript/commonjs/components/Breadcrumb.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Bubble.d.ts +31 -0
- package/lib/typescript/commonjs/components/Bubble.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Button.d.ts +22 -0
- package/lib/typescript/commonjs/components/Button.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/ButtonGroup.d.ts +21 -0
- package/lib/typescript/commonjs/components/ButtonGroup.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Calendar.d.ts +26 -0
- package/lib/typescript/commonjs/components/Calendar.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Card.d.ts +9 -0
- package/lib/typescript/commonjs/components/Card.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Carousel.d.ts +44 -0
- package/lib/typescript/commonjs/components/Carousel.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Checkbox.d.ts +13 -0
- package/lib/typescript/commonjs/components/Checkbox.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Collapsible.d.ts +26 -0
- package/lib/typescript/commonjs/components/Collapsible.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Combobox.d.ts +64 -0
- package/lib/typescript/commonjs/components/Combobox.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Command.d.ts +22 -0
- package/lib/typescript/commonjs/components/Command.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/ContextMenu.d.ts +67 -0
- package/lib/typescript/commonjs/components/ContextMenu.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/DataList.d.ts +19 -0
- package/lib/typescript/commonjs/components/DataList.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Divider.d.ts +9 -0
- package/lib/typescript/commonjs/components/Divider.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/DropdownMenu.d.ts +77 -0
- package/lib/typescript/commonjs/components/DropdownMenu.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Empty.d.ts +32 -0
- package/lib/typescript/commonjs/components/Empty.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/FloatingActionButton.d.ts +24 -0
- package/lib/typescript/commonjs/components/FloatingActionButton.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/FormField.d.ts +34 -0
- package/lib/typescript/commonjs/components/FormField.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/HoverCard.d.ts +51 -0
- package/lib/typescript/commonjs/components/HoverCard.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/IconButton.d.ts +18 -0
- package/lib/typescript/commonjs/components/IconButton.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Input.d.ts +14 -0
- package/lib/typescript/commonjs/components/Input.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/InputGroup.d.ts +36 -0
- package/lib/typescript/commonjs/components/InputGroup.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/InputOTP.d.ts +42 -0
- package/lib/typescript/commonjs/components/InputOTP.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Item.d.ts +53 -0
- package/lib/typescript/commonjs/components/Item.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/KeyboardAvoiding.d.ts +20 -0
- package/lib/typescript/commonjs/components/KeyboardAvoiding.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Label.d.ts +12 -0
- package/lib/typescript/commonjs/components/Label.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/MetricCard.d.ts +12 -0
- package/lib/typescript/commonjs/components/MetricCard.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Pagination.d.ts +12 -0
- package/lib/typescript/commonjs/components/Pagination.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Popover.d.ts +20 -0
- package/lib/typescript/commonjs/components/Popover.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Progress.d.ts +11 -0
- package/lib/typescript/commonjs/components/Progress.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/RadioGroup.d.ts +24 -0
- package/lib/typescript/commonjs/components/RadioGroup.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Select.d.ts +23 -0
- package/lib/typescript/commonjs/components/Select.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Sheet.d.ts +24 -0
- package/lib/typescript/commonjs/components/Sheet.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Skeleton.d.ts +10 -0
- package/lib/typescript/commonjs/components/Skeleton.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Slider.d.ts +21 -0
- package/lib/typescript/commonjs/components/Slider.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Stepper.d.ts +17 -0
- package/lib/typescript/commonjs/components/Stepper.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Switch.d.ts +34 -0
- package/lib/typescript/commonjs/components/Switch.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Table.d.ts +22 -0
- package/lib/typescript/commonjs/components/Table.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Tabs.d.ts +30 -0
- package/lib/typescript/commonjs/components/Tabs.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Text.d.ts +12 -0
- package/lib/typescript/commonjs/components/Text.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Textarea.d.ts +8 -0
- package/lib/typescript/commonjs/components/Textarea.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Timeline.d.ts +20 -0
- package/lib/typescript/commonjs/components/Timeline.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Toast.d.ts +87 -0
- package/lib/typescript/commonjs/components/Toast.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/index.d.ts +106 -0
- package/lib/typescript/commonjs/components/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/types.d.ts +9 -0
- package/lib/typescript/commonjs/components/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/index.d.ts +4 -0
- package/lib/typescript/commonjs/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/package.json +1 -0
- package/lib/typescript/commonjs/theme/ThemeProvider.d.ts +5 -0
- package/lib/typescript/commonjs/theme/ThemeProvider.d.ts.map +1 -0
- package/lib/typescript/commonjs/theme/createTheme.d.ts +4 -0
- package/lib/typescript/commonjs/theme/createTheme.d.ts.map +1 -0
- package/lib/typescript/commonjs/theme/index.d.ts +7 -0
- package/lib/typescript/commonjs/theme/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/theme/tokens.d.ts +12 -0
- package/lib/typescript/commonjs/theme/tokens.d.ts.map +1 -0
- package/lib/typescript/commonjs/theme/types.d.ts +219 -0
- package/lib/typescript/commonjs/theme/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/theme/useTheme.d.ts +2 -0
- package/lib/typescript/commonjs/theme/useTheme.d.ts.map +1 -0
- package/lib/typescript/commonjs/theme/useThemeStyles.d.ts +3 -0
- package/lib/typescript/commonjs/theme/useThemeStyles.d.ts.map +1 -0
- package/lib/typescript/commonjs/utils/color.d.ts +2 -0
- package/lib/typescript/commonjs/utils/color.d.ts.map +1 -0
- package/lib/typescript/commonjs/utils/index.d.ts +2 -0
- package/lib/typescript/commonjs/utils/index.d.ts.map +1 -0
- package/lib/typescript/module/components/Accordion.d.ts +53 -0
- package/lib/typescript/module/components/Accordion.d.ts.map +1 -0
- package/lib/typescript/module/components/Alert.d.ts +29 -0
- package/lib/typescript/module/components/Alert.d.ts.map +1 -0
- package/lib/typescript/module/components/AlertDialog.d.ts +32 -0
- package/lib/typescript/module/components/AlertDialog.d.ts.map +1 -0
- package/lib/typescript/module/components/AspectRatio.d.ts +20 -0
- package/lib/typescript/module/components/AspectRatio.d.ts.map +1 -0
- package/lib/typescript/module/components/Attachment.d.ts +66 -0
- package/lib/typescript/module/components/Attachment.d.ts.map +1 -0
- package/lib/typescript/module/components/Avatar.d.ts +37 -0
- package/lib/typescript/module/components/Avatar.d.ts.map +1 -0
- package/lib/typescript/module/components/Badge.d.ts +16 -0
- package/lib/typescript/module/components/Badge.d.ts.map +1 -0
- package/lib/typescript/module/components/BottomSheet.d.ts +17 -0
- package/lib/typescript/module/components/BottomSheet.d.ts.map +1 -0
- package/lib/typescript/module/components/Box.d.ts +23 -0
- package/lib/typescript/module/components/Box.d.ts.map +1 -0
- package/lib/typescript/module/components/Breadcrumb.d.ts +23 -0
- package/lib/typescript/module/components/Breadcrumb.d.ts.map +1 -0
- package/lib/typescript/module/components/Bubble.d.ts +31 -0
- package/lib/typescript/module/components/Bubble.d.ts.map +1 -0
- package/lib/typescript/module/components/Button.d.ts +22 -0
- package/lib/typescript/module/components/Button.d.ts.map +1 -0
- package/lib/typescript/module/components/ButtonGroup.d.ts +21 -0
- package/lib/typescript/module/components/ButtonGroup.d.ts.map +1 -0
- package/lib/typescript/module/components/Calendar.d.ts +26 -0
- package/lib/typescript/module/components/Calendar.d.ts.map +1 -0
- package/lib/typescript/module/components/Card.d.ts +9 -0
- package/lib/typescript/module/components/Card.d.ts.map +1 -0
- package/lib/typescript/module/components/Carousel.d.ts +44 -0
- package/lib/typescript/module/components/Carousel.d.ts.map +1 -0
- package/lib/typescript/module/components/Checkbox.d.ts +13 -0
- package/lib/typescript/module/components/Checkbox.d.ts.map +1 -0
- package/lib/typescript/module/components/Collapsible.d.ts +26 -0
- package/lib/typescript/module/components/Collapsible.d.ts.map +1 -0
- package/lib/typescript/module/components/Combobox.d.ts +64 -0
- package/lib/typescript/module/components/Combobox.d.ts.map +1 -0
- package/lib/typescript/module/components/Command.d.ts +22 -0
- package/lib/typescript/module/components/Command.d.ts.map +1 -0
- package/lib/typescript/module/components/ContextMenu.d.ts +67 -0
- package/lib/typescript/module/components/ContextMenu.d.ts.map +1 -0
- package/lib/typescript/module/components/DataList.d.ts +19 -0
- package/lib/typescript/module/components/DataList.d.ts.map +1 -0
- package/lib/typescript/module/components/Divider.d.ts +9 -0
- package/lib/typescript/module/components/Divider.d.ts.map +1 -0
- package/lib/typescript/module/components/DropdownMenu.d.ts +77 -0
- package/lib/typescript/module/components/DropdownMenu.d.ts.map +1 -0
- package/lib/typescript/module/components/Empty.d.ts +32 -0
- package/lib/typescript/module/components/Empty.d.ts.map +1 -0
- package/lib/typescript/module/components/FloatingActionButton.d.ts +24 -0
- package/lib/typescript/module/components/FloatingActionButton.d.ts.map +1 -0
- package/lib/typescript/module/components/FormField.d.ts +34 -0
- package/lib/typescript/module/components/FormField.d.ts.map +1 -0
- package/lib/typescript/module/components/HoverCard.d.ts +51 -0
- package/lib/typescript/module/components/HoverCard.d.ts.map +1 -0
- package/lib/typescript/module/components/IconButton.d.ts +18 -0
- package/lib/typescript/module/components/IconButton.d.ts.map +1 -0
- package/lib/typescript/module/components/Input.d.ts +14 -0
- package/lib/typescript/module/components/Input.d.ts.map +1 -0
- package/lib/typescript/module/components/InputGroup.d.ts +36 -0
- package/lib/typescript/module/components/InputGroup.d.ts.map +1 -0
- package/lib/typescript/module/components/InputOTP.d.ts +42 -0
- package/lib/typescript/module/components/InputOTP.d.ts.map +1 -0
- package/lib/typescript/module/components/Item.d.ts +53 -0
- package/lib/typescript/module/components/Item.d.ts.map +1 -0
- package/lib/typescript/module/components/KeyboardAvoiding.d.ts +20 -0
- package/lib/typescript/module/components/KeyboardAvoiding.d.ts.map +1 -0
- package/lib/typescript/module/components/Label.d.ts +12 -0
- package/lib/typescript/module/components/Label.d.ts.map +1 -0
- package/lib/typescript/module/components/MetricCard.d.ts +12 -0
- package/lib/typescript/module/components/MetricCard.d.ts.map +1 -0
- package/lib/typescript/module/components/Pagination.d.ts +12 -0
- package/lib/typescript/module/components/Pagination.d.ts.map +1 -0
- package/lib/typescript/module/components/Popover.d.ts +20 -0
- package/lib/typescript/module/components/Popover.d.ts.map +1 -0
- package/lib/typescript/module/components/Progress.d.ts +11 -0
- package/lib/typescript/module/components/Progress.d.ts.map +1 -0
- package/lib/typescript/module/components/RadioGroup.d.ts +24 -0
- package/lib/typescript/module/components/RadioGroup.d.ts.map +1 -0
- package/lib/typescript/module/components/Select.d.ts +23 -0
- package/lib/typescript/module/components/Select.d.ts.map +1 -0
- package/lib/typescript/module/components/Sheet.d.ts +24 -0
- package/lib/typescript/module/components/Sheet.d.ts.map +1 -0
- package/lib/typescript/module/components/Skeleton.d.ts +10 -0
- package/lib/typescript/module/components/Skeleton.d.ts.map +1 -0
- package/lib/typescript/module/components/Slider.d.ts +21 -0
- package/lib/typescript/module/components/Slider.d.ts.map +1 -0
- package/lib/typescript/module/components/Stepper.d.ts +17 -0
- package/lib/typescript/module/components/Stepper.d.ts.map +1 -0
- package/lib/typescript/module/components/Switch.d.ts +34 -0
- package/lib/typescript/module/components/Switch.d.ts.map +1 -0
- package/lib/typescript/module/components/Table.d.ts +22 -0
- package/lib/typescript/module/components/Table.d.ts.map +1 -0
- package/lib/typescript/module/components/Tabs.d.ts +30 -0
- package/lib/typescript/module/components/Tabs.d.ts.map +1 -0
- package/lib/typescript/module/components/Text.d.ts +12 -0
- package/lib/typescript/module/components/Text.d.ts.map +1 -0
- package/lib/typescript/module/components/Textarea.d.ts +8 -0
- package/lib/typescript/module/components/Textarea.d.ts.map +1 -0
- package/lib/typescript/module/components/Timeline.d.ts +20 -0
- package/lib/typescript/module/components/Timeline.d.ts.map +1 -0
- package/lib/typescript/module/components/Toast.d.ts +87 -0
- package/lib/typescript/module/components/Toast.d.ts.map +1 -0
- package/lib/typescript/module/components/index.d.ts +106 -0
- package/lib/typescript/module/components/index.d.ts.map +1 -0
- package/lib/typescript/module/components/types.d.ts +9 -0
- package/lib/typescript/module/components/types.d.ts.map +1 -0
- package/lib/typescript/module/index.d.ts +4 -0
- package/lib/typescript/module/index.d.ts.map +1 -0
- package/lib/typescript/module/package.json +1 -0
- package/lib/typescript/module/theme/ThemeProvider.d.ts +5 -0
- package/lib/typescript/module/theme/ThemeProvider.d.ts.map +1 -0
- package/lib/typescript/module/theme/createTheme.d.ts +4 -0
- package/lib/typescript/module/theme/createTheme.d.ts.map +1 -0
- package/lib/typescript/module/theme/index.d.ts +7 -0
- package/lib/typescript/module/theme/index.d.ts.map +1 -0
- package/lib/typescript/module/theme/tokens.d.ts +12 -0
- package/lib/typescript/module/theme/tokens.d.ts.map +1 -0
- package/lib/typescript/module/theme/types.d.ts +219 -0
- package/lib/typescript/module/theme/types.d.ts.map +1 -0
- package/lib/typescript/module/theme/useTheme.d.ts +2 -0
- package/lib/typescript/module/theme/useTheme.d.ts.map +1 -0
- package/lib/typescript/module/theme/useThemeStyles.d.ts +3 -0
- package/lib/typescript/module/theme/useThemeStyles.d.ts.map +1 -0
- package/lib/typescript/module/utils/color.d.ts +2 -0
- package/lib/typescript/module/utils/color.d.ts.map +1 -0
- package/lib/typescript/module/utils/index.d.ts +2 -0
- package/lib/typescript/module/utils/index.d.ts.map +1 -0
- package/package.json +44 -18
- package/dist/index.d.mts +0 -1593
- package/dist/index.d.ts +0 -1593
- package/dist/index.js +0 -7979
- package/dist/index.mjs +0 -8025
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.FloatingActionButton = FloatingActionButton;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
|
|
10
|
+
var _index = require("../theme/index.js");
|
|
11
|
+
var _index2 = require("../utils/index.js");
|
|
12
|
+
var _Text = require("./Text.js");
|
|
13
|
+
var _types = require("./types.js");
|
|
14
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
15
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
16
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
17
|
+
function getToneColors(tone, colors) {
|
|
18
|
+
if (tone === "primary") return {
|
|
19
|
+
base: colors.primary,
|
|
20
|
+
soft: colors.primarySoft,
|
|
21
|
+
on: colors.onPrimary
|
|
22
|
+
};
|
|
23
|
+
if (tone === "secondary") return {
|
|
24
|
+
base: colors.secondary,
|
|
25
|
+
soft: colors.secondarySoft,
|
|
26
|
+
on: colors.onSecondary
|
|
27
|
+
};
|
|
28
|
+
if (tone === "accent") return {
|
|
29
|
+
base: colors.accent,
|
|
30
|
+
soft: colors.accentSoft,
|
|
31
|
+
on: colors.onAccent
|
|
32
|
+
};
|
|
33
|
+
if (tone === "success") return {
|
|
34
|
+
base: colors.success,
|
|
35
|
+
soft: colors.successSoft,
|
|
36
|
+
on: colors.onSuccess
|
|
37
|
+
};
|
|
38
|
+
if (tone === "warning") return {
|
|
39
|
+
base: colors.warning,
|
|
40
|
+
soft: colors.warningSoft,
|
|
41
|
+
on: colors.onWarning
|
|
42
|
+
};
|
|
43
|
+
if (tone === "danger") return {
|
|
44
|
+
base: colors.danger,
|
|
45
|
+
soft: colors.dangerSoft,
|
|
46
|
+
on: colors.onDanger
|
|
47
|
+
};
|
|
48
|
+
return {
|
|
49
|
+
base: colors.info,
|
|
50
|
+
soft: colors.infoSoft,
|
|
51
|
+
on: colors.onInfo
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
function FloatingActionButton({
|
|
55
|
+
icon,
|
|
56
|
+
label,
|
|
57
|
+
extended = Boolean(label),
|
|
58
|
+
size = "md",
|
|
59
|
+
tone = "primary",
|
|
60
|
+
variant = "filled",
|
|
61
|
+
placement = "bottom-end",
|
|
62
|
+
offset,
|
|
63
|
+
visible = true,
|
|
64
|
+
animated = true,
|
|
65
|
+
loading,
|
|
66
|
+
disabled,
|
|
67
|
+
fullWidth,
|
|
68
|
+
style,
|
|
69
|
+
textStyle,
|
|
70
|
+
onPressIn,
|
|
71
|
+
onPressOut,
|
|
72
|
+
...props
|
|
73
|
+
}) {
|
|
74
|
+
const {
|
|
75
|
+
colors,
|
|
76
|
+
components,
|
|
77
|
+
radii,
|
|
78
|
+
spacing,
|
|
79
|
+
typography
|
|
80
|
+
} = (0, _index.useTheme)();
|
|
81
|
+
const [mounted, setMounted] = _react.default.useState(visible);
|
|
82
|
+
const visibility = (0, _reactNativeReanimated.useSharedValue)(visible ? 1 : 0);
|
|
83
|
+
const press = (0, _reactNativeReanimated.useSharedValue)(1);
|
|
84
|
+
const isDisabled = disabled || loading;
|
|
85
|
+
const toneColors = getToneColors(tone, colors);
|
|
86
|
+
const fabTokens = components.floatingActionButton;
|
|
87
|
+
const dimension = fabTokens.size[size];
|
|
88
|
+
const iconSize = fabTokens.iconSize[size];
|
|
89
|
+
const resolvedOffset = offset ?? spacing.lg;
|
|
90
|
+
_react.default.useEffect(() => {
|
|
91
|
+
if (visible) {
|
|
92
|
+
setMounted(true);
|
|
93
|
+
}
|
|
94
|
+
if (!animated) {
|
|
95
|
+
visibility.value = visible ? 1 : 0;
|
|
96
|
+
if (!visible) {
|
|
97
|
+
setMounted(false);
|
|
98
|
+
}
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
visibility.value = (0, _reactNativeReanimated.withTiming)(visible ? 1 : 0, {
|
|
102
|
+
duration: 180
|
|
103
|
+
}, finished => {
|
|
104
|
+
if (finished && !visible) {
|
|
105
|
+
(0, _reactNativeReanimated.runOnJS)(setMounted)(false);
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
}, [animated, visible, visibility]);
|
|
109
|
+
const animatedStyle = (0, _reactNativeReanimated.useAnimatedStyle)(() => ({
|
|
110
|
+
opacity: visibility.value,
|
|
111
|
+
transform: [{
|
|
112
|
+
scale: press.value * (0.88 + visibility.value * 0.12)
|
|
113
|
+
}, {
|
|
114
|
+
translateY: 8 * (1 - visibility.value)
|
|
115
|
+
}]
|
|
116
|
+
}));
|
|
117
|
+
if (!mounted) {
|
|
118
|
+
return null;
|
|
119
|
+
}
|
|
120
|
+
const backgroundColor = isDisabled ? colors.disabled : variant === "filled" ? toneColors.base : variant === "soft" ? toneColors.soft : variant === "outline" ? colors.surface : colors.transparent;
|
|
121
|
+
const foregroundColor = isDisabled ? colors.disabledText : variant === "filled" ? toneColors.on : toneColors.base;
|
|
122
|
+
const borderColor = isDisabled ? colors.disabled : variant === "outline" ? (0, _index2.withAlpha)(toneColors.base, 0.42) : colors.transparent;
|
|
123
|
+
const placementStyle = placement === "none" ? {} : {
|
|
124
|
+
position: "absolute",
|
|
125
|
+
bottom: placement.startsWith("bottom") ? resolvedOffset : undefined,
|
|
126
|
+
top: placement.startsWith("top") ? resolvedOffset : undefined,
|
|
127
|
+
right: placement.endsWith("end") ? resolvedOffset : undefined,
|
|
128
|
+
left: placement.endsWith("start") ? resolvedOffset : undefined,
|
|
129
|
+
zIndex: 100
|
|
130
|
+
};
|
|
131
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
|
|
132
|
+
style: [placementStyle, animated ? animatedStyle : undefined],
|
|
133
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Pressable, {
|
|
134
|
+
accessibilityRole: "button",
|
|
135
|
+
disabled: isDisabled,
|
|
136
|
+
onPressIn: event => {
|
|
137
|
+
if (animated) {
|
|
138
|
+
press.value = (0, _reactNativeReanimated.withSpring)(0.94, {
|
|
139
|
+
damping: 16,
|
|
140
|
+
stiffness: 260
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
onPressIn?.(event);
|
|
144
|
+
},
|
|
145
|
+
onPressOut: event => {
|
|
146
|
+
if (animated) {
|
|
147
|
+
press.value = (0, _reactNativeReanimated.withSpring)(1, {
|
|
148
|
+
damping: 16,
|
|
149
|
+
stiffness: 260
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
onPressOut?.(event);
|
|
153
|
+
},
|
|
154
|
+
style: ({
|
|
155
|
+
pressed
|
|
156
|
+
}) => [{
|
|
157
|
+
minWidth: extended ? undefined : dimension,
|
|
158
|
+
width: fullWidth ? "100%" : undefined,
|
|
159
|
+
height: dimension,
|
|
160
|
+
paddingHorizontal: extended ? fabTokens.paddingX[size] : 0,
|
|
161
|
+
borderRadius: radii.full,
|
|
162
|
+
borderWidth: variant === "outline" ? components.borderWidth.strong : 0,
|
|
163
|
+
borderColor,
|
|
164
|
+
backgroundColor,
|
|
165
|
+
flexDirection: "row",
|
|
166
|
+
alignItems: "center",
|
|
167
|
+
justifyContent: "center",
|
|
168
|
+
gap: spacing.sm,
|
|
169
|
+
opacity: !animated && pressed && !isDisabled ? 0.78 : 1
|
|
170
|
+
}, style],
|
|
171
|
+
...props,
|
|
172
|
+
children: [loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.ActivityIndicator, {
|
|
173
|
+
size: "small",
|
|
174
|
+
color: foregroundColor
|
|
175
|
+
}) : (0, _types.renderIcon)(icon, foregroundColor, iconSize), extended && label ? typeof label === "string" ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.Text, {
|
|
176
|
+
style: [typography.label, {
|
|
177
|
+
color: foregroundColor
|
|
178
|
+
}, textStyle],
|
|
179
|
+
children: label
|
|
180
|
+
}) : label : null]
|
|
181
|
+
})
|
|
182
|
+
});
|
|
183
|
+
}
|
|
184
|
+
//# sourceMappingURL=FloatingActionButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeReanimated","_interopRequireWildcard","_index","_index2","_Text","_types","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","getToneColors","tone","colors","base","primary","soft","primarySoft","on","onPrimary","secondary","secondarySoft","onSecondary","accent","accentSoft","onAccent","success","successSoft","onSuccess","warning","warningSoft","onWarning","danger","dangerSoft","onDanger","info","infoSoft","onInfo","FloatingActionButton","icon","label","extended","Boolean","size","variant","placement","offset","visible","animated","loading","disabled","fullWidth","style","textStyle","onPressIn","onPressOut","props","components","radii","spacing","typography","useTheme","mounted","setMounted","React","useState","visibility","useSharedValue","press","isDisabled","toneColors","fabTokens","floatingActionButton","dimension","iconSize","resolvedOffset","lg","useEffect","value","withTiming","duration","finished","runOnJS","animatedStyle","useAnimatedStyle","opacity","transform","scale","translateY","backgroundColor","surface","transparent","foregroundColor","disabledText","borderColor","withAlpha","placementStyle","position","bottom","startsWith","undefined","top","right","endsWith","left","zIndex","jsx","View","children","jsxs","Pressable","accessibilityRole","event","withSpring","damping","stiffness","pressed","minWidth","width","height","paddingHorizontal","paddingX","borderRadius","full","borderWidth","strong","flexDirection","alignItems","justifyContent","gap","sm","ActivityIndicator","color","renderIcon","Text"],"sourceRoot":"../../../src","sources":["components/FloatingActionButton.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.FormControl = FormControl;
|
|
7
|
+
exports.FormDescription = FormDescription;
|
|
8
|
+
exports.FormField = FormField;
|
|
9
|
+
exports.FormLabel = FormLabel;
|
|
10
|
+
exports.FormMessage = FormMessage;
|
|
11
|
+
exports.useFormField = useFormField;
|
|
12
|
+
var _react = _interopRequireDefault(require("react"));
|
|
13
|
+
var _reactNative = require("react-native");
|
|
14
|
+
var _index = require("../theme/index.js");
|
|
15
|
+
var _Label = require("./Label.js");
|
|
16
|
+
var _Text = require("./Text.js");
|
|
17
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
18
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
19
|
+
const FormFieldContext = /*#__PURE__*/_react.default.createContext(null);
|
|
20
|
+
function useFormField() {
|
|
21
|
+
return _react.default.useContext(FormFieldContext);
|
|
22
|
+
}
|
|
23
|
+
function FormField({
|
|
24
|
+
invalid = false,
|
|
25
|
+
disabled = false,
|
|
26
|
+
required = false,
|
|
27
|
+
style,
|
|
28
|
+
...props
|
|
29
|
+
}) {
|
|
30
|
+
const {
|
|
31
|
+
spacing
|
|
32
|
+
} = (0, _index.useTheme)();
|
|
33
|
+
const value = _react.default.useMemo(() => ({
|
|
34
|
+
invalid,
|
|
35
|
+
disabled,
|
|
36
|
+
required
|
|
37
|
+
}), [disabled, invalid, required]);
|
|
38
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(FormFieldContext.Provider, {
|
|
39
|
+
value: value,
|
|
40
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
41
|
+
style: [{
|
|
42
|
+
width: "100%",
|
|
43
|
+
gap: spacing.xs
|
|
44
|
+
}, style],
|
|
45
|
+
...props
|
|
46
|
+
})
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
function FormLabel(props) {
|
|
50
|
+
const field = useFormField();
|
|
51
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Label.Label, {
|
|
52
|
+
invalid: field?.invalid,
|
|
53
|
+
disabled: field?.disabled,
|
|
54
|
+
required: field?.required,
|
|
55
|
+
...props
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
function FormControl({
|
|
59
|
+
style,
|
|
60
|
+
...props
|
|
61
|
+
}) {
|
|
62
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
63
|
+
style: [{
|
|
64
|
+
width: "100%"
|
|
65
|
+
}, style],
|
|
66
|
+
...props
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
function FormDescription({
|
|
70
|
+
children,
|
|
71
|
+
style
|
|
72
|
+
}) {
|
|
73
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.Text, {
|
|
74
|
+
variant: "bodySmall",
|
|
75
|
+
color: "textMuted",
|
|
76
|
+
style: style,
|
|
77
|
+
children: children
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
function FormMessage({
|
|
81
|
+
children,
|
|
82
|
+
style
|
|
83
|
+
}) {
|
|
84
|
+
const field = useFormField();
|
|
85
|
+
if (!children) return null;
|
|
86
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.Text, {
|
|
87
|
+
variant: "bodySmall",
|
|
88
|
+
color: field?.invalid ? "danger" : "textMuted",
|
|
89
|
+
style: style,
|
|
90
|
+
children: children
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=FormField.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_index","_Label","_Text","_jsxRuntime","e","__esModule","default","FormFieldContext","React","createContext","useFormField","useContext","FormField","invalid","disabled","required","style","props","spacing","useTheme","value","useMemo","jsx","Provider","children","View","width","gap","xs","FormLabel","field","Label","FormControl","FormDescription","Text","variant","color","FormMessage"],"sourceRoot":"../../../src","sources":["components/FormField.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.HoverCard = HoverCard;
|
|
7
|
+
exports.HoverCardContent = HoverCardContent;
|
|
8
|
+
exports.HoverCardTrigger = HoverCardTrigger;
|
|
9
|
+
exports.useHoverCard = useHoverCard;
|
|
10
|
+
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
var _reactNative = require("react-native");
|
|
12
|
+
var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
|
|
13
|
+
var _index = require("../theme/index.js");
|
|
14
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
15
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
16
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
17
|
+
const HoverCardContext = /*#__PURE__*/_react.default.createContext(null);
|
|
18
|
+
function useHoverCard() {
|
|
19
|
+
const context = _react.default.useContext(HoverCardContext);
|
|
20
|
+
if (!context) {
|
|
21
|
+
throw new Error("useHoverCard must be used within a <HoverCard />");
|
|
22
|
+
}
|
|
23
|
+
return context;
|
|
24
|
+
}
|
|
25
|
+
function HoverCard({
|
|
26
|
+
open: controlledOpen,
|
|
27
|
+
defaultOpen = false,
|
|
28
|
+
onOpenChange,
|
|
29
|
+
openDelay = 10,
|
|
30
|
+
closeDelay = 100,
|
|
31
|
+
triggerMode = "longPress",
|
|
32
|
+
children
|
|
33
|
+
}) {
|
|
34
|
+
const {
|
|
35
|
+
colors
|
|
36
|
+
} = (0, _index.useTheme)();
|
|
37
|
+
const [uncontrolledOpen, setUncontrolledOpen] = _react.default.useState(defaultOpen);
|
|
38
|
+
const [triggerLayout, setTriggerLayout] = _react.default.useState({
|
|
39
|
+
pageX: 0,
|
|
40
|
+
pageY: 0,
|
|
41
|
+
width: 0,
|
|
42
|
+
height: 0
|
|
43
|
+
});
|
|
44
|
+
const isControlled = controlledOpen !== undefined;
|
|
45
|
+
const open = isControlled ? controlledOpen : uncontrolledOpen;
|
|
46
|
+
const setOpen = _react.default.useCallback(nextOpen => {
|
|
47
|
+
if (!isControlled) {
|
|
48
|
+
setUncontrolledOpen(nextOpen);
|
|
49
|
+
}
|
|
50
|
+
onOpenChange?.(nextOpen);
|
|
51
|
+
}, [isControlled, onOpenChange]);
|
|
52
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(HoverCardContext.Provider, {
|
|
53
|
+
value: {
|
|
54
|
+
open,
|
|
55
|
+
setOpen,
|
|
56
|
+
triggerLayout,
|
|
57
|
+
setTriggerLayout,
|
|
58
|
+
openDelay,
|
|
59
|
+
closeDelay,
|
|
60
|
+
triggerMode,
|
|
61
|
+
colors
|
|
62
|
+
},
|
|
63
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
64
|
+
style: {
|
|
65
|
+
alignSelf: "flex-start"
|
|
66
|
+
},
|
|
67
|
+
children: children
|
|
68
|
+
})
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
function HoverCardTrigger({
|
|
72
|
+
children,
|
|
73
|
+
disabled = false,
|
|
74
|
+
style
|
|
75
|
+
}) {
|
|
76
|
+
const {
|
|
77
|
+
open,
|
|
78
|
+
setOpen,
|
|
79
|
+
setTriggerLayout,
|
|
80
|
+
openDelay,
|
|
81
|
+
closeDelay,
|
|
82
|
+
triggerMode
|
|
83
|
+
} = useHoverCard();
|
|
84
|
+
const triggerRef = _react.default.useRef(null);
|
|
85
|
+
const openTimer = _react.default.useRef(null);
|
|
86
|
+
const closeTimer = _react.default.useRef(null);
|
|
87
|
+
_react.default.useEffect(() => {
|
|
88
|
+
return () => {
|
|
89
|
+
if (openTimer.current) clearTimeout(openTimer.current);
|
|
90
|
+
if (closeTimer.current) clearTimeout(closeTimer.current);
|
|
91
|
+
};
|
|
92
|
+
}, []);
|
|
93
|
+
const measureAndSetOpen = _react.default.useCallback(nextOpen => {
|
|
94
|
+
if (disabled || triggerMode === "manual") return;
|
|
95
|
+
if (closeTimer.current) clearTimeout(closeTimer.current);
|
|
96
|
+
triggerRef.current?.measureInWindow((x, y, width, height) => {
|
|
97
|
+
if (width > 0 && height > 0) {
|
|
98
|
+
setTriggerLayout({
|
|
99
|
+
pageX: x,
|
|
100
|
+
pageY: y,
|
|
101
|
+
width,
|
|
102
|
+
height
|
|
103
|
+
});
|
|
104
|
+
if (openTimer.current) clearTimeout(openTimer.current);
|
|
105
|
+
openTimer.current = setTimeout(() => setOpen(nextOpen), openDelay);
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
}, [disabled, openDelay, setOpen, setTriggerLayout, triggerMode]);
|
|
109
|
+
const close = _react.default.useCallback(() => {
|
|
110
|
+
if (triggerMode === "manual") return;
|
|
111
|
+
if (openTimer.current) clearTimeout(openTimer.current);
|
|
112
|
+
closeTimer.current = setTimeout(() => setOpen(false), closeDelay);
|
|
113
|
+
}, [closeDelay, setOpen, triggerMode]);
|
|
114
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
|
|
115
|
+
ref: triggerRef,
|
|
116
|
+
accessibilityRole: "button",
|
|
117
|
+
accessibilityState: {
|
|
118
|
+
expanded: open,
|
|
119
|
+
disabled
|
|
120
|
+
},
|
|
121
|
+
disabled: disabled,
|
|
122
|
+
onPress: triggerMode === "press" ? () => measureAndSetOpen(!open) : undefined,
|
|
123
|
+
onLongPress: triggerMode === "longPress" ? () => measureAndSetOpen(true) : undefined,
|
|
124
|
+
onPressOut: triggerMode === "longPress" ? close : undefined,
|
|
125
|
+
delayLongPress: 420,
|
|
126
|
+
style: style,
|
|
127
|
+
children: children
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
function HoverCardContent({
|
|
131
|
+
children,
|
|
132
|
+
align = "center",
|
|
133
|
+
width = 256,
|
|
134
|
+
maxHeight = 320,
|
|
135
|
+
sideOffset = 4,
|
|
136
|
+
style,
|
|
137
|
+
overlayStyle,
|
|
138
|
+
modalProps
|
|
139
|
+
}) {
|
|
140
|
+
const {
|
|
141
|
+
open,
|
|
142
|
+
setOpen,
|
|
143
|
+
triggerLayout,
|
|
144
|
+
colors
|
|
145
|
+
} = useHoverCard();
|
|
146
|
+
const {
|
|
147
|
+
components,
|
|
148
|
+
radii,
|
|
149
|
+
spacing
|
|
150
|
+
} = (0, _index.useTheme)();
|
|
151
|
+
const progress = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
152
|
+
_react.default.useEffect(() => {
|
|
153
|
+
progress.value = (0, _reactNativeReanimated.withTiming)(open ? 1 : 0, {
|
|
154
|
+
duration: 100
|
|
155
|
+
});
|
|
156
|
+
}, [open, progress]);
|
|
157
|
+
const {
|
|
158
|
+
height: screenHeight,
|
|
159
|
+
width: screenWidth
|
|
160
|
+
} = _reactNative.Dimensions.get("window");
|
|
161
|
+
const resolvedWidth = Math.min(width, screenWidth - spacing.lg * 2);
|
|
162
|
+
const spaceBelow = screenHeight - (triggerLayout.pageY + triggerLayout.height);
|
|
163
|
+
const renderAbove = spaceBelow < maxHeight + spacing.xl;
|
|
164
|
+
const centerX = triggerLayout.pageX + triggerLayout.width / 2;
|
|
165
|
+
const rawLeft = align === "start" ? triggerLayout.pageX : align === "end" ? triggerLayout.pageX + triggerLayout.width - resolvedWidth : centerX - resolvedWidth / 2;
|
|
166
|
+
const left = Math.min(Math.max(spacing.lg, rawLeft), screenWidth - resolvedWidth - spacing.lg);
|
|
167
|
+
const positionStyle = renderAbove ? {
|
|
168
|
+
bottom: screenHeight - triggerLayout.pageY + sideOffset
|
|
169
|
+
} : {
|
|
170
|
+
top: triggerLayout.pageY + triggerLayout.height + sideOffset
|
|
171
|
+
};
|
|
172
|
+
const animatedStyle = (0, _reactNativeReanimated.useAnimatedStyle)(() => {
|
|
173
|
+
return {
|
|
174
|
+
opacity: progress.value,
|
|
175
|
+
transform: [{
|
|
176
|
+
translateY: renderAbove ? (1 - progress.value) * 8 : (1 - progress.value) * -8
|
|
177
|
+
}, {
|
|
178
|
+
scale: 0.95 + progress.value * 0.05
|
|
179
|
+
}]
|
|
180
|
+
};
|
|
181
|
+
});
|
|
182
|
+
if (!open) return null;
|
|
183
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Modal, {
|
|
184
|
+
transparent: true,
|
|
185
|
+
visible: open,
|
|
186
|
+
animationType: "none",
|
|
187
|
+
statusBarTranslucent: true,
|
|
188
|
+
navigationBarTranslucent: true,
|
|
189
|
+
hardwareAccelerated: true,
|
|
190
|
+
onRequestClose: () => setOpen(false),
|
|
191
|
+
...modalProps,
|
|
192
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
|
|
193
|
+
style: [_reactNative.StyleSheet.absoluteFill, overlayStyle],
|
|
194
|
+
onPress: () => setOpen(false)
|
|
195
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
|
|
196
|
+
style: [{
|
|
197
|
+
position: "absolute",
|
|
198
|
+
left,
|
|
199
|
+
width: resolvedWidth,
|
|
200
|
+
maxHeight,
|
|
201
|
+
borderRadius: radii.lg,
|
|
202
|
+
backgroundColor: colors.surface,
|
|
203
|
+
borderWidth: components.borderWidth.strong,
|
|
204
|
+
borderColor: colors.border,
|
|
205
|
+
padding: spacing.md,
|
|
206
|
+
overflow: "hidden"
|
|
207
|
+
}, positionStyle, animatedStyle, style],
|
|
208
|
+
children: children
|
|
209
|
+
})]
|
|
210
|
+
});
|
|
211
|
+
}
|
|
212
|
+
//# sourceMappingURL=HoverCard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeReanimated","_interopRequireWildcard","_index","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","HoverCardContext","React","createContext","useHoverCard","context","useContext","Error","HoverCard","open","controlledOpen","defaultOpen","onOpenChange","openDelay","closeDelay","triggerMode","children","colors","useTheme","uncontrolledOpen","setUncontrolledOpen","useState","triggerLayout","setTriggerLayout","pageX","pageY","width","height","isControlled","undefined","setOpen","useCallback","nextOpen","jsx","Provider","value","View","style","alignSelf","HoverCardTrigger","disabled","triggerRef","useRef","openTimer","closeTimer","useEffect","current","clearTimeout","measureAndSetOpen","measureInWindow","x","y","setTimeout","close","Pressable","ref","accessibilityRole","accessibilityState","expanded","onPress","onLongPress","onPressOut","delayLongPress","HoverCardContent","align","maxHeight","sideOffset","overlayStyle","modalProps","components","radii","spacing","progress","useSharedValue","withTiming","duration","screenHeight","screenWidth","Dimensions","resolvedWidth","Math","min","lg","spaceBelow","renderAbove","xl","centerX","rawLeft","left","max","positionStyle","bottom","top","animatedStyle","useAnimatedStyle","opacity","transform","translateY","scale","jsxs","Modal","transparent","visible","animationType","statusBarTranslucent","navigationBarTranslucent","hardwareAccelerated","onRequestClose","StyleSheet","absoluteFill","position","borderRadius","backgroundColor","surface","borderWidth","strong","borderColor","border","padding","md","overflow"],"sourceRoot":"../../../src","sources":["components/HoverCard.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.IconButton = IconButton;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _index = require("../theme/index.js");
|
|
10
|
+
var _index2 = require("../utils/index.js");
|
|
11
|
+
var _Text = require("./Text.js");
|
|
12
|
+
var _types = require("./types.js");
|
|
13
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
14
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
15
|
+
function getToneColor(tone, colors) {
|
|
16
|
+
if (tone === "primary") return colors.primary;
|
|
17
|
+
if (tone === "secondary") return colors.secondary;
|
|
18
|
+
if (tone === "accent") return colors.accent;
|
|
19
|
+
if (tone === "success") return colors.success;
|
|
20
|
+
if (tone === "warning") return colors.warning;
|
|
21
|
+
if (tone === "danger") return colors.danger;
|
|
22
|
+
return colors.info;
|
|
23
|
+
}
|
|
24
|
+
function resolveColor(color, colors) {
|
|
25
|
+
if (!color) return undefined;
|
|
26
|
+
return color in colors ? colors[color] : color;
|
|
27
|
+
}
|
|
28
|
+
function IconButton({
|
|
29
|
+
icon,
|
|
30
|
+
variant = "ghost",
|
|
31
|
+
size = "md",
|
|
32
|
+
tone = "primary",
|
|
33
|
+
color,
|
|
34
|
+
loading,
|
|
35
|
+
disabled,
|
|
36
|
+
badge,
|
|
37
|
+
style,
|
|
38
|
+
...props
|
|
39
|
+
}) {
|
|
40
|
+
const {
|
|
41
|
+
colors,
|
|
42
|
+
components
|
|
43
|
+
} = (0, _index.useTheme)();
|
|
44
|
+
const base = resolveColor(color, colors) ?? getToneColor(tone, colors);
|
|
45
|
+
const isDisabled = disabled || loading;
|
|
46
|
+
const containerSize = components.iconButton.size[size];
|
|
47
|
+
const iconSize = components.iconButton.iconSize[size];
|
|
48
|
+
const badgeTokens = components.iconButton.badge;
|
|
49
|
+
const backgroundColor = isDisabled ? colors.disabled : variant === "filled" ? base : variant === "soft" ? (0, _index2.withAlpha)(base, 0.12) : variant === "outline" ? colors.surface : colors.transparent;
|
|
50
|
+
const iconColor = isDisabled ? colors.disabledText : variant === "filled" ? colors.onPrimary : variant === "ghost" ? colors.text : base;
|
|
51
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Pressable, {
|
|
52
|
+
accessibilityRole: "button",
|
|
53
|
+
disabled: isDisabled,
|
|
54
|
+
style: ({
|
|
55
|
+
pressed
|
|
56
|
+
}) => [{
|
|
57
|
+
width: containerSize,
|
|
58
|
+
height: containerSize,
|
|
59
|
+
borderRadius: containerSize / 2,
|
|
60
|
+
backgroundColor,
|
|
61
|
+
borderColor: variant === "outline" ? colors.border : colors.transparent,
|
|
62
|
+
borderWidth: variant === "outline" ? components.borderWidth.strong : 0,
|
|
63
|
+
alignItems: "center",
|
|
64
|
+
justifyContent: "center",
|
|
65
|
+
opacity: pressed && !isDisabled ? 0.72 : 1
|
|
66
|
+
}, style],
|
|
67
|
+
...props,
|
|
68
|
+
children: [loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.ActivityIndicator, {
|
|
69
|
+
color: iconColor
|
|
70
|
+
}) : (0, _types.renderIcon)(icon, iconColor, iconSize), !!badge && badge > 0 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
71
|
+
style: {
|
|
72
|
+
position: "absolute",
|
|
73
|
+
top: badgeTokens.offset,
|
|
74
|
+
right: badgeTokens.offset,
|
|
75
|
+
minWidth: badgeTokens.minWidth,
|
|
76
|
+
height: badgeTokens.size,
|
|
77
|
+
paddingHorizontal: badgeTokens.paddingX,
|
|
78
|
+
borderRadius: badgeTokens.size / 2,
|
|
79
|
+
alignItems: "center",
|
|
80
|
+
justifyContent: "center",
|
|
81
|
+
backgroundColor: colors.danger,
|
|
82
|
+
borderWidth: badgeTokens.borderWidth,
|
|
83
|
+
borderColor: colors.surface
|
|
84
|
+
},
|
|
85
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.Text, {
|
|
86
|
+
variant: "caption",
|
|
87
|
+
color: "onDanger",
|
|
88
|
+
weight: "700",
|
|
89
|
+
style: {
|
|
90
|
+
fontSize: badgeTokens.fontSize,
|
|
91
|
+
lineHeight: badgeTokens.lineHeight
|
|
92
|
+
},
|
|
93
|
+
children: badge > 99 ? "99+" : String(badge)
|
|
94
|
+
})
|
|
95
|
+
})]
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=IconButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_index","_index2","_Text","_types","_jsxRuntime","e","__esModule","default","getToneColor","tone","colors","primary","secondary","accent","success","warning","danger","info","resolveColor","color","undefined","IconButton","icon","variant","size","loading","disabled","badge","style","props","components","useTheme","base","isDisabled","containerSize","iconButton","iconSize","badgeTokens","backgroundColor","withAlpha","surface","transparent","iconColor","disabledText","onPrimary","text","jsxs","Pressable","accessibilityRole","pressed","width","height","borderRadius","borderColor","border","borderWidth","strong","alignItems","justifyContent","opacity","children","jsx","ActivityIndicator","renderIcon","View","position","top","offset","right","minWidth","paddingHorizontal","paddingX","Text","weight","fontSize","lineHeight","String"],"sourceRoot":"../../../src","sources":["components/IconButton.tsx"],"mappings":"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","ignoreList":[]}
|