stream-chat-react-native-core 5.21.0 → 5.22.0-beta.2

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 (86) hide show
  1. package/lib/commonjs/components/ImageGallery/ImageGallery.js +6 -5
  2. package/lib/commonjs/components/ImageGallery/ImageGallery.js.map +1 -1
  3. package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js +18 -15
  4. package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  5. package/lib/commonjs/components/ImageGallery/components/ImageGalleryVideoControl.js +41 -12
  6. package/lib/commonjs/components/ImageGallery/components/ImageGalleryVideoControl.js.map +1 -1
  7. package/lib/commonjs/components/Indicators/EmptyStateIndicator.js +10 -7
  8. package/lib/commonjs/components/Indicators/EmptyStateIndicator.js.map +1 -1
  9. package/lib/commonjs/components/Message/MessageSimple/ReactionList.js +18 -17
  10. package/lib/commonjs/components/Message/MessageSimple/ReactionList.js.map +1 -1
  11. package/lib/commonjs/contexts/themeContext/utils/theme.js +1 -0
  12. package/lib/commonjs/contexts/themeContext/utils/theme.js.map +1 -1
  13. package/lib/commonjs/i18n/en.json +2 -0
  14. package/lib/commonjs/i18n/es.json +74 -0
  15. package/lib/commonjs/i18n/fr.json +30 -28
  16. package/lib/commonjs/i18n/he.json +3 -1
  17. package/lib/commonjs/i18n/hi.json +30 -28
  18. package/lib/commonjs/i18n/it.json +30 -28
  19. package/lib/commonjs/i18n/ja.json +3 -1
  20. package/lib/commonjs/i18n/ko.json +3 -1
  21. package/lib/commonjs/i18n/nl.json +30 -28
  22. package/lib/commonjs/i18n/ru.json +30 -28
  23. package/lib/commonjs/i18n/tr.json +30 -28
  24. package/lib/commonjs/utils/Streami18n.js +4 -1
  25. package/lib/commonjs/utils/Streami18n.js.map +1 -1
  26. package/lib/commonjs/version.json +1 -1
  27. package/lib/module/components/ImageGallery/ImageGallery.js +6 -5
  28. package/lib/module/components/ImageGallery/ImageGallery.js.map +1 -1
  29. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js +18 -15
  30. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  31. package/lib/module/components/ImageGallery/components/ImageGalleryVideoControl.js +41 -12
  32. package/lib/module/components/ImageGallery/components/ImageGalleryVideoControl.js.map +1 -1
  33. package/lib/module/components/Indicators/EmptyStateIndicator.js +10 -7
  34. package/lib/module/components/Indicators/EmptyStateIndicator.js.map +1 -1
  35. package/lib/module/components/Message/MessageSimple/ReactionList.js +18 -17
  36. package/lib/module/components/Message/MessageSimple/ReactionList.js.map +1 -1
  37. package/lib/module/contexts/themeContext/utils/theme.js +1 -0
  38. package/lib/module/contexts/themeContext/utils/theme.js.map +1 -1
  39. package/lib/module/i18n/en.json +2 -0
  40. package/lib/module/i18n/es.json +74 -0
  41. package/lib/module/i18n/fr.json +30 -28
  42. package/lib/module/i18n/he.json +3 -1
  43. package/lib/module/i18n/hi.json +30 -28
  44. package/lib/module/i18n/it.json +30 -28
  45. package/lib/module/i18n/ja.json +3 -1
  46. package/lib/module/i18n/ko.json +3 -1
  47. package/lib/module/i18n/nl.json +30 -28
  48. package/lib/module/i18n/ru.json +30 -28
  49. package/lib/module/i18n/tr.json +30 -28
  50. package/lib/module/utils/Streami18n.js +4 -1
  51. package/lib/module/utils/Streami18n.js.map +1 -1
  52. package/lib/module/version.json +1 -1
  53. package/lib/typescript/components/ImageGallery/components/ImageGalleryFooter.d.ts +3 -0
  54. package/lib/typescript/contexts/themeContext/utils/theme.d.ts +1 -0
  55. package/lib/typescript/i18n/en.json +2 -0
  56. package/lib/typescript/i18n/es.json +74 -0
  57. package/lib/typescript/i18n/fr.json +30 -28
  58. package/lib/typescript/i18n/he.json +3 -1
  59. package/lib/typescript/i18n/hi.json +30 -28
  60. package/lib/typescript/i18n/it.json +30 -28
  61. package/lib/typescript/i18n/ja.json +3 -1
  62. package/lib/typescript/i18n/ko.json +3 -1
  63. package/lib/typescript/i18n/nl.json +30 -28
  64. package/lib/typescript/i18n/ru.json +30 -28
  65. package/lib/typescript/i18n/tr.json +30 -28
  66. package/lib/typescript/utils/Streami18n.d.ts +13 -1
  67. package/package.json +1 -1
  68. package/src/components/ImageGallery/ImageGallery.tsx +1 -0
  69. package/src/components/ImageGallery/components/ImageGalleryFooter.tsx +6 -2
  70. package/src/components/ImageGallery/components/ImageGalleryVideoControl.tsx +12 -7
  71. package/src/components/Indicators/EmptyStateIndicator.tsx +4 -2
  72. package/src/components/Message/MessageSimple/ReactionList.tsx +2 -1
  73. package/src/contexts/themeContext/utils/theme.ts +2 -0
  74. package/src/i18n/en.json +2 -0
  75. package/src/i18n/es.json +74 -0
  76. package/src/i18n/fr.json +30 -28
  77. package/src/i18n/he.json +3 -1
  78. package/src/i18n/hi.json +30 -28
  79. package/src/i18n/it.json +30 -28
  80. package/src/i18n/ja.json +3 -1
  81. package/src/i18n/ko.json +3 -1
  82. package/src/i18n/nl.json +30 -28
  83. package/src/i18n/ru.json +30 -28
  84. package/src/i18n/tr.json +30 -28
  85. package/src/utils/Streami18n.ts +13 -6
  86. package/src/version.json +1 -1
@@ -3,6 +3,8 @@ Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
5
  exports.ImageGalleryVideoControl = void 0;
6
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
7
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
8
  var _react = _interopRequireDefault(require("react"));
7
9
  var _reactNative = require("react-native");
8
10
  var _dayjs = _interopRequireDefault(require("dayjs"));
