stream-chat-react-native-core 5.13.0-beta.3 → 5.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/components/MessageInput/AttachButton.js +4 -10
- package/lib/commonjs/components/MessageInput/AttachButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/CommandsButton.js +4 -10
- package/lib/commonjs/components/MessageInput/CommandsButton.js.map +1 -1
- package/lib/commonjs/components/MessageInput/SendButton.js +7 -7
- package/lib/commonjs/components/MessageInput/SendButton.js.map +1 -1
- package/lib/commonjs/version.json +1 -1
- package/lib/module/components/MessageInput/AttachButton.js +4 -10
- package/lib/module/components/MessageInput/AttachButton.js.map +1 -1
- package/lib/module/components/MessageInput/CommandsButton.js +4 -10
- package/lib/module/components/MessageInput/CommandsButton.js.map +1 -1
- package/lib/module/components/MessageInput/SendButton.js +7 -7
- package/lib/module/components/MessageInput/SendButton.js.map +1 -1
- package/lib/module/version.json +1 -1
- package/package.json +1 -1
- package/src/components/MessageInput/AttachButton.tsx +3 -4
- package/src/components/MessageInput/CommandsButton.tsx +3 -4
- package/src/components/MessageInput/SendButton.tsx +4 -3
- package/src/components/MessageInput/__tests__/__snapshots__/AttachButton.test.js.snap +120 -152
- package/src/components/MessageInput/__tests__/__snapshots__/SendButton.test.js.snap +248 -248
- package/src/components/Thread/__tests__/__snapshots__/Thread.test.js.snap +182 -214
- package/src/version.json +1 -1
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
exports.AttachButton = void 0;
|
|
6
6
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
7
7
|
var _react = _interopRequireDefault(require("react"));
|
|
8
|
-
var
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
9
|
var _AttachmentPickerContext = require("../../contexts/attachmentPickerContext/AttachmentPickerContext");
|
|
10
10
|
var _ChannelContext = require("../../contexts/channelContext/ChannelContext");
|
|
11
11
|
var _ThemeContext = require("../../contexts/themeContext/ThemeContext");
|
|
@@ -22,14 +22,8 @@ var AttachButtonWithContext = function AttachButtonWithContext(props) {
|
|
|
22
22
|
accent_blue = _useTheme$theme$color.accent_blue,
|
|
23
23
|
grey = _useTheme$theme$color.grey,
|
|
24
24
|
attachButton = _useTheme$theme.messageInput.attachButton;
|
|
25
|
-
return _react["default"].createElement(
|
|
25
|
+
return _react["default"].createElement(_reactNative.Pressable, {
|
|
26
26
|
disabled: disabled,
|
|
27
|
-
hitSlop: {
|
|
28
|
-
bottom: 15,
|
|
29
|
-
left: 15,
|
|
30
|
-
right: 5,
|
|
31
|
-
top: 15
|
|
32
|
-
},
|
|
33
27
|
onPress: disabled ? function () {
|
|
34
28
|
return null;
|
|
35
29
|
} : handleOnPress,
|
|
@@ -46,7 +40,7 @@ var AttachButtonWithContext = function AttachButtonWithContext(props) {
|
|
|
46
40
|
__self: _this,
|
|
47
41
|
__source: {
|
|
48
42
|
fileName: _jsxFileName,
|
|
49
|
-
lineNumber:
|
|
43
|
+
lineNumber: 43,
|
|
50
44
|
columnNumber: 7
|
|
51
45
|
}
|
|
52
46
|
}));
|
|
@@ -80,7 +74,7 @@ var AttachButton = function AttachButton(props) {
|
|
|
80
74
|
__self: _this,
|
|
81
75
|
__source: {
|
|
82
76
|
fileName: _jsxFileName,
|
|
83
|
-
lineNumber:
|
|
77
|
+
lineNumber: 95,
|
|
84
78
|
columnNumber: 10
|
|
85
79
|
}
|
|
86
80
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_AttachmentPickerContext","_ChannelContext","_ThemeContext","_Attach","_this","_jsxFileName","AttachButtonWithContext","props","disabled","handleOnPress","selectedPicker","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","accent_blue","grey","attachButton","messageInput","createElement","Pressable","onPress","style","testID","__self","__source","fileName","lineNumber","columnNumber","Attach","pathFill","areEqual","prevProps","nextProps","prevDisabled","prevHandleOnPress","prevSelectedPicker","nextDisabled","nextHandleOnPress","nextSelectedPicker","disabledEqual","handleOnPressEqual","selectedPickerEqual","MemoizedAttachButton","React","memo","AttachButton","_useChannelContext","useChannelContext","_useChannelContext$di","_useAttachmentPickerC","useAttachmentPickerContext","_extends2","exports","displayName"],"sources":["AttachButton.tsx"],"sourcesContent":["import React from 'react';\nimport type { GestureResponderEvent } from 'react-native';\nimport { Pressable } from 'react-native';\n\nimport { useAttachmentPickerContext } from '../../contexts/attachmentPickerContext/AttachmentPickerContext';\nimport {\n ChannelContextValue,\n useChannelContext,\n} from '../../contexts/channelContext/ChannelContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { Attach } from '../../icons/Attach';\n\nimport type { DefaultStreamChatGenerics } from '../../types/types';\n\ntype AttachButtonPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<ChannelContextValue<StreamChatGenerics>, 'disabled'> & {\n /** Function that opens attachment options bottom sheet */\n handleOnPress?: ((event: GestureResponderEvent) => void) & (() => void);\n selectedPicker?: 'images';\n};\n\nconst AttachButtonWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: AttachButtonPropsWithContext<StreamChatGenerics>,\n) => {\n const { disabled, handleOnPress, selectedPicker } = props;\n const {\n theme: {\n colors: { accent_blue, grey },\n messageInput: { attachButton },\n },\n } = useTheme();\n\n return (\n <Pressable\n disabled={disabled}\n onPress={disabled ? () => null : handleOnPress}\n style={[attachButton]}\n testID='attach-button'\n >\n <Attach pathFill={selectedPicker === 'images' ? accent_blue : grey} />\n </Pressable>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: AttachButtonPropsWithContext<StreamChatGenerics>,\n nextProps: AttachButtonPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n disabled: prevDisabled,\n handleOnPress: prevHandleOnPress,\n selectedPicker: prevSelectedPicker,\n } = prevProps;\n const {\n disabled: nextDisabled,\n handleOnPress: nextHandleOnPress,\n selectedPicker: nextSelectedPicker,\n } = nextProps;\n\n const disabledEqual = prevDisabled === nextDisabled;\n if (!disabledEqual) return false;\n\n const handleOnPressEqual = prevHandleOnPress === nextHandleOnPress;\n if (!handleOnPressEqual) return false;\n\n const selectedPickerEqual = prevSelectedPicker === nextSelectedPicker;\n if (!selectedPickerEqual) return false;\n\n return true;\n};\n\nconst MemoizedAttachButton = React.memo(\n AttachButtonWithContext,\n areEqual,\n) as typeof AttachButtonWithContext;\n\nexport type AttachButtonProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<AttachButtonPropsWithContext<StreamChatGenerics>>;\n\n/**\n * UI Component for attach button in MessageInput component.\n */\nexport const AttachButton = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: AttachButtonProps<StreamChatGenerics>,\n) => {\n const { disabled = false } = useChannelContext<StreamChatGenerics>();\n const { selectedPicker } = useAttachmentPickerContext();\n\n return <MemoizedAttachButton {...{ disabled, selectedPicker }} {...props} />;\n};\n\nAttachButton.displayName = 'AttachButton{messageInput}';\n"],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
exports.CommandsButton = void 0;
|
|
6
6
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
7
7
|
var _react = _interopRequireDefault(require("react"));
|
|
8
|
-
var
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
9
|
var _ChannelContext = require("../../contexts/channelContext/ChannelContext");
|
|
10
10
|
var _SuggestionsContext = require("../../contexts/suggestionsContext/SuggestionsContext");
|
|
11
11
|
var _ThemeContext = require("../../contexts/themeContext/ThemeContext");
|
|
@@ -22,14 +22,8 @@ var CommandsButtonWithContext = function CommandsButtonWithContext(props) {
|
|
|
22
22
|
accent_blue = _useTheme$theme$color.accent_blue,
|
|
23
23
|
grey = _useTheme$theme$color.grey,
|
|
24
24
|
commandsButton = _useTheme$theme.messageInput.commandsButton;
|
|
25
|
-
return _react["default"].createElement(
|
|
25
|
+
return _react["default"].createElement(_reactNative.Pressable, {
|
|
26
26
|
disabled: disabled,
|
|
27
|
-
hitSlop: {
|
|
28
|
-
bottom: 15,
|
|
29
|
-
left: 5,
|
|
30
|
-
right: 15,
|
|
31
|
-
top: 15
|
|
32
|
-
},
|
|
33
27
|
onPress: handleOnPress,
|
|
34
28
|
style: [commandsButton],
|
|
35
29
|
testID: "commands-button",
|
|
@@ -46,7 +40,7 @@ var CommandsButtonWithContext = function CommandsButtonWithContext(props) {
|
|
|
46
40
|
__self: _this,
|
|
47
41
|
__source: {
|
|
48
42
|
fileName: _jsxFileName,
|
|
49
|
-
lineNumber:
|
|
43
|
+
lineNumber: 48,
|
|
50
44
|
columnNumber: 7
|
|
51
45
|
}
|
|
52
46
|
}));
|
|
@@ -76,7 +70,7 @@ var CommandsButton = function CommandsButton(props) {
|
|
|
76
70
|
__self: _this,
|
|
77
71
|
__source: {
|
|
78
72
|
fileName: _jsxFileName,
|
|
79
|
-
lineNumber:
|
|
73
|
+
lineNumber: 95,
|
|
80
74
|
columnNumber: 10
|
|
81
75
|
}
|
|
82
76
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_ChannelContext","_SuggestionsContext","_ThemeContext","_Lightning","_this","_jsxFileName","CommandsButtonWithContext","props","disabled","handleOnPress","suggestions","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","accent_blue","grey","commandsButton","messageInput","createElement","Pressable","onPress","style","testID","__self","__source","fileName","lineNumber","columnNumber","Lightning","pathFill","data","some","suggestion","isSuggestionCommand","areEqual","prevProps","nextProps","prevDisabled","prevSuggestions","nextDisabled","nextSuggestions","disabledEqual","suggestionsEqual","MemoizedCommandsButton","React","memo","CommandsButton","_useChannelContext","useChannelContext","_useChannelContext$di","_useSuggestionsContex","useSuggestionsContext","_extends2","exports","displayName"],"sources":["CommandsButton.tsx"],"sourcesContent":["import React from 'react';\nimport type { GestureResponderEvent } from 'react-native';\nimport { Pressable } from 'react-native';\n\nimport {\n ChannelContextValue,\n useChannelContext,\n} from '../../contexts/channelContext/ChannelContext';\nimport {\n isSuggestionCommand,\n SuggestionsContextValue,\n useSuggestionsContext,\n} from '../../contexts/suggestionsContext/SuggestionsContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { Lightning } from '../../icons/Lightning';\n\nimport type { DefaultStreamChatGenerics } from '../../types/types';\n\ntype CommandsButtonPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<ChannelContextValue<StreamChatGenerics>, 'disabled'> &\n Pick<SuggestionsContextValue<StreamChatGenerics>, 'suggestions'> & {\n /** Function that opens commands selector */\n handleOnPress?: ((event: GestureResponderEvent) => void) & (() => void);\n };\n\nconst CommandsButtonWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: CommandsButtonPropsWithContext<StreamChatGenerics>,\n) => {\n const { disabled, handleOnPress, suggestions } = props;\n\n const {\n theme: {\n colors: { accent_blue, grey },\n messageInput: { commandsButton },\n },\n } = useTheme();\n\n return (\n <Pressable\n disabled={disabled}\n onPress={handleOnPress}\n style={[commandsButton]}\n testID='commands-button'\n >\n <Lightning\n pathFill={\n suggestions && suggestions.data.some((suggestion) => isSuggestionCommand(suggestion))\n ? accent_blue\n : grey\n }\n />\n </Pressable>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: CommandsButtonPropsWithContext<StreamChatGenerics>,\n nextProps: CommandsButtonPropsWithContext<StreamChatGenerics>,\n) => {\n const { disabled: prevDisabled, suggestions: prevSuggestions } = prevProps;\n const { disabled: nextDisabled, suggestions: nextSuggestions } = nextProps;\n\n const disabledEqual = prevDisabled === nextDisabled;\n if (!disabledEqual) return false;\n\n const suggestionsEqual = !!prevSuggestions === !!nextSuggestions;\n if (!suggestionsEqual) return false;\n\n return true;\n};\n\nconst MemoizedCommandsButton = React.memo(\n CommandsButtonWithContext,\n areEqual,\n) as typeof CommandsButtonWithContext;\n\nexport type CommandsButtonProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<CommandsButtonPropsWithContext<StreamChatGenerics>>;\n\n/**\n * UI Component for attach button in MessageInput component.\n */\nexport const CommandsButton = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: CommandsButtonProps<StreamChatGenerics>,\n) => {\n const { disabled = false } = useChannelContext<StreamChatGenerics>();\n const { suggestions } = useSuggestionsContext<StreamChatGenerics>();\n\n return <MemoizedCommandsButton {...{ disabled, suggestions }} {...props} />;\n};\n\nCommandsButton.displayName = 'CommandsButton{messageInput}';\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,eAAA,GAAAF,OAAA;AAIA,IAAAG,mBAAA,GAAAH,OAAA;AAKA,IAAAI,aAAA,GAAAJ,OAAA;AACA,IAAAK,UAAA,GAAAL,OAAA;AAAkD,IAAAM,KAAA;EAAAC,YAAA;AAYlD,IAAMC,yBAAyB,GAAG,SAA5BA,yBAAyBA,CAG7BC,KAAyD,EACtD;EACH,IAAQC,QAAQ,GAAiCD,KAAK,CAA9CC,QAAQ;IAAEC,aAAa,GAAkBF,KAAK,CAApCE,aAAa;IAAEC,WAAW,GAAKH,KAAK,CAArBG,WAAW;EAE5C,IAAAC,SAAA,GAKI,IAAAC,sBAAQ,GAAE;IAAAC,eAAA,GAAAF,SAAA,CAJZG,KAAK;IAAAC,qBAAA,GAAAF,eAAA,CACHG,MAAM;IAAIC,WAAW,GAAAF,qBAAA,CAAXE,WAAW;IAAEC,IAAI,GAAAH,qBAAA,CAAJG,IAAI;IACXC,cAAc,GAAAN,eAAA,CAA9BO,YAAY,CAAID,cAAc;EAIlC,OACEvB,MAAA,YAAAyB,aAAA,CAACtB,YAAA,CAAAuB,SAAS;IACRd,QAAQ,EAAEA,QAAS;IACnBe,OAAO,EAAEd,aAAc;IACvBe,KAAK,EAAE,CAACL,cAAc,CAAE;IACxBM,MAAM,EAAC,iBAAiB;IAAAC,MAAA,EAAAtB,KAAA;IAAAuB,QAAA;MAAAC,QAAA,EAAAvB,YAAA;MAAAwB,UAAA;MAAAC,YAAA;IAAA;EAAA,GAExBlC,MAAA,YAAAyB,aAAA,CAAClB,UAAA,CAAA4B,SAAS;IACRC,QAAQ,EACNtB,WAAW,IAAIA,WAAW,CAACuB,IAAI,CAACC,IAAI,CAAC,UAACC,UAAU;MAAA,OAAK,IAAAC,uCAAmB,EAACD,UAAU,CAAC;IAAA,EAAC,GACjFlB,WAAW,GACXC,IACL;IAAAQ,MAAA,EAAAtB,KAAA;IAAAuB,QAAA;MAAAC,QAAA,EAAAvB,YAAA;MAAAwB,UAAA;MAAAC,YAAA;IAAA;EAAA,EACD,CACQ;AAEhB,CAAC;AAED,IAAMO,QAAQ,GAAG,SAAXA,QAAQA,CACZC,SAA6D,EAC7DC,SAA6D,EAC1D;EACH,IAAkBC,YAAY,GAAmCF,SAAS,CAAlE9B,QAAQ;IAA6BiC,eAAe,GAAKH,SAAS,CAA1C5B,WAAW;EAC3C,IAAkBgC,YAAY,GAAmCH,SAAS,CAAlE/B,QAAQ;IAA6BmC,eAAe,GAAKJ,SAAS,CAA1C7B,WAAW;EAE3C,IAAMkC,aAAa,GAAGJ,YAAY,KAAKE,YAAY;EACnD,IAAI,CAACE,aAAa,EAAE,OAAO,KAAK;EAEhC,IAAMC,gBAAgB,GAAG,CAAC,CAACJ,eAAe,KAAK,CAAC,CAACE,eAAe;EAChE,IAAI,CAACE,gBAAgB,EAAE,OAAO,KAAK;EAEnC,OAAO,IAAI;AACb,CAAC;AAED,IAAMC,sBAAsB,GAAGC,iBAAK,CAACC,IAAI,CACvC1C,yBAAyB,EACzB+B,QAAQ,CAC2B;AAS9B,IAAMY,cAAc,GAAG,SAAjBA,cAAcA,CAGzB1C,KAA8C,EAC3C;EACH,IAAA2C,kBAAA,GAA6B,IAAAC,iCAAiB,GAAsB;IAAAC,qBAAA,GAAAF,kBAAA,CAA5D1C,QAAQ;IAARA,QAAQ,GAAA4C,qBAAA,cAAG,KAAK,GAAAA,qBAAA;EACxB,IAAAC,qBAAA,GAAwB,IAAAC,yCAAqB,GAAsB;IAA3D5C,WAAW,GAAA2C,qBAAA,CAAX3C,WAAW;EAEnB,OAAOd,MAAA,YAAAyB,aAAA,CAACyB,sBAAsB,MAAAS,SAAA;IAAO/C,QAAQ,EAARA,QAAQ;IAAEE,WAAW,EAAXA;EAAW,GAAQH,KAAK;IAAAmB,MAAA,EAAAtB,KAAA;IAAAuB,QAAA;MAAAC,QAAA,EAAAvB,YAAA;MAAAwB,UAAA;MAAAC,YAAA;IAAA;EAAA,GAAI;AAC7E,CAAC;AAAC0B,OAAA,CAAAP,cAAA,GAAAA,cAAA;AAEFA,cAAc,CAACQ,WAAW,GAAG,8BAA8B"}
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
exports.SendButton = void 0;
|
|
6
6
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
7
7
|
var _react = _interopRequireDefault(require("react"));
|
|
8
|
-
var
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
9
|
var _MessageInputContext = require("../../contexts/messageInputContext/MessageInputContext");
|
|
10
10
|
var _ThemeContext = require("../../contexts/themeContext/ThemeContext");
|
|
11
11
|
var _Search = require("../../icons/Search");
|
|
@@ -24,7 +24,7 @@ var SendButtonWithContext = function SendButtonWithContext(props) {
|
|
|
24
24
|
accent_blue = _useTheme$theme$color.accent_blue,
|
|
25
25
|
grey_gainsboro = _useTheme$theme$color.grey_gainsboro,
|
|
26
26
|
sendButton = _useTheme$theme.messageInput.sendButton;
|
|
27
|
-
return _react["default"].createElement(
|
|
27
|
+
return _react["default"].createElement(_reactNative.Pressable, {
|
|
28
28
|
disabled: disabled,
|
|
29
29
|
onPress: disabled ? function () {
|
|
30
30
|
return null;
|
|
@@ -34,7 +34,7 @@ var SendButtonWithContext = function SendButtonWithContext(props) {
|
|
|
34
34
|
__self: _this,
|
|
35
35
|
__source: {
|
|
36
36
|
fileName: _jsxFileName,
|
|
37
|
-
lineNumber:
|
|
37
|
+
lineNumber: 36,
|
|
38
38
|
columnNumber: 5
|
|
39
39
|
}
|
|
40
40
|
}, giphyActive && _react["default"].createElement(_Search.Search, {
|
|
@@ -42,7 +42,7 @@ var SendButtonWithContext = function SendButtonWithContext(props) {
|
|
|
42
42
|
__self: _this,
|
|
43
43
|
__source: {
|
|
44
44
|
fileName: _jsxFileName,
|
|
45
|
-
lineNumber:
|
|
45
|
+
lineNumber: 42,
|
|
46
46
|
columnNumber: 23
|
|
47
47
|
}
|
|
48
48
|
}), !giphyActive && disabled && _react["default"].createElement(_SendRight.SendRight, {
|
|
@@ -50,7 +50,7 @@ var SendButtonWithContext = function SendButtonWithContext(props) {
|
|
|
50
50
|
__self: _this,
|
|
51
51
|
__source: {
|
|
52
52
|
fileName: _jsxFileName,
|
|
53
|
-
lineNumber:
|
|
53
|
+
lineNumber: 43,
|
|
54
54
|
columnNumber: 36
|
|
55
55
|
}
|
|
56
56
|
}), !giphyActive && !disabled && _react["default"].createElement(_SendUp.SendUp, {
|
|
@@ -58,7 +58,7 @@ var SendButtonWithContext = function SendButtonWithContext(props) {
|
|
|
58
58
|
__self: _this,
|
|
59
59
|
__source: {
|
|
60
60
|
fileName: _jsxFileName,
|
|
61
|
-
lineNumber:
|
|
61
|
+
lineNumber: 44,
|
|
62
62
|
columnNumber: 37
|
|
63
63
|
}
|
|
64
64
|
}));
|
|
@@ -91,7 +91,7 @@ var SendButton = function SendButton(props) {
|
|
|
91
91
|
__self: _this,
|
|
92
92
|
__source: {
|
|
93
93
|
fileName: _jsxFileName,
|
|
94
|
-
lineNumber:
|
|
94
|
+
lineNumber: 96,
|
|
95
95
|
columnNumber: 5
|
|
96
96
|
}
|
|
97
97
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_MessageInputContext","_ThemeContext","_Search","_SendRight","_SendUp","_this","_jsxFileName","SendButtonWithContext","props","_props$disabled","disabled","giphyActive","sendMessage","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","accent_blue","grey_gainsboro","sendButton","messageInput","createElement","Pressable","onPress","style","testID","__self","__source","fileName","lineNumber","columnNumber","Search","pathFill","SendRight","SendUp","areEqual","prevProps","nextProps","prevDisabled","prevGiphyActive","prevSendMessage","nextDisabled","nextGiphyActive","nextSendMessage","disabledEqual","giphyActiveEqual","sendMessageEqual","MemoizedSendButton","React","memo","SendButton","_useMessageInputConte","useMessageInputContext","_extends2","exports","displayName"],"sources":["SendButton.tsx"],"sourcesContent":["import React from 'react';\n\nimport { Pressable } from 'react-native';\n\nimport {\n MessageInputContextValue,\n useMessageInputContext,\n} from '../../contexts/messageInputContext/MessageInputContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { Search } from '../../icons/Search';\nimport { SendRight } from '../../icons/SendRight';\nimport { SendUp } from '../../icons/SendUp';\n\nimport type { DefaultStreamChatGenerics } from '../../types/types';\n\ntype SendButtonPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<MessageInputContextValue<StreamChatGenerics>, 'giphyActive' | 'sendMessage'> & {\n /** Disables the button */ disabled: boolean;\n};\n\nconst SendButtonWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: SendButtonPropsWithContext<StreamChatGenerics>,\n) => {\n const { disabled = false, giphyActive, sendMessage } = props;\n const {\n theme: {\n colors: { accent_blue, grey_gainsboro },\n messageInput: { sendButton },\n },\n } = useTheme();\n\n return (\n <Pressable\n disabled={disabled}\n onPress={disabled ? () => null : sendMessage}\n style={[sendButton]}\n testID='send-button'\n >\n {giphyActive && <Search pathFill={disabled ? grey_gainsboro : accent_blue} />}\n {!giphyActive && disabled && <SendRight pathFill={grey_gainsboro} />}\n {!giphyActive && !disabled && <SendUp pathFill={accent_blue} />}\n </Pressable>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: SendButtonPropsWithContext<StreamChatGenerics>,\n nextProps: SendButtonPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n disabled: prevDisabled,\n giphyActive: prevGiphyActive,\n sendMessage: prevSendMessage,\n } = prevProps;\n const {\n disabled: nextDisabled,\n giphyActive: nextGiphyActive,\n sendMessage: nextSendMessage,\n } = nextProps;\n\n const disabledEqual = prevDisabled === nextDisabled;\n if (!disabledEqual) return false;\n\n const giphyActiveEqual = prevGiphyActive === nextGiphyActive;\n if (!giphyActiveEqual) return false;\n\n const sendMessageEqual = prevSendMessage === nextSendMessage;\n if (!sendMessageEqual) return false;\n\n return true;\n};\n\nconst MemoizedSendButton = React.memo(\n SendButtonWithContext,\n areEqual,\n) as typeof SendButtonWithContext;\n\nexport type SendButtonProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<SendButtonPropsWithContext<StreamChatGenerics>>;\n\n/**\n * UI Component for send button in MessageInput component.\n */\nexport const SendButton = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: SendButtonProps<StreamChatGenerics>,\n) => {\n const { giphyActive, sendMessage } = useMessageInputContext<StreamChatGenerics>();\n\n return (\n <MemoizedSendButton\n {...{ giphyActive, sendMessage }}\n {...props}\n {...{ disabled: props.disabled || false }}\n />\n );\n};\n\nSendButton.displayName = 'SendButton{messageInput}';\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,oBAAA,GAAAF,OAAA;AAIA,IAAAG,aAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AACA,IAAAK,UAAA,GAAAL,OAAA;AACA,IAAAM,OAAA,GAAAN,OAAA;AAA4C,IAAAO,KAAA;EAAAC,YAAA;AAU5C,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAGzBC,KAAqD,EAClD;EACH,IAAAC,eAAA,GAAuDD,KAAK,CAApDE,QAAQ;IAARA,QAAQ,GAAAD,eAAA,cAAG,KAAK,GAAAA,eAAA;IAAEE,WAAW,GAAkBH,KAAK,CAAlCG,WAAW;IAAEC,WAAW,GAAKJ,KAAK,CAArBI,WAAW;EAClD,IAAAC,SAAA,GAKI,IAAAC,sBAAQ,GAAE;IAAAC,eAAA,GAAAF,SAAA,CAJZG,KAAK;IAAAC,qBAAA,GAAAF,eAAA,CACHG,MAAM;IAAIC,WAAW,GAAAF,qBAAA,CAAXE,WAAW;IAAEC,cAAc,GAAAH,qBAAA,CAAdG,cAAc;IACrBC,UAAU,GAAAN,eAAA,CAA1BO,YAAY,CAAID,UAAU;EAI9B,OACEzB,MAAA,YAAA2B,aAAA,CAACxB,YAAA,CAAAyB,SAAS;IACRd,QAAQ,EAAEA,QAAS;IACnBe,OAAO,EAAEf,QAAQ,GAAG;MAAA,OAAM,IAAI;IAAA,IAAGE,WAAY;IAC7Cc,KAAK,EAAE,CAACL,UAAU,CAAE;IACpBM,MAAM,EAAC,aAAa;IAAAC,MAAA,EAAAvB,KAAA;IAAAwB,QAAA;MAAAC,QAAA,EAAAxB,YAAA;MAAAyB,UAAA;MAAAC,YAAA;IAAA;EAAA,GAEnBrB,WAAW,IAAIf,MAAA,YAAA2B,aAAA,CAACrB,OAAA,CAAA+B,MAAM;IAACC,QAAQ,EAAExB,QAAQ,GAAGU,cAAc,GAAGD,WAAY;IAAAS,MAAA,EAAAvB,KAAA;IAAAwB,QAAA;MAAAC,QAAA,EAAAxB,YAAA;MAAAyB,UAAA;MAAAC,YAAA;IAAA;EAAA,EAAG,EAC5E,CAACrB,WAAW,IAAID,QAAQ,IAAId,MAAA,YAAA2B,aAAA,CAACpB,UAAA,CAAAgC,SAAS;IAACD,QAAQ,EAAEd,cAAe;IAAAQ,MAAA,EAAAvB,KAAA;IAAAwB,QAAA;MAAAC,QAAA,EAAAxB,YAAA;MAAAyB,UAAA;MAAAC,YAAA;IAAA;EAAA,EAAG,EACnE,CAACrB,WAAW,IAAI,CAACD,QAAQ,IAAId,MAAA,YAAA2B,aAAA,CAACnB,OAAA,CAAAgC,MAAM;IAACF,QAAQ,EAAEf,WAAY;IAAAS,MAAA,EAAAvB,KAAA;IAAAwB,QAAA;MAAAC,QAAA,EAAAxB,YAAA;MAAAyB,UAAA;MAAAC,YAAA;IAAA;EAAA,EAAG,CACrD;AAEhB,CAAC;AAED,IAAMK,QAAQ,GAAG,SAAXA,QAAQA,CACZC,SAAyD,EACzDC,SAAyD,EACtD;EACH,IACYC,YAAY,GAGpBF,SAAS,CAHX5B,QAAQ;IACK+B,eAAe,GAE1BH,SAAS,CAFX3B,WAAW;IACE+B,eAAe,GAC1BJ,SAAS,CADX1B,WAAW;EAEb,IACY+B,YAAY,GAGpBJ,SAAS,CAHX7B,QAAQ;IACKkC,eAAe,GAE1BL,SAAS,CAFX5B,WAAW;IACEkC,eAAe,GAC1BN,SAAS,CADX3B,WAAW;EAGb,IAAMkC,aAAa,GAAGN,YAAY,KAAKG,YAAY;EACnD,IAAI,CAACG,aAAa,EAAE,OAAO,KAAK;EAEhC,IAAMC,gBAAgB,GAAGN,eAAe,KAAKG,eAAe;EAC5D,IAAI,CAACG,gBAAgB,EAAE,OAAO,KAAK;EAEnC,IAAMC,gBAAgB,GAAGN,eAAe,KAAKG,eAAe;EAC5D,IAAI,CAACG,gBAAgB,EAAE,OAAO,KAAK;EAEnC,OAAO,IAAI;AACb,CAAC;AAED,IAAMC,kBAAkB,GAAGC,iBAAK,CAACC,IAAI,CACnC5C,qBAAqB,EACrB8B,QAAQ,CACuB;AAS1B,IAAMe,UAAU,GAAG,SAAbA,UAAUA,CAGrB5C,KAA0C,EACvC;EACH,IAAA6C,qBAAA,GAAqC,IAAAC,2CAAsB,GAAsB;IAAzE3C,WAAW,GAAA0C,qBAAA,CAAX1C,WAAW;IAAEC,WAAW,GAAAyC,qBAAA,CAAXzC,WAAW;EAEhC,OACEhB,MAAA,YAAA2B,aAAA,CAAC0B,kBAAkB,MAAAM,SAAA;IACX5C,WAAW,EAAXA,WAAW;IAAEC,WAAW,EAAXA;EAAW,GAC1BJ,KAAK;IACHE,QAAQ,EAAEF,KAAK,CAACE,QAAQ,IAAI,KAAK;IAAAkB,MAAA,EAAAvB,KAAA;IAAAwB,QAAA;MAAAC,QAAA,EAAAxB,YAAA;MAAAyB,UAAA;MAAAC,YAAA;IAAA;EAAA,GACvC;AAEN,CAAC;AAACwB,OAAA,CAAAJ,UAAA,GAAAA,UAAA;AAEFA,UAAU,CAACK,WAAW,GAAG,0BAA0B"}
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
exports.AttachButton = void 0;
|
|
6
6
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
7
7
|
var _react = _interopRequireDefault(require("react"));
|
|
8
|
-
var
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
9
|
var _AttachmentPickerContext = require("../../contexts/attachmentPickerContext/AttachmentPickerContext");
|
|
10
10
|
var _ChannelContext = require("../../contexts/channelContext/ChannelContext");
|
|
11
11
|
var _ThemeContext = require("../../contexts/themeContext/ThemeContext");
|
|
@@ -22,14 +22,8 @@ var AttachButtonWithContext = function AttachButtonWithContext(props) {
|
|
|
22
22
|
accent_blue = _useTheme$theme$color.accent_blue,
|
|
23
23
|
grey = _useTheme$theme$color.grey,
|
|
24
24
|
attachButton = _useTheme$theme.messageInput.attachButton;
|
|
25
|
-
return _react["default"].createElement(
|
|
25
|
+
return _react["default"].createElement(_reactNative.Pressable, {
|
|
26
26
|
disabled: disabled,
|
|
27
|
-
hitSlop: {
|
|
28
|
-
bottom: 15,
|
|
29
|
-
left: 15,
|
|
30
|
-
right: 5,
|
|
31
|
-
top: 15
|
|
32
|
-
},
|
|
33
27
|
onPress: disabled ? function () {
|
|
34
28
|
return null;
|
|
35
29
|
} : handleOnPress,
|
|
@@ -46,7 +40,7 @@ var AttachButtonWithContext = function AttachButtonWithContext(props) {
|
|
|
46
40
|
__self: _this,
|
|
47
41
|
__source: {
|
|
48
42
|
fileName: _jsxFileName,
|
|
49
|
-
lineNumber:
|
|
43
|
+
lineNumber: 43,
|
|
50
44
|
columnNumber: 7
|
|
51
45
|
}
|
|
52
46
|
}));
|
|
@@ -80,7 +74,7 @@ var AttachButton = function AttachButton(props) {
|
|
|
80
74
|
__self: _this,
|
|
81
75
|
__source: {
|
|
82
76
|
fileName: _jsxFileName,
|
|
83
|
-
lineNumber:
|
|
77
|
+
lineNumber: 95,
|
|
84
78
|
columnNumber: 10
|
|
85
79
|
}
|
|
86
80
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_AttachmentPickerContext","_ChannelContext","_ThemeContext","_Attach","_this","_jsxFileName","AttachButtonWithContext","props","disabled","handleOnPress","selectedPicker","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","accent_blue","grey","attachButton","messageInput","createElement","Pressable","onPress","style","testID","__self","__source","fileName","lineNumber","columnNumber","Attach","pathFill","areEqual","prevProps","nextProps","prevDisabled","prevHandleOnPress","prevSelectedPicker","nextDisabled","nextHandleOnPress","nextSelectedPicker","disabledEqual","handleOnPressEqual","selectedPickerEqual","MemoizedAttachButton","React","memo","AttachButton","_useChannelContext","useChannelContext","_useChannelContext$di","_useAttachmentPickerC","useAttachmentPickerContext","_extends2","exports","displayName"],"sources":["AttachButton.tsx"],"sourcesContent":["import React from 'react';\nimport type { GestureResponderEvent } from 'react-native';\nimport { Pressable } from 'react-native';\n\nimport { useAttachmentPickerContext } from '../../contexts/attachmentPickerContext/AttachmentPickerContext';\nimport {\n ChannelContextValue,\n useChannelContext,\n} from '../../contexts/channelContext/ChannelContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { Attach } from '../../icons/Attach';\n\nimport type { DefaultStreamChatGenerics } from '../../types/types';\n\ntype AttachButtonPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<ChannelContextValue<StreamChatGenerics>, 'disabled'> & {\n /** Function that opens attachment options bottom sheet */\n handleOnPress?: ((event: GestureResponderEvent) => void) & (() => void);\n selectedPicker?: 'images';\n};\n\nconst AttachButtonWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: AttachButtonPropsWithContext<StreamChatGenerics>,\n) => {\n const { disabled, handleOnPress, selectedPicker } = props;\n const {\n theme: {\n colors: { accent_blue, grey },\n messageInput: { attachButton },\n },\n } = useTheme();\n\n return (\n <Pressable\n disabled={disabled}\n onPress={disabled ? () => null : handleOnPress}\n style={[attachButton]}\n testID='attach-button'\n >\n <Attach pathFill={selectedPicker === 'images' ? accent_blue : grey} />\n </Pressable>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: AttachButtonPropsWithContext<StreamChatGenerics>,\n nextProps: AttachButtonPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n disabled: prevDisabled,\n handleOnPress: prevHandleOnPress,\n selectedPicker: prevSelectedPicker,\n } = prevProps;\n const {\n disabled: nextDisabled,\n handleOnPress: nextHandleOnPress,\n selectedPicker: nextSelectedPicker,\n } = nextProps;\n\n const disabledEqual = prevDisabled === nextDisabled;\n if (!disabledEqual) return false;\n\n const handleOnPressEqual = prevHandleOnPress === nextHandleOnPress;\n if (!handleOnPressEqual) return false;\n\n const selectedPickerEqual = prevSelectedPicker === nextSelectedPicker;\n if (!selectedPickerEqual) return false;\n\n return true;\n};\n\nconst MemoizedAttachButton = React.memo(\n AttachButtonWithContext,\n areEqual,\n) as typeof AttachButtonWithContext;\n\nexport type AttachButtonProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<AttachButtonPropsWithContext<StreamChatGenerics>>;\n\n/**\n * UI Component for attach button in MessageInput component.\n */\nexport const AttachButton = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: AttachButtonProps<StreamChatGenerics>,\n) => {\n const { disabled = false } = useChannelContext<StreamChatGenerics>();\n const { selectedPicker } = useAttachmentPickerContext();\n\n return <MemoizedAttachButton {...{ disabled, selectedPicker }} {...props} />;\n};\n\nAttachButton.displayName = 'AttachButton{messageInput}';\n"],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
exports.CommandsButton = void 0;
|
|
6
6
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
7
7
|
var _react = _interopRequireDefault(require("react"));
|
|
8
|
-
var
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
9
|
var _ChannelContext = require("../../contexts/channelContext/ChannelContext");
|
|
10
10
|
var _SuggestionsContext = require("../../contexts/suggestionsContext/SuggestionsContext");
|
|
11
11
|
var _ThemeContext = require("../../contexts/themeContext/ThemeContext");
|
|
@@ -22,14 +22,8 @@ var CommandsButtonWithContext = function CommandsButtonWithContext(props) {
|
|
|
22
22
|
accent_blue = _useTheme$theme$color.accent_blue,
|
|
23
23
|
grey = _useTheme$theme$color.grey,
|
|
24
24
|
commandsButton = _useTheme$theme.messageInput.commandsButton;
|
|
25
|
-
return _react["default"].createElement(
|
|
25
|
+
return _react["default"].createElement(_reactNative.Pressable, {
|
|
26
26
|
disabled: disabled,
|
|
27
|
-
hitSlop: {
|
|
28
|
-
bottom: 15,
|
|
29
|
-
left: 5,
|
|
30
|
-
right: 15,
|
|
31
|
-
top: 15
|
|
32
|
-
},
|
|
33
27
|
onPress: handleOnPress,
|
|
34
28
|
style: [commandsButton],
|
|
35
29
|
testID: "commands-button",
|
|
@@ -46,7 +40,7 @@ var CommandsButtonWithContext = function CommandsButtonWithContext(props) {
|
|
|
46
40
|
__self: _this,
|
|
47
41
|
__source: {
|
|
48
42
|
fileName: _jsxFileName,
|
|
49
|
-
lineNumber:
|
|
43
|
+
lineNumber: 48,
|
|
50
44
|
columnNumber: 7
|
|
51
45
|
}
|
|
52
46
|
}));
|
|
@@ -76,7 +70,7 @@ var CommandsButton = function CommandsButton(props) {
|
|
|
76
70
|
__self: _this,
|
|
77
71
|
__source: {
|
|
78
72
|
fileName: _jsxFileName,
|
|
79
|
-
lineNumber:
|
|
73
|
+
lineNumber: 95,
|
|
80
74
|
columnNumber: 10
|
|
81
75
|
}
|
|
82
76
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_ChannelContext","_SuggestionsContext","_ThemeContext","_Lightning","_this","_jsxFileName","CommandsButtonWithContext","props","disabled","handleOnPress","suggestions","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","accent_blue","grey","commandsButton","messageInput","createElement","Pressable","onPress","style","testID","__self","__source","fileName","lineNumber","columnNumber","Lightning","pathFill","data","some","suggestion","isSuggestionCommand","areEqual","prevProps","nextProps","prevDisabled","prevSuggestions","nextDisabled","nextSuggestions","disabledEqual","suggestionsEqual","MemoizedCommandsButton","React","memo","CommandsButton","_useChannelContext","useChannelContext","_useChannelContext$di","_useSuggestionsContex","useSuggestionsContext","_extends2","exports","displayName"],"sources":["CommandsButton.tsx"],"sourcesContent":["import React from 'react';\nimport type { GestureResponderEvent } from 'react-native';\nimport { Pressable } from 'react-native';\n\nimport {\n ChannelContextValue,\n useChannelContext,\n} from '../../contexts/channelContext/ChannelContext';\nimport {\n isSuggestionCommand,\n SuggestionsContextValue,\n useSuggestionsContext,\n} from '../../contexts/suggestionsContext/SuggestionsContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { Lightning } from '../../icons/Lightning';\n\nimport type { DefaultStreamChatGenerics } from '../../types/types';\n\ntype CommandsButtonPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<ChannelContextValue<StreamChatGenerics>, 'disabled'> &\n Pick<SuggestionsContextValue<StreamChatGenerics>, 'suggestions'> & {\n /** Function that opens commands selector */\n handleOnPress?: ((event: GestureResponderEvent) => void) & (() => void);\n };\n\nconst CommandsButtonWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: CommandsButtonPropsWithContext<StreamChatGenerics>,\n) => {\n const { disabled, handleOnPress, suggestions } = props;\n\n const {\n theme: {\n colors: { accent_blue, grey },\n messageInput: { commandsButton },\n },\n } = useTheme();\n\n return (\n <Pressable\n disabled={disabled}\n onPress={handleOnPress}\n style={[commandsButton]}\n testID='commands-button'\n >\n <Lightning\n pathFill={\n suggestions && suggestions.data.some((suggestion) => isSuggestionCommand(suggestion))\n ? accent_blue\n : grey\n }\n />\n </Pressable>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: CommandsButtonPropsWithContext<StreamChatGenerics>,\n nextProps: CommandsButtonPropsWithContext<StreamChatGenerics>,\n) => {\n const { disabled: prevDisabled, suggestions: prevSuggestions } = prevProps;\n const { disabled: nextDisabled, suggestions: nextSuggestions } = nextProps;\n\n const disabledEqual = prevDisabled === nextDisabled;\n if (!disabledEqual) return false;\n\n const suggestionsEqual = !!prevSuggestions === !!nextSuggestions;\n if (!suggestionsEqual) return false;\n\n return true;\n};\n\nconst MemoizedCommandsButton = React.memo(\n CommandsButtonWithContext,\n areEqual,\n) as typeof CommandsButtonWithContext;\n\nexport type CommandsButtonProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<CommandsButtonPropsWithContext<StreamChatGenerics>>;\n\n/**\n * UI Component for attach button in MessageInput component.\n */\nexport const CommandsButton = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: CommandsButtonProps<StreamChatGenerics>,\n) => {\n const { disabled = false } = useChannelContext<StreamChatGenerics>();\n const { suggestions } = useSuggestionsContext<StreamChatGenerics>();\n\n return <MemoizedCommandsButton {...{ disabled, suggestions }} {...props} />;\n};\n\nCommandsButton.displayName = 'CommandsButton{messageInput}';\n"],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
exports.SendButton = void 0;
|
|
6
6
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
7
7
|
var _react = _interopRequireDefault(require("react"));
|
|
8
|
-
var
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
9
|
var _MessageInputContext = require("../../contexts/messageInputContext/MessageInputContext");
|
|
10
10
|
var _ThemeContext = require("../../contexts/themeContext/ThemeContext");
|
|
11
11
|
var _Search = require("../../icons/Search");
|
|
@@ -24,7 +24,7 @@ var SendButtonWithContext = function SendButtonWithContext(props) {
|
|
|
24
24
|
accent_blue = _useTheme$theme$color.accent_blue,
|
|
25
25
|
grey_gainsboro = _useTheme$theme$color.grey_gainsboro,
|
|
26
26
|
sendButton = _useTheme$theme.messageInput.sendButton;
|
|
27
|
-
return _react["default"].createElement(
|
|
27
|
+
return _react["default"].createElement(_reactNative.Pressable, {
|
|
28
28
|
disabled: disabled,
|
|
29
29
|
onPress: disabled ? function () {
|
|
30
30
|
return null;
|
|
@@ -34,7 +34,7 @@ var SendButtonWithContext = function SendButtonWithContext(props) {
|
|
|
34
34
|
__self: _this,
|
|
35
35
|
__source: {
|
|
36
36
|
fileName: _jsxFileName,
|
|
37
|
-
lineNumber:
|
|
37
|
+
lineNumber: 36,
|
|
38
38
|
columnNumber: 5
|
|
39
39
|
}
|
|
40
40
|
}, giphyActive && _react["default"].createElement(_Search.Search, {
|
|
@@ -42,7 +42,7 @@ var SendButtonWithContext = function SendButtonWithContext(props) {
|
|
|
42
42
|
__self: _this,
|
|
43
43
|
__source: {
|
|
44
44
|
fileName: _jsxFileName,
|
|
45
|
-
lineNumber:
|
|
45
|
+
lineNumber: 42,
|
|
46
46
|
columnNumber: 23
|
|
47
47
|
}
|
|
48
48
|
}), !giphyActive && disabled && _react["default"].createElement(_SendRight.SendRight, {
|
|
@@ -50,7 +50,7 @@ var SendButtonWithContext = function SendButtonWithContext(props) {
|
|
|
50
50
|
__self: _this,
|
|
51
51
|
__source: {
|
|
52
52
|
fileName: _jsxFileName,
|
|
53
|
-
lineNumber:
|
|
53
|
+
lineNumber: 43,
|
|
54
54
|
columnNumber: 36
|
|
55
55
|
}
|
|
56
56
|
}), !giphyActive && !disabled && _react["default"].createElement(_SendUp.SendUp, {
|
|
@@ -58,7 +58,7 @@ var SendButtonWithContext = function SendButtonWithContext(props) {
|
|
|
58
58
|
__self: _this,
|
|
59
59
|
__source: {
|
|
60
60
|
fileName: _jsxFileName,
|
|
61
|
-
lineNumber:
|
|
61
|
+
lineNumber: 44,
|
|
62
62
|
columnNumber: 37
|
|
63
63
|
}
|
|
64
64
|
}));
|
|
@@ -91,7 +91,7 @@ var SendButton = function SendButton(props) {
|
|
|
91
91
|
__self: _this,
|
|
92
92
|
__source: {
|
|
93
93
|
fileName: _jsxFileName,
|
|
94
|
-
lineNumber:
|
|
94
|
+
lineNumber: 96,
|
|
95
95
|
columnNumber: 5
|
|
96
96
|
}
|
|
97
97
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_MessageInputContext","_ThemeContext","_Search","_SendRight","_SendUp","_this","_jsxFileName","SendButtonWithContext","props","_props$disabled","disabled","giphyActive","sendMessage","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","accent_blue","grey_gainsboro","sendButton","messageInput","createElement","Pressable","onPress","style","testID","__self","__source","fileName","lineNumber","columnNumber","Search","pathFill","SendRight","SendUp","areEqual","prevProps","nextProps","prevDisabled","prevGiphyActive","prevSendMessage","nextDisabled","nextGiphyActive","nextSendMessage","disabledEqual","giphyActiveEqual","sendMessageEqual","MemoizedSendButton","React","memo","SendButton","_useMessageInputConte","useMessageInputContext","_extends2","exports","displayName"],"sources":["SendButton.tsx"],"sourcesContent":["import React from 'react';\n\nimport { Pressable } from 'react-native';\n\nimport {\n MessageInputContextValue,\n useMessageInputContext,\n} from '../../contexts/messageInputContext/MessageInputContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { Search } from '../../icons/Search';\nimport { SendRight } from '../../icons/SendRight';\nimport { SendUp } from '../../icons/SendUp';\n\nimport type { DefaultStreamChatGenerics } from '../../types/types';\n\ntype SendButtonPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<MessageInputContextValue<StreamChatGenerics>, 'giphyActive' | 'sendMessage'> & {\n /** Disables the button */ disabled: boolean;\n};\n\nconst SendButtonWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: SendButtonPropsWithContext<StreamChatGenerics>,\n) => {\n const { disabled = false, giphyActive, sendMessage } = props;\n const {\n theme: {\n colors: { accent_blue, grey_gainsboro },\n messageInput: { sendButton },\n },\n } = useTheme();\n\n return (\n <Pressable\n disabled={disabled}\n onPress={disabled ? () => null : sendMessage}\n style={[sendButton]}\n testID='send-button'\n >\n {giphyActive && <Search pathFill={disabled ? grey_gainsboro : accent_blue} />}\n {!giphyActive && disabled && <SendRight pathFill={grey_gainsboro} />}\n {!giphyActive && !disabled && <SendUp pathFill={accent_blue} />}\n </Pressable>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: SendButtonPropsWithContext<StreamChatGenerics>,\n nextProps: SendButtonPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n disabled: prevDisabled,\n giphyActive: prevGiphyActive,\n sendMessage: prevSendMessage,\n } = prevProps;\n const {\n disabled: nextDisabled,\n giphyActive: nextGiphyActive,\n sendMessage: nextSendMessage,\n } = nextProps;\n\n const disabledEqual = prevDisabled === nextDisabled;\n if (!disabledEqual) return false;\n\n const giphyActiveEqual = prevGiphyActive === nextGiphyActive;\n if (!giphyActiveEqual) return false;\n\n const sendMessageEqual = prevSendMessage === nextSendMessage;\n if (!sendMessageEqual) return false;\n\n return true;\n};\n\nconst MemoizedSendButton = React.memo(\n SendButtonWithContext,\n areEqual,\n) as typeof SendButtonWithContext;\n\nexport type SendButtonProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<SendButtonPropsWithContext<StreamChatGenerics>>;\n\n/**\n * UI Component for send button in MessageInput component.\n */\nexport const SendButton = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: SendButtonProps<StreamChatGenerics>,\n) => {\n const { giphyActive, sendMessage } = useMessageInputContext<StreamChatGenerics>();\n\n return (\n <MemoizedSendButton\n {...{ giphyActive, sendMessage }}\n {...props}\n {...{ disabled: props.disabled || false }}\n />\n );\n};\n\nSendButton.displayName = 'SendButton{messageInput}';\n"],"mappings":"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"}
|
package/lib/module/version.json
CHANGED
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "stream-chat-react-native-core",
|
|
3
3
|
"description": "The official React Native and Expo components for Stream Chat, a service for building chat applications",
|
|
4
|
-
"version": "5.13.0
|
|
4
|
+
"version": "5.13.0",
|
|
5
5
|
"author": {
|
|
6
6
|
"company": "Stream.io Inc",
|
|
7
7
|
"name": "Stream.io Inc"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { GestureResponderEvent } from 'react-native';
|
|
3
|
-
import {
|
|
3
|
+
import { Pressable } from 'react-native';
|
|
4
4
|
|
|
5
5
|
import { useAttachmentPickerContext } from '../../contexts/attachmentPickerContext/AttachmentPickerContext';
|
|
6
6
|
import {
|
|
@@ -34,15 +34,14 @@ const AttachButtonWithContext = <
|
|
|
34
34
|
} = useTheme();
|
|
35
35
|
|
|
36
36
|
return (
|
|
37
|
-
<
|
|
37
|
+
<Pressable
|
|
38
38
|
disabled={disabled}
|
|
39
|
-
hitSlop={{ bottom: 15, left: 15, right: 5, top: 15 }}
|
|
40
39
|
onPress={disabled ? () => null : handleOnPress}
|
|
41
40
|
style={[attachButton]}
|
|
42
41
|
testID='attach-button'
|
|
43
42
|
>
|
|
44
43
|
<Attach pathFill={selectedPicker === 'images' ? accent_blue : grey} />
|
|
45
|
-
</
|
|
44
|
+
</Pressable>
|
|
46
45
|
);
|
|
47
46
|
};
|
|
48
47
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { GestureResponderEvent } from 'react-native';
|
|
3
|
-
import {
|
|
3
|
+
import { Pressable } from 'react-native';
|
|
4
4
|
|
|
5
5
|
import {
|
|
6
6
|
ChannelContextValue,
|
|
@@ -39,9 +39,8 @@ const CommandsButtonWithContext = <
|
|
|
39
39
|
} = useTheme();
|
|
40
40
|
|
|
41
41
|
return (
|
|
42
|
-
<
|
|
42
|
+
<Pressable
|
|
43
43
|
disabled={disabled}
|
|
44
|
-
hitSlop={{ bottom: 15, left: 5, right: 15, top: 15 }}
|
|
45
44
|
onPress={handleOnPress}
|
|
46
45
|
style={[commandsButton]}
|
|
47
46
|
testID='commands-button'
|
|
@@ -53,7 +52,7 @@ const CommandsButtonWithContext = <
|
|
|
53
52
|
: grey
|
|
54
53
|
}
|
|
55
54
|
/>
|
|
56
|
-
</
|
|
55
|
+
</Pressable>
|
|
57
56
|
);
|
|
58
57
|
};
|
|
59
58
|
|