@smart-link/rn-im 1.0.22 → 1.0.24

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.
Files changed (155) hide show
  1. package/dist/api/addressList.js +6 -17
  2. package/dist/api/backup.js +8 -20
  3. package/dist/api/file.js +6 -35
  4. package/dist/api/user.js +6 -16
  5. package/dist/components/CachedImage.js +14 -42
  6. package/dist/components/Camera/Camera.js +26 -54
  7. package/dist/components/Camera/CameraCapture.js +99 -128
  8. package/dist/components/Camera/CameraResult.js +33 -61
  9. package/dist/components/ChatAvatar/ChatAvatar.d.ts +1 -1
  10. package/dist/components/ChatAvatar/ChatAvatar.js +34 -62
  11. package/dist/components/ChatAvatar/ChatAvatarId.d.ts +2 -2
  12. package/dist/components/ChatAvatar/ChatAvatarId.js +26 -51
  13. package/dist/components/ChatAvatar/ChatAvatarLocal.d.ts +2 -2
  14. package/dist/components/ChatAvatar/ChatAvatarLocal.js +23 -25
  15. package/dist/components/ChatAvatar/index.js +2 -23
  16. package/dist/components/Favicon.js +6 -34
  17. package/dist/components/FormatTimeText.js +5 -10
  18. package/dist/components/Highlighter.js +9 -34
  19. package/dist/components/IndicatorText.js +14 -39
  20. package/dist/components/LocalImage.js +7 -32
  21. package/dist/components/NetworkUnconnected.js +14 -42
  22. package/dist/components/PopoverWrapper.js +22 -47
  23. package/dist/components/VideoPlayer.js +111 -138
  24. package/dist/components/styles.js +10 -13
  25. package/dist/default-assets.d.ts +1 -0
  26. package/dist/default-assets.js +8 -10
  27. package/dist/hooks/useDownloadSource.js +7 -12
  28. package/dist/hooks/useFormatMsgTime.js +5 -13
  29. package/dist/hooks/useImReady.js +7 -10
  30. package/dist/hooks/useImSelector.js +34 -48
  31. package/dist/hooks/useTranslation.js +5 -10
  32. package/dist/index.d.ts +1 -0
  33. package/dist/index.js +8 -28
  34. package/dist/init.js +30 -40
  35. package/dist/interface.js +1 -2
  36. package/dist/locales/en/addressList.js +1 -3
  37. package/dist/locales/index.js +4 -27
  38. package/dist/locales/lao/addressList.js +1 -3
  39. package/dist/locales/zh/addressList.js +1 -3
  40. package/dist/pages/address-list/AddressList.js +33 -61
  41. package/dist/pages/address-list/CardInfo.js +10 -18
  42. package/dist/pages/address-list/ChooseContact.js +50 -78
  43. package/dist/pages/address-list/Icons.js +7 -14
  44. package/dist/pages/address-list/Organization.js +59 -89
  45. package/dist/pages/address-list/UserDetail.js +55 -83
  46. package/dist/pages/address-list/UserJobs.js +31 -33
  47. package/dist/pages/address-list/UserSearch.js +29 -54
  48. package/dist/pages/address-list/addressList.routes.js +11 -16
  49. package/dist/pages/collection/Collection.js +53 -81
  50. package/dist/pages/collection/ContentFactory.js +53 -82
  51. package/dist/pages/collection/collection.routes.js +3 -9
  52. package/dist/pages/conversation/ForwardToConversation.js +63 -91
  53. package/dist/pages/conversation/List.js +74 -102
  54. package/dist/pages/conversation/components/ConversationCard.js +52 -81
  55. package/dist/pages/conversation/components/ConversationOption.js +27 -55
  56. package/dist/pages/conversation/conversation.routes.js +17 -23
  57. package/dist/pages/conversation/setting/GroupTransfer.js +32 -60
  58. package/dist/pages/conversation/setting/OptionAvatars.js +62 -90
  59. package/dist/pages/conversation/setting/OptionCancelGroup.js +14 -42
  60. package/dist/pages/conversation/setting/OptionConversation.js +20 -48
  61. package/dist/pages/conversation/setting/OptionGroup.js +20 -48
  62. package/dist/pages/conversation/setting/OptionGroupManage.js +21 -49
  63. package/dist/pages/conversation/setting/OptionGroupMoreMember.js +48 -53
  64. package/dist/pages/conversation/setting/OptionGroupNameOrNoticeEdit.js +49 -77
  65. package/dist/pages/conversation/setting/Setting.js +49 -54
  66. package/dist/pages/conversation/setting/SettingChatBg.js +26 -54
  67. package/dist/pages/index.js +7 -27
  68. package/dist/pages/message/ChooseMember.js +56 -84
  69. package/dist/pages/message/MessageBackup/Bar.js +18 -43
  70. package/dist/pages/message/MessageBackup/MessageBackup.js +42 -72
  71. package/dist/pages/message/MessageBackup/RestoreBackupPage.js +48 -76
  72. package/dist/pages/message/MessageBackup/StartBackupPage.js +48 -76
  73. package/dist/pages/message/MessageBackup/index.js +3 -12
  74. package/dist/pages/message/MessageBackup/utils.js +14 -22
  75. package/dist/pages/message/MessageList.js +141 -134
  76. package/dist/pages/message/MessageRecord.js +49 -73
  77. package/dist/pages/message/components/BusiNotifyCard.js +60 -85
  78. package/dist/pages/message/components/ChatBg.js +11 -36
  79. package/dist/pages/message/components/MessageItem.js +82 -110
  80. package/dist/pages/message/components/MessageItemQuote.js +30 -58
  81. package/dist/pages/message/components/MessageItemTips.js +27 -55
  82. package/dist/pages/message/components/MessageOption.js +96 -120
  83. package/dist/pages/message/components/MessagePayload.js +36 -64
  84. package/dist/pages/message/components/MessagePictureAlbum.js +32 -60
  85. package/dist/pages/message/components/MessageReceiptStatus.js +18 -43
  86. package/dist/pages/message/components/MessageUndo.js +18 -48
  87. package/dist/pages/message/components/MultipleBar/index.js +48 -76
  88. package/dist/pages/message/components/Payload/PayloadContact.js +30 -58
  89. package/dist/pages/message/components/Payload/PayloadFile.js +41 -65
  90. package/dist/pages/message/components/Payload/PayloadMultiple.js +38 -66
  91. package/dist/pages/message/components/Payload/PayloadNotify.js +28 -56
  92. package/dist/pages/message/components/Payload/PayloadPicture.js +21 -49
  93. package/dist/pages/message/components/Payload/PayloadShare.js +39 -67
  94. package/dist/pages/message/components/Payload/PayloadText.js +39 -67
  95. package/dist/pages/message/components/Payload/PayloadVideo.js +28 -56
  96. package/dist/pages/message/components/Payload/PayloadVoice.js +80 -93
  97. package/dist/pages/message/components/Payload/PayloadWrapper.js +18 -43
  98. package/dist/pages/message/components/Payload/type.js +1 -2
  99. package/dist/pages/message/components/ReceiptBack.js +31 -61
  100. package/dist/pages/message/components/TextMixMessage.js +13 -38
  101. package/dist/pages/message/components/TextMixQuote.js +129 -158
  102. package/dist/pages/message/components/TextMixQuoteMessage.js +16 -44
  103. package/dist/pages/message/components/UploadProgress.js +12 -37
  104. package/dist/pages/message/components/messageBar/EmojiPanel.js +25 -50
  105. package/dist/pages/message/components/messageBar/Icons.js +56 -74
  106. package/dist/pages/message/components/messageBar/MessageBar.js +84 -115
  107. package/dist/pages/message/components/messageBar/MessageInput.js +30 -55
  108. package/dist/pages/message/components/messageBar/OptionPanel.js +54 -82
  109. package/dist/pages/message/components/messageBar/VoiceBar.js +122 -100
  110. package/dist/pages/message/components/messageBar/index.js +2 -23
  111. package/dist/pages/message/message.routes.js +11 -40
  112. package/dist/pages/search/Search.js +38 -66
  113. package/dist/pages/search/SearchChatRecords.js +64 -92
  114. package/dist/pages/search/SearchFile.js +68 -96
  115. package/dist/pages/search/SearchManager.js +60 -65
  116. package/dist/pages/search/SearchPicturePage.js +16 -44
  117. package/dist/pages/search/components/ChatRecords.js +46 -74
  118. package/dist/pages/search/components/MyGroupChat.js +41 -69
  119. package/dist/pages/search/components/PictureMulipleBar.js +35 -63
  120. package/dist/pages/search/components/SearchFileList.js +59 -64
  121. package/dist/pages/search/components/SearchPictures.js +68 -98
  122. package/dist/pages/search/components/SearchShareLinkList.js +50 -55
  123. package/dist/pages/search/components/SearchUser.js +25 -53
  124. package/dist/pages/search/components/useSearchMessage.js +12 -16
  125. package/dist/pages/search/search.routes.js +11 -17
  126. package/dist/pages/search/utils.js +4 -12
  127. package/dist/pages/types.js +1 -2
  128. package/dist/slice/contact/contact.action.js +1 -2
  129. package/dist/slice/contact/contact.slice.js +7 -11
  130. package/dist/slice/index.js +7 -13
  131. package/dist/slice/panel/panel.slice.d.ts +2 -1
  132. package/dist/slice/panel/panel.slice.js +8 -7
  133. package/dist/slice/video/video.action.d.ts +1 -0
  134. package/dist/slice/video/video.action.js +56 -38
  135. package/dist/slice/video/video.slice.d.ts +1 -1
  136. package/dist/slice/video/video.slice.js +7 -8
  137. package/dist/utils/audio.d.ts +3 -0
  138. package/dist/utils/audio.js +10 -0
  139. package/dist/utils/color.js +2 -9
  140. package/dist/utils/common-action-sheet.js +9 -14
  141. package/dist/utils/cookie.js +6 -14
  142. package/dist/utils/emoji.js +9 -12
  143. package/dist/utils/file-icon.js +33 -60
  144. package/dist/utils/file-operate.js +1 -2
  145. package/dist/utils/file.d.ts +1 -1
  146. package/dist/utils/file.js +74 -87
  147. package/dist/utils/golden-rectangle.js +3 -7
  148. package/dist/utils/phone.js +13 -22
  149. package/dist/utils/request.js +7 -15
  150. package/dist/utils/scroll.js +5 -9
  151. package/dist/utils/summary.js +4 -11
  152. package/dist/utils/take-camera.js +12 -19
  153. package/dist/utils/text-mix.js +4 -11
  154. package/dist/utils/upload.js +20 -41
  155. package/package.json +6 -7
