@metamask/design-system-react-native 0.6.0 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +58 -1
- package/dist/components/AvatarBase/AvatarBase.cjs +9 -11
- package/dist/components/AvatarBase/AvatarBase.cjs.map +1 -1
- package/dist/components/AvatarBase/AvatarBase.d.cts.map +1 -1
- package/dist/components/AvatarBase/AvatarBase.d.mts.map +1 -1
- package/dist/components/AvatarBase/AvatarBase.mjs +9 -11
- package/dist/components/AvatarBase/AvatarBase.mjs.map +1 -1
- package/dist/components/AvatarFavicon/AvatarFavicon.cjs +2 -2
- package/dist/components/AvatarFavicon/AvatarFavicon.cjs.map +1 -1
- package/dist/components/AvatarFavicon/AvatarFavicon.d.cts +1 -1
- package/dist/components/AvatarFavicon/AvatarFavicon.d.cts.map +1 -1
- package/dist/components/AvatarFavicon/AvatarFavicon.d.mts +1 -1
- package/dist/components/AvatarFavicon/AvatarFavicon.d.mts.map +1 -1
- package/dist/components/AvatarFavicon/AvatarFavicon.mjs +2 -2
- package/dist/components/AvatarFavicon/AvatarFavicon.mjs.map +1 -1
- package/dist/components/AvatarGroup/AvatarGroup.cjs +4 -5
- package/dist/components/AvatarGroup/AvatarGroup.cjs.map +1 -1
- package/dist/components/AvatarGroup/AvatarGroup.d.cts.map +1 -1
- package/dist/components/AvatarGroup/AvatarGroup.d.mts.map +1 -1
- package/dist/components/AvatarGroup/AvatarGroup.mjs +4 -5
- package/dist/components/AvatarGroup/AvatarGroup.mjs.map +1 -1
- package/dist/components/AvatarIcon/AvatarIcon.cjs +5 -6
- package/dist/components/AvatarIcon/AvatarIcon.cjs.map +1 -1
- package/dist/components/AvatarIcon/AvatarIcon.d.cts.map +1 -1
- package/dist/components/AvatarIcon/AvatarIcon.d.mts.map +1 -1
- package/dist/components/AvatarIcon/AvatarIcon.mjs +5 -6
- package/dist/components/AvatarIcon/AvatarIcon.mjs.map +1 -1
- package/dist/components/AvatarNetwork/AvatarNetwork.cjs +2 -2
- package/dist/components/AvatarNetwork/AvatarNetwork.cjs.map +1 -1
- package/dist/components/AvatarNetwork/AvatarNetwork.d.cts +1 -1
- package/dist/components/AvatarNetwork/AvatarNetwork.d.cts.map +1 -1
- package/dist/components/AvatarNetwork/AvatarNetwork.d.mts +1 -1
- package/dist/components/AvatarNetwork/AvatarNetwork.d.mts.map +1 -1
- package/dist/components/AvatarNetwork/AvatarNetwork.mjs +2 -2
- package/dist/components/AvatarNetwork/AvatarNetwork.mjs.map +1 -1
- package/dist/components/AvatarToken/AvatarToken.cjs +2 -2
- package/dist/components/AvatarToken/AvatarToken.cjs.map +1 -1
- package/dist/components/AvatarToken/AvatarToken.d.cts +1 -1
- package/dist/components/AvatarToken/AvatarToken.d.cts.map +1 -1
- package/dist/components/AvatarToken/AvatarToken.d.mts +1 -1
- package/dist/components/AvatarToken/AvatarToken.d.mts.map +1 -1
- package/dist/components/AvatarToken/AvatarToken.mjs +2 -2
- package/dist/components/AvatarToken/AvatarToken.mjs.map +1 -1
- package/dist/components/BadgeCount/BadgeCount.cjs +5 -10
- package/dist/components/BadgeCount/BadgeCount.cjs.map +1 -1
- package/dist/components/BadgeCount/BadgeCount.d.cts.map +1 -1
- package/dist/components/BadgeCount/BadgeCount.d.mts.map +1 -1
- package/dist/components/BadgeCount/BadgeCount.mjs +5 -10
- package/dist/components/BadgeCount/BadgeCount.mjs.map +1 -1
- package/dist/components/BadgeIcon/BadgeIcon.cjs +5 -10
- package/dist/components/BadgeIcon/BadgeIcon.cjs.map +1 -1
- package/dist/components/BadgeIcon/BadgeIcon.d.cts.map +1 -1
- package/dist/components/BadgeIcon/BadgeIcon.d.mts.map +1 -1
- package/dist/components/BadgeIcon/BadgeIcon.mjs +5 -10
- package/dist/components/BadgeIcon/BadgeIcon.mjs.map +1 -1
- package/dist/components/BadgeStatus/BadgeStatus.cjs +6 -6
- package/dist/components/BadgeStatus/BadgeStatus.cjs.map +1 -1
- package/dist/components/BadgeStatus/BadgeStatus.constants.cjs +8 -8
- package/dist/components/BadgeStatus/BadgeStatus.constants.cjs.map +1 -1
- package/dist/components/BadgeStatus/BadgeStatus.constants.d.cts +1 -1
- package/dist/components/BadgeStatus/BadgeStatus.constants.d.cts.map +1 -1
- package/dist/components/BadgeStatus/BadgeStatus.constants.d.mts +1 -1
- package/dist/components/BadgeStatus/BadgeStatus.constants.d.mts.map +1 -1
- package/dist/components/BadgeStatus/BadgeStatus.constants.mjs +1 -1
- package/dist/components/BadgeStatus/BadgeStatus.constants.mjs.map +1 -1
- package/dist/components/BadgeStatus/BadgeStatus.d.cts.map +1 -1
- package/dist/components/BadgeStatus/BadgeStatus.d.mts.map +1 -1
- package/dist/components/BadgeStatus/BadgeStatus.mjs +6 -6
- package/dist/components/BadgeStatus/BadgeStatus.mjs.map +1 -1
- package/dist/components/BadgeStatus/BadgeStatus.types.cjs.map +1 -1
- package/dist/components/BadgeStatus/BadgeStatus.types.d.cts +5 -29
- package/dist/components/BadgeStatus/BadgeStatus.types.d.cts.map +1 -1
- package/dist/components/BadgeStatus/BadgeStatus.types.d.mts +5 -29
- package/dist/components/BadgeStatus/BadgeStatus.types.d.mts.map +1 -1
- package/dist/components/BadgeStatus/BadgeStatus.types.mjs.map +1 -1
- package/dist/components/BadgeStatus/index.cjs +4 -4
- package/dist/components/BadgeStatus/index.cjs.map +1 -1
- package/dist/components/BadgeStatus/index.d.cts +1 -1
- package/dist/components/BadgeStatus/index.d.cts.map +1 -1
- package/dist/components/BadgeStatus/index.d.mts +1 -1
- package/dist/components/BadgeStatus/index.d.mts.map +1 -1
- package/dist/components/BadgeStatus/index.mjs +1 -1
- package/dist/components/BadgeStatus/index.mjs.map +1 -1
- package/dist/components/BadgeWrapper/BadgeWrapper.cjs +3 -3
- package/dist/components/BadgeWrapper/BadgeWrapper.cjs.map +1 -1
- package/dist/components/BadgeWrapper/BadgeWrapper.d.cts.map +1 -1
- package/dist/components/BadgeWrapper/BadgeWrapper.d.mts.map +1 -1
- package/dist/components/BadgeWrapper/BadgeWrapper.mjs +3 -3
- package/dist/components/BadgeWrapper/BadgeWrapper.mjs.map +1 -1
- package/dist/components/BottomSheetFooter/BottomSheetFooter.cjs +35 -0
- package/dist/components/BottomSheetFooter/BottomSheetFooter.cjs.map +1 -0
- package/dist/components/BottomSheetFooter/BottomSheetFooter.d.cts +4 -0
- package/dist/components/BottomSheetFooter/BottomSheetFooter.d.cts.map +1 -0
- package/dist/components/BottomSheetFooter/BottomSheetFooter.d.mts +4 -0
- package/dist/components/BottomSheetFooter/BottomSheetFooter.d.mts.map +1 -0
- package/dist/components/BottomSheetFooter/BottomSheetFooter.mjs +35 -0
- package/dist/components/BottomSheetFooter/BottomSheetFooter.mjs.map +1 -0
- package/dist/components/BottomSheetFooter/BottomSheetFooter.types.cjs +12 -0
- package/dist/components/BottomSheetFooter/BottomSheetFooter.types.cjs.map +1 -0
- package/dist/components/BottomSheetFooter/BottomSheetFooter.types.d.cts +41 -0
- package/dist/components/BottomSheetFooter/BottomSheetFooter.types.d.cts.map +1 -0
- package/dist/components/BottomSheetFooter/BottomSheetFooter.types.d.mts +41 -0
- package/dist/components/BottomSheetFooter/BottomSheetFooter.types.d.mts.map +1 -0
- package/dist/components/BottomSheetFooter/BottomSheetFooter.types.mjs +9 -0
- package/dist/components/BottomSheetFooter/BottomSheetFooter.types.mjs.map +1 -0
- package/dist/components/BottomSheetFooter/index.cjs +8 -0
- package/dist/components/BottomSheetFooter/index.cjs.map +1 -0
- package/dist/components/BottomSheetFooter/index.d.cts +4 -0
- package/dist/components/BottomSheetFooter/index.d.cts.map +1 -0
- package/dist/components/BottomSheetFooter/index.d.mts +4 -0
- package/dist/components/BottomSheetFooter/index.d.mts.map +1 -0
- package/dist/components/BottomSheetFooter/index.mjs +3 -0
- package/dist/components/BottomSheetFooter/index.mjs.map +1 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.cjs +51 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.cjs.map +1 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.constants.cjs +7 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.constants.cjs.map +1 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.constants.d.cts +3 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.constants.d.cts.map +1 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.constants.d.mts +3 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.constants.d.mts.map +1 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.constants.mjs +4 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.constants.mjs.map +1 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.d.cts +4 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.d.cts.map +1 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.d.mts +4 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.d.mts.map +1 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.mjs +31 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.mjs.map +1 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.types.cjs +3 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.types.cjs.map +1 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.types.d.cts +20 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.types.d.cts.map +1 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.types.d.mts +20 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.types.d.mts.map +1 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.types.mjs +2 -0
- package/dist/components/BottomSheetOverlay/BottomSheetOverlay.types.mjs.map +1 -0
- package/dist/components/BottomSheetOverlay/index.cjs +6 -0
- package/dist/components/BottomSheetOverlay/index.cjs.map +1 -0
- package/dist/components/BottomSheetOverlay/index.d.cts +3 -0
- package/dist/components/BottomSheetOverlay/index.d.cts.map +1 -0
- package/dist/components/BottomSheetOverlay/index.d.mts +3 -0
- package/dist/components/BottomSheetOverlay/index.d.mts.map +1 -0
- package/dist/components/BottomSheetOverlay/index.mjs +2 -0
- package/dist/components/BottomSheetOverlay/index.mjs.map +1 -0
- package/dist/components/Box/Box.cjs +12 -27
- package/dist/components/Box/Box.cjs.map +1 -1
- package/dist/components/Box/Box.d.cts.map +1 -1
- package/dist/components/Box/Box.d.mts.map +1 -1
- package/dist/components/Box/Box.mjs +12 -27
- package/dist/components/Box/Box.mjs.map +1 -1
- package/dist/components/ButtonBase/ButtonBase.cjs +50 -41
- package/dist/components/ButtonBase/ButtonBase.cjs.map +1 -1
- package/dist/components/ButtonBase/ButtonBase.d.cts.map +1 -1
- package/dist/components/ButtonBase/ButtonBase.d.mts.map +1 -1
- package/dist/components/ButtonBase/ButtonBase.mjs +50 -41
- package/dist/components/ButtonBase/ButtonBase.mjs.map +1 -1
- package/dist/components/ButtonIcon/ButtonIcon.cjs +5 -10
- package/dist/components/ButtonIcon/ButtonIcon.cjs.map +1 -1
- package/dist/components/ButtonIcon/ButtonIcon.d.cts.map +1 -1
- package/dist/components/ButtonIcon/ButtonIcon.d.mts.map +1 -1
- package/dist/components/ButtonIcon/ButtonIcon.mjs +5 -10
- package/dist/components/ButtonIcon/ButtonIcon.mjs.map +1 -1
- package/dist/components/Card/Card.cjs +26 -0
- package/dist/components/Card/Card.cjs.map +1 -0
- package/dist/components/Card/Card.d.cts +4 -0
- package/dist/components/Card/Card.d.cts.map +1 -0
- package/dist/components/Card/Card.d.mts +4 -0
- package/dist/components/Card/Card.d.mts.map +1 -0
- package/dist/components/Card/Card.mjs +26 -0
- package/dist/components/Card/Card.mjs.map +1 -0
- package/dist/components/Card/Card.types.cjs +3 -0
- package/dist/components/Card/Card.types.cjs.map +1 -0
- package/dist/components/Card/Card.types.d.cts +25 -0
- package/dist/components/Card/Card.types.d.cts.map +1 -0
- package/dist/components/Card/Card.types.d.mts +25 -0
- package/dist/components/Card/Card.types.d.mts.map +1 -0
- package/dist/components/Card/Card.types.mjs +2 -0
- package/dist/components/Card/Card.types.mjs.map +1 -0
- package/dist/components/Card/index.cjs +6 -0
- package/dist/components/Card/index.cjs.map +1 -0
- package/dist/components/Card/index.d.cts +3 -0
- package/dist/components/Card/index.d.cts.map +1 -0
- package/dist/components/Card/index.d.mts +3 -0
- package/dist/components/Card/index.d.mts.map +1 -0
- package/dist/components/Card/index.mjs +2 -0
- package/dist/components/Card/index.mjs.map +1 -0
- package/dist/components/Checkbox/Checkbox.cjs +4 -4
- package/dist/components/Checkbox/Checkbox.cjs.map +1 -1
- package/dist/components/Checkbox/Checkbox.d.cts.map +1 -1
- package/dist/components/Checkbox/Checkbox.d.mts.map +1 -1
- package/dist/components/Checkbox/Checkbox.mjs +4 -4
- package/dist/components/Checkbox/Checkbox.mjs.map +1 -1
- package/dist/components/HeaderBase/HeaderBase.cjs +123 -0
- package/dist/components/HeaderBase/HeaderBase.cjs.map +1 -0
- package/dist/components/HeaderBase/HeaderBase.d.cts +4 -0
- package/dist/components/HeaderBase/HeaderBase.d.cts.map +1 -0
- package/dist/components/HeaderBase/HeaderBase.d.mts +4 -0
- package/dist/components/HeaderBase/HeaderBase.d.mts.map +1 -0
- package/dist/components/HeaderBase/HeaderBase.mjs +103 -0
- package/dist/components/HeaderBase/HeaderBase.mjs.map +1 -0
- package/dist/components/HeaderBase/HeaderBase.types.cjs +3 -0
- package/dist/components/HeaderBase/HeaderBase.types.cjs.map +1 -0
- package/dist/components/HeaderBase/HeaderBase.types.d.cts +71 -0
- package/dist/components/HeaderBase/HeaderBase.types.d.cts.map +1 -0
- package/dist/components/HeaderBase/HeaderBase.types.d.mts +71 -0
- package/dist/components/HeaderBase/HeaderBase.types.d.mts.map +1 -0
- package/dist/components/HeaderBase/HeaderBase.types.mjs +2 -0
- package/dist/components/HeaderBase/HeaderBase.types.mjs.map +1 -0
- package/dist/components/HeaderBase/index.cjs +6 -0
- package/dist/components/HeaderBase/index.cjs.map +1 -0
- package/dist/components/HeaderBase/index.d.cts +3 -0
- package/dist/components/HeaderBase/index.d.cts.map +1 -0
- package/dist/components/HeaderBase/index.d.mts +3 -0
- package/dist/components/HeaderBase/index.d.mts.map +1 -0
- package/dist/components/HeaderBase/index.mjs +2 -0
- package/dist/components/HeaderBase/index.mjs.map +1 -0
- package/dist/components/Icon/Icon.assets.cjs +2 -0
- package/dist/components/Icon/Icon.assets.cjs.map +1 -1
- package/dist/components/Icon/Icon.assets.d.cts.map +1 -1
- package/dist/components/Icon/Icon.assets.d.mts.map +1 -1
- package/dist/components/Icon/Icon.assets.mjs +2 -0
- package/dist/components/Icon/Icon.assets.mjs.map +1 -1
- package/dist/components/Icon/Icon.cjs +4 -32
- package/dist/components/Icon/Icon.cjs.map +1 -1
- package/dist/components/Icon/Icon.d.cts.map +1 -1
- package/dist/components/Icon/Icon.d.mts.map +1 -1
- package/dist/components/Icon/Icon.mjs +2 -10
- package/dist/components/Icon/Icon.mjs.map +1 -1
- package/dist/components/Icon/assets/corporate-fare.svg +1 -0
- package/dist/components/Input/Input.cjs +53 -0
- package/dist/components/Input/Input.cjs.map +1 -0
- package/dist/components/Input/Input.d.cts +10 -0
- package/dist/components/Input/Input.d.cts.map +1 -0
- package/dist/components/Input/Input.d.mts +10 -0
- package/dist/components/Input/Input.d.mts.map +1 -0
- package/dist/components/Input/Input.mjs +50 -0
- package/dist/components/Input/Input.mjs.map +1 -0
- package/dist/components/Input/Input.types.cjs +3 -0
- package/dist/components/Input/Input.types.cjs.map +1 -0
- package/dist/components/Input/Input.types.d.cts +33 -0
- package/dist/components/Input/Input.types.d.cts.map +1 -0
- package/dist/components/Input/Input.types.d.mts +33 -0
- package/dist/components/Input/Input.types.d.mts.map +1 -0
- package/dist/components/Input/Input.types.mjs +2 -0
- package/dist/components/Input/Input.types.mjs.map +1 -0
- package/dist/components/Input/index.cjs +6 -0
- package/dist/components/Input/index.cjs.map +1 -0
- package/dist/components/Input/index.d.cts +3 -0
- package/dist/components/Input/index.d.cts.map +1 -0
- package/dist/components/Input/index.d.mts +3 -0
- package/dist/components/Input/index.d.mts.map +1 -0
- package/dist/components/Input/index.mjs +2 -0
- package/dist/components/Input/index.mjs.map +1 -0
- package/dist/components/Label/Label.cjs +11 -0
- package/dist/components/Label/Label.cjs.map +1 -0
- package/dist/components/Label/Label.d.cts +4 -0
- package/dist/components/Label/Label.d.cts.map +1 -0
- package/dist/components/Label/Label.d.mts +4 -0
- package/dist/components/Label/Label.d.mts.map +1 -0
- package/dist/components/Label/Label.mjs +11 -0
- package/dist/components/Label/Label.mjs.map +1 -0
- package/dist/components/Label/Label.types.cjs +3 -0
- package/dist/components/Label/Label.types.cjs.map +1 -0
- package/dist/components/Label/Label.types.d.cts +9 -0
- package/dist/components/Label/Label.types.d.cts.map +1 -0
- package/dist/components/Label/Label.types.d.mts +9 -0
- package/dist/components/Label/Label.types.d.mts.map +1 -0
- package/dist/components/Label/Label.types.mjs +2 -0
- package/dist/components/Label/Label.types.mjs.map +1 -0
- package/dist/components/Label/index.cjs +6 -0
- package/dist/components/Label/index.cjs.map +1 -0
- package/dist/components/Label/index.d.cts +3 -0
- package/dist/components/Label/index.d.cts.map +1 -0
- package/dist/components/Label/index.d.mts +3 -0
- package/dist/components/Label/index.d.mts.map +1 -0
- package/dist/components/Label/index.mjs +2 -0
- package/dist/components/Label/index.mjs.map +1 -0
- package/dist/components/RadioButton/RadioButton.cjs +58 -0
- package/dist/components/RadioButton/RadioButton.cjs.map +1 -0
- package/dist/components/RadioButton/RadioButton.constants.cjs +12 -0
- package/dist/components/RadioButton/RadioButton.constants.cjs.map +1 -0
- package/dist/components/RadioButton/RadioButton.constants.d.cts +3 -0
- package/dist/components/RadioButton/RadioButton.constants.d.cts.map +1 -0
- package/dist/components/RadioButton/RadioButton.constants.d.mts +3 -0
- package/dist/components/RadioButton/RadioButton.constants.d.mts.map +1 -0
- package/dist/components/RadioButton/RadioButton.constants.mjs +9 -0
- package/dist/components/RadioButton/RadioButton.constants.mjs.map +1 -0
- package/dist/components/RadioButton/RadioButton.d.cts +4 -0
- package/dist/components/RadioButton/RadioButton.d.cts.map +1 -0
- package/dist/components/RadioButton/RadioButton.d.mts +4 -0
- package/dist/components/RadioButton/RadioButton.d.mts.map +1 -0
- package/dist/components/RadioButton/RadioButton.mjs +58 -0
- package/dist/components/RadioButton/RadioButton.mjs.map +1 -0
- package/dist/components/RadioButton/RadioButton.types.cjs +3 -0
- package/dist/components/RadioButton/RadioButton.types.cjs.map +1 -0
- package/dist/components/RadioButton/RadioButton.types.d.cts +64 -0
- package/dist/components/RadioButton/RadioButton.types.d.cts.map +1 -0
- package/dist/components/RadioButton/RadioButton.types.d.mts +64 -0
- package/dist/components/RadioButton/RadioButton.types.d.mts.map +1 -0
- package/dist/components/RadioButton/RadioButton.types.mjs +2 -0
- package/dist/components/RadioButton/RadioButton.types.mjs.map +1 -0
- package/dist/components/RadioButton/index.cjs +6 -0
- package/dist/components/RadioButton/index.cjs.map +1 -0
- package/dist/components/RadioButton/index.d.cts +3 -0
- package/dist/components/RadioButton/index.d.cts.map +1 -0
- package/dist/components/RadioButton/index.d.mts +3 -0
- package/dist/components/RadioButton/index.d.mts.map +1 -0
- package/dist/components/RadioButton/index.mjs +2 -0
- package/dist/components/RadioButton/index.mjs.map +1 -0
- package/dist/components/Skeleton/Skeleton.cjs +86 -0
- package/dist/components/Skeleton/Skeleton.cjs.map +1 -0
- package/dist/components/Skeleton/Skeleton.d.cts +5 -0
- package/dist/components/Skeleton/Skeleton.d.cts.map +1 -0
- package/dist/components/Skeleton/Skeleton.d.mts +5 -0
- package/dist/components/Skeleton/Skeleton.d.mts.map +1 -0
- package/dist/components/Skeleton/Skeleton.mjs +68 -0
- package/dist/components/Skeleton/Skeleton.mjs.map +1 -0
- package/dist/components/Skeleton/Skeleton.types.cjs +3 -0
- package/dist/components/Skeleton/Skeleton.types.cjs.map +1 -0
- package/dist/components/Skeleton/Skeleton.types.d.cts +51 -0
- package/dist/components/Skeleton/Skeleton.types.d.cts.map +1 -0
- package/dist/components/Skeleton/Skeleton.types.d.mts +51 -0
- package/dist/components/Skeleton/Skeleton.types.d.mts.map +1 -0
- package/dist/components/Skeleton/Skeleton.types.mjs +2 -0
- package/dist/components/Skeleton/Skeleton.types.mjs.map +1 -0
- package/dist/components/Skeleton/index.cjs +9 -0
- package/dist/components/Skeleton/index.cjs.map +1 -0
- package/dist/components/Skeleton/index.d.cts +3 -0
- package/dist/components/Skeleton/index.d.cts.map +1 -0
- package/dist/components/Skeleton/index.d.mts +3 -0
- package/dist/components/Skeleton/index.d.mts.map +1 -0
- package/dist/components/Skeleton/index.mjs +2 -0
- package/dist/components/Skeleton/index.mjs.map +1 -0
- package/dist/components/Text/Text.cjs +9 -14
- package/dist/components/Text/Text.cjs.map +1 -1
- package/dist/components/Text/Text.d.cts.map +1 -1
- package/dist/components/Text/Text.d.mts.map +1 -1
- package/dist/components/Text/Text.mjs +10 -15
- package/dist/components/Text/Text.mjs.map +1 -1
- package/dist/components/Toast/Toast.cjs +174 -0
- package/dist/components/Toast/Toast.cjs.map +1 -0
- package/dist/components/Toast/Toast.constants.cjs +12 -0
- package/dist/components/Toast/Toast.constants.cjs.map +1 -0
- package/dist/components/Toast/Toast.constants.d.cts +8 -0
- package/dist/components/Toast/Toast.constants.d.cts.map +1 -0
- package/dist/components/Toast/Toast.constants.d.mts +8 -0
- package/dist/components/Toast/Toast.constants.d.mts.map +1 -0
- package/dist/components/Toast/Toast.constants.mjs +9 -0
- package/dist/components/Toast/Toast.constants.mjs.map +1 -0
- package/dist/components/Toast/Toast.context.cjs +40 -0
- package/dist/components/Toast/Toast.context.cjs.map +1 -0
- package/dist/components/Toast/Toast.context.d.cts +7 -0
- package/dist/components/Toast/Toast.context.d.cts.map +1 -0
- package/dist/components/Toast/Toast.context.d.mts +7 -0
- package/dist/components/Toast/Toast.context.d.mts.map +1 -0
- package/dist/components/Toast/Toast.context.mjs +20 -0
- package/dist/components/Toast/Toast.context.mjs.map +1 -0
- package/dist/components/Toast/Toast.d.cts +8 -0
- package/dist/components/Toast/Toast.d.cts.map +1 -0
- package/dist/components/Toast/Toast.d.mts +8 -0
- package/dist/components/Toast/Toast.d.mts.map +1 -0
- package/dist/components/Toast/Toast.mjs +156 -0
- package/dist/components/Toast/Toast.mjs.map +1 -0
- package/dist/components/Toast/Toast.types.cjs +19 -0
- package/dist/components/Toast/Toast.types.cjs.map +1 -0
- package/dist/components/Toast/Toast.types.d.cts +123 -0
- package/dist/components/Toast/Toast.types.d.cts.map +1 -0
- package/dist/components/Toast/Toast.types.d.mts +123 -0
- package/dist/components/Toast/Toast.types.d.mts.map +1 -0
- package/dist/components/Toast/Toast.types.mjs +16 -0
- package/dist/components/Toast/Toast.types.mjs.map +1 -0
- package/dist/components/Toast/index.cjs +19 -0
- package/dist/components/Toast/index.cjs.map +1 -0
- package/dist/components/Toast/index.d.cts +6 -0
- package/dist/components/Toast/index.d.cts.map +1 -0
- package/dist/components/Toast/index.d.mts +6 -0
- package/dist/components/Toast/index.d.mts.map +1 -0
- package/dist/components/Toast/index.mjs +5 -0
- package/dist/components/Toast/index.mjs.map +1 -0
- package/dist/components/index.cjs +23 -2
- package/dist/components/index.cjs.map +1 -1
- package/dist/components/index.d.cts +18 -0
- package/dist/components/index.d.cts.map +1 -1
- package/dist/components/index.d.mts +18 -0
- package/dist/components/index.d.mts.map +1 -1
- package/dist/components/index.mjs +9 -0
- package/dist/components/index.mjs.map +1 -1
- package/dist/components/temp-components/ButtonAnimated/ButtonAnimated.cjs +17 -9
- package/dist/components/temp-components/ButtonAnimated/ButtonAnimated.cjs.map +1 -1
- package/dist/components/temp-components/ButtonAnimated/ButtonAnimated.d.cts +1 -1
- package/dist/components/temp-components/ButtonAnimated/ButtonAnimated.d.cts.map +1 -1
- package/dist/components/temp-components/ButtonAnimated/ButtonAnimated.d.mts +1 -1
- package/dist/components/temp-components/ButtonAnimated/ButtonAnimated.d.mts.map +1 -1
- package/dist/components/temp-components/ButtonAnimated/ButtonAnimated.mjs +17 -6
- package/dist/components/temp-components/ButtonAnimated/ButtonAnimated.mjs.map +1 -1
- package/dist/components/temp-components/Spinner/Spinner.cjs +2 -2
- package/dist/components/temp-components/Spinner/Spinner.cjs.map +1 -1
- package/dist/components/temp-components/Spinner/Spinner.d.cts.map +1 -1
- package/dist/components/temp-components/Spinner/Spinner.d.mts.map +1 -1
- package/dist/components/temp-components/Spinner/Spinner.mjs +2 -2
- package/dist/components/temp-components/Spinner/Spinner.mjs.map +1 -1
- package/dist/types/index.cjs +17 -41
- package/dist/types/index.cjs.map +1 -1
- package/dist/types/index.d.cts +16 -38
- package/dist/types/index.d.cts.map +1 -1
- package/dist/types/index.d.mts +16 -38
- package/dist/types/index.d.mts.map +1 -1
- package/dist/types/index.mjs +16 -40
- package/dist/types/index.mjs.map +1 -1
- package/package.json +13 -9
- package/dist/components/Icon/Icon.utilities.cjs +0 -31
- package/dist/components/Icon/Icon.utilities.cjs.map +0 -1
- package/dist/components/Icon/Icon.utilities.d.cts +0 -22
- package/dist/components/Icon/Icon.utilities.d.cts.map +0 -1
- package/dist/components/Icon/Icon.utilities.d.mts +0 -22
- package/dist/components/Icon/Icon.utilities.d.mts.map +0 -1
- package/dist/components/Icon/Icon.utilities.mjs +0 -27
- package/dist/components/Icon/Icon.utilities.mjs.map +0 -1
- package/dist/components/Text/Text.utilities.cjs +0 -46
- package/dist/components/Text/Text.utilities.cjs.map +0 -1
- package/dist/components/Text/Text.utilities.d.cts +0 -32
- package/dist/components/Text/Text.utilities.d.cts.map +0 -1
- package/dist/components/Text/Text.utilities.d.mts +0 -32
- package/dist/components/Text/Text.utilities.d.mts.map +0 -1
- package/dist/components/Text/Text.utilities.mjs +0 -42
- package/dist/components/Text/Text.utilities.mjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Checkbox.d.mts","sourceRoot":"","sources":["../../../src/components/Checkbox/Checkbox.tsx"],"names":[],"mappings":"AACA,OAAO,KAMN,cAAc;AACf,OAAO,KAAK,EAAE,0BAA0B,EAAE,8BAAqB;AAU/D,eAAO,MAAM,QAAQ;;;;;;;;;;;;YAAwB,MAAM,IAAI;
|
|
1
|
+
{"version":3,"file":"Checkbox.d.mts","sourceRoot":"","sources":["../../../src/components/Checkbox/Checkbox.tsx"],"names":[],"mappings":"AACA,OAAO,KAMN,cAAc;AACf,OAAO,KAAK,EAAE,0BAA0B,EAAE,8BAAqB;AAU/D,eAAO,MAAM,QAAQ;;;;;;;;;;;;YAAwB,MAAM,IAAI;GA4ItD,CAAC"}
|
|
@@ -11,7 +11,7 @@ import { Pressable, Animated, Easing } from "react-native/index.js";
|
|
|
11
11
|
import { Icon, IconName, IconColor, IconSize } from "../Icon/index.mjs";
|
|
12
12
|
import { TextOrChildren } from "../temp-components/TextOrChildren/index.mjs";
|
|
13
13
|
const AnimatedView = Animated.View;
|
|
14
|
-
export const Checkbox = forwardRef(({ isSelected, isDisabled = false, isInvalid = false, label = '', labelProps, onChange, checkboxContainerProps, checkedIconProps, twClassName
|
|
14
|
+
export const Checkbox = forwardRef(({ isSelected, isDisabled = false, isInvalid = false, label = '', labelProps, onChange, checkboxContainerProps, checkedIconProps, twClassName, style, ...props }, ref) => {
|
|
15
15
|
// Animation values
|
|
16
16
|
const scaleAnim = useRef(new Animated.Value(1)).current;
|
|
17
17
|
const iconAnim = useRef(new Animated.Value(isSelected ? 1 : 0)).current;
|
|
@@ -51,7 +51,7 @@ export const Checkbox = forwardRef(({ isSelected, isDisabled = false, isInvalid
|
|
|
51
51
|
};
|
|
52
52
|
useImperativeHandle(ref, () => ({ toggle: handlePress }), [handlePress]);
|
|
53
53
|
const tw = useTailwind();
|
|
54
|
-
const twContainerClassNames = tw
|
|
54
|
+
const twContainerClassNames = tw.style('flex-row items-center', isDisabled ? 'opacity-50' : 'opacity-100', twClassName);
|
|
55
55
|
const getCheckboxContainerStyle = useCallback((pressed) => {
|
|
56
56
|
const baseBg = isSelected ? 'bg-primary-default' : 'bg-default';
|
|
57
57
|
let baseBorder = 'border-default';
|
|
@@ -78,10 +78,10 @@ export const Checkbox = forwardRef(({ isSelected, isDisabled = false, isInvalid
|
|
|
78
78
|
return (<Pressable onPress={handlePress} accessible accessibilityRole="checkbox" accessibilityState={{
|
|
79
79
|
checked: isSelected,
|
|
80
80
|
disabled: isDisabled,
|
|
81
|
-
}} accessibilityLabel={typeof label === 'string' ? label : undefined} style={(state) => [
|
|
81
|
+
}} accessibilityLabel={typeof label === 'string' ? label : undefined} disabled={isDisabled} {...props} style={(state) => [
|
|
82
82
|
twContainerClassNames,
|
|
83
83
|
typeof style === 'function' ? style(state) : style,
|
|
84
|
-
]}
|
|
84
|
+
]}>
|
|
85
85
|
{({ pressed }) => (<>
|
|
86
86
|
<AnimatedView {...checkboxContainerProps} style={[
|
|
87
87
|
tw `${getCheckboxContainerStyle(pressed)} flex size-[22px] items-center justify-center rounded border-2`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Checkbox.mjs","sourceRoot":"","sources":["../../../src/components/Checkbox/Checkbox.tsx"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,6CAA6C;AACnE,OAAO,QAAO,EACZ,UAAU,EACV,MAAM,EACN,mBAAmB,EACnB,WAAW,EACX,SAAS,EACV,cAAc;;AAEf,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,8BAAqB;AAE3D,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,0BAAgB;AAC9D,OAAO,EAAE,cAAc,EAAE,oDAA0C;AAInE,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC;AAEnC,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAChC,CACE,EACE,UAAU,EACV,UAAU,GAAG,KAAK,EAClB,SAAS,GAAG,KAAK,EACjB,KAAK,GAAG,EAAE,EACV,UAAU,EACV,QAAQ,EACR,sBAAsB,EACtB,gBAAgB,EAChB,WAAW,
|
|
1
|
+
{"version":3,"file":"Checkbox.mjs","sourceRoot":"","sources":["../../../src/components/Checkbox/Checkbox.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useTailwind } from '@metamask/design-system-twrnc-preset';\nimport React, {\n forwardRef,\n useRef,\n useImperativeHandle,\n useCallback,\n useEffect,\n} from 'react';\nimport type { PressableStateCallbackType } from 'react-native';\nimport { Pressable, Animated, Easing } from 'react-native';\n\nimport { Icon, IconName, IconColor, IconSize } from '../Icon';\nimport { TextOrChildren } from '../temp-components/TextOrChildren';\n\nimport type { CheckboxProps } from './Checkbox.types';\n\nconst AnimatedView = Animated.View;\n\nexport const Checkbox = forwardRef<{ toggle: () => void }, CheckboxProps>(\n (\n {\n isSelected,\n isDisabled = false,\n isInvalid = false,\n label = '',\n labelProps,\n onChange,\n checkboxContainerProps,\n checkedIconProps,\n twClassName,\n style,\n ...props\n },\n ref,\n ) => {\n // Animation values\n const scaleAnim = useRef(new Animated.Value(1)).current;\n const iconAnim = useRef(new Animated.Value(isSelected ? 1 : 0)).current;\n\n // Sync icon opacity whenever selection changes\n useEffect(() => {\n Animated.timing(iconAnim, {\n toValue: isSelected ? 1 : 0,\n duration: 300,\n easing: Easing.ease,\n useNativeDriver: true,\n }).start();\n }, [isSelected, iconAnim]);\n\n // Bounce effect when toggling\n const animateScale = useCallback(() => {\n Animated.sequence([\n Animated.timing(scaleAnim, {\n toValue: 1.15,\n duration: 100,\n easing: Easing.ease,\n useNativeDriver: true,\n }),\n Animated.timing(scaleAnim, {\n toValue: 1,\n duration: 100,\n easing: Easing.ease,\n useNativeDriver: true,\n }),\n ]).start();\n }, [scaleAnim]);\n\n // Press handler: notify parent, then bounce\n const handlePress = () => {\n if (isDisabled) {\n return;\n }\n onChange?.(!isSelected);\n animateScale();\n };\n\n useImperativeHandle(ref, () => ({ toggle: handlePress }), [handlePress]);\n\n const tw = useTailwind();\n const twContainerClassNames = tw.style(\n 'flex-row items-center',\n isDisabled ? 'opacity-50' : 'opacity-100',\n twClassName,\n );\n\n const getCheckboxContainerStyle = useCallback(\n (pressed: boolean): string => {\n const baseBg = isSelected ? 'bg-primary-default' : 'bg-default';\n let baseBorder = 'border-default';\n if (isSelected) {\n baseBorder = 'border-primary-default';\n } else if (isInvalid) {\n baseBorder = 'border-error-default';\n }\n const pressedBg = isSelected\n ? 'bg-primary-default-pressed'\n : 'bg-default-pressed';\n let pressedBorder = 'border-default';\n if (isSelected) {\n pressedBorder = 'border-primary-default-pressed';\n } else if (isInvalid) {\n pressedBorder = 'border-error-default';\n }\n return pressed\n ? `${pressedBg} ${pressedBorder}`\n : `${baseBg} ${baseBorder}`;\n },\n [isSelected, isInvalid],\n );\n\n return (\n <Pressable\n onPress={handlePress}\n accessible\n accessibilityRole=\"checkbox\"\n accessibilityState={{\n checked: isSelected,\n disabled: isDisabled,\n }}\n accessibilityLabel={typeof label === 'string' ? label : undefined}\n disabled={isDisabled}\n {...props}\n style={(state: PressableStateCallbackType) => [\n twContainerClassNames,\n typeof style === 'function' ? style(state) : style,\n ]}\n >\n {({ pressed }) => (\n <>\n <AnimatedView\n {...checkboxContainerProps}\n style={[\n tw`${getCheckboxContainerStyle(pressed)} flex size-[22px] items-center justify-center rounded border-2`,\n { transform: [{ scale: scaleAnim }] },\n ]}\n >\n {/* Always render icon, opacity driven by iconAnim */}\n <Animated.View style={{ opacity: iconAnim }}>\n <Icon\n name={IconName.Check}\n color={IconColor.PrimaryInverse}\n size={IconSize.Sm}\n {...checkedIconProps}\n />\n </Animated.View>\n </AnimatedView>\n {label ? (\n <TextOrChildren\n textProps={{ ...labelProps, twClassName: 'ml-3' }}\n >\n {label}\n </TextOrChildren>\n ) : null}\n </>\n )}\n </Pressable>\n );\n },\n);\n"]}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.HeaderBase = void 0;
|
|
27
|
+
// Third party dependencies.
|
|
28
|
+
const design_system_twrnc_preset_1 = require("@metamask/design-system-twrnc-preset");
|
|
29
|
+
const react_1 = __importStar(require("react"));
|
|
30
|
+
const react_native_1 = require("react-native/index.js");
|
|
31
|
+
const react_native_safe_area_context_1 = require("react-native-safe-area-context");
|
|
32
|
+
// External dependencies.
|
|
33
|
+
const Box_1 = require("../Box/index.cjs");
|
|
34
|
+
const ButtonIcon_1 = require("../ButtonIcon/index.cjs");
|
|
35
|
+
const Text_1 = require("../Text/index.cjs");
|
|
36
|
+
const HeaderBase = ({ children, style, startAccessory, endAccessory, startButtonIconProps, endButtonIconProps, includesTopInset = false, startAccessoryWrapperProps, endAccessoryWrapperProps, titleTestID, twClassName, ...props }) => {
|
|
37
|
+
const tw = (0, design_system_twrnc_preset_1.useTailwind)();
|
|
38
|
+
const insets = (0, react_native_safe_area_context_1.useSafeAreaInsets)();
|
|
39
|
+
const [startAccessoryWidth, setStartAccessoryWidth] = (0, react_1.useState)(0);
|
|
40
|
+
const [endAccessoryWidth, setEndAccessoryWidth] = (0, react_1.useState)(0);
|
|
41
|
+
const handleStartAccessoryLayout = (0, react_1.useCallback)((e) => {
|
|
42
|
+
setStartAccessoryWidth(e.nativeEvent.layout.width);
|
|
43
|
+
}, []);
|
|
44
|
+
const handleEndAccessoryLayout = (0, react_1.useCallback)((e) => {
|
|
45
|
+
setEndAccessoryWidth(e.nativeEvent.layout.width);
|
|
46
|
+
}, []);
|
|
47
|
+
// Determine what to render for start/end
|
|
48
|
+
const hasStartContent = startAccessory || startButtonIconProps;
|
|
49
|
+
const hasEndContent = endAccessory || (endButtonIconProps && endButtonIconProps.length > 0);
|
|
50
|
+
const hasAnyAccessory = hasStartContent || hasEndContent;
|
|
51
|
+
// Render both wrappers if any accessory exists (for centering)
|
|
52
|
+
const shouldRenderStartWrapper = Boolean(hasAnyAccessory);
|
|
53
|
+
const shouldRenderEndWrapper = Boolean(hasAnyAccessory);
|
|
54
|
+
// Calculate equal width for both accessory wrappers to ensure title stays centered
|
|
55
|
+
const accessoryWrapperWidth = hasAnyAccessory && (startAccessoryWidth || endAccessoryWidth)
|
|
56
|
+
? Math.max(startAccessoryWidth, endAccessoryWidth)
|
|
57
|
+
: undefined;
|
|
58
|
+
const renderStartContent = () => {
|
|
59
|
+
if (startAccessory) {
|
|
60
|
+
return startAccessory;
|
|
61
|
+
}
|
|
62
|
+
if (startButtonIconProps) {
|
|
63
|
+
return <ButtonIcon_1.ButtonIcon size={ButtonIcon_1.ButtonIconSize.Md} {...startButtonIconProps}/>;
|
|
64
|
+
}
|
|
65
|
+
return null;
|
|
66
|
+
};
|
|
67
|
+
const renderEndContent = () => {
|
|
68
|
+
if (endAccessory) {
|
|
69
|
+
return endAccessory;
|
|
70
|
+
}
|
|
71
|
+
if (endButtonIconProps && endButtonIconProps.length > 0) {
|
|
72
|
+
// Reverse the array so first item appears rightmost
|
|
73
|
+
// Use original index (before reversal) for stable React keys
|
|
74
|
+
const reversedProps = endButtonIconProps
|
|
75
|
+
.map((iconProps, originalIndex) => ({
|
|
76
|
+
iconProps,
|
|
77
|
+
originalIndex,
|
|
78
|
+
}))
|
|
79
|
+
.reverse();
|
|
80
|
+
return reversedProps.map(({ iconProps, originalIndex }) => (<ButtonIcon_1.ButtonIcon key={`end-button-icon-${originalIndex}`} size={ButtonIcon_1.ButtonIconSize.Md} {...iconProps}/>));
|
|
81
|
+
}
|
|
82
|
+
return null;
|
|
83
|
+
};
|
|
84
|
+
// Check if we have multiple end buttons for layout styling
|
|
85
|
+
const hasMultipleEndButtons = !endAccessory && endButtonIconProps && endButtonIconProps.length > 1;
|
|
86
|
+
// Merge default styles with passed-in twClassName
|
|
87
|
+
const baseStyles = 'flex-row items-center gap-4 h-14';
|
|
88
|
+
const resolvedTwClassName = twClassName
|
|
89
|
+
? `${baseStyles} ${twClassName}`
|
|
90
|
+
: baseStyles;
|
|
91
|
+
return (<react_native_1.View style={[
|
|
92
|
+
tw.style(resolvedTwClassName),
|
|
93
|
+
includesTopInset && { marginTop: insets.top },
|
|
94
|
+
style,
|
|
95
|
+
]} {...props}>
|
|
96
|
+
{/* Start accessory */}
|
|
97
|
+
{shouldRenderStartWrapper && (<react_native_1.View style={accessoryWrapperWidth
|
|
98
|
+
? tw.style('items-start', { width: accessoryWrapperWidth })
|
|
99
|
+
: undefined} {...startAccessoryWrapperProps}>
|
|
100
|
+
<react_native_1.View onLayout={handleStartAccessoryLayout}>
|
|
101
|
+
{renderStartContent()}
|
|
102
|
+
</react_native_1.View>
|
|
103
|
+
</react_native_1.View>)}
|
|
104
|
+
|
|
105
|
+
{/* Title */}
|
|
106
|
+
<Box_1.Box twClassName="flex-1 items-center">
|
|
107
|
+
{typeof children === 'string' ? (<Text_1.Text variant={Text_1.TextVariant.HeadingSm} testID={titleTestID} style={tw.style('text-center')}>
|
|
108
|
+
{children}
|
|
109
|
+
</Text_1.Text>) : (children)}
|
|
110
|
+
</Box_1.Box>
|
|
111
|
+
|
|
112
|
+
{/* End accessory */}
|
|
113
|
+
{shouldRenderEndWrapper && (<react_native_1.View style={accessoryWrapperWidth
|
|
114
|
+
? tw.style('items-end', { width: accessoryWrapperWidth })
|
|
115
|
+
: undefined} {...endAccessoryWrapperProps}>
|
|
116
|
+
<react_native_1.View onLayout={handleEndAccessoryLayout} style={hasMultipleEndButtons ? tw.style('flex-row gap-2') : undefined}>
|
|
117
|
+
{renderEndContent()}
|
|
118
|
+
</react_native_1.View>
|
|
119
|
+
</react_native_1.View>)}
|
|
120
|
+
</react_native_1.View>);
|
|
121
|
+
};
|
|
122
|
+
exports.HeaderBase = HeaderBase;
|
|
123
|
+
//# sourceMappingURL=HeaderBase.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HeaderBase.cjs","sourceRoot":"","sources":["../../../src/components/HeaderBase/HeaderBase.tsx"],"names":[],"mappings":"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","sourcesContent":["// Third party dependencies.\nimport { useTailwind } from '@metamask/design-system-twrnc-preset';\nimport React, { useCallback, useState } from 'react';\nimport type { LayoutChangeEvent } from 'react-native';\nimport { View } from 'react-native';\nimport { useSafeAreaInsets } from 'react-native-safe-area-context';\n\n// External dependencies.\nimport { Box } from '../Box';\nimport { ButtonIcon, ButtonIconSize } from '../ButtonIcon';\nimport { Text, TextVariant } from '../Text';\n\n// Internal dependencies.\nimport type { HeaderBaseProps } from './HeaderBase.types';\n\nexport const HeaderBase: React.FC<HeaderBaseProps> = ({\n children,\n style,\n startAccessory,\n endAccessory,\n startButtonIconProps,\n endButtonIconProps,\n includesTopInset = false,\n startAccessoryWrapperProps,\n endAccessoryWrapperProps,\n titleTestID,\n twClassName,\n ...props\n}) => {\n const tw = useTailwind();\n const insets = useSafeAreaInsets();\n\n const [startAccessoryWidth, setStartAccessoryWidth] = useState(0);\n const [endAccessoryWidth, setEndAccessoryWidth] = useState(0);\n\n const handleStartAccessoryLayout = useCallback((e: LayoutChangeEvent) => {\n setStartAccessoryWidth(e.nativeEvent.layout.width);\n }, []);\n\n const handleEndAccessoryLayout = useCallback((e: LayoutChangeEvent) => {\n setEndAccessoryWidth(e.nativeEvent.layout.width);\n }, []);\n\n // Determine what to render for start/end\n const hasStartContent = startAccessory || startButtonIconProps;\n const hasEndContent =\n endAccessory || (endButtonIconProps && endButtonIconProps.length > 0);\n const hasAnyAccessory = hasStartContent || hasEndContent;\n\n // Render both wrappers if any accessory exists (for centering)\n const shouldRenderStartWrapper = Boolean(hasAnyAccessory);\n const shouldRenderEndWrapper = Boolean(hasAnyAccessory);\n\n // Calculate equal width for both accessory wrappers to ensure title stays centered\n const accessoryWrapperWidth =\n hasAnyAccessory && (startAccessoryWidth || endAccessoryWidth)\n ? Math.max(startAccessoryWidth, endAccessoryWidth)\n : undefined;\n\n const renderStartContent = () => {\n if (startAccessory) {\n return startAccessory;\n }\n if (startButtonIconProps) {\n return <ButtonIcon size={ButtonIconSize.Md} {...startButtonIconProps} />;\n }\n return null;\n };\n\n const renderEndContent = () => {\n if (endAccessory) {\n return endAccessory;\n }\n if (endButtonIconProps && endButtonIconProps.length > 0) {\n // Reverse the array so first item appears rightmost\n // Use original index (before reversal) for stable React keys\n const reversedProps = endButtonIconProps\n .map((iconProps, originalIndex) => ({\n iconProps,\n originalIndex,\n }))\n .reverse();\n return reversedProps.map(({ iconProps, originalIndex }) => (\n <ButtonIcon\n key={`end-button-icon-${originalIndex}`}\n size={ButtonIconSize.Md}\n {...iconProps}\n />\n ));\n }\n return null;\n };\n\n // Check if we have multiple end buttons for layout styling\n const hasMultipleEndButtons =\n !endAccessory && endButtonIconProps && endButtonIconProps.length > 1;\n\n // Merge default styles with passed-in twClassName\n const baseStyles = 'flex-row items-center gap-4 h-14';\n const resolvedTwClassName = twClassName\n ? `${baseStyles} ${twClassName}`\n : baseStyles;\n\n return (\n <View\n style={[\n tw.style(resolvedTwClassName),\n includesTopInset && { marginTop: insets.top },\n style,\n ]}\n {...props}\n >\n {/* Start accessory */}\n {shouldRenderStartWrapper && (\n <View\n style={\n accessoryWrapperWidth\n ? tw.style('items-start', { width: accessoryWrapperWidth })\n : undefined\n }\n {...startAccessoryWrapperProps}\n >\n <View onLayout={handleStartAccessoryLayout}>\n {renderStartContent()}\n </View>\n </View>\n )}\n\n {/* Title */}\n <Box twClassName=\"flex-1 items-center\">\n {typeof children === 'string' ? (\n <Text\n variant={TextVariant.HeadingSm}\n testID={titleTestID}\n style={tw.style('text-center')}\n >\n {children}\n </Text>\n ) : (\n children\n )}\n </Box>\n\n {/* End accessory */}\n {shouldRenderEndWrapper && (\n <View\n style={\n accessoryWrapperWidth\n ? tw.style('items-end', { width: accessoryWrapperWidth })\n : undefined\n }\n {...endAccessoryWrapperProps}\n >\n <View\n onLayout={handleEndAccessoryLayout}\n style={\n hasMultipleEndButtons ? tw.style('flex-row gap-2') : undefined\n }\n >\n {renderEndContent()}\n </View>\n </View>\n )}\n </View>\n );\n};\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HeaderBase.d.cts","sourceRoot":"","sources":["../../../src/components/HeaderBase/HeaderBase.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAgC,cAAc;AAWrD,OAAO,KAAK,EAAE,eAAe,EAAE,+BAA2B;AAE1D,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAsJhD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HeaderBase.d.mts","sourceRoot":"","sources":["../../../src/components/HeaderBase/HeaderBase.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAgC,cAAc;AAWrD,OAAO,KAAK,EAAE,eAAe,EAAE,+BAA2B;AAE1D,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAsJhD,CAAC"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
function $importDefault(module) {
|
|
2
|
+
if (module?.__esModule) {
|
|
3
|
+
return module.default;
|
|
4
|
+
}
|
|
5
|
+
return module;
|
|
6
|
+
}
|
|
7
|
+
// Third party dependencies.
|
|
8
|
+
import { useTailwind } from "@metamask/design-system-twrnc-preset";
|
|
9
|
+
import $React, { useCallback, useState } from "react";
|
|
10
|
+
const React = $importDefault($React);
|
|
11
|
+
import { View } from "react-native/index.js";
|
|
12
|
+
import { useSafeAreaInsets } from "react-native-safe-area-context";
|
|
13
|
+
// External dependencies.
|
|
14
|
+
import { Box } from "../Box/index.mjs";
|
|
15
|
+
import { ButtonIcon, ButtonIconSize } from "../ButtonIcon/index.mjs";
|
|
16
|
+
import { Text, TextVariant } from "../Text/index.mjs";
|
|
17
|
+
export const HeaderBase = ({ children, style, startAccessory, endAccessory, startButtonIconProps, endButtonIconProps, includesTopInset = false, startAccessoryWrapperProps, endAccessoryWrapperProps, titleTestID, twClassName, ...props }) => {
|
|
18
|
+
const tw = useTailwind();
|
|
19
|
+
const insets = useSafeAreaInsets();
|
|
20
|
+
const [startAccessoryWidth, setStartAccessoryWidth] = useState(0);
|
|
21
|
+
const [endAccessoryWidth, setEndAccessoryWidth] = useState(0);
|
|
22
|
+
const handleStartAccessoryLayout = useCallback((e) => {
|
|
23
|
+
setStartAccessoryWidth(e.nativeEvent.layout.width);
|
|
24
|
+
}, []);
|
|
25
|
+
const handleEndAccessoryLayout = useCallback((e) => {
|
|
26
|
+
setEndAccessoryWidth(e.nativeEvent.layout.width);
|
|
27
|
+
}, []);
|
|
28
|
+
// Determine what to render for start/end
|
|
29
|
+
const hasStartContent = startAccessory || startButtonIconProps;
|
|
30
|
+
const hasEndContent = endAccessory || (endButtonIconProps && endButtonIconProps.length > 0);
|
|
31
|
+
const hasAnyAccessory = hasStartContent || hasEndContent;
|
|
32
|
+
// Render both wrappers if any accessory exists (for centering)
|
|
33
|
+
const shouldRenderStartWrapper = Boolean(hasAnyAccessory);
|
|
34
|
+
const shouldRenderEndWrapper = Boolean(hasAnyAccessory);
|
|
35
|
+
// Calculate equal width for both accessory wrappers to ensure title stays centered
|
|
36
|
+
const accessoryWrapperWidth = hasAnyAccessory && (startAccessoryWidth || endAccessoryWidth)
|
|
37
|
+
? Math.max(startAccessoryWidth, endAccessoryWidth)
|
|
38
|
+
: undefined;
|
|
39
|
+
const renderStartContent = () => {
|
|
40
|
+
if (startAccessory) {
|
|
41
|
+
return startAccessory;
|
|
42
|
+
}
|
|
43
|
+
if (startButtonIconProps) {
|
|
44
|
+
return <ButtonIcon size={ButtonIconSize.Md} {...startButtonIconProps}/>;
|
|
45
|
+
}
|
|
46
|
+
return null;
|
|
47
|
+
};
|
|
48
|
+
const renderEndContent = () => {
|
|
49
|
+
if (endAccessory) {
|
|
50
|
+
return endAccessory;
|
|
51
|
+
}
|
|
52
|
+
if (endButtonIconProps && endButtonIconProps.length > 0) {
|
|
53
|
+
// Reverse the array so first item appears rightmost
|
|
54
|
+
// Use original index (before reversal) for stable React keys
|
|
55
|
+
const reversedProps = endButtonIconProps
|
|
56
|
+
.map((iconProps, originalIndex) => ({
|
|
57
|
+
iconProps,
|
|
58
|
+
originalIndex,
|
|
59
|
+
}))
|
|
60
|
+
.reverse();
|
|
61
|
+
return reversedProps.map(({ iconProps, originalIndex }) => (<ButtonIcon key={`end-button-icon-${originalIndex}`} size={ButtonIconSize.Md} {...iconProps}/>));
|
|
62
|
+
}
|
|
63
|
+
return null;
|
|
64
|
+
};
|
|
65
|
+
// Check if we have multiple end buttons for layout styling
|
|
66
|
+
const hasMultipleEndButtons = !endAccessory && endButtonIconProps && endButtonIconProps.length > 1;
|
|
67
|
+
// Merge default styles with passed-in twClassName
|
|
68
|
+
const baseStyles = 'flex-row items-center gap-4 h-14';
|
|
69
|
+
const resolvedTwClassName = twClassName
|
|
70
|
+
? `${baseStyles} ${twClassName}`
|
|
71
|
+
: baseStyles;
|
|
72
|
+
return (<View style={[
|
|
73
|
+
tw.style(resolvedTwClassName),
|
|
74
|
+
includesTopInset && { marginTop: insets.top },
|
|
75
|
+
style,
|
|
76
|
+
]} {...props}>
|
|
77
|
+
{/* Start accessory */}
|
|
78
|
+
{shouldRenderStartWrapper && (<View style={accessoryWrapperWidth
|
|
79
|
+
? tw.style('items-start', { width: accessoryWrapperWidth })
|
|
80
|
+
: undefined} {...startAccessoryWrapperProps}>
|
|
81
|
+
<View onLayout={handleStartAccessoryLayout}>
|
|
82
|
+
{renderStartContent()}
|
|
83
|
+
</View>
|
|
84
|
+
</View>)}
|
|
85
|
+
|
|
86
|
+
{/* Title */}
|
|
87
|
+
<Box twClassName="flex-1 items-center">
|
|
88
|
+
{typeof children === 'string' ? (<Text variant={TextVariant.HeadingSm} testID={titleTestID} style={tw.style('text-center')}>
|
|
89
|
+
{children}
|
|
90
|
+
</Text>) : (children)}
|
|
91
|
+
</Box>
|
|
92
|
+
|
|
93
|
+
{/* End accessory */}
|
|
94
|
+
{shouldRenderEndWrapper && (<View style={accessoryWrapperWidth
|
|
95
|
+
? tw.style('items-end', { width: accessoryWrapperWidth })
|
|
96
|
+
: undefined} {...endAccessoryWrapperProps}>
|
|
97
|
+
<View onLayout={handleEndAccessoryLayout} style={hasMultipleEndButtons ? tw.style('flex-row gap-2') : undefined}>
|
|
98
|
+
{renderEndContent()}
|
|
99
|
+
</View>
|
|
100
|
+
</View>)}
|
|
101
|
+
</View>);
|
|
102
|
+
};
|
|
103
|
+
//# sourceMappingURL=HeaderBase.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HeaderBase.mjs","sourceRoot":"","sources":["../../../src/components/HeaderBase/HeaderBase.tsx"],"names":[],"mappings":"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","sourcesContent":["// Third party dependencies.\nimport { useTailwind } from '@metamask/design-system-twrnc-preset';\nimport React, { useCallback, useState } from 'react';\nimport type { LayoutChangeEvent } from 'react-native';\nimport { View } from 'react-native';\nimport { useSafeAreaInsets } from 'react-native-safe-area-context';\n\n// External dependencies.\nimport { Box } from '../Box';\nimport { ButtonIcon, ButtonIconSize } from '../ButtonIcon';\nimport { Text, TextVariant } from '../Text';\n\n// Internal dependencies.\nimport type { HeaderBaseProps } from './HeaderBase.types';\n\nexport const HeaderBase: React.FC<HeaderBaseProps> = ({\n children,\n style,\n startAccessory,\n endAccessory,\n startButtonIconProps,\n endButtonIconProps,\n includesTopInset = false,\n startAccessoryWrapperProps,\n endAccessoryWrapperProps,\n titleTestID,\n twClassName,\n ...props\n}) => {\n const tw = useTailwind();\n const insets = useSafeAreaInsets();\n\n const [startAccessoryWidth, setStartAccessoryWidth] = useState(0);\n const [endAccessoryWidth, setEndAccessoryWidth] = useState(0);\n\n const handleStartAccessoryLayout = useCallback((e: LayoutChangeEvent) => {\n setStartAccessoryWidth(e.nativeEvent.layout.width);\n }, []);\n\n const handleEndAccessoryLayout = useCallback((e: LayoutChangeEvent) => {\n setEndAccessoryWidth(e.nativeEvent.layout.width);\n }, []);\n\n // Determine what to render for start/end\n const hasStartContent = startAccessory || startButtonIconProps;\n const hasEndContent =\n endAccessory || (endButtonIconProps && endButtonIconProps.length > 0);\n const hasAnyAccessory = hasStartContent || hasEndContent;\n\n // Render both wrappers if any accessory exists (for centering)\n const shouldRenderStartWrapper = Boolean(hasAnyAccessory);\n const shouldRenderEndWrapper = Boolean(hasAnyAccessory);\n\n // Calculate equal width for both accessory wrappers to ensure title stays centered\n const accessoryWrapperWidth =\n hasAnyAccessory && (startAccessoryWidth || endAccessoryWidth)\n ? Math.max(startAccessoryWidth, endAccessoryWidth)\n : undefined;\n\n const renderStartContent = () => {\n if (startAccessory) {\n return startAccessory;\n }\n if (startButtonIconProps) {\n return <ButtonIcon size={ButtonIconSize.Md} {...startButtonIconProps} />;\n }\n return null;\n };\n\n const renderEndContent = () => {\n if (endAccessory) {\n return endAccessory;\n }\n if (endButtonIconProps && endButtonIconProps.length > 0) {\n // Reverse the array so first item appears rightmost\n // Use original index (before reversal) for stable React keys\n const reversedProps = endButtonIconProps\n .map((iconProps, originalIndex) => ({\n iconProps,\n originalIndex,\n }))\n .reverse();\n return reversedProps.map(({ iconProps, originalIndex }) => (\n <ButtonIcon\n key={`end-button-icon-${originalIndex}`}\n size={ButtonIconSize.Md}\n {...iconProps}\n />\n ));\n }\n return null;\n };\n\n // Check if we have multiple end buttons for layout styling\n const hasMultipleEndButtons =\n !endAccessory && endButtonIconProps && endButtonIconProps.length > 1;\n\n // Merge default styles with passed-in twClassName\n const baseStyles = 'flex-row items-center gap-4 h-14';\n const resolvedTwClassName = twClassName\n ? `${baseStyles} ${twClassName}`\n : baseStyles;\n\n return (\n <View\n style={[\n tw.style(resolvedTwClassName),\n includesTopInset && { marginTop: insets.top },\n style,\n ]}\n {...props}\n >\n {/* Start accessory */}\n {shouldRenderStartWrapper && (\n <View\n style={\n accessoryWrapperWidth\n ? tw.style('items-start', { width: accessoryWrapperWidth })\n : undefined\n }\n {...startAccessoryWrapperProps}\n >\n <View onLayout={handleStartAccessoryLayout}>\n {renderStartContent()}\n </View>\n </View>\n )}\n\n {/* Title */}\n <Box twClassName=\"flex-1 items-center\">\n {typeof children === 'string' ? (\n <Text\n variant={TextVariant.HeadingSm}\n testID={titleTestID}\n style={tw.style('text-center')}\n >\n {children}\n </Text>\n ) : (\n children\n )}\n </Box>\n\n {/* End accessory */}\n {shouldRenderEndWrapper && (\n <View\n style={\n accessoryWrapperWidth\n ? tw.style('items-end', { width: accessoryWrapperWidth })\n : undefined\n }\n {...endAccessoryWrapperProps}\n >\n <View\n onLayout={handleEndAccessoryLayout}\n style={\n hasMultipleEndButtons ? tw.style('flex-row gap-2') : undefined\n }\n >\n {renderEndContent()}\n </View>\n </View>\n )}\n </View>\n );\n};\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HeaderBase.types.cjs","sourceRoot":"","sources":["../../../src/components/HeaderBase/HeaderBase.types.ts"],"names":[],"mappings":"","sourcesContent":["// Third party dependencies.\nimport type { ReactNode } from 'react';\nimport type { ViewProps, StyleProp, ViewStyle } from 'react-native';\n\n// External dependencies.\nimport type { ButtonIconProps } from '../ButtonIcon';\n\n/**\n * HeaderBase component props.\n *\n * Extends React Native's ViewProps to inherit standard props such as\n * `testID`, `accessibilityLabel`, and other View props.\n */\nexport type HeaderBaseProps = ViewProps & {\n /**\n * Title of the HeaderBase. Pass a string for automatic Text rendering,\n * or a ReactNode for custom content.\n */\n children?: ReactNode | string;\n /**\n * Optional style for the header container.\n */\n style?: StyleProp<ViewStyle>;\n /**\n * Optional prop to include content to be displayed before the title.\n * Takes priority over startButtonIconProps if both are provided.\n */\n startAccessory?: ReactNode;\n /**\n * Optional prop to include content to be displayed after the title.\n * Takes priority over endButtonIconProps if both are provided.\n */\n endAccessory?: ReactNode;\n /**\n * Optional ButtonIcon props to render a ButtonIcon as the start accessory.\n * Only used if startAccessory is not provided.\n *\n * @default size: ButtonIconSize.Md\n */\n startButtonIconProps?: ButtonIconProps;\n /**\n * Optional array of ButtonIcon props to render multiple ButtonIcons as end accessories.\n * Rendered in reverse order (first item appears rightmost).\n * Only used if endAccessory is not provided.\n *\n * @default size: ButtonIconSize.Md for each\n */\n endButtonIconProps?: ButtonIconProps[];\n /**\n * Optional prop to include the top inset to make sure the header is visible\n * below device's notch.\n *\n * @default false\n */\n includesTopInset?: boolean;\n /**\n * Optional props to pass to the start accessory wrapper View.\n */\n startAccessoryWrapperProps?: ViewProps;\n /**\n * Optional props to pass to the end accessory wrapper View.\n */\n endAccessoryWrapperProps?: ViewProps;\n /**\n * Optional test ID for the title Text element.\n * Only used when children is a string.\n */\n titleTestID?: string;\n /**\n * Optional Tailwind class names for the header container.\n * Merged with default styles using tw.style().\n */\n twClassName?: string;\n};\n"]}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
import type { ViewProps, StyleProp, ViewStyle } from "react-native/index.js";
|
|
3
|
+
import type { ButtonIconProps } from "../ButtonIcon/index.cjs";
|
|
4
|
+
/**
|
|
5
|
+
* HeaderBase component props.
|
|
6
|
+
*
|
|
7
|
+
* Extends React Native's ViewProps to inherit standard props such as
|
|
8
|
+
* `testID`, `accessibilityLabel`, and other View props.
|
|
9
|
+
*/
|
|
10
|
+
export type HeaderBaseProps = ViewProps & {
|
|
11
|
+
/**
|
|
12
|
+
* Title of the HeaderBase. Pass a string for automatic Text rendering,
|
|
13
|
+
* or a ReactNode for custom content.
|
|
14
|
+
*/
|
|
15
|
+
children?: ReactNode | string;
|
|
16
|
+
/**
|
|
17
|
+
* Optional style for the header container.
|
|
18
|
+
*/
|
|
19
|
+
style?: StyleProp<ViewStyle>;
|
|
20
|
+
/**
|
|
21
|
+
* Optional prop to include content to be displayed before the title.
|
|
22
|
+
* Takes priority over startButtonIconProps if both are provided.
|
|
23
|
+
*/
|
|
24
|
+
startAccessory?: ReactNode;
|
|
25
|
+
/**
|
|
26
|
+
* Optional prop to include content to be displayed after the title.
|
|
27
|
+
* Takes priority over endButtonIconProps if both are provided.
|
|
28
|
+
*/
|
|
29
|
+
endAccessory?: ReactNode;
|
|
30
|
+
/**
|
|
31
|
+
* Optional ButtonIcon props to render a ButtonIcon as the start accessory.
|
|
32
|
+
* Only used if startAccessory is not provided.
|
|
33
|
+
*
|
|
34
|
+
* @default size: ButtonIconSize.Md
|
|
35
|
+
*/
|
|
36
|
+
startButtonIconProps?: ButtonIconProps;
|
|
37
|
+
/**
|
|
38
|
+
* Optional array of ButtonIcon props to render multiple ButtonIcons as end accessories.
|
|
39
|
+
* Rendered in reverse order (first item appears rightmost).
|
|
40
|
+
* Only used if endAccessory is not provided.
|
|
41
|
+
*
|
|
42
|
+
* @default size: ButtonIconSize.Md for each
|
|
43
|
+
*/
|
|
44
|
+
endButtonIconProps?: ButtonIconProps[];
|
|
45
|
+
/**
|
|
46
|
+
* Optional prop to include the top inset to make sure the header is visible
|
|
47
|
+
* below device's notch.
|
|
48
|
+
*
|
|
49
|
+
* @default false
|
|
50
|
+
*/
|
|
51
|
+
includesTopInset?: boolean;
|
|
52
|
+
/**
|
|
53
|
+
* Optional props to pass to the start accessory wrapper View.
|
|
54
|
+
*/
|
|
55
|
+
startAccessoryWrapperProps?: ViewProps;
|
|
56
|
+
/**
|
|
57
|
+
* Optional props to pass to the end accessory wrapper View.
|
|
58
|
+
*/
|
|
59
|
+
endAccessoryWrapperProps?: ViewProps;
|
|
60
|
+
/**
|
|
61
|
+
* Optional test ID for the title Text element.
|
|
62
|
+
* Only used when children is a string.
|
|
63
|
+
*/
|
|
64
|
+
titleTestID?: string;
|
|
65
|
+
/**
|
|
66
|
+
* Optional Tailwind class names for the header container.
|
|
67
|
+
* Merged with default styles using tw.style().
|
|
68
|
+
*/
|
|
69
|
+
twClassName?: string;
|
|
70
|
+
};
|
|
71
|
+
//# sourceMappingURL=HeaderBase.types.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HeaderBase.types.d.cts","sourceRoot":"","sources":["../../../src/components/HeaderBase/HeaderBase.types.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc;AACvC,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,8BAAqB;AAGpE,OAAO,KAAK,EAAE,eAAe,EAAE,gCAAsB;AAErD;;;;;GAKG;AACH,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG;IACxC;;;OAGG;IACH,QAAQ,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9B;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B;;;OAGG;IACH,cAAc,CAAC,EAAE,SAAS,CAAC;IAC3B;;;OAGG;IACH,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB;;;;;OAKG;IACH,oBAAoB,CAAC,EAAE,eAAe,CAAC;IACvC;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,eAAe,EAAE,CAAC;IACvC;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;OAEG;IACH,0BAA0B,CAAC,EAAE,SAAS,CAAC;IACvC;;OAEG;IACH,wBAAwB,CAAC,EAAE,SAAS,CAAC;IACrC;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
import type { ViewProps, StyleProp, ViewStyle } from "react-native/index.js";
|
|
3
|
+
import type { ButtonIconProps } from "../ButtonIcon/index.mjs";
|
|
4
|
+
/**
|
|
5
|
+
* HeaderBase component props.
|
|
6
|
+
*
|
|
7
|
+
* Extends React Native's ViewProps to inherit standard props such as
|
|
8
|
+
* `testID`, `accessibilityLabel`, and other View props.
|
|
9
|
+
*/
|
|
10
|
+
export type HeaderBaseProps = ViewProps & {
|
|
11
|
+
/**
|
|
12
|
+
* Title of the HeaderBase. Pass a string for automatic Text rendering,
|
|
13
|
+
* or a ReactNode for custom content.
|
|
14
|
+
*/
|
|
15
|
+
children?: ReactNode | string;
|
|
16
|
+
/**
|
|
17
|
+
* Optional style for the header container.
|
|
18
|
+
*/
|
|
19
|
+
style?: StyleProp<ViewStyle>;
|
|
20
|
+
/**
|
|
21
|
+
* Optional prop to include content to be displayed before the title.
|
|
22
|
+
* Takes priority over startButtonIconProps if both are provided.
|
|
23
|
+
*/
|
|
24
|
+
startAccessory?: ReactNode;
|
|
25
|
+
/**
|
|
26
|
+
* Optional prop to include content to be displayed after the title.
|
|
27
|
+
* Takes priority over endButtonIconProps if both are provided.
|
|
28
|
+
*/
|
|
29
|
+
endAccessory?: ReactNode;
|
|
30
|
+
/**
|
|
31
|
+
* Optional ButtonIcon props to render a ButtonIcon as the start accessory.
|
|
32
|
+
* Only used if startAccessory is not provided.
|
|
33
|
+
*
|
|
34
|
+
* @default size: ButtonIconSize.Md
|
|
35
|
+
*/
|
|
36
|
+
startButtonIconProps?: ButtonIconProps;
|
|
37
|
+
/**
|
|
38
|
+
* Optional array of ButtonIcon props to render multiple ButtonIcons as end accessories.
|
|
39
|
+
* Rendered in reverse order (first item appears rightmost).
|
|
40
|
+
* Only used if endAccessory is not provided.
|
|
41
|
+
*
|
|
42
|
+
* @default size: ButtonIconSize.Md for each
|
|
43
|
+
*/
|
|
44
|
+
endButtonIconProps?: ButtonIconProps[];
|
|
45
|
+
/**
|
|
46
|
+
* Optional prop to include the top inset to make sure the header is visible
|
|
47
|
+
* below device's notch.
|
|
48
|
+
*
|
|
49
|
+
* @default false
|
|
50
|
+
*/
|
|
51
|
+
includesTopInset?: boolean;
|
|
52
|
+
/**
|
|
53
|
+
* Optional props to pass to the start accessory wrapper View.
|
|
54
|
+
*/
|
|
55
|
+
startAccessoryWrapperProps?: ViewProps;
|
|
56
|
+
/**
|
|
57
|
+
* Optional props to pass to the end accessory wrapper View.
|
|
58
|
+
*/
|
|
59
|
+
endAccessoryWrapperProps?: ViewProps;
|
|
60
|
+
/**
|
|
61
|
+
* Optional test ID for the title Text element.
|
|
62
|
+
* Only used when children is a string.
|
|
63
|
+
*/
|
|
64
|
+
titleTestID?: string;
|
|
65
|
+
/**
|
|
66
|
+
* Optional Tailwind class names for the header container.
|
|
67
|
+
* Merged with default styles using tw.style().
|
|
68
|
+
*/
|
|
69
|
+
twClassName?: string;
|
|
70
|
+
};
|
|
71
|
+
//# sourceMappingURL=HeaderBase.types.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HeaderBase.types.d.mts","sourceRoot":"","sources":["../../../src/components/HeaderBase/HeaderBase.types.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc;AACvC,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,8BAAqB;AAGpE,OAAO,KAAK,EAAE,eAAe,EAAE,gCAAsB;AAErD;;;;;GAKG;AACH,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG;IACxC;;;OAGG;IACH,QAAQ,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9B;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B;;;OAGG;IACH,cAAc,CAAC,EAAE,SAAS,CAAC;IAC3B;;;OAGG;IACH,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB;;;;;OAKG;IACH,oBAAoB,CAAC,EAAE,eAAe,CAAC;IACvC;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,eAAe,EAAE,CAAC;IACvC;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;OAEG;IACH,0BAA0B,CAAC,EAAE,SAAS,CAAC;IACvC;;OAEG;IACH,wBAAwB,CAAC,EAAE,SAAS,CAAC;IACrC;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HeaderBase.types.mjs","sourceRoot":"","sources":["../../../src/components/HeaderBase/HeaderBase.types.ts"],"names":[],"mappings":"","sourcesContent":["// Third party dependencies.\nimport type { ReactNode } from 'react';\nimport type { ViewProps, StyleProp, ViewStyle } from 'react-native';\n\n// External dependencies.\nimport type { ButtonIconProps } from '../ButtonIcon';\n\n/**\n * HeaderBase component props.\n *\n * Extends React Native's ViewProps to inherit standard props such as\n * `testID`, `accessibilityLabel`, and other View props.\n */\nexport type HeaderBaseProps = ViewProps & {\n /**\n * Title of the HeaderBase. Pass a string for automatic Text rendering,\n * or a ReactNode for custom content.\n */\n children?: ReactNode | string;\n /**\n * Optional style for the header container.\n */\n style?: StyleProp<ViewStyle>;\n /**\n * Optional prop to include content to be displayed before the title.\n * Takes priority over startButtonIconProps if both are provided.\n */\n startAccessory?: ReactNode;\n /**\n * Optional prop to include content to be displayed after the title.\n * Takes priority over endButtonIconProps if both are provided.\n */\n endAccessory?: ReactNode;\n /**\n * Optional ButtonIcon props to render a ButtonIcon as the start accessory.\n * Only used if startAccessory is not provided.\n *\n * @default size: ButtonIconSize.Md\n */\n startButtonIconProps?: ButtonIconProps;\n /**\n * Optional array of ButtonIcon props to render multiple ButtonIcons as end accessories.\n * Rendered in reverse order (first item appears rightmost).\n * Only used if endAccessory is not provided.\n *\n * @default size: ButtonIconSize.Md for each\n */\n endButtonIconProps?: ButtonIconProps[];\n /**\n * Optional prop to include the top inset to make sure the header is visible\n * below device's notch.\n *\n * @default false\n */\n includesTopInset?: boolean;\n /**\n * Optional props to pass to the start accessory wrapper View.\n */\n startAccessoryWrapperProps?: ViewProps;\n /**\n * Optional props to pass to the end accessory wrapper View.\n */\n endAccessoryWrapperProps?: ViewProps;\n /**\n * Optional test ID for the title Text element.\n * Only used when children is a string.\n */\n titleTestID?: string;\n /**\n * Optional Tailwind class names for the header container.\n * Merged with default styles using tw.style().\n */\n twClassName?: string;\n};\n"]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.HeaderBase = void 0;
|
|
4
|
+
var HeaderBase_1 = require("./HeaderBase.cjs");
|
|
5
|
+
Object.defineProperty(exports, "HeaderBase", { enumerable: true, get: function () { return HeaderBase_1.HeaderBase; } });
|
|
6
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs","sourceRoot":"","sources":["../../../src/components/HeaderBase/index.ts"],"names":[],"mappings":";;;AAAA,+CAA0C;AAAjC,wGAAA,UAAU,OAAA","sourcesContent":["export { HeaderBase } from './HeaderBase';\nexport type { HeaderBaseProps } from './HeaderBase.types';\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../../../src/components/HeaderBase/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,yBAAqB;AAC1C,YAAY,EAAE,eAAe,EAAE,+BAA2B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../../src/components/HeaderBase/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,yBAAqB;AAC1C,YAAY,EAAE,eAAe,EAAE,+BAA2B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../../src/components/HeaderBase/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,yBAAqB","sourcesContent":["export { HeaderBase } from './HeaderBase';\nexport type { HeaderBaseProps } from './HeaderBase.types';\n"]}
|
|
@@ -77,6 +77,7 @@ const confirmation_svg_1 = __importDefault(require("./assets/confirmation.svg"))
|
|
|
77
77
|
const connect_svg_1 = __importDefault(require("./assets/connect.svg"));
|
|
78
78
|
const copy_success_svg_1 = __importDefault(require("./assets/copy-success.svg"));
|
|
79
79
|
const copy_svg_1 = __importDefault(require("./assets/copy.svg"));
|
|
80
|
+
const corporate_fare_svg_1 = __importDefault(require("./assets/corporate-fare.svg"));
|
|
80
81
|
const credit_check_svg_1 = __importDefault(require("./assets/credit-check.svg"));
|
|
81
82
|
const currency_franc_svg_1 = __importDefault(require("./assets/currency-franc.svg"));
|
|
82
83
|
const currency_lira_svg_1 = __importDefault(require("./assets/currency-lira.svg"));
|
|
@@ -358,6 +359,7 @@ exports.assetByIconName = {
|
|
|
358
359
|
[types_1.IconName.Connect]: connect_svg_1.default,
|
|
359
360
|
[types_1.IconName.CopySuccess]: copy_success_svg_1.default,
|
|
360
361
|
[types_1.IconName.Copy]: copy_svg_1.default,
|
|
362
|
+
[types_1.IconName.CorporateFare]: corporate_fare_svg_1.default,
|
|
361
363
|
[types_1.IconName.CreditCheck]: credit_check_svg_1.default,
|
|
362
364
|
[types_1.IconName.CurrencyFranc]: currency_franc_svg_1.default,
|
|
363
365
|
[types_1.IconName.CurrencyLira]: currency_lira_svg_1.default,
|