@sendbird/uikit-react-native-foundation 3.7.6 → 3.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/lib/commonjs/assets/bundle-icons.js.map +1 -1
- package/lib/commonjs/assets/icon/icon-thread.png +0 -0
- package/lib/commonjs/assets/icon/icon-thread@2x.png +0 -0
- package/lib/commonjs/assets/icon/icon-thread@3x.png +0 -0
- package/lib/commonjs/assets/icon/index.js +1 -2
- package/lib/commonjs/assets/icon/index.js.map +1 -1
- package/lib/commonjs/components/Box/index.js +8 -10
- package/lib/commonjs/components/Box/index.js.map +1 -1
- package/lib/commonjs/components/Divider/index.js +6 -8
- package/lib/commonjs/components/Divider/index.js.map +1 -1
- package/lib/commonjs/components/Icon/index.js +36 -18
- package/lib/commonjs/components/Icon/index.js.map +1 -1
- package/lib/commonjs/components/Image/FastImageInternal.js +1 -2
- package/lib/commonjs/components/Image/FastImageInternal.js.map +1 -1
- package/lib/commonjs/components/Image/Image.fastimage.js +14 -17
- package/lib/commonjs/components/Image/Image.fastimage.js.map +1 -1
- package/lib/commonjs/components/Image/Image.reactnative.js +10 -12
- package/lib/commonjs/components/Image/Image.reactnative.js.map +1 -1
- package/lib/commonjs/components/Image/index.js +1 -2
- package/lib/commonjs/components/Image/index.js.map +1 -1
- package/lib/commonjs/components/ImageWithPlaceholder/index.js +5 -7
- package/lib/commonjs/components/ImageWithPlaceholder/index.js.map +1 -1
- package/lib/commonjs/components/Modal/index.js +28 -37
- package/lib/commonjs/components/Modal/index.js.map +1 -1
- package/lib/commonjs/components/PressBox/index.js +17 -20
- package/lib/commonjs/components/PressBox/index.js.map +1 -1
- package/lib/commonjs/components/ProgressBar/index.js +24 -16
- package/lib/commonjs/components/ProgressBar/index.js.map +1 -1
- package/lib/commonjs/components/RegexText/index.js +11 -14
- package/lib/commonjs/components/RegexText/index.js.map +1 -1
- package/lib/commonjs/components/Switch/index.js +19 -19
- package/lib/commonjs/components/Switch/index.js.map +1 -1
- package/lib/commonjs/components/Text/index.js +46 -29
- package/lib/commonjs/components/Text/index.js.map +1 -1
- package/lib/commonjs/components/TextInput/index.js +38 -18
- package/lib/commonjs/components/TextInput/index.js.map +1 -1
- package/lib/commonjs/components/VideoThumbnail/index.js +11 -13
- package/lib/commonjs/components/VideoThumbnail/index.js.map +1 -1
- package/lib/commonjs/index.js +3 -3
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/styles/HeaderStyleContext.js +8 -10
- package/lib/commonjs/styles/HeaderStyleContext.js.map +1 -1
- package/lib/commonjs/styles/createScaleFactor.js +3 -6
- package/lib/commonjs/styles/createScaleFactor.js.map +1 -1
- package/lib/commonjs/styles/createSelectByColorScheme.js +1 -2
- package/lib/commonjs/styles/createSelectByColorScheme.js.map +1 -1
- package/lib/commonjs/styles/createStyleSheet.js +9 -4
- package/lib/commonjs/styles/createStyleSheet.js.map +1 -1
- package/lib/commonjs/styles/createTypography.js +2 -5
- package/lib/commonjs/styles/createTypography.js.map +1 -1
- package/lib/commonjs/styles/getDefaultHeaderHeight.js +1 -2
- package/lib/commonjs/styles/getDefaultHeaderHeight.js.map +1 -1
- package/lib/commonjs/styles/useHeaderStyle.js +1 -2
- package/lib/commonjs/styles/useHeaderStyle.js.map +1 -1
- package/lib/commonjs/theme/DarkUIKitTheme.js +2 -3
- package/lib/commonjs/theme/DarkUIKitTheme.js.map +1 -1
- package/lib/commonjs/theme/LightUIKitTheme.js +2 -3
- package/lib/commonjs/theme/LightUIKitTheme.js.map +1 -1
- package/lib/commonjs/theme/Palette.js +1 -2
- package/lib/commonjs/theme/Palette.js.map +1 -1
- package/lib/commonjs/theme/UIKitThemeContext.js +2 -3
- package/lib/commonjs/theme/UIKitThemeContext.js.map +1 -1
- package/lib/commonjs/theme/UIKitThemeProvider.js +6 -8
- package/lib/commonjs/theme/UIKitThemeProvider.js.map +1 -1
- package/lib/commonjs/theme/createTheme.js +11 -13
- package/lib/commonjs/theme/createTheme.js.map +1 -1
- package/lib/commonjs/theme/useUIKitTheme.js +2 -3
- package/lib/commonjs/theme/useUIKitTheme.js.map +1 -1
- package/lib/commonjs/types.js.map +1 -1
- package/lib/commonjs/ui/ActionMenu/index.js +17 -17
- package/lib/commonjs/ui/ActionMenu/index.js.map +1 -1
- package/lib/commonjs/ui/Alert/index.js +23 -29
- package/lib/commonjs/ui/Alert/index.js.map +1 -1
- package/lib/commonjs/ui/Avatar/AvatarGroup.js +13 -15
- package/lib/commonjs/ui/Avatar/AvatarGroup.js.map +1 -1
- package/lib/commonjs/ui/Avatar/AvatarIcon.js +8 -10
- package/lib/commonjs/ui/Avatar/AvatarIcon.js.map +1 -1
- package/lib/commonjs/ui/Avatar/AvatarStack.js +13 -15
- package/lib/commonjs/ui/Avatar/AvatarStack.js.map +1 -1
- package/lib/commonjs/ui/Avatar/index.js +14 -17
- package/lib/commonjs/ui/Avatar/index.js.map +1 -1
- package/lib/commonjs/ui/Badge/index.js +10 -12
- package/lib/commonjs/ui/Badge/index.js.map +1 -1
- package/lib/commonjs/ui/BottomSheet/index.js +30 -39
- package/lib/commonjs/ui/BottomSheet/index.js.map +1 -1
- package/lib/commonjs/ui/Button/index.js +19 -23
- package/lib/commonjs/ui/Button/index.js.map +1 -1
- package/lib/commonjs/ui/ChannelFrozenBanner/index.js +8 -10
- package/lib/commonjs/ui/ChannelFrozenBanner/index.js.map +1 -1
- package/lib/commonjs/ui/Dialog/DialogBox.js +6 -8
- package/lib/commonjs/ui/Dialog/DialogBox.js.map +1 -1
- package/lib/commonjs/ui/Dialog/DialogSheet.js +23 -22
- package/lib/commonjs/ui/Dialog/DialogSheet.js.map +1 -1
- package/lib/commonjs/ui/Dialog/index.js +11 -12
- package/lib/commonjs/ui/Dialog/index.js.map +1 -1
- package/lib/commonjs/ui/GroupChannelMessage/Message.admin.js +2 -3
- package/lib/commonjs/ui/GroupChannelMessage/Message.admin.js.map +1 -1
- package/lib/commonjs/ui/GroupChannelMessage/Message.file.image.js +2 -3
- package/lib/commonjs/ui/GroupChannelMessage/Message.file.image.js.map +1 -1
- package/lib/commonjs/ui/GroupChannelMessage/Message.file.js +6 -8
- package/lib/commonjs/ui/GroupChannelMessage/Message.file.js.map +1 -1
- package/lib/commonjs/ui/GroupChannelMessage/Message.file.video.js +2 -3
- package/lib/commonjs/ui/GroupChannelMessage/Message.file.video.js.map +1 -1
- package/lib/commonjs/ui/GroupChannelMessage/Message.file.voice.js +8 -9
- package/lib/commonjs/ui/GroupChannelMessage/Message.file.voice.js.map +1 -1
- package/lib/commonjs/ui/GroupChannelMessage/Message.unknown.js +5 -7
- package/lib/commonjs/ui/GroupChannelMessage/Message.unknown.js.map +1 -1
- package/lib/commonjs/ui/GroupChannelMessage/Message.user.js +8 -12
- package/lib/commonjs/ui/GroupChannelMessage/Message.user.js.map +1 -1
- package/lib/commonjs/ui/GroupChannelMessage/Message.user.og.js +16 -20
- package/lib/commonjs/ui/GroupChannelMessage/Message.user.og.js.map +1 -1
- package/lib/commonjs/ui/GroupChannelMessage/MessageBubbleWithText.js +28 -24
- package/lib/commonjs/ui/GroupChannelMessage/MessageBubbleWithText.js.map +1 -1
- package/lib/commonjs/ui/GroupChannelMessage/MessageContainer.js +29 -31
- package/lib/commonjs/ui/GroupChannelMessage/MessageContainer.js.map +1 -1
- package/lib/commonjs/ui/GroupChannelMessage/MessageOpenGraph.js +38 -43
- package/lib/commonjs/ui/GroupChannelMessage/MessageOpenGraph.js.map +1 -1
- package/lib/commonjs/ui/GroupChannelMessage/index.js +2 -3
- package/lib/commonjs/ui/GroupChannelMessage/index.js.map +1 -1
- package/lib/commonjs/ui/GroupChannelPreview/index.js +55 -61
- package/lib/commonjs/ui/GroupChannelPreview/index.js.map +1 -1
- package/lib/commonjs/ui/Header/index.js +45 -56
- package/lib/commonjs/ui/Header/index.js.map +1 -1
- package/lib/commonjs/ui/LoadingSpinner/index.js +14 -18
- package/lib/commonjs/ui/LoadingSpinner/index.js.map +1 -1
- package/lib/commonjs/ui/MenuBar/index.js +23 -21
- package/lib/commonjs/ui/MenuBar/index.js.map +1 -1
- package/lib/commonjs/ui/OpenChannelMessage/Message.admin.js +2 -3
- package/lib/commonjs/ui/OpenChannelMessage/Message.admin.js.map +1 -1
- package/lib/commonjs/ui/OpenChannelMessage/Message.file.image.js +2 -3
- package/lib/commonjs/ui/OpenChannelMessage/Message.file.image.js.map +1 -1
- package/lib/commonjs/ui/OpenChannelMessage/Message.file.js +6 -8
- package/lib/commonjs/ui/OpenChannelMessage/Message.file.js.map +1 -1
- package/lib/commonjs/ui/OpenChannelMessage/Message.file.video.js +2 -3
- package/lib/commonjs/ui/OpenChannelMessage/Message.file.video.js.map +1 -1
- package/lib/commonjs/ui/OpenChannelMessage/Message.unknown.js +6 -8
- package/lib/commonjs/ui/OpenChannelMessage/Message.unknown.js.map +1 -1
- package/lib/commonjs/ui/OpenChannelMessage/Message.user.js +28 -20
- package/lib/commonjs/ui/OpenChannelMessage/Message.user.js.map +1 -1
- package/lib/commonjs/ui/OpenChannelMessage/Message.user.og.js +54 -49
- package/lib/commonjs/ui/OpenChannelMessage/Message.user.og.js.map +1 -1
- package/lib/commonjs/ui/OpenChannelMessage/MessageContainer.js +16 -19
- package/lib/commonjs/ui/OpenChannelMessage/MessageContainer.js.map +1 -1
- package/lib/commonjs/ui/OpenChannelMessage/index.js +2 -3
- package/lib/commonjs/ui/OpenChannelMessage/index.js.map +1 -1
- package/lib/commonjs/ui/OpenChannelPreview/index.js +25 -30
- package/lib/commonjs/ui/OpenChannelPreview/index.js.map +1 -1
- package/lib/commonjs/ui/OutlinedButton/index.js +7 -9
- package/lib/commonjs/ui/OutlinedButton/index.js.map +1 -1
- package/lib/commonjs/ui/Placeholder/index.js +9 -11
- package/lib/commonjs/ui/Placeholder/index.js.map +1 -1
- package/lib/commonjs/ui/ProfileCard/index.js +11 -12
- package/lib/commonjs/ui/ProfileCard/index.js.map +1 -1
- package/lib/commonjs/ui/Prompt/index.js +30 -37
- package/lib/commonjs/ui/Prompt/index.js.map +1 -1
- package/lib/commonjs/ui/Toast/index.js +21 -27
- package/lib/commonjs/ui/Toast/index.js.map +1 -1
- package/lib/commonjs/ui/TypingIndicatorBubble/index.js +25 -32
- package/lib/commonjs/ui/TypingIndicatorBubble/index.js.map +1 -1
- package/lib/module/assets/bundle-icons.js.map +1 -1
- package/lib/module/assets/icon/icon-thread.png +0 -0
- package/lib/module/assets/icon/icon-thread@2x.png +0 -0
- package/lib/module/assets/icon/icon-thread@3x.png +0 -0
- package/lib/module/assets/icon/index.js.map +1 -1
- package/lib/module/components/Box/index.js +6 -7
- package/lib/module/components/Box/index.js.map +1 -1
- package/lib/module/components/Divider/index.js +4 -5
- package/lib/module/components/Divider/index.js.map +1 -1
- package/lib/module/components/Icon/index.js +35 -16
- package/lib/module/components/Icon/index.js.map +1 -1
- package/lib/module/components/Image/FastImageInternal.js.map +1 -1
- package/lib/module/components/Image/Image.fastimage.js +12 -14
- package/lib/module/components/Image/Image.fastimage.js.map +1 -1
- package/lib/module/components/Image/Image.reactnative.js +8 -9
- package/lib/module/components/Image/Image.reactnative.js.map +1 -1
- package/lib/module/components/Image/index.js.map +1 -1
- package/lib/module/components/ImageWithPlaceholder/index.js +1 -2
- package/lib/module/components/ImageWithPlaceholder/index.js.map +1 -1
- package/lib/module/components/Modal/index.js +24 -32
- package/lib/module/components/Modal/index.js.map +1 -1
- package/lib/module/components/PressBox/index.js +10 -12
- package/lib/module/components/PressBox/index.js.map +1 -1
- package/lib/module/components/ProgressBar/index.js +21 -12
- package/lib/module/components/ProgressBar/index.js.map +1 -1
- package/lib/module/components/RegexText/index.js +9 -11
- package/lib/module/components/RegexText/index.js.map +1 -1
- package/lib/module/components/Switch/index.js +16 -15
- package/lib/module/components/Switch/index.js.map +1 -1
- package/lib/module/components/Text/index.js +45 -27
- package/lib/module/components/Text/index.js.map +1 -1
- package/lib/module/components/TextInput/index.js +37 -16
- package/lib/module/components/TextInput/index.js.map +1 -1
- package/lib/module/components/VideoThumbnail/index.js +8 -10
- package/lib/module/components/VideoThumbnail/index.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/styles/HeaderStyleContext.js +6 -7
- package/lib/module/styles/HeaderStyleContext.js.map +1 -1
- package/lib/module/styles/createScaleFactor.js +1 -2
- package/lib/module/styles/createScaleFactor.js.map +1 -1
- package/lib/module/styles/createSelectByColorScheme.js.map +1 -1
- package/lib/module/styles/createStyleSheet.js +8 -2
- package/lib/module/styles/createStyleSheet.js.map +1 -1
- package/lib/module/styles/createTypography.js +1 -3
- package/lib/module/styles/createTypography.js.map +1 -1
- package/lib/module/styles/getDefaultHeaderHeight.js.map +1 -1
- package/lib/module/styles/useHeaderStyle.js.map +1 -1
- package/lib/module/theme/DarkUIKitTheme.js.map +1 -1
- package/lib/module/theme/LightUIKitTheme.js.map +1 -1
- package/lib/module/theme/Palette.js.map +1 -1
- package/lib/module/theme/UIKitThemeContext.js.map +1 -1
- package/lib/module/theme/UIKitThemeProvider.js +4 -5
- package/lib/module/theme/UIKitThemeProvider.js.map +1 -1
- package/lib/module/theme/createTheme.js +9 -10
- package/lib/module/theme/createTheme.js.map +1 -1
- package/lib/module/theme/useUIKitTheme.js.map +1 -1
- package/lib/module/types.js.map +1 -1
- package/lib/module/ui/ActionMenu/index.js +13 -12
- package/lib/module/ui/ActionMenu/index.js.map +1 -1
- package/lib/module/ui/Alert/index.js +21 -26
- package/lib/module/ui/Alert/index.js.map +1 -1
- package/lib/module/ui/Avatar/AvatarGroup.js +11 -12
- package/lib/module/ui/Avatar/AvatarGroup.js.map +1 -1
- package/lib/module/ui/Avatar/AvatarIcon.js +6 -7
- package/lib/module/ui/Avatar/AvatarIcon.js.map +1 -1
- package/lib/module/ui/Avatar/AvatarStack.js +11 -12
- package/lib/module/ui/Avatar/AvatarStack.js.map +1 -1
- package/lib/module/ui/Avatar/index.js +10 -12
- package/lib/module/ui/Avatar/index.js.map +1 -1
- package/lib/module/ui/Badge/index.js +8 -9
- package/lib/module/ui/Badge/index.js.map +1 -1
- package/lib/module/ui/BottomSheet/index.js +28 -36
- package/lib/module/ui/BottomSheet/index.js.map +1 -1
- package/lib/module/ui/Button/index.js +17 -20
- package/lib/module/ui/Button/index.js.map +1 -1
- package/lib/module/ui/ChannelFrozenBanner/index.js +6 -7
- package/lib/module/ui/ChannelFrozenBanner/index.js.map +1 -1
- package/lib/module/ui/Dialog/DialogBox.js +4 -5
- package/lib/module/ui/Dialog/DialogBox.js.map +1 -1
- package/lib/module/ui/Dialog/DialogSheet.js +21 -19
- package/lib/module/ui/Dialog/DialogSheet.js.map +1 -1
- package/lib/module/ui/Dialog/index.js +8 -9
- package/lib/module/ui/Dialog/index.js.map +1 -1
- package/lib/module/ui/GroupChannelMessage/Message.admin.js.map +1 -1
- package/lib/module/ui/GroupChannelMessage/Message.file.image.js.map +1 -1
- package/lib/module/ui/GroupChannelMessage/Message.file.js +4 -5
- package/lib/module/ui/GroupChannelMessage/Message.file.js.map +1 -1
- package/lib/module/ui/GroupChannelMessage/Message.file.video.js.map +1 -1
- package/lib/module/ui/GroupChannelMessage/Message.file.voice.js +4 -4
- package/lib/module/ui/GroupChannelMessage/Message.file.voice.js.map +1 -1
- package/lib/module/ui/GroupChannelMessage/Message.unknown.js +3 -4
- package/lib/module/ui/GroupChannelMessage/Message.unknown.js.map +1 -1
- package/lib/module/ui/GroupChannelMessage/Message.user.js +6 -9
- package/lib/module/ui/GroupChannelMessage/Message.user.js.map +1 -1
- package/lib/module/ui/GroupChannelMessage/Message.user.og.js +14 -17
- package/lib/module/ui/GroupChannelMessage/Message.user.og.js.map +1 -1
- package/lib/module/ui/GroupChannelMessage/MessageBubbleWithText.js +26 -21
- package/lib/module/ui/GroupChannelMessage/MessageBubbleWithText.js.map +1 -1
- package/lib/module/ui/GroupChannelMessage/MessageContainer.js +27 -28
- package/lib/module/ui/GroupChannelMessage/MessageContainer.js.map +1 -1
- package/lib/module/ui/GroupChannelMessage/MessageOpenGraph.js +36 -40
- package/lib/module/ui/GroupChannelMessage/MessageOpenGraph.js.map +1 -1
- package/lib/module/ui/GroupChannelMessage/index.js.map +1 -1
- package/lib/module/ui/GroupChannelPreview/index.js +53 -58
- package/lib/module/ui/GroupChannelPreview/index.js.map +1 -1
- package/lib/module/ui/Header/index.js +44 -54
- package/lib/module/ui/Header/index.js.map +1 -1
- package/lib/module/ui/LoadingSpinner/index.js +10 -13
- package/lib/module/ui/LoadingSpinner/index.js.map +1 -1
- package/lib/module/ui/MenuBar/index.js +21 -18
- package/lib/module/ui/MenuBar/index.js.map +1 -1
- package/lib/module/ui/OpenChannelMessage/Message.admin.js.map +1 -1
- package/lib/module/ui/OpenChannelMessage/Message.file.image.js.map +1 -1
- package/lib/module/ui/OpenChannelMessage/Message.file.js +4 -5
- package/lib/module/ui/OpenChannelMessage/Message.file.js.map +1 -1
- package/lib/module/ui/OpenChannelMessage/Message.file.video.js.map +1 -1
- package/lib/module/ui/OpenChannelMessage/Message.unknown.js +4 -5
- package/lib/module/ui/OpenChannelMessage/Message.unknown.js.map +1 -1
- package/lib/module/ui/OpenChannelMessage/Message.user.js +26 -17
- package/lib/module/ui/OpenChannelMessage/Message.user.js.map +1 -1
- package/lib/module/ui/OpenChannelMessage/Message.user.og.js +52 -46
- package/lib/module/ui/OpenChannelMessage/Message.user.og.js.map +1 -1
- package/lib/module/ui/OpenChannelMessage/MessageContainer.js +14 -16
- package/lib/module/ui/OpenChannelMessage/MessageContainer.js.map +1 -1
- package/lib/module/ui/OpenChannelMessage/index.js.map +1 -1
- package/lib/module/ui/OpenChannelPreview/index.js +23 -27
- package/lib/module/ui/OpenChannelPreview/index.js.map +1 -1
- package/lib/module/ui/OutlinedButton/index.js +5 -6
- package/lib/module/ui/OutlinedButton/index.js.map +1 -1
- package/lib/module/ui/Placeholder/index.js +7 -8
- package/lib/module/ui/Placeholder/index.js.map +1 -1
- package/lib/module/ui/ProfileCard/index.js +9 -9
- package/lib/module/ui/ProfileCard/index.js.map +1 -1
- package/lib/module/ui/Prompt/index.js +26 -32
- package/lib/module/ui/Prompt/index.js.map +1 -1
- package/lib/module/ui/Toast/index.js +17 -22
- package/lib/module/ui/Toast/index.js.map +1 -1
- package/lib/module/ui/TypingIndicatorBubble/index.js +21 -27
- package/lib/module/ui/TypingIndicatorBubble/index.js.map +1 -1
- package/lib/typescript/src/components/Box/index.d.ts +12 -2
- package/lib/typescript/src/components/Icon/index.d.ts +2 -1
- package/lib/typescript/src/components/Text/index.d.ts +14 -2
- package/lib/typescript/src/components/TextInput/index.d.ts +2 -1
- package/package.json +3 -3
- package/src/assets/icon/icon-thread.png +0 -0
- package/src/assets/icon/icon-thread@2x.png +0 -0
- package/src/assets/icon/icon-thread@3x.png +0 -0
- package/src/components/Box/index.tsx +16 -5
- package/src/components/Icon/index.tsx +35 -3
- package/src/components/ProgressBar/index.tsx +23 -12
- package/src/components/Switch/index.tsx +10 -6
- package/src/components/Text/index.tsx +48 -7
- package/src/components/TextInput/index.tsx +39 -12
- package/src/styles/createStyleSheet.ts +8 -2
- package/src/ui/ActionMenu/index.tsx +3 -1
- package/src/ui/Alert/index.tsx +4 -4
- package/src/ui/Avatar/AvatarGroup.tsx +6 -6
- package/src/ui/Avatar/AvatarStack.tsx +3 -3
- package/src/ui/BottomSheet/index.tsx +5 -4
- package/src/ui/Button/index.tsx +1 -1
- package/src/ui/Dialog/DialogSheet.tsx +15 -12
- package/src/ui/GroupChannelMessage/Message.file.tsx +1 -1
- package/src/ui/GroupChannelMessage/Message.file.voice.tsx +1 -1
- package/src/ui/GroupChannelMessage/MessageBubbleWithText.tsx +5 -2
- package/src/ui/GroupChannelMessage/MessageContainer.tsx +7 -7
- package/src/ui/GroupChannelPreview/index.tsx +46 -48
- package/src/ui/Header/index.tsx +4 -5
- package/src/ui/MenuBar/index.tsx +9 -6
- package/src/ui/OpenChannelMessage/Message.file.tsx +1 -1
- package/src/ui/OpenChannelMessage/Message.user.og.tsx +43 -29
- package/src/ui/OpenChannelMessage/Message.user.tsx +46 -29
- package/src/ui/OpenChannelMessage/MessageContainer.tsx +4 -4
- package/src/ui/OpenChannelPreview/index.tsx +9 -9
- package/src/ui/ProfileCard/index.tsx +1 -0
- package/src/ui/Prompt/index.tsx +4 -5
- package/src/ui/Toast/index.tsx +1 -1
- package/src/ui/TypingIndicatorBubble/index.tsx +2 -2
|
@@ -8,15 +8,14 @@ import useHeaderStyle from '../../styles/useHeaderStyle';
|
|
|
8
8
|
import useUIKitTheme from '../../theme/useUIKitTheme';
|
|
9
9
|
import DialogBox from '../Dialog/DialogBox';
|
|
10
10
|
import LoadingSpinner from '../LoadingSpinner';
|
|
11
|
-
const ActionMenu =
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
} = _ref;
|
|
11
|
+
const ActionMenu = ({
|
|
12
|
+
visible,
|
|
13
|
+
onHide,
|
|
14
|
+
onError,
|
|
15
|
+
onDismiss,
|
|
16
|
+
title,
|
|
17
|
+
menuItems
|
|
18
|
+
}) => {
|
|
20
19
|
const {
|
|
21
20
|
statusBarTranslucent
|
|
22
21
|
} = useHeaderStyle();
|
|
@@ -52,7 +51,7 @@ const ActionMenu = _ref => {
|
|
|
52
51
|
color: colors.ui.dialog.default.none.highlight,
|
|
53
52
|
style: {
|
|
54
53
|
width: '10%',
|
|
55
|
-
|
|
54
|
+
marginStart: '4%'
|
|
56
55
|
}
|
|
57
56
|
})), /*#__PURE__*/React.createElement(View, {
|
|
58
57
|
style: styles.buttonContainer
|
|
@@ -69,7 +68,7 @@ const ActionMenu = _ref => {
|
|
|
69
68
|
await ((_item$onPress = item.onPress) === null || _item$onPress === void 0 ? void 0 : _item$onPress.call(item));
|
|
70
69
|
} catch (e) {
|
|
71
70
|
const errorHandler = onError ?? item.onError;
|
|
72
|
-
errorHandler === null || errorHandler === void 0
|
|
71
|
+
errorHandler === null || errorHandler === void 0 || errorHandler(e);
|
|
73
72
|
if (!errorHandler) Logger.error('ActionMenu onPress error', e);
|
|
74
73
|
} finally {
|
|
75
74
|
onHide();
|
|
@@ -88,9 +87,11 @@ const styles = createStyleSheet({
|
|
|
88
87
|
flexDirection: 'row',
|
|
89
88
|
paddingHorizontal: 24,
|
|
90
89
|
paddingVertical: 20,
|
|
91
|
-
alignItems: 'center'
|
|
90
|
+
alignItems: 'center',
|
|
91
|
+
justifyContent: 'flex-start'
|
|
92
92
|
},
|
|
93
93
|
buttonContainer: {
|
|
94
|
+
alignItems: 'flex-start',
|
|
94
95
|
marginTop: 4,
|
|
95
96
|
marginBottom: 8
|
|
96
97
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useState","TouchableOpacity","View","Logger","Modal","Text","createStyleSheet","useHeaderStyle","useUIKitTheme","DialogBox","LoadingSpinner","ActionMenu","
|
|
1
|
+
{"version":3,"names":["React","useState","TouchableOpacity","View","Logger","Modal","Text","createStyleSheet","useHeaderStyle","useUIKitTheme","DialogBox","LoadingSpinner","ActionMenu","visible","onHide","onError","onDismiss","title","menuItems","statusBarTranslucent","colors","pending","setPending","_onHide","createElement","onClose","backgroundStyle","alignItems","justifyContent","style","styles","h1","color","ui","dialog","default","none","text","numberOfLines","maxWidth","size","highlight","width","marginStart","buttonContainer","map","item","index","activeOpacity","key","button","disabled","onPress","_item$onPress","call","e","errorHandler","error","subtitle2","destructive","flexDirection","paddingHorizontal","paddingVertical","marginTop","marginBottom"],"sources":["index.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { TouchableOpacity, View } from 'react-native';\n\nimport { Logger } from '@sendbird/uikit-utils';\n\nimport Modal from '../../components/Modal';\nimport Text from '../../components/Text';\nimport createStyleSheet from '../../styles/createStyleSheet';\nimport useHeaderStyle from '../../styles/useHeaderStyle';\nimport useUIKitTheme from '../../theme/useUIKitTheme';\nimport DialogBox from '../Dialog/DialogBox';\nimport LoadingSpinner from '../LoadingSpinner';\n\nexport type ActionMenuItem = {\n title?: string;\n menuItems: {\n title: string;\n style?: 'destructive';\n onPress?: (() => Promise<void>) | (() => void);\n onError?: () => void;\n }[];\n};\n\ntype Props = {\n visible: boolean;\n onHide: () => void;\n onError?: (error: unknown) => void;\n onDismiss?: () => void;\n} & ActionMenuItem;\nconst ActionMenu = ({ visible, onHide, onError, onDismiss, title, menuItems }: Props) => {\n const { statusBarTranslucent } = useHeaderStyle();\n const { colors } = useUIKitTheme();\n const [pending, setPending] = useState(false);\n const _onHide = () => {\n if (!pending) onHide();\n };\n\n return (\n <Modal\n onClose={_onHide}\n onDismiss={onDismiss}\n statusBarTranslucent={statusBarTranslucent}\n visible={visible}\n backgroundStyle={{ alignItems: 'center', justifyContent: 'center' }}\n >\n <DialogBox>\n <View style={styles.title}>\n <Text\n h1\n color={colors.ui.dialog.default.none.text}\n numberOfLines={1}\n // style={{ flex: 1 }}\n style={{ maxWidth: pending ? '86%' : '100%' }}\n >\n {title}\n </Text>\n {pending && (\n <LoadingSpinner\n size={20}\n color={colors.ui.dialog.default.none.highlight}\n style={{ width: '10%', marginStart: '4%' }}\n />\n )}\n </View>\n <View style={styles.buttonContainer}>\n {menuItems.map((item, index) => {\n return (\n <TouchableOpacity\n activeOpacity={0.75}\n key={item.title + index}\n style={styles.button}\n disabled={pending}\n onPress={async () => {\n setPending(true);\n try {\n await item.onPress?.();\n } catch (e: unknown) {\n const errorHandler = onError ?? item.onError;\n errorHandler?.(e);\n if (!errorHandler) Logger.error('ActionMenu onPress error', e);\n } finally {\n onHide();\n setPending(false);\n }\n }}\n >\n <Text\n subtitle2\n color={\n item.style === 'destructive'\n ? colors.ui.dialog.default.none.destructive\n : colors.ui.dialog.default.none.text\n }\n numberOfLines={1}\n >\n {item.title}\n </Text>\n </TouchableOpacity>\n );\n })}\n </View>\n </DialogBox>\n </Modal>\n );\n};\n\nconst styles = createStyleSheet({\n title: {\n flexDirection: 'row',\n paddingHorizontal: 24,\n paddingVertical: 20,\n alignItems: 'center',\n justifyContent: 'flex-start',\n },\n buttonContainer: {\n alignItems: 'flex-start',\n marginTop: 4,\n marginBottom: 8,\n },\n button: {\n paddingHorizontal: 24,\n paddingVertical: 12,\n },\n});\n\nexport default ActionMenu;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -7,17 +7,16 @@ import useHeaderStyle from '../../styles/useHeaderStyle';
|
|
|
7
7
|
import useUIKitTheme from '../../theme/useUIKitTheme';
|
|
8
8
|
import Button from '../Button';
|
|
9
9
|
import DialogBox from '../Dialog/DialogBox';
|
|
10
|
-
const Alert =
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
} = _ref;
|
|
10
|
+
const Alert = ({
|
|
11
|
+
onDismiss,
|
|
12
|
+
visible,
|
|
13
|
+
onHide,
|
|
14
|
+
title = '',
|
|
15
|
+
message = '',
|
|
16
|
+
buttons = [{
|
|
17
|
+
text: 'OK'
|
|
18
|
+
}]
|
|
19
|
+
}) => {
|
|
21
20
|
const {
|
|
22
21
|
statusBarTranslucent
|
|
23
22
|
} = useHeaderStyle();
|
|
@@ -40,10 +39,7 @@ const Alert = _ref => {
|
|
|
40
39
|
}, /*#__PURE__*/React.createElement(Text, {
|
|
41
40
|
h1: true,
|
|
42
41
|
color: colors.ui.dialog.default.none.text,
|
|
43
|
-
numberOfLines: 1
|
|
44
|
-
style: {
|
|
45
|
-
flex: 1
|
|
46
|
-
}
|
|
42
|
+
numberOfLines: 1
|
|
47
43
|
}, title)), /*#__PURE__*/React.createElement(View, {
|
|
48
44
|
style: styles.messageContainer
|
|
49
45
|
}, Boolean(message) && /*#__PURE__*/React.createElement(Text, {
|
|
@@ -53,19 +49,18 @@ const Alert = _ref => {
|
|
|
53
49
|
numberOfLines: 3
|
|
54
50
|
}, message)), /*#__PURE__*/React.createElement(View, {
|
|
55
51
|
style: styles.buttonContainer
|
|
56
|
-
}, buttons.map((
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
} = _ref2;
|
|
52
|
+
}, buttons.map(({
|
|
53
|
+
text = 'OK',
|
|
54
|
+
style = 'default',
|
|
55
|
+
onPress
|
|
56
|
+
}, index) => {
|
|
62
57
|
return /*#__PURE__*/React.createElement(Button, {
|
|
63
58
|
key: text + index,
|
|
64
59
|
variant: 'text',
|
|
65
60
|
style: styles.button,
|
|
66
61
|
onPress: async () => {
|
|
67
62
|
try {
|
|
68
|
-
onPress === null || onPress === void 0
|
|
63
|
+
onPress === null || onPress === void 0 || onPress();
|
|
69
64
|
} finally {
|
|
70
65
|
onHide();
|
|
71
66
|
}
|
|
@@ -81,15 +76,15 @@ const styles = createStyleSheet({
|
|
|
81
76
|
titleContainer: {
|
|
82
77
|
paddingBottom: 16,
|
|
83
78
|
paddingHorizontal: 24,
|
|
84
|
-
|
|
85
|
-
alignItems: 'center'
|
|
79
|
+
alignItems: 'flex-start'
|
|
86
80
|
},
|
|
87
81
|
messageContainer: {
|
|
88
82
|
paddingHorizontal: 24,
|
|
89
|
-
marginBottom: 12
|
|
83
|
+
marginBottom: 12,
|
|
84
|
+
alignItems: 'flex-start'
|
|
90
85
|
},
|
|
91
86
|
button: {
|
|
92
|
-
|
|
87
|
+
marginStart: 8
|
|
93
88
|
},
|
|
94
89
|
buttonContainer: {
|
|
95
90
|
flexDirection: 'row',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","Modal","Text","createStyleSheet","useHeaderStyle","useUIKitTheme","Button","DialogBox","Alert","
|
|
1
|
+
{"version":3,"names":["React","View","Modal","Text","createStyleSheet","useHeaderStyle","useUIKitTheme","Button","DialogBox","Alert","onDismiss","visible","onHide","title","message","buttons","text","statusBarTranslucent","colors","createElement","onClose","backgroundStyle","alignItems","justifyContent","style","styles","container","Boolean","titleContainer","h1","color","ui","dialog","default","none","numberOfLines","messageContainer","subtitle2","body3","buttonContainer","map","onPress","index","key","variant","button","contentColor","destructive","highlight","paddingTop","paddingBottom","paddingHorizontal","marginBottom","marginStart","flexDirection","padding"],"sources":["index.tsx"],"sourcesContent":["import React from 'react';\nimport { AlertButton, View } from 'react-native';\n\nimport Modal from '../../components/Modal';\nimport Text from '../../components/Text';\nimport createStyleSheet from '../../styles/createStyleSheet';\nimport useHeaderStyle from '../../styles/useHeaderStyle';\nimport useUIKitTheme from '../../theme/useUIKitTheme';\nimport Button from '../Button';\nimport DialogBox from '../Dialog/DialogBox';\n\nexport type AlertItem = {\n title?: string;\n message?: string;\n buttons?: AlertButton[];\n};\n\ntype Props = {\n visible: boolean;\n onHide: () => void;\n onDismiss?: () => void;\n} & AlertItem;\nconst Alert = ({ onDismiss, visible, onHide, title = '', message = '', buttons = [{ text: 'OK' }] }: Props) => {\n const { statusBarTranslucent } = useHeaderStyle();\n const { colors } = useUIKitTheme();\n\n return (\n <Modal\n onClose={onHide}\n onDismiss={onDismiss}\n statusBarTranslucent={statusBarTranslucent}\n visible={visible}\n backgroundStyle={{ alignItems: 'center', justifyContent: 'center' }}\n >\n <DialogBox style={styles.container}>\n {Boolean(title) && (\n <View style={styles.titleContainer}>\n <Text h1 color={colors.ui.dialog.default.none.text} numberOfLines={1}>\n {title}\n </Text>\n </View>\n )}\n\n <View style={styles.messageContainer}>\n {Boolean(message) && (\n <Text\n subtitle2={!title}\n body3={Boolean(title)}\n color={!title ? colors.ui.dialog.default.none.text : colors.ui.dialog.default.none.message}\n numberOfLines={3}\n >\n {message}\n </Text>\n )}\n </View>\n\n <View style={styles.buttonContainer}>\n {buttons.map(({ text = 'OK', style = 'default', onPress }, index) => {\n return (\n <Button\n key={text + index}\n variant={'text'}\n style={styles.button}\n onPress={async () => {\n try {\n onPress?.();\n } finally {\n onHide();\n }\n }}\n contentColor={\n style === 'destructive'\n ? colors.ui.dialog.default.none.destructive\n : colors.ui.dialog.default.none.highlight\n }\n >\n {text}\n </Button>\n );\n })}\n </View>\n </DialogBox>\n </Modal>\n );\n};\n\nconst styles = createStyleSheet({\n container: {\n paddingTop: 20,\n },\n titleContainer: {\n paddingBottom: 16,\n paddingHorizontal: 24,\n alignItems: 'flex-start',\n },\n messageContainer: {\n paddingHorizontal: 24,\n marginBottom: 12,\n alignItems: 'flex-start',\n },\n button: {\n marginStart: 8,\n },\n buttonContainer: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'flex-end',\n padding: 12,\n },\n});\n\nexport default Alert;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAAsBC,IAAI,QAAQ,cAAc;AAEhD,OAAOC,KAAK,MAAM,wBAAwB;AAC1C,OAAOC,IAAI,MAAM,uBAAuB;AACxC,OAAOC,gBAAgB,MAAM,+BAA+B;AAC5D,OAAOC,cAAc,MAAM,6BAA6B;AACxD,OAAOC,aAAa,MAAM,2BAA2B;AACrD,OAAOC,MAAM,MAAM,WAAW;AAC9B,OAAOC,SAAS,MAAM,qBAAqB;AAa3C,MAAMC,KAAK,GAAGA,CAAC;EAAEC,SAAS;EAAEC,OAAO;EAAEC,MAAM;EAAEC,KAAK,GAAG,EAAE;EAAEC,OAAO,GAAG,EAAE;EAAEC,OAAO,GAAG,CAAC;IAAEC,IAAI,EAAE;EAAK,CAAC;AAAS,CAAC,KAAK;EAC7G,MAAM;IAAEC;EAAqB,CAAC,GAAGZ,cAAc,CAAC,CAAC;EACjD,MAAM;IAAEa;EAAO,CAAC,GAAGZ,aAAa,CAAC,CAAC;EAElC,oBACEN,KAAA,CAAAmB,aAAA,CAACjB,KAAK;IACJkB,OAAO,EAAER,MAAO;IAChBF,SAAS,EAAEA,SAAU;IACrBO,oBAAoB,EAAEA,oBAAqB;IAC3CN,OAAO,EAAEA,OAAQ;IACjBU,eAAe,EAAE;MAAEC,UAAU,EAAE,QAAQ;MAAEC,cAAc,EAAE;IAAS;EAAE,gBAEpEvB,KAAA,CAAAmB,aAAA,CAACX,SAAS;IAACgB,KAAK,EAAEC,MAAM,CAACC;EAAU,GAChCC,OAAO,CAACd,KAAK,CAAC,iBACbb,KAAA,CAAAmB,aAAA,CAAClB,IAAI;IAACuB,KAAK,EAAEC,MAAM,CAACG;EAAe,gBACjC5B,KAAA,CAAAmB,aAAA,CAAChB,IAAI;IAAC0B,EAAE;IAACC,KAAK,EAAEZ,MAAM,CAACa,EAAE,CAACC,MAAM,CAACC,OAAO,CAACC,IAAI,CAAClB,IAAK;IAACmB,aAAa,EAAE;EAAE,GAClEtB,KACG,CACF,CACP,eAEDb,KAAA,CAAAmB,aAAA,CAAClB,IAAI;IAACuB,KAAK,EAAEC,MAAM,CAACW;EAAiB,GAClCT,OAAO,CAACb,OAAO,CAAC,iBACfd,KAAA,CAAAmB,aAAA,CAAChB,IAAI;IACHkC,SAAS,EAAE,CAACxB,KAAM;IAClByB,KAAK,EAAEX,OAAO,CAACd,KAAK,CAAE;IACtBiB,KAAK,EAAE,CAACjB,KAAK,GAAGK,MAAM,CAACa,EAAE,CAACC,MAAM,CAACC,OAAO,CAACC,IAAI,CAAClB,IAAI,GAAGE,MAAM,CAACa,EAAE,CAACC,MAAM,CAACC,OAAO,CAACC,IAAI,CAACpB,OAAQ;IAC3FqB,aAAa,EAAE;EAAE,GAEhBrB,OACG,CAEJ,CAAC,eAEPd,KAAA,CAAAmB,aAAA,CAAClB,IAAI;IAACuB,KAAK,EAAEC,MAAM,CAACc;EAAgB,GACjCxB,OAAO,CAACyB,GAAG,CAAC,CAAC;IAAExB,IAAI,GAAG,IAAI;IAAEQ,KAAK,GAAG,SAAS;IAAEiB;EAAQ,CAAC,EAAEC,KAAK,KAAK;IACnE,oBACE1C,KAAA,CAAAmB,aAAA,CAACZ,MAAM;MACLoC,GAAG,EAAE3B,IAAI,GAAG0B,KAAM;MAClBE,OAAO,EAAE,MAAO;MAChBpB,KAAK,EAAEC,MAAM,CAACoB,MAAO;MACrBJ,OAAO,EAAE,MAAAA,CAAA,KAAY;QACnB,IAAI;UACFA,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAG,CAAC;QACb,CAAC,SAAS;UACR7B,MAAM,CAAC,CAAC;QACV;MACF,CAAE;MACFkC,YAAY,EACVtB,KAAK,KAAK,aAAa,GACnBN,MAAM,CAACa,EAAE,CAACC,MAAM,CAACC,OAAO,CAACC,IAAI,CAACa,WAAW,GACzC7B,MAAM,CAACa,EAAE,CAACC,MAAM,CAACC,OAAO,CAACC,IAAI,CAACc;IACnC,GAEAhC,IACK,CAAC;EAEb,CAAC,CACG,CACG,CACN,CAAC;AAEZ,CAAC;AAED,MAAMS,MAAM,GAAGrB,gBAAgB,CAAC;EAC9BsB,SAAS,EAAE;IACTuB,UAAU,EAAE;EACd,CAAC;EACDrB,cAAc,EAAE;IACdsB,aAAa,EAAE,EAAE;IACjBC,iBAAiB,EAAE,EAAE;IACrB7B,UAAU,EAAE;EACd,CAAC;EACDc,gBAAgB,EAAE;IAChBe,iBAAiB,EAAE,EAAE;IACrBC,YAAY,EAAE,EAAE;IAChB9B,UAAU,EAAE;EACd,CAAC;EACDuB,MAAM,EAAE;IACNQ,WAAW,EAAE;EACf,CAAC;EACDd,eAAe,EAAE;IACfe,aAAa,EAAE,KAAK;IACpBhC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE,UAAU;IAC1BgC,OAAO,EAAE;EACX;AACF,CAAC,CAAC;AAEF,eAAe9C,KAAK","ignoreList":[]}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { View } from 'react-native';
|
|
3
3
|
const MAX = 4;
|
|
4
|
-
const AvatarGroup =
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
} = _ref;
|
|
4
|
+
const AvatarGroup = ({
|
|
5
|
+
children,
|
|
6
|
+
containerStyle,
|
|
7
|
+
size = 56
|
|
8
|
+
}) => {
|
|
10
9
|
const childAmount = React.Children.count(children);
|
|
11
10
|
if (childAmount === 0) {
|
|
12
11
|
return /*#__PURE__*/React.createElement(View, {
|
|
@@ -29,17 +28,17 @@ const AvatarGroup = _ref => {
|
|
|
29
28
|
containerStyle
|
|
30
29
|
});
|
|
31
30
|
const top = getTopPoint(index, childAmount) * size;
|
|
32
|
-
const
|
|
31
|
+
const start = getStartPoint(index) * size;
|
|
33
32
|
const width = getWidthPoint(index, childAmount) * size;
|
|
34
33
|
const height = getHeightPoint(index, childAmount) * size;
|
|
35
|
-
const
|
|
34
|
+
const innerStart = -getInnerStart(index, childAmount) * size;
|
|
36
35
|
const innerTop = -getInnerTop(childAmount) * size;
|
|
37
36
|
return /*#__PURE__*/React.createElement(View, {
|
|
38
37
|
style: {
|
|
39
38
|
overflow: 'hidden',
|
|
40
39
|
position: 'absolute',
|
|
41
40
|
top,
|
|
42
|
-
|
|
41
|
+
start,
|
|
43
42
|
width,
|
|
44
43
|
height
|
|
45
44
|
}
|
|
@@ -47,7 +46,7 @@ const AvatarGroup = _ref => {
|
|
|
47
46
|
size,
|
|
48
47
|
square: true,
|
|
49
48
|
containerStyle: {
|
|
50
|
-
|
|
49
|
+
start: innerStart,
|
|
51
50
|
top: innerTop
|
|
52
51
|
}
|
|
53
52
|
}));
|
|
@@ -77,11 +76,11 @@ const getTopPoint = (idx, total) => {
|
|
|
77
76
|
if (idx === 0 || idx === 1) return -0.025;
|
|
78
77
|
return 0.525;
|
|
79
78
|
};
|
|
80
|
-
const
|
|
79
|
+
const getStartPoint = idx => {
|
|
81
80
|
if (idx === 0 || idx === 2) return -0.025;
|
|
82
81
|
return 0.525;
|
|
83
82
|
};
|
|
84
|
-
const
|
|
83
|
+
const getInnerStart = (idx, total) => {
|
|
85
84
|
if (total === 3 && idx === 0) return 0;
|
|
86
85
|
return 0.25;
|
|
87
86
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","MAX","AvatarGroup","
|
|
1
|
+
{"version":3,"names":["React","View","MAX","AvatarGroup","children","containerStyle","size","childAmount","Children","count","createElement","style","overflow","width","height","borderRadius","backgroundColor","renderAvatars","_React$Children$map","map","child","index","isValidElement","cloneElement","top","getTopPoint","start","getStartPoint","getWidthPoint","getHeightPoint","innerStart","getInnerStart","innerTop","getInnerTop","position","square","slice","_","total","idx"],"sources":["AvatarGroup.tsx"],"sourcesContent":["import React, { ReactElement } from 'react';\nimport { StyleProp, View, ViewStyle } from 'react-native';\n\nconst MAX = 4;\n\ntype Props = React.PropsWithChildren<{\n size?: number;\n containerStyle?: StyleProp<ViewStyle>;\n}>;\nconst AvatarGroup = ({ children, containerStyle, size = 56 }: Props) => {\n const childAmount = React.Children.count(children);\n\n if (childAmount === 0) {\n return (\n <View\n style={[\n containerStyle,\n {\n overflow: 'hidden',\n width: size,\n height: size,\n borderRadius: size,\n backgroundColor: 'rgba(120,120,120,0.2)',\n },\n ]}\n />\n );\n }\n\n const renderAvatars = () => {\n return (\n React.Children.map(children, (child, index) => {\n if (index + 1 > MAX) return child;\n if (!React.isValidElement(child)) return child;\n\n if (childAmount === 1) return React.cloneElement(child as ReactElement, { size, containerStyle });\n\n const top = getTopPoint(index, childAmount) * size;\n const start = getStartPoint(index) * size;\n const width = getWidthPoint(index, childAmount) * size;\n const height = getHeightPoint(index, childAmount) * size;\n const innerStart = -getInnerStart(index, childAmount) * size;\n const innerTop = -getInnerTop(childAmount) * size;\n\n return (\n <View style={{ overflow: 'hidden', position: 'absolute', top, start, width, height }}>\n {React.cloneElement(child as ReactElement, {\n size,\n square: true,\n containerStyle: { start: innerStart, top: innerTop },\n })}\n </View>\n );\n })?.slice(0, 4) ?? []\n );\n };\n\n return (\n <View style={[containerStyle, { overflow: 'hidden', width: size, height: size, borderRadius: size }]}>\n {renderAvatars()}\n </View>\n );\n};\n\nconst getHeightPoint = (_: number, total: number) => {\n if (total === 2) return 1;\n return 0.5;\n};\nconst getWidthPoint = (idx: number, total: number) => {\n if (total === 3 && idx === 0) return 1;\n return 0.5;\n};\nconst getTopPoint = (idx: number, total: number) => {\n if (total === 2) return 0;\n if (total === 3 && idx === 0) return -0.025;\n if (total === 3 && idx !== 0) return 0.525;\n if (idx === 0 || idx === 1) return -0.025;\n return 0.525;\n};\nconst getStartPoint = (idx: number) => {\n if (idx === 0 || idx === 2) return -0.025;\n return 0.525;\n};\nconst getInnerStart = (idx: number, total: number) => {\n if (total === 3 && idx === 0) return 0;\n return 0.25;\n};\nconst getInnerTop = (total: number) => {\n if (total === 2) return 0;\n return 0.25;\n};\n\nexport default AvatarGroup;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAwB,OAAO;AAC3C,SAAoBC,IAAI,QAAmB,cAAc;AAEzD,MAAMC,GAAG,GAAG,CAAC;AAMb,MAAMC,WAAW,GAAGA,CAAC;EAAEC,QAAQ;EAAEC,cAAc;EAAEC,IAAI,GAAG;AAAU,CAAC,KAAK;EACtE,MAAMC,WAAW,GAAGP,KAAK,CAACQ,QAAQ,CAACC,KAAK,CAACL,QAAQ,CAAC;EAElD,IAAIG,WAAW,KAAK,CAAC,EAAE;IACrB,oBACEP,KAAA,CAAAU,aAAA,CAACT,IAAI;MACHU,KAAK,EAAE,CACLN,cAAc,EACd;QACEO,QAAQ,EAAE,QAAQ;QAClBC,KAAK,EAAEP,IAAI;QACXQ,MAAM,EAAER,IAAI;QACZS,YAAY,EAAET,IAAI;QAClBU,eAAe,EAAE;MACnB,CAAC;IACD,CACH,CAAC;EAEN;EAEA,MAAMC,aAAa,GAAGA,CAAA,KAAM;IAAA,IAAAC,mBAAA;IAC1B,OACE,EAAAA,mBAAA,GAAAlB,KAAK,CAACQ,QAAQ,CAACW,GAAG,CAACf,QAAQ,EAAE,CAACgB,KAAK,EAAEC,KAAK,KAAK;MAC7C,IAAIA,KAAK,GAAG,CAAC,GAAGnB,GAAG,EAAE,OAAOkB,KAAK;MACjC,IAAI,eAACpB,KAAK,CAACsB,cAAc,CAACF,KAAK,CAAC,EAAE,OAAOA,KAAK;MAE9C,IAAIb,WAAW,KAAK,CAAC,EAAE,oBAAOP,KAAK,CAACuB,YAAY,CAACH,KAAK,EAAkB;QAAEd,IAAI;QAAED;MAAe,CAAC,CAAC;MAEjG,MAAMmB,GAAG,GAAGC,WAAW,CAACJ,KAAK,EAAEd,WAAW,CAAC,GAAGD,IAAI;MAClD,MAAMoB,KAAK,GAAGC,aAAa,CAACN,KAAK,CAAC,GAAGf,IAAI;MACzC,MAAMO,KAAK,GAAGe,aAAa,CAACP,KAAK,EAAEd,WAAW,CAAC,GAAGD,IAAI;MACtD,MAAMQ,MAAM,GAAGe,cAAc,CAACR,KAAK,EAAEd,WAAW,CAAC,GAAGD,IAAI;MACxD,MAAMwB,UAAU,GAAG,CAACC,aAAa,CAACV,KAAK,EAAEd,WAAW,CAAC,GAAGD,IAAI;MAC5D,MAAM0B,QAAQ,GAAG,CAACC,WAAW,CAAC1B,WAAW,CAAC,GAAGD,IAAI;MAEjD,oBACEN,KAAA,CAAAU,aAAA,CAACT,IAAI;QAACU,KAAK,EAAE;UAAEC,QAAQ,EAAE,QAAQ;UAAEsB,QAAQ,EAAE,UAAU;UAAEV,GAAG;UAAEE,KAAK;UAAEb,KAAK;UAAEC;QAAO;MAAE,gBAClFd,KAAK,CAACuB,YAAY,CAACH,KAAK,EAAkB;QACzCd,IAAI;QACJ6B,MAAM,EAAE,IAAI;QACZ9B,cAAc,EAAE;UAAEqB,KAAK,EAAEI,UAAU;UAAEN,GAAG,EAAEQ;QAAS;MACrD,CAAC,CACG,CAAC;IAEX,CAAC,CAAC,cAAAd,mBAAA,uBAtBFA,mBAAA,CAsBIkB,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,KAAI,EAAE;EAEzB,CAAC;EAED,oBACEpC,KAAA,CAAAU,aAAA,CAACT,IAAI;IAACU,KAAK,EAAE,CAACN,cAAc,EAAE;MAAEO,QAAQ,EAAE,QAAQ;MAAEC,KAAK,EAAEP,IAAI;MAAEQ,MAAM,EAAER,IAAI;MAAES,YAAY,EAAET;IAAK,CAAC;EAAE,GAClGW,aAAa,CAAC,CACX,CAAC;AAEX,CAAC;AAED,MAAMY,cAAc,GAAGA,CAACQ,CAAS,EAAEC,KAAa,KAAK;EACnD,IAAIA,KAAK,KAAK,CAAC,EAAE,OAAO,CAAC;EACzB,OAAO,GAAG;AACZ,CAAC;AACD,MAAMV,aAAa,GAAGA,CAACW,GAAW,EAAED,KAAa,KAAK;EACpD,IAAIA,KAAK,KAAK,CAAC,IAAIC,GAAG,KAAK,CAAC,EAAE,OAAO,CAAC;EACtC,OAAO,GAAG;AACZ,CAAC;AACD,MAAMd,WAAW,GAAGA,CAACc,GAAW,EAAED,KAAa,KAAK;EAClD,IAAIA,KAAK,KAAK,CAAC,EAAE,OAAO,CAAC;EACzB,IAAIA,KAAK,KAAK,CAAC,IAAIC,GAAG,KAAK,CAAC,EAAE,OAAO,CAAC,KAAK;EAC3C,IAAID,KAAK,KAAK,CAAC,IAAIC,GAAG,KAAK,CAAC,EAAE,OAAO,KAAK;EAC1C,IAAIA,GAAG,KAAK,CAAC,IAAIA,GAAG,KAAK,CAAC,EAAE,OAAO,CAAC,KAAK;EACzC,OAAO,KAAK;AACd,CAAC;AACD,MAAMZ,aAAa,GAAIY,GAAW,IAAK;EACrC,IAAIA,GAAG,KAAK,CAAC,IAAIA,GAAG,KAAK,CAAC,EAAE,OAAO,CAAC,KAAK;EACzC,OAAO,KAAK;AACd,CAAC;AACD,MAAMR,aAAa,GAAGA,CAACQ,GAAW,EAAED,KAAa,KAAK;EACpD,IAAIA,KAAK,KAAK,CAAC,IAAIC,GAAG,KAAK,CAAC,EAAE,OAAO,CAAC;EACtC,OAAO,IAAI;AACb,CAAC;AACD,MAAMN,WAAW,GAAIK,KAAa,IAAK;EACrC,IAAIA,KAAK,KAAK,CAAC,EAAE,OAAO,CAAC;EACzB,OAAO,IAAI;AACb,CAAC;AAED,eAAenC,WAAW","ignoreList":[]}
|
|
@@ -3,13 +3,12 @@ import { View } from 'react-native';
|
|
|
3
3
|
import Icon from '../../components/Icon';
|
|
4
4
|
import createStyleSheet from '../../styles/createStyleSheet';
|
|
5
5
|
import useUIKitTheme from '../../theme/useUIKitTheme';
|
|
6
|
-
const AvatarIcon =
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
} = _ref;
|
|
6
|
+
const AvatarIcon = ({
|
|
7
|
+
size = 56,
|
|
8
|
+
icon,
|
|
9
|
+
containerStyle,
|
|
10
|
+
backgroundColor
|
|
11
|
+
}) => {
|
|
13
12
|
const {
|
|
14
13
|
colors,
|
|
15
14
|
palette
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","Icon","createStyleSheet","useUIKitTheme","AvatarIcon","
|
|
1
|
+
{"version":3,"names":["React","View","Icon","createStyleSheet","useUIKitTheme","AvatarIcon","size","icon","containerStyle","backgroundColor","colors","palette","createElement","style","styles","container","width","height","borderRadius","background300","color","onBackgroundReverse01","overflow","alignItems","justifyContent"],"sources":["AvatarIcon.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleProp, View, ViewStyle } from 'react-native';\n\nimport Icon from '../../components/Icon';\nimport createStyleSheet from '../../styles/createStyleSheet';\nimport useUIKitTheme from '../../theme/useUIKitTheme';\n\ntype Props = {\n icon: keyof typeof Icon.Assets;\n size?: number;\n backgroundColor?: string;\n containerStyle?: StyleProp<ViewStyle>;\n};\nconst AvatarIcon = ({ size = 56, icon, containerStyle, backgroundColor }: Props) => {\n const { colors, palette } = useUIKitTheme();\n return (\n <View\n style={[\n styles.container,\n {\n width: size,\n height: size,\n borderRadius: size / 2,\n backgroundColor: backgroundColor ?? palette.background300,\n },\n containerStyle,\n ]}\n >\n <Icon icon={icon} size={size / 2} color={colors.onBackgroundReverse01} />\n </View>\n );\n};\nconst styles = createStyleSheet({\n container: {\n overflow: 'hidden',\n alignItems: 'center',\n justifyContent: 'center',\n },\n});\nexport default AvatarIcon;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAAoBC,IAAI,QAAmB,cAAc;AAEzD,OAAOC,IAAI,MAAM,uBAAuB;AACxC,OAAOC,gBAAgB,MAAM,+BAA+B;AAC5D,OAAOC,aAAa,MAAM,2BAA2B;AAQrD,MAAMC,UAAU,GAAGA,CAAC;EAAEC,IAAI,GAAG,EAAE;EAAEC,IAAI;EAAEC,cAAc;EAAEC;AAAuB,CAAC,KAAK;EAClF,MAAM;IAAEC,MAAM;IAAEC;EAAQ,CAAC,GAAGP,aAAa,CAAC,CAAC;EAC3C,oBACEJ,KAAA,CAAAY,aAAA,CAACX,IAAI;IACHY,KAAK,EAAE,CACLC,MAAM,CAACC,SAAS,EAChB;MACEC,KAAK,EAAEV,IAAI;MACXW,MAAM,EAAEX,IAAI;MACZY,YAAY,EAAEZ,IAAI,GAAG,CAAC;MACtBG,eAAe,EAAEA,eAAe,IAAIE,OAAO,CAACQ;IAC9C,CAAC,EACDX,cAAc;EACd,gBAEFR,KAAA,CAAAY,aAAA,CAACV,IAAI;IAACK,IAAI,EAAEA,IAAK;IAACD,IAAI,EAAEA,IAAI,GAAG,CAAE;IAACc,KAAK,EAAEV,MAAM,CAACW;EAAsB,CAAE,CACpE,CAAC;AAEX,CAAC;AACD,MAAMP,MAAM,GAAGX,gBAAgB,CAAC;EAC9BY,SAAS,EAAE;IACTO,QAAQ,EAAE,QAAQ;IAClBC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB;AACF,CAAC,CAAC;AACF,eAAenB,UAAU","ignoreList":[]}
|
|
@@ -7,15 +7,14 @@ const DEFAULT_BORDER_WIDTH = 2;
|
|
|
7
7
|
const DEFAULT_AVATAR_GAP = -4;
|
|
8
8
|
const DEFAULT_AVATAR_SIZE = 26;
|
|
9
9
|
const DEFAULT_REMAINS_MAX = 99;
|
|
10
|
-
const AvatarStack =
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
} = _ref;
|
|
10
|
+
const AvatarStack = ({
|
|
11
|
+
children,
|
|
12
|
+
containerStyle,
|
|
13
|
+
styles,
|
|
14
|
+
maxAvatar = DEFAULT_MAX,
|
|
15
|
+
size = DEFAULT_AVATAR_SIZE,
|
|
16
|
+
avatarGap = DEFAULT_AVATAR_GAP
|
|
17
|
+
}) => {
|
|
19
18
|
const {
|
|
20
19
|
colors,
|
|
21
20
|
palette,
|
|
@@ -43,7 +42,7 @@ const AvatarStack = _ref => {
|
|
|
43
42
|
return childrenArray.slice(0, maxAvatar).map((child, index) => /*#__PURE__*/React.cloneElement(child, {
|
|
44
43
|
size: actualSize,
|
|
45
44
|
containerStyle: {
|
|
46
|
-
|
|
45
|
+
start: actualGap * index,
|
|
47
46
|
borderWidth: avatarStyles.borderWidth,
|
|
48
47
|
borderColor: avatarStyles.borderColor
|
|
49
48
|
}
|
|
@@ -53,7 +52,7 @@ const AvatarStack = _ref => {
|
|
|
53
52
|
if (!shouldRenderRemains) return null;
|
|
54
53
|
return /*#__PURE__*/React.createElement(View, {
|
|
55
54
|
style: [avatarStyles, {
|
|
56
|
-
|
|
55
|
+
start: actualGap * maxAvatar,
|
|
57
56
|
width: actualSize,
|
|
58
57
|
height: actualSize,
|
|
59
58
|
borderRadius: actualSize / 2,
|
|
@@ -78,7 +77,7 @@ const AvatarStack = _ref => {
|
|
|
78
77
|
};
|
|
79
78
|
return /*#__PURE__*/React.createElement(View, {
|
|
80
79
|
style: [containerStyle, {
|
|
81
|
-
|
|
80
|
+
start: -avatarStyles.borderWidth,
|
|
82
81
|
flexDirection: 'row',
|
|
83
82
|
width: calculateWidth()
|
|
84
83
|
}]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","Text","useUIKitTheme","DEFAULT_MAX","DEFAULT_BORDER_WIDTH","DEFAULT_AVATAR_GAP","DEFAULT_AVATAR_SIZE","DEFAULT_REMAINS_MAX","AvatarStack","
|
|
1
|
+
{"version":3,"names":["React","View","Text","useUIKitTheme","DEFAULT_MAX","DEFAULT_BORDER_WIDTH","DEFAULT_AVATAR_GAP","DEFAULT_AVATAR_SIZE","DEFAULT_REMAINS_MAX","AvatarStack","children","containerStyle","styles","maxAvatar","size","avatarGap","colors","palette","select","defaultStyles","borderWidth","borderColor","background","remainsTextColor","onBackground02","remainsBackgroundColor","light","background100","dark","background600","avatarStyles","childrenArray","Children","toArray","filter","it","isValidElement","remains","length","shouldRenderRemains","actualSize","actualGap","renderAvatars","slice","map","child","index","cloneElement","start","renderRemainsCount","createElement","style","width","height","borderRadius","alignItems","justifyContent","backgroundColor","color","fontSize","caption4","Math","min","calculateWidth","widthEach","avatarCountOffset","avatarCount","count","flexDirection"],"sources":["AvatarStack.tsx"],"sourcesContent":["import React, { ReactElement } from 'react';\nimport { StyleProp, View, ViewStyle } from 'react-native';\n\nimport Text from '../../components/Text';\nimport useUIKitTheme from '../../theme/useUIKitTheme';\n\nconst DEFAULT_MAX = 3;\nconst DEFAULT_BORDER_WIDTH = 2;\nconst DEFAULT_AVATAR_GAP = -4;\nconst DEFAULT_AVATAR_SIZE = 26;\nconst DEFAULT_REMAINS_MAX = 99;\n\ntype Props = React.PropsWithChildren<{\n size?: number;\n containerStyle?: StyleProp<ViewStyle>;\n maxAvatar?: number;\n avatarGap?: number;\n styles?: {\n borderWidth?: number;\n borderColor?: string;\n remainsTextColor?: string;\n remainsBackgroundColor?: string;\n };\n}>;\n\nconst AvatarStack = ({\n children,\n containerStyle,\n styles,\n maxAvatar = DEFAULT_MAX,\n size = DEFAULT_AVATAR_SIZE,\n avatarGap = DEFAULT_AVATAR_GAP,\n}: Props) => {\n const { colors, palette, select } = useUIKitTheme();\n const defaultStyles = {\n borderWidth: DEFAULT_BORDER_WIDTH,\n borderColor: colors.background,\n remainsTextColor: colors.onBackground02,\n remainsBackgroundColor: select({ light: palette.background100, dark: palette.background600 }),\n };\n const avatarStyles = { ...defaultStyles, ...styles };\n\n const childrenArray = React.Children.toArray(children).filter((it) => React.isValidElement(it));\n const remains = childrenArray.length - maxAvatar;\n const shouldRenderRemains = remains > 0;\n\n const actualSize = size + avatarStyles.borderWidth * 2;\n const actualGap = avatarGap - avatarStyles.borderWidth;\n\n const renderAvatars = () => {\n return childrenArray.slice(0, maxAvatar).map((child, index) =>\n React.cloneElement(child as ReactElement, {\n size: actualSize,\n containerStyle: {\n start: actualGap * index,\n borderWidth: avatarStyles.borderWidth,\n borderColor: avatarStyles.borderColor,\n },\n }),\n );\n };\n\n const renderRemainsCount = () => {\n if (!shouldRenderRemains) return null;\n return (\n <View\n style={[\n avatarStyles,\n {\n start: actualGap * maxAvatar,\n width: actualSize,\n height: actualSize,\n borderRadius: actualSize / 2,\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: avatarStyles.remainsBackgroundColor,\n },\n ]}\n >\n <Text style={{ color: avatarStyles.remainsTextColor, fontSize: 8 }} caption4>\n {`+${Math.min(remains, DEFAULT_REMAINS_MAX)}`}\n </Text>\n </View>\n );\n };\n\n const calculateWidth = () => {\n const widthEach = actualSize + actualGap;\n const avatarCountOffset = shouldRenderRemains ? 1 : 0;\n const avatarCount = shouldRenderRemains ? maxAvatar : childrenArray.length;\n const count = avatarCount + avatarCountOffset;\n return widthEach * count + avatarStyles.borderWidth;\n };\n\n return (\n <View style={[containerStyle, { start: -avatarStyles.borderWidth, flexDirection: 'row', width: calculateWidth() }]}>\n {renderAvatars()}\n {renderRemainsCount()}\n </View>\n );\n};\n\nexport default AvatarStack;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -8,14 +8,13 @@ import useUIKitTheme from '../../theme/useUIKitTheme';
|
|
|
8
8
|
import AvatarGroup from './AvatarGroup';
|
|
9
9
|
import AvatarIcon from './AvatarIcon';
|
|
10
10
|
import AvatarStack from './AvatarStack';
|
|
11
|
-
const Avatar =
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
} = _ref;
|
|
11
|
+
const Avatar = ({
|
|
12
|
+
uri,
|
|
13
|
+
square,
|
|
14
|
+
muted = false,
|
|
15
|
+
size = 56,
|
|
16
|
+
containerStyle
|
|
17
|
+
}) => {
|
|
19
18
|
const {
|
|
20
19
|
colors,
|
|
21
20
|
palette
|
|
@@ -43,10 +42,9 @@ const Avatar = _ref => {
|
|
|
43
42
|
size: size
|
|
44
43
|
}));
|
|
45
44
|
};
|
|
46
|
-
const MutedOverlay =
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
} = _ref2;
|
|
45
|
+
const MutedOverlay = ({
|
|
46
|
+
size
|
|
47
|
+
}) => {
|
|
50
48
|
const {
|
|
51
49
|
palette
|
|
52
50
|
} = useUIKitTheme();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useState","StyleSheet","View","conditionChaining","Icon","Image","createStyleSheet","useUIKitTheme","AvatarGroup","AvatarIcon","AvatarStack","Avatar","
|
|
1
|
+
{"version":3,"names":["React","useState","StyleSheet","View","conditionChaining","Icon","Image","createStyleSheet","useUIKitTheme","AvatarGroup","AvatarIcon","AvatarStack","Avatar","uri","square","muted","size","containerStyle","colors","palette","loadFailure","setLoadFailure","createElement","style","styles","container","width","height","borderRadius","backgroundColor","background300","Boolean","onError","source","resizeMode","absoluteFill","icon","color","onBackgroundReverse01","MutedOverlay","primary300","opacity","onBackgroundDark01","alignItems","justifyContent","overflow","Object","assign","Group","Stack"],"sources":["index.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { StyleProp, StyleSheet, View, ViewStyle } from 'react-native';\n\nimport { conditionChaining } from '@sendbird/uikit-utils';\n\nimport Icon from '../../components/Icon';\nimport Image from '../../components/Image';\nimport createStyleSheet from '../../styles/createStyleSheet';\nimport useUIKitTheme from '../../theme/useUIKitTheme';\nimport AvatarGroup from './AvatarGroup';\nimport AvatarIcon from './AvatarIcon';\nimport AvatarStack from './AvatarStack';\n\ntype Props = {\n uri?: string;\n size?: number;\n square?: boolean;\n muted?: boolean;\n containerStyle?: StyleProp<ViewStyle>;\n};\n\nconst Avatar = ({ uri, square, muted = false, size = 56, containerStyle }: Props) => {\n const { colors, palette } = useUIKitTheme();\n const [loadFailure, setLoadFailure] = useState(false);\n\n return (\n <View\n style={[\n styles.container,\n { width: size, height: size, borderRadius: square ? 0 : size / 2, backgroundColor: palette.background300 },\n containerStyle,\n ]}\n >\n {conditionChaining(\n [Boolean(uri) && !loadFailure],\n [\n <Image\n onError={() => setLoadFailure(true)}\n source={{ uri }}\n resizeMode={'cover'}\n style={StyleSheet.absoluteFill}\n />,\n <Icon icon={'user'} size={size / 2} color={colors.onBackgroundReverse01} />,\n ],\n )}\n {muted && <MutedOverlay size={size} />}\n </View>\n );\n};\n\nconst MutedOverlay = ({ size }: { size: number }) => {\n const { palette } = useUIKitTheme();\n return (\n <View style={[styles.container, StyleSheet.absoluteFill]}>\n <View style={[StyleSheet.absoluteFill, { backgroundColor: palette.primary300, opacity: 0.5 }]} />\n <Icon color={palette.onBackgroundDark01} icon={'mute'} size={size * 0.72} />\n </View>\n );\n};\n\nconst styles = createStyleSheet({\n container: {\n alignItems: 'center',\n justifyContent: 'center',\n overflow: 'hidden',\n },\n});\n\nexport default Object.assign(Avatar, {\n Group: AvatarGroup,\n Icon: AvatarIcon,\n Stack: AvatarStack,\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,15 +4,14 @@ import { truncatedCount } from '@sendbird/uikit-utils';
|
|
|
4
4
|
import Text from '../../components/Text';
|
|
5
5
|
import createStyleSheet from '../../styles/createStyleSheet';
|
|
6
6
|
import useUIKitTheme from '../../theme/useUIKitTheme';
|
|
7
|
-
const Badge =
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
} = _ref;
|
|
7
|
+
const Badge = ({
|
|
8
|
+
count,
|
|
9
|
+
maxCount,
|
|
10
|
+
badgeColor,
|
|
11
|
+
textColor,
|
|
12
|
+
style,
|
|
13
|
+
size = 'default'
|
|
14
|
+
}) => {
|
|
16
15
|
const {
|
|
17
16
|
colors
|
|
18
17
|
} = useUIKitTheme();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Platform","View","truncatedCount","Text","createStyleSheet","useUIKitTheme","Badge","
|
|
1
|
+
{"version":3,"names":["React","Platform","View","truncatedCount","Text","createStyleSheet","useUIKitTheme","Badge","count","maxCount","badgeColor","textColor","style","size","colors","isSmall","createElement","styles","badgeSmall","badgeDefault","backgroundColor","ui","badge","default","none","background","badgeSmallPadding","badgeDefaultPadding","caption1","color","text","paddingTop","select","ios","android","minWidth","minHeight","borderRadius","alignItems","justifyContent","paddingHorizontal"],"sources":["index.tsx"],"sourcesContent":["import React from 'react';\nimport { Platform, StyleProp, View, ViewStyle } from 'react-native';\n\nimport { truncatedCount } from '@sendbird/uikit-utils';\n\nimport Text from '../../components/Text';\nimport createStyleSheet from '../../styles/createStyleSheet';\nimport useUIKitTheme from '../../theme/useUIKitTheme';\n\ntype Props = {\n count: number;\n maxCount?: number;\n badgeColor?: string;\n textColor?: string;\n style?: StyleProp<ViewStyle>;\n size?: 'small' | 'default';\n};\n\nconst Badge = ({ count, maxCount, badgeColor, textColor, style, size = 'default' }: Props) => {\n const { colors } = useUIKitTheme();\n const isSmall = size === 'small';\n return (\n <View\n style={[\n isSmall ? styles.badgeSmall : styles.badgeDefault,\n { backgroundColor: badgeColor ?? colors.ui.badge.default.none.background },\n count >= 10 && (isSmall ? styles.badgeSmallPadding : styles.badgeDefaultPadding),\n style,\n ]}\n >\n <Text caption1 color={textColor ?? colors.ui.badge.default.none.text}>\n {truncatedCount(count, maxCount)}\n </Text>\n </View>\n );\n};\n\nconst styles = createStyleSheet({\n badgeDefault: {\n paddingTop: Platform.select({ ios: 2, android: 2 }),\n minWidth: 20,\n minHeight: 20,\n borderRadius: 99,\n alignItems: 'center',\n justifyContent: 'center',\n },\n badgeDefaultPadding: {\n paddingHorizontal: 8,\n },\n badgeSmall: {\n paddingTop: Platform.select({ ios: 3, android: 2 }),\n minWidth: 16,\n minHeight: 16,\n borderRadius: 99,\n alignItems: 'center',\n justifyContent: 'center',\n },\n badgeSmallPadding: {\n paddingHorizontal: 4,\n },\n});\n\nexport default Badge;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,QAAQ,EAAaC,IAAI,QAAmB,cAAc;AAEnE,SAASC,cAAc,QAAQ,uBAAuB;AAEtD,OAAOC,IAAI,MAAM,uBAAuB;AACxC,OAAOC,gBAAgB,MAAM,+BAA+B;AAC5D,OAAOC,aAAa,MAAM,2BAA2B;AAWrD,MAAMC,KAAK,GAAGA,CAAC;EAAEC,KAAK;EAAEC,QAAQ;EAAEC,UAAU;EAAEC,SAAS;EAAEC,KAAK;EAAEC,IAAI,GAAG;AAAiB,CAAC,KAAK;EAC5F,MAAM;IAAEC;EAAO,CAAC,GAAGR,aAAa,CAAC,CAAC;EAClC,MAAMS,OAAO,GAAGF,IAAI,KAAK,OAAO;EAChC,oBACEb,KAAA,CAAAgB,aAAA,CAACd,IAAI;IACHU,KAAK,EAAE,CACLG,OAAO,GAAGE,MAAM,CAACC,UAAU,GAAGD,MAAM,CAACE,YAAY,EACjD;MAAEC,eAAe,EAAEV,UAAU,IAAII,MAAM,CAACO,EAAE,CAACC,KAAK,CAACC,OAAO,CAACC,IAAI,CAACC;IAAW,CAAC,EAC1EjB,KAAK,IAAI,EAAE,KAAKO,OAAO,GAAGE,MAAM,CAACS,iBAAiB,GAAGT,MAAM,CAACU,mBAAmB,CAAC,EAChFf,KAAK;EACL,gBAEFZ,KAAA,CAAAgB,aAAA,CAACZ,IAAI;IAACwB,QAAQ;IAACC,KAAK,EAAElB,SAAS,IAAIG,MAAM,CAACO,EAAE,CAACC,KAAK,CAACC,OAAO,CAACC,IAAI,CAACM;EAAK,GAClE3B,cAAc,CAACK,KAAK,EAAEC,QAAQ,CAC3B,CACF,CAAC;AAEX,CAAC;AAED,MAAMQ,MAAM,GAAGZ,gBAAgB,CAAC;EAC9Bc,YAAY,EAAE;IACZY,UAAU,EAAE9B,QAAQ,CAAC+B,MAAM,CAAC;MAAEC,GAAG,EAAE,CAAC;MAAEC,OAAO,EAAE;IAAE,CAAC,CAAC;IACnDC,QAAQ,EAAE,EAAE;IACZC,SAAS,EAAE,EAAE;IACbC,YAAY,EAAE,EAAE;IAChBC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB,CAAC;EACDZ,mBAAmB,EAAE;IACnBa,iBAAiB,EAAE;EACrB,CAAC;EACDtB,UAAU,EAAE;IACVa,UAAU,EAAE9B,QAAQ,CAAC+B,MAAM,CAAC;MAAEC,GAAG,EAAE,CAAC;MAAEC,OAAO,EAAE;IAAE,CAAC,CAAC;IACnDC,QAAQ,EAAE,EAAE;IACZC,SAAS,EAAE,EAAE;IACbC,YAAY,EAAE,EAAE;IAChBC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB,CAAC;EACDb,iBAAiB,EAAE;IACjBc,iBAAiB,EAAE;EACrB;AACF,CAAC,CAAC;AAEF,eAAejC,KAAK","ignoreList":[]}
|