@@ -1,27 +1,3 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
1
  var __rest = (this && this.__rest) || function (s, e) {
26
2
  var t = {};
27
3
  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
@@ -33,45 +9,41 @@ var __rest = (this && this.__rest) || function (s, e) {
33
9
  }
34
10
  return t;
35
11
  };
36
- var __importDefault = (this && this.__importDefault) || function (mod) {
37
- return (mod && mod.__esModule) ? mod : { "default": mod };
38
- };
39
- Object.defineProperty(exports, "__esModule", { value: true });
40
- const react_1 = __importStar(require("react"));
41
- const react_native_1 = require("react-native");
42
- const react_native_svg_1 = require("react-native-svg");
43
- const golden_rectangle_1 = require("../../../../utils/golden-rectangle");
44
- const styles_1 = require("../../../../components/styles");
45
- const rn_ui_1 = require("@smart-link/rn-ui");
46
- const PayloadWrapper_1 = __importDefault(require("./PayloadWrapper"));
47
- const react_native_fast_image_1 = __importDefault(require("react-native-fast-image"));
48
- const useDownloadSource_1 = __importDefault(require("../../../../hooks/useDownloadSource"));
49
- const file_1 = require("../../../../utils/file");
50
- const { width: screenWidth } = react_native_1.Dimensions.get('window');
12
+ import React, { memo, useEffect } from 'react';
13
+ import { Dimensions, View } from 'react-native';
14
+ import { SvgFromUri } from 'react-native-svg';
15
+ import { calculate } from '../../../../utils/golden-rectangle';
16
+ import { borderStyle, shadowStyle } from '../../../../components/styles';
17
+ import { dp } from '@smart-link/rn-ui';
18
+ import PayloadWrapper from './PayloadWrapper';
19
+ import Image from 'react-native-fast-image';
20
+ import useDownloadSource from "../../../../hooks/useDownloadSource";
21
+ import { toAbsolutePath } from "../../../../utils/file";
22
+ const { width: screenWidth } = Dimensions.get('window');
51
23
  const PayloadPicture = (_a) => {
52
24
  var { payload, onLoad } = _a, retProps = __rest(_a, ["payload", "onLoad"]);
53
25
  const ext = payload.filename.split('.').pop();
54
- const localPath = (0, useDownloadSource_1.default)(payload);
55
- (0, react_1.useEffect)(() => {
26
+ const localPath = useDownloadSource(payload);
27
+ useEffect(() => {
56
28
  if (localPath) {
57
29
  onLoad === null || onLoad === void 0 ? void 0 : onLoad(localPath);
58
30
  }
59
31
  }, [onLoad, localPath]);
60
- const size = (0, golden_rectangle_1.calculate)(payload.height || (0, rn_ui_1.dp)(163), payload.width || (0, rn_ui_1.dp)(100), 200);
32
+ const size = calculate(payload.height || dp(163), payload.width || dp(100), 200);
61
33
  if (!localPath) {
62
- return <react_native_1.View style={[styles_1.borderStyle, size, { alignItems: 'center', justifyContent: 'center', backgroundColor: 'rgba(0,0,0, 0.8)' }]}/>;
34
+ return <View style={[borderStyle, size, { alignItems: 'center', justifyContent: 'center', backgroundColor: 'rgba(0,0,0, 0.8)' }]}/>;
63
35
  }
64
36
  let content;
65
37
  if (/svg/i.test(ext)) {
66
- content = <react_native_svg_1.SvgFromUri style={[styles_1.borderStyle]} uri={localPath} viewBox={'0 0 1024 1024'} width={screenWidth * 0.4} height={screenWidth * 0.4}/>;
38
+ content = <SvgFromUri style={[borderStyle]} uri={localPath} viewBox={'0 0 1024 1024'} width={screenWidth * 0.4} height={screenWidth * 0.4}/>;
67
39
  }
68
40
  else {
69
- content = <react_native_fast_image_1.default resizeMode="cover" style={[styles_1.borderStyle, size]} source={{
70
- uri: (0, file_1.toAbsolutePath)(localPath),
41
+ content = <Image resizeMode="cover" style={[borderStyle, size]} source={{
42
+ uri: toAbsolutePath(localPath),
71
43
  }}/>;
72
44
  }
73
- return <PayloadWrapper_1.default style={styles_1.shadowStyle} {...retProps}>
45
+ return <PayloadWrapper style={shadowStyle} {...retProps}>
74
46
  {content}
75
- </PayloadWrapper_1.default>;
47
+ </PayloadWrapper>;
76
48
  };
77
- exports.default = (0, react_1.memo)(PayloadPicture);
49
+ export default memo(PayloadPicture);
@@ -1,100 +1,72 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- const react_1 = __importStar(require("react"));
30
- const useTranslation_1 = __importDefault(require("../../../../hooks/useTranslation"));
31
- const rn_ui_1 = require("@smart-link/rn-ui");
32
- const react_native_1 = require("react-native");
33
- const PayloadWrapper_1 = __importDefault(require("./PayloadWrapper"));
34
- const styles_1 = require("../../../../components/styles");
35
- const Favicon_1 = __importDefault(require("../../../../components/Favicon"));
36
- const size = (0, rn_ui_1.dp)(45);
1
+ import React, { memo } from 'react';
2
+ import useTranslation from "../../../../hooks/useTranslation";
3
+ import { dp } from "@smart-link/rn-ui";
4
+ import { Linking, StyleSheet, Text, View } from "react-native";
5
+ import PayloadWrapper from "./PayloadWrapper";
6
+ import { borderStyle, shadowStyle } from "../../../../components/styles";
7
+ import Favicon from "../../../../components/Favicon";
8
+ const size = dp(45);
37
9
  // const backgroundColor = '#fff';
38
10
  const borderColor = '#eee';
39
11
  const PayloadShare = ({ payload, direction, showArrow = true, style, onLongPress }) => {
40
- const { t } = (0, useTranslation_1.default)();
12
+ const { t } = useTranslation();
41
13
  const { title, url, description } = payload;
42
- return (<PayloadWrapper_1.default direction={direction} showArrow={showArrow} style={[style, styles.share]} onPress={() => {
14
+ return (<PayloadWrapper direction={direction} showArrow={showArrow} style={[style, styles.share]} onPress={() => {
43
15
  if (url === null || url === void 0 ? void 0 : url.startsWith('http')) {
44
- react_native_1.Linking.openURL(url);
16
+ Linking.openURL(url);
45
17
  }
46
18
  }} onLongPress={onLongPress}>
47
- <react_native_1.View style={styles.card}>
48
- <react_native_1.Text style={styles.title} numberOfLines={2}>{title}</react_native_1.Text>
49
- <react_native_1.View style={styles.h5}/>
50
- <react_native_1.View style={styles.info}>
51
- <react_native_1.Text style={styles.description} numberOfLines={3}>{description}</react_native_1.Text>
52
- <react_native_1.View style={styles.w10}/>
19
+ <View style={styles.card}>
20
+ <Text style={styles.title} numberOfLines={2}>{title}</Text>
21
+ <View style={styles.h5}/>
22
+ <View style={styles.info}>
23
+ <Text style={styles.description} numberOfLines={3}>{description}</Text>
24
+ <View style={styles.w10}/>
53
25
  {/* favicon */}
54
- <Favicon_1.default url={url} size={size}/>
55
- </react_native_1.View>
56
- </react_native_1.View>
57
- <react_native_1.View style={styles.line}/>
58
- <react_native_1.Text style={styles.shareName}>{t('shareLink')}</react_native_1.Text>
59
- </PayloadWrapper_1.default>);
26
+ <Favicon url={url} size={size}/>
27
+ </View>
28
+ </View>
29
+ <View style={styles.line}/>
30
+ <Text style={styles.shareName}>{t('shareLink')}</Text>
31
+ </PayloadWrapper>);
60
32
  };
61
- const styles = react_native_1.StyleSheet.create({
33
+ const styles = StyleSheet.create({
62
34
  share: Object.assign(Object.assign(Object.assign({
63
35
  // backgroundColor,
64
- paddingHorizontal: (0, rn_ui_1.dp)(10), paddingTop: (0, rn_ui_1.dp)(10), paddingBottom: (0, rn_ui_1.dp)(5) }, styles_1.shadowStyle), styles_1.borderStyle), { borderColor }),
36
+ paddingHorizontal: dp(10), paddingTop: dp(10), paddingBottom: dp(5) }, shadowStyle), borderStyle), { borderColor }),
65
37
  card: {},
66
38
  title: {
67
- width: (0, rn_ui_1.dp)(230),
39
+ width: dp(230),
68
40
  color: '#333',
69
- lineHeight: (0, rn_ui_1.dp)(20),
70
- fontSize: (0, rn_ui_1.dp)(14),
41
+ lineHeight: dp(20),
42
+ fontSize: dp(14),
71
43
  },
72
44
  description: {
73
- width: (0, rn_ui_1.dp)(180),
45
+ width: dp(180),
74
46
  color: '#999',
75
- lineHeight: (0, rn_ui_1.dp)(18),
76
- fontSize: (0, rn_ui_1.dp)(12),
47
+ lineHeight: dp(18),
48
+ fontSize: dp(12),
77
49
  },
78
50
  info: {
79
51
  flexDirection: 'row',
80
52
  },
81
53
  h5: {
82
- height: (0, rn_ui_1.dp)(5),
54
+ height: dp(5),
83
55
  },
84
56
  w10: {
85
- width: (0, rn_ui_1.dp)(10),
57
+ width: dp(10),
86
58
  },
87
59
  line: {
88
- marginTop: (0, rn_ui_1.dp)(10),
89
- marginBottom: (0, rn_ui_1.dp)(5),
60
+ marginTop: dp(10),
61
+ marginBottom: dp(5),
90
62
  backgroundColor: '#eee',
91
63
  width: '100%',
92
- height: (0, rn_ui_1.dp)(1),
64
+ height: dp(1),
93
65
  },
94
66
  shareName: {
95
67
  color: '#777',
96
- paddingLeft: (0, rn_ui_1.dp)(3),
97
- fontSize: (0, rn_ui_1.dp)(13),
68
+ paddingLeft: dp(3),
69
+ fontSize: dp(13),
98
70
  }
99
71
  });
100
- exports.default = (0, react_1.memo)(PayloadShare);
72
+ export default memo(PayloadShare);
@@ -1,72 +1,44 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- const react_1 = __importStar(require("react"));
30
- const react_native_1 = require("react-native");
31
- const styles_1 = require("../../../../components/styles");
32
- const rn_ui_1 = require("@smart-link/rn-ui");
33
- const TextMixQuoteMessage_1 = __importDefault(require("../TextMixQuoteMessage"));
34
- const useTranslation_1 = __importDefault(require("../../../../hooks/useTranslation"));
35
- const phone_1 = require("../../../../utils/phone");
36
- const PayloadWrapper_1 = __importDefault(require("./PayloadWrapper"));
37
- const init_1 = require("../../../../init");
38
- const im_base_1 = require("@smart-link/im-base");
39
- const clipboard_1 = __importDefault(require("@react-native-clipboard/clipboard"));
1
+ import React, { memo } from 'react';
2
+ import { Dimensions, StyleSheet, Linking } from 'react-native';
3
+ import { borderStyle, plain, shadowStyle } from '../../../../components/styles';
4
+ import { ActionSheet, dp, Toast } from '@smart-link/rn-ui';
5
+ import TextMixQuoteMessage from '../TextMixQuoteMessage';
6
+ import useTranslation from '../../../../hooks/useTranslation';
7
+ import { addContacts, callPhone, copyPhone } from '../../../../utils/phone';
8
+ import PayloadWrapper from './PayloadWrapper';
9
+ import { getImManager } from '../../../../init';
10
+ import { MessagePanelActions } from '@smart-link/im-base';
11
+ import Clipboard from '@react-native-clipboard/clipboard';
40
12
  const PayloadText = ({ payload, onLongPress, onPress, isRecord, showArrow = true, direction, style }) => {
41
- const { t } = (0, useTranslation_1.default)();
13
+ const { t } = useTranslation();
42
14
  const { text, quote } = payload;
43
15
  const onLongPressPhone = (phone) => {
44
- rn_ui_1.ActionSheet.open({
16
+ ActionSheet.open({
45
17
  title: phone + " " + t('mayPhone'),
46
18
  onClose: () => {
47
- rn_ui_1.ActionSheet.destroy();
19
+ ActionSheet.destroy();
48
20
  },
49
21
  options: [
50
22
  {
51
23
  text: t('copy'),
52
24
  onPress: () => {
53
- (0, phone_1.copyPhone)(phone);
54
- rn_ui_1.ActionSheet.destroy();
55
- rn_ui_1.Toast.info(t('copied'));
25
+ copyPhone(phone);
26
+ ActionSheet.destroy();
27
+ Toast.info(t('copied'));
56
28
  }
57
29
  },
58
30
  {
59
31
  text: t('callPhone'),
60
32
  onPress: () => {
61
- (0, phone_1.callPhone)(phone);
62
- rn_ui_1.ActionSheet.destroy();
33
+ callPhone(phone);
34
+ ActionSheet.destroy();
63
35
  },
64
36
  },
65
37
  {
66
38
  text: t('addToContacts'),
67
39
  onPress: () => {
68
- (0, phone_1.addContacts)(phone);
69
- rn_ui_1.ActionSheet.destroy();
40
+ addContacts(phone);
41
+ ActionSheet.destroy();
70
42
  }
71
43
  }
72
44
  ],
@@ -76,25 +48,25 @@ const PayloadText = ({ payload, onLongPress, onPress, isRecord, showArrow = true
76
48
  });
77
49
  };
78
50
  const onLongPressURL = (url) => {
79
- rn_ui_1.ActionSheet.open({
51
+ ActionSheet.open({
80
52
  title: url,
81
53
  onClose: () => {
82
- rn_ui_1.ActionSheet.destroy();
54
+ ActionSheet.destroy();
83
55
  },
84
56
  options: [
85
57
  {
86
58
  text: t('openURL'),
87
59
  onPress: () => {
88
- react_native_1.Linking.openURL(url);
89
- rn_ui_1.ActionSheet.destroy();
90
- rn_ui_1.Toast.info(t('copied'));
60
+ Linking.openURL(url);
61
+ ActionSheet.destroy();
62
+ Toast.info(t('copied'));
91
63
  }
92
64
  },
93
65
  {
94
66
  text: t('copyURL'),
95
67
  onPress: () => {
96
- clipboard_1.default.setString(url);
97
- rn_ui_1.ActionSheet.destroy();
68
+ Clipboard.setString(url);
69
+ ActionSheet.destroy();
98
70
  },
99
71
  },
100
72
  ],
@@ -109,24 +81,24 @@ const PayloadText = ({ payload, onLongPress, onPress, isRecord, showArrow = true
109
81
  onPress === null || onPress === void 0 ? void 0 : onPress();
110
82
  return;
111
83
  }
112
- const imManager = (0, init_1.getImManager)();
113
- imManager.store.dispatch(im_base_1.MessagePanelActions.onPressQuote(imManager, quoteMessageSeq));
84
+ const imManager = getImManager();
85
+ imManager.store.dispatch(MessagePanelActions.onPressQuote(imManager, quoteMessageSeq));
114
86
  };
115
- return (<PayloadWrapper_1.default direction={direction} showArrow={showArrow} onLongPress={onLongPress} style={[style, styles_1.plain]}>
116
- <TextMixQuoteMessage_1.default text={text} quote={quote} textStyle={[styles.text]} quoteStyle={styles.quote} quoteBgColor='#fff' onLongPressPhone={onLongPressPhone} onLongPressURL={onLongPressURL} onPressQuote={onPressQuote}/>
117
- </PayloadWrapper_1.default>);
87
+ return (<PayloadWrapper direction={direction} showArrow={showArrow} onLongPress={onLongPress} style={[style, plain]}>
88
+ <TextMixQuoteMessage text={text} quote={quote} textStyle={[styles.text]} quoteStyle={styles.quote} quoteBgColor='#fff' onLongPressPhone={onLongPressPhone} onLongPressURL={onLongPressURL} onPressQuote={onPressQuote}/>
89
+ </PayloadWrapper>);
118
90
  };
119
- const styles = react_native_1.StyleSheet.create({
120
- popoverTextMix: Object.assign(Object.assign({ alignSelf: 'flex-start', maxWidth: react_native_1.Dimensions.get('window').width - 120, padding: (0, rn_ui_1.dp)(8) }, styles_1.borderStyle), styles_1.shadowStyle),
91
+ const styles = StyleSheet.create({
92
+ popoverTextMix: Object.assign(Object.assign({ alignSelf: 'flex-start', maxWidth: Dimensions.get('window').width - 120, padding: dp(8) }, borderStyle), shadowStyle),
121
93
  h5: {
122
- height: (0, rn_ui_1.dp)(5),
94
+ height: dp(5),
123
95
  },
124
96
  text: {
125
97
  color: '#222',
126
- fontSize: (0, rn_ui_1.dp)(14),
98
+ fontSize: dp(14),
127
99
  },
128
100
  quote: {
129
- padding: (0, rn_ui_1.dp)(6)
101
+ padding: dp(6)
130
102
  },
131
103
  });
132
- exports.default = (0, react_1.memo)(PayloadText);
104
+ export default memo(PayloadText);
@@ -1,67 +1,39 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- const react_1 = __importStar(require("react"));
30
- const im_base_1 = require("@smart-link/im-base");
31
- const rn_ui_1 = require("@smart-link/rn-ui");
32
- const react_native_1 = require("react-native");
33
- const file_1 = require("../../../../api/file");
34
- const golden_rectangle_1 = require("../../../../utils/golden-rectangle");
35
- const MaterialIcons_1 = __importDefault(require("react-native-vector-icons/MaterialIcons"));
36
- const video_action_1 = require("../../../../slice/video/video.action");
37
- const styles_1 = require("../../../../components/styles");
38
- const UploadProgress_1 = __importDefault(require("../UploadProgress"));
39
- const PayloadWrapper_1 = __importDefault(require("./PayloadWrapper"));
40
- const init_1 = require("../../../../init");
41
- const react_native_fast_image_1 = __importDefault(require("react-native-fast-image"));
1
+ import React, { memo } from 'react';
2
+ import { MessageStatus, numberToTime } from '@smart-link/im-base';
3
+ import { dp } from '@smart-link/rn-ui';
4
+ import { StyleSheet, View, Text } from 'react-native';
5
+ import { getDownloadUrl } from '../../../../api/file';
6
+ import { calculate } from '../../../../utils/golden-rectangle';
7
+ import Icon from 'react-native-vector-icons/MaterialIcons';
8
+ import { loadVideoPlayer } from '../../../../slice/video/video.action';
9
+ import { borderStyle, shadowStyle } from '../../../../components/styles';
10
+ import UploadProgress from '../UploadProgress';
11
+ import PayloadWrapper from './PayloadWrapper';
12
+ import { getImManager } from '../../../../init';
13
+ import Image from 'react-native-fast-image';
42
14
  const PayloadVideo = ({ messageStatus, messageSeq, payload, sendSize = 0, isRecord, onLongPress }) => {
43
15
  const { width, height } = payload;
44
- const size = (0, golden_rectangle_1.calculate)(height || (0, rn_ui_1.dp)(163), width || (0, rn_ui_1.dp)(100));
16
+ const size = calculate(height || dp(163), width || dp(100));
45
17
  const thumbnail = payload.imagePath ? { uri: 'file://' + payload.imagePath }
46
- : { uri: (0, file_1.getDownloadUrl)(payload.imageFileId) };
47
- return (<PayloadWrapper_1.default style={[styles.root, styles_1.shadowStyle, styles_1.borderStyle, size]} onPress={() => {
48
- (0, init_1.getImManager)().store.dispatch((0, video_action_1.loadVideoPlayer)({
18
+ : { uri: getDownloadUrl(payload.imageFileId) };
19
+ return (<PayloadWrapper style={[styles.root, shadowStyle, borderStyle, size]} onPress={() => {
20
+ getImManager().store.dispatch(loadVideoPlayer({
49
21
  messageSeq,
50
22
  payload,
51
23
  isRecord
52
24
  }));
53
25
  }} onLongPress={onLongPress}>
54
- {payload.imagePath || payload.imageFileId ? <react_native_fast_image_1.default style={[size, styles_1.borderStyle]} resizeMode='cover' source={thumbnail}/> : <react_native_1.View style={[size, styles_1.borderStyle, { backgroundColor: '#000' }]}/>}
55
- <UploadProgress_1.default show={messageStatus === im_base_1.MessageStatus.EMITTING && !payload.fileId && payload.size > 0} width={size.width} sendSize={sendSize} totalSize={payload.size}/>
56
- <react_native_1.View style={styles.playView}>
57
- <MaterialIcons_1.default size={30} name='play-circle-outline' color='#fff'/>
58
- </react_native_1.View>
59
- <react_native_1.View style={{ position: 'absolute', bottom: (0, rn_ui_1.dp)(5), right: (0, rn_ui_1.dp)(5) }}>
60
- <react_native_1.Text style={{ fontSize: (0, rn_ui_1.dp)(12), color: '#fff' }}>{(0, im_base_1.numberToTime)(payload.duration)}</react_native_1.Text>
61
- </react_native_1.View>
62
- </PayloadWrapper_1.default>);
26
+ {payload.imagePath || payload.imageFileId ? <Image style={[size, borderStyle]} resizeMode='cover' source={thumbnail}/> : <View style={[size, borderStyle, { backgroundColor: '#000' }]}/>}
27
+ <UploadProgress show={messageStatus === MessageStatus.EMITTING && !payload.fileId && payload.size > 0} width={size.width} sendSize={sendSize} totalSize={payload.size}/>
28
+ <View style={styles.playView}>
29
+ <Icon size={30} name='play-circle-outline' color='#fff'/>
30
+ </View>
31
+ <View style={{ position: 'absolute', bottom: dp(5), right: dp(5) }}>
32
+ <Text style={{ fontSize: dp(12), color: '#fff' }}>{numberToTime(payload.duration)}</Text>
33
+ </View>
34
+ </PayloadWrapper>);
63
35
  };
64
- const styles = react_native_1.StyleSheet.create({
36
+ const styles = StyleSheet.create({
65
37
  root: {
66
38
  backgroundColor: 'rgba(0,0,0, 0.8)',
67
39
  },
@@ -75,4 +47,4 @@ const styles = react_native_1.StyleSheet.create({
75
47
  alignItems: 'center',
76
48
  },
77
49
  });
78
- exports.default = (0, react_1.memo)(PayloadVideo);
50
+ export default memo(PayloadVideo);