@cdx-ui/components 0.0.1-beta.7 → 0.0.1-beta.70
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 +37 -19
- package/lib/commonjs/components/AlertDialog/index.js +17 -14
- package/lib/commonjs/components/AlertDialog/index.js.map +1 -1
- package/lib/commonjs/components/Avatar/index.js +126 -26
- package/lib/commonjs/components/Avatar/index.js.map +1 -1
- package/lib/commonjs/components/Avatar/styles.js +36 -29
- package/lib/commonjs/components/Avatar/styles.js.map +1 -1
- package/lib/commonjs/components/Button/index.js +143 -29
- package/lib/commonjs/components/Button/index.js.map +1 -1
- package/lib/commonjs/components/Button/styles.js +94 -29
- package/lib/commonjs/components/Button/styles.js.map +1 -1
- package/lib/commonjs/components/CLAUDE.md +194 -0
- package/lib/commonjs/components/Card/index.js +22 -4
- package/lib/commonjs/components/Card/index.js.map +1 -1
- package/lib/commonjs/components/Card/styles.js +27 -4
- package/lib/commonjs/components/Card/styles.js.map +1 -1
- package/lib/commonjs/components/Checkbox/index.js +71 -48
- package/lib/commonjs/components/Checkbox/index.js.map +1 -1
- package/lib/commonjs/components/Checkbox/styles.js +41 -47
- package/lib/commonjs/components/Checkbox/styles.js.map +1 -1
- package/lib/commonjs/components/Chip/index.js +94 -17
- package/lib/commonjs/components/Chip/index.js.map +1 -1
- package/lib/commonjs/components/Chip/styles.js +178 -21
- package/lib/commonjs/components/Chip/styles.js.map +1 -1
- package/lib/commonjs/components/Dialog/index.js +140 -65
- package/lib/commonjs/components/Dialog/index.js.map +1 -1
- package/lib/commonjs/components/Dialog/styles.js +60 -14
- package/lib/commonjs/components/Dialog/styles.js.map +1 -1
- package/lib/commonjs/components/Field/index.js +77 -27
- package/lib/commonjs/components/Field/index.js.map +1 -1
- package/lib/commonjs/components/Field/styles.js +4 -4
- package/lib/commonjs/components/Field/styles.js.map +1 -1
- package/lib/commonjs/components/Form/index.js +5 -12
- package/lib/commonjs/components/Form/index.js.map +1 -1
- package/lib/commonjs/components/Heading/styles.js +1 -1
- package/lib/commonjs/components/Heading/styles.js.map +1 -1
- package/lib/commonjs/components/Icon/index.js +3 -4
- package/lib/commonjs/components/Icon/index.js.map +1 -1
- package/lib/commonjs/components/IconButton/index.js +11 -34
- package/lib/commonjs/components/IconButton/index.js.map +1 -1
- package/lib/commonjs/components/IconButton/styles.js +135 -10
- package/lib/commonjs/components/IconButton/styles.js.map +1 -1
- package/lib/commonjs/components/Input/index.js +50 -20
- package/lib/commonjs/components/Input/index.js.map +1 -1
- package/lib/commonjs/components/Input/styles.js +7 -6
- package/lib/commonjs/components/Input/styles.js.map +1 -1
- package/lib/commonjs/components/Link/index.js +35 -9
- package/lib/commonjs/components/Link/index.js.map +1 -1
- package/lib/commonjs/components/Link/styles.js +56 -6
- package/lib/commonjs/components/Link/styles.js.map +1 -1
- package/lib/commonjs/components/ListItem/index.js +132 -79
- package/lib/commonjs/components/ListItem/index.js.map +1 -1
- package/lib/commonjs/components/ListItem/styles.js +29 -57
- package/lib/commonjs/components/ListItem/styles.js.map +1 -1
- package/lib/commonjs/components/OtpInput/index.js +94 -28
- package/lib/commonjs/components/OtpInput/index.js.map +1 -1
- package/lib/commonjs/components/ProgressBar/index.js +8 -13
- package/lib/commonjs/components/ProgressBar/index.js.map +1 -1
- package/lib/commonjs/components/ProgressSegmented/index.js +24 -10
- package/lib/commonjs/components/ProgressSegmented/index.js.map +1 -1
- package/lib/commonjs/components/Radio/index.js +165 -0
- package/lib/commonjs/components/Radio/index.js.map +1 -0
- package/lib/commonjs/components/Radio/styles.js +31 -0
- package/lib/commonjs/components/Radio/styles.js.map +1 -0
- package/lib/commonjs/components/ScopedTheme/index.js +24 -0
- package/lib/commonjs/components/ScopedTheme/index.js.map +1 -0
- package/lib/commonjs/components/Select/index.js +111 -39
- package/lib/commonjs/components/Select/index.js.map +1 -1
- package/lib/commonjs/components/Select/styles.js +17 -20
- package/lib/commonjs/components/Select/styles.js.map +1 -1
- package/lib/commonjs/components/Skeleton/index.js +37 -0
- package/lib/commonjs/components/Skeleton/index.js.map +1 -0
- package/lib/commonjs/components/Skeleton/styles.js +9 -0
- package/lib/commonjs/components/Skeleton/styles.js.map +1 -0
- package/lib/commonjs/components/Switch/BaseSwitch.js +23 -13
- package/lib/commonjs/components/Switch/BaseSwitch.js.map +1 -1
- package/lib/commonjs/components/Switch/BaseSwitch.web.js +25 -21
- package/lib/commonjs/components/Switch/BaseSwitch.web.js.map +1 -1
- package/lib/commonjs/components/Switch/index.js +34 -3
- package/lib/commonjs/components/Switch/index.js.map +1 -1
- package/lib/commonjs/components/Text/styles.js +2 -2
- package/lib/commonjs/components/Text/styles.js.map +1 -1
- package/lib/commonjs/components/Tile/index.js +324 -0
- package/lib/commonjs/components/Tile/index.js.map +1 -0
- package/lib/commonjs/components/Tile/styles.js +52 -0
- package/lib/commonjs/components/Tile/styles.js.map +1 -0
- package/lib/commonjs/components/VirtualizedList/index.js.map +1 -1
- package/lib/commonjs/components/index.js +48 -0
- package/lib/commonjs/components/index.js.map +1 -1
- package/lib/commonjs/figma/AlertDialog.Description.figma.js +20 -0
- package/lib/commonjs/figma/AlertDialog.Description.figma.js.map +1 -0
- package/lib/commonjs/figma/AlertDialog.Footer.figma.js +41 -0
- package/lib/commonjs/figma/AlertDialog.Footer.figma.js.map +1 -0
- package/lib/commonjs/figma/AlertDialog.Header.figma.js +28 -0
- package/lib/commonjs/figma/AlertDialog.Header.figma.js.map +1 -0
- package/lib/commonjs/figma/AlertDialog.Text.figma.js +20 -0
- package/lib/commonjs/figma/AlertDialog.Text.figma.js.map +1 -0
- package/lib/commonjs/figma/AlertDialog.Title.figma.js +27 -0
- package/lib/commonjs/figma/AlertDialog.Title.figma.js.map +1 -0
- package/lib/commonjs/figma/AlertDialog.figma.js +43 -0
- package/lib/commonjs/figma/AlertDialog.figma.js.map +1 -0
- package/lib/commonjs/figma/Avatar.figma.js +57 -0
- package/lib/commonjs/figma/Avatar.figma.js.map +1 -0
- package/lib/commonjs/figma/Button.figma.js +4 -7
- package/lib/commonjs/figma/Button.figma.js.map +1 -1
- package/lib/commonjs/figma/CLAUDE.md +30 -0
- package/lib/commonjs/figma/Card.Header.figma.js +28 -0
- package/lib/commonjs/figma/Card.Header.figma.js.map +1 -0
- package/lib/commonjs/figma/Card.figma.js +42 -0
- package/lib/commonjs/figma/Card.figma.js.map +1 -0
- package/lib/commonjs/figma/Checkbox.figma.js +55 -0
- package/lib/commonjs/figma/Checkbox.figma.js.map +1 -0
- package/lib/commonjs/figma/Chip.figma.js +68 -0
- package/lib/commonjs/figma/Chip.figma.js.map +1 -0
- package/lib/commonjs/figma/Dialog.Description.figma.js +20 -0
- package/lib/commonjs/figma/Dialog.Description.figma.js.map +1 -0
- package/lib/commonjs/figma/Dialog.Footer.figma.js +30 -0
- package/lib/commonjs/figma/Dialog.Footer.figma.js.map +1 -0
- package/lib/commonjs/figma/Dialog.Header.figma.js +29 -0
- package/lib/commonjs/figma/Dialog.Header.figma.js.map +1 -0
- package/lib/commonjs/figma/Dialog.Text.figma.js +20 -0
- package/lib/commonjs/figma/Dialog.Text.figma.js.map +1 -0
- package/lib/commonjs/figma/Dialog.Title.figma.js +27 -0
- package/lib/commonjs/figma/Dialog.Title.figma.js.map +1 -0
- package/lib/commonjs/figma/Dialog.figma.js +51 -0
- package/lib/commonjs/figma/Dialog.figma.js.map +1 -0
- package/lib/commonjs/figma/Field.Input.figma.js +57 -0
- package/lib/commonjs/figma/Field.Input.figma.js.map +1 -0
- package/lib/commonjs/figma/Field.Select.figma.js +57 -0
- package/lib/commonjs/figma/Field.Select.figma.js.map +1 -0
- package/lib/commonjs/figma/Heading.figma.js +30 -0
- package/lib/commonjs/figma/Heading.figma.js.map +1 -0
- package/lib/commonjs/figma/Icon.figma.js +20 -0
- package/lib/commonjs/figma/Icon.figma.js.map +1 -0
- package/lib/commonjs/figma/IconButton.figma.js +47 -0
- package/lib/commonjs/figma/IconButton.figma.js.map +1 -0
- package/lib/commonjs/figma/Input.figma.js +52 -0
- package/lib/commonjs/figma/Input.figma.js.map +1 -0
- package/lib/commonjs/figma/Link.figma.js +30 -0
- package/lib/commonjs/figma/Link.figma.js.map +1 -0
- package/lib/commonjs/figma/ListItem.Description.figma.js +23 -0
- package/lib/commonjs/figma/ListItem.Description.figma.js.map +1 -0
- package/lib/commonjs/figma/ListItem.LeadingSlot.figma.js +24 -0
- package/lib/commonjs/figma/ListItem.LeadingSlot.figma.js.map +1 -0
- package/lib/commonjs/figma/ListItem.Meta.figma.js +23 -0
- package/lib/commonjs/figma/ListItem.Meta.figma.js.map +1 -0
- package/lib/commonjs/figma/ListItem.SectionHeader.figma.js +24 -0
- package/lib/commonjs/figma/ListItem.SectionHeader.figma.js.map +1 -0
- package/lib/commonjs/figma/ListItem.Title.figma.js +23 -0
- package/lib/commonjs/figma/ListItem.Title.figma.js.map +1 -0
- package/lib/commonjs/figma/ListItem.TrailingSlot.figma.js +24 -0
- package/lib/commonjs/figma/ListItem.TrailingSlot.figma.js.map +1 -0
- package/lib/commonjs/figma/ListItem.figma.js +50 -0
- package/lib/commonjs/figma/ListItem.figma.js.map +1 -0
- package/lib/commonjs/figma/ProgressSegmented.figma.js +39 -0
- package/lib/commonjs/figma/ProgressSegmented.figma.js.map +1 -0
- package/lib/commonjs/figma/Radio.figma.js +40 -0
- package/lib/commonjs/figma/Radio.figma.js.map +1 -0
- package/lib/commonjs/figma/Select.figma.js +53 -0
- package/lib/commonjs/figma/Select.figma.js.map +1 -0
- package/lib/commonjs/figma/Text.figma.js +32 -0
- package/lib/commonjs/figma/Text.figma.js.map +1 -0
- package/lib/commonjs/figma/icons.figma.batch.js +27 -0
- package/lib/commonjs/figma/icons.figma.batch.js.map +1 -0
- package/lib/commonjs/figma/icons.figma.batch.json +17705 -0
- package/lib/commonjs/hooks/index.js +19 -0
- package/lib/commonjs/hooks/index.js.map +1 -0
- package/lib/commonjs/hooks/useForgeBottomTabScreenOptions.js +246 -0
- package/lib/commonjs/hooks/useForgeBottomTabScreenOptions.js.map +1 -0
- package/lib/commonjs/index.js +24 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/metro/withCdxMetroConfig.js +7 -18
- package/lib/commonjs/metro/withCdxMetroConfig.js.map +1 -1
- package/lib/commonjs/metro/withForgeMetroConfig.js +24 -0
- package/lib/commonjs/metro/withForgeMetroConfig.js.map +1 -0
- package/lib/commonjs/navigation/forgeTabIcon.js +43 -0
- package/lib/commonjs/navigation/forgeTabIcon.js.map +1 -0
- package/lib/commonjs/navigation/forgeTabIcon.native.js +35 -0
- package/lib/commonjs/navigation/forgeTabIcon.native.js.map +1 -0
- package/lib/commonjs/navigation/index.js +13 -0
- package/lib/commonjs/navigation/index.js.map +1 -0
- package/lib/commonjs/navigation/types.js +38 -0
- package/lib/commonjs/navigation/types.js.map +1 -0
- package/lib/commonjs/styles/primitives.js +43 -6
- package/lib/commonjs/styles/primitives.js.map +1 -1
- package/lib/commonjs/utils/positionToDataIcon.js +41 -0
- package/lib/commonjs/utils/positionToDataIcon.js.map +1 -0
- package/lib/module/components/AlertDialog/index.js +18 -15
- package/lib/module/components/AlertDialog/index.js.map +1 -1
- package/lib/module/components/Avatar/index.js +129 -29
- package/lib/module/components/Avatar/index.js.map +1 -1
- package/lib/module/components/Avatar/styles.js +36 -29
- package/lib/module/components/Avatar/styles.js.map +1 -1
- package/lib/module/components/Button/index.js +146 -33
- package/lib/module/components/Button/index.js.map +1 -1
- package/lib/module/components/Button/styles.js +93 -28
- package/lib/module/components/Button/styles.js.map +1 -1
- package/lib/module/components/CLAUDE.md +194 -0
- package/lib/module/components/Card/index.js +23 -4
- package/lib/module/components/Card/index.js.map +1 -1
- package/lib/module/components/Card/styles.js +27 -4
- package/lib/module/components/Card/styles.js.map +1 -1
- package/lib/module/components/Checkbox/index.js +75 -52
- package/lib/module/components/Checkbox/index.js.map +1 -1
- package/lib/module/components/Checkbox/styles.js +43 -48
- package/lib/module/components/Checkbox/styles.js.map +1 -1
- package/lib/module/components/Chip/index.js +98 -21
- package/lib/module/components/Chip/index.js.map +1 -1
- package/lib/module/components/Chip/styles.js +177 -20
- package/lib/module/components/Chip/styles.js.map +1 -1
- package/lib/module/components/Dialog/index.js +147 -72
- package/lib/module/components/Dialog/index.js.map +1 -1
- package/lib/module/components/Dialog/styles.js +60 -14
- package/lib/module/components/Dialog/styles.js.map +1 -1
- package/lib/module/components/Field/index.js +81 -32
- package/lib/module/components/Field/index.js.map +1 -1
- package/lib/module/components/Field/styles.js +4 -4
- package/lib/module/components/Field/styles.js.map +1 -1
- package/lib/module/components/Form/index.js +7 -14
- package/lib/module/components/Form/index.js.map +1 -1
- package/lib/module/components/Heading/styles.js +1 -1
- package/lib/module/components/Heading/styles.js.map +1 -1
- package/lib/module/components/Icon/index.js +3 -4
- package/lib/module/components/Icon/index.js.map +1 -1
- package/lib/module/components/IconButton/index.js +12 -35
- package/lib/module/components/IconButton/index.js.map +1 -1
- package/lib/module/components/IconButton/styles.js +135 -10
- package/lib/module/components/IconButton/styles.js.map +1 -1
- package/lib/module/components/Input/index.js +53 -23
- package/lib/module/components/Input/index.js.map +1 -1
- package/lib/module/components/Input/styles.js +7 -6
- package/lib/module/components/Input/styles.js.map +1 -1
- package/lib/module/components/Link/index.js +38 -11
- package/lib/module/components/Link/index.js.map +1 -1
- package/lib/module/components/Link/styles.js +55 -6
- package/lib/module/components/Link/styles.js.map +1 -1
- package/lib/module/components/ListItem/index.js +137 -84
- package/lib/module/components/ListItem/index.js.map +1 -1
- package/lib/module/components/ListItem/styles.js +30 -58
- package/lib/module/components/ListItem/styles.js.map +1 -1
- package/lib/module/components/OtpInput/index.js +94 -28
- package/lib/module/components/OtpInput/index.js.map +1 -1
- package/lib/module/components/ProgressBar/index.js +9 -14
- package/lib/module/components/ProgressBar/index.js.map +1 -1
- package/lib/module/components/ProgressSegmented/index.js +25 -11
- package/lib/module/components/ProgressSegmented/index.js.map +1 -1
- package/lib/module/components/Radio/index.js +161 -0
- package/lib/module/components/Radio/index.js.map +1 -0
- package/lib/module/components/Radio/styles.js +27 -0
- package/lib/module/components/Radio/styles.js.map +1 -0
- package/lib/module/components/ScopedTheme/index.js +19 -0
- package/lib/module/components/ScopedTheme/index.js.map +1 -0
- package/lib/module/components/Select/index.js +117 -45
- package/lib/module/components/Select/index.js.map +1 -1
- package/lib/module/components/Select/styles.js +18 -21
- package/lib/module/components/Select/styles.js.map +1 -1
- package/lib/module/components/Skeleton/index.js +32 -0
- package/lib/module/components/Skeleton/index.js.map +1 -0
- package/lib/module/components/Skeleton/styles.js +5 -0
- package/lib/module/components/Skeleton/styles.js.map +1 -0
- package/lib/module/components/Switch/BaseSwitch.js +24 -14
- package/lib/module/components/Switch/BaseSwitch.js.map +1 -1
- package/lib/module/components/Switch/BaseSwitch.web.js +26 -22
- package/lib/module/components/Switch/BaseSwitch.web.js.map +1 -1
- package/lib/module/components/Switch/index.js +35 -4
- package/lib/module/components/Switch/index.js.map +1 -1
- package/lib/module/components/Text/styles.js +2 -2
- package/lib/module/components/Text/styles.js.map +1 -1
- package/lib/module/components/Tile/index.js +315 -0
- package/lib/module/components/Tile/index.js.map +1 -0
- package/lib/module/components/Tile/styles.js +48 -0
- package/lib/module/components/Tile/styles.js.map +1 -0
- package/lib/module/components/VirtualizedList/index.js.map +1 -1
- package/lib/module/components/index.js +4 -0
- package/lib/module/components/index.js.map +1 -1
- package/lib/module/figma/AlertDialog.Description.figma.js +14 -0
- package/lib/module/figma/AlertDialog.Description.figma.js.map +1 -0
- package/lib/module/figma/AlertDialog.Footer.figma.js +35 -0
- package/lib/module/figma/AlertDialog.Footer.figma.js.map +1 -0
- package/lib/module/figma/AlertDialog.Header.figma.js +22 -0
- package/lib/module/figma/AlertDialog.Header.figma.js.map +1 -0
- package/lib/module/figma/AlertDialog.Text.figma.js +14 -0
- package/lib/module/figma/AlertDialog.Text.figma.js.map +1 -0
- package/lib/module/figma/AlertDialog.Title.figma.js +21 -0
- package/lib/module/figma/AlertDialog.Title.figma.js.map +1 -0
- package/lib/module/figma/AlertDialog.figma.js +37 -0
- package/lib/module/figma/AlertDialog.figma.js.map +1 -0
- package/lib/module/figma/Avatar.figma.js +51 -0
- package/lib/module/figma/Avatar.figma.js.map +1 -0
- package/lib/module/figma/Button.figma.js +4 -7
- package/lib/module/figma/Button.figma.js.map +1 -1
- package/lib/module/figma/CLAUDE.md +30 -0
- package/lib/module/figma/Card.Header.figma.js +22 -0
- package/lib/module/figma/Card.Header.figma.js.map +1 -0
- package/lib/module/figma/Card.figma.js +36 -0
- package/lib/module/figma/Card.figma.js.map +1 -0
- package/lib/module/figma/Checkbox.figma.js +49 -0
- package/lib/module/figma/Checkbox.figma.js.map +1 -0
- package/lib/module/figma/Chip.figma.js +62 -0
- package/lib/module/figma/Chip.figma.js.map +1 -0
- package/lib/module/figma/Dialog.Description.figma.js +14 -0
- package/lib/module/figma/Dialog.Description.figma.js.map +1 -0
- package/lib/module/figma/Dialog.Footer.figma.js +24 -0
- package/lib/module/figma/Dialog.Footer.figma.js.map +1 -0
- package/lib/module/figma/Dialog.Header.figma.js +23 -0
- package/lib/module/figma/Dialog.Header.figma.js.map +1 -0
- package/lib/module/figma/Dialog.Text.figma.js +14 -0
- package/lib/module/figma/Dialog.Text.figma.js.map +1 -0
- package/lib/module/figma/Dialog.Title.figma.js +21 -0
- package/lib/module/figma/Dialog.Title.figma.js.map +1 -0
- package/lib/module/figma/Dialog.figma.js +45 -0
- package/lib/module/figma/Dialog.figma.js.map +1 -0
- package/lib/module/figma/Field.Input.figma.js +51 -0
- package/lib/module/figma/Field.Input.figma.js.map +1 -0
- package/lib/module/figma/Field.Select.figma.js +51 -0
- package/lib/module/figma/Field.Select.figma.js.map +1 -0
- package/lib/module/figma/Heading.figma.js +24 -0
- package/lib/module/figma/Heading.figma.js.map +1 -0
- package/lib/module/figma/Icon.figma.js +14 -0
- package/lib/module/figma/Icon.figma.js.map +1 -0
- package/lib/module/figma/IconButton.figma.js +41 -0
- package/lib/module/figma/IconButton.figma.js.map +1 -0
- package/lib/module/figma/Input.figma.js +46 -0
- package/lib/module/figma/Input.figma.js.map +1 -0
- package/lib/module/figma/Link.figma.js +24 -0
- package/lib/module/figma/Link.figma.js.map +1 -0
- package/lib/module/figma/ListItem.Description.figma.js +17 -0
- package/lib/module/figma/ListItem.Description.figma.js.map +1 -0
- package/lib/module/figma/ListItem.LeadingSlot.figma.js +18 -0
- package/lib/module/figma/ListItem.LeadingSlot.figma.js.map +1 -0
- package/lib/module/figma/ListItem.Meta.figma.js +17 -0
- package/lib/module/figma/ListItem.Meta.figma.js.map +1 -0
- package/lib/module/figma/ListItem.SectionHeader.figma.js +18 -0
- package/lib/module/figma/ListItem.SectionHeader.figma.js.map +1 -0
- package/lib/module/figma/ListItem.Title.figma.js +17 -0
- package/lib/module/figma/ListItem.Title.figma.js.map +1 -0
- package/lib/module/figma/ListItem.TrailingSlot.figma.js +18 -0
- package/lib/module/figma/ListItem.TrailingSlot.figma.js.map +1 -0
- package/lib/module/figma/ListItem.figma.js +44 -0
- package/lib/module/figma/ListItem.figma.js.map +1 -0
- package/lib/module/figma/ProgressSegmented.figma.js +33 -0
- package/lib/module/figma/ProgressSegmented.figma.js.map +1 -0
- package/lib/module/figma/Radio.figma.js +34 -0
- package/lib/module/figma/Radio.figma.js.map +1 -0
- package/lib/module/figma/Select.figma.js +47 -0
- package/lib/module/figma/Select.figma.js.map +1 -0
- package/lib/module/figma/Text.figma.js +26 -0
- package/lib/module/figma/Text.figma.js.map +1 -0
- package/lib/module/figma/icons.figma.batch.js +22 -0
- package/lib/module/figma/icons.figma.batch.js.map +1 -0
- package/lib/module/figma/icons.figma.batch.json +17705 -0
- package/lib/module/hooks/index.js +4 -0
- package/lib/module/hooks/index.js.map +1 -0
- package/lib/module/hooks/useForgeBottomTabScreenOptions.js +242 -0
- package/lib/module/hooks/useForgeBottomTabScreenOptions.js.map +1 -0
- package/lib/module/index.js +2 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/metro/withCdxMetroConfig.js +3 -17
- package/lib/module/metro/withCdxMetroConfig.js.map +1 -1
- package/lib/module/metro/withForgeMetroConfig.js +20 -0
- package/lib/module/metro/withForgeMetroConfig.js.map +1 -0
- package/lib/module/navigation/forgeTabIcon.js +39 -0
- package/lib/module/navigation/forgeTabIcon.js.map +1 -0
- package/lib/module/navigation/forgeTabIcon.native.js +31 -0
- package/lib/module/navigation/forgeTabIcon.native.js.map +1 -0
- package/lib/module/navigation/index.js +4 -0
- package/lib/module/navigation/index.js.map +1 -0
- package/lib/module/navigation/types.js +36 -0
- package/lib/module/navigation/types.js.map +1 -0
- package/lib/module/styles/primitives.js +43 -6
- package/lib/module/styles/primitives.js.map +1 -1
- package/lib/module/utils/positionToDataIcon.js +38 -0
- package/lib/module/utils/positionToDataIcon.js.map +1 -0
- package/lib/typescript/components/AlertDialog/index.d.ts +3 -2
- package/lib/typescript/components/AlertDialog/index.d.ts.map +1 -1
- package/lib/typescript/components/Avatar/index.d.ts +6 -2
- package/lib/typescript/components/Avatar/index.d.ts.map +1 -1
- package/lib/typescript/components/Avatar/styles.d.ts +4 -4
- package/lib/typescript/components/Avatar/styles.d.ts.map +1 -1
- package/lib/typescript/components/Button/index.d.ts +44 -9
- package/lib/typescript/components/Button/index.d.ts.map +1 -1
- package/lib/typescript/components/Button/styles.d.ts +7 -4
- package/lib/typescript/components/Button/styles.d.ts.map +1 -1
- package/lib/typescript/components/Card/index.d.ts +4 -3
- package/lib/typescript/components/Card/index.d.ts.map +1 -1
- package/lib/typescript/components/Card/styles.d.ts +13 -3
- package/lib/typescript/components/Card/styles.d.ts.map +1 -1
- package/lib/typescript/components/Checkbox/index.d.ts +4 -3
- package/lib/typescript/components/Checkbox/index.d.ts.map +1 -1
- package/lib/typescript/components/Checkbox/styles.d.ts +4 -14
- package/lib/typescript/components/Checkbox/styles.d.ts.map +1 -1
- package/lib/typescript/components/Chip/index.d.ts +31 -8
- package/lib/typescript/components/Chip/index.d.ts.map +1 -1
- package/lib/typescript/components/Chip/styles.d.ts +12 -4
- package/lib/typescript/components/Chip/styles.d.ts.map +1 -1
- package/lib/typescript/components/Dialog/index.d.ts +25 -13
- package/lib/typescript/components/Dialog/index.d.ts.map +1 -1
- package/lib/typescript/components/Dialog/styles.d.ts +16 -5
- package/lib/typescript/components/Dialog/styles.d.ts.map +1 -1
- package/lib/typescript/components/Field/index.d.ts +14 -7
- package/lib/typescript/components/Field/index.d.ts.map +1 -1
- package/lib/typescript/components/Field/styles.d.ts.map +1 -1
- package/lib/typescript/components/Form/index.d.ts +4 -4
- package/lib/typescript/components/Form/index.d.ts.map +1 -1
- package/lib/typescript/components/Heading/styles.d.ts +1 -1
- package/lib/typescript/components/Icon/index.d.ts +5 -5
- package/lib/typescript/components/Icon/index.d.ts.map +1 -1
- package/lib/typescript/components/IconButton/index.d.ts +3 -3
- package/lib/typescript/components/IconButton/index.d.ts.map +1 -1
- package/lib/typescript/components/IconButton/styles.d.ts +6 -2
- package/lib/typescript/components/IconButton/styles.d.ts.map +1 -1
- package/lib/typescript/components/Input/index.d.ts +11 -3
- package/lib/typescript/components/Input/index.d.ts.map +1 -1
- package/lib/typescript/components/Input/styles.d.ts.map +1 -1
- package/lib/typescript/components/Link/index.d.ts +4 -2
- package/lib/typescript/components/Link/index.d.ts.map +1 -1
- package/lib/typescript/components/Link/styles.d.ts +9 -2
- package/lib/typescript/components/Link/styles.d.ts.map +1 -1
- package/lib/typescript/components/ListItem/index.d.ts +28 -6
- package/lib/typescript/components/ListItem/index.d.ts.map +1 -1
- package/lib/typescript/components/ListItem/styles.d.ts +3 -10
- package/lib/typescript/components/ListItem/styles.d.ts.map +1 -1
- package/lib/typescript/components/OtpInput/index.d.ts +1 -1
- package/lib/typescript/components/OtpInput/index.d.ts.map +1 -1
- package/lib/typescript/components/ProgressBar/index.d.ts +4 -4
- package/lib/typescript/components/ProgressBar/index.d.ts.map +1 -1
- package/lib/typescript/components/ProgressSegmented/index.d.ts +14 -3
- package/lib/typescript/components/ProgressSegmented/index.d.ts.map +1 -1
- package/lib/typescript/components/Radio/index.d.ts +44 -0
- package/lib/typescript/components/Radio/index.d.ts.map +1 -0
- package/lib/typescript/components/Radio/styles.d.ts +8 -0
- package/lib/typescript/components/Radio/styles.d.ts.map +1 -0
- package/lib/typescript/components/ScopedTheme/index.d.ts +16 -0
- package/lib/typescript/components/ScopedTheme/index.d.ts.map +1 -0
- package/lib/typescript/components/Select/index.d.ts +35 -2
- package/lib/typescript/components/Select/index.d.ts.map +1 -1
- package/lib/typescript/components/Select/styles.d.ts.map +1 -1
- package/lib/typescript/components/Skeleton/index.d.ts +9 -0
- package/lib/typescript/components/Skeleton/index.d.ts.map +1 -0
- package/lib/typescript/components/Skeleton/styles.d.ts +4 -0
- package/lib/typescript/components/Skeleton/styles.d.ts.map +1 -0
- package/lib/typescript/components/Stack/styles.d.ts +2 -2
- package/lib/typescript/components/Switch/BaseSwitch.d.ts +12 -5
- package/lib/typescript/components/Switch/BaseSwitch.d.ts.map +1 -1
- package/lib/typescript/components/Switch/BaseSwitch.web.d.ts +11 -5
- package/lib/typescript/components/Switch/BaseSwitch.web.d.ts.map +1 -1
- package/lib/typescript/components/Switch/index.d.ts +5 -1
- package/lib/typescript/components/Switch/index.d.ts.map +1 -1
- package/lib/typescript/components/Text/styles.d.ts +1 -1
- package/lib/typescript/components/Tile/index.d.ts +76 -0
- package/lib/typescript/components/Tile/index.d.ts.map +1 -0
- package/lib/typescript/components/Tile/styles.d.ts +18 -0
- package/lib/typescript/components/Tile/styles.d.ts.map +1 -0
- package/lib/typescript/components/VirtualizedList/index.d.ts +2 -1
- package/lib/typescript/components/VirtualizedList/index.d.ts.map +1 -1
- package/lib/typescript/components/index.d.ts +4 -0
- package/lib/typescript/components/index.d.ts.map +1 -1
- package/lib/typescript/figma/AlertDialog.Description.figma.d.ts +8 -0
- package/lib/typescript/figma/AlertDialog.Description.figma.d.ts.map +1 -0
- package/lib/typescript/figma/AlertDialog.Footer.figma.d.ts +8 -0
- package/lib/typescript/figma/AlertDialog.Footer.figma.d.ts.map +1 -0
- package/lib/typescript/figma/AlertDialog.Header.figma.d.ts +8 -0
- package/lib/typescript/figma/AlertDialog.Header.figma.d.ts.map +1 -0
- package/lib/typescript/figma/AlertDialog.Text.figma.d.ts +8 -0
- package/lib/typescript/figma/AlertDialog.Text.figma.d.ts.map +1 -0
- package/lib/typescript/figma/AlertDialog.Title.figma.d.ts +8 -0
- package/lib/typescript/figma/AlertDialog.Title.figma.d.ts.map +1 -0
- package/lib/typescript/figma/AlertDialog.figma.d.ts +8 -0
- package/lib/typescript/figma/AlertDialog.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Avatar.figma.d.ts +11 -0
- package/lib/typescript/figma/Avatar.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Button.figma.d.ts.map +1 -1
- package/lib/typescript/figma/Card.Header.figma.d.ts +8 -0
- package/lib/typescript/figma/Card.Header.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Card.figma.d.ts +8 -0
- package/lib/typescript/figma/Card.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Checkbox.figma.d.ts +8 -0
- package/lib/typescript/figma/Checkbox.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Chip.figma.d.ts +8 -0
- package/lib/typescript/figma/Chip.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Dialog.Description.figma.d.ts +8 -0
- package/lib/typescript/figma/Dialog.Description.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Dialog.Footer.figma.d.ts +8 -0
- package/lib/typescript/figma/Dialog.Footer.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Dialog.Header.figma.d.ts +8 -0
- package/lib/typescript/figma/Dialog.Header.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Dialog.Text.figma.d.ts +8 -0
- package/lib/typescript/figma/Dialog.Text.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Dialog.Title.figma.d.ts +8 -0
- package/lib/typescript/figma/Dialog.Title.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Dialog.figma.d.ts +8 -0
- package/lib/typescript/figma/Dialog.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Field.Input.figma.d.ts +8 -0
- package/lib/typescript/figma/Field.Input.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Field.Select.figma.d.ts +8 -0
- package/lib/typescript/figma/Field.Select.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Heading.figma.d.ts +8 -0
- package/lib/typescript/figma/Heading.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Icon.figma.d.ts +8 -0
- package/lib/typescript/figma/Icon.figma.d.ts.map +1 -0
- package/lib/typescript/figma/IconButton.figma.d.ts +8 -0
- package/lib/typescript/figma/IconButton.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Input.figma.d.ts +8 -0
- package/lib/typescript/figma/Input.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Link.figma.d.ts +8 -0
- package/lib/typescript/figma/Link.figma.d.ts.map +1 -0
- package/lib/typescript/figma/ListItem.Description.figma.d.ts +11 -0
- package/lib/typescript/figma/ListItem.Description.figma.d.ts.map +1 -0
- package/lib/typescript/figma/ListItem.LeadingSlot.figma.d.ts +8 -0
- package/lib/typescript/figma/ListItem.LeadingSlot.figma.d.ts.map +1 -0
- package/lib/typescript/figma/ListItem.Meta.figma.d.ts +11 -0
- package/lib/typescript/figma/ListItem.Meta.figma.d.ts.map +1 -0
- package/lib/typescript/figma/ListItem.SectionHeader.figma.d.ts +8 -0
- package/lib/typescript/figma/ListItem.SectionHeader.figma.d.ts.map +1 -0
- package/lib/typescript/figma/ListItem.Title.figma.d.ts +11 -0
- package/lib/typescript/figma/ListItem.Title.figma.d.ts.map +1 -0
- package/lib/typescript/figma/ListItem.TrailingSlot.figma.d.ts +8 -0
- package/lib/typescript/figma/ListItem.TrailingSlot.figma.d.ts.map +1 -0
- package/lib/typescript/figma/ListItem.figma.d.ts +8 -0
- package/lib/typescript/figma/ListItem.figma.d.ts.map +1 -0
- package/lib/typescript/figma/ProgressSegmented.figma.d.ts +8 -0
- package/lib/typescript/figma/ProgressSegmented.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Radio.figma.d.ts +8 -0
- package/lib/typescript/figma/Radio.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Select.figma.d.ts +8 -0
- package/lib/typescript/figma/Select.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Text.figma.d.ts +11 -0
- package/lib/typescript/figma/Text.figma.d.ts.map +1 -0
- package/lib/typescript/figma/icons.figma.batch.d.ts +14 -0
- package/lib/typescript/figma/icons.figma.batch.d.ts.map +1 -0
- package/lib/typescript/hooks/index.d.ts +2 -0
- package/lib/typescript/hooks/index.d.ts.map +1 -0
- package/lib/typescript/hooks/useForgeBottomTabScreenOptions.d.ts +137 -0
- package/lib/typescript/hooks/useForgeBottomTabScreenOptions.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +2 -0
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/metro/withCdxMetroConfig.d.ts +4 -18
- package/lib/typescript/metro/withCdxMetroConfig.d.ts.map +1 -1
- package/lib/typescript/metro/withForgeMetroConfig.d.ts +19 -0
- package/lib/typescript/metro/withForgeMetroConfig.d.ts.map +1 -0
- package/lib/typescript/navigation/forgeTabIcon.d.ts +27 -0
- package/lib/typescript/navigation/forgeTabIcon.d.ts.map +1 -0
- package/lib/typescript/navigation/forgeTabIcon.native.d.ts +15 -0
- package/lib/typescript/navigation/forgeTabIcon.native.d.ts.map +1 -0
- package/lib/typescript/navigation/index.d.ts +4 -0
- package/lib/typescript/navigation/index.d.ts.map +1 -0
- package/lib/typescript/navigation/types.d.ts +37 -0
- package/lib/typescript/navigation/types.d.ts.map +1 -0
- package/lib/typescript/styles/primitives.d.ts +38 -0
- package/lib/typescript/styles/primitives.d.ts.map +1 -1
- package/lib/typescript/utils/positionToDataIcon.d.ts +29 -0
- package/lib/typescript/utils/positionToDataIcon.d.ts.map +1 -0
- package/package.json +11 -9
- package/src/components/AlertDialog/index.tsx +21 -20
- package/src/components/Avatar/index.tsx +135 -45
- package/src/components/Avatar/styles.ts +49 -34
- package/src/components/Button/index.tsx +253 -47
- package/src/components/Button/styles.ts +78 -37
- package/src/components/CLAUDE.md +194 -0
- package/src/components/Card/index.tsx +41 -16
- package/src/components/Card/styles.ts +42 -15
- package/src/components/Checkbox/index.tsx +101 -51
- package/src/components/Checkbox/styles.ts +84 -86
- package/src/components/Chip/index.tsx +136 -32
- package/src/components/Chip/styles.ts +220 -18
- package/src/components/Dialog/index.tsx +199 -93
- package/src/components/Dialog/styles.ts +72 -30
- package/src/components/Field/index.tsx +121 -50
- package/src/components/Field/styles.ts +5 -4
- package/src/components/Form/index.tsx +18 -14
- package/src/components/Heading/styles.ts +1 -1
- package/src/components/Icon/index.tsx +6 -7
- package/src/components/IconButton/index.tsx +13 -36
- package/src/components/IconButton/styles.ts +136 -10
- package/src/components/Input/index.tsx +75 -32
- package/src/components/Input/styles.ts +15 -9
- package/src/components/Link/index.tsx +57 -18
- package/src/components/Link/styles.ts +49 -9
- package/src/components/ListItem/index.tsx +157 -87
- package/src/components/ListItem/styles.ts +50 -81
- package/src/components/OtpInput/index.tsx +126 -43
- package/src/components/ProgressBar/index.tsx +11 -16
- package/src/components/ProgressSegmented/index.tsx +50 -14
- package/src/components/Radio/index.tsx +214 -0
- package/src/components/Radio/styles.ts +59 -0
- package/src/components/ScopedTheme/index.tsx +17 -0
- package/src/components/Select/index.tsx +175 -55
- package/src/components/Select/styles.ts +48 -51
- package/src/components/Skeleton/index.tsx +42 -0
- package/src/components/Skeleton/styles.ts +5 -0
- package/src/components/Switch/BaseSwitch.tsx +38 -16
- package/src/components/Switch/BaseSwitch.web.tsx +28 -35
- package/src/components/Switch/index.tsx +51 -4
- package/src/components/Text/styles.ts +2 -2
- package/src/components/Tile/index.tsx +347 -0
- package/src/components/Tile/styles.ts +82 -0
- package/src/components/VirtualizedList/index.tsx +11 -1
- package/src/components/index.ts +4 -0
- package/src/hooks/index.ts +5 -0
- package/src/hooks/useForgeBottomTabScreenOptions.ts +245 -0
- package/src/index.ts +2 -0
- package/src/metro/withCdxMetroConfig.ts +4 -29
- package/src/metro/withForgeMetroConfig.ts +29 -0
- package/src/navigation/forgeTabIcon.native.ts +36 -0
- package/src/navigation/forgeTabIcon.ts +33 -0
- package/src/navigation/index.ts +3 -0
- package/src/navigation/types.ts +54 -0
- package/src/styles/primitives.ts +43 -6
- package/src/utils/positionToDataIcon.ts +34 -0
- package/lib/commonjs/components/Field/FieldLabel.js +0 -33
- package/lib/commonjs/components/Field/FieldLabel.js.map +0 -1
- package/lib/commonjs/components/Field/FieldLabel.web.js +0 -22
- package/lib/commonjs/components/Field/FieldLabel.web.js.map +0 -1
- package/lib/commonjs/components/Form/FormRoot.js +0 -25
- package/lib/commonjs/components/Form/FormRoot.js.map +0 -1
- package/lib/commonjs/components/Form/FormRoot.web.js +0 -17
- package/lib/commonjs/components/Form/FormRoot.web.js.map +0 -1
- package/lib/commonjs/components/Input/BaseInput.android.js +0 -20
- package/lib/commonjs/components/Input/BaseInput.android.js.map +0 -1
- package/lib/commonjs/components/Input/BaseInput.js +0 -13
- package/lib/commonjs/components/Input/BaseInput.js.map +0 -1
- package/lib/commonjs/components/Input/BaseInput.web.js +0 -50
- package/lib/commonjs/components/Input/BaseInput.web.js.map +0 -1
- package/lib/commonjs/components/Select/SelectTriggerHost.js +0 -10
- package/lib/commonjs/components/Select/SelectTriggerHost.js.map +0 -1
- package/lib/commonjs/components/Select/SelectTriggerHost.web.js +0 -98
- package/lib/commonjs/components/Select/SelectTriggerHost.web.js.map +0 -1
- package/lib/module/components/Field/FieldLabel.js +0 -29
- package/lib/module/components/Field/FieldLabel.js.map +0 -1
- package/lib/module/components/Field/FieldLabel.web.js +0 -17
- package/lib/module/components/Field/FieldLabel.web.js.map +0 -1
- package/lib/module/components/Form/FormRoot.js +0 -21
- package/lib/module/components/Form/FormRoot.js.map +0 -1
- package/lib/module/components/Form/FormRoot.web.js +0 -12
- package/lib/module/components/Form/FormRoot.web.js.map +0 -1
- package/lib/module/components/Input/BaseInput.android.js +0 -16
- package/lib/module/components/Input/BaseInput.android.js.map +0 -1
- package/lib/module/components/Input/BaseInput.js +0 -4
- package/lib/module/components/Input/BaseInput.js.map +0 -1
- package/lib/module/components/Input/BaseInput.web.js +0 -45
- package/lib/module/components/Input/BaseInput.web.js.map +0 -1
- package/lib/module/components/Select/SelectTriggerHost.js +0 -7
- package/lib/module/components/Select/SelectTriggerHost.js.map +0 -1
- package/lib/module/components/Select/SelectTriggerHost.web.js +0 -93
- package/lib/module/components/Select/SelectTriggerHost.web.js.map +0 -1
- package/lib/typescript/components/Field/FieldLabel.d.ts +0 -18
- package/lib/typescript/components/Field/FieldLabel.d.ts.map +0 -1
- package/lib/typescript/components/Field/FieldLabel.web.d.ts +0 -16
- package/lib/typescript/components/Field/FieldLabel.web.d.ts.map +0 -1
- package/lib/typescript/components/Form/FormRoot.d.ts +0 -14
- package/lib/typescript/components/Form/FormRoot.d.ts.map +0 -1
- package/lib/typescript/components/Form/FormRoot.web.d.ts +0 -10
- package/lib/typescript/components/Form/FormRoot.web.d.ts.map +0 -1
- package/lib/typescript/components/Input/BaseInput.android.d.ts +0 -3
- package/lib/typescript/components/Input/BaseInput.android.d.ts.map +0 -1
- package/lib/typescript/components/Input/BaseInput.d.ts +0 -2
- package/lib/typescript/components/Input/BaseInput.d.ts.map +0 -1
- package/lib/typescript/components/Input/BaseInput.web.d.ts +0 -3
- package/lib/typescript/components/Input/BaseInput.web.d.ts.map +0 -1
- package/lib/typescript/components/Select/SelectTriggerHost.d.ts +0 -3
- package/lib/typescript/components/Select/SelectTriggerHost.d.ts.map +0 -1
- package/lib/typescript/components/Select/SelectTriggerHost.web.d.ts +0 -13
- package/lib/typescript/components/Select/SelectTriggerHost.web.d.ts.map +0 -1
- package/src/components/Field/FieldLabel.tsx +0 -33
- package/src/components/Field/FieldLabel.web.tsx +0 -25
- package/src/components/Form/FormRoot.tsx +0 -20
- package/src/components/Form/FormRoot.web.tsx +0 -12
- package/src/components/Input/BaseInput.android.tsx +0 -13
- package/src/components/Input/BaseInput.tsx +0 -1
- package/src/components/Input/BaseInput.web.tsx +0 -41
- package/src/components/Select/SelectTriggerHost.tsx +0 -4
- package/src/components/Select/SelectTriggerHost.web.tsx +0 -136
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
# Components — authoring & styling conventions
|
|
2
|
+
|
|
3
|
+
Auto-loaded when working in `packages/components/src/components/**`. Covers both the
|
|
4
|
+
styled component files (`index.tsx`) and their co-located CVA variant files (`styles.ts`).
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## Component Authoring (`index.tsx`)
|
|
9
|
+
|
|
10
|
+
Styled components in `@cdx-ui/components` follow a consistent pattern. Read the full guides before making changes:
|
|
11
|
+
|
|
12
|
+
- `docs/internal/practices/composition.md` — compound component pattern, naming conventions
|
|
13
|
+
- `docs/internal/practices/types.md` — prop types, `I*Props` vs `*Props`, exporting
|
|
14
|
+
- `docs/internal/practices/styling.md` — `cn()`, CVA, token classes, `Platform.select()`
|
|
15
|
+
- `docs/internal/practices/state.md` — `useControllableState`, `composeEventHandlers`
|
|
16
|
+
- `docs/internal/practices/data-attributes.md` — `data-[state]`, `data-slot`, and `data-icon` conventions
|
|
17
|
+
- `docs/internal/practices/as-child.md` — styled-layer `asChild` via re-exported `Slot`
|
|
18
|
+
|
|
19
|
+
## Six standards (Standards 4–6 apply here)
|
|
20
|
+
|
|
21
|
+
Standards 1–3 govern primitive-layer authoring (see `packages/primitives/src/CLAUDE.md`).
|
|
22
|
+
Standards 4–6 govern the styled layer:
|
|
23
|
+
|
|
24
|
+
### Standard 4 — `data-slot` attributes
|
|
25
|
+
|
|
26
|
+
Every public styled slot emits a stable `data-slot="<component>-<part>"` attribute on its outermost rendered element. The convention is lowercase, kebab-case, `<component>` then `-<slot>` if not the root.
|
|
27
|
+
|
|
28
|
+
| Slot | Attribute |
|
|
29
|
+
| ------------------ | ---------------------------- |
|
|
30
|
+
| `<Button>` root | `data-slot="button"` |
|
|
31
|
+
| `<Button.Label>` | `data-slot="button-label"` |
|
|
32
|
+
| `<Button.Icon>` | `data-slot="button-icon"` |
|
|
33
|
+
| `<Button.Spinner>` | `data-slot="button-spinner"` |
|
|
34
|
+
| `<Button.Group>` | `data-slot="button-group"` |
|
|
35
|
+
| `<IconButton>` | `data-slot="icon-button"` |
|
|
36
|
+
| `<Dialog.Content>` | `data-slot="dialog-content"` |
|
|
37
|
+
|
|
38
|
+
Use `dataAttributes({ slot: '<component>-<part>' })` from `@cdx-ui/primitives` so the helper handles native (flat `data-*` keys) and web (RNW `dataSet`) correctly.
|
|
39
|
+
|
|
40
|
+
#### Combining multiple data-attribute sources — use `mergeDataAttributes`
|
|
41
|
+
|
|
42
|
+
When the same element receives `data-*` from more than one source (e.g. a slot identifier plus a position hint, or consumer-supplied data attrs flowing in through props), do **not** chain multiple `{...dataAttributes(...)}` spreads — on web each call returns `{ dataSet: {...} }` and a plain JSX spread replaces the `dataSet` key entirely, so the second source wipes out the first. Use `mergeDataAttributes(...)` from `@cdx-ui/primitives` to combine sources; later args win on key conflicts:
|
|
43
|
+
|
|
44
|
+
```tsx
|
|
45
|
+
import { dataAttributes, mergeDataAttributes } from '@cdx-ui/primitives';
|
|
46
|
+
|
|
47
|
+
<Element
|
|
48
|
+
ref={ref}
|
|
49
|
+
className={...}
|
|
50
|
+
style={style}
|
|
51
|
+
{...props}
|
|
52
|
+
{...mergeDataAttributes(
|
|
53
|
+
props, // pulls in any consumer-supplied data attrs
|
|
54
|
+
dataAttributes({ slot: '<component>-<part>' }),
|
|
55
|
+
positionToDataIcon(position), // optional, may be undefined
|
|
56
|
+
)}
|
|
57
|
+
/>
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
Spread `{...props}` first, then the merge — so any keys that `mergeDataAttributes` produces overwrite their counterparts in props with the merged values.
|
|
61
|
+
|
|
62
|
+
When the styled component renders a primitive Root, the primitive Root applies the same pattern internally — incoming data attrs (slot from the styled layer) are merged with the primitive's own interaction-state data attrs and emitted once. The styled layer doesn't need to do anything special; just pass `data-slot` through and the primitive's merge does the rest.
|
|
63
|
+
|
|
64
|
+
### Standard 5 — Static design variants vs. interaction state
|
|
65
|
+
|
|
66
|
+
Variant functions take only static design inputs (`variant`/`color`/`size`/`fullWidth`/etc.). Interaction states (`hover`/`focus`/`active`/`disabled`/`focus-visible`) are expressed as `data-[...]:` selectors **inside** CVA variant strings, never as variant inputs.
|
|
67
|
+
|
|
68
|
+
- CSS-layer state changes are free of React work: when the primitive flips `data-hover=true`, the CSS engine (web) and Uniwind's native style layer reconcile styles without re-rendering React, re-running CVA, or invoking `cn()`/`tailwind-merge`.
|
|
69
|
+
- Variant-input state changes cascade React work: CVA re-runs, `cn()` re-merges, and className-prop reconciliation cascades through the tree.
|
|
70
|
+
- Sub-slots can react to root state via parent selectors (`data-[hover=true]:`) without each slot subscribing to context (per Standard 1).
|
|
71
|
+
|
|
72
|
+
### Standard 6 — Position hints (`data-icon="inline-start|inline-end"`)
|
|
73
|
+
|
|
74
|
+
Icon-/spinner-bearing styled slots accept an optional `position?: 'leading' | 'trailing'` prop that emits `data-icon="inline-start|inline-end"`. Spacing rules in CVA target the `data-icon` attribute via logical-property utilities (`me-*`/`ms-*`) so RTL is handled for free.
|
|
75
|
+
|
|
76
|
+
Mapping (via the shared `positionToDataIcon` helper at `packages/components/src/utils/positionToDataIcon.ts`):
|
|
77
|
+
|
|
78
|
+
- `position="leading"` → `data-icon="inline-start"`
|
|
79
|
+
- `position="trailing"` → `data-icon="inline-end"`
|
|
80
|
+
- `position` omitted → no `data-icon` attribute, baseline spacing applies
|
|
81
|
+
|
|
82
|
+
```tsx
|
|
83
|
+
import { positionToDataIcon, type IconSlotPosition } from '../../utils/positionToDataIcon';
|
|
84
|
+
|
|
85
|
+
interface ButtonIconProps {
|
|
86
|
+
position?: IconSlotPosition;
|
|
87
|
+
// ...
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
<Icon {...positionToDataIcon(position)} {...props} />;
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
```tsx
|
|
94
|
+
<Button>
|
|
95
|
+
<Button.Icon as={CheckIcon} position="leading" />
|
|
96
|
+
<Button.Label>Confirm</Button.Label>
|
|
97
|
+
</Button>
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
CVA expresses padding via logical-property selectors:
|
|
101
|
+
|
|
102
|
+
```ts
|
|
103
|
+
cva(['data-[icon=inline-start]:me-1.5 data-[icon=inline-end]:ms-1.5'], { ... });
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
Where: **styled layer.** Pure styling hint with no behavior or a11y semantics — fails Standard 3, so no primitive involvement.
|
|
107
|
+
|
|
108
|
+
## Canonical reference
|
|
109
|
+
|
|
110
|
+
`packages/components/src/components/Button/index.tsx` + `Button/styles.ts` is the canonical example for Standards 4–6:
|
|
111
|
+
|
|
112
|
+
- `data-slot` on `Button`, `Button.Label`, `Button.Icon`, `Button.Spinner`, `Button.Group`
|
|
113
|
+
- `asChild` re-uses `Slot` from `@cdx-ui/primitives` — no new primitive needed for sub-slots
|
|
114
|
+
- `buttonIconVariants` / `buttonSpinnerVariants` carry `data-[icon=inline-start]:me-1.5 data-[icon=inline-end]:ms-1.5` so leading/trailing padding works without per-call overrides
|
|
115
|
+
|
|
116
|
+
`packages/components/src/components/IconButton/index.tsx` shows the second axis of Standard 1: a styled-layer slot (the glyph) is the place that opts into `useButtonContext()` when its styling reacts to interaction state. The pattern is the same as the primitive Root — call `useButtonContext()`, spread `dataAttributes({ ... })` — only it lives in the styled layer.
|
|
117
|
+
|
|
118
|
+
### Pattern summary
|
|
119
|
+
|
|
120
|
+
Each component follows this structure (see `Button/index.tsx`):
|
|
121
|
+
|
|
122
|
+
1. **Imports** — RN base components, primitive `Root` and `Slot` from `@cdx-ui/primitives`, `cn` + style context from `@cdx-ui/utils`, variant functions from `./styles`
|
|
123
|
+
2. **Scope constant** — `const SCOPE = 'COMPONENT_NAME'` for `withStyleContext` / `useStyleContext` (or a `ParentContext.Provider` wrapper for static variant context)
|
|
124
|
+
3. **Root component** — renders the primitive Root (or a host element directly when no primitive exists), spreads `dataAttributes({ slot: '<component>' })`
|
|
125
|
+
4. **Sub-slots** — each accepts `asChild`, renders a host element via `const Comp = asChild ? Slot : DefaultElement`, spreads `dataAttributes({ slot: '<component>-<slot>' })`. Sub-slots **do not** call `useButtonContext()` (or its equivalent) unless their own styling reacts to interaction state.
|
|
126
|
+
5. **Position-aware sub-slots** — icon/spinner-style slots accept `position?: 'leading' | 'trailing'` and emit `data-icon` via `dataAttributes({ icon: '...' })`.
|
|
127
|
+
6. **Compound export** — `Object.assign(RootComponent, { Sub1, Sub2 }) as CompoundType`
|
|
128
|
+
|
|
129
|
+
### Key rules
|
|
130
|
+
|
|
131
|
+
- Props interface extends RN base props + primitive `I*Props` + CVA `VariantProps` + `{ className?: string }`
|
|
132
|
+
- Always accept and spread `style` alongside `className`
|
|
133
|
+
- Variant defaults in destructuring must match CVA `defaultVariants`
|
|
134
|
+
- `displayName` set on every exported sub-component
|
|
135
|
+
- `className` is merged last via `cn()` so consumer overrides always win
|
|
136
|
+
- Never hardcode colors — use semantic token classes (`bg-surface-*`, `text-content-*`, `border-stroke-*`)
|
|
137
|
+
- Event handlers composed via `composeEventHandlers` from `@cdx-ui/utils`
|
|
138
|
+
- Third-party libraries fully abstracted — no adopted library types leak to consumers
|
|
139
|
+
- **`data-slot`** emitted on every styled slot via `dataAttributes({ slot: '<component>-<part>' })`
|
|
140
|
+
- **`asChild`** supported on every styled slot — `const Comp = asChild ? Slot : DefaultElement`
|
|
141
|
+
- **`position`** prop on icon/spinner-style slots maps to `data-icon="inline-start|inline-end"`
|
|
142
|
+
|
|
143
|
+
---
|
|
144
|
+
|
|
145
|
+
## Styling Conventions (`styles.ts`)
|
|
146
|
+
|
|
147
|
+
Variant definitions live in co-located `styles.ts` files using CVA. Read the full guides before making changes:
|
|
148
|
+
|
|
149
|
+
- `docs/internal/practices/styling.md` — `cn()`, CVA, token architecture, dark mode, `Platform.select()`
|
|
150
|
+
- `docs/internal/practices/data-attributes.md` — `data-[state]` and `data-icon` selectors
|
|
151
|
+
|
|
152
|
+
### Pattern summary
|
|
153
|
+
|
|
154
|
+
Each `styles.ts` exports CVA variant functions and their derived `VariantProps` types (see `Button/styles.ts` as the canonical example):
|
|
155
|
+
|
|
156
|
+
```ts
|
|
157
|
+
import { Platform } from 'react-native';
|
|
158
|
+
import { cva, type VariantProps } from 'class-variance-authority';
|
|
159
|
+
import { DISABLED_CURSOR, TRANSITION_COLORS } from '../../styles/primitives';
|
|
160
|
+
|
|
161
|
+
export const componentRootVariants = cva(
|
|
162
|
+
[
|
|
163
|
+
/* base classes + interaction state selectors (data-[hover=true]:..., data-[active=true]:...) */
|
|
164
|
+
],
|
|
165
|
+
{
|
|
166
|
+
variants: {
|
|
167
|
+
/* static design axes only — variant, color, size, fullWidth, etc. */
|
|
168
|
+
},
|
|
169
|
+
compoundVariants: [
|
|
170
|
+
/* variant × variant combinations */
|
|
171
|
+
],
|
|
172
|
+
defaultVariants: {
|
|
173
|
+
/* defaults matching the component's destructured defaults */
|
|
174
|
+
},
|
|
175
|
+
},
|
|
176
|
+
);
|
|
177
|
+
|
|
178
|
+
export type ComponentVariantProps = VariantProps<typeof componentRootVariants>;
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
### Key rules
|
|
182
|
+
|
|
183
|
+
- **Semantic token classes only** — use `bg-surface-action-strong`, `text-content-primary`, `border-stroke-primary`, etc. Never hardcode hex colors, `bg-white`, `text-black`, or raw Tailwind color scales for themed values.
|
|
184
|
+
- **`data-[state]` selectors** — use `data-[disabled=true]:`, `data-[hover=true]:`, `data-[active=true]:`, `data-[focus-visible=true]:` for interaction states. Primitives emit these data attributes (Standard 1). **Interaction state is never a CVA variant input** (Standard 5).
|
|
185
|
+
- **`data-[icon=inline-start|inline-end]` selectors** for icon/spinner position spacing (Standard 6) — pair with logical-property utilities (`me-*`/`ms-*`) so RTL flips automatically.
|
|
186
|
+
- **`Platform.select()`** for platform-specific classes — web gets `data-[hover=true]` styles (hover exists on web); native responds only to `data-[active=true]` (press). Always set `default` (native) and `web` keys.
|
|
187
|
+
- **Shared style primitives** — import `DISABLED_CURSOR`, `TRANSITION_COLORS`, etc. from `../../styles/primitives` for cross-component consistency.
|
|
188
|
+
- **`web:` prefix** for web-only utilities — e.g., `web:outline-none`, `web:focus-visible:ring-2`.
|
|
189
|
+
- **`compoundVariants`** for variant × variant combinations where simple variant merging is insufficient.
|
|
190
|
+
- **`defaultVariants`** must match the destructured defaults in the component's `index.tsx`.
|
|
191
|
+
- **One `cva()` per sub-component** — root, text, icon, spinner, etc. each get their own variant function.
|
|
192
|
+
- **Export `VariantProps` types** — derived via `VariantProps<typeof variantFn>` for the component layer to consume.
|
|
193
|
+
- **No dynamic string construction** — all Tailwind class names must be statically detectable by the Tailwind scanner.
|
|
194
|
+
- **CSS variables for token values** — use `rounded-[var(--border-radius-button)]` syntax when referencing design tokens not mapped to Tailwind utilities.
|
|
@@ -12,18 +12,24 @@ var _jsxRuntime = require("react/jsx-runtime");
|
|
|
12
12
|
// =============================================================================
|
|
13
13
|
// STYLED ROOT COMPONENT
|
|
14
14
|
// =============================================================================
|
|
15
|
-
|
|
15
|
+
const SCOPE = 'CARD';
|
|
16
|
+
const Root = (0, _utils.withStyleContext)(_reactNative.View, SCOPE);
|
|
17
|
+
const useCardStyleContext = () => (0, _utils.useStyleContext)(SCOPE);
|
|
16
18
|
const CardRoot = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
17
19
|
className,
|
|
18
20
|
children,
|
|
19
21
|
style,
|
|
22
|
+
fullBleed,
|
|
20
23
|
...props
|
|
21
24
|
}, ref) => {
|
|
22
25
|
const computedClassName = (0, _utils.cn)((0, _styles.cardRootVariants)(), className);
|
|
23
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
26
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(Root, {
|
|
24
27
|
ref: ref,
|
|
25
28
|
className: computedClassName,
|
|
26
29
|
style: style,
|
|
30
|
+
context: {
|
|
31
|
+
fullBleed
|
|
32
|
+
},
|
|
27
33
|
...props,
|
|
28
34
|
children: children
|
|
29
35
|
});
|
|
@@ -59,9 +65,15 @@ const CardContent = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
|
59
65
|
className,
|
|
60
66
|
children,
|
|
61
67
|
style,
|
|
68
|
+
fullBleed,
|
|
62
69
|
...props
|
|
63
70
|
}, ref) => {
|
|
64
|
-
const
|
|
71
|
+
const {
|
|
72
|
+
fullBleed: fullBleedFromContext
|
|
73
|
+
} = useCardStyleContext();
|
|
74
|
+
const computedClassName = (0, _utils.cn)((0, _styles.cardContentVariants)({
|
|
75
|
+
fullBleed: fullBleed ?? fullBleedFromContext
|
|
76
|
+
}), className);
|
|
65
77
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
66
78
|
ref: ref,
|
|
67
79
|
className: computedClassName,
|
|
@@ -80,9 +92,15 @@ const CardFooter = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
|
80
92
|
className,
|
|
81
93
|
children,
|
|
82
94
|
style,
|
|
95
|
+
fullBleed,
|
|
83
96
|
...props
|
|
84
97
|
}, ref) => {
|
|
85
|
-
const
|
|
98
|
+
const {
|
|
99
|
+
fullBleed: fullBleedFromContext
|
|
100
|
+
} = useCardStyleContext();
|
|
101
|
+
const computedClassName = (0, _utils.cn)((0, _styles.cardFooterVariants)({
|
|
102
|
+
fullBleed: fullBleed ?? fullBleedFromContext
|
|
103
|
+
}), className);
|
|
86
104
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
87
105
|
ref: ref,
|
|
88
106
|
className: computedClassName,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNative","_utils","_styles","_jsxRuntime","CardRoot","forwardRef","className","children","style","props","ref","computedClassName","cn","cardRootVariants","jsx","
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_utils","_styles","_jsxRuntime","SCOPE","Root","withStyleContext","View","useCardStyleContext","useStyleContext","CardRoot","forwardRef","className","children","style","fullBleed","props","ref","computedClassName","cn","cardRootVariants","jsx","context","displayName","CardHeader","cardHeaderVariants","CardContent","fullBleedFromContext","cardContentVariants","CardFooter","cardFooterVariants","Card","exports","Header","Content","Footer"],"sourceRoot":"../../../../src","sources":["components/Card/index.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -7,11 +7,18 @@ exports.cardTitleVariants = exports.cardRootVariants = exports.cardHeaderVariant
|
|
|
7
7
|
var _classVarianceAuthority = require("class-variance-authority");
|
|
8
8
|
// ── Root ────────────────────────────────────────────────────
|
|
9
9
|
|
|
10
|
-
const cardRootVariants = exports.cardRootVariants = (0, _classVarianceAuthority.cva)(['bg-surface-primary', 'border border-stroke-secondary', 'rounded-[var(--border-radius-default)]', 'overflow-hidden']
|
|
10
|
+
const cardRootVariants = exports.cardRootVariants = (0, _classVarianceAuthority.cva)(['bg-surface-primary', 'border border-stroke-secondary', 'rounded-[var(--border-radius-default)]', 'overflow-hidden'], {
|
|
11
|
+
variants: {
|
|
12
|
+
fullBleed: {
|
|
13
|
+
true: '',
|
|
14
|
+
false: ''
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
});
|
|
11
18
|
|
|
12
19
|
// ── Header ──────────────────────────────────────────────────
|
|
13
20
|
|
|
14
|
-
const cardHeaderVariants = exports.cardHeaderVariants = (0, _classVarianceAuthority.cva)(['
|
|
21
|
+
const cardHeaderVariants = exports.cardHeaderVariants = (0, _classVarianceAuthority.cva)(['border-t-8 border-t-surface-brand-strong', 'border-b border-solid border-b-stroke-secondary', 'flex-row items-center justify-between gap-0.5', 'px-5 py-3']);
|
|
15
22
|
|
|
16
23
|
// ── Title ───────────────────────────────────────────────────
|
|
17
24
|
|
|
@@ -19,9 +26,25 @@ const cardTitleVariants = exports.cardTitleVariants = (0, _classVarianceAuthorit
|
|
|
19
26
|
|
|
20
27
|
// ── Content ─────────────────────────────────────────────────
|
|
21
28
|
|
|
22
|
-
const cardContentVariants = exports.cardContentVariants = (0, _classVarianceAuthority.cva)(['text-content-primary', 'p-
|
|
29
|
+
const cardContentVariants = exports.cardContentVariants = (0, _classVarianceAuthority.cva)(['text-content-primary', 'p-5'], {
|
|
30
|
+
variants: {
|
|
31
|
+
fullBleed: {
|
|
32
|
+
true: 'p-0'
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
});
|
|
23
36
|
|
|
24
37
|
// ── Footer ──────────────────────────────────────────────────
|
|
25
38
|
|
|
26
|
-
const cardFooterVariants = exports.cardFooterVariants = (0, _classVarianceAuthority.cva)(['
|
|
39
|
+
const cardFooterVariants = exports.cardFooterVariants = (0, _classVarianceAuthority.cva)(['flex-col items-stretch gap-2'], {
|
|
40
|
+
variants: {
|
|
41
|
+
fullBleed: {
|
|
42
|
+
true: 'p-5',
|
|
43
|
+
false: 'px-5 pb-5 pt-0'
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
defaultVariants: {
|
|
47
|
+
fullBleed: false
|
|
48
|
+
}
|
|
49
|
+
});
|
|
27
50
|
//# sourceMappingURL=styles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_classVarianceAuthority","require","cardRootVariants","exports","cva","cardHeaderVariants","cardTitleVariants","cardContentVariants","cardFooterVariants"],"sourceRoot":"../../../../src","sources":["components/Card/styles.ts"],"mappings":";;;;;;AAAA,IAAAA,uBAAA,GAAAC,OAAA;AAEA;;AAEO,MAAMC,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,GAAG,IAAAE,2BAAG,
|
|
1
|
+
{"version":3,"names":["_classVarianceAuthority","require","cardRootVariants","exports","cva","variants","fullBleed","true","false","cardHeaderVariants","cardTitleVariants","cardContentVariants","cardFooterVariants","defaultVariants"],"sourceRoot":"../../../../src","sources":["components/Card/styles.ts"],"mappings":";;;;;;AAAA,IAAAA,uBAAA,GAAAC,OAAA;AAEA;;AAEO,MAAMC,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,GAAG,IAAAE,2BAAG,EACjC,CACE,oBAAoB,EACpB,gCAAgC,EAChC,wCAAwC,EACxC,iBAAiB,CAClB,EACD;EACEC,QAAQ,EAAE;IACRC,SAAS,EAAE;MACTC,IAAI,EAAE,EAAE;MACRC,KAAK,EAAE;IACT;EACF;AACF,CACF,CAAC;;AAED;;AAEO,MAAMC,kBAAkB,GAAAN,OAAA,CAAAM,kBAAA,GAAG,IAAAL,2BAAG,EAAC,CACpC,0CAA0C,EAC1C,iDAAiD,EACjD,+CAA+C,EAC/C,WAAW,CACZ,CAAC;;AAEF;;AAEO,MAAMM,iBAAiB,GAAAP,OAAA,CAAAO,iBAAA,GAAG,IAAAN,2BAAG,EAAC,CAAC,QAAQ,CAAC,CAAC;;AAEhD;;AAEO,MAAMO,mBAAmB,GAAAR,OAAA,CAAAQ,mBAAA,GAAG,IAAAP,2BAAG,EAAC,CAAC,sBAAsB,EAAE,KAAK,CAAC,EAAE;EACtEC,QAAQ,EAAE;IACRC,SAAS,EAAE;MACTC,IAAI,EAAE;IACR;EACF;AACF,CAAC,CAAC;;AAEF;;AAEO,MAAMK,kBAAkB,GAAAT,OAAA,CAAAS,kBAAA,GAAG,IAAAR,2BAAG,EAAC,CAAC,8BAA8B,CAAC,EAAE;EACtEC,QAAQ,EAAE;IACRC,SAAS,EAAE;MACTC,IAAI,EAAE,KAAK;MACXC,KAAK,EAAE;IACT;EACF,CAAC;EACDK,eAAe,EAAE;IACfP,SAAS,EAAE;EACb;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -12,46 +12,30 @@ var _utils = require("@cdx-ui/utils");
|
|
|
12
12
|
var _Icon = require("../Icon");
|
|
13
13
|
var _styles = require("./styles");
|
|
14
14
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
15
|
-
const SCOPE = 'CHECKBOX';
|
|
16
|
-
const Root = (0, _utils.withStyleContext)(_reactNative.Pressable, SCOPE);
|
|
17
|
-
const useCheckboxStyleContext = () => (0, _utils.useStyleContext)(SCOPE);
|
|
18
|
-
const CheckboxPrimitive = (0, _primitives.createCheckbox)({
|
|
19
|
-
Root,
|
|
20
|
-
Indicator: _reactNative.View,
|
|
21
|
-
Icon: _reactNative.View,
|
|
22
|
-
Label: _reactNative.Text,
|
|
23
|
-
Group: _reactNative.View
|
|
24
|
-
});
|
|
25
|
-
|
|
26
15
|
// =============================================================================
|
|
27
16
|
// CHECKBOX ROOT
|
|
28
17
|
// =============================================================================
|
|
29
18
|
|
|
30
19
|
const CheckboxRoot = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
31
|
-
size = 'default',
|
|
32
20
|
className,
|
|
33
21
|
isIndeterminate,
|
|
34
22
|
children,
|
|
35
23
|
style,
|
|
36
24
|
...props
|
|
37
25
|
}, ref) => {
|
|
38
|
-
const computedClassName = (0, _utils.cn)((0, _styles.checkboxRootVariants)(
|
|
39
|
-
|
|
40
|
-
}), className);
|
|
41
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(CheckboxPrimitive, {
|
|
26
|
+
const computedClassName = (0, _utils.cn)((0, _styles.checkboxRootVariants)(), className);
|
|
27
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_primitives.CheckboxRoot, {
|
|
42
28
|
ref: ref,
|
|
43
29
|
className: computedClassName,
|
|
44
30
|
isIndeterminate: isIndeterminate,
|
|
45
31
|
style: style,
|
|
46
|
-
context: {
|
|
47
|
-
size
|
|
48
|
-
},
|
|
49
32
|
...props,
|
|
33
|
+
...(0, _primitives.mergeDataAttributes)(props, (0, _primitives.dataAttributes)({
|
|
34
|
+
slot: 'checkbox'
|
|
35
|
+
})),
|
|
50
36
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(CheckboxIndicator, {
|
|
51
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
52
|
-
|
|
53
|
-
as: isIndeterminate ? _icons.CheckIndeterminateSmall : _icons.Check
|
|
54
|
-
})
|
|
37
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(CheckboxIconSlot, {
|
|
38
|
+
isIndeterminate: isIndeterminate
|
|
55
39
|
})
|
|
56
40
|
}), children]
|
|
57
41
|
});
|
|
@@ -59,33 +43,53 @@ const CheckboxRoot = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
|
59
43
|
CheckboxRoot.displayName = 'Checkbox';
|
|
60
44
|
|
|
61
45
|
// =============================================================================
|
|
62
|
-
// CHECKBOX INDICATOR
|
|
46
|
+
// CHECKBOX INDICATOR (styled-only, reads context for data-* styling)
|
|
63
47
|
// =============================================================================
|
|
64
48
|
|
|
65
49
|
const CheckboxIndicator = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
50
|
+
asChild,
|
|
66
51
|
className,
|
|
67
52
|
children,
|
|
68
53
|
style,
|
|
69
54
|
...props
|
|
70
55
|
}, ref) => {
|
|
71
56
|
const {
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
57
|
+
isChecked,
|
|
58
|
+
isDisabled,
|
|
59
|
+
isHovered,
|
|
60
|
+
isInvalid,
|
|
61
|
+
isReadOnly,
|
|
62
|
+
isPressed,
|
|
63
|
+
isFocused,
|
|
64
|
+
isIndeterminate,
|
|
65
|
+
isFocusVisible
|
|
66
|
+
} = (0, _primitives.useCheckboxContext)();
|
|
67
|
+
const computedClassName = (0, _utils.cn)((0, _styles.checkboxIndicatorVariants)(), className);
|
|
68
|
+
const Comp = asChild ? _primitives.Slot : _reactNative.View;
|
|
69
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(Comp, {
|
|
78
70
|
ref: ref,
|
|
79
71
|
className: computedClassName,
|
|
80
72
|
style: style,
|
|
81
73
|
...props,
|
|
74
|
+
...(0, _primitives.mergeDataAttributes)(props, (0, _primitives.dataAttributes)({
|
|
75
|
+
slot: 'checkbox-indicator',
|
|
76
|
+
hover: isHovered,
|
|
77
|
+
checked: isChecked,
|
|
78
|
+
disabled: isDisabled,
|
|
79
|
+
focusVisible: isFocusVisible,
|
|
80
|
+
invalid: isInvalid,
|
|
81
|
+
readonly: isReadOnly,
|
|
82
|
+
active: isPressed,
|
|
83
|
+
focused: isFocused,
|
|
84
|
+
indeterminate: isIndeterminate
|
|
85
|
+
})),
|
|
82
86
|
children: children
|
|
83
87
|
});
|
|
84
88
|
});
|
|
85
89
|
CheckboxIndicator.displayName = 'Checkbox.Indicator';
|
|
86
90
|
|
|
87
91
|
// =============================================================================
|
|
88
|
-
// CHECKBOX ICON
|
|
92
|
+
// CHECKBOX ICON (styled-only, reads context for conditional mount)
|
|
89
93
|
// =============================================================================
|
|
90
94
|
|
|
91
95
|
const CheckboxIcon = ({
|
|
@@ -93,48 +97,65 @@ const CheckboxIcon = ({
|
|
|
93
97
|
style,
|
|
94
98
|
...props
|
|
95
99
|
}) => {
|
|
96
|
-
const
|
|
97
|
-
size
|
|
98
|
-
} = useCheckboxStyleContext();
|
|
99
|
-
const computedClassName = (0, _utils.cn)((0, _styles.checkboxIconVariants)({
|
|
100
|
-
size
|
|
101
|
-
}), className);
|
|
100
|
+
const computedClassName = (0, _utils.cn)((0, _styles.checkboxIconVariants)(), className);
|
|
102
101
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Icon.Icon, {
|
|
103
102
|
className: computedClassName,
|
|
104
103
|
style: style,
|
|
105
|
-
...props
|
|
104
|
+
...props,
|
|
105
|
+
...(0, _primitives.mergeDataAttributes)(props, (0, _primitives.dataAttributes)({
|
|
106
|
+
slot: 'checkbox-icon'
|
|
107
|
+
}))
|
|
106
108
|
});
|
|
107
109
|
};
|
|
108
110
|
CheckboxIcon.displayName = 'Checkbox.Icon';
|
|
109
111
|
|
|
112
|
+
// Internal helper that reads context for conditional rendering
|
|
113
|
+
const CheckboxIconSlot = ({
|
|
114
|
+
isIndeterminate: isIndeterminateProp
|
|
115
|
+
}) => {
|
|
116
|
+
const {
|
|
117
|
+
isChecked,
|
|
118
|
+
isIndeterminate
|
|
119
|
+
} = (0, _primitives.useCheckboxContext)();
|
|
120
|
+
const showIcon = isChecked || isIndeterminateProp || isIndeterminate;
|
|
121
|
+
if (!showIcon) return null;
|
|
122
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(CheckboxIcon, {
|
|
123
|
+
as: isIndeterminate || isIndeterminateProp ? _icons.CheckIndeterminateSmall : _icons.Check
|
|
124
|
+
});
|
|
125
|
+
};
|
|
126
|
+
|
|
110
127
|
// =============================================================================
|
|
111
|
-
// CHECKBOX LABEL
|
|
128
|
+
// CHECKBOX LABEL (styled-only)
|
|
112
129
|
// =============================================================================
|
|
113
130
|
|
|
114
131
|
const CheckboxLabel = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
132
|
+
asChild,
|
|
115
133
|
className,
|
|
116
134
|
children,
|
|
117
135
|
style,
|
|
118
136
|
...props
|
|
119
137
|
}, ref) => {
|
|
120
138
|
const {
|
|
121
|
-
|
|
122
|
-
} =
|
|
123
|
-
const computedClassName = (0, _utils.cn)((0, _styles.checkboxLabelVariants)(
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(CheckboxPrimitive.Label, {
|
|
139
|
+
isDisabled
|
|
140
|
+
} = (0, _primitives.useCheckboxContext)();
|
|
141
|
+
const computedClassName = (0, _utils.cn)((0, _styles.checkboxLabelVariants)(), className);
|
|
142
|
+
const Comp = asChild ? _primitives.Slot : _reactNative.Text;
|
|
143
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(Comp, {
|
|
127
144
|
ref: ref,
|
|
128
145
|
className: computedClassName,
|
|
129
146
|
style: style,
|
|
130
147
|
...props,
|
|
148
|
+
...(0, _primitives.mergeDataAttributes)(props, (0, _primitives.dataAttributes)({
|
|
149
|
+
slot: 'checkbox-label',
|
|
150
|
+
disabled: isDisabled
|
|
151
|
+
})),
|
|
131
152
|
children: children
|
|
132
153
|
});
|
|
133
154
|
});
|
|
134
155
|
CheckboxLabel.displayName = 'Checkbox.Label';
|
|
135
156
|
|
|
136
157
|
// =============================================================================
|
|
137
|
-
// CHECKBOX GROUP
|
|
158
|
+
// CHECKBOX GROUP (wraps the primitive)
|
|
138
159
|
// =============================================================================
|
|
139
160
|
|
|
140
161
|
const CheckboxGroup = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
@@ -152,7 +173,7 @@ const CheckboxGroup = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
|
152
173
|
const computedClassName = (0, _utils.cn)((0, _styles.checkboxGroupVariants)({
|
|
153
174
|
direction
|
|
154
175
|
}), className);
|
|
155
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
176
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_primitives.CheckboxGroup, {
|
|
156
177
|
ref: ref,
|
|
157
178
|
className: computedClassName,
|
|
158
179
|
style: style,
|
|
@@ -161,7 +182,9 @@ const CheckboxGroup = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
|
161
182
|
isDisabled: isDisabled,
|
|
162
183
|
isInvalid: isInvalid,
|
|
163
184
|
isReadOnly: isReadOnly,
|
|
164
|
-
...viewProps,
|
|
185
|
+
...(0, _primitives.mergeDataAttributes)(viewProps, (0, _primitives.dataAttributes)({
|
|
186
|
+
slot: 'checkbox-group'
|
|
187
|
+
})),
|
|
165
188
|
children: children
|
|
166
189
|
});
|
|
167
190
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNative","_icons","_primitives","_utils","_Icon","_styles","_jsxRuntime","
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_icons","_primitives","_utils","_Icon","_styles","_jsxRuntime","CheckboxRoot","forwardRef","className","isIndeterminate","children","style","props","ref","computedClassName","cn","checkboxRootVariants","jsxs","mergeDataAttributes","dataAttributes","slot","jsx","CheckboxIndicator","CheckboxIconSlot","displayName","asChild","isChecked","isDisabled","isHovered","isInvalid","isReadOnly","isPressed","isFocused","isFocusVisible","useCheckboxContext","checkboxIndicatorVariants","Comp","Slot","View","hover","checked","disabled","focusVisible","invalid","readonly","active","focused","indeterminate","CheckboxIcon","checkboxIconVariants","Icon","isIndeterminateProp","showIcon","as","CheckIndeterminateSmall","Check","CheckboxLabel","checkboxLabelVariants","Text","CheckboxGroup","direction","value","onChange","viewProps","checkboxGroupVariants","Checkbox","exports","Object","assign","Indicator","Label","Group"],"sourceRoot":"../../../../src","sources":["components/Checkbox/index.tsx"],"mappings":"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","ignoreList":[]}
|