@sendbird/uikit-react-native-foundation 3.0.4 → 3.1.1
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/components/Icon/index.js +12 -0
- package/lib/commonjs/components/Icon/index.js.map +1 -1
- package/lib/commonjs/components/VideoThumbnail/index.js +115 -0
- package/lib/commonjs/components/VideoThumbnail/index.js.map +1 -0
- package/lib/commonjs/index.js +7 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/theme/DarkUIKitTheme.js +2 -1
- package/lib/commonjs/theme/DarkUIKitTheme.js.map +1 -1
- package/lib/commonjs/theme/LightUIKitTheme.js +2 -1
- package/lib/commonjs/theme/LightUIKitTheme.js.map +1 -1
- package/lib/commonjs/types.js.map +1 -1
- package/lib/commonjs/ui/BottomSheet/index.js +1 -0
- package/lib/commonjs/ui/BottomSheet/index.js.map +1 -1
- package/lib/commonjs/ui/Dialog/DialogSheet.js +4 -3
- package/lib/commonjs/ui/Dialog/DialogSheet.js.map +1 -1
- package/lib/commonjs/ui/GroupChannelMessage/Message.file.image.js +1 -1
- package/lib/commonjs/ui/GroupChannelMessage/Message.file.image.js.map +1 -1
- package/lib/commonjs/ui/GroupChannelMessage/Message.file.js +6 -9
- package/lib/commonjs/ui/GroupChannelMessage/Message.file.js.map +1 -1
- package/lib/commonjs/ui/GroupChannelMessage/Message.file.video.js +10 -72
- package/lib/commonjs/ui/GroupChannelMessage/Message.file.video.js.map +1 -1
- package/lib/commonjs/ui/GroupChannelMessage/MessageContainer.js +7 -5
- package/lib/commonjs/ui/GroupChannelMessage/MessageContainer.js.map +1 -1
- package/lib/commonjs/ui/GroupChannelMessage/MessageOpenGraph.js +2 -2
- package/lib/commonjs/ui/GroupChannelMessage/MessageOpenGraph.js.map +1 -1
- package/lib/commonjs/ui/GroupChannelMessage/index.js.map +1 -1
- package/lib/commonjs/ui/OpenChannelMessage/Message.file.image.js +1 -1
- package/lib/commonjs/ui/OpenChannelMessage/Message.file.image.js.map +1 -1
- package/lib/commonjs/ui/OpenChannelMessage/Message.file.js +2 -8
- package/lib/commonjs/ui/OpenChannelMessage/Message.file.js.map +1 -1
- package/lib/commonjs/ui/OpenChannelMessage/Message.file.video.js +11 -78
- package/lib/commonjs/ui/OpenChannelMessage/Message.file.video.js.map +1 -1
- package/lib/commonjs/ui/OpenChannelMessage/Message.user.og.js +1 -1
- package/lib/commonjs/ui/OpenChannelMessage/Message.user.og.js.map +1 -1
- package/lib/module/components/Icon/index.js +12 -0
- package/lib/module/components/Icon/index.js.map +1 -1
- package/lib/module/components/VideoThumbnail/index.js +105 -0
- package/lib/module/components/VideoThumbnail/index.js.map +1 -0
- package/lib/module/index.js +1 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/theme/DarkUIKitTheme.js +2 -1
- package/lib/module/theme/DarkUIKitTheme.js.map +1 -1
- package/lib/module/theme/LightUIKitTheme.js +2 -1
- package/lib/module/theme/LightUIKitTheme.js.map +1 -1
- package/lib/module/types.js.map +1 -1
- package/lib/module/ui/BottomSheet/index.js +1 -0
- package/lib/module/ui/BottomSheet/index.js.map +1 -1
- package/lib/module/ui/Dialog/DialogSheet.js +4 -3
- package/lib/module/ui/Dialog/DialogSheet.js.map +1 -1
- package/lib/module/ui/GroupChannelMessage/Message.file.image.js +2 -2
- package/lib/module/ui/GroupChannelMessage/Message.file.image.js.map +1 -1
- package/lib/module/ui/GroupChannelMessage/Message.file.js +7 -10
- package/lib/module/ui/GroupChannelMessage/Message.file.js.map +1 -1
- package/lib/module/ui/GroupChannelMessage/Message.file.video.js +11 -71
- package/lib/module/ui/GroupChannelMessage/Message.file.video.js.map +1 -1
- package/lib/module/ui/GroupChannelMessage/MessageContainer.js +7 -5
- package/lib/module/ui/GroupChannelMessage/MessageContainer.js.map +1 -1
- package/lib/module/ui/GroupChannelMessage/MessageOpenGraph.js +2 -2
- package/lib/module/ui/GroupChannelMessage/MessageOpenGraph.js.map +1 -1
- package/lib/module/ui/GroupChannelMessage/index.js.map +1 -1
- package/lib/module/ui/OpenChannelMessage/Message.file.image.js +2 -2
- package/lib/module/ui/OpenChannelMessage/Message.file.image.js.map +1 -1
- package/lib/module/ui/OpenChannelMessage/Message.file.js +2 -8
- package/lib/module/ui/OpenChannelMessage/Message.file.js.map +1 -1
- package/lib/module/ui/OpenChannelMessage/Message.file.video.js +12 -77
- package/lib/module/ui/OpenChannelMessage/Message.file.video.js.map +1 -1
- package/lib/module/ui/OpenChannelMessage/Message.user.og.js +1 -1
- package/lib/module/ui/OpenChannelMessage/Message.user.og.js.map +1 -1
- package/lib/typescript/src/components/Icon/index.d.ts +5 -0
- package/lib/typescript/src/components/VideoThumbnail/index.d.ts +13 -0
- package/lib/typescript/src/index.d.ts +1 -0
- package/lib/typescript/src/types.d.ts +1 -1
- package/lib/typescript/src/ui/BottomSheet/index.d.ts +1 -0
- package/lib/typescript/src/ui/Dialog/DialogSheet.d.ts +2 -1
- package/lib/typescript/src/ui/GroupChannelMessage/MessageContainer.d.ts +2 -2
- package/lib/typescript/src/ui/GroupChannelMessage/MessageOpenGraph.d.ts +1 -1
- package/lib/typescript/src/ui/GroupChannelMessage/index.d.ts +8 -0
- package/package.json +3 -3
- package/src/components/Icon/index.tsx +11 -7
- package/src/components/VideoThumbnail/index.tsx +107 -0
- package/src/index.ts +1 -0
- package/src/theme/DarkUIKitTheme.ts +1 -0
- package/src/theme/LightUIKitTheme.ts +1 -0
- package/src/types.ts +1 -1
- package/src/ui/BottomSheet/index.tsx +2 -0
- package/src/ui/Dialog/DialogSheet.tsx +6 -3
- package/src/ui/GroupChannelMessage/Message.file.image.tsx +2 -2
- package/src/ui/GroupChannelMessage/Message.file.tsx +4 -6
- package/src/ui/GroupChannelMessage/Message.file.video.tsx +12 -60
- package/src/ui/GroupChannelMessage/MessageContainer.tsx +18 -13
- package/src/ui/GroupChannelMessage/MessageOpenGraph.tsx +3 -3
- package/src/ui/GroupChannelMessage/index.ts +1 -0
- package/src/ui/OpenChannelMessage/Message.file.image.tsx +2 -2
- package/src/ui/OpenChannelMessage/Message.file.tsx +1 -3
- package/src/ui/OpenChannelMessage/Message.file.video.tsx +12 -55
- package/src/ui/OpenChannelMessage/Message.user.og.tsx +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createTheme","LightUIKitTheme","colorScheme","colors","palette","groupChannelMessage","incoming","enabled","textMsg","onBackgroundLight01","textEdited","onBackgroundLight02","textTime","onBackgroundLight03","textSenderName","background","background100","pressed","primary100","outgoing","onBackgroundDark01","onBackgroundDark02","transparent","primary300","primary400","primary","secondary","secondary300","error","error300","background50","text","onBackground01","onBackground02","onBackground03","onBackground04","onBackgroundLight04","onBackgroundReverse01","onBackgroundReverse02","onBackgroundReverse03","onBackgroundDark03","onBackgroundReverse04","onBackgroundDark04","ui","header","nav","none","borderBottom","button","contained","content","disabled","dialog","default","message","highlight","destructive","input","active","placeholder","underline","badge","dateSeparator","overlay02","groupChannelPreview","textTitle","textTitleCaption","textBody","bodyIcon","memberCount","coverBackground","bodyIconBackground","separator","profileCard","textUsername","textBodyLabel","reaction","selected","rounded","openChannelMessage","bubbleBackground","adminBackground","textMsgPostfix","textOperator","background300","openChannelPreview","textParticipants","frozenIcon","participantsIcon"],"sources":["LightUIKitTheme.ts"],"sourcesContent":["import createTheme from './createTheme';\n\nconst LightUIKitTheme = createTheme({\n colorScheme: 'light',\n colors: (palette) => {\n const groupChannelMessage = {\n incoming: {\n enabled: {\n textMsg: palette.onBackgroundLight01,\n textEdited: palette.onBackgroundLight02,\n textTime: palette.onBackgroundLight03,\n textSenderName: palette.onBackgroundLight02,\n background: palette.background100,\n },\n pressed: {\n textMsg: palette.onBackgroundLight01,\n textEdited: palette.onBackgroundLight02,\n textTime: palette.onBackgroundLight03,\n textSenderName: palette.onBackgroundLight02,\n background: palette.primary100,\n },\n },\n outgoing: {\n enabled: {\n textMsg: palette.onBackgroundDark01,\n textEdited: palette.onBackgroundDark02,\n textTime: palette.onBackgroundLight03,\n textSenderName: palette.transparent,\n background: palette.primary300,\n },\n pressed: {\n textMsg: palette.onBackgroundDark01,\n textEdited: palette.onBackgroundDark02,\n textTime: palette.onBackgroundLight03,\n textSenderName: palette.transparent,\n background: palette.primary400,\n },\n },\n };\n\n return {\n primary: palette.primary300,\n secondary: palette.secondary300,\n error: palette.error300,\n background: palette.background50,\n text: palette.onBackgroundLight01,\n onBackground01: palette.onBackgroundLight01,\n onBackground02: palette.onBackgroundLight02,\n onBackground03: palette.onBackgroundLight03,\n onBackground04: palette.onBackgroundLight04,\n onBackgroundReverse01: palette.onBackgroundDark01,\n onBackgroundReverse02: palette.onBackgroundDark02,\n onBackgroundReverse03: palette.onBackgroundDark03,\n onBackgroundReverse04: palette.onBackgroundDark04,\n ui: {\n header: {\n nav: {\n none: {\n background: palette.background50,\n borderBottom: palette.onBackgroundLight04,\n },\n },\n },\n button: {\n contained: {\n enabled: {\n background: palette.primary300,\n content: palette.onBackgroundDark01,\n },\n pressed: {\n background: palette.primary400,\n content: palette.onBackgroundDark01,\n },\n disabled: {\n background: palette.background100,\n content: palette.onBackgroundLight04,\n },\n },\n text: {\n enabled: {\n background: palette.transparent,\n content: palette.primary300,\n },\n pressed: {\n background: palette.transparent,\n content: palette.primary300,\n },\n disabled: {\n background: palette.transparent,\n content: palette.onBackgroundLight04,\n },\n },\n },\n dialog: {\n default: {\n none: {\n background: palette.background50,\n text: palette.onBackgroundLight01,\n message: palette.onBackgroundLight02,\n highlight: palette.primary300,\n destructive: palette.error300,\n },\n },\n },\n input: {\n default: {\n active: {\n text: palette.onBackgroundLight01,\n placeholder: palette.onBackgroundLight03,\n background: palette.background100,\n highlight: palette.primary300,\n },\n disabled: {\n text: palette.onBackgroundLight04,\n placeholder: palette.onBackgroundLight04,\n background: palette.background100,\n highlight: palette.onBackgroundLight04,\n },\n },\n underline: {\n active: {\n text: palette.onBackgroundLight01,\n placeholder: palette.onBackgroundLight03,\n background: palette.transparent,\n highlight: palette.primary300,\n },\n disabled: {\n text: palette.onBackgroundLight04,\n placeholder: palette.onBackgroundLight04,\n background: palette.transparent,\n highlight: palette.onBackgroundLight04,\n },\n },\n },\n badge: {\n default: {\n none: {\n text: palette.background50,\n background: palette.primary300,\n },\n },\n },\n placeholder: {\n default: {\n none: {\n content: palette.onBackgroundLight03,\n highlight: palette.primary300,\n },\n },\n },\n message: groupChannelMessage,\n dateSeparator: {\n default: {\n none: {\n text: palette.onBackgroundDark01,\n background: palette.overlay02,\n },\n },\n },\n groupChannelMessage,\n groupChannelPreview: {\n default: {\n none: {\n textTitle: palette.onBackgroundLight01,\n textTitleCaption: palette.onBackgroundLight03,\n textBody: palette.onBackgroundLight03,\n bodyIcon: palette.onBackgroundLight02,\n memberCount: palette.onBackgroundLight02,\n background: palette.background50,\n coverBackground: palette.onBackgroundLight04,\n bodyIconBackground: palette.background100,\n separator: palette.onBackgroundLight04,\n },\n },\n },\n profileCard: {\n default: {\n none: {\n textUsername: palette.onBackgroundLight01,\n textBodyLabel: palette.onBackgroundLight02,\n textBody: palette.onBackgroundLight01,\n background: palette.background50,\n },\n },\n },\n reaction: {\n default: {\n enabled: {\n background: palette.transparent,\n highlight: palette.onBackgroundLight03,\n },\n selected: {\n background: palette.primary100,\n highlight: palette.primary300,\n },\n },\n rounded: {\n enabled: {\n background: palette.background100,\n highlight: palette.transparent,\n },\n selected: {\n background: palette.primary100,\n highlight: palette.transparent,\n },\n },\n },\n openChannelMessage: {\n default: {\n enabled: {\n background: palette.transparent,\n bubbleBackground: palette.background100,\n adminBackground: palette.background100,\n textMsg: palette.onBackgroundLight01,\n textMsgPostfix: palette.onBackgroundLight02,\n textSenderName: palette.onBackgroundLight02,\n textTime: palette.onBackgroundLight03,\n textOperator: palette.secondary300,\n },\n pressed: {\n background: palette.background100,\n bubbleBackground: palette.background300,\n adminBackground: palette.background100,\n textMsg: palette.onBackgroundLight01,\n textMsgPostfix: palette.onBackgroundLight02,\n textSenderName: palette.onBackgroundLight02,\n textTime: palette.onBackgroundLight03,\n textOperator: palette.secondary300,\n },\n },\n },\n openChannelPreview: {\n default: {\n none: {\n textTitle: palette.onBackgroundLight01,\n textParticipants: palette.onBackgroundLight02,\n frozenIcon: palette.primary300,\n participantsIcon: palette.onBackgroundLight02,\n background: palette.background50,\n coverBackground: palette.background300,\n separator: palette.onBackgroundLight04,\n },\n },\n },\n },\n };\n },\n});\n\nexport default LightUIKitTheme;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["createTheme","LightUIKitTheme","colorScheme","colors","palette","groupChannelMessage","incoming","enabled","textMsg","onBackgroundLight01","textEdited","onBackgroundLight02","textTime","onBackgroundLight03","textSenderName","background","background100","pressed","primary100","outgoing","onBackgroundDark01","onBackgroundDark02","transparent","primary300","primary400","primary","secondary","secondary300","error","error300","background50","text","onBackground01","onBackground02","onBackground03","onBackground04","onBackgroundLight04","onBackgroundReverse01","onBackgroundReverse02","onBackgroundReverse03","onBackgroundDark03","onBackgroundReverse04","onBackgroundDark04","ui","header","nav","none","borderBottom","button","contained","content","disabled","dialog","default","message","highlight","destructive","blurred","input","active","placeholder","underline","badge","dateSeparator","overlay02","groupChannelPreview","textTitle","textTitleCaption","textBody","bodyIcon","memberCount","coverBackground","bodyIconBackground","separator","profileCard","textUsername","textBodyLabel","reaction","selected","rounded","openChannelMessage","bubbleBackground","adminBackground","textMsgPostfix","textOperator","background300","openChannelPreview","textParticipants","frozenIcon","participantsIcon"],"sources":["LightUIKitTheme.ts"],"sourcesContent":["import createTheme from './createTheme';\n\nconst LightUIKitTheme = createTheme({\n colorScheme: 'light',\n colors: (palette) => {\n const groupChannelMessage = {\n incoming: {\n enabled: {\n textMsg: palette.onBackgroundLight01,\n textEdited: palette.onBackgroundLight02,\n textTime: palette.onBackgroundLight03,\n textSenderName: palette.onBackgroundLight02,\n background: palette.background100,\n },\n pressed: {\n textMsg: palette.onBackgroundLight01,\n textEdited: palette.onBackgroundLight02,\n textTime: palette.onBackgroundLight03,\n textSenderName: palette.onBackgroundLight02,\n background: palette.primary100,\n },\n },\n outgoing: {\n enabled: {\n textMsg: palette.onBackgroundDark01,\n textEdited: palette.onBackgroundDark02,\n textTime: palette.onBackgroundLight03,\n textSenderName: palette.transparent,\n background: palette.primary300,\n },\n pressed: {\n textMsg: palette.onBackgroundDark01,\n textEdited: palette.onBackgroundDark02,\n textTime: palette.onBackgroundLight03,\n textSenderName: palette.transparent,\n background: palette.primary400,\n },\n },\n };\n\n return {\n primary: palette.primary300,\n secondary: palette.secondary300,\n error: palette.error300,\n background: palette.background50,\n text: palette.onBackgroundLight01,\n onBackground01: palette.onBackgroundLight01,\n onBackground02: palette.onBackgroundLight02,\n onBackground03: palette.onBackgroundLight03,\n onBackground04: palette.onBackgroundLight04,\n onBackgroundReverse01: palette.onBackgroundDark01,\n onBackgroundReverse02: palette.onBackgroundDark02,\n onBackgroundReverse03: palette.onBackgroundDark03,\n onBackgroundReverse04: palette.onBackgroundDark04,\n ui: {\n header: {\n nav: {\n none: {\n background: palette.background50,\n borderBottom: palette.onBackgroundLight04,\n },\n },\n },\n button: {\n contained: {\n enabled: {\n background: palette.primary300,\n content: palette.onBackgroundDark01,\n },\n pressed: {\n background: palette.primary400,\n content: palette.onBackgroundDark01,\n },\n disabled: {\n background: palette.background100,\n content: palette.onBackgroundLight04,\n },\n },\n text: {\n enabled: {\n background: palette.transparent,\n content: palette.primary300,\n },\n pressed: {\n background: palette.transparent,\n content: palette.primary300,\n },\n disabled: {\n background: palette.transparent,\n content: palette.onBackgroundLight04,\n },\n },\n },\n dialog: {\n default: {\n none: {\n background: palette.background50,\n text: palette.onBackgroundLight01,\n message: palette.onBackgroundLight02,\n highlight: palette.primary300,\n destructive: palette.error300,\n blurred: palette.onBackgroundLight04,\n },\n },\n },\n input: {\n default: {\n active: {\n text: palette.onBackgroundLight01,\n placeholder: palette.onBackgroundLight03,\n background: palette.background100,\n highlight: palette.primary300,\n },\n disabled: {\n text: palette.onBackgroundLight04,\n placeholder: palette.onBackgroundLight04,\n background: palette.background100,\n highlight: palette.onBackgroundLight04,\n },\n },\n underline: {\n active: {\n text: palette.onBackgroundLight01,\n placeholder: palette.onBackgroundLight03,\n background: palette.transparent,\n highlight: palette.primary300,\n },\n disabled: {\n text: palette.onBackgroundLight04,\n placeholder: palette.onBackgroundLight04,\n background: palette.transparent,\n highlight: palette.onBackgroundLight04,\n },\n },\n },\n badge: {\n default: {\n none: {\n text: palette.background50,\n background: palette.primary300,\n },\n },\n },\n placeholder: {\n default: {\n none: {\n content: palette.onBackgroundLight03,\n highlight: palette.primary300,\n },\n },\n },\n message: groupChannelMessage,\n dateSeparator: {\n default: {\n none: {\n text: palette.onBackgroundDark01,\n background: palette.overlay02,\n },\n },\n },\n groupChannelMessage,\n groupChannelPreview: {\n default: {\n none: {\n textTitle: palette.onBackgroundLight01,\n textTitleCaption: palette.onBackgroundLight03,\n textBody: palette.onBackgroundLight03,\n bodyIcon: palette.onBackgroundLight02,\n memberCount: palette.onBackgroundLight02,\n background: palette.background50,\n coverBackground: palette.onBackgroundLight04,\n bodyIconBackground: palette.background100,\n separator: palette.onBackgroundLight04,\n },\n },\n },\n profileCard: {\n default: {\n none: {\n textUsername: palette.onBackgroundLight01,\n textBodyLabel: palette.onBackgroundLight02,\n textBody: palette.onBackgroundLight01,\n background: palette.background50,\n },\n },\n },\n reaction: {\n default: {\n enabled: {\n background: palette.transparent,\n highlight: palette.onBackgroundLight03,\n },\n selected: {\n background: palette.primary100,\n highlight: palette.primary300,\n },\n },\n rounded: {\n enabled: {\n background: palette.background100,\n highlight: palette.transparent,\n },\n selected: {\n background: palette.primary100,\n highlight: palette.transparent,\n },\n },\n },\n openChannelMessage: {\n default: {\n enabled: {\n background: palette.transparent,\n bubbleBackground: palette.background100,\n adminBackground: palette.background100,\n textMsg: palette.onBackgroundLight01,\n textMsgPostfix: palette.onBackgroundLight02,\n textSenderName: palette.onBackgroundLight02,\n textTime: palette.onBackgroundLight03,\n textOperator: palette.secondary300,\n },\n pressed: {\n background: palette.background100,\n bubbleBackground: palette.background300,\n adminBackground: palette.background100,\n textMsg: palette.onBackgroundLight01,\n textMsgPostfix: palette.onBackgroundLight02,\n textSenderName: palette.onBackgroundLight02,\n textTime: palette.onBackgroundLight03,\n textOperator: palette.secondary300,\n },\n },\n },\n openChannelPreview: {\n default: {\n none: {\n textTitle: palette.onBackgroundLight01,\n textParticipants: palette.onBackgroundLight02,\n frozenIcon: palette.primary300,\n participantsIcon: palette.onBackgroundLight02,\n background: palette.background50,\n coverBackground: palette.background300,\n separator: palette.onBackgroundLight04,\n },\n },\n },\n },\n };\n },\n});\n\nexport default LightUIKitTheme;\n"],"mappings":"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"}
|
package/lib/module/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport type { ReactElement, ReactNode } from 'react';\nimport type { TextStyle } from 'react-native';\n\nexport interface UIKitTypography {\n h1: FontAttributes;\n h2: FontAttributes;\n subtitle1: FontAttributes;\n subtitle2: FontAttributes;\n body1: FontAttributes;\n body2: FontAttributes;\n body3: FontAttributes;\n button: FontAttributes;\n caption1: FontAttributes;\n caption2: FontAttributes;\n caption3: FontAttributes;\n caption4: FontAttributes;\n}\nexport type TypoName = keyof UIKitTypography;\nexport type FontAttributes = Pick<TextStyle, 'fontFamily' | 'fontSize' | 'lineHeight' | 'letterSpacing' | 'fontWeight'>;\n\nexport type UIKitColorScheme = 'light' | 'dark';\nexport interface UIKitTheme {\n colorScheme: UIKitColorScheme;\n select<V>(options: { [key in UIKitColorScheme | 'default']?: V }): V;\n\n palette: UIKitPalette;\n colors: UIKitColors;\n\n typography: UIKitTypography;\n}\n\nexport type Component =\n | 'Header'\n | 'Button'\n | 'Dialog'\n | 'Input'\n | 'Badge'\n | 'Placeholder'\n | 'DateSeparator'\n | 'GroupChannelMessage'\n | 'GroupChannelPreview'\n | 'ProfileCard'\n | 'Reaction'\n | 'OpenChannelMessage'\n | 'OpenChannelPreview';\n\nexport type GetColorTree<\n Tree extends {\n Variant: {\n [key in Component]: string;\n };\n State: {\n [key in Component]: string;\n };\n ColorPart: {\n [key in Component]: string;\n };\n },\n> = Tree;\n\nexport type ComponentColorTree = GetColorTree<{\n Variant: {\n Header: 'nav';\n Button: 'contained' | 'text';\n Dialog: 'default';\n Input: 'default' | 'underline';\n Badge: 'default';\n Placeholder: 'default';\n DateSeparator: 'default';\n GroupChannelMessage: 'incoming' | 'outgoing';\n GroupChannelPreview: 'default';\n ProfileCard: 'default';\n Reaction: 'default' | 'rounded';\n OpenChannelMessage: 'default';\n OpenChannelPreview: 'default';\n };\n State: {\n Header: 'none';\n Button: 'enabled' | 'pressed' | 'disabled';\n Dialog: 'none';\n Input: 'active' | 'disabled';\n Badge: 'none';\n Placeholder: 'none';\n DateSeparator: 'none';\n GroupChannelMessage: 'enabled' | 'pressed';\n GroupChannelPreview: 'none';\n ProfileCard: 'none';\n Reaction: 'enabled' | 'selected';\n OpenChannelMessage: 'enabled' | 'pressed';\n OpenChannelPreview: 'none';\n };\n ColorPart: {\n Header: 'background' | 'borderBottom';\n Button: 'background' | 'content';\n Dialog: 'background' | 'text' | 'message' | 'highlight' | 'destructive';\n Input: 'text' | 'placeholder' | 'background' | 'highlight';\n Badge: 'text' | 'background';\n Placeholder: 'content' | 'highlight';\n DateSeparator: 'text' | 'background';\n GroupChannelMessage: 'textMsg' | 'textEdited' | 'textSenderName' | 'textTime' | 'background';\n GroupChannelPreview:\n | 'textTitle'\n | 'textTitleCaption'\n | 'textBody'\n | 'memberCount'\n | 'bodyIcon'\n | 'background'\n | 'coverBackground'\n | 'bodyIconBackground'\n | 'separator';\n ProfileCard: 'textUsername' | 'textBodyLabel' | 'textBody' | 'background';\n Reaction: 'background' | 'highlight';\n OpenChannelMessage:\n | 'textMsg'\n | 'textMsgPostfix'\n | 'textSenderName'\n | 'textTime'\n | 'textOperator'\n | 'background'\n | 'bubbleBackground'\n | 'adminBackground';\n OpenChannelPreview:\n | 'textTitle'\n | 'textParticipants'\n | 'frozenIcon'\n | 'participantsIcon'\n | 'background'\n | 'coverBackground'\n | 'separator';\n };\n}>;\nexport type ComponentColors<T extends Component> = {\n [key in ComponentColorTree['Variant'][T]]: {\n [key in ComponentColorTree['State'][T]]: {\n [key in ComponentColorTree['ColorPart'][T]]: string;\n };\n };\n};\n\nexport interface UIKitColors {\n primary: string;\n secondary: string;\n error: string;\n background: string;\n text: string;\n onBackground01: string;\n onBackground02: string;\n onBackground03: string;\n onBackground04: string;\n onBackgroundReverse01: string;\n onBackgroundReverse02: string;\n onBackgroundReverse03: string;\n onBackgroundReverse04: string;\n /**\n * UI Colors has below structure\n * Component.{Variant}.{State}.{ColorPart}\n * @example\n * ```\n * const { colors } = useUIKitTheme();\n * colors.ui.button.contained.disabled.backgroundColor\n * ```\n * */\n ui: {\n header: ComponentColors<'Header'>;\n button: ComponentColors<'Button'>;\n dialog: ComponentColors<'Dialog'>;\n input: ComponentColors<'Input'>;\n badge: ComponentColors<'Badge'>;\n placeholder: ComponentColors<'Placeholder'>;\n dateSeparator: ComponentColors<'DateSeparator'>;\n groupChannelMessage: ComponentColors<'GroupChannelMessage'>;\n groupChannelPreview: ComponentColors<'GroupChannelPreview'>;\n profileCard: ComponentColors<'ProfileCard'>;\n reaction: ComponentColors<'Reaction'>;\n openChannelMessage: ComponentColors<'OpenChannelMessage'>;\n openChannelPreview: ComponentColors<'OpenChannelPreview'>;\n };\n}\n\nexport type HeaderElement = string | ReactElement | null;\nexport type HeaderPartProps = {\n title?: HeaderElement;\n right?: HeaderElement;\n left?: HeaderElement;\n onPressLeft?: (...params: any[]) => any;\n onPressRight?: (...params: any[]) => any;\n};\nexport type BaseHeaderProps<HeaderParts extends HeaderPartProps = {}, AdditionalProps = {}> = {\n titleAlign?: 'left' | 'center' | 'right';\n children?: ReactNode;\n} & HeaderParts &\n AdditionalProps;\nexport interface UIKitPalette {\n primary100: string;\n primary200: string;\n primary300: string;\n primary400: string;\n primary500: string;\n\n secondary100: string;\n secondary200: string;\n secondary300: string;\n secondary400: string;\n secondary500: string;\n\n error100: string;\n error200: string;\n error300: string;\n error400: string;\n error500: string;\n\n background50: string;\n background100: string;\n background200: string;\n background300: string;\n background400: string;\n background500: string;\n background600: string;\n background700: string;\n\n overlay01: string;\n overlay02: string;\n\n information: string;\n highlight: string;\n transparent: 'transparent';\n\n onBackgroundLight01: string;\n onBackgroundLight02: string;\n onBackgroundLight03: string;\n onBackgroundLight04: string;\n\n onBackgroundDark01: string;\n onBackgroundDark02: string;\n onBackgroundDark03: string;\n onBackgroundDark04: string;\n}\n"],"mappings":""}
|
|
1
|
+
{"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport type { ReactElement, ReactNode } from 'react';\nimport type { TextStyle } from 'react-native';\n\nexport interface UIKitTypography {\n h1: FontAttributes;\n h2: FontAttributes;\n subtitle1: FontAttributes;\n subtitle2: FontAttributes;\n body1: FontAttributes;\n body2: FontAttributes;\n body3: FontAttributes;\n button: FontAttributes;\n caption1: FontAttributes;\n caption2: FontAttributes;\n caption3: FontAttributes;\n caption4: FontAttributes;\n}\nexport type TypoName = keyof UIKitTypography;\nexport type FontAttributes = Pick<TextStyle, 'fontFamily' | 'fontSize' | 'lineHeight' | 'letterSpacing' | 'fontWeight'>;\n\nexport type UIKitColorScheme = 'light' | 'dark';\nexport interface UIKitTheme {\n colorScheme: UIKitColorScheme;\n select<V>(options: { [key in UIKitColorScheme | 'default']?: V }): V;\n\n palette: UIKitPalette;\n colors: UIKitColors;\n\n typography: UIKitTypography;\n}\n\nexport type Component =\n | 'Header'\n | 'Button'\n | 'Dialog'\n | 'Input'\n | 'Badge'\n | 'Placeholder'\n | 'DateSeparator'\n | 'GroupChannelMessage'\n | 'GroupChannelPreview'\n | 'ProfileCard'\n | 'Reaction'\n | 'OpenChannelMessage'\n | 'OpenChannelPreview';\n\nexport type GetColorTree<\n Tree extends {\n Variant: {\n [key in Component]: string;\n };\n State: {\n [key in Component]: string;\n };\n ColorPart: {\n [key in Component]: string;\n };\n },\n> = Tree;\n\nexport type ComponentColorTree = GetColorTree<{\n Variant: {\n Header: 'nav';\n Button: 'contained' | 'text';\n Dialog: 'default';\n Input: 'default' | 'underline';\n Badge: 'default';\n Placeholder: 'default';\n DateSeparator: 'default';\n GroupChannelMessage: 'incoming' | 'outgoing';\n GroupChannelPreview: 'default';\n ProfileCard: 'default';\n Reaction: 'default' | 'rounded';\n OpenChannelMessage: 'default';\n OpenChannelPreview: 'default';\n };\n State: {\n Header: 'none';\n Button: 'enabled' | 'pressed' | 'disabled';\n Dialog: 'none';\n Input: 'active' | 'disabled';\n Badge: 'none';\n Placeholder: 'none';\n DateSeparator: 'none';\n GroupChannelMessage: 'enabled' | 'pressed';\n GroupChannelPreview: 'none';\n ProfileCard: 'none';\n Reaction: 'enabled' | 'selected';\n OpenChannelMessage: 'enabled' | 'pressed';\n OpenChannelPreview: 'none';\n };\n ColorPart: {\n Header: 'background' | 'borderBottom';\n Button: 'background' | 'content';\n Dialog: 'background' | 'text' | 'message' | 'highlight' | 'destructive' | 'blurred';\n Input: 'text' | 'placeholder' | 'background' | 'highlight';\n Badge: 'text' | 'background';\n Placeholder: 'content' | 'highlight';\n DateSeparator: 'text' | 'background';\n GroupChannelMessage: 'textMsg' | 'textEdited' | 'textSenderName' | 'textTime' | 'background';\n GroupChannelPreview:\n | 'textTitle'\n | 'textTitleCaption'\n | 'textBody'\n | 'memberCount'\n | 'bodyIcon'\n | 'background'\n | 'coverBackground'\n | 'bodyIconBackground'\n | 'separator';\n ProfileCard: 'textUsername' | 'textBodyLabel' | 'textBody' | 'background';\n Reaction: 'background' | 'highlight';\n OpenChannelMessage:\n | 'textMsg'\n | 'textMsgPostfix'\n | 'textSenderName'\n | 'textTime'\n | 'textOperator'\n | 'background'\n | 'bubbleBackground'\n | 'adminBackground';\n OpenChannelPreview:\n | 'textTitle'\n | 'textParticipants'\n | 'frozenIcon'\n | 'participantsIcon'\n | 'background'\n | 'coverBackground'\n | 'separator';\n };\n}>;\nexport type ComponentColors<T extends Component> = {\n [key in ComponentColorTree['Variant'][T]]: {\n [key in ComponentColorTree['State'][T]]: {\n [key in ComponentColorTree['ColorPart'][T]]: string;\n };\n };\n};\n\nexport interface UIKitColors {\n primary: string;\n secondary: string;\n error: string;\n background: string;\n text: string;\n onBackground01: string;\n onBackground02: string;\n onBackground03: string;\n onBackground04: string;\n onBackgroundReverse01: string;\n onBackgroundReverse02: string;\n onBackgroundReverse03: string;\n onBackgroundReverse04: string;\n /**\n * UI Colors has below structure\n * Component.{Variant}.{State}.{ColorPart}\n * @example\n * ```\n * const { colors } = useUIKitTheme();\n * colors.ui.button.contained.disabled.backgroundColor\n * ```\n * */\n ui: {\n header: ComponentColors<'Header'>;\n button: ComponentColors<'Button'>;\n dialog: ComponentColors<'Dialog'>;\n input: ComponentColors<'Input'>;\n badge: ComponentColors<'Badge'>;\n placeholder: ComponentColors<'Placeholder'>;\n dateSeparator: ComponentColors<'DateSeparator'>;\n groupChannelMessage: ComponentColors<'GroupChannelMessage'>;\n groupChannelPreview: ComponentColors<'GroupChannelPreview'>;\n profileCard: ComponentColors<'ProfileCard'>;\n reaction: ComponentColors<'Reaction'>;\n openChannelMessage: ComponentColors<'OpenChannelMessage'>;\n openChannelPreview: ComponentColors<'OpenChannelPreview'>;\n };\n}\n\nexport type HeaderElement = string | ReactElement | null;\nexport type HeaderPartProps = {\n title?: HeaderElement;\n right?: HeaderElement;\n left?: HeaderElement;\n onPressLeft?: (...params: any[]) => any;\n onPressRight?: (...params: any[]) => any;\n};\nexport type BaseHeaderProps<HeaderParts extends HeaderPartProps = {}, AdditionalProps = {}> = {\n titleAlign?: 'left' | 'center' | 'right';\n children?: ReactNode;\n} & HeaderParts &\n AdditionalProps;\nexport interface UIKitPalette {\n primary100: string;\n primary200: string;\n primary300: string;\n primary400: string;\n primary500: string;\n\n secondary100: string;\n secondary200: string;\n secondary300: string;\n secondary400: string;\n secondary500: string;\n\n error100: string;\n error200: string;\n error300: string;\n error400: string;\n error500: string;\n\n background50: string;\n background100: string;\n background200: string;\n background300: string;\n background400: string;\n background500: string;\n background600: string;\n background700: string;\n\n overlay01: string;\n overlay02: string;\n\n information: string;\n highlight: string;\n transparent: 'transparent';\n\n onBackgroundLight01: string;\n onBackgroundLight02: string;\n onBackgroundLight03: string;\n onBackgroundLight04: string;\n\n onBackgroundDark01: string;\n onBackgroundDark02: string;\n onBackgroundDark03: string;\n onBackgroundDark04: string;\n}\n"],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","TouchableOpacity","useWindowDimensions","useSafeAreaInsets","Modal","useHeaderStyle","DialogSheet","BottomSheet","_ref","onDismiss","onHide","visible","sheetItems","HeaderComponent","statusBarTranslucent","width","bottom","left","right","createElement","type","onClose","backgroundStyle","alignItems","justifyContent","style","paddingBottom","map","_ref2","idx","onPress","props","activeOpacity","key","title","paddingLeft","paddingRight","Item"],"sources":["index.tsx"],"sourcesContent":["import React from 'react';\nimport { TouchableOpacity, useWindowDimensions } from 'react-native';\nimport { useSafeAreaInsets } from 'react-native-safe-area-context';\n\nimport type Icon from '../../components/Icon';\nimport Modal from '../../components/Modal';\nimport useHeaderStyle from '../../styles/useHeaderStyle';\nimport DialogSheet from '../Dialog/DialogSheet';\n\ntype HeaderProps = { onClose: () => Promise<void> };\nexport type BottomSheetItem = {\n sheetItems: {\n icon?: keyof typeof Icon.Assets;\n iconColor?: string;\n title: string;\n titleColor?: string;\n onPress: () => void;\n }[];\n HeaderComponent?: (props: HeaderProps) => JSX.Element;\n};\ntype Props = {\n visible: boolean;\n onHide: () => Promise<void>;\n onError?: (error: unknown) => void;\n onDismiss?: () => void;\n} & BottomSheetItem;\nconst BottomSheet = ({ onDismiss, onHide, visible, sheetItems, HeaderComponent }: Props) => {\n const { statusBarTranslucent } = useHeaderStyle();\n const { width } = useWindowDimensions();\n const { bottom, left, right } = useSafeAreaInsets();\n return (\n <Modal\n type={'slide'}\n onClose={onHide}\n onDismiss={onDismiss}\n statusBarTranslucent={statusBarTranslucent}\n visible={visible}\n backgroundStyle={{ alignItems: 'center', justifyContent: 'flex-end' }}\n >\n <DialogSheet style={{ width, paddingBottom: bottom }}>\n {HeaderComponent && <HeaderComponent onClose={onHide} />}\n {sheetItems.map(({ onPress, ...props }, idx) => (\n <TouchableOpacity\n activeOpacity={0.75}\n key={props.title + idx}\n style={{ paddingLeft: left, paddingRight: right }}\n onPress={async () => {\n await onHide();\n try {\n onPress();\n } catch {}\n }}\n >\n <DialogSheet.Item {...props} />\n </TouchableOpacity>\n ))}\n </DialogSheet>\n </Modal>\n );\n};\n\nexport default BottomSheet;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,gBAAgB,EAAEC,mBAAmB,QAAQ,cAAc;AACpE,SAASC,iBAAiB,QAAQ,gCAAgC;AAGlE,OAAOC,KAAK,MAAM,wBAAwB;AAC1C,OAAOC,cAAc,MAAM,6BAA6B;AACxD,OAAOC,WAAW,MAAM,uBAAuB;
|
|
1
|
+
{"version":3,"names":["React","TouchableOpacity","useWindowDimensions","useSafeAreaInsets","Modal","useHeaderStyle","DialogSheet","BottomSheet","_ref","onDismiss","onHide","visible","sheetItems","HeaderComponent","statusBarTranslucent","width","bottom","left","right","createElement","type","onClose","backgroundStyle","alignItems","justifyContent","style","paddingBottom","map","_ref2","idx","onPress","props","activeOpacity","key","title","paddingLeft","paddingRight","disabled","Item"],"sources":["index.tsx"],"sourcesContent":["import React from 'react';\nimport { TouchableOpacity, useWindowDimensions } from 'react-native';\nimport { useSafeAreaInsets } from 'react-native-safe-area-context';\n\nimport type Icon from '../../components/Icon';\nimport Modal from '../../components/Modal';\nimport useHeaderStyle from '../../styles/useHeaderStyle';\nimport DialogSheet from '../Dialog/DialogSheet';\n\ntype HeaderProps = { onClose: () => Promise<void> };\nexport type BottomSheetItem = {\n sheetItems: {\n icon?: keyof typeof Icon.Assets;\n iconColor?: string;\n title: string;\n titleColor?: string;\n disabled?: boolean;\n onPress: () => void;\n }[];\n HeaderComponent?: (props: HeaderProps) => JSX.Element;\n};\ntype Props = {\n visible: boolean;\n onHide: () => Promise<void>;\n onError?: (error: unknown) => void;\n onDismiss?: () => void;\n} & BottomSheetItem;\nconst BottomSheet = ({ onDismiss, onHide, visible, sheetItems, HeaderComponent }: Props) => {\n const { statusBarTranslucent } = useHeaderStyle();\n const { width } = useWindowDimensions();\n const { bottom, left, right } = useSafeAreaInsets();\n return (\n <Modal\n type={'slide'}\n onClose={onHide}\n onDismiss={onDismiss}\n statusBarTranslucent={statusBarTranslucent}\n visible={visible}\n backgroundStyle={{ alignItems: 'center', justifyContent: 'flex-end' }}\n >\n <DialogSheet style={{ width, paddingBottom: bottom }}>\n {HeaderComponent && <HeaderComponent onClose={onHide} />}\n {sheetItems.map(({ onPress, ...props }, idx) => (\n <TouchableOpacity\n activeOpacity={0.75}\n key={props.title + idx}\n style={{ paddingLeft: left, paddingRight: right }}\n disabled={props.disabled}\n onPress={async () => {\n await onHide();\n try {\n onPress();\n } catch {}\n }}\n >\n <DialogSheet.Item {...props} />\n </TouchableOpacity>\n ))}\n </DialogSheet>\n </Modal>\n );\n};\n\nexport default BottomSheet;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,gBAAgB,EAAEC,mBAAmB,QAAQ,cAAc;AACpE,SAASC,iBAAiB,QAAQ,gCAAgC;AAGlE,OAAOC,KAAK,MAAM,wBAAwB;AAC1C,OAAOC,cAAc,MAAM,6BAA6B;AACxD,OAAOC,WAAW,MAAM,uBAAuB;AAoB/C,MAAMC,WAAW,GAAGC,IAAA,IAAwE;EAAA,IAAvE;IAAEC,SAAS;IAAEC,MAAM;IAAEC,OAAO;IAAEC,UAAU;IAAEC;EAAuB,CAAC,GAAAL,IAAA;EACrF,MAAM;IAAEM;EAAqB,CAAC,GAAGT,cAAc,EAAE;EACjD,MAAM;IAAEU;EAAM,CAAC,GAAGb,mBAAmB,EAAE;EACvC,MAAM;IAAEc,MAAM;IAAEC,IAAI;IAAEC;EAAM,CAAC,GAAGf,iBAAiB,EAAE;EACnD,oBACEH,KAAA,CAAAmB,aAAA,CAACf,KAAK;IACJgB,IAAI,EAAE,OAAQ;IACdC,OAAO,EAAEX,MAAO;IAChBD,SAAS,EAAEA,SAAU;IACrBK,oBAAoB,EAAEA,oBAAqB;IAC3CH,OAAO,EAAEA,OAAQ;IACjBW,eAAe,EAAE;MAAEC,UAAU,EAAE,QAAQ;MAAEC,cAAc,EAAE;IAAW;EAAE,gBAEtExB,KAAA,CAAAmB,aAAA,CAACb,WAAW;IAACmB,KAAK,EAAE;MAAEV,KAAK;MAAEW,aAAa,EAAEV;IAAO;EAAE,GAClDH,eAAe,iBAAIb,KAAA,CAAAmB,aAAA,CAACN,eAAe;IAACQ,OAAO,EAAEX;EAAO,EAAG,EACvDE,UAAU,CAACe,GAAG,CAAC,CAAAC,KAAA,EAAwBC,GAAG;IAAA,IAA1B;MAAEC,OAAO;MAAE,GAAGC;IAAM,CAAC,GAAAH,KAAA;IAAA,oBACpC5B,KAAA,CAAAmB,aAAA,CAAClB,gBAAgB;MACf+B,aAAa,EAAE,IAAK;MACpBC,GAAG,EAAEF,KAAK,CAACG,KAAK,GAAGL,GAAI;MACvBJ,KAAK,EAAE;QAAEU,WAAW,EAAElB,IAAI;QAAEmB,YAAY,EAAElB;MAAM,CAAE;MAClDmB,QAAQ,EAAEN,KAAK,CAACM,QAAS;MACzBP,OAAO,EAAE,MAAAA,CAAA,KAAY;QACnB,MAAMpB,MAAM,EAAE;QACd,IAAI;UACFoB,OAAO,EAAE;QACX,CAAC,CAAC,MAAM,CAAC;MACX;IAAE,gBAEF9B,KAAA,CAAAmB,aAAA,CAACb,WAAW,CAACgC,IAAI,EAAKP,KAAK,CAAI,CACd;EAAA,CACpB,CAAC,CACU,CACR;AAEZ,CAAC;AAED,eAAexB,WAAW"}
|
|
@@ -23,7 +23,8 @@ const SheetItem = _ref2 => {
|
|
|
23
23
|
icon,
|
|
24
24
|
title,
|
|
25
25
|
iconColor,
|
|
26
|
-
titleColor
|
|
26
|
+
titleColor,
|
|
27
|
+
disabled = false
|
|
27
28
|
} = _ref2;
|
|
28
29
|
const {
|
|
29
30
|
colors
|
|
@@ -34,12 +35,12 @@ const SheetItem = _ref2 => {
|
|
|
34
35
|
}]
|
|
35
36
|
}, icon && /*#__PURE__*/React.createElement(Icon, {
|
|
36
37
|
icon: icon,
|
|
37
|
-
color: iconColor ?? colors.ui.dialog.default.none.highlight,
|
|
38
|
+
color: iconColor ?? (disabled ? colors.ui.dialog.default.none.blurred : colors.ui.dialog.default.none.highlight),
|
|
38
39
|
containerStyle: styles.sheetItemIcon
|
|
39
40
|
}), /*#__PURE__*/React.createElement(Text, {
|
|
40
41
|
subtitle1: true,
|
|
41
42
|
numberOfLines: 1,
|
|
42
|
-
color: titleColor ?? colors.ui.dialog.default.none.text,
|
|
43
|
+
color: titleColor ?? (disabled ? colors.ui.dialog.default.none.blurred : colors.ui.dialog.default.none.text),
|
|
43
44
|
style: styles.sheetItemText
|
|
44
45
|
}, title));
|
|
45
46
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","Icon","Text","createStyleSheet","useUIKitTheme","DialogSheet","_ref","style","children","colors","createElement","styles","container","backgroundColor","ui","dialog","default","none","background","SheetItem","_ref2","icon","title","iconColor","titleColor","sheetItemContainer","color","highlight","containerStyle","sheetItemIcon","subtitle1","numberOfLines","text","sheetItemText","overflow","flexDirection","width","borderTopLeftRadius","borderTopRightRadius","alignItems","height","marginLeft","flex","marginHorizontal","Item"],"sources":["DialogSheet.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleProp, View, ViewStyle } from 'react-native';\n\nimport Icon from '../../components/Icon';\nimport Text from '../../components/Text';\nimport createStyleSheet from '../../styles/createStyleSheet';\nimport useUIKitTheme from '../../theme/useUIKitTheme';\n\ntype Props = React.PropsWithChildren<{\n style?: StyleProp<ViewStyle>;\n}>;\nconst DialogSheet: ((props: Props) => JSX.Element) & { Item: typeof SheetItem } = ({ style, children }) => {\n const { colors } = useUIKitTheme();\n return (\n <View style={[styles.container, { backgroundColor: colors.ui.dialog.default.none.background }, style]}>\n {children}\n </View>\n );\n};\n\nexport type SheetItemProps = {\n icon?: keyof typeof Icon.Assets;\n iconColor?: string;\n title: string;\n titleColor?: string;\n};\nconst SheetItem = ({ icon, title, iconColor, titleColor }: SheetItemProps) => {\n const { colors } = useUIKitTheme();\n return (\n <View style={[styles.sheetItemContainer, { backgroundColor: colors.ui.dialog.default.none.background }]}>\n {icon && (\n <Icon\n icon={icon}\n color={iconColor ?? colors.ui.dialog.default.none.highlight}\n containerStyle={styles.sheetItemIcon}\n />\n )}\n <Text\n subtitle1\n numberOfLines={1}\n color={titleColor ?? colors.ui.dialog.default.none.text}\n style={styles.sheetItemText}\n >\n {title}\n </Text>\n </View>\n );\n};\n\nconst styles = createStyleSheet({\n container: {\n overflow: 'hidden',\n flexDirection: 'column',\n width: '100%',\n borderTopLeftRadius: 8,\n borderTopRightRadius: 8,\n },\n sheetItemContainer: {\n flexDirection: 'row',\n alignItems: 'center',\n height: 48,\n },\n sheetItemIcon: {\n marginLeft: 16,\n },\n sheetItemText: {\n flex: 1,\n marginHorizontal: 24,\n },\n});\n\nDialogSheet.Item = SheetItem;\nexport default DialogSheet;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAAoBC,IAAI,QAAmB,cAAc;AAEzD,OAAOC,IAAI,MAAM,uBAAuB;AACxC,OAAOC,IAAI,MAAM,uBAAuB;AACxC,OAAOC,gBAAgB,MAAM,+BAA+B;AAC5D,OAAOC,aAAa,MAAM,2BAA2B;AAKrD,MAAMC,WAAyE,GAAGC,IAAA,IAAyB;EAAA,IAAxB;IAAEC,KAAK;IAAEC;EAAS,CAAC,GAAAF,IAAA;EACpG,MAAM;IAAEG;EAAO,CAAC,GAAGL,aAAa,EAAE;EAClC,oBACEL,KAAA,CAAAW,aAAA,CAACV,IAAI;IAACO,KAAK,EAAE,CAACI,MAAM,CAACC,SAAS,EAAE;MAAEC,eAAe,EAAEJ,MAAM,CAACK,EAAE,CAACC,MAAM,CAACC,OAAO,CAACC,IAAI,CAACC;IAAW,CAAC,EAAEX,KAAK;EAAE,GACnGC,QAAQ,CACJ;AAEX,CAAC;
|
|
1
|
+
{"version":3,"names":["React","View","Icon","Text","createStyleSheet","useUIKitTheme","DialogSheet","_ref","style","children","colors","createElement","styles","container","backgroundColor","ui","dialog","default","none","background","SheetItem","_ref2","icon","title","iconColor","titleColor","disabled","sheetItemContainer","color","blurred","highlight","containerStyle","sheetItemIcon","subtitle1","numberOfLines","text","sheetItemText","overflow","flexDirection","width","borderTopLeftRadius","borderTopRightRadius","alignItems","height","marginLeft","flex","marginHorizontal","Item"],"sources":["DialogSheet.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleProp, View, ViewStyle } from 'react-native';\n\nimport Icon from '../../components/Icon';\nimport Text from '../../components/Text';\nimport createStyleSheet from '../../styles/createStyleSheet';\nimport useUIKitTheme from '../../theme/useUIKitTheme';\n\ntype Props = React.PropsWithChildren<{\n style?: StyleProp<ViewStyle>;\n}>;\nconst DialogSheet: ((props: Props) => JSX.Element) & { Item: typeof SheetItem } = ({ style, children }) => {\n const { colors } = useUIKitTheme();\n return (\n <View style={[styles.container, { backgroundColor: colors.ui.dialog.default.none.background }, style]}>\n {children}\n </View>\n );\n};\n\nexport type SheetItemProps = {\n icon?: keyof typeof Icon.Assets;\n iconColor?: string;\n title: string;\n titleColor?: string;\n disabled?: boolean;\n};\nconst SheetItem = ({ icon, title, iconColor, titleColor, disabled = false }: SheetItemProps) => {\n const { colors } = useUIKitTheme();\n return (\n <View style={[styles.sheetItemContainer, { backgroundColor: colors.ui.dialog.default.none.background }]}>\n {icon && (\n <Icon\n icon={icon}\n color={\n iconColor ?? (disabled ? colors.ui.dialog.default.none.blurred : colors.ui.dialog.default.none.highlight)\n }\n containerStyle={styles.sheetItemIcon}\n />\n )}\n <Text\n subtitle1\n numberOfLines={1}\n color={titleColor ?? (disabled ? colors.ui.dialog.default.none.blurred : colors.ui.dialog.default.none.text)}\n style={styles.sheetItemText}\n >\n {title}\n </Text>\n </View>\n );\n};\n\nconst styles = createStyleSheet({\n container: {\n overflow: 'hidden',\n flexDirection: 'column',\n width: '100%',\n borderTopLeftRadius: 8,\n borderTopRightRadius: 8,\n },\n sheetItemContainer: {\n flexDirection: 'row',\n alignItems: 'center',\n height: 48,\n },\n sheetItemIcon: {\n marginLeft: 16,\n },\n sheetItemText: {\n flex: 1,\n marginHorizontal: 24,\n },\n});\n\nDialogSheet.Item = SheetItem;\nexport default DialogSheet;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAAoBC,IAAI,QAAmB,cAAc;AAEzD,OAAOC,IAAI,MAAM,uBAAuB;AACxC,OAAOC,IAAI,MAAM,uBAAuB;AACxC,OAAOC,gBAAgB,MAAM,+BAA+B;AAC5D,OAAOC,aAAa,MAAM,2BAA2B;AAKrD,MAAMC,WAAyE,GAAGC,IAAA,IAAyB;EAAA,IAAxB;IAAEC,KAAK;IAAEC;EAAS,CAAC,GAAAF,IAAA;EACpG,MAAM;IAAEG;EAAO,CAAC,GAAGL,aAAa,EAAE;EAClC,oBACEL,KAAA,CAAAW,aAAA,CAACV,IAAI;IAACO,KAAK,EAAE,CAACI,MAAM,CAACC,SAAS,EAAE;MAAEC,eAAe,EAAEJ,MAAM,CAACK,EAAE,CAACC,MAAM,CAACC,OAAO,CAACC,IAAI,CAACC;IAAW,CAAC,EAAEX,KAAK;EAAE,GACnGC,QAAQ,CACJ;AAEX,CAAC;AASD,MAAMW,SAAS,GAAGC,KAAA,IAA8E;EAAA,IAA7E;IAAEC,IAAI;IAAEC,KAAK;IAAEC,SAAS;IAAEC,UAAU;IAAEC,QAAQ,GAAG;EAAsB,CAAC,GAAAL,KAAA;EACzF,MAAM;IAAEX;EAAO,CAAC,GAAGL,aAAa,EAAE;EAClC,oBACEL,KAAA,CAAAW,aAAA,CAACV,IAAI;IAACO,KAAK,EAAE,CAACI,MAAM,CAACe,kBAAkB,EAAE;MAAEb,eAAe,EAAEJ,MAAM,CAACK,EAAE,CAACC,MAAM,CAACC,OAAO,CAACC,IAAI,CAACC;IAAW,CAAC;EAAE,GACrGG,IAAI,iBACHtB,KAAA,CAAAW,aAAA,CAACT,IAAI;IACHoB,IAAI,EAAEA,IAAK;IACXM,KAAK,EACHJ,SAAS,KAAKE,QAAQ,GAAGhB,MAAM,CAACK,EAAE,CAACC,MAAM,CAACC,OAAO,CAACC,IAAI,CAACW,OAAO,GAAGnB,MAAM,CAACK,EAAE,CAACC,MAAM,CAACC,OAAO,CAACC,IAAI,CAACY,SAAS,CACzG;IACDC,cAAc,EAAEnB,MAAM,CAACoB;EAAc,EAExC,eACDhC,KAAA,CAAAW,aAAA,CAACR,IAAI;IACH8B,SAAS;IACTC,aAAa,EAAE,CAAE;IACjBN,KAAK,EAAEH,UAAU,KAAKC,QAAQ,GAAGhB,MAAM,CAACK,EAAE,CAACC,MAAM,CAACC,OAAO,CAACC,IAAI,CAACW,OAAO,GAAGnB,MAAM,CAACK,EAAE,CAACC,MAAM,CAACC,OAAO,CAACC,IAAI,CAACiB,IAAI,CAAE;IAC7G3B,KAAK,EAAEI,MAAM,CAACwB;EAAc,GAE3Bb,KAAK,CACD,CACF;AAEX,CAAC;AAED,MAAMX,MAAM,GAAGR,gBAAgB,CAAC;EAC9BS,SAAS,EAAE;IACTwB,QAAQ,EAAE,QAAQ;IAClBC,aAAa,EAAE,QAAQ;IACvBC,KAAK,EAAE,MAAM;IACbC,mBAAmB,EAAE,CAAC;IACtBC,oBAAoB,EAAE;EACxB,CAAC;EACDd,kBAAkB,EAAE;IAClBW,aAAa,EAAE,KAAK;IACpBI,UAAU,EAAE,QAAQ;IACpBC,MAAM,EAAE;EACV,CAAC;EACDX,aAAa,EAAE;IACbY,UAAU,EAAE;EACd,CAAC;EACDR,aAAa,EAAE;IACbS,IAAI,EAAE,CAAC;IACPC,gBAAgB,EAAE;EACpB;AACF,CAAC,CAAC;AAEFxC,WAAW,CAACyC,IAAI,GAAG3B,SAAS;AAC5B,eAAed,WAAW"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { getThumbnailUriFromFileMessage } from '@sendbird/uikit-utils';
|
|
3
3
|
import Box from '../../components/Box';
|
|
4
4
|
import ImageWithPlaceholder from '../../components/ImageWithPlaceholder';
|
|
5
5
|
import PressBox from '../../components/PressBox';
|
|
@@ -24,7 +24,7 @@ const ImageFileMessage = props => {
|
|
|
24
24
|
onLongPress: onLongPress
|
|
25
25
|
}, /*#__PURE__*/React.createElement(ImageWithPlaceholder, {
|
|
26
26
|
source: {
|
|
27
|
-
uri:
|
|
27
|
+
uri: getThumbnailUriFromFileMessage(props.message)
|
|
28
28
|
},
|
|
29
29
|
style: styles.image
|
|
30
30
|
})), props.children));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","
|
|
1
|
+
{"version":3,"names":["React","getThumbnailUriFromFileMessage","Box","ImageWithPlaceholder","PressBox","createStyleSheet","useUIKitTheme","MessageContainer","ImageFileMessage","props","onPress","onLongPress","variant","colors","createElement","style","styles","container","backgroundColor","ui","groupChannelMessage","enabled","background","activeOpacity","source","uri","message","image","children","borderRadius","overflow","maxWidth","width","height"],"sources":["Message.file.image.tsx"],"sourcesContent":["import React from 'react';\n\nimport type { SendbirdFileMessage } from '@sendbird/uikit-utils';\nimport { getThumbnailUriFromFileMessage } from '@sendbird/uikit-utils';\n\nimport Box from '../../components/Box';\nimport ImageWithPlaceholder from '../../components/ImageWithPlaceholder';\nimport PressBox from '../../components/PressBox';\nimport createStyleSheet from '../../styles/createStyleSheet';\nimport useUIKitTheme from '../../theme/useUIKitTheme';\nimport MessageContainer from './MessageContainer';\nimport type { GroupChannelMessageProps } from './index';\n\nconst ImageFileMessage = (props: GroupChannelMessageProps<SendbirdFileMessage>) => {\n const { onPress, onLongPress, variant = 'incoming' } = props;\n\n const { colors } = useUIKitTheme();\n\n return (\n <MessageContainer {...props}>\n <Box style={styles.container} backgroundColor={colors.ui.groupChannelMessage[variant].enabled.background}>\n <PressBox activeOpacity={0.8} onPress={onPress} onLongPress={onLongPress}>\n <ImageWithPlaceholder source={{ uri: getThumbnailUriFromFileMessage(props.message) }} style={styles.image} />\n </PressBox>\n {props.children}\n </Box>\n </MessageContainer>\n );\n};\n\nconst styles = createStyleSheet({\n container: {\n borderRadius: 16,\n overflow: 'hidden',\n },\n image: {\n maxWidth: 240,\n width: 240,\n height: 160,\n borderRadius: 16,\n overflow: 'hidden',\n },\n});\n\nexport default ImageFileMessage;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAGzB,SAASC,8BAA8B,QAAQ,uBAAuB;AAEtE,OAAOC,GAAG,MAAM,sBAAsB;AACtC,OAAOC,oBAAoB,MAAM,uCAAuC;AACxE,OAAOC,QAAQ,MAAM,2BAA2B;AAChD,OAAOC,gBAAgB,MAAM,+BAA+B;AAC5D,OAAOC,aAAa,MAAM,2BAA2B;AACrD,OAAOC,gBAAgB,MAAM,oBAAoB;AAGjD,MAAMC,gBAAgB,GAAIC,KAAoD,IAAK;EACjF,MAAM;IAAEC,OAAO;IAAEC,WAAW;IAAEC,OAAO,GAAG;EAAW,CAAC,GAAGH,KAAK;EAE5D,MAAM;IAAEI;EAAO,CAAC,GAAGP,aAAa,EAAE;EAElC,oBACEN,KAAA,CAAAc,aAAA,CAACP,gBAAgB,EAAKE,KAAK,eACzBT,KAAA,CAAAc,aAAA,CAACZ,GAAG;IAACa,KAAK,EAAEC,MAAM,CAACC,SAAU;IAACC,eAAe,EAAEL,MAAM,CAACM,EAAE,CAACC,mBAAmB,CAACR,OAAO,CAAC,CAACS,OAAO,CAACC;EAAW,gBACvGtB,KAAA,CAAAc,aAAA,CAACV,QAAQ;IAACmB,aAAa,EAAE,GAAI;IAACb,OAAO,EAAEA,OAAQ;IAACC,WAAW,EAAEA;EAAY,gBACvEX,KAAA,CAAAc,aAAA,CAACX,oBAAoB;IAACqB,MAAM,EAAE;MAAEC,GAAG,EAAExB,8BAA8B,CAACQ,KAAK,CAACiB,OAAO;IAAE,CAAE;IAACX,KAAK,EAAEC,MAAM,CAACW;EAAM,EAAG,CACpG,EACVlB,KAAK,CAACmB,QAAQ,CACX,CACW;AAEvB,CAAC;AAED,MAAMZ,MAAM,GAAGX,gBAAgB,CAAC;EAC9BY,SAAS,EAAE;IACTY,YAAY,EAAE,EAAE;IAChBC,QAAQ,EAAE;EACZ,CAAC;EACDH,KAAK,EAAE;IACLI,QAAQ,EAAE,GAAG;IACbC,KAAK,EAAE,GAAG;IACVC,MAAM,EAAE,GAAG;IACXJ,YAAY,EAAE,EAAE;IAChBC,QAAQ,EAAE;EACZ;AACF,CAAC,CAAC;AAEF,eAAetB,gBAAgB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { getFileExtension, getFileType } from '@sendbird/uikit-utils';
|
|
2
|
+
import { getFileExtension, getFileType, truncate } from '@sendbird/uikit-utils';
|
|
3
3
|
import Box from '../../components/Box';
|
|
4
4
|
import Icon from '../../components/Icon';
|
|
5
5
|
import PressBox from '../../components/PressBox';
|
|
@@ -7,12 +7,6 @@ import Text from '../../components/Text';
|
|
|
7
7
|
import createStyleSheet from '../../styles/createStyleSheet';
|
|
8
8
|
import useUIKitTheme from '../../theme/useUIKitTheme';
|
|
9
9
|
import MessageContainer from './MessageContainer';
|
|
10
|
-
const iconMapper = {
|
|
11
|
-
audio: 'file-audio',
|
|
12
|
-
image: 'photo',
|
|
13
|
-
video: 'play',
|
|
14
|
-
file: 'file-document'
|
|
15
|
-
};
|
|
16
10
|
const FileMessage = props => {
|
|
17
11
|
const {
|
|
18
12
|
variant = 'incoming'
|
|
@@ -35,8 +29,8 @@ const FileMessage = props => {
|
|
|
35
29
|
style: styles.container
|
|
36
30
|
}, /*#__PURE__*/React.createElement(Box, {
|
|
37
31
|
style: styles.bubble
|
|
38
|
-
}, /*#__PURE__*/React.createElement(Icon, {
|
|
39
|
-
|
|
32
|
+
}, /*#__PURE__*/React.createElement(Icon.File, {
|
|
33
|
+
fileType: fileType,
|
|
40
34
|
size: 24,
|
|
41
35
|
containerStyle: {
|
|
42
36
|
backgroundColor: colors.background,
|
|
@@ -50,7 +44,10 @@ const FileMessage = props => {
|
|
|
50
44
|
numberOfLines: 1,
|
|
51
45
|
color: pressed ? color.pressed.textMsg : color.enabled.textMsg,
|
|
52
46
|
style: styles.name
|
|
53
|
-
}, ((_props$strings = props.strings) === null || _props$strings === void 0 ? void 0 : _props$strings.fileName) || props.message.name
|
|
47
|
+
}, truncate(((_props$strings = props.strings) === null || _props$strings === void 0 ? void 0 : _props$strings.fileName) || props.message.name, {
|
|
48
|
+
mode: 'mid',
|
|
49
|
+
maxLen: 20
|
|
50
|
+
}))), props.children);
|
|
54
51
|
}));
|
|
55
52
|
};
|
|
56
53
|
const styles = createStyleSheet({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","getFileExtension","getFileType","Box","Icon","PressBox","Text","createStyleSheet","useUIKitTheme","MessageContainer","
|
|
1
|
+
{"version":3,"names":["React","getFileExtension","getFileType","truncate","Box","Icon","PressBox","Text","createStyleSheet","useUIKitTheme","MessageContainer","FileMessage","props","variant","colors","fileType","message","type","name","color","ui","groupChannelMessage","createElement","onPress","onLongPress","_ref","_props$strings","pressed","backgroundColor","background","enabled","style","styles","container","bubble","File","size","containerStyle","padding","borderRadius","marginRight","body3","ellipsizeMode","numberOfLines","textMsg","strings","fileName","mode","maxLen","children","overflow","flexDirection","alignItems","paddingHorizontal","paddingVertical","flexShrink"],"sources":["Message.file.tsx"],"sourcesContent":["import React from 'react';\n\nimport { SendbirdFileMessage, getFileExtension, getFileType, truncate } from '@sendbird/uikit-utils';\n\nimport Box from '../../components/Box';\nimport Icon from '../../components/Icon';\nimport PressBox from '../../components/PressBox';\nimport Text from '../../components/Text';\nimport createStyleSheet from '../../styles/createStyleSheet';\nimport useUIKitTheme from '../../theme/useUIKitTheme';\nimport MessageContainer from './MessageContainer';\nimport type { GroupChannelMessageProps } from './index';\n\ntype Props = GroupChannelMessageProps<SendbirdFileMessage>;\n\nconst FileMessage = (props: Props) => {\n const { variant = 'incoming' } = props;\n const { colors } = useUIKitTheme();\n\n const fileType = getFileType(props.message.type || getFileExtension(props.message.name));\n const color = colors.ui.groupChannelMessage[variant];\n\n return (\n <MessageContainer {...props}>\n <PressBox onPress={props.onPress} onLongPress={props.onLongPress}>\n {({ pressed }) => (\n <Box backgroundColor={pressed ? color.pressed.background : color.enabled.background} style={styles.container}>\n <Box style={styles.bubble}>\n <Icon.File\n fileType={fileType}\n size={24}\n containerStyle={{ backgroundColor: colors.background, padding: 2, borderRadius: 8, marginRight: 8 }}\n />\n <Text\n body3\n ellipsizeMode={'middle'}\n numberOfLines={1}\n color={pressed ? color.pressed.textMsg : color.enabled.textMsg}\n style={styles.name}\n >\n {truncate(props.strings?.fileName || props.message.name, { mode: 'mid', maxLen: 20 })}\n </Text>\n </Box>\n {props.children}\n </Box>\n )}\n </PressBox>\n </MessageContainer>\n );\n};\n\nconst styles = createStyleSheet({\n container: {\n overflow: 'hidden',\n borderRadius: 16,\n },\n bubble: {\n flexDirection: 'row',\n alignItems: 'center',\n paddingHorizontal: 12,\n paddingVertical: 6,\n },\n name: {\n flexShrink: 1,\n },\n});\n\nexport default FileMessage;\n"],"mappings":"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"}
|
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
import React
|
|
2
|
-
import {
|
|
3
|
-
import { getAvailableUriFromFileMessage } from '@sendbird/uikit-utils';
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { getThumbnailUriFromFileMessage } from '@sendbird/uikit-utils';
|
|
4
3
|
import Box from '../../components/Box';
|
|
5
|
-
import Icon from '../../components/Icon';
|
|
6
|
-
import ImageWithPlaceholder from '../../components/ImageWithPlaceholder';
|
|
7
4
|
import PressBox from '../../components/PressBox';
|
|
5
|
+
import { VideoThumbnail } from '../../components/VideoThumbnail';
|
|
8
6
|
import createStyleSheet from '../../styles/createStyleSheet';
|
|
9
7
|
import useUIKitTheme from '../../theme/useUIKitTheme';
|
|
10
8
|
import MessageContainer from './MessageContainer';
|
|
@@ -15,79 +13,21 @@ const VideoFileMessage = props => {
|
|
|
15
13
|
variant = 'incoming'
|
|
16
14
|
} = props;
|
|
17
15
|
const {
|
|
18
|
-
colors
|
|
19
|
-
palette,
|
|
20
|
-
select
|
|
16
|
+
colors
|
|
21
17
|
} = useUIKitTheme();
|
|
22
|
-
const uri =
|
|
23
|
-
const {
|
|
24
|
-
thumbnail,
|
|
25
|
-
loading
|
|
26
|
-
} = useRetry(() => props.fetchThumbnailFromVideoSource(uri));
|
|
18
|
+
const uri = getThumbnailUriFromFileMessage(props.message);
|
|
27
19
|
return /*#__PURE__*/React.createElement(MessageContainer, props, /*#__PURE__*/React.createElement(Box, {
|
|
28
20
|
style: styles.container,
|
|
29
21
|
backgroundColor: colors.ui.groupChannelMessage[variant].enabled.background
|
|
30
22
|
}, /*#__PURE__*/React.createElement(PressBox, {
|
|
31
23
|
activeOpacity: 0.8,
|
|
32
24
|
onPress: onPress,
|
|
33
|
-
onLongPress: onLongPress
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
light: palette.background100
|
|
40
|
-
})
|
|
41
|
-
}) : /*#__PURE__*/React.createElement(ImageWithPlaceholder, {
|
|
42
|
-
source: {
|
|
43
|
-
uri: thumbnail ?? 'invalid-image'
|
|
44
|
-
},
|
|
45
|
-
style: StyleSheet.absoluteFill
|
|
46
|
-
}), (loading || thumbnail !== null) && /*#__PURE__*/React.createElement(Box, {
|
|
47
|
-
style: StyleSheet.absoluteFill,
|
|
48
|
-
alignItems: 'center',
|
|
49
|
-
justifyContent: 'center'
|
|
50
|
-
}, /*#__PURE__*/React.createElement(Icon, {
|
|
51
|
-
icon: 'play',
|
|
52
|
-
size: 28,
|
|
53
|
-
color: palette.onBackgroundLight02,
|
|
54
|
-
containerStyle: [styles.playIcon, {
|
|
55
|
-
backgroundColor: palette.onBackgroundDark01
|
|
56
|
-
}]
|
|
57
|
-
}))), props.children));
|
|
58
|
-
};
|
|
59
|
-
const useRetry = function (fetch) {
|
|
60
|
-
let retryCount = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 5;
|
|
61
|
-
const [state, setState] = useState({
|
|
62
|
-
thumbnail: null,
|
|
63
|
-
loading: true
|
|
64
|
-
});
|
|
65
|
-
const retryCountRef = useRef(0);
|
|
66
|
-
const retryTimeoutRef = useRef();
|
|
67
|
-
const fetchThumbnail = useRef(fetch);
|
|
68
|
-
fetchThumbnail.current = fetch;
|
|
69
|
-
useEffect(() => {
|
|
70
|
-
if (!state.thumbnail) {
|
|
71
|
-
const reloadReservation = () => {
|
|
72
|
-
if (retryCountRef.current < retryCount) {
|
|
73
|
-
retryTimeoutRef.current = setTimeout(() => {
|
|
74
|
-
retryCountRef.current++;
|
|
75
|
-
reloadReservation();
|
|
76
|
-
fetchThumbnail.current().then(result => {
|
|
77
|
-
setState({
|
|
78
|
-
loading: false,
|
|
79
|
-
thumbnail: (result === null || result === void 0 ? void 0 : result.path) ?? null
|
|
80
|
-
});
|
|
81
|
-
});
|
|
82
|
-
}, retryCountRef.current * 5000);
|
|
83
|
-
}
|
|
84
|
-
};
|
|
85
|
-
return reloadReservation();
|
|
86
|
-
} else {
|
|
87
|
-
return clearTimeout(retryTimeoutRef.current);
|
|
88
|
-
}
|
|
89
|
-
}, [state.thumbnail]);
|
|
90
|
-
return state;
|
|
25
|
+
onLongPress: onLongPress
|
|
26
|
+
}, /*#__PURE__*/React.createElement(VideoThumbnail, {
|
|
27
|
+
style: styles.image,
|
|
28
|
+
source: uri,
|
|
29
|
+
fetchThumbnailFromVideoSource: props.fetchThumbnailFromVideoSource
|
|
30
|
+
})), props.children));
|
|
91
31
|
};
|
|
92
32
|
const styles = createStyleSheet({
|
|
93
33
|
container: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","
|
|
1
|
+
{"version":3,"names":["React","getThumbnailUriFromFileMessage","Box","PressBox","VideoThumbnail","createStyleSheet","useUIKitTheme","MessageContainer","VideoFileMessage","props","onPress","onLongPress","variant","colors","uri","message","createElement","style","styles","container","backgroundColor","ui","groupChannelMessage","enabled","background","activeOpacity","image","source","fetchThumbnailFromVideoSource","children","borderRadius","overflow","maxWidth","width","height","playIcon","padding"],"sources":["Message.file.video.tsx"],"sourcesContent":["import React from 'react';\n\nimport type { SendbirdFileMessage } from '@sendbird/uikit-utils';\nimport { getThumbnailUriFromFileMessage } from '@sendbird/uikit-utils';\n\nimport Box from '../../components/Box';\nimport PressBox from '../../components/PressBox';\nimport { VideoThumbnail } from '../../components/VideoThumbnail';\nimport createStyleSheet from '../../styles/createStyleSheet';\nimport useUIKitTheme from '../../theme/useUIKitTheme';\nimport MessageContainer from './MessageContainer';\nimport type { GroupChannelMessageProps } from './index';\n\ntype Props = GroupChannelMessageProps<\n SendbirdFileMessage,\n { fetchThumbnailFromVideoSource: (uri: string) => Promise<{ path: string } | null> }\n>;\n\nconst VideoFileMessage = (props: Props) => {\n const { onPress, onLongPress, variant = 'incoming' } = props;\n\n const { colors } = useUIKitTheme();\n const uri = getThumbnailUriFromFileMessage(props.message);\n\n return (\n <MessageContainer {...props}>\n <Box style={styles.container} backgroundColor={colors.ui.groupChannelMessage[variant].enabled.background}>\n <PressBox activeOpacity={0.8} onPress={onPress} onLongPress={onLongPress}>\n <VideoThumbnail\n style={styles.image}\n source={uri}\n fetchThumbnailFromVideoSource={props.fetchThumbnailFromVideoSource}\n />\n </PressBox>\n {props.children}\n </Box>\n </MessageContainer>\n );\n};\n\nconst styles = createStyleSheet({\n container: {\n borderRadius: 16,\n overflow: 'hidden',\n },\n image: {\n maxWidth: 240,\n width: 240,\n height: 160,\n borderRadius: 16,\n overflow: 'hidden',\n },\n playIcon: {\n padding: 10,\n borderRadius: 50,\n },\n});\nexport default VideoFileMessage;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAGzB,SAASC,8BAA8B,QAAQ,uBAAuB;AAEtE,OAAOC,GAAG,MAAM,sBAAsB;AACtC,OAAOC,QAAQ,MAAM,2BAA2B;AAChD,SAASC,cAAc,QAAQ,iCAAiC;AAChE,OAAOC,gBAAgB,MAAM,+BAA+B;AAC5D,OAAOC,aAAa,MAAM,2BAA2B;AACrD,OAAOC,gBAAgB,MAAM,oBAAoB;AAQjD,MAAMC,gBAAgB,GAAIC,KAAY,IAAK;EACzC,MAAM;IAAEC,OAAO;IAAEC,WAAW;IAAEC,OAAO,GAAG;EAAW,CAAC,GAAGH,KAAK;EAE5D,MAAM;IAAEI;EAAO,CAAC,GAAGP,aAAa,EAAE;EAClC,MAAMQ,GAAG,GAAGb,8BAA8B,CAACQ,KAAK,CAACM,OAAO,CAAC;EAEzD,oBACEf,KAAA,CAAAgB,aAAA,CAACT,gBAAgB,EAAKE,KAAK,eACzBT,KAAA,CAAAgB,aAAA,CAACd,GAAG;IAACe,KAAK,EAAEC,MAAM,CAACC,SAAU;IAACC,eAAe,EAAEP,MAAM,CAACQ,EAAE,CAACC,mBAAmB,CAACV,OAAO,CAAC,CAACW,OAAO,CAACC;EAAW,gBACvGxB,KAAA,CAAAgB,aAAA,CAACb,QAAQ;IAACsB,aAAa,EAAE,GAAI;IAACf,OAAO,EAAEA,OAAQ;IAACC,WAAW,EAAEA;EAAY,gBACvEX,KAAA,CAAAgB,aAAA,CAACZ,cAAc;IACba,KAAK,EAAEC,MAAM,CAACQ,KAAM;IACpBC,MAAM,EAAEb,GAAI;IACZc,6BAA6B,EAAEnB,KAAK,CAACmB;EAA8B,EACnE,CACO,EACVnB,KAAK,CAACoB,QAAQ,CACX,CACW;AAEvB,CAAC;AAED,MAAMX,MAAM,GAAGb,gBAAgB,CAAC;EAC9Bc,SAAS,EAAE;IACTW,YAAY,EAAE,EAAE;IAChBC,QAAQ,EAAE;EACZ,CAAC;EACDL,KAAK,EAAE;IACLM,QAAQ,EAAE,GAAG;IACbC,KAAK,EAAE,GAAG;IACVC,MAAM,EAAE,GAAG;IACXJ,YAAY,EAAE,EAAE;IAChBC,QAAQ,EAAE;EACZ,CAAC;EACDI,QAAQ,EAAE;IACRC,OAAO,EAAE,EAAE;IACXN,YAAY,EAAE;EAChB;AACF,CAAC,CAAC;AACF,eAAetB,gBAAgB"}
|
|
@@ -21,7 +21,8 @@ MessageContainer.Incoming = function MessageContainerIncoming(_ref) {
|
|
|
21
21
|
groupedWithPrev,
|
|
22
22
|
message,
|
|
23
23
|
onPressAvatar,
|
|
24
|
-
strings
|
|
24
|
+
strings,
|
|
25
|
+
parentMessage
|
|
25
26
|
} = _ref;
|
|
26
27
|
const {
|
|
27
28
|
colors
|
|
@@ -41,7 +42,7 @@ MessageContainer.Incoming = function MessageContainerIncoming(_ref) {
|
|
|
41
42
|
uri: (_message$sender = message.sender) === null || _message$sender === void 0 ? void 0 : _message$sender.profileUrl
|
|
42
43
|
}))), /*#__PURE__*/React.createElement(Box, {
|
|
43
44
|
flexShrink: 1
|
|
44
|
-
}, !groupedWithPrev && /*#__PURE__*/React.createElement(Box, {
|
|
45
|
+
}, parentMessage, !groupedWithPrev && !message.parentMessage && /*#__PURE__*/React.createElement(Box, {
|
|
45
46
|
marginLeft: 12,
|
|
46
47
|
marginBottom: 4
|
|
47
48
|
}, (message.isFileMessage() || message.isUserMessage()) && /*#__PURE__*/React.createElement(Text, {
|
|
@@ -66,13 +67,14 @@ MessageContainer.Outgoing = function MessageContainerOutgoing(_ref2) {
|
|
|
66
67
|
message,
|
|
67
68
|
groupedWithNext,
|
|
68
69
|
strings,
|
|
69
|
-
sendingStatus
|
|
70
|
+
sendingStatus,
|
|
71
|
+
parentMessage
|
|
70
72
|
} = _ref2;
|
|
71
73
|
const {
|
|
72
74
|
colors
|
|
73
75
|
} = useUIKitTheme();
|
|
74
76
|
const color = colors.ui.groupChannelMessage.outgoing;
|
|
75
|
-
return /*#__PURE__*/React.createElement(Box, {
|
|
77
|
+
return /*#__PURE__*/React.createElement(Box, null, parentMessage, /*#__PURE__*/React.createElement(Box, {
|
|
76
78
|
flexDirection: 'row',
|
|
77
79
|
justifyContent: 'flex-end',
|
|
78
80
|
alignItems: 'flex-end'
|
|
@@ -89,7 +91,7 @@ MessageContainer.Outgoing = function MessageContainerOutgoing(_ref2) {
|
|
|
89
91
|
color: color.enabled.textTime
|
|
90
92
|
}, (strings === null || strings === void 0 ? void 0 : strings.sentDate) ?? getMessageTimeFormat(new Date(message.createdAt))))), /*#__PURE__*/React.createElement(Box, {
|
|
91
93
|
style: styles.bubble
|
|
92
|
-
}, children));
|
|
94
|
+
}, children)));
|
|
93
95
|
};
|
|
94
96
|
const styles = createStyleSheet({
|
|
95
97
|
bubble: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Pressable","getMessageTimeFormat","Box","Text","createStyleSheet","useUIKitTheme","Avatar","MessageContainer","props","variant","createElement","Incoming","Outgoing","MessageContainerIncoming","_ref","_message$sender","children","groupedWithNext","groupedWithPrev","message","onPressAvatar","strings","colors","color","ui","groupChannelMessage","incoming","flexDirection","justifyContent","alignItems","width","marginRight","isFileMessage","isUserMessage","onPress","size","uri","sender","profileUrl","flexShrink","marginLeft","marginBottom","caption1","enabled","textSenderName","numberOfLines","senderName","nickname","style","styles","bubble","caption4","textTime","sentDate","Date","createdAt","MessageContainerOutgoing","_ref2","sendingStatus","outgoing","maxWidth","overflow"],"sources":["MessageContainer.tsx"],"sourcesContent":["import React from 'react';\nimport { Pressable } from 'react-native';\n\nimport type { SendbirdMessage } from '@sendbird/uikit-utils';\nimport { getMessageTimeFormat } from '@sendbird/uikit-utils';\n\nimport Box from '../../components/Box';\nimport Text from '../../components/Text';\nimport createStyleSheet from '../../styles/createStyleSheet';\nimport useUIKitTheme from '../../theme/useUIKitTheme';\nimport Avatar from '../Avatar';\nimport type { GroupChannelMessageProps } from './index';\n\ntype Props = GroupChannelMessageProps<SendbirdMessage>;\n\nconst MessageContainer = (props: Props) => {\n if (props.variant === 'incoming') {\n return <MessageContainer.Incoming {...props} />;\n } else {\n return <MessageContainer.Outgoing {...props} />;\n }\n};\n\nMessageContainer.Incoming = function MessageContainerIncoming({\n children,\n groupedWithNext,\n groupedWithPrev,\n message,\n onPressAvatar,\n strings,\n}: Props) {\n const { colors } = useUIKitTheme();\n const color = colors.ui.groupChannelMessage.incoming;\n\n return (\n <Box flexDirection={'row'} justifyContent={'flex-start'} alignItems={'flex-end'}>\n <Box width={26} marginRight={12}>\n {(message.isFileMessage() || message.isUserMessage()) && !groupedWithNext && (\n <Pressable onPress={onPressAvatar}>\n <Avatar size={26} uri={message.sender?.profileUrl} />\n </Pressable>\n )}\n </Box>\n <Box flexShrink={1}>\n {!groupedWithPrev && (\n <Box marginLeft={12} marginBottom={4}>\n {(message.isFileMessage() || message.isUserMessage()) && (\n <Text caption1 color={color.enabled.textSenderName} numberOfLines={1}>\n {strings?.senderName ?? message.sender.nickname}\n </Text>\n )}\n </Box>\n )}\n\n <Box flexDirection={'row'} alignItems={'flex-end'}>\n <Box style={styles.bubble}>{children}</Box>\n {!groupedWithNext && (\n <Box marginLeft={4}>\n <Text caption4 color={color.enabled.textTime}>\n {strings?.sentDate ?? getMessageTimeFormat(new Date(message.createdAt))}\n </Text>\n </Box>\n )}\n </Box>\n </Box>\n </Box>\n );\n};\n\nMessageContainer.Outgoing = function MessageContainerOutgoing({\n children,\n message,\n groupedWithNext,\n strings,\n sendingStatus,\n}: Props) {\n const { colors } = useUIKitTheme();\n const color = colors.ui.groupChannelMessage.outgoing;\n\n return (\n <Box flexDirection={'row'} justifyContent={'flex-end'} alignItems={'flex-end'}>\n
|
|
1
|
+
{"version":3,"names":["React","Pressable","getMessageTimeFormat","Box","Text","createStyleSheet","useUIKitTheme","Avatar","MessageContainer","props","variant","createElement","Incoming","Outgoing","MessageContainerIncoming","_ref","_message$sender","children","groupedWithNext","groupedWithPrev","message","onPressAvatar","strings","parentMessage","colors","color","ui","groupChannelMessage","incoming","flexDirection","justifyContent","alignItems","width","marginRight","isFileMessage","isUserMessage","onPress","size","uri","sender","profileUrl","flexShrink","marginLeft","marginBottom","caption1","enabled","textSenderName","numberOfLines","senderName","nickname","style","styles","bubble","caption4","textTime","sentDate","Date","createdAt","MessageContainerOutgoing","_ref2","sendingStatus","outgoing","maxWidth","overflow"],"sources":["MessageContainer.tsx"],"sourcesContent":["import React from 'react';\nimport { Pressable } from 'react-native';\n\nimport type { SendbirdMessage } from '@sendbird/uikit-utils';\nimport { getMessageTimeFormat } from '@sendbird/uikit-utils';\n\nimport Box from '../../components/Box';\nimport Text from '../../components/Text';\nimport createStyleSheet from '../../styles/createStyleSheet';\nimport useUIKitTheme from '../../theme/useUIKitTheme';\nimport Avatar from '../Avatar';\nimport type { GroupChannelMessageProps } from './index';\n\ntype Props = GroupChannelMessageProps<SendbirdMessage>;\n\nconst MessageContainer = (props: Props) => {\n if (props.variant === 'incoming') {\n return <MessageContainer.Incoming {...props} />;\n } else {\n return <MessageContainer.Outgoing {...props} />;\n }\n};\n\nMessageContainer.Incoming = function MessageContainerIncoming({\n children,\n groupedWithNext,\n groupedWithPrev,\n message,\n onPressAvatar,\n strings,\n parentMessage,\n}: Props) {\n const { colors } = useUIKitTheme();\n const color = colors.ui.groupChannelMessage.incoming;\n\n return (\n <Box flexDirection={'row'} justifyContent={'flex-start'} alignItems={'flex-end'}>\n <Box width={26} marginRight={12}>\n {(message.isFileMessage() || message.isUserMessage()) && !groupedWithNext && (\n <Pressable onPress={onPressAvatar}>\n <Avatar size={26} uri={message.sender?.profileUrl} />\n </Pressable>\n )}\n </Box>\n <Box flexShrink={1}>\n {parentMessage}\n {!groupedWithPrev && !message.parentMessage && (\n <Box marginLeft={12} marginBottom={4}>\n {(message.isFileMessage() || message.isUserMessage()) && (\n <Text caption1 color={color.enabled.textSenderName} numberOfLines={1}>\n {strings?.senderName ?? message.sender.nickname}\n </Text>\n )}\n </Box>\n )}\n\n <Box flexDirection={'row'} alignItems={'flex-end'}>\n <Box style={styles.bubble}>{children}</Box>\n {!groupedWithNext && (\n <Box marginLeft={4}>\n <Text caption4 color={color.enabled.textTime}>\n {strings?.sentDate ?? getMessageTimeFormat(new Date(message.createdAt))}\n </Text>\n </Box>\n )}\n </Box>\n </Box>\n </Box>\n );\n};\n\nMessageContainer.Outgoing = function MessageContainerOutgoing({\n children,\n message,\n groupedWithNext,\n strings,\n sendingStatus,\n parentMessage,\n}: Props) {\n const { colors } = useUIKitTheme();\n const color = colors.ui.groupChannelMessage.outgoing;\n\n return (\n <Box>\n {parentMessage}\n <Box flexDirection={'row'} justifyContent={'flex-end'} alignItems={'flex-end'}>\n <Box flexDirection={'row'} alignItems={'flex-end'} justifyContent={'center'}>\n {sendingStatus && <Box marginRight={4}>{sendingStatus}</Box>}\n {!groupedWithNext && (\n <Box marginRight={4}>\n <Text caption4 color={color.enabled.textTime}>\n {strings?.sentDate ?? getMessageTimeFormat(new Date(message.createdAt))}\n </Text>\n </Box>\n )}\n </Box>\n <Box style={styles.bubble}>{children}</Box>\n </Box>\n </Box>\n );\n};\n\nconst styles = createStyleSheet({\n bubble: {\n maxWidth: 240,\n overflow: 'hidden',\n flexShrink: 1,\n },\n});\n\nexport default MessageContainer;\n"],"mappings":"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"}
|
|
@@ -28,7 +28,7 @@ const MessageOpenGraph = _ref => {
|
|
|
28
28
|
} = _ref2;
|
|
29
29
|
return /*#__PURE__*/React.createElement(Box, {
|
|
30
30
|
backgroundColor: pressed ? color.pressed.background : color.enabled.background
|
|
31
|
-
},
|
|
31
|
+
}, !!ogMetaData.defaultImage && /*#__PURE__*/React.createElement(ImageWithPlaceholder, {
|
|
32
32
|
style: styles.ogImage,
|
|
33
33
|
source: {
|
|
34
34
|
uri: ogMetaData.defaultImage.url
|
|
@@ -44,7 +44,7 @@ const MessageOpenGraph = _ref => {
|
|
|
44
44
|
body2: true,
|
|
45
45
|
color: colors.onBackground01,
|
|
46
46
|
style: styles.ogTitle
|
|
47
|
-
}, ogMetaData.title),
|
|
47
|
+
}, ogMetaData.title), !!ogMetaData.description && /*#__PURE__*/React.createElement(Text, {
|
|
48
48
|
numberOfLines: 1,
|
|
49
49
|
caption2: true,
|
|
50
50
|
color: colors.onBackground01,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Box","ImageWithPlaceholder","PressBox","Text","createStyleSheet","useUIKitTheme","MessageOpenGraph","_ref","onPressURL","onLongPress","ogMetaData","variant","palette","select","colors","color","ui","groupChannelMessage","createElement","activeOpacity","onPress","url","_ref2","pressed","backgroundColor","background","enabled","
|
|
1
|
+
{"version":3,"names":["React","Box","ImageWithPlaceholder","PressBox","Text","createStyleSheet","useUIKitTheme","MessageOpenGraph","_ref","onPressURL","onLongPress","ogMetaData","variant","palette","select","colors","color","ui","groupChannelMessage","createElement","activeOpacity","onPress","url","_ref2","pressed","backgroundColor","background","enabled","defaultImage","style","styles","ogImage","source","uri","ogContainer","dark","background400","light","background100","numberOfLines","body2","onBackground01","ogTitle","title","description","caption2","ogDesc","onBackground02","overflow","paddingHorizontal","paddingTop","paddingBottom","maxWidth","width","height","ogUrl","marginBottom","lineHeight"],"sources":["MessageOpenGraph.tsx"],"sourcesContent":["import React from 'react';\n\nimport type { SendbirdUserMessage } from '@sendbird/uikit-utils';\n\nimport Box from '../../components/Box';\nimport ImageWithPlaceholder from '../../components/ImageWithPlaceholder';\nimport PressBox from '../../components/PressBox';\nimport Text from '../../components/Text';\nimport createStyleSheet from '../../styles/createStyleSheet';\nimport useUIKitTheme from '../../theme/useUIKitTheme';\n\nconst MessageOpenGraph = ({\n onPressURL,\n onLongPress,\n ogMetaData,\n variant,\n}: {\n ogMetaData: NonNullable<SendbirdUserMessage['ogMetaData']>;\n variant: 'outgoing' | 'incoming';\n onPressURL?: (url: string) => void;\n onLongPress?: () => void;\n}) => {\n const { palette, select, colors } = useUIKitTheme();\n const color = colors.ui.groupChannelMessage[variant];\n\n return (\n <PressBox\n activeOpacity={0.85}\n onPress={() => typeof ogMetaData?.url === 'string' && onPressURL?.(ogMetaData.url)}\n onLongPress={onLongPress}\n >\n {({ pressed }) => (\n <Box backgroundColor={pressed ? color.pressed.background : color.enabled.background}>\n {!!ogMetaData.defaultImage && (\n <ImageWithPlaceholder style={styles.ogImage} source={{ uri: ogMetaData.defaultImage.url }} />\n )}\n\n <Box\n style={styles.ogContainer}\n backgroundColor={select({ dark: palette.background400, light: palette.background100 })}\n >\n <Text numberOfLines={3} body2 color={colors.onBackground01} style={styles.ogTitle}>\n {ogMetaData.title}\n </Text>\n {!!ogMetaData.description && (\n <Text numberOfLines={1} caption2 color={colors.onBackground01} style={styles.ogDesc}>\n {ogMetaData.description}\n </Text>\n )}\n <Text numberOfLines={1} caption2 color={colors.onBackground02}>\n {ogMetaData.url}\n </Text>\n </Box>\n </Box>\n )}\n </PressBox>\n );\n};\n\nconst styles = createStyleSheet({\n ogContainer: {\n overflow: 'hidden',\n paddingHorizontal: 12,\n paddingTop: 8,\n paddingBottom: 12,\n },\n ogImage: {\n maxWidth: 240,\n width: 240,\n height: 136,\n },\n ogUrl: {\n marginBottom: 4,\n },\n ogTitle: {\n marginBottom: 4,\n },\n ogDesc: {\n lineHeight: 14,\n marginBottom: 8,\n },\n});\n\nexport default MessageOpenGraph;\n"],"mappings":"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"}
|