@campxdev/react-native-blueprint 0.1.12 → 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 -469
- 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 +49 -40
- 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 +49 -40
- 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 -479
- 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 -44
- 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 -44
- 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
|
@@ -0,0 +1,269 @@
|
|
|
1
|
+
/// <reference types="nativewind/types" />
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import * as Slot from '@rn-primitives/slot';
|
|
4
|
+
import type { SlottableViewProps, ViewRef } from '@rn-primitives/types';
|
|
5
|
+
import { cva, type VariantProps } from 'class-variance-authority';
|
|
6
|
+
import { cssInterop } from 'nativewind';
|
|
7
|
+
import { View, TextInput } from 'react-native';
|
|
8
|
+
import type { LucideIcon } from 'lucide-react-native';
|
|
9
|
+
|
|
10
|
+
import { cn } from '../../../lib/utils';
|
|
11
|
+
import { TextClassContext, Text } from '../Text/Text';
|
|
12
|
+
|
|
13
|
+
// NativeWind interop (className -> style)
|
|
14
|
+
cssInterop(View, { className: 'style' });
|
|
15
|
+
cssInterop(TextInput, { className: 'style' });
|
|
16
|
+
cssInterop(Slot.View, { className: 'style' });
|
|
17
|
+
|
|
18
|
+
// Internal components with loose typing to allow className passing
|
|
19
|
+
const StyledView = View as any;
|
|
20
|
+
const StyledTextInput = TextInput as any;
|
|
21
|
+
|
|
22
|
+
/* -----------------------------------------------------------------------------
|
|
23
|
+
* Variants
|
|
24
|
+
* -------------------------------------------------------------------------- */
|
|
25
|
+
|
|
26
|
+
const textFieldVariants = cva(
|
|
27
|
+
'flex-row items-center border bg-surface-default px-3 py-4',
|
|
28
|
+
{
|
|
29
|
+
variants: {
|
|
30
|
+
state: {
|
|
31
|
+
default: 'border-border-default-2 rounded-lg',
|
|
32
|
+
focused: 'border-brand-primary ring-1 ring-brand-primary rounded-lg',
|
|
33
|
+
success: 'border-highlight-success-green rounded-lg',
|
|
34
|
+
error: 'border-highlight-alert-red rounded-lg',
|
|
35
|
+
disabled:
|
|
36
|
+
'border-border-default-2 bg-surface-subtle rounded-lg opacity-50',
|
|
37
|
+
},
|
|
38
|
+
},
|
|
39
|
+
defaultVariants: {
|
|
40
|
+
state: 'default',
|
|
41
|
+
},
|
|
42
|
+
}
|
|
43
|
+
);
|
|
44
|
+
|
|
45
|
+
const fieldTextVariants = cva('text-sm', {
|
|
46
|
+
variants: {
|
|
47
|
+
state: {
|
|
48
|
+
default: 'text-text-primary',
|
|
49
|
+
focused: 'text-text-primary',
|
|
50
|
+
success: 'text-highlight-success-green',
|
|
51
|
+
error: 'text-highlight-alert-red',
|
|
52
|
+
disabled: 'text-text-muted',
|
|
53
|
+
},
|
|
54
|
+
},
|
|
55
|
+
defaultVariants: {
|
|
56
|
+
state: 'default',
|
|
57
|
+
},
|
|
58
|
+
});
|
|
59
|
+
|
|
60
|
+
const nativeTextFieldVariants = cva('flex-1 text-base', {
|
|
61
|
+
variants: {
|
|
62
|
+
state: {
|
|
63
|
+
default: 'text-text-primary',
|
|
64
|
+
focused: 'text-text-primary',
|
|
65
|
+
success: 'text-text-primary',
|
|
66
|
+
error: 'text-text-primary',
|
|
67
|
+
disabled: 'text-text-muted',
|
|
68
|
+
},
|
|
69
|
+
content: {
|
|
70
|
+
placeholder: 'placeholder:text-text-muted',
|
|
71
|
+
filled: '',
|
|
72
|
+
},
|
|
73
|
+
},
|
|
74
|
+
defaultVariants: {
|
|
75
|
+
state: 'default',
|
|
76
|
+
content: 'placeholder',
|
|
77
|
+
},
|
|
78
|
+
});
|
|
79
|
+
|
|
80
|
+
const iconVariants = cva('', {
|
|
81
|
+
variants: {
|
|
82
|
+
state: {
|
|
83
|
+
default: 'text-text-muted',
|
|
84
|
+
focused: 'text-text-primary',
|
|
85
|
+
success: 'text-highlight-success-green',
|
|
86
|
+
error: 'text-highlight-alert-red',
|
|
87
|
+
disabled: 'text-text-muted',
|
|
88
|
+
},
|
|
89
|
+
},
|
|
90
|
+
defaultVariants: {
|
|
91
|
+
state: 'default',
|
|
92
|
+
},
|
|
93
|
+
});
|
|
94
|
+
|
|
95
|
+
/* -----------------------------------------------------------------------------
|
|
96
|
+
* Props
|
|
97
|
+
* -------------------------------------------------------------------------- */
|
|
98
|
+
|
|
99
|
+
type RNTextFieldSafeProps = Omit<
|
|
100
|
+
React.ComponentPropsWithoutRef<typeof TextInput>,
|
|
101
|
+
'className'
|
|
102
|
+
>;
|
|
103
|
+
|
|
104
|
+
type TextFieldProps = Omit<SlottableViewProps, 'className'> &
|
|
105
|
+
VariantProps<typeof textFieldVariants> &
|
|
106
|
+
VariantProps<typeof nativeTextFieldVariants> & {
|
|
107
|
+
asChild?: boolean;
|
|
108
|
+
|
|
109
|
+
leftIcon?: LucideIcon;
|
|
110
|
+
rightIcon?: LucideIcon;
|
|
111
|
+
|
|
112
|
+
// Type (custom, not from CVA)
|
|
113
|
+
type?: 'text' | 'search' | 'ai' | 'composer';
|
|
114
|
+
|
|
115
|
+
// Visibility
|
|
116
|
+
showLabel?: boolean;
|
|
117
|
+
showHelpText?: boolean;
|
|
118
|
+
showLeftIcon?: boolean;
|
|
119
|
+
showRightIcon?: boolean;
|
|
120
|
+
|
|
121
|
+
label?: string;
|
|
122
|
+
helpText?: string;
|
|
123
|
+
successMessage?: string;
|
|
124
|
+
errorMessage?: string;
|
|
125
|
+
|
|
126
|
+
inputProps?: RNTextFieldSafeProps;
|
|
127
|
+
};
|
|
128
|
+
|
|
129
|
+
/* -----------------------------------------------------------------------------
|
|
130
|
+
* Component
|
|
131
|
+
* -------------------------------------------------------------------------- */
|
|
132
|
+
|
|
133
|
+
const TextField = React.forwardRef<ViewRef, TextFieldProps>(
|
|
134
|
+
(
|
|
135
|
+
{
|
|
136
|
+
asChild = false,
|
|
137
|
+
|
|
138
|
+
state = 'default',
|
|
139
|
+
content = 'placeholder',
|
|
140
|
+
type = 'text',
|
|
141
|
+
|
|
142
|
+
leftIcon: LeftIcon,
|
|
143
|
+
rightIcon: RightIcon,
|
|
144
|
+
|
|
145
|
+
showLabel = false,
|
|
146
|
+
showHelpText = false,
|
|
147
|
+
showLeftIcon = false,
|
|
148
|
+
showRightIcon = false,
|
|
149
|
+
|
|
150
|
+
label,
|
|
151
|
+
helpText,
|
|
152
|
+
successMessage,
|
|
153
|
+
errorMessage,
|
|
154
|
+
|
|
155
|
+
inputProps,
|
|
156
|
+
|
|
157
|
+
...containerProps
|
|
158
|
+
},
|
|
159
|
+
ref
|
|
160
|
+
) => {
|
|
161
|
+
const Component = asChild ? Slot.View : View;
|
|
162
|
+
const isDisabled = state === 'disabled';
|
|
163
|
+
|
|
164
|
+
const valueLike =
|
|
165
|
+
inputProps?.value ??
|
|
166
|
+
(typeof inputProps?.defaultValue === 'string'
|
|
167
|
+
? inputProps.defaultValue
|
|
168
|
+
: '');
|
|
169
|
+
|
|
170
|
+
const isFilled =
|
|
171
|
+
content === 'filled' ||
|
|
172
|
+
(typeof valueLike === 'string' && valueLike.trim().length > 0);
|
|
173
|
+
|
|
174
|
+
const resolvedContent: 'filled' | 'placeholder' = isFilled
|
|
175
|
+
? 'filled'
|
|
176
|
+
: 'placeholder';
|
|
177
|
+
|
|
178
|
+
const message =
|
|
179
|
+
state === 'error'
|
|
180
|
+
? errorMessage || 'This field has an error'
|
|
181
|
+
: state === 'success'
|
|
182
|
+
? successMessage || 'This field is valid'
|
|
183
|
+
: helpText || 'Helper text';
|
|
184
|
+
|
|
185
|
+
const getPlaceholder = () => {
|
|
186
|
+
if (resolvedContent !== 'placeholder') {
|
|
187
|
+
return inputProps?.placeholder;
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
switch (type) {
|
|
191
|
+
case 'search':
|
|
192
|
+
return 'Search for a Keyword';
|
|
193
|
+
case 'ai':
|
|
194
|
+
return 'Ask AI';
|
|
195
|
+
case 'composer':
|
|
196
|
+
return 'Type here';
|
|
197
|
+
case 'text':
|
|
198
|
+
default:
|
|
199
|
+
return inputProps?.placeholder ?? 'Placeholder text';
|
|
200
|
+
}
|
|
201
|
+
};
|
|
202
|
+
|
|
203
|
+
return (
|
|
204
|
+
<TextClassContext.Provider value={fieldTextVariants({ state })}>
|
|
205
|
+
<StyledView className="gap-1">
|
|
206
|
+
{showLabel && (
|
|
207
|
+
<StyledView>
|
|
208
|
+
<Text>{label || 'Label'}</Text>
|
|
209
|
+
</StyledView>
|
|
210
|
+
)}
|
|
211
|
+
|
|
212
|
+
<Component
|
|
213
|
+
ref={ref as any}
|
|
214
|
+
{...containerProps}
|
|
215
|
+
className={cn(textFieldVariants({ state }))}
|
|
216
|
+
>
|
|
217
|
+
{showLeftIcon && LeftIcon && (
|
|
218
|
+
<LeftIcon
|
|
219
|
+
size={16}
|
|
220
|
+
className={cn('mr-2 mt-1', iconVariants({ state }))}
|
|
221
|
+
/>
|
|
222
|
+
)}
|
|
223
|
+
|
|
224
|
+
<StyledTextInput
|
|
225
|
+
{...inputProps}
|
|
226
|
+
multiline
|
|
227
|
+
editable={!isDisabled}
|
|
228
|
+
placeholder={getPlaceholder()}
|
|
229
|
+
className={cn(
|
|
230
|
+
nativeTextFieldVariants({ state, content: resolvedContent }),
|
|
231
|
+
isDisabled && 'opacity-100'
|
|
232
|
+
)}
|
|
233
|
+
style={[
|
|
234
|
+
{
|
|
235
|
+
textAlignVertical: 'top',
|
|
236
|
+
},
|
|
237
|
+
inputProps?.style,
|
|
238
|
+
]}
|
|
239
|
+
/>
|
|
240
|
+
|
|
241
|
+
{showRightIcon && RightIcon && (
|
|
242
|
+
<RightIcon
|
|
243
|
+
size={16}
|
|
244
|
+
className={cn('ml-2 mt-1', iconVariants({ state }))}
|
|
245
|
+
/>
|
|
246
|
+
)}
|
|
247
|
+
</Component>
|
|
248
|
+
|
|
249
|
+
{showHelpText && (
|
|
250
|
+
<StyledView>
|
|
251
|
+
<Text>{message}</Text>
|
|
252
|
+
</StyledView>
|
|
253
|
+
)}
|
|
254
|
+
</StyledView>
|
|
255
|
+
</TextClassContext.Provider>
|
|
256
|
+
);
|
|
257
|
+
}
|
|
258
|
+
);
|
|
259
|
+
|
|
260
|
+
TextField.displayName = 'TextField';
|
|
261
|
+
|
|
262
|
+
export {
|
|
263
|
+
TextField,
|
|
264
|
+
textFieldVariants,
|
|
265
|
+
fieldTextVariants as textFieldTextVariants,
|
|
266
|
+
nativeTextFieldVariants,
|
|
267
|
+
iconVariants,
|
|
268
|
+
};
|
|
269
|
+
export type { TextFieldProps };
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { View, Text } from 'react-native';
|
|
3
|
+
import { cva, type VariantProps } from 'class-variance-authority';
|
|
4
|
+
import { cn } from '../../../lib/utils';
|
|
5
|
+
|
|
6
|
+
/* ------------------------------------------------------------------
|
|
7
|
+
* Variants
|
|
8
|
+
* ------------------------------------------------------------------ */
|
|
9
|
+
|
|
10
|
+
const toggleItemVariants = cva(
|
|
11
|
+
'flex-row items-center justify-center gap-2 px-4 py-3 rounded-md border',
|
|
12
|
+
{
|
|
13
|
+
variants: {
|
|
14
|
+
tone: {
|
|
15
|
+
default: 'border-border-default',
|
|
16
|
+
success: 'border-highlight-success-green',
|
|
17
|
+
destructive: 'border-highlight-alert-red',
|
|
18
|
+
warning: 'border-highlight-warning-orange',
|
|
19
|
+
},
|
|
20
|
+
state: {
|
|
21
|
+
true: '',
|
|
22
|
+
false: 'bg-transparent',
|
|
23
|
+
},
|
|
24
|
+
},
|
|
25
|
+
compoundVariants: [
|
|
26
|
+
// DEFAULT (ON)
|
|
27
|
+
{
|
|
28
|
+
tone: 'default',
|
|
29
|
+
state: true,
|
|
30
|
+
className: 'bg-surface-subtle',
|
|
31
|
+
},
|
|
32
|
+
// SUCCESS (ON)
|
|
33
|
+
{
|
|
34
|
+
tone: 'success',
|
|
35
|
+
state: true,
|
|
36
|
+
className: 'bg-highlight-success-green-muted',
|
|
37
|
+
},
|
|
38
|
+
// DESTRUCTIVE (ON)
|
|
39
|
+
{
|
|
40
|
+
tone: 'destructive',
|
|
41
|
+
state: true,
|
|
42
|
+
className: 'bg-highlight-alert-red-muted',
|
|
43
|
+
},
|
|
44
|
+
// WARNING (ON)
|
|
45
|
+
{
|
|
46
|
+
tone: 'warning',
|
|
47
|
+
state: true,
|
|
48
|
+
className: 'bg-highlight-warning-orange-muted',
|
|
49
|
+
},
|
|
50
|
+
],
|
|
51
|
+
defaultVariants: {
|
|
52
|
+
tone: 'default',
|
|
53
|
+
state: false,
|
|
54
|
+
},
|
|
55
|
+
}
|
|
56
|
+
);
|
|
57
|
+
|
|
58
|
+
const textVariants = cva('text-sm font-semibold', {
|
|
59
|
+
variants: {
|
|
60
|
+
tone: {
|
|
61
|
+
default: 'text-text-secondary',
|
|
62
|
+
success: 'text-highlight-success-green',
|
|
63
|
+
destructive: 'text-highlight-alert-red',
|
|
64
|
+
warning: 'text-highlight-warning-orange',
|
|
65
|
+
},
|
|
66
|
+
state: {
|
|
67
|
+
true: '',
|
|
68
|
+
false: '',
|
|
69
|
+
},
|
|
70
|
+
},
|
|
71
|
+
compoundVariants: [
|
|
72
|
+
// Default (ON) uses brand primary
|
|
73
|
+
{
|
|
74
|
+
tone: 'default',
|
|
75
|
+
state: true,
|
|
76
|
+
className: 'text-brand-primary',
|
|
77
|
+
},
|
|
78
|
+
// Colored tones maintain their color in ON state (already handled by variant definition),
|
|
79
|
+
// but if we needed to override, we would do it here.
|
|
80
|
+
// The current definitions 'text-highlight-success-green' apply to both ON/OFF for success tone.
|
|
81
|
+
],
|
|
82
|
+
});
|
|
83
|
+
|
|
84
|
+
/* ------------------------------------------------------------------
|
|
85
|
+
* Component
|
|
86
|
+
* ------------------------------------------------------------------ */
|
|
87
|
+
|
|
88
|
+
export type ToggleItemProps = VariantProps<typeof toggleItemVariants> & {
|
|
89
|
+
text?: string;
|
|
90
|
+
showLeftIcon?: boolean;
|
|
91
|
+
showRightIcon?: boolean;
|
|
92
|
+
className?: string;
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
export function ToggleItem({
|
|
96
|
+
text = 'Toggle',
|
|
97
|
+
tone = 'default',
|
|
98
|
+
state = false,
|
|
99
|
+
showLeftIcon = false,
|
|
100
|
+
showRightIcon = false,
|
|
101
|
+
className,
|
|
102
|
+
}: ToggleItemProps) {
|
|
103
|
+
return (
|
|
104
|
+
<View className={cn(toggleItemVariants({ tone, state }), className)}>
|
|
105
|
+
{showLeftIcon && <View className="h-4 w-4 bg-muted rounded-sm" />}
|
|
106
|
+
|
|
107
|
+
<Text
|
|
108
|
+
className={textVariants({
|
|
109
|
+
tone,
|
|
110
|
+
state,
|
|
111
|
+
})}
|
|
112
|
+
>
|
|
113
|
+
{text}
|
|
114
|
+
</Text>
|
|
115
|
+
|
|
116
|
+
{showRightIcon && <View className="h-4 w-4 bg-muted rounded-sm" />}
|
|
117
|
+
</View>
|
|
118
|
+
);
|
|
119
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import figma from '@figma/code-connect';
|
|
2
|
+
import { ToggleGroup, ToggleGroupItem } from './Toggle-Group';
|
|
3
|
+
|
|
4
|
+
const FIGMA_URL =
|
|
5
|
+
'https://www.figma.com/design/66WaqopqU3WXgwVtyQuTUf/React-Native-Blueprint-Library?node-id=97-224';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* ToggleGroup – Segmented control for single or multiple selection
|
|
9
|
+
*
|
|
10
|
+
* Use cases:
|
|
11
|
+
* - View switchers (list / grid)
|
|
12
|
+
* - Filters (multiple selection)
|
|
13
|
+
* - Mode toggles (single selection)
|
|
14
|
+
*
|
|
15
|
+
* Notes:
|
|
16
|
+
* - Selection state is controlled via `value`
|
|
17
|
+
* - Figma variants expose ONLY structural props
|
|
18
|
+
*/
|
|
19
|
+
figma.connect(ToggleGroup, FIGMA_URL, {
|
|
20
|
+
props: {
|
|
21
|
+
type: figma.enum('type', {
|
|
22
|
+
single: 'single',
|
|
23
|
+
multiple: 'multiple',
|
|
24
|
+
}),
|
|
25
|
+
|
|
26
|
+
orientation: figma.enum('orientation', {
|
|
27
|
+
horizontal: 'horizontal',
|
|
28
|
+
vertical: 'vertical',
|
|
29
|
+
}),
|
|
30
|
+
},
|
|
31
|
+
|
|
32
|
+
example: ({ type, orientation }) => {
|
|
33
|
+
const value = type === 'single' ? 'one' : ['one', 'two'];
|
|
34
|
+
|
|
35
|
+
return (
|
|
36
|
+
<ToggleGroup
|
|
37
|
+
type={type}
|
|
38
|
+
orientation={orientation}
|
|
39
|
+
value={value}
|
|
40
|
+
onValueChange={() => {}}
|
|
41
|
+
>
|
|
42
|
+
<ToggleGroupItem value="one">Toggle</ToggleGroupItem>
|
|
43
|
+
<ToggleGroupItem value="two">Toggle</ToggleGroupItem>
|
|
44
|
+
<ToggleGroupItem value="three">Toggle</ToggleGroupItem>
|
|
45
|
+
</ToggleGroup>
|
|
46
|
+
);
|
|
47
|
+
},
|
|
48
|
+
});
|
|
@@ -0,0 +1,263 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { Pressable, View, type StyleProp, type ViewStyle } from 'react-native';
|
|
3
|
+
import { cssInterop } from 'nativewind';
|
|
4
|
+
import { cva } from 'class-variance-authority';
|
|
5
|
+
|
|
6
|
+
import { cn } from '../../../lib/utils';
|
|
7
|
+
|
|
8
|
+
// NativeWind interop (className -> style)
|
|
9
|
+
cssInterop(Pressable, { className: 'style' });
|
|
10
|
+
cssInterop(View, { className: 'style' });
|
|
11
|
+
|
|
12
|
+
/* -----------------------------------------------------
|
|
13
|
+
* Canonical Variants (lowercase – match Figma + Code Connect)
|
|
14
|
+
* --------------------------------------------------- */
|
|
15
|
+
|
|
16
|
+
export const ToggleGroupVariants = {
|
|
17
|
+
orientation: ['horizontal', 'vertical'] as const,
|
|
18
|
+
type: ['single', 'multiple'] as const,
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
type ToggleGroupOrientation = (typeof ToggleGroupVariants.orientation)[number];
|
|
22
|
+
type ToggleGroupType = (typeof ToggleGroupVariants.type)[number];
|
|
23
|
+
|
|
24
|
+
// Backward-compat (old caps)
|
|
25
|
+
type LegacyOrientation = 'Horizontal' | 'Vertical';
|
|
26
|
+
type LegacyType = 'Single' | 'Multiple';
|
|
27
|
+
|
|
28
|
+
/* -----------------------------------------------------
|
|
29
|
+
* Root = SINGLE CONTAINER (matches Figma)
|
|
30
|
+
* --------------------------------------------------- */
|
|
31
|
+
|
|
32
|
+
const rootVariants = cva(
|
|
33
|
+
'rounded-md border border-border bg-muted overflow-hidden self-start',
|
|
34
|
+
{
|
|
35
|
+
variants: {
|
|
36
|
+
orientation: {
|
|
37
|
+
horizontal: 'flex-row',
|
|
38
|
+
vertical: 'flex-col',
|
|
39
|
+
},
|
|
40
|
+
},
|
|
41
|
+
defaultVariants: {
|
|
42
|
+
orientation: 'horizontal',
|
|
43
|
+
},
|
|
44
|
+
}
|
|
45
|
+
);
|
|
46
|
+
|
|
47
|
+
/* -----------------------------------------------------
|
|
48
|
+
* Item (segment)
|
|
49
|
+
* - Divider handled per-item (border-l / border-t)
|
|
50
|
+
* - Selected sits on top with overlay border
|
|
51
|
+
* --------------------------------------------------- */
|
|
52
|
+
|
|
53
|
+
const itemVariants = cva('relative items-center justify-center px-4 py-3', {
|
|
54
|
+
variants: {
|
|
55
|
+
orientation: {
|
|
56
|
+
horizontal: 'flex-1',
|
|
57
|
+
vertical: 'w-full',
|
|
58
|
+
},
|
|
59
|
+
divider: {
|
|
60
|
+
none: '',
|
|
61
|
+
left: 'border-l border-border',
|
|
62
|
+
top: 'border-t border-border',
|
|
63
|
+
},
|
|
64
|
+
selected: {
|
|
65
|
+
false: '',
|
|
66
|
+
true: 'bg-background',
|
|
67
|
+
},
|
|
68
|
+
},
|
|
69
|
+
defaultVariants: {
|
|
70
|
+
selected: false,
|
|
71
|
+
divider: 'none',
|
|
72
|
+
},
|
|
73
|
+
});
|
|
74
|
+
|
|
75
|
+
/* -----------------------------------------------------
|
|
76
|
+
* Normalizers (so old callers still work)
|
|
77
|
+
* --------------------------------------------------- */
|
|
78
|
+
|
|
79
|
+
function normalizeType(v: any): ToggleGroupType {
|
|
80
|
+
const s = String(v ?? 'single').toLowerCase();
|
|
81
|
+
return s === 'multiple' ? 'multiple' : 'single';
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
function normalizeOrientation(v: any): ToggleGroupOrientation {
|
|
85
|
+
const s = String(v ?? 'horizontal').toLowerCase();
|
|
86
|
+
return s === 'vertical' ? 'vertical' : 'horizontal';
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
/* -----------------------------------------------------
|
|
90
|
+
* Context
|
|
91
|
+
* --------------------------------------------------- */
|
|
92
|
+
|
|
93
|
+
interface ToggleGroupContextType {
|
|
94
|
+
value: string | string[];
|
|
95
|
+
onValueChange: (value: string | string[]) => void;
|
|
96
|
+
type: ToggleGroupType;
|
|
97
|
+
orientation: ToggleGroupOrientation;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
const ToggleGroupContext = React.createContext<ToggleGroupContextType | null>(
|
|
101
|
+
null
|
|
102
|
+
);
|
|
103
|
+
|
|
104
|
+
function useToggleGroupContext() {
|
|
105
|
+
const context = React.useContext(ToggleGroupContext);
|
|
106
|
+
if (!context)
|
|
107
|
+
throw new Error('ToggleGroupItem must be used within a ToggleGroup');
|
|
108
|
+
return context;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
/* -----------------------------------------------------
|
|
112
|
+
* ToggleGroupItem (internal impl)
|
|
113
|
+
* --------------------------------------------------- */
|
|
114
|
+
|
|
115
|
+
type InternalItemProps = {
|
|
116
|
+
__index?: number;
|
|
117
|
+
__count?: number;
|
|
118
|
+
};
|
|
119
|
+
|
|
120
|
+
interface ToggleItemProps extends InternalItemProps {
|
|
121
|
+
value: string;
|
|
122
|
+
testID?: string;
|
|
123
|
+
children: React.ReactNode;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
function ToggleItem({ value, testID, children, __index = 0 }: ToggleItemProps) {
|
|
127
|
+
const {
|
|
128
|
+
value: groupValue,
|
|
129
|
+
onValueChange,
|
|
130
|
+
type,
|
|
131
|
+
orientation,
|
|
132
|
+
} = useToggleGroupContext();
|
|
133
|
+
|
|
134
|
+
const isSelected = Array.isArray(groupValue)
|
|
135
|
+
? groupValue.includes(value)
|
|
136
|
+
: groupValue === value;
|
|
137
|
+
|
|
138
|
+
const isFirst = __index === 0;
|
|
139
|
+
const divider = isFirst
|
|
140
|
+
? 'none'
|
|
141
|
+
: orientation === 'horizontal'
|
|
142
|
+
? 'left'
|
|
143
|
+
: 'top';
|
|
144
|
+
|
|
145
|
+
return (
|
|
146
|
+
<Pressable
|
|
147
|
+
testID={testID ?? `toggle-item-${value}`}
|
|
148
|
+
accessibilityRole="button"
|
|
149
|
+
accessibilityState={{ selected: isSelected }}
|
|
150
|
+
onPress={() => {
|
|
151
|
+
if (type === 'single') {
|
|
152
|
+
onValueChange(isSelected ? '' : value);
|
|
153
|
+
return;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
// multiple
|
|
157
|
+
if (Array.isArray(groupValue)) {
|
|
158
|
+
onValueChange(
|
|
159
|
+
isSelected
|
|
160
|
+
? groupValue.filter((v) => v !== value)
|
|
161
|
+
: [...groupValue, value]
|
|
162
|
+
);
|
|
163
|
+
} else {
|
|
164
|
+
onValueChange(isSelected ? [] : [value]);
|
|
165
|
+
}
|
|
166
|
+
}}
|
|
167
|
+
className={cn(
|
|
168
|
+
itemVariants({ orientation, divider, selected: isSelected })
|
|
169
|
+
)}
|
|
170
|
+
>
|
|
171
|
+
{/* Selected border overlay (no reflow, no flicker) */}
|
|
172
|
+
{isSelected ? (
|
|
173
|
+
<View
|
|
174
|
+
pointerEvents="none"
|
|
175
|
+
className="absolute inset-0 border border-primary"
|
|
176
|
+
/>
|
|
177
|
+
) : null}
|
|
178
|
+
|
|
179
|
+
{/* Content */}
|
|
180
|
+
<View className="flex-row items-center justify-center gap-2">
|
|
181
|
+
{children}
|
|
182
|
+
</View>
|
|
183
|
+
</Pressable>
|
|
184
|
+
);
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
/* -----------------------------------------------------
|
|
188
|
+
* Public Props
|
|
189
|
+
* --------------------------------------------------- */
|
|
190
|
+
|
|
191
|
+
export interface ToggleGroupProps {
|
|
192
|
+
type?: ToggleGroupType | LegacyType;
|
|
193
|
+
value: string | string[];
|
|
194
|
+
onValueChange: (value: string | string[]) => void;
|
|
195
|
+
orientation?: ToggleGroupOrientation | LegacyOrientation;
|
|
196
|
+
children: React.ReactNode;
|
|
197
|
+
style?: StyleProp<ViewStyle>;
|
|
198
|
+
testID?: string;
|
|
199
|
+
className?: never;
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
export function ToggleGroup({
|
|
203
|
+
type = 'single',
|
|
204
|
+
value,
|
|
205
|
+
onValueChange,
|
|
206
|
+
orientation = 'horizontal',
|
|
207
|
+
children,
|
|
208
|
+
style,
|
|
209
|
+
testID,
|
|
210
|
+
}: ToggleGroupProps) {
|
|
211
|
+
const items = React.Children.toArray(children).filter(Boolean);
|
|
212
|
+
|
|
213
|
+
const t = normalizeType(type);
|
|
214
|
+
const o = normalizeOrientation(orientation);
|
|
215
|
+
|
|
216
|
+
return (
|
|
217
|
+
<ToggleGroupContext.Provider
|
|
218
|
+
value={{ value, onValueChange, type: t, orientation: o }}
|
|
219
|
+
>
|
|
220
|
+
<View
|
|
221
|
+
testID={testID ?? 'toggle-group'}
|
|
222
|
+
className={cn(rootVariants({ orientation: o }))}
|
|
223
|
+
style={style}
|
|
224
|
+
>
|
|
225
|
+
{items.map((child, index) => {
|
|
226
|
+
if (!React.isValidElement(child)) return child;
|
|
227
|
+
|
|
228
|
+
return React.cloneElement(child as React.ReactElement<any>, {
|
|
229
|
+
__index: index,
|
|
230
|
+
__count: items.length,
|
|
231
|
+
});
|
|
232
|
+
})}
|
|
233
|
+
</View>
|
|
234
|
+
</ToggleGroupContext.Provider>
|
|
235
|
+
);
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
/* -----------------------------------------------------
|
|
239
|
+
* ToggleGroupItem (public)
|
|
240
|
+
* --------------------------------------------------- */
|
|
241
|
+
|
|
242
|
+
export interface ToggleGroupItemProps {
|
|
243
|
+
value: string;
|
|
244
|
+
testID?: string;
|
|
245
|
+
children: React.ReactNode;
|
|
246
|
+
className?: never;
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
export function ToggleGroupItem(
|
|
250
|
+
props: ToggleGroupItemProps & InternalItemProps
|
|
251
|
+
) {
|
|
252
|
+
const { value, testID, children, __index, __count } = props;
|
|
253
|
+
return (
|
|
254
|
+
<ToggleItem
|
|
255
|
+
value={value}
|
|
256
|
+
testID={testID}
|
|
257
|
+
__index={__index}
|
|
258
|
+
__count={__count}
|
|
259
|
+
>
|
|
260
|
+
{children}
|
|
261
|
+
</ToggleItem>
|
|
262
|
+
);
|
|
263
|
+
}
|