@@ -37,7 +39,8 @@ var ImageGalleryVideoControl = _react["default"].memo(function (props) {
37
39
  var duration = props.duration,
38
40
  onPlayPause = props.onPlayPause,
39
41
  paused = props.paused,
40
- progress = props.progress;
42
+ progress = props.progress,
43
+ videoRef = props.videoRef;
41
44
  var videoDuration = duration ? duration / 3600 >= 1 ? _dayjs["default"].duration(duration, 'second').format('HH:mm:ss') : _dayjs["default"].duration(duration, 'second').format('mm:ss') : null;
42
45
  var progressValueInSeconds = progress * duration;
43
46
  var progressDuration = progressValueInSeconds ? progressValueInSeconds / 3600 >= 1 ? _dayjs["default"].duration(progressValueInSeconds, 'second').format('HH:mm:ss') : _dayjs["default"].duration(progressValueInSeconds, 'second').format('mm:ss') : null;
@@ -52,23 +55,49 @@ var ImageGalleryVideoControl = _react["default"].memo(function (props) {
52
55
  durationTextStyle = _useTheme$theme$image.durationTextStyle,
53
56
  roundedView = _useTheme$theme$image.roundedView,
54
57
  videoContainer = _useTheme$theme$image.videoContainer;
58
+ var handlePlayPause = function () {
59
+ var _ref = (0, _asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee() {
60
+ var _videoRef$current;
61
+ return _regenerator["default"].wrap(function _callee$(_context) {
62
+ while (1) switch (_context.prev = _context.next) {
63
+ case 0:
64
+ if (!(progress === 1)) {
65
+ _context.next = 4;
66
+ break;
67
+ }
68
+ if (!((_videoRef$current = videoRef.current) != null && _videoRef$current.setPositionAsync)) {
69
+ _context.next = 4;
70
+ break;
71
+ }
72
+ _context.next = 4;
73
+ return videoRef.current.setPositionAsync(0);
74
+ case 4:
75
+ onPlayPause();
76
+ case 5:
77
+ case "end":
78
+ return _context.stop();
79
+ }
80
+ }, _callee);
81
+ }));
82
+ return function handlePlayPause() {
83
+ return _ref.apply(this, arguments);
84
+ };
85
+ }();
55
86
  return _react["default"].createElement(_reactNative.View, {
56
87
  style: [styles.videoContainer, videoContainer],
57
88
  __self: _this,
58
89
  __source: {
59
90
  fileName: _jsxFileName,
60
- lineNumber: 64,
91
+ lineNumber: 74,
61
92
  columnNumber: 7
62
93
  }
63
94
  }, _react["default"].createElement(_reactNative.TouchableOpacity, {
64
95
  accessibilityLabel: "Play Pause Button",
65
- onPress: function onPress() {
66
- onPlayPause();
67
- },
96
+ onPress: handlePlayPause,
68
97
  __self: _this,
69
98
  __source: {
70
99
  fileName: _jsxFileName,
71
- lineNumber: 65,
100
+ lineNumber: 75,
72
101
  columnNumber: 9
73
102
  }
74
103
  }, _react["default"].createElement(_reactNative.View, {
@@ -78,7 +107,7 @@ var ImageGalleryVideoControl = _react["default"].memo(function (props) {
78
107
  __self: _this,
79
108
  __source: {
80
109
  fileName: _jsxFileName,
81
- lineNumber: 71,
110
+ lineNumber: 76,
82
111
  columnNumber: 11
83
112
  }
84
113
  }, paused ? _react["default"].createElement(_icons.Play, {
@@ -89,7 +118,7 @@ var ImageGalleryVideoControl = _react["default"].memo(function (props) {
89
118
  __self: _this,
90
119
  __source: {
91
120
  fileName: _jsxFileName,
92
- lineNumber: 73,
121
+ lineNumber: 78,
93
122
  columnNumber: 15
94
123
  }
95
124
  }) : _react["default"].createElement(_icons.Pause, {
@@ -100,7 +129,7 @@ var ImageGalleryVideoControl = _react["default"].memo(function (props) {
100
129
  __self: _this,
101
130
  __source: {
102
131
  fileName: _jsxFileName,
103
- lineNumber: 75,
132
+ lineNumber: 80,
104
133
  columnNumber: 15
105
134
  }
106
135
  }))), _react["default"].createElement(_reactNative.Text, {
@@ -111,7 +140,7 @@ var ImageGalleryVideoControl = _react["default"].memo(function (props) {
111
140
  __self: _this,
112
141
  __source: {
113
142
  fileName: _jsxFileName,
114
- lineNumber: 84,
143
+ lineNumber: 89,
115
144
  columnNumber: 9
116
145
  }
117
146
  }, progressDuration ? progressDuration : '00:00'), _react["default"].createElement(_ProgressControl.ProgressControl, {
@@ -124,7 +153,7 @@ var ImageGalleryVideoControl = _react["default"].memo(function (props) {
124
153
  __self: _this,
125
154
  __source: {
126
155
  fileName: _jsxFileName,
127
- lineNumber: 90,
156
+ lineNumber: 95,
128
157
  columnNumber: 9
129
158
  }
130
159
  }), _react["default"].createElement(_reactNative.Text, {
@@ -135,7 +164,7 @@ var ImageGalleryVideoControl = _react["default"].memo(function (props) {
135
164
  __self: _this,
136
165
  __source: {
137
166
  fileName: _jsxFileName,
138
- lineNumber: 98,
167
+ lineNumber: 103,
139
168
  columnNumber: 9
140
169
  }
141
170
  }, videoDuration ? videoDuration : '00:00'));
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_dayjs","_ThemeContext","_icons","_ProgressControl","_this","_jsxFileName","styles","StyleSheet","create","durationTextStyle","fontWeight","roundedView","alignItems","borderRadius","display","elevation","height","justifyContent","width","videoContainer","backgroundColor","flexDirection","padding","ImageGalleryVideoControl","React","memo","props","duration","onPlayPause","paused","progress","videoDuration","dayjs","format","progressValueInSeconds","progressDuration","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","accent_blue","black","static_black","static_white","_useTheme$theme$image","imageGallery","videoControl","createElement","View","style","__self","__source","fileName","lineNumber","columnNumber","TouchableOpacity","accessibilityLabel","onPress","Play","pathFill","Pause","Text","color","ProgressControl","filledColor","testID","prevProps","nextProps","exports","displayName"],"sources":["ImageGalleryVideoControl.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleSheet, Text, TouchableOpacity, View } from 'react-native';\n\nimport dayjs from 'dayjs';\n\nimport type { ImageGalleryFooterVideoControlProps } from './ImageGalleryFooter';\n\nimport { useTheme } from '../../../contexts/themeContext/ThemeContext';\n\nimport { Pause, Play } from '../../../icons';\nimport { ProgressControl } from '../../ProgressControl/ProgressControl';\n\nconst styles = StyleSheet.create({\n durationTextStyle: {\n fontWeight: 'bold',\n },\n roundedView: {\n alignItems: 'center',\n borderRadius: 50,\n display: 'flex',\n elevation: 2,\n height: 36,\n justifyContent: 'center',\n width: 36,\n },\n videoContainer: {\n alignItems: 'center',\n backgroundColor: 'rgba(52, 52, 52, 0.1)',\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'space-between',\n padding: 10,\n },\n});\n\nexport const ImageGalleryVideoControl: React.FC<ImageGalleryFooterVideoControlProps> = React.memo(\n (props) => {\n const { duration, onPlayPause, paused, progress } = props;\n\n const videoDuration = duration\n ? duration / 3600 >= 1\n ? dayjs.duration(duration, 'second').format('HH:mm:ss')\n : dayjs.duration(duration, 'second').format('mm:ss')\n : null;\n\n const progressValueInSeconds = progress * duration;\n\n const progressDuration = progressValueInSeconds\n ? progressValueInSeconds / 3600 >= 1\n ? dayjs.duration(progressValueInSeconds, 'second').format('HH:mm:ss')\n : dayjs.duration(progressValueInSeconds, 'second').format('mm:ss')\n : null;\n\n const {\n theme: {\n colors: { accent_blue, black, static_black, static_white },\n imageGallery: {\n videoControl: { durationTextStyle, roundedView, videoContainer },\n },\n },\n } = useTheme();\n\n return (\n <View style={[styles.videoContainer, videoContainer]}>\n <TouchableOpacity\n accessibilityLabel='Play Pause Button'\n onPress={() => {\n onPlayPause();\n }}\n >\n <View style={[styles.roundedView, roundedView, { backgroundColor: static_white }]}>\n {paused ? (\n <Play accessibilityLabel='Play Icon' height={24} pathFill={static_black} width={24} />\n ) : (\n <Pause\n accessibilityLabel='Pause Icon'\n height={24}\n pathFill={static_black}\n width={24}\n />\n )}\n </View>\n </TouchableOpacity>\n <Text\n accessibilityLabel='Progress Duration'\n style={[styles.durationTextStyle, durationTextStyle, { color: black }]}\n >\n {progressDuration ? progressDuration : '00:00'}\n </Text>\n <ProgressControl\n duration={duration}\n filledColor={accent_blue}\n onPlayPause={onPlayPause}\n progress={progress}\n testID={'progress-control'}\n width={180}\n />\n <Text\n accessibilityLabel='Video Duration'\n style={[styles.durationTextStyle, durationTextStyle, { color: black }]}\n >\n {videoDuration ? videoDuration : '00:00'}\n </Text>\n </View>\n );\n },\n (prevProps, nextProps) => {\n if (\n prevProps.duration === nextProps.duration &&\n prevProps.paused === nextProps.paused &&\n prevProps.progress === nextProps.progress\n ) {\n return true;\n } else {\n return false;\n }\n },\n);\n\nImageGalleryVideoControl.displayName = 'ImageGalleryVideoControl{imageGallery{videoControl}}';\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_dayjs","_ThemeContext","_icons","_ProgressControl","_this","_jsxFileName","styles","StyleSheet","create","durationTextStyle","fontWeight","roundedView","alignItems","borderRadius","display","elevation","height","justifyContent","width","videoContainer","backgroundColor","flexDirection","padding","ImageGalleryVideoControl","React","memo","props","duration","onPlayPause","paused","progress","videoRef","videoDuration","dayjs","format","progressValueInSeconds","progressDuration","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","accent_blue","black","static_black","static_white","_useTheme$theme$image","imageGallery","videoControl","handlePlayPause","_ref","_asyncToGenerator2","_regenerator","mark","_callee","_videoRef$current","wrap","_callee$","_context","prev","next","current","setPositionAsync","stop","apply","arguments","createElement","View","style","__self","__source","fileName","lineNumber","columnNumber","TouchableOpacity","accessibilityLabel","onPress","Play","pathFill","Pause","Text","color","ProgressControl","filledColor","testID","prevProps","nextProps","exports","displayName"],"sources":["ImageGalleryVideoControl.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleSheet, Text, TouchableOpacity, View } from 'react-native';\n\nimport dayjs from 'dayjs';\n\nimport type { ImageGalleryFooterVideoControlProps } from './ImageGalleryFooter';\n\nimport { useTheme } from '../../../contexts/themeContext/ThemeContext';\n\nimport { Pause, Play } from '../../../icons';\nimport { ProgressControl } from '../../ProgressControl/ProgressControl';\n\nconst styles = StyleSheet.create({\n durationTextStyle: {\n fontWeight: 'bold',\n },\n roundedView: {\n alignItems: 'center',\n borderRadius: 50,\n display: 'flex',\n elevation: 2,\n height: 36,\n justifyContent: 'center',\n width: 36,\n },\n videoContainer: {\n alignItems: 'center',\n backgroundColor: 'rgba(52, 52, 52, 0.1)',\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'space-between',\n padding: 10,\n },\n});\n\nexport const ImageGalleryVideoControl: React.FC<ImageGalleryFooterVideoControlProps> = React.memo(\n (props) => {\n const { duration, onPlayPause, paused, progress, videoRef } = props;\n\n const videoDuration = duration\n ? duration / 3600 >= 1\n ? dayjs.duration(duration, 'second').format('HH:mm:ss')\n : dayjs.duration(duration, 'second').format('mm:ss')\n : null;\n\n const progressValueInSeconds = progress * duration;\n\n const progressDuration = progressValueInSeconds\n ? progressValueInSeconds / 3600 >= 1\n ? dayjs.duration(progressValueInSeconds, 'second').format('HH:mm:ss')\n : dayjs.duration(progressValueInSeconds, 'second').format('mm:ss')\n : null;\n\n const {\n theme: {\n colors: { accent_blue, black, static_black, static_white },\n imageGallery: {\n videoControl: { durationTextStyle, roundedView, videoContainer },\n },\n },\n } = useTheme();\n\n const handlePlayPause = async () => {\n if (progress === 1) {\n // For expo CLI\n if (videoRef.current?.setPositionAsync) {\n await videoRef.current.setPositionAsync(0);\n }\n }\n onPlayPause();\n };\n\n return (\n <View style={[styles.videoContainer, videoContainer]}>\n <TouchableOpacity accessibilityLabel='Play Pause Button' onPress={handlePlayPause}>\n <View style={[styles.roundedView, roundedView, { backgroundColor: static_white }]}>\n {paused ? (\n <Play accessibilityLabel='Play Icon' height={24} pathFill={static_black} width={24} />\n ) : (\n <Pause\n accessibilityLabel='Pause Icon'\n height={24}\n pathFill={static_black}\n width={24}\n />\n )}\n </View>\n </TouchableOpacity>\n <Text\n accessibilityLabel='Progress Duration'\n style={[styles.durationTextStyle, durationTextStyle, { color: black }]}\n >\n {progressDuration ? progressDuration : '00:00'}\n </Text>\n <ProgressControl\n duration={duration}\n filledColor={accent_blue}\n onPlayPause={onPlayPause}\n progress={progress}\n testID={'progress-control'}\n width={180}\n />\n <Text\n accessibilityLabel='Video Duration'\n style={[styles.durationTextStyle, durationTextStyle, { color: black }]}\n >\n {videoDuration ? videoDuration : '00:00'}\n </Text>\n </View>\n );\n },\n (prevProps, nextProps) => {\n if (\n prevProps.duration === nextProps.duration &&\n prevProps.paused === nextProps.paused &&\n prevProps.progress === nextProps.progress\n ) {\n return true;\n } else {\n return false;\n }\n },\n);\n\nImageGalleryVideoControl.displayName = 'ImageGalleryVideoControl{imageGallery{videoControl}}';\n"],"mappings":"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"}
@@ -6,6 +6,7 @@ exports.EmptyStateIndicator = void 0;
6
6
  var _react = _interopRequireDefault(require("react"));
7
7
  var _reactNative = require("react-native");
8
8
  var _ThemeContext = require("../../contexts/themeContext/ThemeContext");
9
+ var _TranslationContext = require("../../contexts/translationContext/TranslationContext");
9
10
  var _MessageIcon = require("../../icons/MessageIcon");
10
11
  var _utils = require("../../utils/utils");
11
12
  var _this = this,
@@ -40,6 +41,8 @@ var EmptyStateIndicator = function EmptyStateIndicator(_ref) {
40
41
  channelContainer = _useTheme$theme$empty.channelContainer,
41
42
  channelDetails = _useTheme$theme$empty.channelDetails,
42
43
  channelTitle = _useTheme$theme$empty.channelTitle;
44
+ var _useTranslationContex = (0, _TranslationContext.useTranslationContext)(),
45
+ t = _useTranslationContex.t;
43
46
  switch (listType) {
44
47
  case 'channel':
45
48
  return _react["default"].createElement(_reactNative.View, {
@@ -47,7 +50,7 @@ var EmptyStateIndicator = function EmptyStateIndicator(_ref) {
47
50
  __self: _this,
48
51
  __source: {
49
52
  fileName: _jsxFileName,
50
- lineNumber: 43,
53
+ lineNumber: 45,
51
54
  columnNumber: 9
52
55
  }
53
56
  }, _react["default"].createElement(_MessageIcon.MessageIcon, {
@@ -57,7 +60,7 @@ var EmptyStateIndicator = function EmptyStateIndicator(_ref) {
57
60
  __self: _this,
58
61
  __source: {
59
62
  fileName: _jsxFileName,
60
- lineNumber: 44,
63
+ lineNumber: 46,
61
64
  columnNumber: 11
62
65
  }
63
66
  }), _react["default"].createElement(_reactNative.Text, {
@@ -68,10 +71,10 @@ var EmptyStateIndicator = function EmptyStateIndicator(_ref) {
68
71
  __self: _this,
69
72
  __source: {
70
73
  fileName: _jsxFileName,
71
- lineNumber: 45,
74
+ lineNumber: 47,
72
75
  columnNumber: 11
73
76
  }
74
- }, "Let's start chatting!"), _react["default"].createElement(_reactNative.Text, {
77
+ }, t("Let's start chatting!")), _react["default"].createElement(_reactNative.Text, {
75
78
  style: [styles.channelDetails, {
76
79
  color: grey
77
80
  }, channelDetails],
@@ -79,10 +82,10 @@ var EmptyStateIndicator = function EmptyStateIndicator(_ref) {
79
82
  __self: _this,
80
83
  __source: {
81
84
  fileName: _jsxFileName,
82
- lineNumber: 51,
85
+ lineNumber: 53,
83
86
  columnNumber: 11
84
87
  }
85
- }, 'How about sending your first message to a friend?'));
88
+ }, t('How about sending your first message to a friend?')));
86
89
  case 'message':
87
90
  return null;
88
91
  default:
@@ -93,7 +96,7 @@ var EmptyStateIndicator = function EmptyStateIndicator(_ref) {
93
96
  __self: _this,
94
97
  __source: {
95
98
  fileName: _jsxFileName,
96
- lineNumber: 62,
99
+ lineNumber: 64,
97
100
  columnNumber: 14
98
101
  }
99
102
  }, "No items exist");
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_ThemeContext","_MessageIcon","_utils","_this","_jsxFileName","width","vw","styles","StyleSheet","create","channelContainer","alignItems","flex","justifyContent","channelDetails","fontSize","textAlign","channelTitle","paddingBottom","paddingTop","EmptyStateIndicator","_ref","listType","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","black","grey","grey_gainsboro","_useTheme$theme$empty","emptyStateIndicator","createElement","View","style","__self","__source","fileName","lineNumber","columnNumber","MessageIcon","height","pathFill","Text","color","testID","exports"],"sources":["EmptyStateIndicator.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleSheet, Text, View } from 'react-native';\n\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { MessageIcon } from '../../icons/MessageIcon';\nimport { vw } from '../../utils/utils';\n\nconst width = vw(33);\n\nconst styles = StyleSheet.create({\n channelContainer: {\n alignItems: 'center',\n flex: 1,\n justifyContent: 'center',\n },\n channelDetails: {\n fontSize: 14,\n textAlign: 'center',\n width: vw(66),\n },\n channelTitle: {\n fontSize: 16,\n paddingBottom: 8,\n paddingTop: 16,\n },\n});\n\nexport type EmptyStateProps = {\n listType?: 'channel' | 'message' | 'default';\n};\n\nexport const EmptyStateIndicator: React.FC<EmptyStateProps> = ({ listType }) => {\n const {\n theme: {\n colors: { black, grey, grey_gainsboro },\n emptyStateIndicator: { channelContainer, channelDetails, channelTitle },\n },\n } = useTheme();\n\n switch (listType) {\n case 'channel':\n return (\n <View style={[styles.channelContainer, channelContainer]}>\n <MessageIcon height={width} pathFill={grey_gainsboro} width={width} />\n <Text\n style={[styles.channelTitle, { color: black }, channelTitle]}\n testID='empty-channel-state-title'\n >\n {\"Let's start chatting!\"}\n </Text>\n <Text\n style={[styles.channelDetails, { color: grey }, channelDetails]}\n testID='empty-channel-state-details'\n >\n {'How about sending your first message to a friend?'}\n </Text>\n </View>\n );\n case 'message':\n return null;\n default:\n return <Text style={{ color: black }}>No items exist</Text>;\n }\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_ThemeContext","_TranslationContext","_MessageIcon","_utils","_this","_jsxFileName","width","vw","styles","StyleSheet","create","channelContainer","alignItems","flex","justifyContent","channelDetails","fontSize","textAlign","channelTitle","paddingBottom","paddingTop","EmptyStateIndicator","_ref","listType","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","black","grey","grey_gainsboro","_useTheme$theme$empty","emptyStateIndicator","_useTranslationContex","useTranslationContext","t","createElement","View","style","__self","__source","fileName","lineNumber","columnNumber","MessageIcon","height","pathFill","Text","color","testID","exports"],"sources":["EmptyStateIndicator.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleSheet, Text, View } from 'react-native';\n\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { useTranslationContext } from '../../contexts/translationContext/TranslationContext';\nimport { MessageIcon } from '../../icons/MessageIcon';\nimport { vw } from '../../utils/utils';\n\nconst width = vw(33);\n\nconst styles = StyleSheet.create({\n channelContainer: {\n alignItems: 'center',\n flex: 1,\n justifyContent: 'center',\n },\n channelDetails: {\n fontSize: 14,\n textAlign: 'center',\n width: vw(66),\n },\n channelTitle: {\n fontSize: 16,\n paddingBottom: 8,\n paddingTop: 16,\n },\n});\n\nexport type EmptyStateProps = {\n listType?: 'channel' | 'message' | 'default';\n};\n\nexport const EmptyStateIndicator: React.FC<EmptyStateProps> = ({ listType }) => {\n const {\n theme: {\n colors: { black, grey, grey_gainsboro },\n emptyStateIndicator: { channelContainer, channelDetails, channelTitle },\n },\n } = useTheme();\n const { t } = useTranslationContext();\n\n switch (listType) {\n case 'channel':\n return (\n <View style={[styles.channelContainer, channelContainer]}>\n <MessageIcon height={width} pathFill={grey_gainsboro} width={width} />\n <Text\n style={[styles.channelTitle, { color: black }, channelTitle]}\n testID='empty-channel-state-title'\n >\n {t(\"Let's start chatting!\")}\n </Text>\n <Text\n style={[styles.channelDetails, { color: grey }, channelDetails]}\n testID='empty-channel-state-details'\n >\n {t('How about sending your first message to a friend?')}\n </Text>\n </View>\n );\n case 'message':\n return null;\n default:\n return <Text style={{ color: black }}>No items exist</Text>;\n }\n};\n"],"mappings":"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"}
@@ -95,6 +95,7 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
95
95
  spacer = _useTheme$theme$messa2.spacer,
96
96
  _useTheme$theme$messa3 = _useTheme$theme$messa.reactionList,
97
97
  container = _useTheme$theme$messa3.container,
98
+ iconFillColor = _useTheme$theme$messa3.iconFillColor,
98
99
  middleIcon = _useTheme$theme$messa3.middleIcon,
99
100
  themeRadius = _useTheme$theme$messa3.radius,
100
101
  reactionBubble = _useTheme$theme$messa3.reactionBubble,
@@ -136,7 +137,7 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
136
137
  __self: _this,
137
138
  __source: {
138
139
  fileName: _jsxFileName,
139
- lineNumber: 180,
140
+ lineNumber: 181,
140
141
  columnNumber: 5
141
142
  }
142
143
  }, reactions.length ? _react["default"].createElement(_reactNative.View, {
@@ -145,7 +146,7 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
145
146
  __self: _this,
146
147
  __source: {
147
148
  fileName: _jsxFileName,
148
- lineNumber: 193,
149
+ lineNumber: 194,
149
150
  columnNumber: 9
150
151
  }
151
152
  }, _react["default"].createElement(_reactNativeSvg["default"], {
@@ -153,7 +154,7 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
153
154
  __self: _this,
154
155
  __source: {
155
156
  fileName: _jsxFileName,
156
- lineNumber: 194,
157
+ lineNumber: 195,
157
158
  columnNumber: 11
158
159
  }
159
160
  }, _react["default"].createElement(_reactNativeSvg.Circle, {
@@ -164,7 +165,7 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
164
165
  __self: _this,
165
166
  __source: {
166
167
  fileName: _jsxFileName,
167
- lineNumber: 195,
168
+ lineNumber: 196,
168
169
  columnNumber: 13
169
170
  }
170
171
  }), _react["default"].createElement(_reactNativeSvg.Circle, {
@@ -175,7 +176,7 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
175
176
  __self: _this,
176
177
  __source: {
177
178
  fileName: _jsxFileName,
178
- lineNumber: 196,
179
+ lineNumber: 197,
179
180
  columnNumber: 13
180
181
  }
181
182
  }), _react["default"].createElement(_reactNativeSvg.Circle, {
@@ -186,7 +187,7 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
186
187
  __self: _this,
187
188
  __source: {
188
189
  fileName: _jsxFileName,
189
- lineNumber: 197,
190
+ lineNumber: 198,
190
191
  columnNumber: 13
191
192
  }
192
193
  }), _react["default"].createElement(_reactNativeSvg.Circle, {
@@ -197,7 +198,7 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
197
198
  __self: _this,
198
199
  __source: {
199
200
  fileName: _jsxFileName,
200
- lineNumber: 198,
201
+ lineNumber: 199,
201
202
  columnNumber: 13
202
203
  }
203
204
  }), _react["default"].createElement(_reactNativeSvg.Circle, {
@@ -208,7 +209,7 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
208
209
  __self: _this,
209
210
  __source: {
210
211
  fileName: _jsxFileName,
211
- lineNumber: 199,
212
+ lineNumber: 200,
212
213
  columnNumber: 13
213
214
  }
214
215
  }), _react["default"].createElement(_reactNativeSvg.Circle, {
@@ -219,7 +220,7 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
219
220
  __self: _this,
220
221
  __source: {
221
222
  fileName: _jsxFileName,
222
- lineNumber: 200,
223
+ lineNumber: 201,
223
224
  columnNumber: 13
224
225
  }
225
226
  })), _react["default"].createElement(_reactNative.View, {
@@ -235,7 +236,7 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
235
236
  __self: _this,
236
237
  __source: {
237
238
  fileName: _jsxFileName,
238
- lineNumber: 202,
239
+ lineNumber: 203,
239
240
  columnNumber: 11
240
241
  }
241
242
  }), _react["default"].createElement(_reactNative.View, {
@@ -244,14 +245,14 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
244
245
  __self: _this,
245
246
  __source: {
246
247
  fileName: _jsxFileName,
247
- lineNumber: 217,
248
+ lineNumber: 218,
248
249
  columnNumber: 11
249
250
  }
250
251
  }, _react["default"].createElement(_reactNativeSvg["default"], {
251
252
  __self: _this,
252
253
  __source: {
253
254
  fileName: _jsxFileName,
254
- lineNumber: 218,
255
+ lineNumber: 219,
255
256
  columnNumber: 13
256
257
  }
257
258
  }, _react["default"].createElement(_reactNativeSvg.Circle, {
@@ -262,7 +263,7 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
262
263
  __self: _this,
263
264
  __source: {
264
265
  fileName: _jsxFileName,
265
- lineNumber: 219,
266
+ lineNumber: 220,
266
267
  columnNumber: 15
267
268
  }
268
269
  }))), _react["default"].createElement(_reactNative.TouchableOpacity, {
@@ -308,13 +309,13 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
308
309
  __self: _this,
309
310
  __source: {
310
311
  fileName: _jsxFileName,
311
- lineNumber: 222,
312
+ lineNumber: 223,
312
313
  columnNumber: 11
313
314
  }
314
315
  }, reactions.map(function (reaction) {
315
316
  return _react["default"].createElement(Icon, {
316
317
  key: reaction.type,
317
- pathFill: reaction.own ? accent_blue : grey,
318
+ pathFill: reaction.own ? iconFillColor || accent_blue : grey,
318
319
  size: reactionSize / 2,
319
320
  style: middleIcon,
320
321
  supportedReactions: supportedReactions,
@@ -322,7 +323,7 @@ var ReactionListWithContext = function ReactionListWithContext(props) {
322
323
  __self: _this,
323
324
  __source: {
324
325
  fileName: _jsxFileName,
325
- lineNumber: 264,
326
+ lineNumber: 265,
326
327
  columnNumber: 15
327
328
  }
328
329
  });
@@ -378,7 +379,7 @@ var ReactionList = function ReactionList(props) {
378
379
  __self: _this,
379
380
  __source: {
380
381
  fileName: _jsxFileName,
381
- lineNumber: 349,
382
+ lineNumber: 350,
382
383
  columnNumber: 5
383
384
  }
384
385
  }));
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeSvg","_interopRequireWildcard","_MessageContext","_MessagesContext","_ThemeContext","_Unknown","_this","_jsxFileName","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","styles","StyleSheet","create","container","left","position","top","reactionBubble","alignItems","flexDirection","justifyContent","reactionBubbleBackground","Icon","_ref","_supportedReactions$f","pathFill","size","style","supportedReactions","type","ReactionIcon","find","reaction","Unknown","createElement","View","__self","__source","fileName","lineNumber","columnNumber","height","width","ReactionListWithContext","props","alignment","propFill","fill","message","messageContentWidth","onLongPress","onPress","onPressIn","preventPress","propRadius","radius","reactions","propReactionSize","reactionSize","showMessageOverlay","propStroke","stroke","propStrokeSize","strokeSize","targetedMessage","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","accent_blue","grey","grey_gainsboro","grey_whisper","targetedMessageBackground","white","white_snow","_useTheme$theme$messa","messageSimple","_useTheme$theme$messa2","avatarWrapper","leftAlign","spacer","_useTheme$theme$messa3","reactionList","middleIcon","themeRadius","themeReactionSize","themeStrokeSize","screenPadding","useWindowDimensions","supportedReactionTypes","map","supportedReaction","hasSupportedReactions","some","includes","alignmentLeft","highlighted","pinned","id","x1","Number","marginRight","x2","y1","y2","insideLeftBound","length","insideRightBound","pointerEvents","testID","absoluteFill","Circle","cx","cy","r","backgroundColor","borderColor","borderRadius","borderWidth","TouchableOpacity","disabled","event","emitter","defaultHandler","own","areEqual","prevProps","nextProps","prevMessage","prevMessageContentWidth","prevTargetedMessage","nextMessage","nextMessageContentWidth","nextTargetedMessage","messageContentWidthEqual","messagePinnedEqual","targetedMessageEqual","latestReactionsEqual","Array","isArray","latest_reactions","every","_ref2","index","_nextMessage$latest_r","MemoizedReactionList","React","memo","ReactionList","_useMessageContext","useMessageContext","_useMessagesContext","useMessagesContext","_extends2","exports"],"sources":["ReactionList.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleSheet, TouchableOpacity, useWindowDimensions, View } from 'react-native';\n\nimport Svg, { Circle } from 'react-native-svg';\n\nimport {\n MessageContextValue,\n Reactions,\n useMessageContext,\n} from '../../../contexts/messageContext/MessageContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../../contexts/messagesContext/MessagesContext';\nimport { useTheme } from '../../../contexts/themeContext/ThemeContext';\n\nimport { Unknown } from '../../../icons/Unknown';\n\nimport type { IconProps } from '../../../icons/utils/base';\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\nimport type { ReactionData } from '../../../utils/utils';\n\nconst styles = StyleSheet.create({\n container: {\n left: 0,\n position: 'absolute',\n top: 0,\n },\n reactionBubble: {\n alignItems: 'center',\n flexDirection: 'row',\n justifyContent: 'space-evenly',\n position: 'absolute',\n },\n reactionBubbleBackground: {\n position: 'absolute',\n },\n});\n\nexport type MessageReactions = {\n reactions: Reactions;\n supportedReactions?: ReactionData[];\n};\n\nconst Icon: React.FC<\n Pick<IconProps, 'pathFill' | 'style'> & {\n size: number;\n supportedReactions: ReactionData[];\n type: string;\n }\n> = ({ pathFill, size, style, supportedReactions, type }) => {\n const ReactionIcon =\n supportedReactions.find((reaction) => reaction.type === type)?.Icon || Unknown;\n\n return (\n <View>\n <ReactionIcon height={size} pathFill={pathFill} style={style} width={size} />\n </View>\n );\n};\n\nexport type ReactionListPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n MessageContextValue<StreamChatGenerics>,\n | 'alignment'\n | 'message'\n | 'onLongPress'\n | 'onPress'\n | 'onPressIn'\n | 'preventPress'\n | 'reactions'\n | 'showMessageOverlay'\n> &\n Pick<MessagesContextValue<StreamChatGenerics>, 'targetedMessage'> & {\n messageContentWidth: number;\n supportedReactions: ReactionData[];\n fill?: string;\n radius?: number; // not recommended to change this\n reactionSize?: number;\n stroke?: string;\n strokeSize?: number; // not recommended to change this\n };\n\nconst ReactionListWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ReactionListPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n alignment,\n fill: propFill,\n message,\n messageContentWidth,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n radius: propRadius,\n reactions,\n reactionSize: propReactionSize,\n showMessageOverlay,\n stroke: propStroke,\n strokeSize: propStrokeSize,\n supportedReactions,\n targetedMessage,\n } = props;\n\n const {\n theme: {\n colors: {\n accent_blue,\n grey,\n grey_gainsboro,\n grey_whisper,\n targetedMessageBackground,\n white,\n white_snow,\n },\n messageSimple: {\n avatarWrapper: { leftAlign, spacer },\n reactionList: {\n container,\n middleIcon,\n radius: themeRadius,\n reactionBubble,\n reactionBubbleBackground,\n reactionSize: themeReactionSize,\n strokeSize: themeStrokeSize,\n },\n },\n screenPadding,\n },\n } = useTheme();\n\n const width = useWindowDimensions().width;\n\n const supportedReactionTypes = supportedReactions.map(\n (supportedReaction) => supportedReaction.type,\n );\n const hasSupportedReactions = reactions.some((reaction) =>\n supportedReactionTypes.includes(reaction.type),\n );\n\n if (!hasSupportedReactions || messageContentWidth === 0) {\n return null;\n }\n\n const alignmentLeft = alignment === 'left';\n const fill = propFill || (alignmentLeft ? grey_gainsboro : grey_whisper);\n const radius = propRadius || themeRadius;\n const reactionSize = propReactionSize || themeReactionSize;\n const highlighted = message.pinned || targetedMessage === message.id;\n const stroke = propStroke || (highlighted ? targetedMessageBackground : white_snow);\n const strokeSize = propStrokeSize || themeStrokeSize;\n\n const x1 = alignmentLeft\n ? messageContentWidth +\n (Number(leftAlign.marginRight) || 0) +\n (Number(spacer.width) || 0) -\n radius * 0.5\n : width - screenPadding * 2 - messageContentWidth;\n const x2 = x1 + radius * 2 * (alignmentLeft ? 1 : -1);\n const y1 = reactionSize + radius * 2;\n const y2 = reactionSize - radius;\n\n const insideLeftBound = x2 - (reactionSize * reactions.length) / 2 > screenPadding;\n const insideRightBound =\n x2 + strokeSize + (reactionSize * reactions.length) / 2 < width - screenPadding * 2;\n const left =\n reactions.length === 1\n ? x1 + (alignmentLeft ? -radius : radius - reactionSize)\n : !insideLeftBound\n ? screenPadding\n : !insideRightBound\n ? width - screenPadding * 2 - reactionSize * reactions.length - strokeSize\n : x2 - (reactionSize * reactions.length) / 2 - strokeSize;\n\n return (\n <View\n pointerEvents='box-none'\n style={[\n styles.container,\n {\n height: reactionSize + radius * 5,\n width,\n },\n container,\n ]}\n testID='reaction-list'\n >\n {reactions.length ? (\n <View pointerEvents='box-none' style={[StyleSheet.absoluteFill]}>\n <Svg pointerEvents='none'>\n <Circle cx={x1} cy={y1} fill={stroke} r={radius + strokeSize * 3} />\n <Circle cx={x2} cy={y2} fill={stroke} r={radius * 2 + strokeSize * 3} />\n <Circle cx={x1} cy={y1} fill={fill} r={radius + strokeSize} />\n <Circle cx={x2} cy={y2} fill={fill} r={radius * 2 + strokeSize} />\n <Circle cx={x1} cy={y1} fill={alignmentLeft ? fill : white} r={radius} />\n <Circle cx={x2} cy={y2} fill={alignmentLeft ? fill : white} r={radius * 2} />\n </Svg>\n <View\n style={[\n styles.reactionBubbleBackground,\n {\n backgroundColor: alignmentLeft ? fill : white,\n borderColor: fill,\n borderRadius: reactionSize,\n borderWidth: strokeSize,\n height: reactionSize,\n left,\n width: reactionSize * reactions.length,\n },\n reactionBubbleBackground,\n ]}\n />\n <View pointerEvents='none' style={[StyleSheet.absoluteFill]}>\n <Svg>\n <Circle cx={x2} cy={y2} fill={alignmentLeft ? fill : white} r={radius * 2} />\n </Svg>\n </View>\n <TouchableOpacity\n disabled={preventPress}\n onLongPress={(event) => {\n if (onLongPress) {\n onLongPress({\n emitter: 'reactionList',\n event,\n });\n }\n }}\n onPress={(event) => {\n if (onPress) {\n onPress({\n defaultHandler: () => showMessageOverlay(true),\n emitter: 'reactionList',\n event,\n });\n }\n }}\n onPressIn={(event) => {\n if (onPressIn) {\n onPressIn({\n defaultHandler: () => showMessageOverlay(true),\n emitter: 'reactionList',\n event,\n });\n }\n }}\n style={[\n styles.reactionBubble,\n {\n backgroundColor: alignmentLeft ? fill : white,\n borderRadius: reactionSize - strokeSize * 2,\n height: reactionSize - strokeSize * 2,\n left: left + strokeSize,\n top: strokeSize,\n width: reactionSize * reactions.length - strokeSize * 2,\n },\n reactionBubble,\n ]}\n >\n {reactions.map((reaction) => (\n <Icon\n key={reaction.type}\n pathFill={reaction.own ? accent_blue : grey}\n size={reactionSize / 2}\n style={middleIcon}\n supportedReactions={supportedReactions}\n type={reaction.type}\n />\n ))}\n </TouchableOpacity>\n </View>\n ) : null}\n </View>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: ReactionListPropsWithContext<StreamChatGenerics>,\n nextProps: ReactionListPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n message: prevMessage,\n messageContentWidth: prevMessageContentWidth,\n targetedMessage: prevTargetedMessage,\n } = prevProps;\n const {\n message: nextMessage,\n messageContentWidth: nextMessageContentWidth,\n targetedMessage: nextTargetedMessage,\n } = nextProps;\n\n const messageContentWidthEqual = prevMessageContentWidth === nextMessageContentWidth;\n if (!messageContentWidthEqual) return false;\n\n const messagePinnedEqual = prevMessage.pinned === nextMessage.pinned;\n\n if (!messagePinnedEqual) return false;\n\n const targetedMessageEqual = prevTargetedMessage === nextTargetedMessage;\n\n if (!targetedMessageEqual) return false;\n\n const latestReactionsEqual =\n Array.isArray(prevMessage.latest_reactions) && Array.isArray(nextMessage.latest_reactions)\n ? prevMessage.latest_reactions.length === nextMessage.latest_reactions.length &&\n prevMessage.latest_reactions.every(\n ({ type }, index) => type === nextMessage.latest_reactions?.[index].type,\n )\n : prevMessage.latest_reactions === nextMessage.latest_reactions;\n if (!latestReactionsEqual) return false;\n\n return true;\n};\n\nconst MemoizedReactionList = React.memo(\n ReactionListWithContext,\n areEqual,\n) as typeof ReactionListWithContext;\n\nexport type ReactionListProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<Omit<ReactionListPropsWithContext<StreamChatGenerics>, 'messageContentWidth'>> &\n Pick<ReactionListPropsWithContext<StreamChatGenerics>, 'messageContentWidth'>;\n\n/**\n * ReactionList - A high level component which implements all the logic required for a message reaction list\n */\nexport const ReactionList = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ReactionListProps<StreamChatGenerics>,\n) => {\n const {\n alignment,\n message,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n reactions,\n showMessageOverlay,\n } = useMessageContext<StreamChatGenerics>();\n const { supportedReactions, targetedMessage } = useMessagesContext<StreamChatGenerics>();\n\n return (\n <MemoizedReactionList\n {...{\n alignment,\n message,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n reactions,\n showMessageOverlay,\n supportedReactions,\n targetedMessage,\n }}\n {...props}\n />\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeSvg","_interopRequireWildcard","_MessageContext","_MessagesContext","_ThemeContext","_Unknown","_this","_jsxFileName","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","styles","StyleSheet","create","container","left","position","top","reactionBubble","alignItems","flexDirection","justifyContent","reactionBubbleBackground","Icon","_ref","_supportedReactions$f","pathFill","size","style","supportedReactions","type","ReactionIcon","find","reaction","Unknown","createElement","View","__self","__source","fileName","lineNumber","columnNumber","height","width","ReactionListWithContext","props","alignment","propFill","fill","message","messageContentWidth","onLongPress","onPress","onPressIn","preventPress","propRadius","radius","reactions","propReactionSize","reactionSize","showMessageOverlay","propStroke","stroke","propStrokeSize","strokeSize","targetedMessage","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","accent_blue","grey","grey_gainsboro","grey_whisper","targetedMessageBackground","white","white_snow","_useTheme$theme$messa","messageSimple","_useTheme$theme$messa2","avatarWrapper","leftAlign","spacer","_useTheme$theme$messa3","reactionList","iconFillColor","middleIcon","themeRadius","themeReactionSize","themeStrokeSize","screenPadding","useWindowDimensions","supportedReactionTypes","map","supportedReaction","hasSupportedReactions","some","includes","alignmentLeft","highlighted","pinned","id","x1","Number","marginRight","x2","y1","y2","insideLeftBound","length","insideRightBound","pointerEvents","testID","absoluteFill","Circle","cx","cy","r","backgroundColor","borderColor","borderRadius","borderWidth","TouchableOpacity","disabled","event","emitter","defaultHandler","own","areEqual","prevProps","nextProps","prevMessage","prevMessageContentWidth","prevTargetedMessage","nextMessage","nextMessageContentWidth","nextTargetedMessage","messageContentWidthEqual","messagePinnedEqual","targetedMessageEqual","latestReactionsEqual","Array","isArray","latest_reactions","every","_ref2","index","_nextMessage$latest_r","MemoizedReactionList","React","memo","ReactionList","_useMessageContext","useMessageContext","_useMessagesContext","useMessagesContext","_extends2","exports"],"sources":["ReactionList.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleSheet, TouchableOpacity, useWindowDimensions, View } from 'react-native';\n\nimport Svg, { Circle } from 'react-native-svg';\n\nimport {\n MessageContextValue,\n Reactions,\n useMessageContext,\n} from '../../../contexts/messageContext/MessageContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../../contexts/messagesContext/MessagesContext';\nimport { useTheme } from '../../../contexts/themeContext/ThemeContext';\n\nimport { Unknown } from '../../../icons/Unknown';\n\nimport type { IconProps } from '../../../icons/utils/base';\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\nimport type { ReactionData } from '../../../utils/utils';\n\nconst styles = StyleSheet.create({\n container: {\n left: 0,\n position: 'absolute',\n top: 0,\n },\n reactionBubble: {\n alignItems: 'center',\n flexDirection: 'row',\n justifyContent: 'space-evenly',\n position: 'absolute',\n },\n reactionBubbleBackground: {\n position: 'absolute',\n },\n});\n\nexport type MessageReactions = {\n reactions: Reactions;\n supportedReactions?: ReactionData[];\n};\n\nconst Icon: React.FC<\n Pick<IconProps, 'pathFill' | 'style'> & {\n size: number;\n supportedReactions: ReactionData[];\n type: string;\n }\n> = ({ pathFill, size, style, supportedReactions, type }) => {\n const ReactionIcon =\n supportedReactions.find((reaction) => reaction.type === type)?.Icon || Unknown;\n\n return (\n <View>\n <ReactionIcon height={size} pathFill={pathFill} style={style} width={size} />\n </View>\n );\n};\n\nexport type ReactionListPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n MessageContextValue<StreamChatGenerics>,\n | 'alignment'\n | 'message'\n | 'onLongPress'\n | 'onPress'\n | 'onPressIn'\n | 'preventPress'\n | 'reactions'\n | 'showMessageOverlay'\n> &\n Pick<MessagesContextValue<StreamChatGenerics>, 'targetedMessage'> & {\n messageContentWidth: number;\n supportedReactions: ReactionData[];\n fill?: string;\n radius?: number; // not recommended to change this\n reactionSize?: number;\n stroke?: string;\n strokeSize?: number; // not recommended to change this\n };\n\nconst ReactionListWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ReactionListPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n alignment,\n fill: propFill,\n message,\n messageContentWidth,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n radius: propRadius,\n reactions,\n reactionSize: propReactionSize,\n showMessageOverlay,\n stroke: propStroke,\n strokeSize: propStrokeSize,\n supportedReactions,\n targetedMessage,\n } = props;\n\n const {\n theme: {\n colors: {\n accent_blue,\n grey,\n grey_gainsboro,\n grey_whisper,\n targetedMessageBackground,\n white,\n white_snow,\n },\n messageSimple: {\n avatarWrapper: { leftAlign, spacer },\n reactionList: {\n container,\n iconFillColor,\n middleIcon,\n radius: themeRadius,\n reactionBubble,\n reactionBubbleBackground,\n reactionSize: themeReactionSize,\n strokeSize: themeStrokeSize,\n },\n },\n screenPadding,\n },\n } = useTheme();\n\n const width = useWindowDimensions().width;\n\n const supportedReactionTypes = supportedReactions.map(\n (supportedReaction) => supportedReaction.type,\n );\n const hasSupportedReactions = reactions.some((reaction) =>\n supportedReactionTypes.includes(reaction.type),\n );\n\n if (!hasSupportedReactions || messageContentWidth === 0) {\n return null;\n }\n\n const alignmentLeft = alignment === 'left';\n const fill = propFill || (alignmentLeft ? grey_gainsboro : grey_whisper);\n const radius = propRadius || themeRadius;\n const reactionSize = propReactionSize || themeReactionSize;\n const highlighted = message.pinned || targetedMessage === message.id;\n const stroke = propStroke || (highlighted ? targetedMessageBackground : white_snow);\n const strokeSize = propStrokeSize || themeStrokeSize;\n\n const x1 = alignmentLeft\n ? messageContentWidth +\n (Number(leftAlign.marginRight) || 0) +\n (Number(spacer.width) || 0) -\n radius * 0.5\n : width - screenPadding * 2 - messageContentWidth;\n const x2 = x1 + radius * 2 * (alignmentLeft ? 1 : -1);\n const y1 = reactionSize + radius * 2;\n const y2 = reactionSize - radius;\n\n const insideLeftBound = x2 - (reactionSize * reactions.length) / 2 > screenPadding;\n const insideRightBound =\n x2 + strokeSize + (reactionSize * reactions.length) / 2 < width - screenPadding * 2;\n const left =\n reactions.length === 1\n ? x1 + (alignmentLeft ? -radius : radius - reactionSize)\n : !insideLeftBound\n ? screenPadding\n : !insideRightBound\n ? width - screenPadding * 2 - reactionSize * reactions.length - strokeSize\n : x2 - (reactionSize * reactions.length) / 2 - strokeSize;\n\n return (\n <View\n pointerEvents='box-none'\n style={[\n styles.container,\n {\n height: reactionSize + radius * 5,\n width,\n },\n container,\n ]}\n testID='reaction-list'\n >\n {reactions.length ? (\n <View pointerEvents='box-none' style={[StyleSheet.absoluteFill]}>\n <Svg pointerEvents='none'>\n <Circle cx={x1} cy={y1} fill={stroke} r={radius + strokeSize * 3} />\n <Circle cx={x2} cy={y2} fill={stroke} r={radius * 2 + strokeSize * 3} />\n <Circle cx={x1} cy={y1} fill={fill} r={radius + strokeSize} />\n <Circle cx={x2} cy={y2} fill={fill} r={radius * 2 + strokeSize} />\n <Circle cx={x1} cy={y1} fill={alignmentLeft ? fill : white} r={radius} />\n <Circle cx={x2} cy={y2} fill={alignmentLeft ? fill : white} r={radius * 2} />\n </Svg>\n <View\n style={[\n styles.reactionBubbleBackground,\n {\n backgroundColor: alignmentLeft ? fill : white,\n borderColor: fill,\n borderRadius: reactionSize,\n borderWidth: strokeSize,\n height: reactionSize,\n left,\n width: reactionSize * reactions.length,\n },\n reactionBubbleBackground,\n ]}\n />\n <View pointerEvents='none' style={[StyleSheet.absoluteFill]}>\n <Svg>\n <Circle cx={x2} cy={y2} fill={alignmentLeft ? fill : white} r={radius * 2} />\n </Svg>\n </View>\n <TouchableOpacity\n disabled={preventPress}\n onLongPress={(event) => {\n if (onLongPress) {\n onLongPress({\n emitter: 'reactionList',\n event,\n });\n }\n }}\n onPress={(event) => {\n if (onPress) {\n onPress({\n defaultHandler: () => showMessageOverlay(true),\n emitter: 'reactionList',\n event,\n });\n }\n }}\n onPressIn={(event) => {\n if (onPressIn) {\n onPressIn({\n defaultHandler: () => showMessageOverlay(true),\n emitter: 'reactionList',\n event,\n });\n }\n }}\n style={[\n styles.reactionBubble,\n {\n backgroundColor: alignmentLeft ? fill : white,\n borderRadius: reactionSize - strokeSize * 2,\n height: reactionSize - strokeSize * 2,\n left: left + strokeSize,\n top: strokeSize,\n width: reactionSize * reactions.length - strokeSize * 2,\n },\n reactionBubble,\n ]}\n >\n {reactions.map((reaction) => (\n <Icon\n key={reaction.type}\n pathFill={reaction.own ? iconFillColor || accent_blue : grey}\n size={reactionSize / 2}\n style={middleIcon}\n supportedReactions={supportedReactions}\n type={reaction.type}\n />\n ))}\n </TouchableOpacity>\n </View>\n ) : null}\n </View>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: ReactionListPropsWithContext<StreamChatGenerics>,\n nextProps: ReactionListPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n message: prevMessage,\n messageContentWidth: prevMessageContentWidth,\n targetedMessage: prevTargetedMessage,\n } = prevProps;\n const {\n message: nextMessage,\n messageContentWidth: nextMessageContentWidth,\n targetedMessage: nextTargetedMessage,\n } = nextProps;\n\n const messageContentWidthEqual = prevMessageContentWidth === nextMessageContentWidth;\n if (!messageContentWidthEqual) return false;\n\n const messagePinnedEqual = prevMessage.pinned === nextMessage.pinned;\n\n if (!messagePinnedEqual) return false;\n\n const targetedMessageEqual = prevTargetedMessage === nextTargetedMessage;\n\n if (!targetedMessageEqual) return false;\n\n const latestReactionsEqual =\n Array.isArray(prevMessage.latest_reactions) && Array.isArray(nextMessage.latest_reactions)\n ? prevMessage.latest_reactions.length === nextMessage.latest_reactions.length &&\n prevMessage.latest_reactions.every(\n ({ type }, index) => type === nextMessage.latest_reactions?.[index].type,\n )\n : prevMessage.latest_reactions === nextMessage.latest_reactions;\n if (!latestReactionsEqual) return false;\n\n return true;\n};\n\nconst MemoizedReactionList = React.memo(\n ReactionListWithContext,\n areEqual,\n) as typeof ReactionListWithContext;\n\nexport type ReactionListProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<Omit<ReactionListPropsWithContext<StreamChatGenerics>, 'messageContentWidth'>> &\n Pick<ReactionListPropsWithContext<StreamChatGenerics>, 'messageContentWidth'>;\n\n/**\n * ReactionList - A high level component which implements all the logic required for a message reaction list\n */\nexport const ReactionList = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ReactionListProps<StreamChatGenerics>,\n) => {\n const {\n alignment,\n message,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n reactions,\n showMessageOverlay,\n } = useMessageContext<StreamChatGenerics>();\n const { supportedReactions, targetedMessage } = useMessagesContext<StreamChatGenerics>();\n\n return (\n <MemoizedReactionList\n {...{\n alignment,\n message,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n reactions,\n showMessageOverlay,\n supportedReactions,\n targetedMessage,\n }}\n {...props}\n />\n );\n};\n"],"mappings":"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"}
@@ -488,6 +488,7 @@ var defaultTheme = {
488
488
  },
489
489
  reactionList: {
490
490
  container: {},
491
+ iconFillColor: '',
491
492
  middleIcon: {},
492
493
  radius: 2,
493
494
  reactionBubble: {},