@campxdev/react-native-blueprint 0.1.13 → 0.1.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +82 -481
- package/lib/module/@types/rn-primitives.d.js +2 -0
- package/lib/module/@types/rn-primitives.d.js.map +1 -0
- package/lib/module/app/_layout.js +1 -7
- package/lib/module/app/_layout.js.map +1 -1
- package/lib/module/assets/404.json +1 -0
- package/lib/module/assets/empty-document.json +1 -0
- package/lib/module/assets/icons/logo.png +0 -0
- package/lib/module/assets/index.js +4 -0
- package/lib/module/assets/index.js.map +1 -0
- package/lib/module/assets/lotties/index.js +16 -0
- package/lib/module/assets/lotties/index.js.map +1 -0
- package/lib/module/assets/no-connection.json +1 -0
- package/lib/module/assets/no-content.json +1 -0
- package/lib/module/assets/no-profile.json +1 -0
- package/lib/module/assets/no-search.json +1 -0
- package/lib/module/assets/no-task.json +1 -0
- package/lib/module/assets/no-wifi.json +1 -0
- package/lib/module/components/DataDisplay/Accordion/Accordion.figma.js +41 -0
- package/lib/module/components/DataDisplay/Accordion/Accordion.figma.js.map +1 -0
- package/lib/module/components/DataDisplay/Accordion/Accordion.js +203 -0
- package/lib/module/components/DataDisplay/Accordion/Accordion.js.map +1 -0
- package/lib/module/components/DataDisplay/AccordionItem/AccordionItem.figma.js +35 -0
- package/lib/module/components/DataDisplay/AccordionItem/AccordionItem.figma.js.map +1 -0
- package/lib/module/components/DataDisplay/AccordionItem/AccordionItem.js +147 -0
- package/lib/module/components/DataDisplay/AccordionItem/AccordionItem.js.map +1 -0
- package/lib/module/components/DataDisplay/Avatar/Avatar.figma.js +44 -0
- package/lib/module/components/DataDisplay/Avatar/Avatar.figma.js.map +1 -0
- package/lib/module/components/DataDisplay/Avatar/Avatar.js +129 -0
- package/lib/module/components/DataDisplay/Avatar/Avatar.js.map +1 -0
- package/lib/module/components/DataDisplay/Badge/Badge.figma.js +54 -0
- package/lib/module/components/DataDisplay/Badge/Badge.figma.js.map +1 -0
- package/lib/module/components/DataDisplay/Badge/Badge.js +159 -0
- package/lib/module/components/DataDisplay/Badge/Badge.js.map +1 -0
- package/lib/module/components/DataDisplay/BannerRow/BannerRow.figma.js +34 -0
- package/lib/module/components/DataDisplay/BannerRow/BannerRow.figma.js.map +1 -0
- package/lib/module/components/DataDisplay/BannerRow/BannerRow.js +120 -0
- package/lib/module/components/DataDisplay/BannerRow/BannerRow.js.map +1 -0
- package/lib/module/components/DataDisplay/CalendarItem/CalendarItem.figma.js +62 -0
- package/lib/module/components/DataDisplay/CalendarItem/CalendarItem.figma.js.map +1 -0
- package/lib/module/components/DataDisplay/CalendarItem/CalendarItem.js +116 -0
- package/lib/module/components/DataDisplay/CalendarItem/CalendarItem.js.map +1 -0
- package/lib/module/components/DataDisplay/Card/Card.figma.js +34 -0
- package/lib/module/components/DataDisplay/Card/Card.figma.js.map +1 -0
- package/lib/module/components/DataDisplay/Card/Card.js +335 -0
- package/lib/module/components/DataDisplay/Card/Card.js.map +1 -0
- package/lib/module/components/DataDisplay/Chips/Chips.figma.js +48 -0
- package/lib/module/components/DataDisplay/Chips/Chips.figma.js.map +1 -0
- package/lib/module/components/DataDisplay/Chips/Chips.js +224 -0
- package/lib/module/components/DataDisplay/Chips/Chips.js.map +1 -0
- package/lib/module/components/DataDisplay/ChipsRow/ChipsRow.figma.js +42 -0
- package/lib/module/components/DataDisplay/ChipsRow/ChipsRow.figma.js.map +1 -0
- package/lib/module/components/DataDisplay/ChipsRow/ChipsRow.js +61 -0
- package/lib/module/components/DataDisplay/ChipsRow/ChipsRow.js.map +1 -0
- package/lib/module/components/DataDisplay/DataCard/DataCard.figma.js +38 -0
- package/lib/module/components/DataDisplay/DataCard/DataCard.figma.js.map +1 -0
- package/lib/module/components/DataDisplay/DataCard/DataCard.js +50 -0
- package/lib/module/components/DataDisplay/DataCard/DataCard.js.map +1 -0
- package/lib/module/components/DataDisplay/DataListItem/DataListItem.figma.js +58 -0
- package/lib/module/components/DataDisplay/DataListItem/DataListItem.figma.js.map +1 -0
- package/lib/module/components/DataDisplay/DataListItem/DataListItem.js +272 -0
- package/lib/module/components/DataDisplay/DataListItem/DataListItem.js.map +1 -0
- package/lib/module/components/DataDisplay/Datalist/DataList.figma.js +28 -0
- package/lib/module/components/DataDisplay/Datalist/DataList.figma.js.map +1 -0
- package/lib/module/components/DataDisplay/Datalist/Datalist.js +39 -0
- package/lib/module/components/DataDisplay/Datalist/Datalist.js.map +1 -0
- package/lib/module/components/DataDisplay/MonthCalendar/MonthCalendar.figma.js +15 -0
- package/lib/module/components/DataDisplay/MonthCalendar/MonthCalendar.figma.js.map +1 -0
- package/lib/module/components/DataDisplay/MonthCalendar/MonthCalendar.js +362 -0
- package/lib/module/components/DataDisplay/MonthCalendar/MonthCalendar.js.map +1 -0
- package/lib/module/components/DataDisplay/MonthCalendar/index.js +4 -0
- package/lib/module/components/DataDisplay/MonthCalendar/index.js.map +1 -0
- package/lib/module/components/DataDisplay/Separator/Separator.figma.js +38 -0
- package/lib/module/components/DataDisplay/Separator/Separator.figma.js.map +1 -0
- package/lib/module/components/DataDisplay/Separator/Separator.js +109 -0
- package/lib/module/components/DataDisplay/Separator/Separator.js.map +1 -0
- package/lib/module/components/DataDisplay/Skeleton/Skeleton.figma.js +39 -0
- package/lib/module/components/DataDisplay/Skeleton/Skeleton.figma.js.map +1 -0
- package/lib/module/components/DataDisplay/Skeleton/Skeleton.js +181 -0
- package/lib/module/components/DataDisplay/Skeleton/Skeleton.js.map +1 -0
- package/lib/module/components/DataDisplay/Tooltip/Tooltip.figma.js +33 -0
- package/lib/module/components/DataDisplay/Tooltip/Tooltip.figma.js.map +1 -0
- package/lib/module/components/DataDisplay/Tooltip/Tooltip.js +78 -0
- package/lib/module/components/DataDisplay/Tooltip/Tooltip.js.map +1 -0
- package/lib/module/components/Feedback/Alert/Alert.figma.js +33 -0
- package/lib/module/components/Feedback/Alert/Alert.figma.js.map +1 -0
- package/lib/module/components/Feedback/Alert/Alert.js +350 -0
- package/lib/module/components/Feedback/Alert/Alert.js.map +1 -0
- package/lib/module/components/Feedback/AlertDialog/Alert-Dialog.figma.js +24 -0
- package/lib/module/components/Feedback/AlertDialog/Alert-Dialog.figma.js.map +1 -0
- package/lib/module/components/Feedback/AlertDialog/Alert-Dialog.js +126 -0
- package/lib/module/components/Feedback/AlertDialog/Alert-Dialog.js.map +1 -0
- package/lib/module/components/Feedback/ProgressCircular/Progress-circular.figma.js +28 -0
- package/lib/module/components/Feedback/ProgressCircular/Progress-circular.figma.js.map +1 -0
- package/lib/module/components/Feedback/ProgressCircular/Progress-circular.js +141 -0
- package/lib/module/components/Feedback/ProgressCircular/Progress-circular.js.map +1 -0
- package/lib/module/components/Feedback/ProgressLinear/Progress-linear.figma.js +24 -0
- package/lib/module/components/Feedback/ProgressLinear/Progress-linear.figma.js.map +1 -0
- package/lib/module/components/Feedback/ProgressLinear/Progress-linear.js +98 -0
- package/lib/module/components/Feedback/ProgressLinear/Progress-linear.js.map +1 -0
- package/lib/module/components/Feedback/Stepper/Stepper.figma.js +76 -0
- package/lib/module/components/Feedback/Stepper/Stepper.figma.js.map +1 -0
- package/lib/module/components/Feedback/Stepper/Stepper.js +219 -0
- package/lib/module/components/Feedback/Stepper/Stepper.js.map +1 -0
- package/lib/module/components/Input/Button/Button.figma.js +35 -0
- package/lib/module/components/Input/Button/Button.figma.js.map +1 -0
- package/lib/module/components/Input/Button/Button.js +202 -0
- package/lib/module/components/Input/Button/Button.js.map +1 -0
- package/lib/module/components/Input/Checkbox/Checkbox.figma.js +36 -0
- package/lib/module/components/Input/Checkbox/Checkbox.figma.js.map +1 -0
- package/lib/module/components/Input/Checkbox/Checkbox.js +159 -0
- package/lib/module/components/Input/Checkbox/Checkbox.js.map +1 -0
- package/lib/module/components/Input/RadioGroup/Radio-Group.figma.js +38 -0
- package/lib/module/components/Input/RadioGroup/Radio-Group.figma.js.map +1 -0
- package/lib/module/components/Input/RadioGroup/Radio-Group.js +170 -0
- package/lib/module/components/Input/RadioGroup/Radio-Group.js.map +1 -0
- package/lib/module/components/Input/Select/Select.figma.js +39 -0
- package/lib/module/components/Input/Select/Select.figma.js.map +1 -0
- package/lib/module/components/Input/Select/Select.js +276 -0
- package/lib/module/components/Input/Select/Select.js.map +1 -0
- package/lib/module/components/Input/Text/Text.js +69 -0
- package/lib/module/components/Input/Text/Text.js.map +1 -0
- package/lib/module/components/Input/TextField/Textfield.figma.js +49 -0
- package/lib/module/components/Input/TextField/Textfield.figma.js.map +1 -0
- package/lib/module/components/Input/TextField/Textfield.js +191 -0
- package/lib/module/components/Input/TextField/Textfield.js.map +1 -0
- package/lib/module/components/Input/Toggle/Toggle.js +111 -0
- package/lib/module/components/Input/Toggle/Toggle.js.map +1 -0
- package/lib/module/components/Input/ToggleGroup/Toggle-Group.figma.js +54 -0
- package/lib/module/components/Input/ToggleGroup/Toggle-Group.figma.js.map +1 -0
- package/lib/module/components/Input/ToggleGroup/Toggle-Group.js +210 -0
- package/lib/module/components/Input/ToggleGroup/Toggle-Group.js.map +1 -0
- package/lib/module/components/Input/switch/Switch.figma.js +34 -0
- package/lib/module/components/Input/switch/Switch.figma.js.map +1 -0
- package/lib/module/components/Input/switch/Switch.js +107 -0
- package/lib/module/components/Input/switch/Switch.js.map +1 -0
- package/lib/module/components/Layout/AspectRatio/Aspect-Ratio.figma.js +24 -0
- package/lib/module/components/Layout/AspectRatio/Aspect-Ratio.figma.js.map +1 -0
- package/lib/module/components/Layout/AspectRatio/Aspect-Ratio.js +59 -0
- package/lib/module/components/Layout/AspectRatio/Aspect-Ratio.js.map +1 -0
- package/lib/module/components/Layout/Bottomsheet/Bottom-Sheet.js +312 -0
- package/lib/module/components/Layout/Bottomsheet/Bottom-Sheet.js.map +1 -0
- package/lib/module/components/Layout/Bottomsheet/BottomSheet.figma.js +35 -0
- package/lib/module/components/Layout/Bottomsheet/BottomSheet.figma.js.map +1 -0
- package/lib/module/components/Layout/PageContent/PageContent.figma.js +32 -0
- package/lib/module/components/Layout/PageContent/PageContent.figma.js.map +1 -0
- package/lib/module/components/Layout/PageContent/PageContent.js +50 -0
- package/lib/module/components/Layout/PageContent/PageContent.js.map +1 -0
- package/lib/module/components/Layout/PageLayoutFocused/PageLayoutFocused.figma.js +62 -0
- package/lib/module/components/Layout/PageLayoutFocused/PageLayoutFocused.figma.js.map +1 -0
- package/lib/module/components/Layout/PageLayoutFocused/PageLayoutFocused.js +66 -0
- package/lib/module/components/Layout/PageLayoutFocused/PageLayoutFocused.js.map +1 -0
- package/lib/module/components/Layout/PageLayoutShell/PageLayoutShell.figma.js +38 -0
- package/lib/module/components/Layout/PageLayoutShell/PageLayoutShell.figma.js.map +1 -0
- package/lib/module/components/Layout/PageLayoutShell/PageLayoutShell.js +86 -0
- package/lib/module/components/Layout/PageLayoutShell/PageLayoutShell.js.map +1 -0
- package/lib/module/components/Layout/PopoverContainer/Popover-Container.js +226 -0
- package/lib/module/components/Layout/PopoverContainer/Popover-Container.js.map +1 -0
- package/lib/module/components/Layout/PopoverContainer/PopoverContainer.figma.js +33 -0
- package/lib/module/components/Layout/PopoverContainer/PopoverContainer.figma.js.map +1 -0
- package/lib/module/components/Layout/Tabs/Tabs.figma.js +25 -0
- package/lib/module/components/Layout/Tabs/Tabs.figma.js.map +1 -0
- package/lib/module/components/Layout/Tabs/Tabs.js +143 -0
- package/lib/module/components/Layout/Tabs/Tabs.js.map +1 -0
- package/lib/module/components/Navigation/Appbar/AppBar.figma.js +56 -0
- package/lib/module/components/Navigation/Appbar/AppBar.figma.js.map +1 -0
- package/lib/module/components/Navigation/Appbar/AppBar.js +147 -0
- package/lib/module/components/Navigation/Appbar/AppBar.js.map +1 -0
- package/lib/module/components/Navigation/ContextMenu/Context-Menu.js +98 -0
- package/lib/module/components/Navigation/ContextMenu/Context-Menu.js.map +1 -0
- package/lib/module/components/Navigation/ContextMenu/ContextMenu.figma.js +28 -0
- package/lib/module/components/Navigation/ContextMenu/ContextMenu.figma.js.map +1 -0
- package/lib/module/components/Navigation/Dialog/Dialog.figma.js +35 -0
- package/lib/module/components/Navigation/Dialog/Dialog.figma.js.map +1 -0
- package/lib/module/components/Navigation/Dialog/Dialog.js +199 -0
- package/lib/module/components/Navigation/Dialog/Dialog.js.map +1 -0
- package/lib/module/components/Navigation/FloatingAction/Floating-Action.figma.js +26 -0
- package/lib/module/components/Navigation/FloatingAction/Floating-Action.figma.js.map +1 -0
- package/lib/module/components/Navigation/FloatingAction/Floating-Action.js +58 -0
- package/lib/module/components/Navigation/FloatingAction/Floating-Action.js.map +1 -0
- package/lib/module/components/Navigation/Navbar/NavBar.figma.js +29 -0
- package/lib/module/components/Navigation/Navbar/NavBar.figma.js.map +1 -0
- package/lib/module/components/Navigation/Navbar/NavBar.js +170 -0
- package/lib/module/components/Navigation/Navbar/NavBar.js.map +1 -0
- package/lib/module/components/Navigation/Popover/Popover.figma.js +54 -0
- package/lib/module/components/Navigation/Popover/Popover.figma.js.map +1 -0
- package/lib/module/components/Navigation/Popover/Popover.js +48 -0
- package/lib/module/components/Navigation/Popover/Popover.js.map +1 -0
- package/lib/module/components/Navigation/Themetoggle/Theme-Toggle.figma.js +18 -0
- package/lib/module/components/Navigation/Themetoggle/Theme-Toggle.figma.js.map +1 -0
- package/lib/module/components/Navigation/Themetoggle/Theme-Toggle.js +48 -0
- package/lib/module/components/Navigation/Themetoggle/Theme-Toggle.js.map +1 -0
- package/lib/module/components/ui/Custom-Card.js +3 -7
- package/lib/module/components/ui/Custom-Card.js.map +1 -1
- package/lib/module/components/ui/Dropdown-Menu.js +4 -4
- package/lib/module/components/ui/Dropdown-Menu.js.map +1 -1
- package/lib/module/components/ui/Greeting-Card.js +1 -1
- package/lib/module/components/ui/Greeting-Card.js.map +1 -1
- package/lib/module/components/ui/Hover-Card.js +1 -1
- package/lib/module/components/ui/Hover-Card.js.map +1 -1
- package/lib/module/components/ui/Input.js +2 -3
- package/lib/module/components/ui/Input.js.map +1 -1
- package/lib/module/components/ui/Label.js +1 -1
- package/lib/module/components/ui/Label.js.map +1 -1
- package/lib/module/components/ui/Menubar.js +5 -5
- package/lib/module/components/ui/Menubar.js.map +1 -1
- package/lib/module/components/ui/Native-Only-Animated-View.js.map +1 -1
- package/lib/module/components/ui/Slider.js +2 -7
- package/lib/module/components/ui/Slider.js.map +1 -1
- package/lib/module/components/ui/Table.js +3 -3
- package/lib/module/components/ui/Table.js.map +1 -1
- package/lib/module/components/ui/Toast.js +3 -3
- package/lib/module/components/ui/Toast.js.map +1 -1
- package/lib/module/components/ui/index.js +51 -48
- package/lib/module/components/ui/index.js.map +1 -1
- package/lib/module/index.js +0 -3
- package/lib/module/index.js.map +1 -1
- package/lib/module/lib/fonts.js +8 -81
- package/lib/module/lib/fonts.js.map +1 -1
- package/lib/module/lib/theme.js +26 -2
- package/lib/module/lib/theme.js.map +1 -1
- package/lib/module/patterns/MonthlyCalendarPattern.js +465 -0
- package/lib/module/patterns/MonthlyCalendarPattern.js.map +1 -0
- package/lib/module/patterns/index.js +5 -0
- package/lib/module/patterns/index.js.map +1 -0
- package/lib/module/patterns/pattern-components/AlertDialogPattern/AlertDialogPattern.figma.js +32 -0
- package/lib/module/patterns/pattern-components/AlertDialogPattern/AlertDialogPattern.figma.js.map +1 -0
- package/lib/module/patterns/pattern-components/AlertDialogPattern/AlertDialogPattern.js +43 -0
- package/lib/module/patterns/pattern-components/AlertDialogPattern/AlertDialogPattern.js.map +1 -0
- package/lib/module/patterns/pattern-components/AlertDialogPattern/index.js +4 -0
- package/lib/module/patterns/pattern-components/AlertDialogPattern/index.js.map +1 -0
- package/lib/module/patterns/pattern-components/AlertPattern/AlertPattern.figma.js +19 -0
- package/lib/module/patterns/pattern-components/AlertPattern/AlertPattern.figma.js.map +1 -0
- package/lib/module/patterns/pattern-components/AlertPattern/AlertPattern.js +113 -0
- package/lib/module/patterns/pattern-components/AlertPattern/AlertPattern.js.map +1 -0
- package/lib/module/patterns/pattern-components/AlertPattern/index.js +4 -0
- package/lib/module/patterns/pattern-components/AlertPattern/index.js.map +1 -0
- package/lib/module/patterns/pattern-components/BottomSheetPattern/BottomSheetPattern.figma.js +34 -0
- package/lib/module/patterns/pattern-components/BottomSheetPattern/BottomSheetPattern.figma.js.map +1 -0
- package/lib/module/patterns/pattern-components/BottomSheetPattern/BottomSheetPattern.js +46 -0
- package/lib/module/patterns/pattern-components/BottomSheetPattern/BottomSheetPattern.js.map +1 -0
- package/lib/module/patterns/pattern-components/CalendarPattern/CalendarPattern.figma.js +73 -0
- package/lib/module/patterns/pattern-components/CalendarPattern/CalendarPattern.figma.js.map +1 -0
- package/lib/module/patterns/pattern-components/CalendarPattern/CalendarPattern.js +166 -0
- package/lib/module/patterns/pattern-components/CalendarPattern/CalendarPattern.js.map +1 -0
- package/lib/module/patterns/pattern-components/CardListPattern/CardListPattern.figma.js +69 -0
- package/lib/module/patterns/pattern-components/CardListPattern/CardListPattern.figma.js.map +1 -0
- package/lib/module/patterns/pattern-components/CardListPattern/CardListPattern.js +91 -0
- package/lib/module/patterns/pattern-components/CardListPattern/CardListPattern.js.map +1 -0
- package/lib/module/patterns/pattern-components/CardListPattern/index.js +4 -0
- package/lib/module/patterns/pattern-components/CardListPattern/index.js.map +1 -0
- package/lib/module/patterns/pattern-components/DashboardPattern/DashboardPattern.figma.js +57 -0
- package/lib/module/patterns/pattern-components/DashboardPattern/DashboardPattern.figma.js.map +1 -0
- package/lib/module/patterns/pattern-components/DashboardPattern/DashboardPattern.js +242 -0
- package/lib/module/patterns/pattern-components/DashboardPattern/DashboardPattern.js.map +1 -0
- package/lib/module/patterns/pattern-components/DataListPattern/DataListPattern.figma.js +70 -0
- package/lib/module/patterns/pattern-components/DataListPattern/DataListPattern.figma.js.map +1 -0
- package/lib/module/patterns/pattern-components/DataListPattern/DataListPattern.js +66 -0
- package/lib/module/patterns/pattern-components/DataListPattern/DataListPattern.js.map +1 -0
- package/lib/module/patterns/pattern-components/DataListPattern/index.js +4 -0
- package/lib/module/patterns/pattern-components/DataListPattern/index.js.map +1 -0
- package/lib/module/patterns/pattern-components/DialogPattern/DialogPattern.figma.js +33 -0
- package/lib/module/patterns/pattern-components/DialogPattern/DialogPattern.figma.js.map +1 -0
- package/lib/module/patterns/pattern-components/DialogPattern/DialogPattern.js +48 -0
- package/lib/module/patterns/pattern-components/DialogPattern/DialogPattern.js.map +1 -0
- package/lib/module/patterns/pattern-components/DialogPattern/index.js +4 -0
- package/lib/module/patterns/pattern-components/DialogPattern/index.js.map +1 -0
- package/lib/module/patterns/pattern-components/EmptyState/EmptyState.figma.js +33 -0
- package/lib/module/patterns/pattern-components/EmptyState/EmptyState.figma.js.map +1 -0
- package/lib/module/patterns/pattern-components/EmptyState/EmptyState.js +140 -0
- package/lib/module/patterns/pattern-components/EmptyState/EmptyState.js.map +1 -0
- package/lib/module/patterns/pattern-components/EmptyState/index.js +4 -0
- package/lib/module/patterns/pattern-components/EmptyState/index.js.map +1 -0
- package/lib/module/patterns/pattern-components/EntityPatternGuided/EntityPatternGuided.figma.js +31 -0
- package/lib/module/patterns/pattern-components/EntityPatternGuided/EntityPatternGuided.figma.js.map +1 -0
- package/lib/module/patterns/pattern-components/EntityPatternGuided/EntityPatternGuided.js +122 -0
- package/lib/module/patterns/pattern-components/EntityPatternGuided/EntityPatternGuided.js.map +1 -0
- package/lib/module/patterns/pattern-components/EntityPatternOverview/EntityPatternOverview.figma.js +31 -0
- package/lib/module/patterns/pattern-components/EntityPatternOverview/EntityPatternOverview.figma.js.map +1 -0
- package/lib/module/patterns/pattern-components/EntityPatternOverview/EntityPatternOverview.js +135 -0
- package/lib/module/patterns/pattern-components/EntityPatternOverview/EntityPatternOverview.js.map +1 -0
- package/lib/module/patterns/pattern-components/EntityPatternOverview/index.js +4 -0
- package/lib/module/patterns/pattern-components/EntityPatternOverview/index.js.map +1 -0
- package/lib/module/patterns/pattern-components/EntityPatternStructured/EntityPatternStructured.figma.js +31 -0
- package/lib/module/patterns/pattern-components/EntityPatternStructured/EntityPatternStructured.figma.js.map +1 -0
- package/lib/module/patterns/pattern-components/EntityPatternStructured/EntityPatternStructured.js +139 -0
- package/lib/module/patterns/pattern-components/EntityPatternStructured/EntityPatternStructured.js.map +1 -0
- package/lib/module/patterns/pattern-components/EntityPatternStructured/index.js +4 -0
- package/lib/module/patterns/pattern-components/EntityPatternStructured/index.js.map +1 -0
- package/lib/module/patterns/pattern-components/FormPattern/FormPattern.figma.js +31 -0
- package/lib/module/patterns/pattern-components/FormPattern/FormPattern.figma.js.map +1 -0
- package/lib/module/patterns/pattern-components/FormPattern/FormPattern.js +115 -0
- package/lib/module/patterns/pattern-components/FormPattern/FormPattern.js.map +1 -0
- package/lib/module/patterns/pattern-components/FormPattern/index.js +4 -0
- package/lib/module/patterns/pattern-components/FormPattern/index.js.map +1 -0
- package/lib/module/patterns/pattern-components/MonthlyCalendarPattern/MonthlyCalendarPattern.figma.js +48 -0
- package/lib/module/patterns/pattern-components/MonthlyCalendarPattern/MonthlyCalendarPattern.figma.js.map +1 -0
- package/lib/module/patterns/pattern-components/MonthlyCalendarPattern/MonthlyCalendarPattern.js +121 -0
- package/lib/module/patterns/pattern-components/MonthlyCalendarPattern/MonthlyCalendarPattern.js.map +1 -0
- package/lib/module/patterns/pattern-components/MonthlyCalendarPattern/index.js +5 -0
- package/lib/module/patterns/pattern-components/MonthlyCalendarPattern/index.js.map +1 -0
- package/lib/module/patterns/pattern-components/SkeletonPattern/SkeletonPattern.figma.js +31 -0
- package/lib/module/patterns/pattern-components/SkeletonPattern/SkeletonPattern.figma.js.map +1 -0
- package/lib/module/patterns/pattern-components/SkeletonPattern/SkeletonPattern.js +91 -0
- package/lib/module/patterns/pattern-components/SkeletonPattern/SkeletonPattern.js.map +1 -0
- package/lib/module/patterns/pattern-components/SkeletonPattern/index.js +4 -0
- package/lib/module/patterns/pattern-components/SkeletonPattern/index.js.map +1 -0
- package/lib/module/patterns/pattern-components/index.js +17 -0
- package/lib/module/patterns/pattern-components/index.js.map +1 -0
- package/package.json +65 -634
- package/src/@types/rn-primitives.d.ts +85 -0
- package/src/app/_layout.tsx +1 -7
- package/src/assets/404.json +1 -0
- package/src/assets/empty-document.json +1 -0
- package/src/assets/icons/logo.png +0 -0
- package/src/assets/index.ts +1 -0
- package/src/assets/lotties/index.ts +15 -0
- package/src/assets/no-connection.json +1 -0
- package/src/assets/no-content.json +1 -0
- package/src/assets/no-profile.json +1 -0
- package/src/assets/no-search.json +1 -0
- package/src/assets/no-task.json +1 -0
- package/src/assets/no-wifi.json +1 -0
- package/src/components/DataDisplay/Accordion/Accordion.figma.tsx +36 -0
- package/src/components/DataDisplay/Accordion/Accordion.tsx +226 -0
- package/src/components/DataDisplay/AccordionItem/AccordionItem.figma.tsx +33 -0
- package/src/components/DataDisplay/AccordionItem/AccordionItem.tsx +168 -0
- package/src/components/DataDisplay/Avatar/Avatar.figma.tsx +36 -0
- package/src/components/DataDisplay/Avatar/Avatar.tsx +146 -0
- package/src/components/DataDisplay/Badge/Badge.figma.tsx +56 -0
- package/src/components/DataDisplay/Badge/Badge.tsx +169 -0
- package/src/components/DataDisplay/BannerRow/BannerRow.figma.tsx +26 -0
- package/src/components/DataDisplay/BannerRow/BannerRow.tsx +185 -0
- package/src/components/DataDisplay/CalendarItem/CalendarItem.figma.tsx +74 -0
- package/src/components/DataDisplay/CalendarItem/CalendarItem.tsx +176 -0
- package/src/components/DataDisplay/Card/Card.figma.tsx +36 -0
- package/src/components/DataDisplay/Card/Card.tsx +449 -0
- package/src/components/DataDisplay/Chips/Chips.figma.tsx +43 -0
- package/src/components/DataDisplay/Chips/Chips.tsx +278 -0
- package/src/components/DataDisplay/ChipsRow/ChipsRow.figma.tsx +34 -0
- package/src/components/DataDisplay/ChipsRow/ChipsRow.tsx +90 -0
- package/src/components/DataDisplay/DataCard/DataCard.figma.tsx +31 -0
- package/src/components/DataDisplay/DataCard/DataCard.tsx +67 -0
- package/src/components/DataDisplay/DataListItem/DataListItem.figma.tsx +60 -0
- package/src/components/DataDisplay/DataListItem/DataListItem.tsx +370 -0
- package/src/components/DataDisplay/Datalist/DataList.figma.tsx +32 -0
- package/src/components/DataDisplay/Datalist/Datalist.tsx +43 -0
- package/src/components/DataDisplay/MonthCalendar/MonthCalendar.figma.tsx +15 -0
- package/src/components/DataDisplay/MonthCalendar/MonthCalendar.tsx +354 -0
- package/src/components/DataDisplay/MonthCalendar/index.ts +1 -0
- package/src/components/DataDisplay/Separator/Separator.figma.tsx +34 -0
- package/src/components/DataDisplay/Separator/Separator.tsx +107 -0
- package/src/components/DataDisplay/Skeleton/Skeleton.figma.tsx +36 -0
- package/src/components/DataDisplay/Skeleton/Skeleton.tsx +164 -0
- package/src/components/DataDisplay/Tooltip/Tooltip.figma.tsx +30 -0
- package/src/components/DataDisplay/Tooltip/Tooltip.tsx +100 -0
- package/src/components/Feedback/Alert/Alert.figma.tsx +40 -0
- package/src/components/Feedback/Alert/Alert.tsx +378 -0
- package/src/components/Feedback/AlertDialog/Alert-Dialog.figma.tsx +25 -0
- package/src/components/Feedback/AlertDialog/Alert-Dialog.tsx +176 -0
- package/src/components/Feedback/ProgressCircular/Progress-circular.figma.tsx +32 -0
- package/src/components/Feedback/ProgressCircular/Progress-circular.tsx +164 -0
- package/src/components/Feedback/ProgressLinear/Progress-linear.figma.tsx +27 -0
- package/src/components/Feedback/ProgressLinear/Progress-linear.tsx +125 -0
- package/src/components/Feedback/Stepper/Stepper.figma.tsx +92 -0
- package/src/components/Feedback/Stepper/Stepper.tsx +289 -0
- package/src/components/Input/Button/Button.figma.tsx +41 -0
- package/src/components/Input/Button/Button.tsx +223 -0
- package/src/components/Input/Checkbox/Checkbox.figma.tsx +35 -0
- package/src/components/Input/Checkbox/Checkbox.tsx +179 -0
- package/src/components/Input/RadioGroup/Radio-Group.figma.tsx +36 -0
- package/src/components/Input/RadioGroup/Radio-Group.tsx +221 -0
- package/src/components/Input/Select/Select.figma.tsx +44 -0
- package/src/components/Input/Select/Select.tsx +365 -0
- package/src/components/Input/Text/Text.tsx +73 -0
- package/src/components/Input/TextField/Textfield.figma.tsx +54 -0
- package/src/components/Input/TextField/Textfield.tsx +269 -0
- package/src/components/Input/Toggle/Toggle.tsx +119 -0
- package/src/components/Input/ToggleGroup/Toggle-Group.figma.tsx +48 -0
- package/src/components/Input/ToggleGroup/Toggle-Group.tsx +263 -0
- package/src/components/Input/switch/Switch.figma.tsx +38 -0
- package/src/components/Input/switch/Switch.tsx +103 -0
- package/src/components/Layout/AspectRatio/Aspect-Ratio.figma.tsx +22 -0
- package/src/components/Layout/AspectRatio/Aspect-Ratio.tsx +54 -0
- package/src/components/Layout/Bottomsheet/Bottom-Sheet.tsx +443 -0
- package/src/components/Layout/Bottomsheet/BottomSheet.figma.tsx +38 -0
- package/src/components/Layout/PageContent/PageContent.figma.tsx +26 -0
- package/src/components/Layout/PageContent/PageContent.tsx +61 -0
- package/src/components/Layout/PageLayoutFocused/PageLayoutFocused.figma.tsx +65 -0
- package/src/components/Layout/PageLayoutFocused/PageLayoutFocused.tsx +67 -0
- package/src/components/Layout/PageLayoutShell/PageLayoutShell.figma.tsx +39 -0
- package/src/components/Layout/PageLayoutShell/PageLayoutShell.tsx +86 -0
- package/src/components/Layout/PopoverContainer/Popover-Container.tsx +300 -0
- package/src/components/Layout/PopoverContainer/PopoverContainer.figma.tsx +38 -0
- package/src/components/Layout/Tabs/Tabs.figma.tsx +21 -0
- package/src/components/Layout/Tabs/Tabs.tsx +170 -0
- package/src/components/Navigation/Appbar/AppBar.figma.tsx +56 -0
- package/src/components/Navigation/Appbar/AppBar.tsx +216 -0
- package/src/components/Navigation/ContextMenu/Context-Menu.tsx +136 -0
- package/src/components/Navigation/ContextMenu/ContextMenu.figma.tsx +27 -0
- package/src/components/Navigation/Dialog/Dialog.figma.tsx +38 -0
- package/src/components/Navigation/Dialog/Dialog.tsx +249 -0
- package/src/components/Navigation/FloatingAction/Floating-Action.figma.tsx +30 -0
- package/src/components/Navigation/FloatingAction/Floating-Action.tsx +77 -0
- package/src/components/Navigation/Navbar/NavBar.figma.tsx +41 -0
- package/src/components/Navigation/Navbar/NavBar.tsx +214 -0
- package/src/components/Navigation/Popover/Popover.figma.tsx +63 -0
- package/src/components/Navigation/Popover/Popover.tsx +59 -0
- package/src/components/Navigation/Themetoggle/Theme-Toggle.figma.tsx +19 -0
- package/src/components/Navigation/Themetoggle/Theme-Toggle.tsx +51 -0
- package/src/components/ui/Custom-Card.tsx +2 -7
- package/src/components/ui/Dropdown-Menu.tsx +6 -10
- package/src/components/ui/Greeting-Card.tsx +1 -1
- package/src/components/ui/Hover-Card.tsx +1 -1
- package/src/components/ui/Input.tsx +4 -12
- package/src/components/ui/Label.tsx +1 -1
- package/src/components/ui/Menubar.tsx +9 -16
- package/src/components/ui/Native-Only-Animated-View.tsx +4 -3
- package/src/components/ui/Slider.tsx +2 -8
- package/src/components/ui/Table.tsx +8 -10
- package/src/components/ui/Toast.tsx +4 -7
- package/src/components/ui/index.ts +51 -48
- package/src/index.tsx +0 -3
- package/src/lib/fonts.ts +12 -83
- package/src/lib/theme.ts +22 -0
- package/src/patterns/MonthlyCalendarPattern.tsx +404 -0
- package/src/patterns/index.ts +2 -0
- package/src/patterns/pattern-components/AlertDialogPattern/AlertDialogPattern.figma.tsx +28 -0
- package/src/patterns/pattern-components/AlertDialogPattern/AlertDialogPattern.tsx +73 -0
- package/src/patterns/pattern-components/AlertDialogPattern/index.ts +4 -0
- package/src/patterns/pattern-components/AlertPattern/AlertPattern.figma.tsx +15 -0
- package/src/patterns/pattern-components/AlertPattern/AlertPattern.tsx +154 -0
- package/src/patterns/pattern-components/AlertPattern/index.ts +2 -0
- package/src/patterns/pattern-components/BottomSheetPattern/BottomSheetPattern.figma.tsx +30 -0
- package/src/patterns/pattern-components/BottomSheetPattern/BottomSheetPattern.tsx +66 -0
- package/src/patterns/pattern-components/CalendarPattern/CalendarPattern.figma.tsx +79 -0
- package/src/patterns/pattern-components/CalendarPattern/CalendarPattern.tsx +200 -0
- package/src/patterns/pattern-components/CardListPattern/CardListPattern.figma.tsx +61 -0
- package/src/patterns/pattern-components/CardListPattern/CardListPattern.tsx +139 -0
- package/src/patterns/pattern-components/CardListPattern/index.ts +2 -0
- package/src/patterns/pattern-components/DashboardPattern/DashboardPattern.figma.tsx +50 -0
- package/src/patterns/pattern-components/DashboardPattern/DashboardPattern.tsx +295 -0
- package/src/patterns/pattern-components/DataListPattern/DataListPattern.figma.tsx +45 -0
- package/src/patterns/pattern-components/DataListPattern/DataListPattern.tsx +88 -0
- package/src/patterns/pattern-components/DataListPattern/index.ts +2 -0
- package/src/patterns/pattern-components/DialogPattern/DialogPattern.figma.tsx +29 -0
- package/src/patterns/pattern-components/DialogPattern/DialogPattern.tsx +71 -0
- package/src/patterns/pattern-components/DialogPattern/index.ts +1 -0
- package/src/patterns/pattern-components/EmptyState/EmptyState.figma.tsx +34 -0
- package/src/patterns/pattern-components/EmptyState/EmptyState.tsx +175 -0
- package/src/patterns/pattern-components/EmptyState/index.ts +2 -0
- package/src/patterns/pattern-components/EntityPatternGuided/EntityPatternGuided.figma.tsx +27 -0
- package/src/patterns/pattern-components/EntityPatternGuided/EntityPatternGuided.tsx +163 -0
- package/src/patterns/pattern-components/EntityPatternOverview/EntityPatternOverview.figma.tsx +27 -0
- package/src/patterns/pattern-components/EntityPatternOverview/EntityPatternOverview.tsx +174 -0
- package/src/patterns/pattern-components/EntityPatternOverview/index.ts +2 -0
- package/src/patterns/pattern-components/EntityPatternStructured/EntityPatternStructured.figma.tsx +27 -0
- package/src/patterns/pattern-components/EntityPatternStructured/EntityPatternStructured.tsx +187 -0
- package/src/patterns/pattern-components/EntityPatternStructured/index.ts +2 -0
- package/src/patterns/pattern-components/FormPattern/FormPattern.figma.tsx +27 -0
- package/src/patterns/pattern-components/FormPattern/FormPattern.tsx +138 -0
- package/src/patterns/pattern-components/FormPattern/index.ts +2 -0
- package/src/patterns/pattern-components/MonthlyCalendarPattern/MonthlyCalendarPattern.figma.tsx +39 -0
- package/src/patterns/pattern-components/MonthlyCalendarPattern/MonthlyCalendarPattern.tsx +139 -0
- package/src/patterns/pattern-components/MonthlyCalendarPattern/index.ts +5 -0
- package/src/patterns/pattern-components/SkeletonPattern/SkeletonPattern.figma.tsx +27 -0
- package/src/patterns/pattern-components/SkeletonPattern/SkeletonPattern.tsx +100 -0
- package/src/patterns/pattern-components/SkeletonPattern/index.ts +2 -0
- package/src/patterns/pattern-components/index.ts +14 -0
- package/lib/commonjs/app/_layout.js +0 -34
- package/lib/commonjs/app/_layout.js.map +0 -1
- package/lib/commonjs/assets/icons/weather_icons/drizzle.png +0 -0
- package/lib/commonjs/assets/icons/weather_icons/foggy.png +0 -0
- package/lib/commonjs/assets/icons/weather_icons/freezing_rain.png +0 -0
- package/lib/commonjs/assets/icons/weather_icons/partly_cloudy.png +0 -0
- package/lib/commonjs/assets/icons/weather_icons/rainy.png +0 -0
- package/lib/commonjs/assets/icons/weather_icons/showers.png +0 -0
- package/lib/commonjs/assets/icons/weather_icons/sunny_weather.png +0 -0
- package/lib/commonjs/assets/icons/weather_icons/thunderstorm.png +0 -0
- package/lib/commonjs/assets/icons/weather_icons/thunderstorm_hail.png +0 -0
- package/lib/commonjs/components/theme-config.js +0 -274
- package/lib/commonjs/components/theme-config.js.map +0 -1
- package/lib/commonjs/components/ui/Accordion.js +0 -235
- package/lib/commonjs/components/ui/Accordion.js.map +0 -1
- package/lib/commonjs/components/ui/Alert-Dialog.js +0 -280
- package/lib/commonjs/components/ui/Alert-Dialog.js.map +0 -1
- package/lib/commonjs/components/ui/Alert.js +0 -113
- package/lib/commonjs/components/ui/Alert.js.map +0 -1
- package/lib/commonjs/components/ui/AppBar.js +0 -407
- package/lib/commonjs/components/ui/AppBar.js.map +0 -1
- package/lib/commonjs/components/ui/Aspect-Ratio.js +0 -30
- package/lib/commonjs/components/ui/Aspect-Ratio.js.map +0 -1
- package/lib/commonjs/components/ui/Avatar.js +0 -101
- package/lib/commonjs/components/ui/Avatar.js.map +0 -1
- package/lib/commonjs/components/ui/Badge.js +0 -131
- package/lib/commonjs/components/ui/Badge.js.map +0 -1
- package/lib/commonjs/components/ui/Bottom-Sheet.js +0 -156
- package/lib/commonjs/components/ui/Bottom-Sheet.js.map +0 -1
- package/lib/commonjs/components/ui/Button.js +0 -92
- package/lib/commonjs/components/ui/Button.js.map +0 -1
- package/lib/commonjs/components/ui/Card.js +0 -180
- package/lib/commonjs/components/ui/Card.js.map +0 -1
- package/lib/commonjs/components/ui/Checkbox.js +0 -69
- package/lib/commonjs/components/ui/Checkbox.js.map +0 -1
- package/lib/commonjs/components/ui/Collapsible.js +0 -45
- package/lib/commonjs/components/ui/Collapsible.js.map +0 -1
- package/lib/commonjs/components/ui/Context-Menu.js +0 -304
- package/lib/commonjs/components/ui/Context-Menu.js.map +0 -1
- package/lib/commonjs/components/ui/Custom-Card.js +0 -210
- package/lib/commonjs/components/ui/Custom-Card.js.map +0 -1
- package/lib/commonjs/components/ui/Dialog.js +0 -214
- package/lib/commonjs/components/ui/Dialog.js.map +0 -1
- package/lib/commonjs/components/ui/Dropdown-Menu.js +0 -438
- package/lib/commonjs/components/ui/Dropdown-Menu.js.map +0 -1
- package/lib/commonjs/components/ui/Floating-Action.js +0 -55
- package/lib/commonjs/components/ui/Floating-Action.js.map +0 -1
- package/lib/commonjs/components/ui/Greeting-Card.js +0 -401
- package/lib/commonjs/components/ui/Greeting-Card.js.map +0 -1
- package/lib/commonjs/components/ui/Hover-Card.js +0 -100
- package/lib/commonjs/components/ui/Hover-Card.js.map +0 -1
- package/lib/commonjs/components/ui/Icon.js +0 -76
- package/lib/commonjs/components/ui/Icon.js.map +0 -1
- package/lib/commonjs/components/ui/Input.js +0 -79
- package/lib/commonjs/components/ui/Input.js.map +0 -1
- package/lib/commonjs/components/ui/Label.js +0 -48
- package/lib/commonjs/components/ui/Label.js.map +0 -1
- package/lib/commonjs/components/ui/Menubar.js +0 -392
- package/lib/commonjs/components/ui/Menubar.js.map +0 -1
- package/lib/commonjs/components/ui/Native-Only-Animated-View.js +0 -43
- package/lib/commonjs/components/ui/Native-Only-Animated-View.js.map +0 -1
- package/lib/commonjs/components/ui/NavBar.js +0 -356
- package/lib/commonjs/components/ui/NavBar.js.map +0 -1
- package/lib/commonjs/components/ui/Popover.js +0 -105
- package/lib/commonjs/components/ui/Popover.js.map +0 -1
- package/lib/commonjs/components/ui/Progress.js +0 -127
- package/lib/commonjs/components/ui/Progress.js.map +0 -1
- package/lib/commonjs/components/ui/Radio-Group.js +0 -78
- package/lib/commonjs/components/ui/Radio-Group.js.map +0 -1
- package/lib/commonjs/components/ui/Select.js +0 -283
- package/lib/commonjs/components/ui/Select.js.map +0 -1
- package/lib/commonjs/components/ui/Separator.js +0 -62
- package/lib/commonjs/components/ui/Separator.js.map +0 -1
- package/lib/commonjs/components/ui/SizedBox.js +0 -106
- package/lib/commonjs/components/ui/SizedBox.js.map +0 -1
- package/lib/commonjs/components/ui/Skeleton.js +0 -60
- package/lib/commonjs/components/ui/Skeleton.js.map +0 -1
- package/lib/commonjs/components/ui/Slider.js +0 -178
- package/lib/commonjs/components/ui/Slider.js.map +0 -1
- package/lib/commonjs/components/ui/Switch.js +0 -57
- package/lib/commonjs/components/ui/Switch.js.map +0 -1
- package/lib/commonjs/components/ui/Table.js +0 -161
- package/lib/commonjs/components/ui/Table.js.map +0 -1
- package/lib/commonjs/components/ui/Tabs.js +0 -111
- package/lib/commonjs/components/ui/Tabs.js.map +0 -1
- package/lib/commonjs/components/ui/Text.js +0 -73
- package/lib/commonjs/components/ui/Text.js.map +0 -1
- package/lib/commonjs/components/ui/Textarea.js +0 -93
- package/lib/commonjs/components/ui/Textarea.js.map +0 -1
- package/lib/commonjs/components/ui/Theme-Toggle.js +0 -160
- package/lib/commonjs/components/ui/Theme-Toggle.js.map +0 -1
- package/lib/commonjs/components/ui/Toast.js +0 -107
- package/lib/commonjs/components/ui/Toast.js.map +0 -1
- package/lib/commonjs/components/ui/Toggle-Group.js +0 -133
- package/lib/commonjs/components/ui/Toggle-Group.js.map +0 -1
- package/lib/commonjs/components/ui/Toggle.js +0 -110
- package/lib/commonjs/components/ui/Toggle.js.map +0 -1
- package/lib/commonjs/components/ui/Tooltip.js +0 -110
- package/lib/commonjs/components/ui/Tooltip.js.map +0 -1
- package/lib/commonjs/components/ui/index.js +0 -215
- package/lib/commonjs/components/ui/index.js.map +0 -1
- package/lib/commonjs/global.css +0 -417
- package/lib/commonjs/index.js +0 -118
- package/lib/commonjs/index.js.map +0 -1
- package/lib/commonjs/lib/ThemeProvider.js +0 -180
- package/lib/commonjs/lib/ThemeProvider.js.map +0 -1
- package/lib/commonjs/lib/cornerRadius.js +0 -171
- package/lib/commonjs/lib/cornerRadius.js.map +0 -1
- package/lib/commonjs/lib/fonts.js +0 -101
- package/lib/commonjs/lib/fonts.js.map +0 -1
- package/lib/commonjs/lib/slot-helpers.js +0 -24
- package/lib/commonjs/lib/slot-helpers.js.map +0 -1
- package/lib/commonjs/lib/theme.js +0 -215
- package/lib/commonjs/lib/theme.js.map +0 -1
- package/lib/commonjs/lib/utils.js +0 -142
- package/lib/commonjs/lib/utils.js.map +0 -1
- package/lib/commonjs/package.json +0 -1
- package/lib/commonjs/types/components.d.js +0 -6
- package/lib/commonjs/types/components.d.js.map +0 -1
- package/lib/commonjs/types/global.d.js +0 -8
- package/lib/commonjs/types/global.d.js.map +0 -1
- package/lib/commonjs/types/rn-primitives.d.js +0 -6
- package/lib/commonjs/types/rn-primitives.d.js.map +0 -1
- package/lib/module/components/ui/Accordion.js +0 -228
- package/lib/module/components/ui/Accordion.js.map +0 -1
- package/lib/module/components/ui/Alert-Dialog.js +0 -266
- package/lib/module/components/ui/Alert-Dialog.js.map +0 -1
- package/lib/module/components/ui/Alert.js +0 -107
- package/lib/module/components/ui/Alert.js.map +0 -1
- package/lib/module/components/ui/AppBar.js +0 -403
- package/lib/module/components/ui/AppBar.js.map +0 -1
- package/lib/module/components/ui/Aspect-Ratio.js +0 -27
- package/lib/module/components/ui/Aspect-Ratio.js.map +0 -1
- package/lib/module/components/ui/Avatar.js +0 -97
- package/lib/module/components/ui/Avatar.js.map +0 -1
- package/lib/module/components/ui/Badge.js +0 -127
- package/lib/module/components/ui/Badge.js.map +0 -1
- package/lib/module/components/ui/Bottom-Sheet.js +0 -151
- package/lib/module/components/ui/Bottom-Sheet.js.map +0 -1
- package/lib/module/components/ui/Button.js +0 -88
- package/lib/module/components/ui/Button.js.map +0 -1
- package/lib/module/components/ui/Card.js +0 -176
- package/lib/module/components/ui/Card.js.map +0 -1
- package/lib/module/components/ui/Checkbox.js +0 -65
- package/lib/module/components/ui/Checkbox.js.map +0 -1
- package/lib/module/components/ui/Context-Menu.js +0 -287
- package/lib/module/components/ui/Context-Menu.js.map +0 -1
- package/lib/module/components/ui/Dialog.js +0 -202
- package/lib/module/components/ui/Dialog.js.map +0 -1
- package/lib/module/components/ui/Floating-Action.js +0 -50
- package/lib/module/components/ui/Floating-Action.js.map +0 -1
- package/lib/module/components/ui/NavBar.js +0 -352
- package/lib/module/components/ui/NavBar.js.map +0 -1
- package/lib/module/components/ui/Popover.js +0 -101
- package/lib/module/components/ui/Popover.js.map +0 -1
- package/lib/module/components/ui/Progress.js +0 -124
- package/lib/module/components/ui/Progress.js.map +0 -1
- package/lib/module/components/ui/Radio-Group.js +0 -75
- package/lib/module/components/ui/Radio-Group.js.map +0 -1
- package/lib/module/components/ui/Select.js +0 -269
- package/lib/module/components/ui/Select.js.map +0 -1
- package/lib/module/components/ui/Separator.js +0 -58
- package/lib/module/components/ui/Separator.js.map +0 -1
- package/lib/module/components/ui/Skeleton.js +0 -57
- package/lib/module/components/ui/Skeleton.js.map +0 -1
- package/lib/module/components/ui/Switch.js +0 -55
- package/lib/module/components/ui/Switch.js.map +0 -1
- package/lib/module/components/ui/Tabs.js +0 -106
- package/lib/module/components/ui/Tabs.js.map +0 -1
- package/lib/module/components/ui/Text.js +0 -69
- package/lib/module/components/ui/Text.js.map +0 -1
- package/lib/module/components/ui/Textarea.js +0 -89
- package/lib/module/components/ui/Textarea.js.map +0 -1
- package/lib/module/components/ui/Theme-Toggle.js +0 -156
- package/lib/module/components/ui/Theme-Toggle.js.map +0 -1
- package/lib/module/components/ui/Toggle-Group.js +0 -129
- package/lib/module/components/ui/Toggle-Group.js.map +0 -1
- package/lib/module/components/ui/Toggle.js +0 -106
- package/lib/module/components/ui/Toggle.js.map +0 -1
- package/lib/module/components/ui/Tooltip.js +0 -106
- package/lib/module/components/ui/Tooltip.js.map +0 -1
- package/lib/module/global.css +0 -417
- package/lib/module/lib/slot-helpers.js +0 -19
- package/lib/module/lib/slot-helpers.js.map +0 -1
- package/lib/module/types/components.d.js +0 -4
- package/lib/module/types/components.d.js.map +0 -1
- package/lib/module/types/global.d.js +0 -11
- package/lib/module/types/global.d.js.map +0 -1
- package/lib/module/types/rn-primitives.d.js +0 -61
- package/lib/module/types/rn-primitives.d.js.map +0 -1
- package/lib/typescript/commonjs/package.json +0 -1
- package/lib/typescript/commonjs/src/app/_layout.d.ts +0 -7
- package/lib/typescript/commonjs/src/app/_layout.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/theme-config.d.ts +0 -174
- package/lib/typescript/commonjs/src/components/theme-config.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Accordion.d.ts +0 -103
- package/lib/typescript/commonjs/src/components/ui/Accordion.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Alert-Dialog.d.ts +0 -145
- package/lib/typescript/commonjs/src/components/ui/Alert-Dialog.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Alert.d.ts +0 -61
- package/lib/typescript/commonjs/src/components/ui/Alert.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/AppBar.d.ts +0 -227
- package/lib/typescript/commonjs/src/components/ui/AppBar.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Aspect-Ratio.d.ts +0 -24
- package/lib/typescript/commonjs/src/components/ui/Aspect-Ratio.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Avatar.d.ts +0 -1486
- package/lib/typescript/commonjs/src/components/ui/Avatar.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Badge.d.ts +0 -77
- package/lib/typescript/commonjs/src/components/ui/Badge.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Bottom-Sheet.d.ts +0 -43
- package/lib/typescript/commonjs/src/components/ui/Bottom-Sheet.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Button.d.ts +0 -23
- package/lib/typescript/commonjs/src/components/ui/Button.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Card.d.ts +0 -93
- package/lib/typescript/commonjs/src/components/ui/Card.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Checkbox.d.ts +0 -36
- package/lib/typescript/commonjs/src/components/ui/Checkbox.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Collapsible.d.ts +0 -37
- package/lib/typescript/commonjs/src/components/ui/Collapsible.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Context-Menu.d.ts +0 -107
- package/lib/typescript/commonjs/src/components/ui/Context-Menu.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Custom-Card.d.ts +0 -103
- package/lib/typescript/commonjs/src/components/ui/Custom-Card.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Dialog.d.ts +0 -90
- package/lib/typescript/commonjs/src/components/ui/Dialog.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Dropdown-Menu.d.ts +0 -242
- package/lib/typescript/commonjs/src/components/ui/Dropdown-Menu.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Floating-Action.d.ts +0 -44
- package/lib/typescript/commonjs/src/components/ui/Floating-Action.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Greeting-Card.d.ts +0 -153
- package/lib/typescript/commonjs/src/components/ui/Greeting-Card.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Hover-Card.d.ts +0 -49
- package/lib/typescript/commonjs/src/components/ui/Hover-Card.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Icon.d.ts +0 -43
- package/lib/typescript/commonjs/src/components/ui/Icon.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Input.d.ts +0 -54
- package/lib/typescript/commonjs/src/components/ui/Input.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Label.d.ts +0 -34
- package/lib/typescript/commonjs/src/components/ui/Label.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Menubar.d.ts +0 -142
- package/lib/typescript/commonjs/src/components/ui/Menubar.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Native-Only-Animated-View.d.ts +0 -26
- package/lib/typescript/commonjs/src/components/ui/Native-Only-Animated-View.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/NavBar.d.ts +0 -273
- package/lib/typescript/commonjs/src/components/ui/NavBar.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Popover.d.ts +0 -54
- package/lib/typescript/commonjs/src/components/ui/Popover.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Progress.d.ts +0 -27
- package/lib/typescript/commonjs/src/components/ui/Progress.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Radio-Group.d.ts +0 -47
- package/lib/typescript/commonjs/src/components/ui/Radio-Group.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Select.d.ts +0 -86
- package/lib/typescript/commonjs/src/components/ui/Select.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Separator.d.ts +0 -40
- package/lib/typescript/commonjs/src/components/ui/Separator.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/SizedBox.d.ts +0 -79
- package/lib/typescript/commonjs/src/components/ui/SizedBox.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Skeleton.d.ts +0 -42
- package/lib/typescript/commonjs/src/components/ui/Skeleton.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Slider.d.ts +0 -56
- package/lib/typescript/commonjs/src/components/ui/Slider.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Switch.d.ts +0 -34
- package/lib/typescript/commonjs/src/components/ui/Switch.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Table.d.ts +0 -80
- package/lib/typescript/commonjs/src/components/ui/Table.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Tabs.d.ts +0 -51
- package/lib/typescript/commonjs/src/components/ui/Tabs.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Text.d.ts +0 -45
- package/lib/typescript/commonjs/src/components/ui/Text.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Textarea.d.ts +0 -65
- package/lib/typescript/commonjs/src/components/ui/Textarea.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Theme-Toggle.d.ts +0 -67
- package/lib/typescript/commonjs/src/components/ui/Theme-Toggle.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Toast.d.ts +0 -56
- package/lib/typescript/commonjs/src/components/ui/Toast.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Toggle-Group.d.ts +0 -49
- package/lib/typescript/commonjs/src/components/ui/Toggle-Group.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Toggle.d.ts +0 -53
- package/lib/typescript/commonjs/src/components/ui/Toggle.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/Tooltip.d.ts +0 -51
- package/lib/typescript/commonjs/src/components/ui/Tooltip.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ui/index.d.ts +0 -20
- package/lib/typescript/commonjs/src/components/ui/index.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/index.d.ts +0 -9
- package/lib/typescript/commonjs/src/index.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/lib/ThemeProvider.d.ts +0 -137
- package/lib/typescript/commonjs/src/lib/ThemeProvider.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/lib/cornerRadius.d.ts +0 -112
- package/lib/typescript/commonjs/src/lib/cornerRadius.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/lib/fonts.d.ts +0 -16
- package/lib/typescript/commonjs/src/lib/fonts.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/lib/slot-helpers.d.ts +0 -32
- package/lib/typescript/commonjs/src/lib/slot-helpers.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/lib/theme.d.ts +0 -87
- package/lib/typescript/commonjs/src/lib/theme.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/lib/utils.d.ts +0 -111
- package/lib/typescript/commonjs/src/lib/utils.d.ts.map +0 -1
- package/lib/typescript/module/package.json +0 -1
- package/lib/typescript/module/src/app/_layout.d.ts +0 -7
- package/lib/typescript/module/src/app/_layout.d.ts.map +0 -1
- package/lib/typescript/module/src/components/theme-config.d.ts +0 -174
- package/lib/typescript/module/src/components/theme-config.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Accordion.d.ts +0 -103
- package/lib/typescript/module/src/components/ui/Accordion.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Alert-Dialog.d.ts +0 -145
- package/lib/typescript/module/src/components/ui/Alert-Dialog.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Alert.d.ts +0 -61
- package/lib/typescript/module/src/components/ui/Alert.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/AppBar.d.ts +0 -227
- package/lib/typescript/module/src/components/ui/AppBar.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Aspect-Ratio.d.ts +0 -24
- package/lib/typescript/module/src/components/ui/Aspect-Ratio.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Avatar.d.ts +0 -1486
- package/lib/typescript/module/src/components/ui/Avatar.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Badge.d.ts +0 -77
- package/lib/typescript/module/src/components/ui/Badge.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Bottom-Sheet.d.ts +0 -43
- package/lib/typescript/module/src/components/ui/Bottom-Sheet.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Button.d.ts +0 -23
- package/lib/typescript/module/src/components/ui/Button.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Card.d.ts +0 -93
- package/lib/typescript/module/src/components/ui/Card.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Checkbox.d.ts +0 -36
- package/lib/typescript/module/src/components/ui/Checkbox.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Collapsible.d.ts +0 -37
- package/lib/typescript/module/src/components/ui/Collapsible.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Context-Menu.d.ts +0 -107
- package/lib/typescript/module/src/components/ui/Context-Menu.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Custom-Card.d.ts +0 -103
- package/lib/typescript/module/src/components/ui/Custom-Card.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Dialog.d.ts +0 -90
- package/lib/typescript/module/src/components/ui/Dialog.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Dropdown-Menu.d.ts +0 -242
- package/lib/typescript/module/src/components/ui/Dropdown-Menu.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Floating-Action.d.ts +0 -44
- package/lib/typescript/module/src/components/ui/Floating-Action.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Greeting-Card.d.ts +0 -153
- package/lib/typescript/module/src/components/ui/Greeting-Card.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Hover-Card.d.ts +0 -49
- package/lib/typescript/module/src/components/ui/Hover-Card.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Icon.d.ts +0 -43
- package/lib/typescript/module/src/components/ui/Icon.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Input.d.ts +0 -54
- package/lib/typescript/module/src/components/ui/Input.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Label.d.ts +0 -34
- package/lib/typescript/module/src/components/ui/Label.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Menubar.d.ts +0 -142
- package/lib/typescript/module/src/components/ui/Menubar.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Native-Only-Animated-View.d.ts +0 -26
- package/lib/typescript/module/src/components/ui/Native-Only-Animated-View.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/NavBar.d.ts +0 -273
- package/lib/typescript/module/src/components/ui/NavBar.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Popover.d.ts +0 -54
- package/lib/typescript/module/src/components/ui/Popover.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Progress.d.ts +0 -27
- package/lib/typescript/module/src/components/ui/Progress.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Radio-Group.d.ts +0 -47
- package/lib/typescript/module/src/components/ui/Radio-Group.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Select.d.ts +0 -86
- package/lib/typescript/module/src/components/ui/Select.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Separator.d.ts +0 -40
- package/lib/typescript/module/src/components/ui/Separator.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/SizedBox.d.ts +0 -79
- package/lib/typescript/module/src/components/ui/SizedBox.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Skeleton.d.ts +0 -42
- package/lib/typescript/module/src/components/ui/Skeleton.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Slider.d.ts +0 -56
- package/lib/typescript/module/src/components/ui/Slider.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Switch.d.ts +0 -34
- package/lib/typescript/module/src/components/ui/Switch.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Table.d.ts +0 -80
- package/lib/typescript/module/src/components/ui/Table.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Tabs.d.ts +0 -51
- package/lib/typescript/module/src/components/ui/Tabs.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Text.d.ts +0 -45
- package/lib/typescript/module/src/components/ui/Text.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Textarea.d.ts +0 -65
- package/lib/typescript/module/src/components/ui/Textarea.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Theme-Toggle.d.ts +0 -67
- package/lib/typescript/module/src/components/ui/Theme-Toggle.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Toast.d.ts +0 -56
- package/lib/typescript/module/src/components/ui/Toast.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Toggle-Group.d.ts +0 -49
- package/lib/typescript/module/src/components/ui/Toggle-Group.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Toggle.d.ts +0 -53
- package/lib/typescript/module/src/components/ui/Toggle.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/Tooltip.d.ts +0 -51
- package/lib/typescript/module/src/components/ui/Tooltip.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ui/index.d.ts +0 -20
- package/lib/typescript/module/src/components/ui/index.d.ts.map +0 -1
- package/lib/typescript/module/src/index.d.ts +0 -9
- package/lib/typescript/module/src/index.d.ts.map +0 -1
- package/lib/typescript/module/src/lib/ThemeProvider.d.ts +0 -137
- package/lib/typescript/module/src/lib/ThemeProvider.d.ts.map +0 -1
- package/lib/typescript/module/src/lib/cornerRadius.d.ts +0 -112
- package/lib/typescript/module/src/lib/cornerRadius.d.ts.map +0 -1
- package/lib/typescript/module/src/lib/fonts.d.ts +0 -16
- package/lib/typescript/module/src/lib/fonts.d.ts.map +0 -1
- package/lib/typescript/module/src/lib/slot-helpers.d.ts +0 -32
- package/lib/typescript/module/src/lib/slot-helpers.d.ts.map +0 -1
- package/lib/typescript/module/src/lib/theme.d.ts +0 -87
- package/lib/typescript/module/src/lib/theme.d.ts.map +0 -1
- package/lib/typescript/module/src/lib/utils.d.ts +0 -111
- package/lib/typescript/module/src/lib/utils.d.ts.map +0 -1
- package/nativewind-env.d.ts +0 -7
- package/src/components/ui/Accordion.tsx +0 -255
- package/src/components/ui/Alert-Dialog.tsx +0 -297
- package/src/components/ui/Alert.tsx +0 -140
- package/src/components/ui/AppBar.tsx +0 -555
- package/src/components/ui/Aspect-Ratio.tsx +0 -25
- package/src/components/ui/Avatar.tsx +0 -107
- package/src/components/ui/Badge.tsx +0 -121
- package/src/components/ui/Bottom-Sheet.tsx +0 -232
- package/src/components/ui/Button.tsx +0 -100
- package/src/components/ui/Card.tsx +0 -185
- package/src/components/ui/Checkbox.tsx +0 -81
- package/src/components/ui/Context-Menu.tsx +0 -418
- package/src/components/ui/Dialog.tsx +0 -250
- package/src/components/ui/Floating-Action.tsx +0 -54
- package/src/components/ui/NavBar.tsx +0 -403
- package/src/components/ui/Popover.tsx +0 -110
- package/src/components/ui/Progress.tsx +0 -140
- package/src/components/ui/Radio-Group.tsx +0 -79
- package/src/components/ui/Select.tsx +0 -356
- package/src/components/ui/Separator.tsx +0 -70
- package/src/components/ui/Skeleton.tsx +0 -57
- package/src/components/ui/Switch.tsx +0 -67
- package/src/components/ui/Tabs.tsx +0 -119
- package/src/components/ui/Text.tsx +0 -68
- package/src/components/ui/Textarea.tsx +0 -104
- package/src/components/ui/Theme-Toggle.tsx +0 -208
- package/src/components/ui/Toggle-Group.tsx +0 -160
- package/src/components/ui/Toggle.tsx +0 -122
- package/src/components/ui/Tooltip.tsx +0 -117
- package/src/global.css +0 -417
- package/src/lib/slot-helpers.ts +0 -57
- package/src/types/components.d.ts +0 -38
- package/src/types/global.d.ts +0 -218
- package/src/types/rn-primitives.d.ts +0 -1427
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import { View as RNView } from 'react-native';
|
|
3
|
-
import { cssInterop } from 'nativewind';
|
|
4
|
-
import { cn } from '../../lib/utils';
|
|
5
|
-
import type { ViewRef, SlottableViewProps } from '@rn-primitives/types';
|
|
6
|
-
|
|
7
|
-
const View = cssInterop(RNView, {
|
|
8
|
-
className: 'style',
|
|
9
|
-
}) as React.ComponentType<any>;
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* Visual divider for separating content sections
|
|
13
|
-
*
|
|
14
|
-
* A thin line that creates visual separation between content areas. Can be oriented
|
|
15
|
-
* horizontally or vertically and supports decorative or semantic roles.
|
|
16
|
-
*
|
|
17
|
-
* @component
|
|
18
|
-
* @example
|
|
19
|
-
* ```tsx
|
|
20
|
-
* // Horizontal separator (default)
|
|
21
|
-
* <View>
|
|
22
|
-
* <Text>Section 1</Text>
|
|
23
|
-
* <Separator className="my-4" />
|
|
24
|
-
* <Text>Section 2</Text>
|
|
25
|
-
* </View>
|
|
26
|
-
*
|
|
27
|
-
* // Vertical separator
|
|
28
|
-
* <View className="flex-row items-center gap-4">
|
|
29
|
-
* <Text>Left</Text>
|
|
30
|
-
* <Separator orientation="vertical" className="h-4" />
|
|
31
|
-
* <Text>Right</Text>
|
|
32
|
-
* </View>
|
|
33
|
-
*
|
|
34
|
-
* // Semantic separator for screen readers
|
|
35
|
-
* <Separator decorative={false} />
|
|
36
|
-
* ```
|
|
37
|
-
*
|
|
38
|
-
* @accessibility
|
|
39
|
-
* - Decorative separators (default) have role="none" for screen readers
|
|
40
|
-
* - Non-decorative separators have role="separator" for semantic meaning
|
|
41
|
-
*/
|
|
42
|
-
const Separator = React.forwardRef<
|
|
43
|
-
ViewRef,
|
|
44
|
-
SlottableViewProps & {
|
|
45
|
-
className?: string;
|
|
46
|
-
orientation?: 'horizontal' | 'vertical';
|
|
47
|
-
decorative?: boolean;
|
|
48
|
-
}
|
|
49
|
-
>(
|
|
50
|
-
(
|
|
51
|
-
{ className, orientation = 'horizontal', decorative = true, ...props },
|
|
52
|
-
ref
|
|
53
|
-
) => {
|
|
54
|
-
return (
|
|
55
|
-
<View
|
|
56
|
-
role={decorative ? 'none' : 'separator'}
|
|
57
|
-
className={cn(
|
|
58
|
-
'shrink-0 bg-border dark:bg-border',
|
|
59
|
-
orientation === 'horizontal' ? 'h-[1px] w-full' : 'h-full w-[1px]',
|
|
60
|
-
className
|
|
61
|
-
)}
|
|
62
|
-
ref={ref}
|
|
63
|
-
{...props}
|
|
64
|
-
/>
|
|
65
|
-
);
|
|
66
|
-
}
|
|
67
|
-
);
|
|
68
|
-
Separator.displayName = 'Separator';
|
|
69
|
-
|
|
70
|
-
export { Separator };
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import { cn } from '../../lib/utils';
|
|
2
|
-
import { View as RNView, type ViewProps } from 'react-native';
|
|
3
|
-
import { cssInterop } from 'nativewind';
|
|
4
|
-
|
|
5
|
-
const View = cssInterop(RNView, {
|
|
6
|
-
className: 'style',
|
|
7
|
-
}) as React.ComponentType<any>;
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Skeleton loading placeholder component
|
|
11
|
-
*
|
|
12
|
-
* Displays an animated placeholder during content loading states. Provides visual feedback
|
|
13
|
-
* to users while data is being fetched, improving perceived performance.
|
|
14
|
-
*
|
|
15
|
-
* @component
|
|
16
|
-
* @example
|
|
17
|
-
* ```tsx
|
|
18
|
-
* // Text skeleton
|
|
19
|
-
* <Skeleton className="h-4 w-[250px]" />
|
|
20
|
-
*
|
|
21
|
-
* // Avatar skeleton
|
|
22
|
-
* <Skeleton className="h-12 w-12 rounded-full" />
|
|
23
|
-
*
|
|
24
|
-
* // Card skeleton
|
|
25
|
-
* <View className="flex gap-3">
|
|
26
|
-
* <Skeleton className="h-[125px] w-full rounded-xl" />
|
|
27
|
-
* <View className="gap-2">
|
|
28
|
-
* <Skeleton className="h-4 w-full" />
|
|
29
|
-
* <Skeleton className="h-4 w-[80%]" />
|
|
30
|
-
* </View>
|
|
31
|
-
* </View>
|
|
32
|
-
*
|
|
33
|
-
* // List skeleton
|
|
34
|
-
* {[1, 2, 3].map((i) => (
|
|
35
|
-
* <View key={i} className="flex-row items-center gap-4">
|
|
36
|
-
* <Skeleton className="h-12 w-12 rounded-full" />
|
|
37
|
-
* <View className="flex-1 gap-2">
|
|
38
|
-
* <Skeleton className="h-4 w-full" />
|
|
39
|
-
* <Skeleton className="h-4 w-3/4" />
|
|
40
|
-
* </View>
|
|
41
|
-
* </View>
|
|
42
|
-
* ))}
|
|
43
|
-
* ```
|
|
44
|
-
*/
|
|
45
|
-
function Skeleton({
|
|
46
|
-
className,
|
|
47
|
-
...props
|
|
48
|
-
}: ViewProps & { className?: string } & React.RefAttributes<RNView>) {
|
|
49
|
-
return (
|
|
50
|
-
<View
|
|
51
|
-
className={cn('bg-muted animate-pulse rounded-md', className)}
|
|
52
|
-
{...props}
|
|
53
|
-
/>
|
|
54
|
-
);
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
export { Skeleton };
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
import { cn } from '../../lib/utils';
|
|
2
|
-
import * as SwitchPrimitives from '@rn-primitives/switch';
|
|
3
|
-
import { Platform } from 'react-native';
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* A toggle switch component for binary on/off states
|
|
7
|
-
*
|
|
8
|
-
* Provides a visual toggle control with smooth animations and platform-specific styling.
|
|
9
|
-
* Automatically handles checked/unchecked states and disabled interactions.
|
|
10
|
-
*
|
|
11
|
-
* @component
|
|
12
|
-
* @example
|
|
13
|
-
* ```tsx
|
|
14
|
-
* const [enabled, setEnabled] = useState(false);
|
|
15
|
-
*
|
|
16
|
-
* <Switch
|
|
17
|
-
* checked={enabled}
|
|
18
|
-
* onCheckedChange={setEnabled}
|
|
19
|
-
* />
|
|
20
|
-
*
|
|
21
|
-
* // Disabled switch
|
|
22
|
-
* <Switch checked={true} disabled />
|
|
23
|
-
* ```
|
|
24
|
-
*
|
|
25
|
-
* @param {boolean} checked - Current state of the switch
|
|
26
|
-
* @param {(checked: boolean) => void} onCheckedChange - Callback when switch is toggled
|
|
27
|
-
* @param {boolean} [disabled] - Whether the switch is disabled
|
|
28
|
-
* @param {string} [className] - Additional Tailwind classes
|
|
29
|
-
*
|
|
30
|
-
* @accessibility
|
|
31
|
-
* - Proper focus states on web for keyboard navigation
|
|
32
|
-
* - Disabled state prevents interaction
|
|
33
|
-
* - Visual feedback for checked/unchecked states
|
|
34
|
-
*/
|
|
35
|
-
function Switch({
|
|
36
|
-
className,
|
|
37
|
-
...props
|
|
38
|
-
}: SwitchPrimitives.RootProps & React.RefAttributes<SwitchPrimitives.RootRef>) {
|
|
39
|
-
return (
|
|
40
|
-
<SwitchPrimitives.Root
|
|
41
|
-
className={cn(
|
|
42
|
-
'flex h-[1.15rem] w-8 shrink-0 flex-row items-center rounded-full border border-transparent shadow-sm shadow-black/5',
|
|
43
|
-
Platform.select({
|
|
44
|
-
web: 'focus-visible:border-ring focus-visible:ring-ring/50 peer inline-flex outline-none transition-all focus-visible:ring-[3px] disabled:cursor-not-allowed',
|
|
45
|
-
}),
|
|
46
|
-
props.checked ? 'bg-primary' : 'bg-input dark:bg-input/80',
|
|
47
|
-
props.disabled && 'opacity-50',
|
|
48
|
-
className
|
|
49
|
-
)}
|
|
50
|
-
{...props}
|
|
51
|
-
>
|
|
52
|
-
<SwitchPrimitives.Thumb
|
|
53
|
-
className={cn(
|
|
54
|
-
'bg-background size-4 rounded-full transition-transform',
|
|
55
|
-
Platform.select({
|
|
56
|
-
web: 'pointer-events-none block ring-0',
|
|
57
|
-
}),
|
|
58
|
-
props.checked
|
|
59
|
-
? 'dark:bg-primary-foreground translate-x-3.5'
|
|
60
|
-
: 'dark:bg-foreground translate-x-0'
|
|
61
|
-
)}
|
|
62
|
-
/>
|
|
63
|
-
</SwitchPrimitives.Root>
|
|
64
|
-
);
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
export { Switch };
|
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
import { TextClassContext } from './Text';
|
|
2
|
-
import { cn } from '../../lib/utils';
|
|
3
|
-
import * as TabsPrimitive from '@rn-primitives/tabs';
|
|
4
|
-
import { Platform } from 'react-native';
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* Root tabs component for organizing content into panels
|
|
8
|
-
*
|
|
9
|
-
* @component
|
|
10
|
-
* @example
|
|
11
|
-
* ```tsx
|
|
12
|
-
* <Tabs value={activeTab} onValueChange={setActiveTab}>
|
|
13
|
-
* <TabsList>
|
|
14
|
-
* <TabsTrigger value="account">
|
|
15
|
-
* <Text>Account</Text>
|
|
16
|
-
* </TabsTrigger>
|
|
17
|
-
* <TabsTrigger value="password">
|
|
18
|
-
* <Text>Password</Text>
|
|
19
|
-
* </TabsTrigger>
|
|
20
|
-
* </TabsList>
|
|
21
|
-
* <TabsContent value="account">
|
|
22
|
-
* <Text>Account settings content</Text>
|
|
23
|
-
* </TabsContent>
|
|
24
|
-
* <TabsContent value="password">
|
|
25
|
-
* <Text>Password settings content</Text>
|
|
26
|
-
* </TabsContent>
|
|
27
|
-
* </Tabs>
|
|
28
|
-
* ```
|
|
29
|
-
*
|
|
30
|
-
* @accessibility
|
|
31
|
-
* - Keyboard navigation support (arrow keys)
|
|
32
|
-
* - Proper ARIA attributes for tab structure
|
|
33
|
-
* - Screen reader friendly
|
|
34
|
-
*/
|
|
35
|
-
function Tabs({
|
|
36
|
-
className,
|
|
37
|
-
...props
|
|
38
|
-
}: TabsPrimitive.RootProps & React.RefAttributes<TabsPrimitive.RootRef>) {
|
|
39
|
-
return (
|
|
40
|
-
<TabsPrimitive.Root
|
|
41
|
-
className={cn('flex flex-col gap-2', className)}
|
|
42
|
-
{...props}
|
|
43
|
-
/>
|
|
44
|
-
);
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
/**
|
|
48
|
-
* Container for tab triggers
|
|
49
|
-
*
|
|
50
|
-
* @component
|
|
51
|
-
*/
|
|
52
|
-
function TabsList({
|
|
53
|
-
className,
|
|
54
|
-
...props
|
|
55
|
-
}: TabsPrimitive.ListProps & React.RefAttributes<TabsPrimitive.ListRef>) {
|
|
56
|
-
return (
|
|
57
|
-
<TabsPrimitive.List
|
|
58
|
-
className={cn(
|
|
59
|
-
'bg-muted flex h-9 flex-row items-center justify-center rounded-lg p-[3px]',
|
|
60
|
-
Platform.select({ web: 'inline-flex w-fit', native: 'mr-auto' }),
|
|
61
|
-
className
|
|
62
|
-
)}
|
|
63
|
-
{...props}
|
|
64
|
-
/>
|
|
65
|
-
);
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
/**
|
|
69
|
-
* Individual tab trigger button
|
|
70
|
-
*
|
|
71
|
-
* @component
|
|
72
|
-
*/
|
|
73
|
-
function TabsTrigger({
|
|
74
|
-
className,
|
|
75
|
-
...props
|
|
76
|
-
}: TabsPrimitive.TriggerProps & React.RefAttributes<TabsPrimitive.TriggerRef>) {
|
|
77
|
-
const { value } = TabsPrimitive.useRootContext();
|
|
78
|
-
return (
|
|
79
|
-
<TextClassContext.Provider
|
|
80
|
-
value={cn(
|
|
81
|
-
'text-foreground dark:text-muted-foreground text-sm font-medium',
|
|
82
|
-
value === props.value && 'dark:text-foreground'
|
|
83
|
-
)}
|
|
84
|
-
>
|
|
85
|
-
<TabsPrimitive.Trigger
|
|
86
|
-
className={cn(
|
|
87
|
-
'flex h-[calc(100%-1px)] flex-row items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 shadow-none shadow-black/5',
|
|
88
|
-
Platform.select({
|
|
89
|
-
web: 'focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring inline-flex cursor-default whitespace-nowrap transition-[color,box-shadow] focus-visible:outline-1 focus-visible:ring-[3px] disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0',
|
|
90
|
-
}),
|
|
91
|
-
props.disabled && 'opacity-50',
|
|
92
|
-
props.value === value &&
|
|
93
|
-
'bg-background dark:border-foreground/10 dark:bg-input/30',
|
|
94
|
-
className
|
|
95
|
-
)}
|
|
96
|
-
{...(props as any)}
|
|
97
|
-
/>
|
|
98
|
-
</TextClassContext.Provider>
|
|
99
|
-
);
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
/**
|
|
103
|
-
* Tab content panel
|
|
104
|
-
*
|
|
105
|
-
* @component
|
|
106
|
-
*/
|
|
107
|
-
function TabsContent({
|
|
108
|
-
className,
|
|
109
|
-
...props
|
|
110
|
-
}: TabsPrimitive.ContentProps & React.RefAttributes<TabsPrimitive.ContentRef>) {
|
|
111
|
-
return (
|
|
112
|
-
<TabsPrimitive.Content
|
|
113
|
-
className={cn(Platform.select({ web: 'flex-1 outline-none' }), className)}
|
|
114
|
-
{...props}
|
|
115
|
-
/>
|
|
116
|
-
);
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
export { Tabs, TabsContent, TabsList, TabsTrigger };
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import * as Slot from '@rn-primitives/slot';
|
|
2
|
-
import type { SlottableTextProps, TextRef } from '@rn-primitives/types';
|
|
3
|
-
import { cssInterop } from 'nativewind';
|
|
4
|
-
import * as React from 'react';
|
|
5
|
-
import { Text as RNText } from 'react-native';
|
|
6
|
-
import { cn } from '../../lib/utils';
|
|
7
|
-
|
|
8
|
-
cssInterop(RNText, { className: 'style' });
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* Context for sharing text class styles with child Text components
|
|
12
|
-
* Used by components like Button, Card, Badge to automatically style nested Text
|
|
13
|
-
*/
|
|
14
|
-
const TextClassContext = React.createContext<string | undefined>(undefined);
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* Enhanced Text component with NativeWind styling support
|
|
18
|
-
*
|
|
19
|
-
* Extends React Native's Text with:
|
|
20
|
-
* - Automatic style inheritance from TextClassContext
|
|
21
|
-
* - NativeWind className support
|
|
22
|
-
* - Slot pattern support for composition
|
|
23
|
-
* - Web-specific selection styling
|
|
24
|
-
*
|
|
25
|
-
* @component
|
|
26
|
-
* @example
|
|
27
|
-
* ```tsx
|
|
28
|
-
* // Basic text
|
|
29
|
-
* <Text>Hello World</Text>
|
|
30
|
-
*
|
|
31
|
-
* // With custom styling
|
|
32
|
-
* <Text className="text-lg font-bold">Title</Text>
|
|
33
|
-
*
|
|
34
|
-
* // Inside a styled context (e.g., Button)
|
|
35
|
-
* <Button variant="default">
|
|
36
|
-
* <Text>Button Text</Text> // Automatically inherits button text styling
|
|
37
|
-
* </Button>
|
|
38
|
-
*
|
|
39
|
-
* // Using asChild for composition
|
|
40
|
-
* <Text asChild>
|
|
41
|
-
* <Link href="/home">Home</Link>
|
|
42
|
-
* </Text>
|
|
43
|
-
* ```
|
|
44
|
-
*
|
|
45
|
-
* @property {string} [className] - Additional Tailwind classes
|
|
46
|
-
* @property {boolean} [asChild] - When true, merges props into immediate child
|
|
47
|
-
*/
|
|
48
|
-
const Text = React.forwardRef<
|
|
49
|
-
TextRef,
|
|
50
|
-
SlottableTextProps & {
|
|
51
|
-
className?: string;
|
|
52
|
-
children?: React.ReactNode;
|
|
53
|
-
}
|
|
54
|
-
>(({ className, asChild = false, style, ...props }, ref) => {
|
|
55
|
-
const textClass = React.useContext(TextClassContext);
|
|
56
|
-
const Component = asChild ? Slot.Text : RNText;
|
|
57
|
-
|
|
58
|
-
const finalClassName = textClass
|
|
59
|
-
? cn('text-base web:select-text', textClass, className)
|
|
60
|
-
: cn('text-base text-foreground web:select-text', className);
|
|
61
|
-
|
|
62
|
-
return (
|
|
63
|
-
<Component className={finalClassName} style={style} ref={ref} {...props} />
|
|
64
|
-
);
|
|
65
|
-
});
|
|
66
|
-
Text.displayName = 'Text';
|
|
67
|
-
|
|
68
|
-
export { Text, TextClassContext };
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
import { cn } from '../../lib/utils';
|
|
2
|
-
import * as React from 'react';
|
|
3
|
-
import {
|
|
4
|
-
Platform,
|
|
5
|
-
TextInput as RNTextInput,
|
|
6
|
-
type TextInputProps,
|
|
7
|
-
} from 'react-native';
|
|
8
|
-
import { cssInterop } from 'nativewind';
|
|
9
|
-
|
|
10
|
-
const TextInput = cssInterop(RNTextInput, {
|
|
11
|
-
className: 'style',
|
|
12
|
-
}) as React.ComponentType<any>;
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* Props for Textarea component
|
|
16
|
-
*
|
|
17
|
-
* @extends TextInputProps - All React Native TextInput properties
|
|
18
|
-
* @property {string} [className] - Additional Tailwind classes for styling
|
|
19
|
-
* @property {string} [placeholderClassName] - Tailwind classes for placeholder text styling
|
|
20
|
-
*
|
|
21
|
-
* @example
|
|
22
|
-
* ```tsx
|
|
23
|
-
* <Textarea
|
|
24
|
-
* placeholder="Enter your message"
|
|
25
|
-
* value={message}
|
|
26
|
-
* onChangeText={setMessage}
|
|
27
|
-
* numberOfLines={4}
|
|
28
|
-
* />
|
|
29
|
-
* ```
|
|
30
|
-
*/
|
|
31
|
-
interface TextareaProps
|
|
32
|
-
extends Omit<TextInputProps, 'multiline' | 'numberOfLines' | 'editable'> {
|
|
33
|
-
className?: string;
|
|
34
|
-
placeholderClassName?: string;
|
|
35
|
-
multiline?: boolean;
|
|
36
|
-
numberOfLines?: number;
|
|
37
|
-
editable?: boolean;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
/**
|
|
41
|
-
* Multi-line text input component
|
|
42
|
-
*
|
|
43
|
-
* A textarea component for longer text input with configurable height and styling.
|
|
44
|
-
* Automatically configured for multi-line input with appropriate platform-specific defaults.
|
|
45
|
-
*
|
|
46
|
-
* @component
|
|
47
|
-
* @example
|
|
48
|
-
* ```tsx
|
|
49
|
-
* // Basic textarea
|
|
50
|
-
* <Textarea
|
|
51
|
-
* placeholder="Enter description"
|
|
52
|
-
* value={description}
|
|
53
|
-
* onChangeText={setDescription}
|
|
54
|
-
* />
|
|
55
|
-
*
|
|
56
|
-
* // Controlled textarea with validation
|
|
57
|
-
* <Textarea
|
|
58
|
-
* value={bio}
|
|
59
|
-
* onChangeText={setBio}
|
|
60
|
-
* placeholder="Tell us about yourself"
|
|
61
|
-
* numberOfLines={6}
|
|
62
|
-
* maxLength={500}
|
|
63
|
-
* />
|
|
64
|
-
*
|
|
65
|
-
* // Disabled textarea
|
|
66
|
-
* <Textarea value={content} editable={false} />
|
|
67
|
-
* ```
|
|
68
|
-
*
|
|
69
|
-
* @accessibility
|
|
70
|
-
* - Supports standard TextInput accessibility props
|
|
71
|
-
* - Placeholder text with appropriate color contrast
|
|
72
|
-
* - Focus states on web for keyboard navigation
|
|
73
|
-
* - Disabled state with reduced opacity
|
|
74
|
-
*/
|
|
75
|
-
function Textarea({
|
|
76
|
-
className,
|
|
77
|
-
multiline = true,
|
|
78
|
-
numberOfLines = Platform.select({ web: 2, native: 8 }),
|
|
79
|
-
placeholderClassName,
|
|
80
|
-
editable = true,
|
|
81
|
-
...props
|
|
82
|
-
}: TextareaProps & React.RefAttributes<RNTextInput>) {
|
|
83
|
-
return (
|
|
84
|
-
<TextInput
|
|
85
|
-
className={cn(
|
|
86
|
-
'text-foreground border-input dark:bg-input/30 flex min-h-16 w-full flex-row rounded-md border bg-transparent px-3 py-2 text-base shadow-sm shadow-black/5 md:text-sm',
|
|
87
|
-
Platform.select({
|
|
88
|
-
web: 'placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive field-sizing-content resize-y outline-none transition-[color,box-shadow] focus-visible:ring-[3px] disabled:cursor-not-allowed',
|
|
89
|
-
}),
|
|
90
|
-
!editable && 'opacity-50',
|
|
91
|
-
className
|
|
92
|
-
)}
|
|
93
|
-
placeholderClassName={cn('text-muted-foreground', placeholderClassName)}
|
|
94
|
-
multiline={multiline}
|
|
95
|
-
numberOfLines={numberOfLines}
|
|
96
|
-
textAlignVertical="top"
|
|
97
|
-
editable={editable}
|
|
98
|
-
{...props}
|
|
99
|
-
/>
|
|
100
|
-
);
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
export { Textarea };
|
|
104
|
-
export type { TextareaProps };
|
|
@@ -1,208 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import { View as RNView, Pressable as RNPressable } from 'react-native';
|
|
3
|
-
import { cssInterop } from 'nativewind';
|
|
4
|
-
import { Moon, Sun, Monitor } from 'lucide-react-native';
|
|
5
|
-
import { cn } from '../../lib/utils';
|
|
6
|
-
import { useTheme, type ThemeMode } from '../../lib/ThemeProvider';
|
|
7
|
-
import { Icon } from './Icon';
|
|
8
|
-
import { Text } from './Text';
|
|
9
|
-
import type { SlottableViewProps, ViewRef } from '@rn-primitives/types';
|
|
10
|
-
|
|
11
|
-
const View = cssInterop(RNView, {
|
|
12
|
-
className: 'style',
|
|
13
|
-
}) as React.ComponentType<any>;
|
|
14
|
-
const Pressable = cssInterop(RNPressable, {
|
|
15
|
-
className: 'style',
|
|
16
|
-
}) as React.ComponentType<any>;
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* Theme toggle button variants
|
|
20
|
-
*/
|
|
21
|
-
type ThemeToggleVariant = 'icon' | 'button' | 'segmented';
|
|
22
|
-
|
|
23
|
-
/**
|
|
24
|
-
* Props for ThemeToggle component
|
|
25
|
-
*
|
|
26
|
-
* @property {'icon' | 'button' | 'segmented'} [variant='icon'] - Visual style variant
|
|
27
|
-
* @property {boolean} [showLabel=false] - Show text label next to icon (for button variant)
|
|
28
|
-
* @property {string} [className] - Additional Tailwind classes
|
|
29
|
-
*
|
|
30
|
-
* @example
|
|
31
|
-
* ```tsx
|
|
32
|
-
* // Icon only (default)
|
|
33
|
-
* <ThemeToggle />
|
|
34
|
-
*
|
|
35
|
-
* // Button with label
|
|
36
|
-
* <ThemeToggle variant="button" showLabel />
|
|
37
|
-
*
|
|
38
|
-
* // Segmented control
|
|
39
|
-
* <ThemeToggle variant="segmented" />
|
|
40
|
-
* ```
|
|
41
|
-
*/
|
|
42
|
-
type ThemeToggleProps = SlottableViewProps & {
|
|
43
|
-
variant?: ThemeToggleVariant;
|
|
44
|
-
showLabel?: boolean;
|
|
45
|
-
className?: string;
|
|
46
|
-
};
|
|
47
|
-
|
|
48
|
-
/**
|
|
49
|
-
* Theme toggle component for switching between light, dark, and system themes
|
|
50
|
-
*
|
|
51
|
-
* Provides three variants:
|
|
52
|
-
* - **icon**: Simple icon button that cycles through themes (light → dark → system)
|
|
53
|
-
* - **button**: Button with icon and optional label
|
|
54
|
-
* - **segmented**: Segmented control showing all three options
|
|
55
|
-
*
|
|
56
|
-
* @component
|
|
57
|
-
* @example
|
|
58
|
-
* ```tsx
|
|
59
|
-
* // Icon toggle (minimal)
|
|
60
|
-
* <ThemeToggle />
|
|
61
|
-
*
|
|
62
|
-
* // Button with label
|
|
63
|
-
* <ThemeToggle variant="button" showLabel />
|
|
64
|
-
*
|
|
65
|
-
* // Segmented control (shows all options)
|
|
66
|
-
* <ThemeToggle variant="segmented" />
|
|
67
|
-
*
|
|
68
|
-
* // Custom styling
|
|
69
|
-
* <ThemeToggle className="my-4" />
|
|
70
|
-
* ```
|
|
71
|
-
*
|
|
72
|
-
* @accessibility
|
|
73
|
-
* - Proper button role for screen readers
|
|
74
|
-
* - Announces current theme state
|
|
75
|
-
* - Keyboard navigable on web
|
|
76
|
-
*/
|
|
77
|
-
const ThemeToggle = React.forwardRef<ViewRef, ThemeToggleProps>(
|
|
78
|
-
({ variant = 'icon', showLabel = false, className, ...props }, ref) => {
|
|
79
|
-
const { mode, isDark, setMode } = useTheme();
|
|
80
|
-
|
|
81
|
-
// Cycle through themes: light → dark → system → light
|
|
82
|
-
const cycleTheme = () => {
|
|
83
|
-
const nextMode: ThemeMode =
|
|
84
|
-
mode === 'light' ? 'dark' : mode === 'dark' ? 'system' : 'light';
|
|
85
|
-
setMode(nextMode);
|
|
86
|
-
};
|
|
87
|
-
|
|
88
|
-
if (variant === 'segmented') {
|
|
89
|
-
return (
|
|
90
|
-
<View
|
|
91
|
-
ref={ref as any}
|
|
92
|
-
className={cn(
|
|
93
|
-
'flex-row bg-muted dark:bg-muted rounded-lg p-1',
|
|
94
|
-
className
|
|
95
|
-
)}
|
|
96
|
-
{...props}
|
|
97
|
-
>
|
|
98
|
-
{(['light', 'dark', 'system'] as const).map((themeMode) => {
|
|
99
|
-
const isActive = mode === themeMode;
|
|
100
|
-
const IconComponent =
|
|
101
|
-
themeMode === 'light'
|
|
102
|
-
? Sun
|
|
103
|
-
: themeMode === 'dark'
|
|
104
|
-
? Moon
|
|
105
|
-
: Monitor;
|
|
106
|
-
|
|
107
|
-
return (
|
|
108
|
-
<Pressable
|
|
109
|
-
key={themeMode}
|
|
110
|
-
onPress={() => setMode(themeMode)}
|
|
111
|
-
className={cn(
|
|
112
|
-
'flex-1 flex-row items-center justify-center rounded-md px-3 py-2 transition-colors',
|
|
113
|
-
isActive
|
|
114
|
-
? 'bg-background dark:bg-background shadow-sm'
|
|
115
|
-
: 'active:bg-background/50 dark:active:bg-background/50'
|
|
116
|
-
)}
|
|
117
|
-
role="button"
|
|
118
|
-
accessibilityLabel={`Switch to ${themeMode} theme`}
|
|
119
|
-
accessibilityState={{ selected: isActive }}
|
|
120
|
-
>
|
|
121
|
-
<Icon
|
|
122
|
-
as={IconComponent}
|
|
123
|
-
size={16}
|
|
124
|
-
className={cn(
|
|
125
|
-
isActive
|
|
126
|
-
? 'text-foreground dark:text-foreground'
|
|
127
|
-
: 'text-muted-foreground dark:text-muted-foreground'
|
|
128
|
-
)}
|
|
129
|
-
/>
|
|
130
|
-
<Text
|
|
131
|
-
className={cn(
|
|
132
|
-
'ml-2 text-sm font-medium capitalize',
|
|
133
|
-
isActive
|
|
134
|
-
? 'text-foreground dark:text-foreground'
|
|
135
|
-
: 'text-muted-foreground dark:text-muted-foreground'
|
|
136
|
-
)}
|
|
137
|
-
>
|
|
138
|
-
{themeMode}
|
|
139
|
-
</Text>
|
|
140
|
-
</Pressable>
|
|
141
|
-
);
|
|
142
|
-
})}
|
|
143
|
-
</View>
|
|
144
|
-
);
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
if (variant === 'button') {
|
|
148
|
-
const IconComponent = isDark ? Moon : Sun;
|
|
149
|
-
const label = mode === 'system' ? 'System' : isDark ? 'Dark' : 'Light';
|
|
150
|
-
|
|
151
|
-
return (
|
|
152
|
-
<Pressable
|
|
153
|
-
ref={ref as any}
|
|
154
|
-
onPress={cycleTheme}
|
|
155
|
-
className={cn(
|
|
156
|
-
'flex-row items-center justify-center rounded-md px-4 py-2',
|
|
157
|
-
'bg-secondary dark:bg-secondary active:opacity-80',
|
|
158
|
-
className
|
|
159
|
-
)}
|
|
160
|
-
role="button"
|
|
161
|
-
accessibilityLabel={`Current theme: ${label}. Tap to change.`}
|
|
162
|
-
{...props}
|
|
163
|
-
>
|
|
164
|
-
<Icon
|
|
165
|
-
as={IconComponent}
|
|
166
|
-
size={16}
|
|
167
|
-
className="text-secondary-foreground dark:text-secondary-foreground"
|
|
168
|
-
/>
|
|
169
|
-
{showLabel && (
|
|
170
|
-
<Text className="ml-2 text-sm font-medium text-secondary-foreground dark:text-secondary-foreground">
|
|
171
|
-
{label}
|
|
172
|
-
</Text>
|
|
173
|
-
)}
|
|
174
|
-
</Pressable>
|
|
175
|
-
);
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
// Default: icon variant
|
|
179
|
-
const IconComponent = mode === 'system' ? Monitor : isDark ? Moon : Sun;
|
|
180
|
-
|
|
181
|
-
return (
|
|
182
|
-
<Pressable
|
|
183
|
-
ref={ref as any}
|
|
184
|
-
onPress={cycleTheme}
|
|
185
|
-
className={cn(
|
|
186
|
-
'h-10 w-10 items-center justify-center rounded-md',
|
|
187
|
-
'active:bg-accent dark:active:bg-accent',
|
|
188
|
-
'web:hover:bg-accent/50 dark:web:hover:bg-accent/50',
|
|
189
|
-
'web:transition-colors',
|
|
190
|
-
className
|
|
191
|
-
)}
|
|
192
|
-
role="button"
|
|
193
|
-
accessibilityLabel={`Current theme: ${mode}. Tap to cycle themes.`}
|
|
194
|
-
{...props}
|
|
195
|
-
>
|
|
196
|
-
<Icon
|
|
197
|
-
as={IconComponent}
|
|
198
|
-
size={20}
|
|
199
|
-
className="text-foreground dark:text-foreground"
|
|
200
|
-
/>
|
|
201
|
-
</Pressable>
|
|
202
|
-
);
|
|
203
|
-
}
|
|
204
|
-
);
|
|
205
|
-
ThemeToggle.displayName = 'ThemeToggle';
|
|
206
|
-
|
|
207
|
-
export { ThemeToggle };
|
|
208
|
-
export type { ThemeToggleProps, ThemeToggleVariant };
|